diff --git a/DEPS b/DEPS index 301f041..4951357 100644 --- a/DEPS +++ b/DEPS
@@ -279,7 +279,7 @@ 'dawn_standalone': False, # reclient CIPD package version - 'reclient_version': 're_client_version:0.69.0.458df98-gomaip', + 'reclient_version': 're_client_version:0.72.0.b874055-gomaip', # Enable fetching Rust-related packages. 'use_rust': False, @@ -368,7 +368,7 @@ # Three lines of non-changing comments so that # the commit queue can handle CLs rolling catapult # and whatever else without interference from each other. - 'catapult_revision': 'abcd8ba23ed9836cf8d2e5f93b43ea47b05463d3', + 'catapult_revision': '4c50669a2f87912897af9227846fa5a419560616', # Three lines of non-changing comments so that # the commit queue can handle CLs rolling libFuzzer # and whatever else without interference from each other. @@ -376,7 +376,7 @@ # Three lines of non-changing comments so that # the commit queue can handle CLs rolling devtools-frontend # and whatever else without interference from each other. - 'devtools_frontend_revision': '60e9f71459aa94e870e52c50bd1e687e898f5dac', + 'devtools_frontend_revision': 'c756660b512ce494ce842fa1ff8eed2bef29b87e', # Three lines of non-changing comments so that # the commit queue can handle CLs rolling libprotobuf-mutator # and whatever else without interference from each other. @@ -412,7 +412,7 @@ # Three lines of non-changing comments so that # the commit queue can handle CLs rolling feed # and whatever else without interference from each other. - 'dawn_revision': 'e57e0897c4a0508c57afb8e160eb1a60996d2ae5', + 'dawn_revision': 'a84b9119eb821a9eb5655b3f16d0ac0364c9b8f6', # Three lines of non-changing comments so that # the commit queue can handle CLs rolling feed # and whatever else without interference from each other. @@ -428,7 +428,7 @@ # Three lines of non-changing comments so that # the commit queue can handle CLs rolling wuffs # and whatever else without interference from each other. - 'wuffs_revision': 'ebbecaa2fb439eff0aeedafadb4c2a984446dee8', + 'wuffs_revision': 'a8205c2fe7564b12fea81ee028ba670112cc7719', # Three lines of non-changing comments so that # the commit queue can handle CLs rolling libgifcodec # and whatever else without interference from each other. @@ -862,7 +862,7 @@ 'packages': [ { 'package': 'chromium/rts/model/linux-amd64', - 'version': 'TTEI5OHfKjl6PPgwds8ngkJ_m1R6YuiAwgWIjkvLS2kC', + 'version': 'XlzIsX8AH06QHVAMzpKt5aT3nfupjnBr78ztG18pXdsC', }, ], 'dep_type': 'cipd', @@ -873,7 +873,7 @@ 'packages': [ { 'package': 'chromium/rts/model/mac-amd64', - 'version': 'pRREo22EJVP_SBwLm8tiTml6ubGjdd569rutNTyuQ4QC', + 'version': 'CPhzNoasDtJ45F8bwTLs7lIQDiy-PhdReFmXrlL5FDoC', }, ], 'dep_type': 'cipd', @@ -884,7 +884,7 @@ 'packages': [ { 'package': 'chromium/rts/model/windows-amd64', - 'version': '6ThYAVPsBi3Y5cOmXiGtnQT7xKXQWWLvy_FhK423_rEC', + 'version': 'XmZtpYZGxTqwBMgEXpdyfrdCxx79QfYeVlhpviF2OUcC', }, ], 'dep_type': 'cipd', @@ -1156,7 +1156,7 @@ # Tools used when building Chrome for Chrome OS. This affects both the Simple # Chrome workflow, as well as the chromeos-chrome ebuild. 'src/third_party/chromite': { - 'url': Var('chromium_git') + '/chromiumos/chromite.git' + '@' + '5c3ad3f7cc860a641b4a2d632d96db0927233d63', + 'url': Var('chromium_git') + '/chromiumos/chromite.git' + '@' + '60350fcfeb0bca00eba2794f53661a1b996a79a5', 'condition': 'checkout_chromeos', }, @@ -1184,7 +1184,7 @@ }, 'src/third_party/depot_tools': - Var('chromium_git') + '/chromium/tools/depot_tools.git' + '@' + '39e33e6eca3fe1aa53a77f8185226f54f1cb2b7c', + Var('chromium_git') + '/chromium/tools/depot_tools.git' + '@' + '0ba2fd429dd6db431fcbee6995c1278d2a3657a0', 'src/third_party/devtools-frontend/src': Var('chromium_git') + '/devtools/devtools-frontend' + '@' + Var('devtools_frontend_revision'), @@ -1296,7 +1296,7 @@ }, 'src/third_party/arcore-android-sdk/src': { - 'url': Var('chromium_git') + '/external/github.com/google-ar/arcore-android-sdk.git' + '@' + 'eaa85941f2d724c60671bf94f46de7178baba7e6', + 'url': Var('chromium_git') + '/external/github.com/google-ar/arcore-android-sdk.git' + '@' + 'd197af6b38f98d2344bc7f76326c4aa0c4f2fb90', 'condition': 'checkout_android', }, @@ -1304,7 +1304,7 @@ 'packages': [ { 'package': 'chromium/third_party/arcore-android-sdk-client', - 'version': 'fUSZ4jxIhIx34TxRIcrmOu76-khcka_Gpn0_t9lKCWQC', + 'version': 'NYf1qvBS9hNVK-6exAl-MaVbQsRKCDYl5Br936GtcU0C', }, ], @@ -1754,7 +1754,7 @@ Var('chromium_git') + '/external/github.com/gpuweb/cts.git' + '@' + '72e3a2249135b5d42d7a1c611af497565e9e6f02', 'src/third_party/webrtc': - Var('webrtc_git') + '/src.git' + '@' + '5892265e5b1ce5f386d3c7f6a3708cdd509466f8', + Var('webrtc_git') + '/src.git' + '@' + 'dc5cf31cad576376abd3aa6306169453cfd85ba5', 'src/third_party/libgifcodec': Var('skia_git') + '/libgifcodec' + '@'+ Var('libgifcodec_revision'), @@ -1827,7 +1827,7 @@ Var('chromium_git') + '/v8/v8.git' + '@' + Var('v8_revision'), 'src-internal': { - 'url': 'https://chrome-internal.googlesource.com/chrome/src-internal.git@50163943bb0d5e23df322306596eac9701a27dd1', + 'url': 'https://chrome-internal.googlesource.com/chrome/src-internal.git@5159c6f0469e394c633fb8b22b2ad56354621518', 'condition': 'checkout_src_internal', }, @@ -1868,7 +1868,7 @@ 'packages': [ { 'package': 'chromeos_internal/apps/media_app/app', - 'version': 'cuq6IJdFLKWGhuwzZnCUaoqc6qWxq86jvu7hnEj0UcoC', + 'version': 'tV1aN61vvzGiDSJgQxN_namEG8pvO6RTuO-qbQMC51IC', }, ], 'condition': 'checkout_chromeos and checkout_src_internal',
diff --git a/PRESUBMIT.py b/PRESUBMIT.py index d3aa385..35eb97d6 100644 --- a/PRESUBMIT.py +++ b/PRESUBMIT.py
@@ -3593,9 +3593,10 @@ def _CheckAndroidNewMdpiAssetLocation(input_api, output_api): """Checks if MDPI assets are placed in a correct directory.""" - file_filter = lambda f: (f.LocalPath().endswith('.png') and - ('/res/drawable/' in f.LocalPath() or - '/res/drawable-ldrtl/' in f.LocalPath())) + file_filter = lambda f: (f.LocalPath().endswith( + '.png') and ('/res/drawable/'.replace('/', input_api.os_path.sep) in f. + LocalPath() or '/res/drawable-ldrtl/'.replace( + '/', input_api.os_path.sep) in f.LocalPath())) errors = [] for f in input_api.AffectedFiles(include_deletes=False, file_filter=file_filter):
diff --git a/android_webview/java/src/org/chromium/android_webview/common/ProductionSupportedFlagList.java b/android_webview/java/src/org/chromium/android_webview/common/ProductionSupportedFlagList.java index 02b53f9..bb132abe 100644 --- a/android_webview/java/src/org/chromium/android_webview/common/ProductionSupportedFlagList.java +++ b/android_webview/java/src/org/chromium/android_webview/common/ProductionSupportedFlagList.java
@@ -171,6 +171,8 @@ Flag.baseFeature(AutofillFeatures.AUTOFILL_ENFORCE_DELAYS_IN_STRIKE_DATABASE, "Enforce delay between offering Autofill opportunities in the " + "strike database."), + Flag.baseFeature(AutofillFeatures.AUTOFILL_PARSE_ASYNC, + "Parse forms asynchronously outside of the UI thread."), Flag.baseFeature(AutofillFeatures.AUTOFILL_PARSING_PATTERN_PROVIDER, "Enables Autofill to use its new method to retrieve parsing patterns."), Flag.baseFeature(AutofillFeatures.AUTOFILL_PAGE_LANGUAGE_DETECTION,
diff --git a/ash/ambient/ui/ambient_animation_player.cc b/ash/ambient/ui/ambient_animation_player.cc index 840b830..98f09f34 100644 --- a/ash/ambient/ui/ambient_animation_player.cc +++ b/ash/ambient/ui/ambient_animation_player.cc
@@ -71,7 +71,8 @@ animation_observation_.Observe(animation); animation->SetPlaybackSpeed( AmbientUiModel::Get()->animation_playback_speed()); - animated_image_view_->Play(lottie::Animation::Style::kLinear); + animated_image_view_->Play(lottie::Animation::PlaybackConfig::CreateWithStyle( + lottie::Animation::Style::kLinear, *animation)); } AmbientAnimationPlayer::~AmbientAnimationPlayer() { @@ -92,12 +93,12 @@ // frame-to-frame latency at the end of other animation cycles, and there was // no observable difference. animated_image_view_->Stop(); - animated_image_view_->Play( - /*start_offset=*/cycle_restart_timestamp_, - /*duration=*/ - animated_image_view_->animated_image()->GetAnimationDuration() - - cycle_restart_timestamp_, - lottie::Animation::Style::kLoop); + animated_image_view_->Play(lottie::Animation::PlaybackConfig( + {/*start_offset=*/cycle_restart_timestamp_, + /*duration=*/ + animated_image_view_->animated_image()->GetAnimationDuration() - + cycle_restart_timestamp_, + lottie::Animation::Style::kLoop})); } } // namespace ash
diff --git a/ash/components/arc/session/arc_client_adapter_unittest.cc b/ash/components/arc/session/arc_client_adapter_unittest.cc index a9239d2c..f9b862f6 100644 --- a/ash/components/arc/session/arc_client_adapter_unittest.cc +++ b/ash/components/arc/session/arc_client_adapter_unittest.cc
@@ -13,7 +13,7 @@ #include "chromeos/ash/components/dbus/concierge/concierge_client.h" #include "chromeos/ash/components/dbus/upstart/fake_upstart_client.h" #include "chromeos/dbus/dbus_thread_manager.h" -#include "chromeos/dbus/debug_daemon/fake_debug_daemon_client.h" +#include "chromeos/dbus/debug_daemon/debug_daemon_client.h" #include "testing/gtest/include/gtest/gtest.h" namespace arc { @@ -32,13 +32,13 @@ void SetUp() override { chromeos::DBusThreadManager::Initialize(); - chromeos::DBusThreadManager::GetSetterForTesting()->SetDebugDaemonClient( - std::make_unique<chromeos::FakeDebugDaemonClient>()); + chromeos::DebugDaemonClient::InitializeFake(); ash::ConciergeClient::InitializeFake(/*fake_cicerone_client=*/nullptr); ash::UpstartClient::InitializeFake(); } void TearDown() override { ash::ConciergeClient::Shutdown(); + chromeos::DebugDaemonClient::Shutdown(); chromeos::DBusThreadManager::Shutdown(); }
diff --git a/ash/components/arc/session/arc_vm_client_adapter.cc b/ash/components/arc/session/arc_vm_client_adapter.cc index bcfb1a9..074f3db 100644 --- a/ash/components/arc/session/arc_vm_client_adapter.cc +++ b/ash/components/arc/session/arc_vm_client_adapter.cc
@@ -59,7 +59,6 @@ #include "chromeos/ash/components/dbus/session_manager/session_manager_client.h" #include "chromeos/components/sensors/buildflags.h" #include "chromeos/dbus/common/dbus_method_call_status.h" -#include "chromeos/dbus/dbus_thread_manager.h" #include "chromeos/dbus/debug_daemon/debug_daemon_client.h" #include "chromeos/system/core_scheduling.h" #include "chromeos/system/statistics_provider.h" @@ -115,7 +114,7 @@ } chromeos::DebugDaemonClient* GetDebugDaemonClient() { - return chromeos::DBusThreadManager::Get()->GetDebugDaemonClient(); + return chromeos::DebugDaemonClient::Get(); } ArcBinaryTranslationType IdentifyBinaryTranslationType(
diff --git a/ash/components/arc/session/arc_vm_client_adapter_unittest.cc b/ash/components/arc/session/arc_vm_client_adapter_unittest.cc index 048fa04c..23ee836 100644 --- a/ash/components/arc/session/arc_vm_client_adapter_unittest.cc +++ b/ash/components/arc/session/arc_vm_client_adapter_unittest.cc
@@ -53,6 +53,7 @@ #include "chromeos/ash/components/dbus/session_manager/fake_session_manager_client.h" #include "chromeos/ash/components/dbus/upstart/fake_upstart_client.h" #include "chromeos/dbus/dbus_thread_manager.h" +#include "chromeos/dbus/debug_daemon/debug_daemon_client.h" #include "chromeos/dbus/debug_daemon/fake_debug_daemon_client.h" #include "components/user_manager/user_names.h" #include "content/public/test/browser_task_environment.h" @@ -351,8 +352,9 @@ // Create and set new fake clients every time to reset clients' status. chromeos::DBusThreadManager::Initialize(); - chromeos::DBusThreadManager::GetSetterForTesting()->SetDebugDaemonClient( - std::make_unique<TestDebugDaemonClient>()); + test_debug_daemon_client_ = std::make_unique<TestDebugDaemonClient>(); + chromeos::DebugDaemonClient::SetInstanceForTest( + test_debug_daemon_client_.get()); TestConciergeClient::Initialize(); ash::UpstartClient::InitializeFake(); } @@ -362,6 +364,8 @@ ~ArcVmClientAdapterTest() override { ash::ConciergeClient::Shutdown(); + chromeos::DebugDaemonClient::SetInstanceForTest(nullptr); + test_debug_daemon_client_.reset(); chromeos::DBusThreadManager::Shutdown(); } @@ -642,9 +646,8 @@ return static_cast<TestConciergeClient*>(ash::ConciergeClient::Get()); } - TestDebugDaemonClient* GetTestDebugDaemonClient() { - return static_cast<TestDebugDaemonClient*>( - chromeos::DBusThreadManager::Get()->GetDebugDaemonClient()); + TestDebugDaemonClient* test_debug_daemon_client() { + return test_debug_daemon_client_.get(); } TestArcVmBootNotificationServer* boot_notification_server() { @@ -698,6 +701,7 @@ std::unique_ptr<FakeAppHost> app_host_; std::unique_ptr<FakeAppInstance> app_instance_; std::unique_ptr<ArcDlcInstaller> arc_dlc_installer_; + std::unique_ptr<TestDebugDaemonClient> test_debug_daemon_client_; }; // Tests that SetUserInfo() doesn't crash. @@ -956,8 +960,8 @@ StartMiniArc(); UpgradeArc(true); - EXPECT_FALSE(GetTestDebugDaemonClient()->backup_arc_bug_report_called()); - GetTestDebugDaemonClient()->set_backup_arc_bug_report_result(false); + EXPECT_FALSE(test_debug_daemon_client()->backup_arc_bug_report_called()); + test_debug_daemon_client()->set_backup_arc_bug_report_result(false); adapter()->StopArcInstance(/*on_shutdown=*/false, /*should_backup_log=*/true); run_loop()->RunUntilIdle(); @@ -971,7 +975,7 @@ SendVmStoppedSignal(vm_tools::concierge::STOP_VM_REQUESTED); run_loop()->Run(); - EXPECT_TRUE(GetTestDebugDaemonClient()->backup_arc_bug_report_called()); + EXPECT_TRUE(test_debug_daemon_client()->backup_arc_bug_report_called()); // ..and that calls ArcInstanceStopped. ASSERT_TRUE(is_system_shutdown().has_value()); EXPECT_FALSE(is_system_shutdown().value());
diff --git a/ash/components/fwupd/firmware_update_manager_unittest.cc b/ash/components/fwupd/firmware_update_manager_unittest.cc index 7a9def8..a713c1b 100644 --- a/ash/components/fwupd/firmware_update_manager_unittest.cc +++ b/ash/components/fwupd/firmware_update_manager_unittest.cc
@@ -161,8 +161,8 @@ EXPECT_CALL(*proxy_, DoConnectToSignal(_, _, _, _)) .WillRepeatedly(Return()); - dbus_client_ = FwupdClient::Create(); - dbus_client_->InitForTesting(bus_.get()); + FwupdClient::Initialize(bus_.get()); + dbus_client_ = FwupdClient::Get(); fake_fwupd_download_client_ = std::make_unique<FakeFwupdDownloadClient>(); firmware_update_manager_ = std::make_unique<FirmwareUpdateManager>(); firmware_update_manager_->BindInterface( @@ -172,7 +172,14 @@ FirmwareUpdateManagerTest(const FirmwareUpdateManagerTest&) = delete; FirmwareUpdateManagerTest& operator=(const FirmwareUpdateManagerTest&) = delete; - ~FirmwareUpdateManagerTest() override = default; + + ~FirmwareUpdateManagerTest() override { + // Destructor depends on FirmwareUpdateManager. + firmware_update_notification_controller_.reset(); + // Destructor depends on FwupdClient. + firmware_update_manager_.reset(); + FwupdClient::Shutdown(); + } void OnMethodCalled(dbus::MethodCall* method_call, int timeout_ms, @@ -545,7 +552,7 @@ void RequestAllUpdates() { firmware_update_manager_->RequestAllUpdates(); } // `FwupdClient` must be be before `FirmwareUpdateManager`. - std::unique_ptr<FwupdClient> dbus_client_; + FwupdClient* dbus_client_ = nullptr; std::unique_ptr<FakeFwupdDownloadClient> fake_fwupd_download_client_; std::unique_ptr<FirmwareUpdateManager> firmware_update_manager_; // `FirmwareUpdateNotificationController` must be be after @@ -570,7 +577,7 @@ }; TEST_F(FirmwareUpdateManagerTest, CorrectMockInstance) { - EXPECT_EQ(dbus_client_.get(), FwupdClient::Get()); + EXPECT_EQ(dbus_client_, FwupdClient::Get()); } TEST_F(FirmwareUpdateManagerTest, RequestAllUpdatesNoDevices) { @@ -1015,13 +1022,21 @@ ~FirmwareUpdateStartupNotificationTest() override = default; void SetUp() override { - dbus_client_ = FwupdClient::Create(); + FwupdClient::InitializeFake(); + dbus_client_ = FwupdClient::Get(); firmware_update_manager_ = std::make_unique<FirmwareUpdateManager>(); EXPECT_TRUE(FirmwareUpdateManager::IsInitialized()); SetShouldShowNotificationForTest(true); NoSessionAshTestBase::SetUp(); } + void TearDown() override { + firmware_update_notification_controller_.reset(); + firmware_update_manager_.reset(); + FwupdClient::Shutdown(); + NoSessionAshTestBase::TearDown(); + } + protected: void InitializeNotificationController() { firmware_update_notification_controller_ = @@ -1049,7 +1064,7 @@ FirmwareUpdateManager::Get()->RequestAllUpdates(); } - std::unique_ptr<FwupdClient> dbus_client_; + FwupdClient* dbus_client_ = nullptr; std::unique_ptr<FirmwareUpdateManager> firmware_update_manager_; std::unique_ptr<FirmwareUpdateNotificationController> firmware_update_notification_controller_;
diff --git a/ash/components/login/auth/auth_session_authenticator.cc b/ash/components/login/auth/auth_session_authenticator.cc index 4947fc381..df9bccba 100644 --- a/ash/components/login/auth/auth_session_authenticator.cc +++ b/ash/components/login/auth/auth_session_authenticator.cc
@@ -85,7 +85,7 @@ // case we need to go through stale data removal. auto original_context = std::make_unique<UserContext>(*context); auth_performer_->StartAuthSession( - std::move(context), is_ephemeral_mount_enforced_, + std::move(context), ephemeral, base::BindOnce(&AuthSessionAuthenticator::OnStartAuthSession, weak_factory_.GetWeakPtr(), std::move(original_context), ephemeral, std::move(callback)));
diff --git a/ash/components/multidevice/secure_message_delegate_impl.cc b/ash/components/multidevice/secure_message_delegate_impl.cc index e3458f5..ca696062 100644 --- a/ash/components/multidevice/secure_message_delegate_impl.cc +++ b/ash/components/multidevice/secure_message_delegate_impl.cc
@@ -7,7 +7,6 @@ #include "ash/components/multidevice/logging/logging.h" #include "base/bind.h" #include "base/memory/ptr_util.h" -#include "chromeos/dbus/dbus_thread_manager.h" #include "chromeos/dbus/easy_unlock/easy_unlock_client.h" #include "third_party/cros_system_api/dbus/service_constants.h" @@ -71,7 +70,7 @@ SecureMessageDelegateImpl::Factory::~Factory() = default; SecureMessageDelegateImpl::SecureMessageDelegateImpl() - : dbus_client_(chromeos::DBusThreadManager::Get()->GetEasyUnlockClient()) {} + : dbus_client_(chromeos::EasyUnlockClient::Get()) {} SecureMessageDelegateImpl::~SecureMessageDelegateImpl() {}
diff --git a/ash/shell.cc b/ash/shell.cc index 9c73210..c789ef3 100644 --- a/ash/shell.cc +++ b/ash/shell.cc
@@ -423,12 +423,6 @@ return std::make_unique<NonClientFrameViewAsh>(widget); } -void Shell::SetDisplayWorkAreaInsets(Window* contains, - const gfx::Insets& insets) { - window_tree_host_manager_->UpdateWorkAreaOfDisplayNearestWindow(contains, - insets); -} - void Shell::OnCastingSessionStartedOrStopped(bool started) { for (auto& observer : shell_observers_) observer.OnCastingSessionStartedOrStopped(started);
diff --git a/ash/shell.h b/ash/shell.h index c4a6bcc9..6c7fbdc 100644 --- a/ash/shell.h +++ b/ash/shell.h
@@ -48,7 +48,6 @@ } // namespace display namespace gfx { -class Insets; class Point; } // namespace gfx @@ -315,13 +314,6 @@ std::unique_ptr<views::NonClientFrameView> CreateDefaultNonClientFrameView( views::Widget* widget); - // Please note: this is deprecated. Please use - // `WorkAreaInsets::UpdateWorkAreaInsetsForTest()` for test purpose. - // Sets work area insets of the display containing |window|, pings observers. - // TODO(yongshun): Get rid of this API and update existing test cases. - void SetDisplayWorkAreaInsets(aura::Window* window, - const gfx::Insets& insets); - // Called when a casting session is started or stopped. void OnCastingSessionStartedOrStopped(bool started);
diff --git a/ash/strings/ash_strings_az.xtb b/ash/strings/ash_strings_az.xtb index e254477..f85c1ee 100644 --- a/ash/strings/ash_strings_az.xtb +++ b/ash/strings/ash_strings_az.xtb
@@ -306,6 +306,7 @@ <translation id="2805756323405976993">Tətbiq</translation> <translation id="2814448776515246190">Qismən çəkim</translation> <translation id="2819276065543622893">Az sonra hesabdan çıxacaqsınız.</translation> +<translation id="2822551631199737692">Kamera istifadə olunur</translation> <translation id="2825224105325558319"><ph name="DISPLAY_NAME" /> <ph name="SPECIFIED_RESOLUTION" /> əksetmə qabiliyyətini dəstəkləmir. Əksetmə qabiliyyəti <ph name="FALLBACK_RESOLUTION" /> olaraq dəyişildi.</translation> <translation id="2825619548187458965">Rəf</translation> <translation id="2831035692318564937">Gün çıxanadək aktiv olacaq</translation> @@ -807,6 +808,7 @@ <translation id="5682642926269496722">Google Assistent cari istifadəçi hesabında əlçatan deyil.</translation> <translation id="5689633613396158040">Gecə İşığı zəif işıqda ekrana baxmağı və ya oxumağı asanlaşdırır. Gecə İşığının yandığı vaxtı dəyişmək və ya onu birdəfəlik söndürmək üçün toxunun.</translation> <translation id="5691772641933328258">Barmaq izi tanınmadı</translation> +<translation id="5693255400847650006">Mikrofon istifadə olunur</translation> <translation id="570390244361237317">Bütün Tətbiqlər, bütün tətbiqlərə giriş üçün ox düymələri ilə hərəkət edin</translation> <translation id="5707775774148071965">Cihazınız kabelinizdən daha yüksək məlumat sürətini dəstəkləyir. Cihazın performansı məhdud ola bilər.</translation> <translation id="5710450975648804523">Narahat Etməyin rejimi aktivdir</translation> @@ -981,6 +983,7 @@ <translation id="6723839937902243910">Enerji</translation> <translation id="6727969043791803658">Qoşuludur, <ph name="BATTERY_PERCENTAGE" />% batareya</translation> <translation id="6732800389263199929">+<ph name="COUNT" /></translation> +<translation id="6737983188036277605">Kamera və mikrofon istifadə olunur</translation> <translation id="6739144137573853180">AYARLARA KEÇİN</translation> <translation id="6751052314767925245">Administratorunuz tərəfindən icbari icra olunur</translation> <translation id="6751826523481687655">Performansın izlənməsi aktiv edildi</translation>
diff --git a/ash/strings/ash_strings_bn.xtb b/ash/strings/ash_strings_bn.xtb index 1a897a5..426e5cc 100644 --- a/ash/strings/ash_strings_bn.xtb +++ b/ash/strings/ash_strings_bn.xtb
@@ -306,6 +306,7 @@ <translation id="2805756323405976993">অ্যাপ্স</translation> <translation id="2814448776515246190">আংশিক ক্যাপচার</translation> <translation id="2819276065543622893">আপনি এখনই প্রস্থান করুন হবেন৷</translation> +<translation id="2822551631199737692">ক্যামেরা ব্যবহার করা হচ্ছে</translation> <translation id="2825224105325558319"><ph name="DISPLAY_NAME" /> <ph name="SPECIFIED_RESOLUTION" /> রেজোলিউশনে চলতে পারে না। তাই রেজোলিউশন পরিবর্তন করে <ph name="FALLBACK_RESOLUTION" /> করা হয়েছে।</translation> <translation id="2825619548187458965">তাক</translation> <translation id="2831035692318564937">সূর্যোদয় পর্যন্ত চালু আছে</translation> @@ -807,6 +808,7 @@ <translation id="5682642926269496722">বর্তমান ব্যবহারকারীর অ্যাকাউন্টের জন্য Google অ্যাসিস্ট্যান্ট উপলভ্য নয়।</translation> <translation id="5689633613396158040">নাইট লাইট ফিচারের জন্য স্ক্রিনের দিকে স্বচ্ছন্দে তাকানো যায় বা কম আলোতে পড়তে পারা যায়। কোন সময় নাইট লাইট ফিচারটি সম্পূর্ণভাবে চালু করা হবে বা বন্ধ করা হবে তা পরিবর্তন করতে ট্যাপ করুন।</translation> <translation id="5691772641933328258">আঙ্গুলের ছাপ শনাক্ত করা যায়নি</translation> +<translation id="5693255400847650006">মাইক্রোফোন ব্যবহার করা হচ্ছে</translation> <translation id="570390244361237317">সবকটি অ্যাপ, সবকটি অ্যাপের মধ্যে নেভিগেট করার জন্য তীরচিহ্নযুক্ত কী ব্যবহার করুন</translation> <translation id="5707775774148071965">আপনার ডিভাইস কেবেলের থেকে হাই রেট ডেটা সমর্থন করে। ডিভাইসের পারফর্ম্যান্স সীমিত হতে পারে।</translation> <translation id="5710450975648804523">'বিরক্ত করবে না' মোড চালু আছে</translation> @@ -981,6 +983,7 @@ <translation id="6723839937902243910">পাওয়ার</translation> <translation id="6727969043791803658">কানেক্ট করা আছে, ব্যাটারিতে <ph name="BATTERY_PERCENTAGE" />% চার্জ আছে</translation> <translation id="6732800389263199929">+<ph name="COUNT" />টি</translation> +<translation id="6737983188036277605">ক্যামেরা এবং মাইক্রোফোন ব্যবহার করা হচ্ছে</translation> <translation id="6739144137573853180">সেটিংসে যান</translation> <translation id="6751052314767925245">আপনার অ্যাডমিনিস্ট্রেটর প্রয়োগ করেছেন</translation> <translation id="6751826523481687655">পারফরম্যান্স ট্রেস করার বিকল্প চালু আছে</translation>
diff --git a/ash/strings/ash_strings_bs.xtb b/ash/strings/ash_strings_bs.xtb index 17f0c476..4025c637 100644 --- a/ash/strings/ash_strings_bs.xtb +++ b/ash/strings/ash_strings_bs.xtb
@@ -306,6 +306,7 @@ <translation id="2805756323405976993">Aplikacije</translation> <translation id="2814448776515246190">Djelimično snimanje</translation> <translation id="2819276065543622893">Sada ćete se odjaviti.</translation> +<translation id="2822551631199737692">Upotrebljava se kamera</translation> <translation id="2825224105325558319"><ph name="DISPLAY_NAME" /> ne podržava rezoluciju <ph name="SPECIFIED_RESOLUTION" />. Rezolucija je promijenjena na <ph name="FALLBACK_RESOLUTION" />.</translation> <translation id="2825619548187458965">Polica</translation> <translation id="2831035692318564937">Uključeno do izlaska sunca</translation> @@ -807,6 +808,7 @@ <translation id="5682642926269496722">Google Asistent nije dostupan za račun trenutnog korisnika.</translation> <translation id="5689633613396158040">Noćno svjetlo olakšava gledanje u ekran ili čitanje pod prigušenim svjetlom. Dodirnite da promijenite vrijeme uključivanja Noćnog svjetla ili ga isključite u potpunosti.</translation> <translation id="5691772641933328258">Otisak prsta nije prepoznat</translation> +<translation id="5693255400847650006">Upotrebljava se mikrofon</translation> <translation id="570390244361237317">Sve aplikacije, navigirajte tipkama sa strelicama da pristupite svim aplikacijama</translation> <translation id="5707775774148071965">Uređaj podržava veću brzinu prijenosa podataka od kabla. Performanse uređaja su možda ograničene.</translation> <translation id="5710450975648804523">Uključen je način rada Ne ometaj</translation> @@ -981,6 +983,7 @@ <translation id="6723839937902243910">Napajanje</translation> <translation id="6727969043791803658">Povezano, <ph name="BATTERY_PERCENTAGE" />% baterije</translation> <translation id="6732800389263199929">+ <ph name="COUNT" /></translation> +<translation id="6737983188036277605">Upotrebljavaju se kamera i mikrofon</translation> <translation id="6739144137573853180">IDITE U POSTAVKE</translation> <translation id="6751052314767925245">Nametnuo vaš administrator</translation> <translation id="6751826523481687655">Uključeno je praćenje performansi</translation>
diff --git a/ash/strings/ash_strings_hr.xtb b/ash/strings/ash_strings_hr.xtb index 08941c2..f1a474b 100644 --- a/ash/strings/ash_strings_hr.xtb +++ b/ash/strings/ash_strings_hr.xtb
@@ -306,6 +306,7 @@ <translation id="2805756323405976993">Aplikacije</translation> <translation id="2814448776515246190">Djelomično snimanje</translation> <translation id="2819276065543622893">Odjavit ćete se sada.</translation> +<translation id="2822551631199737692">Upotrebljava se kamera</translation> <translation id="2825224105325558319"><ph name="DISPLAY_NAME" /> ne podržava razlučivost <ph name="SPECIFIED_RESOLUTION" />. Razlučivost je promijenjena u <ph name="FALLBACK_RESOLUTION" />.</translation> <translation id="2825619548187458965">Polica</translation> <translation id="2831035692318564937">Uključeno do izlaska sunca</translation> @@ -807,6 +808,7 @@ <translation id="5682642926269496722">Google asistent nije dostupan za trenutačni korisnički račun.</translation> <translation id="5689633613396158040">Noćno svjetlo olakšava gledanje zaslona ili čitanje pri slabom svjetlu. Dodirnite da biste promijenili vrijeme uključivanja noćnog svjetla ili ga potpuno isključili.</translation> <translation id="5691772641933328258">Otisak prsta nije prepoznat</translation> +<translation id="5693255400847650006">Upotrebljava se mikrofon</translation> <translation id="570390244361237317">Sve aplikacije, krećite se pomoću tipki sa strelicama da biste pristupili svim aplikacijama</translation> <translation id="5707775774148071965">Vaš uređaj podržava veću brzinu prijenosa podataka od kabela. Izvedba uređaja može biti ograničena.</translation> <translation id="5710450975648804523">Način Ne uznemiravaj uključen</translation> @@ -981,6 +983,7 @@ <translation id="6723839937902243910">Napajanje</translation> <translation id="6727969043791803658">Povezano, baterija <ph name="BATTERY_PERCENTAGE" />%</translation> <translation id="6732800389263199929">+ <ph name="COUNT" /></translation> +<translation id="6737983188036277605">Upotrebljavaju se kamera i mikrofon</translation> <translation id="6739144137573853180">OTVORI POSTAVKE</translation> <translation id="6751052314767925245">Provodi vaš administrator</translation> <translation id="6751826523481687655">Uključeno je praćenje izvedbe</translation>
diff --git a/ash/strings/ash_strings_hu.xtb b/ash/strings/ash_strings_hu.xtb index 6f5f2bcd..df4295b 100644 --- a/ash/strings/ash_strings_hu.xtb +++ b/ash/strings/ash_strings_hu.xtb
@@ -306,6 +306,7 @@ <translation id="2805756323405976993">Alkalmazások</translation> <translation id="2814448776515246190">Részleges rögzítés</translation> <translation id="2819276065543622893">A rendszer most kijelentkezteti Önt.</translation> +<translation id="2822551631199737692">A kamera használatban van</translation> <translation id="2825224105325558319">A(z) <ph name="DISPLAY_NAME" /> nem támogatja a következő felbontást: <ph name="SPECIFIED_RESOLUTION" />. A felbontás erre módosult: <ph name="FALLBACK_RESOLUTION" />.</translation> <translation id="2825619548187458965">Polc</translation> <translation id="2831035692318564937">Bekapcsolva napkeltéig</translation> @@ -808,6 +809,7 @@ <translation id="5682642926269496722">A Google Segéd nem áll rendelkezésre ennél a felhasználói fióknál.</translation> <translation id="5689633613396158040">Az Éjszakai fény funkció kellemesebbé teszi a képernyő nézését és az olvasást gyenge fény mellett. Koppintson, ha módosítani szeretné, hogy mikor kapcsoljon be az Éjszakai mód, vagy ha teljesen ki szeretné kapcsolni.</translation> <translation id="5691772641933328258">Ujjlenyomat felismerése sikertelen</translation> +<translation id="5693255400847650006">A mikrofon használatban van</translation> <translation id="570390244361237317">Az összes alkalmazás, a nyílbillentyűk használatával férhet hozzá az összes alkalmazáshoz</translation> <translation id="5707775774148071965">Az eszköz nagyobb adatátviteli sebességre képes, mint amit a kábel biztosítani tud. Ez korlátozhatja az eszköz teljesítményét.</translation> <translation id="5710450975648804523">Ne zavarjanak mód: bekapcsolva</translation> @@ -982,6 +984,7 @@ <translation id="6723839937902243910">Energiaellátás</translation> <translation id="6727969043791803658">Csatlakoztatva, <ph name="BATTERY_PERCENTAGE" />%-os töltöttség</translation> <translation id="6732800389263199929">+<ph name="COUNT" /></translation> +<translation id="6737983188036277605">A kamera és a mikrofon használatban van</translation> <translation id="6739144137573853180">UGRÁS A BEÁLLÍTÁSOKHOZ</translation> <translation id="6751052314767925245">Használatát megköveteli az adminisztrátor</translation> <translation id="6751826523481687655">A teljesítménykövetés be van kapcsolva</translation>
diff --git a/ash/strings/ash_strings_ka.xtb b/ash/strings/ash_strings_ka.xtb index 9bc3f8b3..a9e2e12 100644 --- a/ash/strings/ash_strings_ka.xtb +++ b/ash/strings/ash_strings_ka.xtb
@@ -306,6 +306,7 @@ <translation id="2805756323405976993">პროგრამები</translation> <translation id="2814448776515246190">ნაწილობრივი აღბეჭდვა</translation> <translation id="2819276065543622893">თქვენ ახლა გამოხვალთ.</translation> +<translation id="2822551631199737692">კამერა გამოიყენება</translation> <translation id="2825224105325558319"><ph name="SPECIFIED_RESOLUTION" /> არ არის მხარდაჭერილი <ph name="DISPLAY_NAME" />-ის მიერ. გარჩევადობა შეიცვალა <ph name="FALLBACK_RESOLUTION" />-ზე.</translation> <translation id="2825619548187458965">თარო</translation> <translation id="2831035692318564937">ჩართული მზის ამოსვლამდე</translation> @@ -807,6 +808,7 @@ <translation id="5682642926269496722">Google ასისტენტი მიუწვდომელია მომხმარებლის ამჟამინდელი ანგარიშისთვის.</translation> <translation id="5689633613396158040">ღამის განათება გაგიმარტივებთ ეკრანზე კითხვას ან მის ყურებას მკრთალი განათების პირობებში. შეეხეთ ღამის განათების ჩართვის დროის შესაცვლელად ან მის მთლიანად გამოსართავად.</translation> <translation id="5691772641933328258">თითის ანაბეჭდის ამოცნობა ვერ მოხერხდა</translation> +<translation id="5693255400847650006">მიკროფონი გამოიყენება</translation> <translation id="570390244361237317">ყველა აპი, ყველა აპზე წვდომისთვის ნავიგაცია შეგიძლიათ ისრებიანი კლავიშებით</translation> <translation id="5707775774148071965">თქვენს მოწყობილობას აქვს მონაცემების გადაცემის უფრო მაღალი სიჩქარის მხარდაჭერა, ვიდრე თქვენს კაბელს. მოწყობილობის ეფექტურობა შეიძლება შეიზღუდოს.</translation> <translation id="5710450975648804523">„არ შემაწუხოთ“ ჩართულია</translation> @@ -981,6 +983,7 @@ <translation id="6723839937902243910">ენერგია</translation> <translation id="6727969043791803658">დაკავშირებულია, ბატარეის დონეა <ph name="BATTERY_PERCENTAGE" />%</translation> <translation id="6732800389263199929">+<ph name="COUNT" /></translation> +<translation id="6737983188036277605">კამერა და მიკროფონი გამოიყენება</translation> <translation id="6739144137573853180">პარამეტრებზე გადასვლა</translation> <translation id="6751052314767925245">იძულებით გააქტიურებულია თქვენი ადმინისტრატორის მიერ</translation> <translation id="6751826523481687655">ეფექტურობის ტრასირება ჩართულია</translation>
diff --git a/ash/strings/ash_strings_lt.xtb b/ash/strings/ash_strings_lt.xtb index 22527a6..ffaa67c3 100644 --- a/ash/strings/ash_strings_lt.xtb +++ b/ash/strings/ash_strings_lt.xtb
@@ -306,6 +306,7 @@ <translation id="2805756323405976993">Taikomosios programos</translation> <translation id="2814448776515246190">Dalinio vaizdo užfiksavimas</translation> <translation id="2819276065543622893">Būsite atjungti.</translation> +<translation id="2822551631199737692">Naudojamas fotoaparatas</translation> <translation id="2825224105325558319">„<ph name="DISPLAY_NAME" />“ nepalaiko <ph name="SPECIFIED_RESOLUTION" />. Skyra buvo pakeista į <ph name="FALLBACK_RESOLUTION" />.</translation> <translation id="2825619548187458965">Lentyna</translation> <translation id="2831035692318564937">Įjungta iki saulėtekio</translation> @@ -807,6 +808,7 @@ <translation id="5682642926269496722">„Google Assistant“ nepasiekiamas dabartinėje naudotojo paskyroje.</translation> <translation id="5689633613396158040">Naudojant „Nakties šviesos“ funkciją bus patogiau žiūrėti į ekraną ar skaityti prietemoje. Palieskite, kad pakeistumėte, kokiu metu įjungiama funkcija „Nakties šviesa“, arba ją visiškai išjungtumėte.</translation> <translation id="5691772641933328258">Kontrolinis kodas neatpažintas</translation> +<translation id="5693255400847650006">Naudojamas mikrofonas</translation> <translation id="570390244361237317">„Visos programos“; naudokite rodyklių klavišus, kad pasiektumėte visas programas</translation> <translation id="5707775774148071965">Įrenginys palaiko didesnį duomenų dažnį nei laidas. Įrenginio našumas gali būti apribotas.</translation> <translation id="5710450975648804523">Netrukdymo režimas įjungtas</translation> @@ -981,6 +983,7 @@ <translation id="6723839937902243910">Maitinimas</translation> <translation id="6727969043791803658">Prisijungta, akumuliatoriaus įkrovos lygis: <ph name="BATTERY_PERCENTAGE" /> proc.</translation> <translation id="6732800389263199929">Dar <ph name="COUNT" /></translation> +<translation id="6737983188036277605">Naudojamas fotoaparatas ir mikrofonas</translation> <translation id="6739144137573853180">EIKITE Į NUSTATYMUS</translation> <translation id="6751052314767925245">Įgalino jūsų administratorius</translation> <translation id="6751826523481687655">Našumo stebėjimas įjungtas</translation>
diff --git a/ash/strings/ash_strings_my.xtb b/ash/strings/ash_strings_my.xtb index fc714aba..c21ed0f4 100644 --- a/ash/strings/ash_strings_my.xtb +++ b/ash/strings/ash_strings_my.xtb
@@ -306,6 +306,7 @@ <translation id="2805756323405976993">အက်ပ်များ</translation> <translation id="2814448776515246190">တစ်စိတ်တစ်ပိုင်း ပုံဖမ်းယူရန်</translation> <translation id="2819276065543622893">သင်ယခု ထွက်ပါမည်။</translation> +<translation id="2822551631199737692">ကင်မရာ သုံးနေသည်</translation> <translation id="2825224105325558319"><ph name="DISPLAY_NAME" /> က <ph name="SPECIFIED_RESOLUTION" /> ကို မပံ့ပိုးပါ။ ပုံရိပ်ပြတ်သားကိန်းကို <ph name="FALLBACK_RESOLUTION" /> သို့ ပြောင်းထားသည်။</translation> <translation id="2825619548187458965">စင်</translation> <translation id="2831035692318564937">နေထွက်ချိန်အထိ ဖွင့်ရန်</translation> @@ -807,6 +808,7 @@ <translation id="5682642926269496722">လက်ရှိအသုံးပြုသူ အကောင့်အတွက် Google Assistant မရနိုင်ပါ။</translation> <translation id="5689633613396158040">'ညအလင်းရောင်' သည် ဖန်သားပြင်ကို ကြည့်ရှုရန် သို့မဟုတ် အလင်းအားနည်းချိန် စာဖတ်ရန် လွယ်ကူစေသည်။ 'ညအလင်းရောင်' ကို ဖွင့်ရန် သို့မဟုတ် အပြီးပိတ်ရန် အချိန်ကို ပြောင်းရန် တို့ပါ။</translation> <translation id="5691772641933328258">လက်ဗွေကို မသိပါ</translation> +<translation id="5693255400847650006">မိုက်ခရိုဖုန်း သုံးနေသည်</translation> <translation id="570390244361237317">အက်ပ်အားလုံးကို သုံးရန် မြားကီးများဖြင့် ရွှေ့ပါ</translation> <translation id="5707775774148071965">စက်က ကေဘယ်ကြိုးထက် ပိုမြင့်သည့် ဒေတာသယ်ယူနှုန်းကို ပံ့ပိုးသည်။ စက်၏စွမ်းဆောင်ရည်သည် အကန့်အသတ်ရှိနိုင်သည်။</translation> <translation id="5710450975648804523">'မနှောင့်ယှက်ရ' ဖွင့်ထားသည်</translation> @@ -981,6 +983,7 @@ <translation id="6723839937902243910">ပါဝါ</translation> <translation id="6727969043791803658">ချိတ်ဆက်ပြီးပြီ၊ ဘက်ထရီ <ph name="BATTERY_PERCENTAGE" />%</translation> <translation id="6732800389263199929">+<ph name="COUNT" /></translation> +<translation id="6737983188036277605">ကင်မရာနှင့် မိုက်ခရိုဖုန်း သုံးနေသည်</translation> <translation id="6739144137573853180">ဆက်တင်များသို့ သွားရန်</translation> <translation id="6751052314767925245">သင့်စီမံခန့်ခွဲသူက ထည့်သွင်းအသုံးပြုထားသည်</translation> <translation id="6751826523481687655">စွမ်းဆောင်ရည် မှတ်တမ်းတင်ခြင်းကို ဖွင့်ထားသည်</translation>
diff --git a/ash/strings/ash_strings_pl.xtb b/ash/strings/ash_strings_pl.xtb index 379d1dc4..663311c9 100644 --- a/ash/strings/ash_strings_pl.xtb +++ b/ash/strings/ash_strings_pl.xtb
@@ -306,6 +306,7 @@ <translation id="2805756323405976993">Aplikacje</translation> <translation id="2814448776515246190">Przechwytywanie części ekranu</translation> <translation id="2819276065543622893">Zostaniesz teraz wylogowany.</translation> +<translation id="2822551631199737692">Aparat w użyciu</translation> <translation id="2825224105325558319"><ph name="DISPLAY_NAME" /> nie obsługuje ustawienia <ph name="SPECIFIED_RESOLUTION" />. Rozdzielczość została zmieniona na <ph name="FALLBACK_RESOLUTION" />.</translation> <translation id="2825619548187458965">Półka</translation> <translation id="2831035692318564937">Włączony do wschodu słońca</translation> @@ -807,6 +808,7 @@ <translation id="5682642926269496722">Asystent Google jest niedostępny na tym koncie użytkownika.</translation> <translation id="5689633613396158040">Dzięki Podświetleniu nocnemu oczy mniej się męczą podczas patrzenia na ekran lub czytania przy słabym oświetleniu. Kliknij, by zmienić godzinę włączania Podświetlenia nocnego lub całkowicie je wyłączyć.</translation> <translation id="5691772641933328258">Nie rozpoznano odcisku palca</translation> +<translation id="5693255400847650006">Mikrofon w użyciu</translation> <translation id="570390244361237317">Wszystkie aplikacje; aby uzyskać dostęp do wszystkich aplikacji, poruszaj się za pomocą klawiszy strzałek</translation> <translation id="5707775774148071965">Twoje urządzenie obsługuje większą szybkość transmisji danych niż kabel. Wydajność urządzenia może być ograniczona.</translation> <translation id="5710450975648804523">Tryb Nie przeszkadzać włączony</translation> @@ -980,6 +982,7 @@ <translation id="6723839937902243910">Zasilanie</translation> <translation id="6727969043791803658">Połączono, bateria: <ph name="BATTERY_PERCENTAGE" />%</translation> <translation id="6732800389263199929">+<ph name="COUNT" /></translation> +<translation id="6737983188036277605">Kamera i mikrofon w użyciu</translation> <translation id="6739144137573853180">OTWÓRZ USTAWIENIA</translation> <translation id="6751052314767925245">Wymusił administrator</translation> <translation id="6751826523481687655">Śledzenie wydajności jest włączone</translation>
diff --git a/ash/strings/ash_strings_te.xtb b/ash/strings/ash_strings_te.xtb index 3005ad2..b27f53b 100644 --- a/ash/strings/ash_strings_te.xtb +++ b/ash/strings/ash_strings_te.xtb
@@ -35,14 +35,14 @@ <translation id="1171742223880403396">మీ USB-C కేబుల్, డిస్ప్లేలకు సరిగ్గా కనెక్ట్ కాకపోవచ్చు</translation> <translation id="1175572348579024023">స్క్రోల్ చేస్తుంది</translation> <translation id="1178581264944972037">పాజ్ చేయి</translation> -<translation id="1181037720776840403">తీసివేయి</translation> +<translation id="1181037720776840403">తీసివేయండి</translation> <translation id="1183863904939664422">ఈ సూచనపై ఆసక్తి లేదు</translation> <translation id="118437560755358292">మరింత సెక్యూరిటీ కోసం పాస్వర్డ్ లేదా PINను ఎంటర్ చేయండి</translation> <translation id="118532027333893379">ఫుల్ స్క్రీన్ను క్యాప్చర్ చేయడానికి ఎక్కడైనా ట్యాప్ చేయండి</translation> <translation id="1190609913194133056">నోటిఫికేషన్ కేంద్రం</translation> <translation id="1190678134285018527">పరికరాన్ని దాని మునపటి వెర్షన్కు మార్చడం అవసరం</translation> <translation id="1195412055398077112">ఓవర్స్కాన్</translation> -<translation id="119944043368869598">అన్ని క్లియర్ చేయి</translation> +<translation id="119944043368869598">అన్ని క్లియర్ చేయండి</translation> <translation id="1199716647557067911">స్విచ్ యాక్సెస్ను మీరు ఆఫ్ చేయాలనుకుంటున్నారా?</translation> <translation id="1201402288615127009">తరువాత</translation> <translation id="1210557957257435379">స్క్రీన్ రికార్డింగ్</translation> @@ -107,7 +107,7 @@ <translation id="1510238584712386396">లాంచర్</translation> <translation id="1516740043221086139">'అంతరాయం కలిగించవద్దు' మోడ్ ఆన్లో ఉంది.</translation> <translation id="1520303207432623762">{NUM_APPS,plural, =1{ నోటిఫికేషన్ సెట్టింగ్లను చూపుతుంది. యాప్ కోసం నోటిఫికేషన్లు ఆఫ్ చేయబడి ఉన్నాయి}other{ నోటిఫికేషన్ సెట్టింగ్లను చూపుతుంది. # యాప్ల కోసం నోటిఫికేషన్లు ఆఫ్ చేయబడి ఉన్నాయి}}</translation> -<translation id="1525508553941733066">తీసివేయి</translation> +<translation id="1525508553941733066">తీసివేయండి</translation> <translation id="1528259147807435347">గత వారం ఎడిట్ చేశారు</translation> <translation id="1536604384701784949"><ph name="USER_EMAIL_ADDRESS" />ను ఉపయోగించడానికి ముందు మీరు అన్ని ఖాతాల నుండి సైన్ అవుట్ చేయాల్సి ఉంటుంది. సైన్ అవుట్ చేయాలంటే, 'రద్దు చేయండి'ని ఎంపిక చేసి వెనుకకు వెళ్ళండి. ఆపై స్టేటస్ ఏరియాను తెరవడానికి సమయాన్ని ఎంచుకొని సైన్ అవుట్ను ఎంపిక చేయండి. <ph name="USER_EMAIL_ADDRESS_2" />కు మళ్లీ సైన్ ఇన్ చేయండి.</translation> <translation id="15373452373711364">పెద్ద మౌస్ కర్సర్</translation> @@ -216,7 +216,7 @@ <translation id="2220572644011485463">PIN లేదా పాస్వర్డ్</translation> <translation id="2222841058024245321">డెస్క్ 7</translation> <translation id="2224075387478458881">గోప్యమైన కంటెంట్ కనిపించినప్పుడు స్క్రీన్ రికార్డింగ్ అనుమతించబడదు</translation> -<translation id="2227179592712503583">సూచనను తీసివేయి</translation> +<translation id="2227179592712503583">సూచనను తీసివేయండి</translation> <translation id="225680501294068881">పరికరాల కోసం స్కాన్ చేస్తోంది...</translation> <translation id="2257486738914982088"><ph name="FILENAME" />ను డౌన్లోడ్ చేస్తున్నప్పుడు ఏదో తప్పు జరిగింది</translation> <translation id="2268130516524549846">బ్లూటూత్ నిలిపివేయబడింది</translation> @@ -457,7 +457,7 @@ <translation id="3621712662352432595">ఆడియో సెట్టింగ్లు</translation> <translation id="3626281679859535460">ప్రకాశం</translation> <translation id="3630697955794050612">ఆఫ్లో ఉంది</translation> -<translation id="3631369015426612114">కింది వాటి నుండి నోటిఫికేషన్లను అనుమతించు</translation> +<translation id="3631369015426612114">కింది వాటి నుండి నోటిఫికేషన్లను అనుమతించండి</translation> <translation id="3633097874324966332">మీ పరికరాన్ని పెయిర్ చేయడానికి బ్లూటూత్ సెట్టింగ్లను తెరవండి</translation> <translation id="3638400994746983214">గోప్యతా స్క్రీన్ను టోగుల్ చేస్తుంది. <ph name="STATE_TEXT" />.</translation> <translation id="3649505501900178324">అప్డేట్ పెండింగ్లో ఉంది</translation> @@ -887,7 +887,7 @@ <translation id="6121838516699723042"><ph name="FILENAME" /> డౌన్లోడ్ను నిర్ధారించండి</translation> <translation id="612734058257491180">అతిథి సెషన్లో Google Assistant పని చేయదు.</translation> <translation id="6134259848159370930">మీ పరికరం, యాప్లు, సెట్టింగ్లు, వెబ్ను వెతకండి.</translation> -<translation id="6137566720514957455"><ph name="USER_EMAIL_ADDRESS" /> కోసం 'డైలాగ్ను తీసివేయి'ని తెరవండి</translation> +<translation id="6137566720514957455"><ph name="USER_EMAIL_ADDRESS" /> కోసం 'డైలాగ్ను తీసివేయండి'ని తెరవండి</translation> <translation id="6141988275892716286">డౌన్లోడ్ను నిర్ధారించండి</translation> <translation id="6154006699632741460">పెరిఫెరల్ సపోర్ట్ చేయదు</translation> <translation id="6156262341071374681">అన్ని యాప్ల కోసం విస్తరించండి</translation>
diff --git a/ash/strings/ash_strings_uz.xtb b/ash/strings/ash_strings_uz.xtb index a84826b..572f02e9 100644 --- a/ash/strings/ash_strings_uz.xtb +++ b/ash/strings/ash_strings_uz.xtb
@@ -306,6 +306,7 @@ <translation id="2805756323405976993">Ilovalar</translation> <translation id="2814448776515246190">Qisman tasvirga olish</translation> <translation id="2819276065543622893">Seans yakunlandi.</translation> +<translation id="2822551631199737692">Kamera ishlatilmoqda</translation> <translation id="2825224105325558319"><ph name="DISPLAY_NAME" /> displeyining ekrani <ph name="SPECIFIED_RESOLUTION" /> hajmida ishlay olmaydi. Ekran <ph name="FALLBACK_RESOLUTION" /> hajmiga qaytarildi.</translation> <translation id="2825619548187458965">Javon</translation> <translation id="2831035692318564937">Quyosh botishigacha yoniq</translation> @@ -807,6 +808,7 @@ <translation id="5682642926269496722">Google Assistent bu foydalanuvchi hisobida ishlamaydi.</translation> <translation id="5689633613396158040">Tungi rejim xira yorugʻlikda koʻzlarni charchatmaslikka yordam beradi. Tungi rejimni rejalashtirish yoki undan butunlay chiqish uchun bu yerga bosing.</translation> <translation id="5691772641933328258">Barmoq izi aniqlanmadi</translation> +<translation id="5693255400847650006">Mikrofon ishlatilmoqda</translation> <translation id="570390244361237317">Barcha ilovalarni koʻrish uchun strelka tugmalarini bosing</translation> <translation id="5707775774148071965">Qurilmangizga maʼlumot uzatish tezligi yuqoriroq kabellarni ulash mumkin. Qurilma samaradorligi cheklanishi mumkin.</translation> <translation id="5710450975648804523">Bezovta qilinmasin rejimi yoniq</translation> @@ -981,6 +983,7 @@ <translation id="6723839937902243910">Quvvat</translation> <translation id="6727969043791803658">Ulangan, batareya quvvati: <ph name="BATTERY_PERCENTAGE" />%</translation> <translation id="6732800389263199929">+<ph name="COUNT" /></translation> +<translation id="6737983188036277605">Kamera va mikrofon ishlatilmoqda</translation> <translation id="6739144137573853180">SOZLAMALARGA OʻTISH</translation> <translation id="6751052314767925245">Administrator tomonidan majburiy sozlangan</translation> <translation id="6751826523481687655">Unumdorlik kuzatuvi yoniq</translation>
diff --git a/ash/webui/personalization_app/BUILD.gn b/ash/webui/personalization_app/BUILD.gn index b1d3bd4..36e375d 100644 --- a/ash/webui/personalization_app/BUILD.gn +++ b/ash/webui/personalization_app/BUILD.gn
@@ -71,6 +71,8 @@ "test/fake_personalization_app_wallpaper_provider.h", "test/personalization_app_browsertest_fixture.cc", "test/personalization_app_browsertest_fixture.h", + "test/personalization_app_mojom_banned_browsertest_fixture.cc", + "test/personalization_app_mojom_banned_browsertest_fixture.h", ] defines = [ "HAS_OUT_OF_PROC_TEST_RUNNER" ]
diff --git a/ash/webui/personalization_app/resources/trusted/wallpaper/index.ts b/ash/webui/personalization_app/resources/trusted/wallpaper/index.ts index 6a59a876..622e41b 100644 --- a/ash/webui/personalization_app/resources/trusted/wallpaper/index.ts +++ b/ash/webui/personalization_app/resources/trusted/wallpaper/index.ts
@@ -19,10 +19,6 @@ import '../../untrusted/collections_grid.js'; import '../../css/wallpaper.css.js'; -import {WallpaperObserver} from './wallpaper_observer.js'; - -WallpaperObserver.initWallpaperObserverIfNeeded(); - function reload(): void { window.location.reload(); }
diff --git a/ash/webui/personalization_app/resources/trusted/wallpaper/wallpaper_preview_element.ts b/ash/webui/personalization_app/resources/trusted/wallpaper/wallpaper_preview_element.ts index f6c36e1..25d688f 100644 --- a/ash/webui/personalization_app/resources/trusted/wallpaper/wallpaper_preview_element.ts +++ b/ash/webui/personalization_app/resources/trusted/wallpaper/wallpaper_preview_element.ts
@@ -17,12 +17,12 @@ import {assert} from 'chrome://resources/js/assert_ts.js'; import {getLocalStorageAttribution, isNonEmptyArray} from '../../common/utils.js'; -import {CurrentWallpaper, WallpaperProviderInterface, WallpaperType} from '../personalization_app.mojom-webui.js'; +import {CurrentWallpaper, WallpaperType} from '../personalization_app.mojom-webui.js'; import {Paths, PersonalizationRouter} from '../personalization_router_element.js'; import {WithPersonalizationStore} from '../personalization_store.js'; import {hasHttpScheme, removeHighResolutionSuffix} from '../utils.js'; -import {getWallpaperProvider} from './wallpaper_interface_provider.js'; +import {WallpaperObserver} from './wallpaper_observer.js'; import {getTemplate} from './wallpaper_preview_element.html.js'; export class WallpaperPreview extends WithPersonalizationStore { @@ -48,15 +48,10 @@ private image_: CurrentWallpaper|null; private imageLoading_: boolean; - private wallpaperProvider_: WallpaperProviderInterface; - - constructor() { - super(); - this.wallpaperProvider_ = getWallpaperProvider(); - } override connectedCallback() { super.connectedCallback(); + WallpaperObserver.initWallpaperObserverIfNeeded(); this.watch('image_', state => state.wallpaper.currentSelected); this.watch( 'imageLoading_',
diff --git a/ash/webui/personalization_app/resources/trusted/wallpaper/wallpaper_selected_element.ts b/ash/webui/personalization_app/resources/trusted/wallpaper/wallpaper_selected_element.ts index aa37a56..9ddc9bc 100644 --- a/ash/webui/personalization_app/resources/trusted/wallpaper/wallpaper_selected_element.ts +++ b/ash/webui/personalization_app/resources/trusted/wallpaper/wallpaper_selected_element.ts
@@ -17,13 +17,14 @@ import {loadTimeData} from 'chrome://resources/js/load_time_data.m.js'; import {getLocalStorageAttribution, isNonEmptyArray} from '../../common/utils.js'; -import {CurrentWallpaper, WallpaperLayout, WallpaperProviderInterface, WallpaperType} from '../personalization_app.mojom-webui.js'; +import {CurrentWallpaper, WallpaperLayout, WallpaperType} from '../personalization_app.mojom-webui.js'; import {Paths} from '../personalization_router_element.js'; import {WithPersonalizationStore} from '../personalization_store.js'; import {getWallpaperLayoutEnum, hasHttpScheme, removeHighResolutionSuffix} from '../utils.js'; import {getDailyRefreshState, selectGooglePhotosAlbum, setCurrentWallpaperLayout, setDailyRefreshCollectionId, updateDailyRefreshWallpaper} from './wallpaper_controller.js'; import {getWallpaperProvider} from './wallpaper_interface_provider.js'; +import {WallpaperObserver} from './wallpaper_observer.js'; import {getTemplate} from './wallpaper_selected_element.html.js'; import {DailyRefreshState} from './wallpaper_state.js'; @@ -163,15 +164,9 @@ private error_: string; private showPreviewButton_: boolean; - private wallpaperProvider_: WallpaperProviderInterface; - - constructor() { - super(); - this.wallpaperProvider_ = getWallpaperProvider(); - } - override connectedCallback() { super.connectedCallback(); + WallpaperObserver.initWallpaperObserverIfNeeded(); this.watch('error_', state => state.error); this.watch('image_', state => state.wallpaper.currentSelected); this.watch( @@ -181,7 +176,7 @@ state.wallpaper.loading.refreshWallpaper); this.watch('dailyRefreshState_', state => state.wallpaper.dailyRefresh); this.updateFromStore(); - getDailyRefreshState(this.wallpaperProvider_, this.getStore()); + getDailyRefreshState(getWallpaperProvider(), this.getStore()); } @@ -298,7 +293,7 @@ private onClickLayoutIcon_(event: Event) { const eventTarget = event.currentTarget as HTMLElement; const layout = getWallpaperLayoutEnum(eventTarget.dataset['layout']!); - setCurrentWallpaperLayout(layout, this.wallpaperProvider_, this.getStore()); + setCurrentWallpaperLayout(layout, getWallpaperProvider(), this.getStore()); } private computeDailyRefreshIcon_( @@ -328,14 +323,14 @@ assert(!this.collectionId); selectGooglePhotosAlbum( isDailyRefreshId ? '' : this.googlePhotosAlbumId, - this.wallpaperProvider_, this.getStore()); + getWallpaperProvider(), this.getStore()); } else { setDailyRefreshCollectionId( - isDailyRefreshId ? '' : this.collectionId!, this.wallpaperProvider_, + isDailyRefreshId ? '' : this.collectionId!, getWallpaperProvider(), this.getStore()); // Only refresh the wallpaper if daily refresh is toggled on. if (!isDailyRefreshId) { - updateDailyRefreshWallpaper(this.wallpaperProvider_, this.getStore()); + updateDailyRefreshWallpaper(getWallpaperProvider(), this.getStore()); } } } @@ -358,7 +353,7 @@ } private onClickUpdateDailyRefreshWallpaper_() { - updateDailyRefreshWallpaper(this.wallpaperProvider_, this.getStore()); + updateDailyRefreshWallpaper(getWallpaperProvider(), this.getStore()); } /**
diff --git a/ash/webui/personalization_app/test/personalization_app_mojom_banned_browsertest_fixture.cc b/ash/webui/personalization_app/test/personalization_app_mojom_banned_browsertest_fixture.cc new file mode 100644 index 0000000..91862ac --- /dev/null +++ b/ash/webui/personalization_app/test/personalization_app_mojom_banned_browsertest_fixture.cc
@@ -0,0 +1,275 @@ +// Copyright 2022 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include "ash/webui/personalization_app/test/personalization_app_mojom_banned_browsertest_fixture.h" + +#include "ash/webui/personalization_app/mojom/personalization_app.mojom.h" +#include "ash/webui/personalization_app/personalization_app_ambient_provider.h" +#include "ash/webui/personalization_app/personalization_app_keyboard_backlight_provider.h" +#include "ash/webui/personalization_app/personalization_app_theme_provider.h" +#include "ash/webui/personalization_app/personalization_app_ui.h" +#include "ash/webui/personalization_app/personalization_app_url_constants.h" +#include "ash/webui/personalization_app/personalization_app_user_provider.h" +#include "ash/webui/personalization_app/personalization_app_wallpaper_provider.h" +#include "mojo/public/cpp/bindings/pending_receiver.h" +#include "testing/gmock/include/gmock/gmock.h" + +namespace ash::personalization_app { + +namespace { + +class MockPersonalizationAppAmbientProvider + : public PersonalizationAppAmbientProvider { + public: + MOCK_METHOD(void, + BindInterface, + (mojo::PendingReceiver<mojom::AmbientProvider> receiver), + (override)); + MOCK_METHOD(void, + IsAmbientModeEnabled, + (IsAmbientModeEnabledCallback callback), + (override)); + MOCK_METHOD(void, + SetAmbientObserver, + (mojo::PendingRemote< + ash::personalization_app::mojom::AmbientObserver> observer), + (override)); + MOCK_METHOD(void, SetAmbientModeEnabled, (bool enabled), (override)); + MOCK_METHOD(void, + SetAnimationTheme, + (ash::AmbientAnimationTheme animation_theme), + (override)); + MOCK_METHOD(void, + SetTopicSource, + (ash::AmbientModeTopicSource topic_source), + (override)); + MOCK_METHOD(void, + SetTemperatureUnit, + (ash::AmbientModeTemperatureUnit temperature_unit), + (override)); + MOCK_METHOD(void, + SetAlbumSelected, + (const std::string& id, + ash::AmbientModeTopicSource topic_source, + bool selected), + (override)); + MOCK_METHOD(void, SetPageViewed, (), (override)); +}; + +class MockPersonalizationAppKeyboardBacklightProvider + : public PersonalizationAppKeyboardBacklightProvider { + public: + MOCK_METHOD( + void, + BindInterface, + (mojo::PendingReceiver<mojom::KeyboardBacklightProvider> receiver), + (override)); + MOCK_METHOD(void, + SetKeyboardBacklightObserver, + (mojo::PendingRemote<mojom::KeyboardBacklightObserver> observer), + (override)); + MOCK_METHOD(void, + SetBacklightColor, + (mojom::BacklightColor backlight_color), + (override)); + MOCK_METHOD(void, + ShouldShowNudge, + (ShouldShowNudgeCallback callback), + (override)); + MOCK_METHOD(void, HandleNudgeShown, (), (override)); +}; + +class MockPersonalizationAppThemeProvider + : public PersonalizationAppThemeProvider { + public: + MOCK_METHOD(void, + BindInterface, + (mojo::PendingReceiver< + ash::personalization_app::mojom::ThemeProvider> receiver), + (override)); + MOCK_METHOD(void, + SetThemeObserver, + (mojo::PendingRemote< + ash::personalization_app::mojom::ThemeObserver> observer), + (override)); + MOCK_METHOD(void, SetColorModePref, (bool dark_mode_enabled), (override)); + MOCK_METHOD(void, + SetColorModeAutoScheduleEnabled, + (bool enabled), + (override)); + MOCK_METHOD(void, + IsDarkModeEnabled, + (IsDarkModeEnabledCallback callback), + (override)); + MOCK_METHOD(void, + IsColorModeAutoScheduleEnabled, + (IsColorModeAutoScheduleEnabledCallback callback), + (override)); +}; + +class MockPersonalizationAppWallpaperProvider + : public PersonalizationAppWallpaperProvider { + public: + MOCK_METHOD(void, + BindInterface, + (mojo::PendingReceiver< + ash::personalization_app::mojom::WallpaperProvider> receiver), + (override)); + MOCK_METHOD(void, MakeTransparent, (), (override)); + MOCK_METHOD(void, MakeOpaque, (), (override)); + MOCK_METHOD(void, + FetchCollections, + (FetchCollectionsCallback callback), + (override)); + MOCK_METHOD(void, + FetchImagesForCollection, + (const std::string& collection_id, + FetchImagesForCollectionCallback callback), + (override)); + MOCK_METHOD(void, + FetchGooglePhotosAlbums, + (const absl::optional<std::string>& resume_token, + FetchGooglePhotosAlbumsCallback callback), + (override)); + MOCK_METHOD(void, + FetchGooglePhotosEnabled, + (FetchGooglePhotosEnabledCallback callback), + (override)); + MOCK_METHOD(void, + FetchGooglePhotosPhotos, + (const absl::optional<std::string>& item_id, + const absl::optional<std::string>& album_id, + const absl::optional<std::string>& resume_token, + FetchGooglePhotosPhotosCallback callback), + (override)); + MOCK_METHOD(void, + GetDefaultImageThumbnail, + (GetDefaultImageThumbnailCallback callback), + (override)); + MOCK_METHOD(void, + GetLocalImages, + (GetLocalImagesCallback callback), + (override)); + MOCK_METHOD(void, + GetLocalImageThumbnail, + (const base::FilePath& path, + GetLocalImageThumbnailCallback callback), + (override)); + MOCK_METHOD(void, + SetWallpaperObserver, + (mojo::PendingRemote< + ash::personalization_app::mojom::WallpaperObserver> observer), + (override)); + MOCK_METHOD(void, + SelectWallpaper, + (uint64_t image_asset_id, + bool preview_mode, + SelectWallpaperCallback callback), + (override)); + MOCK_METHOD(void, + SelectDefaultImage, + (SelectDefaultImageCallback callback), + (override)); + MOCK_METHOD(void, + SelectGooglePhotosPhoto, + (const std::string& id, + ash::WallpaperLayout layout, + bool preview_mode, + SelectGooglePhotosPhotoCallback callback), + (override)); + MOCK_METHOD(void, + SelectGooglePhotosAlbum, + (const std::string& id, SelectGooglePhotosAlbumCallback callback), + (override)); + MOCK_METHOD(void, + GetGooglePhotosDailyRefreshAlbumId, + (GetGooglePhotosDailyRefreshAlbumIdCallback callback), + (override)); + MOCK_METHOD(void, + SelectLocalImage, + (const base::FilePath& path, + ash::WallpaperLayout layout, + bool preview_mode, + SelectLocalImageCallback callback), + (override)); + MOCK_METHOD(void, + SetCurrentWallpaperLayout, + (ash::WallpaperLayout layout), + (override)); + MOCK_METHOD(void, + SetDailyRefreshCollectionId, + (const std::string& collection_id), + (override)); + MOCK_METHOD(void, + GetDailyRefreshCollectionId, + (GetDailyRefreshCollectionIdCallback callback), + (override)); + MOCK_METHOD(void, + UpdateDailyRefreshWallpaper, + (UpdateDailyRefreshWallpaperCallback callback), + (override)); + MOCK_METHOD(void, + IsInTabletMode, + (IsInTabletModeCallback callback), + (override)); + MOCK_METHOD(void, ConfirmPreviewWallpaper, (), (override)); + MOCK_METHOD(void, CancelPreviewWallpaper, (), (override)); +}; + +class MockPersonalizationAppUserProvider + : public PersonalizationAppUserProvider { + public: + MOCK_METHOD(void, + BindInterface, + (mojo::PendingReceiver< + ash::personalization_app::mojom::UserProvider> receiver), + (override)); + MOCK_METHOD(void, + SetUserImageObserver, + (mojo::PendingRemote< + ash::personalization_app::mojom::UserImageObserver> observer), + (override)); + MOCK_METHOD(void, GetUserInfo, (GetUserInfoCallback callback), (override)); + MOCK_METHOD(void, + GetDefaultUserImages, + (GetDefaultUserImagesCallback callback), + (override)); + MOCK_METHOD(void, SelectImageFromDisk, (), (override)); + MOCK_METHOD(void, SelectDefaultImage, (int index), (override)); + MOCK_METHOD(void, SelectProfileImage, (), (override)); + MOCK_METHOD(void, + SelectCameraImage, + (::mojo_base::BigBuffer data), + (override)); + MOCK_METHOD(void, SelectLastExternalUserImage, (), (override)); +}; + +} // namespace + +std::unique_ptr<content::WebUIController> +TestPersonalizationAppMojomBannedWebUIProvider::NewWebUI(content::WebUI* web_ui, + const GURL& url) { + auto ambient_provider = std::make_unique< + testing::StrictMock<MockPersonalizationAppAmbientProvider>>(); + auto keyboard_backlight_provider = std::make_unique< + testing::StrictMock<MockPersonalizationAppKeyboardBacklightProvider>>(); + auto theme_provider = std::make_unique< + testing::StrictMock<MockPersonalizationAppThemeProvider>>(); + auto wallpaper_provider = std::make_unique< + testing::StrictMock<MockPersonalizationAppWallpaperProvider>>(); + auto user_provider = std::make_unique< + testing::StrictMock<MockPersonalizationAppUserProvider>>(); + return std::make_unique<PersonalizationAppUI>( + web_ui, std::move(ambient_provider), + std::move(keyboard_backlight_provider), std::move(theme_provider), + std::move(user_provider), std::move(wallpaper_provider)); +} + +void PersonalizationAppMojomBannedBrowserTestFixture::SetUpOnMainThread() { + MojoWebUIBrowserTest::SetUpOnMainThread(); + test_factory_.AddFactoryOverride(kChromeUIPersonalizationAppHost, + &test_web_ui_provider_); +} + +} // namespace ash::personalization_app
diff --git a/ash/webui/personalization_app/test/personalization_app_mojom_banned_browsertest_fixture.h b/ash/webui/personalization_app/test/personalization_app_mojom_banned_browsertest_fixture.h new file mode 100644 index 0000000..1e5ab50 --- /dev/null +++ b/ash/webui/personalization_app/test/personalization_app_mojom_banned_browsertest_fixture.h
@@ -0,0 +1,48 @@ +// Copyright 2022 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#ifndef ASH_WEBUI_PERSONALIZATION_APP_TEST_PERSONALIZATION_APP_MOJOM_BANNED_BROWSERTEST_FIXTURE_H_ +#define ASH_WEBUI_PERSONALIZATION_APP_TEST_PERSONALIZATION_APP_MOJOM_BANNED_BROWSERTEST_FIXTURE_H_ + +#include <memory> + +#include "chrome/test/base/mojo_web_ui_browser_test.h" +#include "chrome/test/base/test_chrome_web_ui_controller_factory.h" +#include "content/public/browser/web_ui_controller.h" +#include "content/public/test/scoped_web_ui_controller_factory_registration.h" +#include "url/gurl.h" + +namespace ash::personalization_app { + +class TestPersonalizationAppMojomBannedWebUIProvider + : public TestChromeWebUIControllerFactory::WebUIProvider { + public: + std::unique_ptr<content::WebUIController> NewWebUI(content::WebUI* web_ui, + const GURL& url) override; +}; + +class PersonalizationAppMojomBannedBrowserTestFixture + : public MojoWebUIBrowserTest { + public: + PersonalizationAppMojomBannedBrowserTestFixture() = default; + + PersonalizationAppMojomBannedBrowserTestFixture( + const PersonalizationAppMojomBannedBrowserTestFixture&) = delete; + PersonalizationAppMojomBannedBrowserTestFixture& operator=( + const PersonalizationAppMojomBannedBrowserTestFixture&) = delete; + + ~PersonalizationAppMojomBannedBrowserTestFixture() override = default; + + void SetUpOnMainThread() override; + + private: + TestChromeWebUIControllerFactory test_factory_; + TestPersonalizationAppMojomBannedWebUIProvider test_web_ui_provider_; + content::ScopedWebUIControllerFactoryRegistration + scoped_controller_factory_registration_{&test_factory_}; +}; + +} // namespace ash::personalization_app + +#endif // ASH_WEBUI_PERSONALIZATION_APP_TEST_PERSONALIZATION_APP_MOJOM_BANNED_BROWSERTEST_FIXTURE_H_
diff --git a/ash/wm/collision_detection/collision_detection_utils_unittest.cc b/ash/wm/collision_detection/collision_detection_utils_unittest.cc index a7879525f..107cb9d 100644 --- a/ash/wm/collision_detection/collision_detection_utils_unittest.cc +++ b/ash/wm/collision_detection/collision_detection_utils_unittest.cc
@@ -21,6 +21,7 @@ #include "ash/wm/pip/pip_test_utils.h" #include "ash/wm/window_state.h" #include "ash/wm/wm_event.h" +#include "ash/wm/work_area_insets.h" #include "base/callback_helpers.h" #include "base/test/scoped_feature_list.h" #include "ui/aura/window.h" @@ -186,8 +187,10 @@ void UpdateWorkArea(const std::string& bounds) { UpdateDisplay(bounds); - for (aura::Window* root : Shell::GetAllRootWindows()) - Shell::Get()->SetDisplayWorkAreaInsets(root, gfx::Insets()); + for (aura::Window* root : Shell::GetAllRootWindows()) { + WorkAreaInsets::ForWindow(root)->UpdateWorkAreaInsetsForTest( + root, gfx::Rect(), gfx::Insets(), gfx::Insets()); + } } private:
diff --git a/ash/wm/desks/desks_bar_view.cc b/ash/wm/desks/desks_bar_view.cc index 78fb09d..9ac005f 100644 --- a/ash/wm/desks/desks_bar_view.cc +++ b/ash/wm/desks/desks_bar_view.cc
@@ -1275,7 +1275,7 @@ void DesksBarView::OnDesksTemplatesButtonPressed() { RecordLoadSavedDeskLibraryHistogram(); overview_grid_->overview_session()->ShowDesksTemplatesGrids( - IsZeroState(), base::GUID(), + IsZeroState(), base::GUID(), /*saved_desk_name=*/u"", GetWidget()->GetNativeWindow()->GetRootWindow()); }
diff --git a/ash/wm/desks/templates/saved_desk_item_view.cc b/ash/wm/desks/templates/saved_desk_item_view.cc index 168c094f..a23f9fc 100644 --- a/ash/wm/desks/templates/saved_desk_item_view.cc +++ b/ash/wm/desks/templates/saved_desk_item_view.cc
@@ -283,19 +283,19 @@ return name_view_->HasFocus(); } -void SavedDeskItemView::MaybeRemoveNameNumber() { - // When there are existing matched Desk name and Template name (ie. +void SavedDeskItemView::MaybeRemoveNameNumber( + const std::u16string& saved_desk_name) { + // When there is a matched `saved_desk_name` and existing Template name (ie. // "Desk 1"), creating a new template from "Desk 1" will get auto generated - // template name from the frontend as "Desk 1 (1)", to prevent template - // duplication, we show the template view name to be "Desk 1" by removing name - // number, save template under such name will call out template replace - // dialog. + // template name from the frontend as "Desk 1 (1)". To prevent template + // duplication, we show the template view name to be "Desk 1" by removing the + // appended name number. Saving the template under the new name will trigger + // the template replace dialog. if (saved_desk_util::GetSavedDeskPresenter()->FindOtherEntryWithName( - DesksController::Get()->active_desk()->name(), desk_template().type(), - uuid())) { + saved_desk_name, desk_template().type(), uuid())) { // Replace the name number. - name_view_->SetTemporaryName(DesksController::Get()->active_desk()->name()); - name_view_->SetViewName(DesksController::Get()->active_desk()->name()); + name_view_->SetTemporaryName(saved_desk_name); + name_view_->SetViewName(saved_desk_name); } }
diff --git a/ash/wm/desks/templates/saved_desk_item_view.h b/ash/wm/desks/templates/saved_desk_item_view.h index 4de1508..362e4d96 100644 --- a/ash/wm/desks/templates/saved_desk_item_view.h +++ b/ash/wm/desks/templates/saved_desk_item_view.h
@@ -90,9 +90,9 @@ bool IsNameBeingModified() const; // To prevent duplications when saving a desk multiple times, check if there's - // an existing saved desk that shares the same name as current active desk, if - // so, remove auto added number. - void MaybeRemoveNameNumber(); + // an existing saved desk that shares the same name as the `saved_desk_name`. + // If so, remove auto added number. + void MaybeRemoveNameNumber(const std::u16string& saved_desk_name); // Show replace dialog when found a name duplication. void MaybeShowReplaceDialog(ash::DeskTemplateType type, const base::GUID& uuid);
diff --git a/ash/wm/desks/templates/saved_desk_presenter.cc b/ash/wm/desks/templates/saved_desk_presenter.cc index 48521359..7276124 100644 --- a/ash/wm/desks/templates/saved_desk_presenter.cc +++ b/ash/wm/desks/templates/saved_desk_presenter.cc
@@ -64,7 +64,8 @@ auto* desk_model = GetDeskModel(); desk_model_observation_.Observe(desk_model); - GetAllEntries(base::GUID(), Shell::GetPrimaryRootWindow()); + GetAllEntries(base::GUID(), /*saved_desk_name=*/u"", + Shell::GetPrimaryRootWindow()); should_show_templates_ui_ = !Shell::Get()->tablet_mode_controller()->InTabletMode() && @@ -136,11 +137,12 @@ } void SavedDeskPresenter::GetAllEntries(const base::GUID& item_to_focus, + const std::u16string& saved_desk_name, aura::Window* const root_window) { weak_ptr_factory_.InvalidateWeakPtrs(); GetDeskModel()->GetAllEntries(base::BindOnce( &SavedDeskPresenter::OnGetAllEntries, weak_ptr_factory_.GetWeakPtr(), - item_to_focus, root_window)); + item_to_focus, saved_desk_name, root_window)); } void SavedDeskPresenter::DeleteEntry( @@ -201,6 +203,8 @@ else RecordWindowAndTabCountHistogram(*desk_template); + const auto saved_desk_name = desk_template->template_name(); + // While we still find duplicate names iterate the duplicate number. i.e. // if there are 4 duplicates of some template name then this iterates until // the current template will be named 5. @@ -222,7 +226,7 @@ std::move(desk_template), base::BindOnce(&SavedDeskPresenter::OnAddOrUpdateEntry, weak_ptr_factory_.GetWeakPtr(), is_update, root_window, - std::move(desk_template_clone))); + std::move(desk_template_clone), saved_desk_name)); } void SavedDeskPresenter::OnDeskModelDestroying() { @@ -241,6 +245,7 @@ void SavedDeskPresenter::OnGetAllEntries( const base::GUID& item_to_focus, + const std::u16string& saved_desk_name, aura::Window* const root_window, desks_storage::DeskModel::GetAllEntriesStatus status, const std::vector<const DeskTemplate*>& entries) { @@ -262,7 +267,7 @@ if (!item_view) continue; - item_view->MaybeRemoveNameNumber(); + item_view->MaybeRemoveNameNumber(saved_desk_name); if (library_view->GetWidget()->GetNativeWindow()->GetRootWindow() == root_window) { item_view->name_view()->RequestFocus(); @@ -383,6 +388,7 @@ bool was_update, aura::Window* const root_window, std::unique_ptr<DeskTemplate> desk_template, + const std::u16string& saved_desk_name, desks_storage::DeskModel::AddOrUpdateEntryStatus status) { RecordAddOrUpdateTemplateStatusHistogram(status); @@ -418,10 +424,11 @@ if (!was_update) { // Shows the grid if it was hidden. This will not call `GetAllEntries`. overview_session_->ShowDesksTemplatesGrids(is_zero_state, base::GUID(), + /*saved_desk_name=*/u"", root_window); if (SavedDeskItemView* item_view = library_view->GetItemForUUID(desk_template->uuid())) { - item_view->MaybeRemoveNameNumber(); + item_view->MaybeRemoveNameNumber(saved_desk_name); item_view->name_view()->RequestFocus(); } } @@ -432,7 +439,7 @@ // This will update the templates button and save as desks button too. This // will call `GetAllEntries`. overview_session_->ShowDesksTemplatesGrids( - is_zero_state, desk_template->uuid(), root_window); + is_zero_state, desk_template->uuid(), saved_desk_name, root_window); } if (!was_update) {
diff --git a/ash/wm/desks/templates/saved_desk_presenter.h b/ash/wm/desks/templates/saved_desk_presenter.h index e46f693..4ec169e8 100644 --- a/ash/wm/desks/templates/saved_desk_presenter.h +++ b/ash/wm/desks/templates/saved_desk_presenter.h
@@ -54,8 +54,10 @@ void UpdateDesksTemplatesUI(); // Calls the DeskModel to get all the template entries, with a callback to - // `OnGetAllEntries`. + // `OnGetAllEntries`. `saved_desk_name` is used for the name overwrite nudge + // for duplicate desk names. void GetAllEntries(const base::GUID& item_to_focus, + const std::u16string& saved_desk_name, aura::Window* const root_window); // Calls the DeskModel to delete the saved desk with the provided `uuid`. Will @@ -97,6 +99,7 @@ // Callback ran after querying the model for a list of entries. This function // also contains logic for updating the UI. void OnGetAllEntries(const base::GUID& item_to_focus, + const std::u16string& saved_desk_name, aura::Window* const root_window, desks_storage::DeskModel::GetAllEntriesStatus status, const std::vector<const DeskTemplate*>& entries); @@ -128,6 +131,7 @@ bool was_update, aura::Window* const root_window, std::unique_ptr<DeskTemplate> desk_template, + const std::u16string& saved_desk_name, desks_storage::DeskModel::AddOrUpdateEntryStatus status); // Helper functions for updating the UI.
diff --git a/ash/wm/desks/templates/saved_desk_unittest.cc b/ash/wm/desks/templates/saved_desk_unittest.cc index 6ef9b92..6033f40 100644 --- a/ash/wm/desks/templates/saved_desk_unittest.cc +++ b/ash/wm/desks/templates/saved_desk_unittest.cc
@@ -4059,4 +4059,60 @@ histogram_tester.ExpectTotalCount(kDeleteSaveAndRecallHistogramName, 1); } +// Tests that we no longer pull the comparison for the desk names from the +// currently active desk. Regression test for https://crbug.com/1344915. +TEST_F(DeskSaveAndRecallTest, SaveDeskWithDuplicateName) { + UpdateDisplay("800x600"); + + constexpr char16_t kDefaultDeskName[] = u"Desk 1"; + constexpr char16_t kNewDeskName[] = u"Save for later"; + + // Verify that we have one desk. If there is only a single desk when saving, a + // new desk will be created. + DesksController* desks_controller = DesksController::Get(); + EXPECT_EQ(1ul, desks_controller->desks().size()); + EXPECT_EQ(kDefaultDeskName, desks_controller->active_desk()->name()); + + auto save_and_check = [this](const char16_t* name) { + // Create a test window that we release immediately as it will be closed + // automatically by the code under test. + CreateAppWindow().release(); + + // Open overview and save the desk. + ToggleOverview(); + ClickOnView( + GetSaveDeskForLaterButtonForRoot(Shell::Get()->GetPrimaryRootWindow())); + WaitForDesksTemplatesUI(); + + // Expect that the last added template item name view has focus, and verify + // that we have a saved desk with the expected `name`. + OverviewGrid* overview_grid = GetOverviewGridList()[0].get(); + SavedDeskNameView* name_view = GetItemViewFromTemplatesGrid(0)->name_view(); + EXPECT_TRUE(overview_grid->IsTemplateNameBeingModified()); + EXPECT_TRUE(name_view->HasFocus()); + EXPECT_TRUE(name_view->HasSelection()); + EXPECT_EQ(name, name_view->GetText()); + }; + + // Save the currently active desk which has the default name "Desk 1". + save_and_check(kDefaultDeskName); + + // Exit overview. + ToggleOverview(); + + // Expect we have only one desk, and rename the active desk to "Save for + // later". + EXPECT_EQ(1ul, desks_controller->desks().size()); + const_cast<Desk*>(desks_controller->active_desk()) + ->SetName(kNewDeskName, /*set_by_user=*/true); + + // Verify that the desk is saved correctly, and that the name is not replaced + // by the active desk name. + save_and_check(kNewDeskName); + + // Verify the active desk is now named "Desk 1". + EXPECT_EQ(1ul, desks_controller->desks().size()); + EXPECT_EQ(kDefaultDeskName, desks_controller->active_desk()->name()); +} + } // namespace ash
diff --git a/ash/wm/overview/overview_session.cc b/ash/wm/overview/overview_session.cc index 3a9bf962..75e4e49c 100644 --- a/ash/wm/overview/overview_session.cc +++ b/ash/wm/overview/overview_session.cc
@@ -1010,9 +1010,11 @@ return window == active_window_before_overview_; } -void OverviewSession::ShowDesksTemplatesGrids(bool was_zero_state, - const base::GUID& item_to_focus, - aura::Window* const root_window) { +void OverviewSession::ShowDesksTemplatesGrids( + bool was_zero_state, + const base::GUID& item_to_focus, + const std::u16string& saved_desk_name, + aura::Window* const root_window) { if (Shell::Get()->tablet_mode_controller()->InTabletMode() || IsShowingDesksTemplatesGrid()) { return; @@ -1030,7 +1032,8 @@ // Only ask for all entries if it is the first time creating the grid widgets. // Otherwise, add or update the entries one at a time. if (created_grid_widgets) - saved_desk_presenter_->GetAllEntries(item_to_focus, root_window); + saved_desk_presenter_->GetAllEntries(item_to_focus, saved_desk_name, + root_window); UpdateNoWindowsWidgetOnEachGrid(); UpdateAccessibilityFocus(); @@ -1304,7 +1307,8 @@ DCHECK(!grid_list_.empty()); ShowDesksTemplatesGrids(grid_list_[0]->desks_bar_view()->IsZeroState(), - base::GUID(), Shell::GetPrimaryRootWindow()); + base::GUID(), /*saved_desk_name=*/u"", + Shell::GetPrimaryRootWindow()); break; #else return;
diff --git a/ash/wm/overview/overview_session.h b/ash/wm/overview/overview_session.h index 62c6bcc..68baf25 100644 --- a/ash/wm/overview/overview_session.h +++ b/ash/wm/overview/overview_session.h
@@ -295,6 +295,7 @@ // `item_to_focus` on the display associated with `root_window`. void ShowDesksTemplatesGrids(bool was_zero_state, const base::GUID& item_to_focus, + const std::u16string& saved_desk_name, aura::Window* const root_window); void HideDesksTemplatesGrids();
diff --git a/ash/wm/pip/pip_positioner_unittest.cc b/ash/wm/pip/pip_positioner_unittest.cc index 8f30df3f..a0dfc7f9 100644 --- a/ash/wm/pip/pip_positioner_unittest.cc +++ b/ash/wm/pip/pip_positioner_unittest.cc
@@ -20,6 +20,7 @@ #include "ash/wm/pip/pip_test_utils.h" #include "ash/wm/window_state.h" #include "ash/wm/wm_event.h" +#include "ash/wm/work_area_insets.h" #include "base/callback_helpers.h" #include "base/command_line.h" #include "ui/aura/window.h" @@ -79,8 +80,10 @@ void UpdateWorkArea(const std::string& bounds) { UpdateDisplay(bounds); - for (aura::Window* root : Shell::GetAllRootWindows()) - Shell::Get()->SetDisplayWorkAreaInsets(root, gfx::Insets()); + for (aura::Window* root : Shell::GetAllRootWindows()) { + WorkAreaInsets::ForWindow(root)->UpdateWorkAreaInsetsForTest( + root, gfx::Rect(), gfx::Insets(), gfx::Insets()); + } } private:
diff --git a/ash/wm/pip/pip_window_resizer_unittest.cc b/ash/wm/pip/pip_window_resizer_unittest.cc index d37fc15..e453ccc 100644 --- a/ash/wm/pip/pip_window_resizer_unittest.cc +++ b/ash/wm/pip/pip_window_resizer_unittest.cc
@@ -21,6 +21,7 @@ #include "ash/wm/tablet_mode/tablet_mode_controller.h" #include "ash/wm/window_state.h" #include "ash/wm/wm_event.h" +#include "ash/wm/work_area_insets.h" #include "base/callback_helpers.h" #include "base/test/metrics/histogram_tester.h" #include "ui/aura/client/aura_constants.h" @@ -190,8 +191,10 @@ void UpdateWorkArea(const std::string& bounds) { UpdateDisplay(bounds); - for (aura::Window* root : Shell::GetAllRootWindows()) - Shell::Get()->SetDisplayWorkAreaInsets(root, gfx::Insets()); + for (aura::Window* root : Shell::GetAllRootWindows()) { + WorkAreaInsets::ForWindow(root)->UpdateWorkAreaInsetsForTest( + root, gfx::Rect(), gfx::Insets(), gfx::Insets()); + } } };
diff --git a/ash/wm/work_area_insets.cc b/ash/wm/work_area_insets.cc index 2bdff2b3..fac84ea 100644 --- a/ash/wm/work_area_insets.cc +++ b/ash/wm/work_area_insets.cc
@@ -167,8 +167,10 @@ // but ignore work area insets since shelf overlaps with login window. if (Shell::Get()->session_controller()->IsUserSessionBlocked() && !is_visible) { - Shell::Get()->SetDisplayWorkAreaInsets( - root_window_controller_->GetRootWindow(), gfx::Insets()); + Shell::Get() + ->window_tree_host_manager() + ->UpdateWorkAreaOfDisplayNearestWindow( + root_window_controller_->GetRootWindow(), gfx::Insets()); } }
diff --git a/ash/wm/workspace/workspace_layout_manager_unittest.cc b/ash/wm/workspace/workspace_layout_manager_unittest.cc index d7d5147..18cc9b5 100644 --- a/ash/wm/workspace/workspace_layout_manager_unittest.cc +++ b/ash/wm/workspace/workspace_layout_manager_unittest.cc
@@ -677,8 +677,10 @@ window2->Show(); gfx::Rect expected_bounds = window2->bounds(); - Shell::Get()->SetDisplayWorkAreaInsets(window.get(), - gfx::Insets::TLBR(50, 0, 0, 0)); + WorkAreaInsets::ForWindow(window.get()) + ->UpdateWorkAreaInsetsForTest(window.get(), gfx::Rect(), + gfx::Insets::TLBR(50, 0, 0, 0), + gfx::Insets::TLBR(50, 0, 0, 0)); EXPECT_EQ(expected_bounds.ToString(), window2->bounds().ToString()); }
diff --git a/ash/wm/workspace/workspace_window_resizer_unittest.cc b/ash/wm/workspace/workspace_window_resizer_unittest.cc index a76ca6d..6621918b 100644 --- a/ash/wm/workspace/workspace_window_resizer_unittest.cc +++ b/ash/wm/workspace/workspace_window_resizer_unittest.cc
@@ -763,8 +763,10 @@ // Makes sure we don't allow dragging below the work area. TEST_F(WorkspaceWindowResizerTest, DontDragOffBottom) { - Shell::Get()->SetDisplayWorkAreaInsets(Shell::GetPrimaryRootWindow(), - gfx::Insets::TLBR(0, 0, 10, 0)); + aura::Window* root = Shell::GetPrimaryRootWindow(); + WorkAreaInsets::ForWindow(root)->UpdateWorkAreaInsetsForTest( + root, gfx::Rect(), gfx::Insets::TLBR(0, 0, 10, 0), + gfx::Insets::TLBR(0, 0, 10, 0)); ASSERT_EQ(1, display::Screen::GetScreen()->GetNumDisplays()); @@ -782,8 +784,10 @@ UpdateDisplay("800x600,800x600"); ASSERT_EQ(2, display::Screen::GetScreen()->GetNumDisplays()); - Shell::Get()->SetDisplayWorkAreaInsets(Shell::GetPrimaryRootWindow(), - gfx::Insets::TLBR(0, 0, 10, 0)); + aura::Window* root = Shell::GetPrimaryRootWindow(); + WorkAreaInsets::ForWindow(root)->UpdateWorkAreaInsetsForTest( + root, gfx::Rect(), gfx::Insets::TLBR(0, 0, 10, 0), + gfx::Insets::TLBR(0, 0, 10, 0)); // Positions the secondary display at the bottom the primary display. Shell::Get()->display_manager()->SetLayoutForCurrentDisplays( @@ -808,8 +812,9 @@ resizer->RevertDrag(); } - Shell::Get()->SetDisplayWorkAreaInsets(Shell::GetPrimaryRootWindow(), - gfx::Insets::TLBR(0, 0, 10, 0)); + WorkAreaInsets::ForWindow(root)->UpdateWorkAreaInsetsForTest( + root, gfx::Rect(), gfx::Insets::TLBR(0, 0, 10, 0), + gfx::Insets::TLBR(0, 0, 10, 0)); { window_->SetBounds(gfx::Rect(100, 200, 300, 400)); std::unique_ptr<WindowResizer> resizer = @@ -841,8 +846,10 @@ // Makes sure we don't allow dragging off the top of the work area. TEST_F(WorkspaceWindowResizerTest, DontDragOffTop) { - Shell::Get()->SetDisplayWorkAreaInsets(Shell::GetPrimaryRootWindow(), - gfx::Insets::TLBR(10, 0, 0, 0)); + aura::Window* root = Shell::GetPrimaryRootWindow(); + WorkAreaInsets::ForWindow(root)->UpdateWorkAreaInsetsForTest( + root, gfx::Rect(), gfx::Insets::TLBR(10, 0, 0, 0), + gfx::Insets::TLBR(10, 0, 0, 0)); window_->SetBounds(gfx::Rect(100, 200, 300, 400)); std::unique_ptr<WindowResizer> resizer = CreateResizerForTest(window_.get()); @@ -852,8 +859,10 @@ } TEST_F(WorkspaceWindowResizerTest, ResizeBottomOutsideWorkArea) { - Shell::Get()->SetDisplayWorkAreaInsets(Shell::GetPrimaryRootWindow(), - gfx::Insets::TLBR(0, 0, 50, 0)); + aura::Window* root = Shell::GetPrimaryRootWindow(); + WorkAreaInsets::ForWindow(root)->UpdateWorkAreaInsetsForTest( + root, gfx::Rect(), gfx::Insets::TLBR(0, 0, 50, 0), + gfx::Insets::TLBR(0, 0, 50, 0)); window_->SetBounds(gfx::Rect(100, 200, 300, 380)); std::unique_ptr<WindowResizer> resizer = @@ -864,8 +873,10 @@ } TEST_F(WorkspaceWindowResizerTest, ResizeWindowOutsideLeftWorkArea) { - Shell::Get()->SetDisplayWorkAreaInsets(Shell::GetPrimaryRootWindow(), - gfx::Insets::TLBR(0, 0, 50, 0)); + aura::Window* root = Shell::GetPrimaryRootWindow(); + WorkAreaInsets::ForWindow(root)->UpdateWorkAreaInsetsForTest( + root, gfx::Rect(), gfx::Insets::TLBR(0, 0, 50, 0), + gfx::Insets::TLBR(0, 0, 50, 0)); int left = screen_util::GetDisplayWorkAreaBoundsInParent(window_.get()).x(); int pixels_to_left_border = 50; int window_width = 300; @@ -880,8 +891,10 @@ } TEST_F(WorkspaceWindowResizerTest, ResizeWindowOutsideRightWorkArea) { - Shell::Get()->SetDisplayWorkAreaInsets(Shell::GetPrimaryRootWindow(), - gfx::Insets::TLBR(0, 0, 50, 0)); + aura::Window* root = Shell::GetPrimaryRootWindow(); + WorkAreaInsets::ForWindow(root)->UpdateWorkAreaInsetsForTest( + root, gfx::Rect(), gfx::Insets::TLBR(0, 0, 50, 0), + gfx::Insets::TLBR(0, 0, 50, 0)); int right = screen_util::GetDisplayWorkAreaBoundsInParent(window_.get()).right(); int pixels_to_right_border = 50; @@ -923,8 +936,10 @@ TEST_F(WorkspaceWindowResizerTest, DragWindowOutsideRightToSecondaryDisplay) { // Only primary display. Changes the window position to fit within the // display. - Shell::Get()->SetDisplayWorkAreaInsets(Shell::GetPrimaryRootWindow(), - gfx::Insets::TLBR(0, 0, 50, 0)); + aura::Window* root = Shell::GetPrimaryRootWindow(); + WorkAreaInsets::ForWindow(root)->UpdateWorkAreaInsetsForTest( + root, gfx::Rect(), gfx::Insets::TLBR(0, 0, 50, 0), + gfx::Insets::TLBR(0, 0, 50, 0)); int right = screen_util::GetDisplayWorkAreaBoundsInParent(window_.get()).right(); int pixels_to_right_border = 50; @@ -941,8 +956,10 @@ // With secondary display. Operation itself is same but doesn't change // the position because the window is still within the secondary display. UpdateDisplay("1000x600,600x400"); - Shell::Get()->SetDisplayWorkAreaInsets(Shell::GetPrimaryRootWindow(), - gfx::Insets::TLBR(0, 0, 50, 0)); + root = Shell::GetPrimaryRootWindow(); + WorkAreaInsets::ForWindow(root)->UpdateWorkAreaInsetsForTest( + root, gfx::Rect(), gfx::Insets::TLBR(0, 0, 50, 0), + gfx::Insets::TLBR(0, 0, 50, 0)); window_->SetBounds(gfx::Rect(window_x, 100, window_width, 380)); resizer->Drag(CalculateDragPoint(*resizer, window_width, 0), 0); EXPECT_EQ(gfx::Rect(window_x + window_width, 100, window_width, 380), @@ -1485,7 +1502,8 @@ TEST_F(WorkspaceWindowResizerTest, DontRewardRightmostWindowForOverflows) { UpdateDisplay("600x800"); aura::Window* root = Shell::GetPrimaryRootWindow(); - Shell::Get()->SetDisplayWorkAreaInsets(root, gfx::Insets()); + WorkAreaInsets::ForWindow(root)->UpdateWorkAreaInsetsForTest( + root, gfx::Rect(), gfx::Insets(), gfx::Insets()); // Four 100x100 windows flush against eachother, starting at 100,100. window_->SetBounds(gfx::Rect(100, 100, 100, 100)); @@ -1516,7 +1534,8 @@ TEST_F(WorkspaceWindowResizerTest, DontExceedMaxWidth) { UpdateDisplay("600x800"); aura::Window* root = Shell::GetPrimaryRootWindow(); - Shell::Get()->SetDisplayWorkAreaInsets(root, gfx::Insets()); + WorkAreaInsets::ForWindow(root)->UpdateWorkAreaInsetsForTest( + root, gfx::Rect(), gfx::Insets(), gfx::Insets()); // Four 100x100 windows flush against eachother, starting at 100,100. window_->SetBounds(gfx::Rect(100, 100, 100, 100)); @@ -1542,7 +1561,8 @@ TEST_F(WorkspaceWindowResizerTest, DontExceedMaxHeight) { UpdateDisplay("600x800"); aura::Window* root = Shell::GetPrimaryRootWindow(); - Shell::Get()->SetDisplayWorkAreaInsets(root, gfx::Insets()); + WorkAreaInsets::ForWindow(root)->UpdateWorkAreaInsetsForTest( + root, gfx::Rect(), gfx::Insets(), gfx::Insets()); // Four 100x100 windows flush against eachother, starting at 100,100. window_->SetBounds(gfx::Rect(100, 100, 100, 100)); @@ -1595,7 +1615,8 @@ TEST_F(WorkspaceWindowResizerTest, DontExpandRightmostPastMaxWidth) { UpdateDisplay("600x800"); aura::Window* root = Shell::GetPrimaryRootWindow(); - Shell::Get()->SetDisplayWorkAreaInsets(root, gfx::Insets()); + WorkAreaInsets::ForWindow(root)->UpdateWorkAreaInsetsForTest( + root, gfx::Rect(), gfx::Insets(), gfx::Insets()); // Three 100x100 windows flush against eachother, starting at 100,100. window_->SetBounds(gfx::Rect(100, 100, 100, 100)); @@ -1618,7 +1639,8 @@ TEST_F(WorkspaceWindowResizerTest, MoveAttachedWhenGrownToMaxSize) { UpdateDisplay("600x800"); aura::Window* root = Shell::GetPrimaryRootWindow(); - Shell::Get()->SetDisplayWorkAreaInsets(root, gfx::Insets()); + WorkAreaInsets::ForWindow(root)->UpdateWorkAreaInsetsForTest( + root, gfx::Rect(), gfx::Insets(), gfx::Insets()); // Three 100x100 windows flush against eachother, starting at 100,100. window_->SetBounds(gfx::Rect(100, 100, 100, 100)); @@ -1642,7 +1664,8 @@ TEST_F(WorkspaceWindowResizerTest, MainWindowHonoursMaxWidth) { UpdateDisplay("400x800"); aura::Window* root = Shell::GetPrimaryRootWindow(); - Shell::Get()->SetDisplayWorkAreaInsets(root, gfx::Insets()); + WorkAreaInsets::ForWindow(root)->UpdateWorkAreaInsetsForTest( + root, gfx::Rect(), gfx::Insets(), gfx::Insets()); // Three 100x100 windows flush against eachother, starting at 100,100. window_->SetBounds(gfx::Rect(100, 100, 100, 100)); @@ -1666,7 +1689,8 @@ TEST_F(WorkspaceWindowResizerTest, MainWindowHonoursMinWidth) { UpdateDisplay("400x800"); aura::Window* root = Shell::GetPrimaryRootWindow(); - Shell::Get()->SetDisplayWorkAreaInsets(root, gfx::Insets()); + WorkAreaInsets::ForWindow(root)->UpdateWorkAreaInsetsForTest( + root, gfx::Rect(), gfx::Insets(), gfx::Insets()); // Three 100x100 windows flush against eachother, starting at 100,100. window_->SetBounds(gfx::Rect(100, 100, 100, 100));
diff --git a/base/trace_event/cfi_backtrace_android.cc b/base/trace_event/cfi_backtrace_android.cc index 4112449..562f03b9 100644 --- a/base/trace_event/cfi_backtrace_android.cc +++ b/base/trace_event/cfi_backtrace_android.cc
@@ -107,7 +107,9 @@ uint16_t cfi_data; // Return the RA offset for the current unwind row. - uint16_t ra_offset() const { return (cfi_data & kRAMask) << kRAShift; } + uint16_t ra_offset() const { + return static_cast<uint16_t>((cfi_data & kRAMask) << kRAShift); + } // Returns the CFA offset for the current unwind row. uint16_t cfa_offset() const { return cfi_data & kCFAMask; }
diff --git a/build/BUILD.gn b/build/BUILD.gn index b1e9f73..62c949b 100644 --- a/build/BUILD.gn +++ b/build/BUILD.gn
@@ -56,6 +56,14 @@ ] } +group("gold_common_pytype") { + testonly = true + + data = [ "//build/skia_gold_common/" ] + + data_deps = [ "//testing:pytype_dependencies" ] +} + if (is_chromeos) { process_version("version_metadata") { sources = [ "//chrome/VERSION" ]
diff --git a/build/fuchsia/linux_internal.sdk.sha1 b/build/fuchsia/linux_internal.sdk.sha1 index af60182..e12ed82 100644 --- a/build/fuchsia/linux_internal.sdk.sha1 +++ b/build/fuchsia/linux_internal.sdk.sha1
@@ -1 +1 @@ -9.20220721.0.1 +9.20220721.1.1
diff --git a/build/rust/tests/test_rs_bindings_from_cc/target_depending_on_another.h b/build/rust/tests/test_rs_bindings_from_cc/target_depending_on_another.h new file mode 100644 index 0000000..a7afabf6 --- /dev/null +++ b/build/rust/tests/test_rs_bindings_from_cc/target_depending_on_another.h
@@ -0,0 +1,14 @@ +// Copyright 2022 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#ifndef BUILD_RUST_TESTS_TEST_RS_BINDINGS_FROM_CC_TARGET_DEPENDING_ON_ANOTHER_H_ +#define BUILD_RUST_TESTS_TEST_RS_BINDINGS_FROM_CC_TARGET_DEPENDING_ON_ANOTHER_H_ + +#include "build/rust/tests/test_rs_bindings_from_cc/self_contained_target_header2.h" + +inline CcPodStruct CreateCcPodStructFromValue(int x) { + return CcPodStruct{.value = x}; +} + +#endif // BUILD_RUST_TESTS_TEST_RS_BINDINGS_FROM_CC_TARGET_DEPENDING_ON_ANOTHER_H_
diff --git a/build/skia_gold_common/output_managerless_skia_gold_session.py b/build/skia_gold_common/output_managerless_skia_gold_session.py index a1285a8f..7a545eb 100644 --- a/build/skia_gold_common/output_managerless_skia_gold_session.py +++ b/build/skia_gold_common/output_managerless_skia_gold_session.py
@@ -9,6 +9,7 @@ import os import subprocess import time +from typing import List, Tuple import six @@ -16,30 +17,15 @@ class OutputManagerlessSkiaGoldSession(skia_gold_session.SkiaGoldSession): - def RunComparison( # pylint: disable=too-many-arguments - self, - name, - png_file, - output_manager=True, - inexact_matching_args=None, - use_luci=True, - optional_keys=None, - force_dryrun=False): + def RunComparison(self, *args, **kwargs) -> skia_gold_session.StepRetVal: # Passing True for the output manager is a bit of a hack, as we don't # actually need an output manager and just need to get past the truthy # check. - # pylint: disable=super-with-arguments - return super(OutputManagerlessSkiaGoldSession, self).RunComparison( - name=name, - png_file=png_file, - output_manager=output_manager, - inexact_matching_args=inexact_matching_args, - use_luci=use_luci, - optional_keys=optional_keys, - force_dryrun=force_dryrun) - # pylint: enable=super-with-arguments + assert 'output_manager' not in kwargs, 'Cannot specify output_manager' + kwargs['output_manager'] = True + return super().RunComparison(*args, **kwargs) - def _CreateDiffOutputDir(self, name): + def _CreateDiffOutputDir(self, name: str) -> str: # Do this instead of just making a temporary directory so that it's easier # for users to look through multiple results. We intentionally do not clean # this directory up since the user might need to look at it later. @@ -49,7 +35,7 @@ os.makedirs(filepath) return filepath - def _StoreDiffLinks(self, image_name, _, output_dir): + def _StoreDiffLinks(self, image_name: str, _, output_dir: str) -> None: results = self._comparison_results.setdefault(image_name, self.ComparisonResults()) # The directory should contain "input-<hash>.png", "closest-<hash>.png", @@ -64,7 +50,7 @@ results.local_diff_diff_image = file_url @staticmethod - def _RunCmdForRcAndOutput(cmd): + def _RunCmdForRcAndOutput(cmd: List[str]) -> Tuple[int, str]: try: output = subprocess.check_output(cmd, stderr=subprocess.STDOUT).decode('utf-8')
diff --git a/build/skia_gold_common/output_managerless_skia_gold_session_unittest.py b/build/skia_gold_common/output_managerless_skia_gold_session_unittest.py index 80937bb8..7bafdaf 100755 --- a/build/skia_gold_common/output_managerless_skia_gold_session_unittest.py +++ b/build/skia_gold_common/output_managerless_skia_gold_session_unittest.py
@@ -9,6 +9,7 @@ import re import sys import tempfile +from typing import Any import unittest import six @@ -27,20 +28,21 @@ createSkiaGoldArgs = unittest_utils.createSkiaGoldArgs -def assertArgWith(test, arg_list, arg, value): +def assertArgWith(test: unittest.TestCase, arg_list: list, arg: Any, + value: Any) -> None: i = arg_list.index(arg) test.assertEqual(arg_list[i + 1], value) class GpuSkiaGoldSessionDiffTest(fake_filesystem_unittest.TestCase): - def setUp(self): + def setUp(self) -> None: self.setUpPyfakefs() self._working_dir = tempfile.mkdtemp() self._json_keys = tempfile.NamedTemporaryFile(delete=False).name @mock.patch.object(omsgs.OutputManagerlessSkiaGoldSession, '_RunCmdForRcAndOutput') - def test_commandCommonArgs(self, cmd_mock): + def test_commandCommonArgs(self, cmd_mock: mock.MagicMock) -> None: cmd_mock.return_value = (None, None) args = createSkiaGoldArgs(git_revision='a', local_pixel_tests=False) sgp = skia_gold_properties.SkiaGoldProperties(args) @@ -73,7 +75,7 @@ @mock.patch.object(omsgs.OutputManagerlessSkiaGoldSession, '_StoreDiffLinks') @mock.patch.object(omsgs.OutputManagerlessSkiaGoldSession, '_RunCmdForRcAndOutput') - def test_explicitLocalPngDirectory(self, cmd_mock, _): + def test_explicitLocalPngDirectory(self, cmd_mock: mock.MagicMock, _) -> None: cmd_mock.return_value = (0, '') if sys.platform == 'win32': local_png_dir = 'c:\\tmp\\foo' @@ -83,9 +85,8 @@ skia_gold_local_png_write_directory=local_png_dir) sgp = skia_gold_properties.SkiaGoldProperties(args) session = omsgs.OutputManagerlessSkiaGoldSession(self._working_dir, sgp, - self._json_keys, None, - None) - _, _ = session.Diff('name', None, None) + self._json_keys, '', '') + _, _ = session.Diff('name', '', None) self.assertEqual(cmd_mock.call_count, 1) if six.PY3: call_args = cmd_mock.call_args.args[0] @@ -103,17 +104,16 @@ class OutputManagerlessSkiaGoldSessionStoreDiffLinksTest( fake_filesystem_unittest.TestCase): - def setUp(self): + def setUp(self) -> None: self.setUpPyfakefs() self._working_dir = tempfile.mkdtemp() self._json_keys = tempfile.NamedTemporaryFile(delete=False).name - def test_outputManagerNotNeeded(self): + def test_outputManagerNotNeeded(self) -> None: args = createSkiaGoldArgs(git_revision='a', local_pixel_tests=True) sgp = skia_gold_properties.SkiaGoldProperties(args) session = omsgs.OutputManagerlessSkiaGoldSession(self._working_dir, sgp, - self._json_keys, None, - None) + self._json_keys, '', '') input_filepath = os.path.join(self._working_dir, 'input-inputhash.png') with open(input_filepath, 'w') as f: f.write('')
diff --git a/build/skia_gold_common/run_pytype.py b/build/skia_gold_common/run_pytype.py new file mode 100755 index 0000000..d3a9bdf --- /dev/null +++ b/build/skia_gold_common/run_pytype.py
@@ -0,0 +1,44 @@ +#!/usr/bin/env vpython3 +# Copyright 2022 The Chromium Authors. All rights reserved. +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +"""Simple helper script to run pytype on Gold Python code.""" + +import os +import sys + +GOLD_DIR = os.path.abspath(os.path.dirname(__file__)) +CHROMIUM_SRC_DIR = os.path.realpath(os.path.join(GOLD_DIR, '..', '..')) + +sys.path.append(os.path.join(CHROMIUM_SRC_DIR, 'testing')) + +from pytype_common import pytype_runner # pylint: disable=wrong-import-position + +EXTRA_PATHS_COMPONENTS = [ + ('build', ), + ('testing', ), +] +EXTRA_PATHS = [ + os.path.join(CHROMIUM_SRC_DIR, *p) for p in EXTRA_PATHS_COMPONENTS +] +EXTRA_PATHS.append(GOLD_DIR) + +FILES_AND_DIRECTORIES_TO_CHECK = [ + '.', +] +FILES_AND_DIRECTORIES_TO_CHECK = [ + os.path.join(GOLD_DIR, f) for f in FILES_AND_DIRECTORIES_TO_CHECK +] + +TEST_NAME = 'gold_common_pytype' +TEST_LOCATION = '//build/skia_gold_common/run_pytype.py' + + +def main() -> int: + return pytype_runner.run_pytype(TEST_NAME, TEST_LOCATION, + FILES_AND_DIRECTORIES_TO_CHECK, EXTRA_PATHS, + GOLD_DIR) + + +if __name__ == '__main__': + sys.exit(main())
diff --git a/build/skia_gold_common/skia_gold_properties.py b/build/skia_gold_common/skia_gold_properties.py index 9f3f722..d9fddc3 100644 --- a/build/skia_gold_common/skia_gold_properties.py +++ b/build/skia_gold_common/skia_gold_properties.py
@@ -9,14 +9,17 @@ * What the continuous integration system is """ -# pylint: disable=useless-object-inheritance - +import argparse import logging +import optparse import os +from typing import Union + +ParsedCmdArgs = Union[argparse.Namespace, optparse.Values] -class SkiaGoldProperties(object): - def __init__(self, args): +class SkiaGoldProperties(): + def __init__(self, args: ParsedCmdArgs): """Abstract class to validate and store properties related to Skia Gold. Args: @@ -35,54 +38,54 @@ self._InitializeProperties(args) - def IsTryjobRun(self): + def IsTryjobRun(self) -> bool: return self.issue is not None @property - def continuous_integration_system(self): + def continuous_integration_system(self) -> str: return self._continuous_integration_system or 'buildbucket' @property - def code_review_system(self): + def code_review_system(self) -> str: return self._code_review_system or 'gerrit' @property - def git_revision(self): + def git_revision(self) -> str: return self._GetGitRevision() @property - def issue(self): + def issue(self) -> int: return self._issue @property - def job_id(self): + def job_id(self) -> str: return self._job_id @property - def local_pixel_tests(self): + def local_pixel_tests(self) -> bool: return self._IsLocalRun() @property - def local_png_directory(self): + def local_png_directory(self) -> str: return self._local_png_directory @property - def no_luci_auth(self): + def no_luci_auth(self) -> bool: return self._no_luci_auth @property - def patchset(self): + def patchset(self) -> int: return self._patchset @property - def bypass_skia_gold_functionality(self): + def bypass_skia_gold_functionality(self) -> bool: return self._bypass_skia_gold_functionality @staticmethod - def _GetGitOriginMainHeadSha1(): + def _GetGitOriginMainHeadSha1() -> str: raise NotImplementedError() - def _GetGitRevision(self): + def _GetGitRevision(self) -> str: if not self._git_revision: # Automated tests should always pass the revision, so assume we're on # a workstation and try to get the local origin/master HEAD. @@ -96,7 +99,7 @@ self._git_revision = revision return self._git_revision - def _IsLocalRun(self): + def _IsLocalRun(self) -> bool: if self._local_pixel_tests is None: # Look for the presence of the SWARMING_SERVER environment variable as a # heuristic to determine whether we're running on a workstation or a bot. @@ -112,7 +115,7 @@ return self._local_pixel_tests @staticmethod - def AddCommandLineArguments(parser): + def AddCommandLineArguments(parser: argparse.ArgumentParser) -> None: """ Add command line arguments to an ArgumentParser instance Args: @@ -136,7 +139,7 @@ type=str, help='Continuous integration system') - def _InitializeProperties(self, args): + def _InitializeProperties(self, args: ParsedCmdArgs) -> None: if hasattr(args, 'local_pixel_tests'): # If not set, will be automatically determined later if needed. self._local_pixel_tests = args.local_pixel_tests
diff --git a/build/skia_gold_common/skia_gold_properties_unittest.py b/build/skia_gold_common/skia_gold_properties_unittest.py index 40a149f3..f47a169f 100755 --- a/build/skia_gold_common/skia_gold_properties_unittest.py +++ b/build/skia_gold_common/skia_gold_properties_unittest.py
@@ -23,7 +23,9 @@ class SkiaGoldPropertiesInitializationTest(unittest.TestCase): """Tests that SkiaGoldProperties initializes (or doesn't) when expected.""" - def verifySkiaGoldProperties(self, instance, expected): + def verifySkiaGoldProperties( + self, instance: skia_gold_properties.SkiaGoldProperties, + expected: dict) -> None: self.assertEqual(instance._local_pixel_tests, expected.get('local_pixel_tests')) self.assertEqual(instance._no_luci_auth, expected.get('no_luci_auth')) @@ -38,54 +40,55 @@ self.assertEqual(instance._bypass_skia_gold_functionality, expected.get('bypass_skia_gold_functionality')) - def test_initializeSkiaGoldAttributes_unsetLocal(self): + def test_initializeSkiaGoldAttributes_unsetLocal(self) -> None: args = createSkiaGoldArgs() sgp = skia_gold_properties.SkiaGoldProperties(args) self.verifySkiaGoldProperties(sgp, {}) - def test_initializeSkiaGoldAttributes_explicitLocal(self): + def test_initializeSkiaGoldAttributes_explicitLocal(self) -> None: args = createSkiaGoldArgs(local_pixel_tests=True) sgp = skia_gold_properties.SkiaGoldProperties(args) self.verifySkiaGoldProperties(sgp, {'local_pixel_tests': True}) - def test_initializeSkiaGoldAttributes_explicitNonLocal(self): + def test_initializeSkiaGoldAttributes_explicitNonLocal(self) -> None: args = createSkiaGoldArgs(local_pixel_tests=False) sgp = skia_gold_properties.SkiaGoldProperties(args) self.verifySkiaGoldProperties(sgp, {'local_pixel_tests': False}) - def test_initializeSkiaGoldAttributes_explicitNoLuciAuth(self): + def test_initializeSkiaGoldAttributes_explicitNoLuciAuth(self) -> None: args = createSkiaGoldArgs(no_luci_auth=True) sgp = skia_gold_properties.SkiaGoldProperties(args) self.verifySkiaGoldProperties(sgp, {'no_luci_auth': True}) - def test_initializeSkiaGoldAttributes_explicitCrs(self): + def test_initializeSkiaGoldAttributes_explicitCrs(self) -> None: args = createSkiaGoldArgs(code_review_system='foo') sgp = skia_gold_properties.SkiaGoldProperties(args) self.verifySkiaGoldProperties(sgp, {'code_review_system': 'foo'}) - def test_initializeSkiaGoldAttributes_explicitCis(self): + def test_initializeSkiaGoldAttributes_explicitCis(self) -> None: args = createSkiaGoldArgs(continuous_integration_system='foo') sgp = skia_gold_properties.SkiaGoldProperties(args) self.verifySkiaGoldProperties(sgp, {'continuous_integration_system': 'foo'}) - def test_initializeSkiaGoldAttributes_bypassExplicitTrue(self): + def test_initializeSkiaGoldAttributes_bypassExplicitTrue(self) -> None: args = createSkiaGoldArgs(bypass_skia_gold_functionality=True) sgp = skia_gold_properties.SkiaGoldProperties(args) self.verifySkiaGoldProperties(sgp, {'bypass_skia_gold_functionality': True}) - def test_initializeSkiaGoldAttributes_explicitGitRevision(self): + def test_initializeSkiaGoldAttributes_explicitGitRevision(self) -> None: args = createSkiaGoldArgs(git_revision='a') sgp = skia_gold_properties.SkiaGoldProperties(args) self.verifySkiaGoldProperties(sgp, {'git_revision': 'a'}) - def test_initializeSkiaGoldAttributes_tryjobArgsIgnoredWithoutRevision(self): + def test_initializeSkiaGoldAttributes_tryjobArgsIgnoredWithoutRevision( + self) -> None: args = createSkiaGoldArgs(gerrit_issue=1, gerrit_patchset=2, buildbucket_id=3) sgp = skia_gold_properties.SkiaGoldProperties(args) self.verifySkiaGoldProperties(sgp, {}) - def test_initializeSkiaGoldAttributes_tryjobArgs(self): + def test_initializeSkiaGoldAttributes_tryjobArgs(self) -> None: args = createSkiaGoldArgs(git_revision='a', gerrit_issue=1, gerrit_patchset=2, @@ -99,14 +102,14 @@ 'buildbucket_id': 3 }) - def test_initializeSkiaGoldAttributes_tryjobMissingPatchset(self): + def test_initializeSkiaGoldAttributes_tryjobMissingPatchset(self) -> None: args = createSkiaGoldArgs(git_revision='a', gerrit_issue=1, buildbucket_id=3) with self.assertRaises(RuntimeError): skia_gold_properties.SkiaGoldProperties(args) - def test_initializeSkiaGoldAttributes_tryjobMissingBuildbucket(self): + def test_initializeSkiaGoldAttributes_tryjobMissingBuildbucket(self) -> None: args = createSkiaGoldArgs(git_revision='a', gerrit_issue=1, gerrit_patchset=2) @@ -117,24 +120,24 @@ class SkiaGoldPropertiesCalculationTest(unittest.TestCase): """Tests that SkiaGoldProperties properly calculates certain properties.""" - def testLocalPixelTests_determineTrue(self): + def testLocalPixelTests_determineTrue(self) -> None: args = createSkiaGoldArgs() sgp = skia_gold_properties.SkiaGoldProperties(args) with mock.patch.dict(os.environ, {}, clear=True): self.assertTrue(sgp.local_pixel_tests) - def testLocalPixelTests_determineFalse(self): + def testLocalPixelTests_determineFalse(self) -> None: args = createSkiaGoldArgs() sgp = skia_gold_properties.SkiaGoldProperties(args) with mock.patch.dict(os.environ, {'SWARMING_SERVER': ''}, clear=True): self.assertFalse(sgp.local_pixel_tests) - def testIsTryjobRun_noIssue(self): + def testIsTryjobRun_noIssue(self) -> None: args = createSkiaGoldArgs() sgp = skia_gold_properties.SkiaGoldProperties(args) self.assertFalse(sgp.IsTryjobRun()) - def testIsTryjobRun_issue(self): + def testIsTryjobRun_issue(self) -> None: args = createSkiaGoldArgs(git_revision='a', gerrit_issue=1, gerrit_patchset=2, @@ -142,12 +145,12 @@ sgp = skia_gold_properties.SkiaGoldProperties(args) self.assertTrue(sgp.IsTryjobRun()) - def testGetGitRevision_revisionSet(self): + def testGetGitRevision_revisionSet(self) -> None: args = createSkiaGoldArgs(git_revision='a') sgp = skia_gold_properties.SkiaGoldProperties(args) self.assertEqual(sgp.git_revision, 'a') - def testGetGitRevision_findValidRevision(self): + def testGetGitRevision_findValidRevision(self) -> None: args = createSkiaGoldArgs(local_pixel_tests=True) sgp = skia_gold_properties.SkiaGoldProperties(args) with mock.patch.object(skia_gold_properties.SkiaGoldProperties, @@ -158,13 +161,13 @@ # Should be cached. self.assertEqual(sgp._git_revision, expected) - def testGetGitRevision_noExplicitOnBot(self): + def testGetGitRevision_noExplicitOnBot(self) -> None: args = createSkiaGoldArgs(local_pixel_tests=False) sgp = skia_gold_properties.SkiaGoldProperties(args) with self.assertRaises(RuntimeError): _ = sgp.git_revision - def testGetGitRevision_findEmptyRevision(self): + def testGetGitRevision_findEmptyRevision(self) -> None: args = createSkiaGoldArgs(local_pixel_tests=True) sgp = skia_gold_properties.SkiaGoldProperties(args) with mock.patch.object(skia_gold_properties.SkiaGoldProperties, @@ -173,7 +176,7 @@ with self.assertRaises(RuntimeError): _ = sgp.git_revision - def testGetGitRevision_findMalformedRevision(self): + def testGetGitRevision_findMalformedRevision(self) -> None: args = createSkiaGoldArgs(local_pixel_tests=True) sgp = skia_gold_properties.SkiaGoldProperties(args) with mock.patch.object(skia_gold_properties.SkiaGoldProperties,
diff --git a/build/skia_gold_common/skia_gold_session.py b/build/skia_gold_common/skia_gold_session.py index 8ae8f64..8b72991f 100644 --- a/build/skia_gold_common/skia_gold_session.py +++ b/build/skia_gold_common/skia_gold_session.py
@@ -3,8 +3,6 @@ # found in the LICENSE file. """Class for interacting with the Skia Gold image diffing service.""" -# pylint: disable=useless-object-inheritance - import logging import os import platform @@ -12,6 +10,9 @@ import sys import tempfile import time +from typing import Any, Dict, List, Optional, Tuple + +from skia_gold_common import skia_gold_properties CHROMIUM_SRC = os.path.realpath( os.path.join(os.path.dirname(__file__), '..', '..')) @@ -29,8 +30,11 @@ GOLDCTL_BINARY = os.path.join(GOLDCTL_BINARY, 'linux', 'goldctl') -class SkiaGoldSession(object): - class StatusCodes(object): +StepRetVal = Tuple[int, Optional[str]] + + +class SkiaGoldSession(): + class StatusCodes(): """Status codes for RunComparison.""" SUCCESS = 0 AUTH_FAILURE = 1 @@ -40,24 +44,24 @@ LOCAL_DIFF_FAILURE = 5 NO_OUTPUT_MANAGER = 6 - class ComparisonResults(object): + class ComparisonResults(): """Struct-like object for storing results of an image comparison.""" def __init__(self): - self.public_triage_link = None - self.internal_triage_link = None - self.triage_link_omission_reason = None - self.local_diff_given_image = None - self.local_diff_closest_image = None - self.local_diff_diff_image = None + self.public_triage_link: Optional[str] = None + self.internal_triage_link: Optional[str] = None + self.triage_link_omission_reason: Optional[str] = None + self.local_diff_given_image: Optional[str] = None + self.local_diff_closest_image: Optional[str] = None + self.local_diff_diff_image: Optional[str] = None def __init__(self, - working_dir, - gold_properties, - keys_file, - corpus, - instance, - bucket=None): + working_dir: str, + gold_properties: skia_gold_properties.SkiaGoldProperties, + keys_file: str, + corpus: str, + instance: str, + bucket: Optional[str] = None): """Abstract class to handle all aspects of image comparison via Skia Gold. A single SkiaGoldSession is valid for a single instance/corpus/keys_file @@ -97,13 +101,13 @@ shutil.copy(keys_file, self._keys_file) def RunComparison(self, - name, - png_file, - output_manager, - inexact_matching_args=None, - use_luci=True, - optional_keys=None, - force_dryrun=False): + name: str, + png_file: str, + output_manager: Any, + inexact_matching_args: Optional[List[str]] = None, + use_luci: bool = True, + optional_keys: Optional[Dict[str, str]] = None, + force_dryrun: bool = False) -> StepRetVal: """Helper method to run all steps to compare a produced image. Handles authentication, itnitialization, comparison, and, if necessary, @@ -166,7 +170,7 @@ return self.StatusCodes.LOCAL_DIFF_FAILURE, diff_stdout return self.StatusCodes.COMPARISON_FAILURE_LOCAL, compare_stdout - def Authenticate(self, use_luci=True): + def Authenticate(self, use_luci: bool = True) -> StepRetVal: """Authenticates with Skia Gold for this session. Args: @@ -199,7 +203,7 @@ self._authenticated = True return rc, stdout - def Initialize(self): + def Initialize(self) -> StepRetVal: """Initializes the working directory if necessary. This can technically be skipped if the same information is passed to the @@ -259,11 +263,11 @@ return rc, stdout def Compare(self, - name, - png_file, - inexact_matching_args=None, - optional_keys=None, - force_dryrun=False): + name: str, + png_file: str, + inexact_matching_args: Optional[List[str]] = None, + optional_keys: Optional[Dict[str, str]] = None, + force_dryrun: bool = False) -> StepRetVal: """Compares the given image to images known to Gold. Triage links can later be retrieved using GetTriageLinks(). @@ -351,7 +355,7 @@ 'Failed to read triage link from file') return rc, stdout - def Diff(self, name, png_file, output_manager): + def Diff(self, name: str, png_file: str, output_manager: Any) -> StepRetVal: """Performs a local image diff against the closest known positive in Gold. This is used for running tests on a workstation, where uploading data to @@ -410,7 +414,7 @@ finally: shutil.rmtree(os.path.realpath(os.path.join(temp_work_dir, '..'))) - def GetTriageLinks(self, name): + def GetTriageLinks(self, name: str) -> Tuple[str, str]: """Gets the triage links for the given image. Args: @@ -428,7 +432,7 @@ return (comparison_results.public_triage_link, comparison_results.internal_triage_link) - def GetTriageLinkOmissionReason(self, name): + def GetTriageLinkOmissionReason(self, name: str) -> str: """Gets the reason why a triage link is not available for an image. Args: @@ -451,7 +455,7 @@ 'Somehow have a ComparisonResults instance for %s that should not ' 'exist' % name) - def GetGivenImageLink(self, name): + def GetGivenImageLink(self, name: str) -> str: """Gets the link to the given image used for local diffing. Args: @@ -464,7 +468,7 @@ assert name in self._comparison_results return self._comparison_results[name].local_diff_given_image - def GetClosestImageLink(self, name): + def GetClosestImageLink(self, name: str) -> str: """Gets the link to the closest known image used for local diffing. Args: @@ -477,7 +481,7 @@ assert name in self._comparison_results return self._comparison_results[name].local_diff_closest_image - def GetDiffImageLink(self, name): + def GetDiffImageLink(self, name: str) -> str: """Gets the link to the diff between the given and closest images. Args: @@ -490,7 +494,7 @@ assert name in self._comparison_results return self._comparison_results[name].local_diff_diff_image - def _GeneratePublicTriageLink(self, internal_link): + def _GeneratePublicTriageLink(self, internal_link: str) -> str: """Generates a public triage link given an internal one. Args: @@ -504,7 +508,7 @@ return internal_link.replace('%s-gold' % self._instance, '%s-public-gold' % self._instance) - def _ClearTriageLinkFile(self): + def _ClearTriageLinkFile(self) -> None: """Clears the contents of the triage link file. This should be done before every comparison since goldctl appends to the @@ -513,13 +517,13 @@ """ open(self._triage_link_file, 'w').close() - def _CreateDiffOutputDir(self, _): + def _CreateDiffOutputDir(self, _name: str) -> str: # We don't use self._local_png_directory here since we want it to be # automatically cleaned up with the working directory. Any subclasses that # want to keep it around can override this method. return tempfile.mkdtemp(dir=self._working_dir) - def _GetDiffGoldInstance(self): + def _GetDiffGoldInstance(self) -> str: """Gets the Skia Gold instance to use for the Diff step. This can differ based on how a particular instance is set up, mainly @@ -530,7 +534,8 @@ # instance. return str(self._instance) + '-public' - def _StoreDiffLinks(self, image_name, output_manager, output_dir): + def _StoreDiffLinks(self, image_name: str, output_manager: Any, + output_dir: str) -> None: """Stores the local diff files as links. The ComparisonResults entry for |image_name| should have its *_image fields @@ -547,7 +552,7 @@ raise NotImplementedError() @staticmethod - def _RunCmdForRcAndOutput(cmd): + def _RunCmdForRcAndOutput(cmd: List[str]) -> Tuple[int, str]: """Runs |cmd| and returns its returncode and output. Args:
diff --git a/build/skia_gold_common/skia_gold_session_manager.py b/build/skia_gold_common/skia_gold_session_manager.py index 1328aa0..11f7a77 100644 --- a/build/skia_gold_common/skia_gold_session_manager.py +++ b/build/skia_gold_common/skia_gold_session_manager.py
@@ -3,14 +3,19 @@ # found in the LICENSE file. """Class for managing multiple SkiaGoldSessions.""" -# pylint: disable=useless-object-inheritance - import json import tempfile +from typing import Optional, Type, Union + +from skia_gold_common import skia_gold_properties +from skia_gold_common import skia_gold_session + +KeysInputType = Union[dict, str] -class SkiaGoldSessionManager(object): - def __init__(self, working_dir, gold_properties): +class SkiaGoldSessionManager(): + def __init__(self, working_dir: str, + gold_properties: skia_gold_properties.SkiaGoldProperties): """Abstract class to manage one or more skia_gold_session.SkiaGoldSessions. A separate session is required for each instance/corpus/keys_file @@ -27,10 +32,10 @@ self._sessions = {} def GetSkiaGoldSession(self, - keys_input, - corpus=None, - instance=None, - bucket=None): + keys_input: KeysInputType, + corpus: Optional[str] = None, + instance: Optional[str] = None, + bucket: Optional[str] = None): """Gets a SkiaGoldSession for the given arguments. Lazily creates one if necessary. @@ -66,7 +71,7 @@ return session @staticmethod - def _GetDefaultInstance(): + def _GetDefaultInstance() -> str: """Gets the default Skia Gold instance. Returns: @@ -75,7 +80,7 @@ return 'chrome' @staticmethod - def GetSessionClass(): + def GetSessionClass() -> Type[skia_gold_session.SkiaGoldSession]: """Gets the SkiaGoldSession class to use for session creation. Returns: @@ -84,7 +89,7 @@ raise NotImplementedError -def _GetKeysAsDict(keys_input): +def _GetKeysAsDict(keys_input: KeysInputType) -> dict: """Converts |keys_input| into a dictionary. Args: @@ -101,12 +106,14 @@ return json.load(f) -def _GetKeysAsJson(keys_input, session_work_dir): +def _GetKeysAsJson(keys_input: KeysInputType, session_work_dir: str) -> str: """Converts |keys_input| into a JSON file on disk. Args: keys_input: A dictionary or a string pointing to a JSON file. The contents of either should be Skia Gold config data. + session_work_dir: The working directory under which each individual + SkiaGoldSessions' working directory will be created. Returns: A string containing a filepath to a JSON file with containing |keys_input|'s
diff --git a/build/skia_gold_common/skia_gold_session_manager_unittest.py b/build/skia_gold_common/skia_gold_session_manager_unittest.py index 286fdf2..93ff404 100755 --- a/build/skia_gold_common/skia_gold_session_manager_unittest.py +++ b/build/skia_gold_common/skia_gold_session_manager_unittest.py
@@ -9,6 +9,7 @@ import os import sys import tempfile +import typing import unittest if sys.version_info[0] == 2: @@ -29,7 +30,7 @@ class SkiaGoldSessionManagerGetSessionTest(fake_filesystem_unittest.TestCase): """Tests the functionality of SkiaGoldSessionManager.GetSkiaGoldSession.""" - def setUp(self): + def setUp(self) -> None: self.setUpPyfakefs() self._working_dir = tempfile.mkdtemp() self._patcher = mock.patch.object( @@ -38,7 +39,7 @@ self._session_class_mock.return_value = skia_gold_session.SkiaGoldSession self.addCleanup(self._patcher.stop) - def test_ArgsForwardedToSession(self): + def test_ArgsForwardedToSession(self) -> None: args = createSkiaGoldArgs() sgp = skia_gold_properties.SkiaGoldProperties(args) sgsm = skia_gold_session_manager.SkiaGoldSessionManager( @@ -51,7 +52,7 @@ # manager's working directory. self.assertEqual(os.path.dirname(session._working_dir), self._working_dir) - def test_corpusFromJson(self): + def test_corpusFromJson(self) -> None: args = createSkiaGoldArgs() sgp = skia_gold_properties.SkiaGoldProperties(args) sgsm = skia_gold_session_manager.SkiaGoldSessionManager( @@ -62,7 +63,7 @@ self.assertEqual(session._corpus, 'foobar') self.assertEqual(session._instance, 'instance') - def test_corpusDefaultsToInstance(self): + def test_corpusDefaultsToInstance(self) -> None: args = createSkiaGoldArgs() sgp = skia_gold_properties.SkiaGoldProperties(args) sgsm = skia_gold_session_manager.SkiaGoldSessionManager( @@ -74,7 +75,8 @@ @mock.patch.object(skia_gold_session_manager.SkiaGoldSessionManager, '_GetDefaultInstance') - def test_getDefaultInstance(self, default_instance_mock): + def test_getDefaultInstance(self, + default_instance_mock: mock.MagicMock) -> None: default_instance_mock.return_value = 'default' args = createSkiaGoldArgs() sgp = skia_gold_properties.SkiaGoldProperties(args) @@ -86,7 +88,7 @@ self.assertEqual(session._instance, 'default') @mock.patch.object(skia_gold_session.SkiaGoldSession, '__init__') - def test_matchingSessionReused(self, session_mock): + def test_matchingSessionReused(self, session_mock: mock.MagicMock) -> None: session_mock.return_value = None args = createSkiaGoldArgs() sgp = skia_gold_properties.SkiaGoldProperties(args) @@ -100,7 +102,7 @@ self.assertEqual(session_mock.call_count, 1) @mock.patch.object(skia_gold_session.SkiaGoldSession, '__init__') - def test_separateSessionsFromKeys(self, session_mock): + def test_separateSessionsFromKeys(self, session_mock: mock.MagicMock) -> None: session_mock.return_value = None args = createSkiaGoldArgs() sgp = skia_gold_properties.SkiaGoldProperties(args) @@ -113,7 +115,8 @@ self.assertEqual(session_mock.call_count, 2) @mock.patch.object(skia_gold_session.SkiaGoldSession, '__init__') - def test_separateSessionsFromCorpus(self, session_mock): + def test_separateSessionsFromCorpus(self, + session_mock: mock.MagicMock) -> None: session_mock.return_value = None args = createSkiaGoldArgs() sgp = skia_gold_properties.SkiaGoldProperties(args) @@ -125,7 +128,8 @@ self.assertEqual(session_mock.call_count, 2) @mock.patch.object(skia_gold_session.SkiaGoldSession, '__init__') - def test_separateSessionsFromInstance(self, session_mock): + def test_separateSessionsFromInstance(self, + session_mock: mock.MagicMock) -> None: session_mock.return_value = None args = createSkiaGoldArgs() sgp = skia_gold_properties.SkiaGoldProperties(args) @@ -140,11 +144,11 @@ class SkiaGoldSessionManagerKeyConversionTest(fake_filesystem_unittest.TestCase ): - def setUp(self): + def setUp(self) -> None: self.setUpPyfakefs() self._working_dir = tempfile.mkdtemp() - def test_getKeysAsDict(self): + def test_getKeysAsDict(self) -> None: keys_dict = {'foo': 'bar'} keys_file_contents = {'bar': 'baz'} keys_file = tempfile.NamedTemporaryFile(delete=False).name @@ -156,16 +160,16 @@ self.assertEqual(skia_gold_session_manager._GetKeysAsDict(keys_file), keys_file_contents) with self.assertRaises(AssertionError): - skia_gold_session_manager._GetKeysAsDict(1) + skia_gold_session_manager._GetKeysAsDict(typing.cast(dict, 1)) - def test_getKeysAsJson(self): + def test_getKeysAsJson(self) -> None: keys_dict = {'foo': 'bar'} keys_file_contents = {'bar': 'baz'} keys_file = tempfile.NamedTemporaryFile(delete=False).name with open(keys_file, 'w') as f: json.dump(keys_file_contents, f) - self.assertEqual(skia_gold_session_manager._GetKeysAsJson(keys_file, None), + self.assertEqual(skia_gold_session_manager._GetKeysAsJson(keys_file, ''), keys_file) keys_dict_as_json = skia_gold_session_manager._GetKeysAsJson( keys_dict, self._working_dir) @@ -173,7 +177,7 @@ with open(keys_dict_as_json) as f: self.assertEqual(json.load(f), keys_dict) with self.assertRaises(AssertionError): - skia_gold_session_manager._GetKeysAsJson(1, None) + skia_gold_session_manager._GetKeysAsJson(typing.cast(dict, 1), '') if __name__ == '__main__':
diff --git a/build/skia_gold_common/skia_gold_session_unittest.py b/build/skia_gold_common/skia_gold_session_unittest.py index 15b8a99..46028c0 100755 --- a/build/skia_gold_common/skia_gold_session_unittest.py +++ b/build/skia_gold_common/skia_gold_session_unittest.py
@@ -9,6 +9,7 @@ import os import sys import tempfile +from typing import Any import unittest if sys.version_info[0] == 2: @@ -25,7 +26,8 @@ createSkiaGoldArgs = unittest_utils.createSkiaGoldArgs -def assertArgWith(test, arg_list, arg, value): +def assertArgWith(test: unittest.TestCase, arg_list: list, arg: Any, + value: Any) -> None: i = arg_list.index(arg) test.assertEqual(arg_list[i + 1], value) @@ -33,361 +35,329 @@ class SkiaGoldSessionRunComparisonTest(fake_filesystem_unittest.TestCase): """Tests the functionality of SkiaGoldSession.RunComparison.""" - def setUp(self): + def setUp(self) -> None: self.setUpPyfakefs() self._working_dir = tempfile.mkdtemp() self._json_keys = tempfile.NamedTemporaryFile(delete=False).name with open(self._json_keys, 'w') as f: json.dump({}, f) - @mock.patch.object(skia_gold_session.SkiaGoldSession, 'Diff') - @mock.patch.object(skia_gold_session.SkiaGoldSession, 'Compare') - @mock.patch.object(skia_gold_session.SkiaGoldSession, 'Initialize') - @mock.patch.object(skia_gold_session.SkiaGoldSession, 'Authenticate') - def test_comparisonSuccess(self, auth_mock, init_mock, compare_mock, - diff_mock): - auth_mock.return_value = (0, None) - init_mock.return_value = (0, None) - compare_mock.return_value = (0, None) + self.auth_patcher = mock.patch.object(skia_gold_session.SkiaGoldSession, + 'Authenticate') + self.init_patcher = mock.patch.object(skia_gold_session.SkiaGoldSession, + 'Initialize') + self.compare_patcher = mock.patch.object(skia_gold_session.SkiaGoldSession, + 'Compare') + self.diff_patcher = mock.patch.object(skia_gold_session.SkiaGoldSession, + 'Diff') + + self.auth_mock = self.auth_patcher.start() + self.init_mock = self.init_patcher.start() + self.compare_mock = self.compare_patcher.start() + self.diff_mock = self.diff_patcher.start() + + self.addCleanup(self.auth_patcher.stop) + self.addCleanup(self.init_patcher.stop) + self.addCleanup(self.compare_patcher.stop) + self.addCleanup(self.diff_patcher.stop) + + def test_comparisonSuccess(self) -> None: + self.auth_mock.return_value = (0, None) + self.init_mock.return_value = (0, None) + self.compare_mock.return_value = (0, None) sgp = skia_gold_properties.SkiaGoldProperties(createSkiaGoldArgs()) session = skia_gold_session.SkiaGoldSession(self._working_dir, sgp, - self._json_keys, None, None) - status, _ = session.RunComparison(None, None, None) + self._json_keys, '', '') + status, _ = session.RunComparison('', '', None) self.assertEqual(status, skia_gold_session.SkiaGoldSession.StatusCodes.SUCCESS) - self.assertEqual(auth_mock.call_count, 1) - self.assertEqual(init_mock.call_count, 1) - self.assertEqual(compare_mock.call_count, 1) - self.assertEqual(diff_mock.call_count, 0) + self.assertEqual(self.auth_mock.call_count, 1) + self.assertEqual(self.init_mock.call_count, 1) + self.assertEqual(self.compare_mock.call_count, 1) + self.assertEqual(self.diff_mock.call_count, 0) - @mock.patch.object(skia_gold_session.SkiaGoldSession, 'Diff') - @mock.patch.object(skia_gold_session.SkiaGoldSession, 'Compare') - @mock.patch.object(skia_gold_session.SkiaGoldSession, 'Initialize') - @mock.patch.object(skia_gold_session.SkiaGoldSession, 'Authenticate') - def test_authFailure(self, auth_mock, init_mock, compare_mock, diff_mock): - auth_mock.return_value = (1, 'Auth failed') + def test_authFailure(self) -> None: + self.auth_mock.return_value = (1, 'Auth failed') sgp = skia_gold_properties.SkiaGoldProperties(createSkiaGoldArgs()) session = skia_gold_session.SkiaGoldSession(self._working_dir, sgp, - self._json_keys, None, None) - status, error = session.RunComparison(None, None, None) + self._json_keys, '', '') + status, error = session.RunComparison('', '', None) self.assertEqual(status, skia_gold_session.SkiaGoldSession.StatusCodes.AUTH_FAILURE) self.assertEqual(error, 'Auth failed') - self.assertEqual(auth_mock.call_count, 1) - self.assertEqual(init_mock.call_count, 0) - self.assertEqual(compare_mock.call_count, 0) - self.assertEqual(diff_mock.call_count, 0) + self.assertEqual(self.auth_mock.call_count, 1) + self.assertEqual(self.init_mock.call_count, 0) + self.assertEqual(self.compare_mock.call_count, 0) + self.assertEqual(self.diff_mock.call_count, 0) - @mock.patch.object(skia_gold_session.SkiaGoldSession, 'Diff') - @mock.patch.object(skia_gold_session.SkiaGoldSession, 'Compare') - @mock.patch.object(skia_gold_session.SkiaGoldSession, 'Initialize') - @mock.patch.object(skia_gold_session.SkiaGoldSession, 'Authenticate') - def test_initFailure(self, auth_mock, init_mock, compare_mock, diff_mock): - auth_mock.return_value = (0, None) - init_mock.return_value = (1, 'Init failed') + def test_initFailure(self) -> None: + self.auth_mock.return_value = (0, None) + self.init_mock.return_value = (1, 'Init failed') sgp = skia_gold_properties.SkiaGoldProperties(createSkiaGoldArgs()) session = skia_gold_session.SkiaGoldSession(self._working_dir, sgp, - self._json_keys, None, None) - status, error = session.RunComparison(None, None, None) + self._json_keys, '', '') + status, error = session.RunComparison('', '', None) self.assertEqual(status, skia_gold_session.SkiaGoldSession.StatusCodes.INIT_FAILURE) self.assertEqual(error, 'Init failed') - self.assertEqual(auth_mock.call_count, 1) - self.assertEqual(init_mock.call_count, 1) - self.assertEqual(compare_mock.call_count, 0) - self.assertEqual(diff_mock.call_count, 0) + self.assertEqual(self.auth_mock.call_count, 1) + self.assertEqual(self.init_mock.call_count, 1) + self.assertEqual(self.compare_mock.call_count, 0) + self.assertEqual(self.diff_mock.call_count, 0) - @mock.patch.object(skia_gold_session.SkiaGoldSession, 'Diff') - @mock.patch.object(skia_gold_session.SkiaGoldSession, 'Compare') - @mock.patch.object(skia_gold_session.SkiaGoldSession, 'Initialize') - @mock.patch.object(skia_gold_session.SkiaGoldSession, 'Authenticate') - def test_compareFailureRemote(self, auth_mock, init_mock, compare_mock, - diff_mock): - auth_mock.return_value = (0, None) - init_mock.return_value = (0, None) - compare_mock.return_value = (1, 'Compare failed') + def test_compareFailureRemote(self) -> None: + self.auth_mock.return_value = (0, None) + self.init_mock.return_value = (0, None) + self.compare_mock.return_value = (1, 'Compare failed') args = createSkiaGoldArgs(local_pixel_tests=False) sgp = skia_gold_properties.SkiaGoldProperties(args) session = skia_gold_session.SkiaGoldSession(self._working_dir, sgp, - self._json_keys, None, None) - status, error = session.RunComparison(None, None, None) + self._json_keys, '', '') + status, error = session.RunComparison('', '', None) self.assertEqual( status, skia_gold_session.SkiaGoldSession.StatusCodes.COMPARISON_FAILURE_REMOTE) self.assertEqual(error, 'Compare failed') - self.assertEqual(auth_mock.call_count, 1) - self.assertEqual(init_mock.call_count, 1) - self.assertEqual(compare_mock.call_count, 1) - self.assertEqual(diff_mock.call_count, 0) + self.assertEqual(self.auth_mock.call_count, 1) + self.assertEqual(self.init_mock.call_count, 1) + self.assertEqual(self.compare_mock.call_count, 1) + self.assertEqual(self.diff_mock.call_count, 0) - @mock.patch.object(skia_gold_session.SkiaGoldSession, 'Diff') - @mock.patch.object(skia_gold_session.SkiaGoldSession, 'Compare') - @mock.patch.object(skia_gold_session.SkiaGoldSession, 'Initialize') - @mock.patch.object(skia_gold_session.SkiaGoldSession, 'Authenticate') - def test_compareFailureLocal(self, auth_mock, init_mock, compare_mock, - diff_mock): - auth_mock.return_value = (0, None) - init_mock.return_value = (0, None) - compare_mock.return_value = (1, 'Compare failed') - diff_mock.return_value = (0, None) + def test_compareFailureLocal(self) -> None: + self.auth_mock.return_value = (0, None) + self.init_mock.return_value = (0, None) + self.compare_mock.return_value = (1, 'Compare failed') + self.diff_mock.return_value = (0, None) args = createSkiaGoldArgs(local_pixel_tests=True) sgp = skia_gold_properties.SkiaGoldProperties(args) session = skia_gold_session.SkiaGoldSession(self._working_dir, sgp, - self._json_keys, None, None) - status, error = session.RunComparison(None, None, + self._json_keys, '', '') + status, error = session.RunComparison('', '', 'Definitely an output manager') self.assertEqual( status, skia_gold_session.SkiaGoldSession.StatusCodes.COMPARISON_FAILURE_LOCAL) self.assertEqual(error, 'Compare failed') - self.assertEqual(auth_mock.call_count, 1) - self.assertEqual(init_mock.call_count, 1) - self.assertEqual(compare_mock.call_count, 1) - self.assertEqual(diff_mock.call_count, 1) + self.assertEqual(self.auth_mock.call_count, 1) + self.assertEqual(self.init_mock.call_count, 1) + self.assertEqual(self.compare_mock.call_count, 1) + self.assertEqual(self.diff_mock.call_count, 1) - @mock.patch.object(skia_gold_session.SkiaGoldSession, 'Diff') - @mock.patch.object(skia_gold_session.SkiaGoldSession, 'Compare') - @mock.patch.object(skia_gold_session.SkiaGoldSession, 'Initialize') - @mock.patch.object(skia_gold_session.SkiaGoldSession, 'Authenticate') - def test_compareInexactMatching(self, auth_mock, init_mock, compare_mock, - diff_mock): - auth_mock.return_value = (0, None) - init_mock.return_value = (0, None) - compare_mock.return_value = (0, None) - diff_mock.return_value = (0, None) + def test_compareInexactMatching(self) -> None: + self.auth_mock.return_value = (0, None) + self.init_mock.return_value = (0, None) + self.compare_mock.return_value = (0, None) + self.diff_mock.return_value = (0, None) args = createSkiaGoldArgs(local_pixel_tests=False) sgp = skia_gold_properties.SkiaGoldProperties(args) session = skia_gold_session.SkiaGoldSession(self._working_dir, sgp, - self._json_keys, None, None) - status, _ = session.RunComparison(None, - None, + self._json_keys, '', '') + status, _ = session.RunComparison('', + '', None, inexact_matching_args=['--inexact']) self.assertEqual(status, skia_gold_session.SkiaGoldSession.StatusCodes.SUCCESS) - self.assertEqual(auth_mock.call_count, 1) - self.assertEqual(init_mock.call_count, 1) - self.assertEqual(compare_mock.call_count, 1) - self.assertEqual(diff_mock.call_count, 0) - compare_mock.assert_called_with(name=None, - png_file=mock.ANY, - inexact_matching_args=['--inexact'], - optional_keys=None, - force_dryrun=False) + self.assertEqual(self.auth_mock.call_count, 1) + self.assertEqual(self.init_mock.call_count, 1) + self.assertEqual(self.compare_mock.call_count, 1) + self.assertEqual(self.diff_mock.call_count, 0) + self.compare_mock.assert_called_with(name='', + png_file=mock.ANY, + inexact_matching_args=['--inexact'], + optional_keys=None, + force_dryrun=False) - @mock.patch.object(skia_gold_session.SkiaGoldSession, 'Diff') - @mock.patch.object(skia_gold_session.SkiaGoldSession, 'Compare') - @mock.patch.object(skia_gold_session.SkiaGoldSession, 'Initialize') - @mock.patch.object(skia_gold_session.SkiaGoldSession, 'Authenticate') - def test_compareOptionalKeys(self, auth_mock, init_mock, compare_mock, - diff_mock): - auth_mock.return_value = (0, None) - init_mock.return_value = (0, None) - compare_mock.return_value = (0, None) - diff_mock.return_value = (0, None) + def test_compareOptionalKeys(self) -> None: + self.auth_mock.return_value = (0, None) + self.init_mock.return_value = (0, None) + self.compare_mock.return_value = (0, None) + self.diff_mock.return_value = (0, None) args = createSkiaGoldArgs(local_pixel_tests=False) sgp = skia_gold_properties.SkiaGoldProperties(args) session = skia_gold_session.SkiaGoldSession(self._working_dir, sgp, - self._json_keys, None, None) - status, _ = session.RunComparison(None, - None, + self._json_keys, '', '') + status, _ = session.RunComparison('', + '', None, optional_keys={'foo': 'bar'}) self.assertEqual(status, skia_gold_session.SkiaGoldSession.StatusCodes.SUCCESS) - self.assertEqual(auth_mock.call_count, 1) - self.assertEqual(init_mock.call_count, 1) - self.assertEqual(compare_mock.call_count, 1) - self.assertEqual(diff_mock.call_count, 0) - compare_mock.assert_called_with(name=None, - png_file=mock.ANY, - inexact_matching_args=None, - optional_keys={'foo': 'bar'}, - force_dryrun=False) + self.assertEqual(self.auth_mock.call_count, 1) + self.assertEqual(self.init_mock.call_count, 1) + self.assertEqual(self.compare_mock.call_count, 1) + self.assertEqual(self.diff_mock.call_count, 0) + self.compare_mock.assert_called_with(name='', + png_file=mock.ANY, + inexact_matching_args=None, + optional_keys={'foo': 'bar'}, + force_dryrun=False) - @mock.patch.object(skia_gold_session.SkiaGoldSession, 'Diff') - @mock.patch.object(skia_gold_session.SkiaGoldSession, 'Compare') - @mock.patch.object(skia_gold_session.SkiaGoldSession, 'Initialize') - @mock.patch.object(skia_gold_session.SkiaGoldSession, 'Authenticate') - def test_compareForceDryrun(self, auth_mock, init_mock, compare_mock, - diff_mock): - auth_mock.return_value = (0, None) - init_mock.return_value = (0, None) - compare_mock.return_value = (0, None) - diff_mock.return_value = (0, None) + def test_compareForceDryrun(self) -> None: + self.auth_mock.return_value = (0, None) + self.init_mock.return_value = (0, None) + self.compare_mock.return_value = (0, None) + self.diff_mock.return_value = (0, None) args = createSkiaGoldArgs(local_pixel_tests=False) sgp = skia_gold_properties.SkiaGoldProperties(args) session = skia_gold_session.SkiaGoldSession(self._working_dir, sgp, - self._json_keys, None, None) - status, _ = session.RunComparison(None, None, None, force_dryrun=True) + self._json_keys, '', '') + status, _ = session.RunComparison('', '', None, force_dryrun=True) self.assertEqual(status, skia_gold_session.SkiaGoldSession.StatusCodes.SUCCESS) - self.assertEqual(auth_mock.call_count, 1) - self.assertEqual(init_mock.call_count, 1) - self.assertEqual(compare_mock.call_count, 1) - self.assertEqual(diff_mock.call_count, 0) - compare_mock.assert_called_with(name=None, - png_file=mock.ANY, - inexact_matching_args=None, - optional_keys=None, - force_dryrun=True) + self.assertEqual(self.auth_mock.call_count, 1) + self.assertEqual(self.init_mock.call_count, 1) + self.assertEqual(self.compare_mock.call_count, 1) + self.assertEqual(self.diff_mock.call_count, 0) + self.compare_mock.assert_called_with(name='', + png_file=mock.ANY, + inexact_matching_args=None, + optional_keys=None, + force_dryrun=True) - @mock.patch.object(skia_gold_session.SkiaGoldSession, 'Diff') - @mock.patch.object(skia_gold_session.SkiaGoldSession, 'Compare') - @mock.patch.object(skia_gold_session.SkiaGoldSession, 'Initialize') - @mock.patch.object(skia_gold_session.SkiaGoldSession, 'Authenticate') - def test_diffFailure(self, auth_mock, init_mock, compare_mock, diff_mock): - auth_mock.return_value = (0, None) - init_mock.return_value = (0, None) - compare_mock.return_value = (1, 'Compare failed') - diff_mock.return_value = (1, 'Diff failed') + def test_diffFailure(self) -> None: + self.auth_mock.return_value = (0, None) + self.init_mock.return_value = (0, None) + self.compare_mock.return_value = (1, 'Compare failed') + self.diff_mock.return_value = (1, 'Diff failed') args = createSkiaGoldArgs(local_pixel_tests=True) sgp = skia_gold_properties.SkiaGoldProperties(args) session = skia_gold_session.SkiaGoldSession(self._working_dir, sgp, - self._json_keys, None, None) - status, error = session.RunComparison(None, None, + self._json_keys, '', '') + status, error = session.RunComparison('', '', 'Definitely an output manager') self.assertEqual( status, skia_gold_session.SkiaGoldSession.StatusCodes.LOCAL_DIFF_FAILURE) self.assertEqual(error, 'Diff failed') - self.assertEqual(auth_mock.call_count, 1) - self.assertEqual(init_mock.call_count, 1) - self.assertEqual(compare_mock.call_count, 1) - self.assertEqual(diff_mock.call_count, 1) + self.assertEqual(self.auth_mock.call_count, 1) + self.assertEqual(self.init_mock.call_count, 1) + self.assertEqual(self.compare_mock.call_count, 1) + self.assertEqual(self.diff_mock.call_count, 1) - @mock.patch.object(skia_gold_session.SkiaGoldSession, 'Diff') - @mock.patch.object(skia_gold_session.SkiaGoldSession, 'Compare') - @mock.patch.object(skia_gold_session.SkiaGoldSession, 'Initialize') - @mock.patch.object(skia_gold_session.SkiaGoldSession, 'Authenticate') - def test_noOutputManagerLocal(self, auth_mock, init_mock, compare_mock, - diff_mock): - auth_mock.return_value = (0, None) - init_mock.return_value = (0, None) - compare_mock.return_value = (1, 'Compare failed') - diff_mock.return_value = (0, None) + def test_noOutputManagerLocal(self) -> None: + self.auth_mock.return_value = (0, None) + self.init_mock.return_value = (0, None) + self.compare_mock.return_value = (1, 'Compare failed') + self.diff_mock.return_value = (0, None) args = createSkiaGoldArgs(local_pixel_tests=True) sgp = skia_gold_properties.SkiaGoldProperties(args) session = skia_gold_session.SkiaGoldSession(self._working_dir, sgp, - self._json_keys, None, None) - status, error = session.RunComparison(None, None, None) + self._json_keys, '', '') + status, error = session.RunComparison('', '', None) self.assertEqual( status, skia_gold_session.SkiaGoldSession.StatusCodes.NO_OUTPUT_MANAGER) self.assertEqual(error, 'No output manager for local diff images') - self.assertEqual(auth_mock.call_count, 1) - self.assertEqual(compare_mock.call_count, 1) - self.assertEqual(diff_mock.call_count, 0) + self.assertEqual(self.auth_mock.call_count, 1) + self.assertEqual(self.compare_mock.call_count, 1) + self.assertEqual(self.diff_mock.call_count, 0) class SkiaGoldSessionAuthenticateTest(fake_filesystem_unittest.TestCase): """Tests the functionality of SkiaGoldSession.Authenticate.""" - def setUp(self): + def setUp(self) -> None: self.setUpPyfakefs() self._working_dir = tempfile.mkdtemp() self._json_keys = tempfile.NamedTemporaryFile(delete=False).name - @mock.patch.object(skia_gold_session.SkiaGoldSession, '_RunCmdForRcAndOutput') - def test_commandOutputReturned(self, cmd_mock): - cmd_mock.return_value = (1, 'Something bad :(') + self.cmd_patcher = mock.patch.object(skia_gold_session.SkiaGoldSession, + '_RunCmdForRcAndOutput') + self.cmd_mock = self.cmd_patcher.start() + self.addCleanup(self.cmd_patcher.stop) + + def test_commandOutputReturned(self) -> None: + self.cmd_mock.return_value = (1, 'Something bad :(') args = createSkiaGoldArgs(git_revision='a') sgp = skia_gold_properties.SkiaGoldProperties(args) session = skia_gold_session.SkiaGoldSession(self._working_dir, sgp, - self._json_keys, None, None) + self._json_keys, '', '') rc, stdout = session.Authenticate() - self.assertEqual(cmd_mock.call_count, 1) + self.assertEqual(self.cmd_mock.call_count, 1) self.assertEqual(rc, 1) self.assertEqual(stdout, 'Something bad :(') - @mock.patch.object(skia_gold_session.SkiaGoldSession, '_RunCmdForRcAndOutput') - def test_bypassSkiaGoldFunctionality(self, cmd_mock): - cmd_mock.return_value = (None, None) + def test_bypassSkiaGoldFunctionality(self) -> None: + self.cmd_mock.return_value = (None, None) args = createSkiaGoldArgs(git_revision='a', bypass_skia_gold_functionality=True) sgp = skia_gold_properties.SkiaGoldProperties(args) session = skia_gold_session.SkiaGoldSession(self._working_dir, sgp, - self._json_keys, None, None) + self._json_keys, '', '') rc, _ = session.Authenticate() self.assertEqual(rc, 0) - cmd_mock.assert_not_called() + self.cmd_mock.assert_not_called() - @mock.patch.object(skia_gold_session.SkiaGoldSession, '_RunCmdForRcAndOutput') - def test_shortCircuitAlreadyAuthenticated(self, cmd_mock): - cmd_mock.return_value = (None, None) + def test_shortCircuitAlreadyAuthenticated(self) -> None: + self.cmd_mock.return_value = (None, None) args = createSkiaGoldArgs(git_revision='a') sgp = skia_gold_properties.SkiaGoldProperties(args) session = skia_gold_session.SkiaGoldSession(self._working_dir, sgp, - self._json_keys, None, None) + self._json_keys, '', '') session._authenticated = True rc, _ = session.Authenticate() self.assertEqual(rc, 0) - cmd_mock.assert_not_called() + self.cmd_mock.assert_not_called() - @mock.patch.object(skia_gold_session.SkiaGoldSession, '_RunCmdForRcAndOutput') - def test_successSetsShortCircuit(self, cmd_mock): - cmd_mock.return_value = (0, None) + def test_successSetsShortCircuit(self) -> None: + self.cmd_mock.return_value = (0, None) args = createSkiaGoldArgs(git_revision='a') sgp = skia_gold_properties.SkiaGoldProperties(args) session = skia_gold_session.SkiaGoldSession(self._working_dir, sgp, - self._json_keys, None, None) + self._json_keys, '', '') self.assertFalse(session._authenticated) rc, _ = session.Authenticate() self.assertEqual(rc, 0) self.assertTrue(session._authenticated) - cmd_mock.assert_called_once() + self.cmd_mock.assert_called_once() - @mock.patch.object(skia_gold_session.SkiaGoldSession, '_RunCmdForRcAndOutput') - def test_failureDoesNotSetShortCircuit(self, cmd_mock): - cmd_mock.return_value = (1, None) + def test_failureDoesNotSetShortCircuit(self) -> None: + self.cmd_mock.return_value = (1, None) args = createSkiaGoldArgs(git_revision='a') sgp = skia_gold_properties.SkiaGoldProperties(args) session = skia_gold_session.SkiaGoldSession(self._working_dir, sgp, - self._json_keys, None, None) + self._json_keys, '', '') self.assertFalse(session._authenticated) rc, _ = session.Authenticate() self.assertEqual(rc, 1) self.assertFalse(session._authenticated) - cmd_mock.assert_called_once() + self.cmd_mock.assert_called_once() - @mock.patch.object(skia_gold_session.SkiaGoldSession, '_RunCmdForRcAndOutput') - def test_commandWithUseLuciTrue(self, cmd_mock): - cmd_mock.return_value = (None, None) + def test_commandWithUseLuciTrue(self) -> None: + self.cmd_mock.return_value = (None, None) args = createSkiaGoldArgs(git_revision='a') sgp = skia_gold_properties.SkiaGoldProperties(args) session = skia_gold_session.SkiaGoldSession(self._working_dir, sgp, - self._json_keys, None, None) + self._json_keys, '', '') session.Authenticate(use_luci=True) - self.assertIn('--luci', cmd_mock.call_args[0][0]) + self.assertIn('--luci', self.cmd_mock.call_args[0][0]) - @mock.patch.object(skia_gold_session.SkiaGoldSession, '_RunCmdForRcAndOutput') - def test_commandWithUseLuciFalse(self, cmd_mock): - cmd_mock.return_value = (None, None) + def test_commandWithUseLuciFalse(self) -> None: + self.cmd_mock.return_value = (None, None) args = createSkiaGoldArgs(git_revision='a', local_pixel_tests=True) sgp = skia_gold_properties.SkiaGoldProperties(args) session = skia_gold_session.SkiaGoldSession(self._working_dir, sgp, - self._json_keys, None, None) + self._json_keys, '', '') session.Authenticate(use_luci=False) - self.assertNotIn('--luci', cmd_mock.call_args[0][0]) + self.assertNotIn('--luci', self.cmd_mock.call_args[0][0]) - @mock.patch.object(skia_gold_session.SkiaGoldSession, '_RunCmdForRcAndOutput') - def test_commandWithUseLuciFalseNotLocal(self, cmd_mock): - cmd_mock.return_value = (None, None) + def test_commandWithUseLuciFalseNotLocal(self) -> None: + self.cmd_mock.return_value = (None, None) args = createSkiaGoldArgs(git_revision='a', local_pixel_tests=False) sgp = skia_gold_properties.SkiaGoldProperties(args) session = skia_gold_session.SkiaGoldSession(self._working_dir, sgp, - self._json_keys, None, None) + self._json_keys, '', '') with self.assertRaises(RuntimeError): session.Authenticate(use_luci=False) - @mock.patch.object(skia_gold_session.SkiaGoldSession, '_RunCmdForRcAndOutput') - def test_commandCommonArgs(self, cmd_mock): - cmd_mock.return_value = (None, None) + def test_commandCommonArgs(self) -> None: + self.cmd_mock.return_value = (None, None) args = createSkiaGoldArgs(git_revision='a') sgp = skia_gold_properties.SkiaGoldProperties(args) session = skia_gold_session.SkiaGoldSession(self._working_dir, sgp, - self._json_keys, None, None) + self._json_keys, '', '') session.Authenticate() - call_args = cmd_mock.call_args[0][0] + call_args = self.cmd_mock.call_args[0][0] self.assertIn('auth', call_args) assertArgWith(self, call_args, '--work-dir', self._working_dir) @@ -395,64 +365,64 @@ class SkiaGoldSessionInitializeTest(fake_filesystem_unittest.TestCase): """Tests the functionality of SkiaGoldSession.Initialize.""" - def setUp(self): + def setUp(self) -> None: self.setUpPyfakefs() self._working_dir = tempfile.mkdtemp() self._json_keys = tempfile.NamedTemporaryFile(delete=False).name - @mock.patch.object(skia_gold_session.SkiaGoldSession, '_RunCmdForRcAndOutput') - def test_bypassSkiaGoldFunctionality(self, cmd_mock): - cmd_mock.return_value = (None, None) + self.cmd_patcher = mock.patch.object(skia_gold_session.SkiaGoldSession, + '_RunCmdForRcAndOutput') + self.cmd_mock = self.cmd_patcher.start() + self.addCleanup(self.cmd_patcher.stop) + + def test_bypassSkiaGoldFunctionality(self) -> None: + self.cmd_mock.return_value = (None, None) args = createSkiaGoldArgs(git_revision='a', bypass_skia_gold_functionality=True) sgp = skia_gold_properties.SkiaGoldProperties(args) session = skia_gold_session.SkiaGoldSession(self._working_dir, sgp, - self._json_keys, None, None) + self._json_keys, '', '') rc, _ = session.Initialize() self.assertEqual(rc, 0) - cmd_mock.assert_not_called() + self.cmd_mock.assert_not_called() - @mock.patch.object(skia_gold_session.SkiaGoldSession, '_RunCmdForRcAndOutput') - def test_shortCircuitAlreadyInitialized(self, cmd_mock): - cmd_mock.return_value = (None, None) + def test_shortCircuitAlreadyInitialized(self) -> None: + self.cmd_mock.return_value = (None, None) args = createSkiaGoldArgs(git_revision='a') sgp = skia_gold_properties.SkiaGoldProperties(args) session = skia_gold_session.SkiaGoldSession(self._working_dir, sgp, - self._json_keys, None, None) + self._json_keys, '', '') session._initialized = True rc, _ = session.Initialize() self.assertEqual(rc, 0) - cmd_mock.assert_not_called() + self.cmd_mock.assert_not_called() - @mock.patch.object(skia_gold_session.SkiaGoldSession, '_RunCmdForRcAndOutput') - def test_successSetsShortCircuit(self, cmd_mock): - cmd_mock.return_value = (0, None) + def test_successSetsShortCircuit(self) -> None: + self.cmd_mock.return_value = (0, None) args = createSkiaGoldArgs(git_revision='a') sgp = skia_gold_properties.SkiaGoldProperties(args) session = skia_gold_session.SkiaGoldSession(self._working_dir, sgp, - self._json_keys, None, None) + self._json_keys, '', '') self.assertFalse(session._initialized) rc, _ = session.Initialize() self.assertEqual(rc, 0) self.assertTrue(session._initialized) - cmd_mock.assert_called_once() + self.cmd_mock.assert_called_once() - @mock.patch.object(skia_gold_session.SkiaGoldSession, '_RunCmdForRcAndOutput') - def test_failureDoesNotSetShortCircuit(self, cmd_mock): - cmd_mock.return_value = (1, None) + def test_failureDoesNotSetShortCircuit(self) -> None: + self.cmd_mock.return_value = (1, None) args = createSkiaGoldArgs(git_revision='a') sgp = skia_gold_properties.SkiaGoldProperties(args) session = skia_gold_session.SkiaGoldSession(self._working_dir, sgp, - self._json_keys, None, None) + self._json_keys, '', '') self.assertFalse(session._initialized) rc, _ = session.Initialize() self.assertEqual(rc, 1) self.assertFalse(session._initialized) - cmd_mock.assert_called_once() + self.cmd_mock.assert_called_once() - @mock.patch.object(skia_gold_session.SkiaGoldSession, '_RunCmdForRcAndOutput') - def test_commandCommonArgs(self, cmd_mock): - cmd_mock.return_value = (None, None) + def test_commandCommonArgs(self) -> None: + self.cmd_mock.return_value = (None, None) args = createSkiaGoldArgs(git_revision='a') sgp = skia_gold_properties.SkiaGoldProperties(args) session = skia_gold_session.SkiaGoldSession(self._working_dir, @@ -462,7 +432,7 @@ instance='instance', bucket='bucket') session.Initialize() - call_args = cmd_mock.call_args[0][0] + call_args = self.cmd_mock.call_args[0][0] self.assertIn('imgtest', call_args) self.assertIn('init', call_args) self.assertIn('--passfail', call_args) @@ -476,27 +446,25 @@ assertArgWith(self, call_args, '--failure-file', session._triage_link_file) assertArgWith(self, call_args, '--commit', 'a') - @mock.patch.object(skia_gold_session.SkiaGoldSession, '_RunCmdForRcAndOutput') - def test_commandTryjobArgs(self, cmd_mock): - cmd_mock.return_value = (None, None) + def test_commandTryjobArgs(self) -> None: + self.cmd_mock.return_value = (None, None) args = createSkiaGoldArgs(git_revision='a', gerrit_issue=1, gerrit_patchset=2, buildbucket_id=3) sgp = skia_gold_properties.SkiaGoldProperties(args) session = skia_gold_session.SkiaGoldSession(self._working_dir, sgp, - self._json_keys, None, None) + self._json_keys, '', '') session.Initialize() - call_args = cmd_mock.call_args[0][0] + call_args = self.cmd_mock.call_args[0][0] assertArgWith(self, call_args, '--issue', '1') assertArgWith(self, call_args, '--patchset', '2') assertArgWith(self, call_args, '--jobid', '3') assertArgWith(self, call_args, '--crs', 'gerrit') assertArgWith(self, call_args, '--cis', 'buildbucket') - @mock.patch.object(skia_gold_session.SkiaGoldSession, '_RunCmdForRcAndOutput') - def test_commandTryjobArgsNonDefaultCrs(self, cmd_mock): - cmd_mock.return_value = (None, None) + def test_commandTryjobArgsNonDefaultCrs(self) -> None: + self.cmd_mock.return_value = (None, None) args = createSkiaGoldArgs(code_review_system='foo', git_revision='a', gerrit_issue=1, @@ -504,24 +472,23 @@ buildbucket_id=3) sgp = skia_gold_properties.SkiaGoldProperties(args) session = skia_gold_session.SkiaGoldSession(self._working_dir, sgp, - self._json_keys, None, None) + self._json_keys, '', '') session.Initialize() - call_args = cmd_mock.call_args[0][0] + call_args = self.cmd_mock.call_args[0][0] assertArgWith(self, call_args, '--issue', '1') assertArgWith(self, call_args, '--patchset', '2') assertArgWith(self, call_args, '--jobid', '3') assertArgWith(self, call_args, '--crs', 'foo') assertArgWith(self, call_args, '--cis', 'buildbucket') - @mock.patch.object(skia_gold_session.SkiaGoldSession, '_RunCmdForRcAndOutput') - def test_commandTryjobArgsMissing(self, cmd_mock): - cmd_mock.return_value = (None, None) + def test_commandTryjobArgsMissing(self) -> None: + self.cmd_mock.return_value = (None, None) args = createSkiaGoldArgs(git_revision='a') sgp = skia_gold_properties.SkiaGoldProperties(args) session = skia_gold_session.SkiaGoldSession(self._working_dir, sgp, - self._json_keys, None, None) + self._json_keys, '', '') session.Initialize() - call_args = cmd_mock.call_args[0][0] + call_args = self.cmd_mock.call_args[0][0] self.assertNotIn('--issue', call_args) self.assertNotIn('--patchset', call_args) self.assertNotIn('--jobid', call_args) @@ -532,79 +499,77 @@ class SkiaGoldSessionCompareTest(fake_filesystem_unittest.TestCase): """Tests the functionality of SkiaGoldSession.Compare.""" - def setUp(self): + def setUp(self) -> None: self.setUpPyfakefs() self._working_dir = tempfile.mkdtemp() self._json_keys = tempfile.NamedTemporaryFile(delete=False).name - @mock.patch.object(skia_gold_session.SkiaGoldSession, '_RunCmdForRcAndOutput') - def test_commandOutputReturned(self, cmd_mock): - cmd_mock.return_value = (1, 'Something bad :(') + self.cmd_patcher = mock.patch.object(skia_gold_session.SkiaGoldSession, + '_RunCmdForRcAndOutput') + self.cmd_mock = self.cmd_patcher.start() + self.addCleanup(self.cmd_patcher.stop) + + def test_commandOutputReturned(self) -> None: + self.cmd_mock.return_value = (1, 'Something bad :(') args = createSkiaGoldArgs(git_revision='a') sgp = skia_gold_properties.SkiaGoldProperties(args) session = skia_gold_session.SkiaGoldSession(self._working_dir, sgp, - self._json_keys, None, None) - rc, stdout = session.Compare(None, None) - self.assertEqual(cmd_mock.call_count, 1) + self._json_keys, '', '') + rc, stdout = session.Compare('', '') + self.assertEqual(self.cmd_mock.call_count, 1) self.assertEqual(rc, 1) self.assertEqual(stdout, 'Something bad :(') - @mock.patch.object(skia_gold_session.SkiaGoldSession, '_RunCmdForRcAndOutput') - def test_bypassSkiaGoldFunctionality(self, cmd_mock): - cmd_mock.return_value = (None, None) + def test_bypassSkiaGoldFunctionality(self) -> None: + self.cmd_mock.return_value = (None, None) args = createSkiaGoldArgs(git_revision='a', bypass_skia_gold_functionality=True) sgp = skia_gold_properties.SkiaGoldProperties(args) session = skia_gold_session.SkiaGoldSession(self._working_dir, sgp, - self._json_keys, None, None) - rc, _ = session.Compare(None, None) + self._json_keys, '', '') + rc, _ = session.Compare('', '') self.assertEqual(rc, 0) - cmd_mock.assert_not_called() + self.cmd_mock.assert_not_called() - @mock.patch.object(skia_gold_session.SkiaGoldSession, '_RunCmdForRcAndOutput') - def test_commandWithLocalPixelTestsTrue(self, cmd_mock): - cmd_mock.return_value = (None, None) + def test_commandWithLocalPixelTestsTrue(self) -> None: + self.cmd_mock.return_value = (None, None) args = createSkiaGoldArgs(git_revision='a', local_pixel_tests=True) sgp = skia_gold_properties.SkiaGoldProperties(args) session = skia_gold_session.SkiaGoldSession(self._working_dir, sgp, - self._json_keys, None, None) - session.Compare(None, None) - self.assertIn('--dryrun', cmd_mock.call_args[0][0]) + self._json_keys, '', '') + session.Compare('', '') + self.assertIn('--dryrun', self.cmd_mock.call_args[0][0]) - @mock.patch.object(skia_gold_session.SkiaGoldSession, '_RunCmdForRcAndOutput') - def test_commandWithForceDryrunTrue(self, cmd_mock): - cmd_mock.return_value = (None, None) + def test_commandWithForceDryrunTrue(self) -> None: + self.cmd_mock.return_value = (None, None) args = createSkiaGoldArgs(git_revision='a') sgp = skia_gold_properties.SkiaGoldProperties(args) session = skia_gold_session.SkiaGoldSession(self._working_dir, sgp, - self._json_keys, None, None) - session.Compare(None, None, force_dryrun=True) - self.assertIn('--dryrun', cmd_mock.call_args[0][0]) + self._json_keys, '', '') + session.Compare('', '', force_dryrun=True) + self.assertIn('--dryrun', self.cmd_mock.call_args[0][0]) - @mock.patch.object(skia_gold_session.SkiaGoldSession, '_RunCmdForRcAndOutput') - def test_commandWithLocalPixelTestsFalse(self, cmd_mock): - cmd_mock.return_value = (None, None) + def test_commandWithLocalPixelTestsFalse(self) -> None: + self.cmd_mock.return_value = (None, None) args = createSkiaGoldArgs(git_revision='a', local_pixel_tests=False) sgp = skia_gold_properties.SkiaGoldProperties(args) session = skia_gold_session.SkiaGoldSession(self._working_dir, sgp, - self._json_keys, None, None) - session.Compare(None, None) - self.assertNotIn('--dryrun', cmd_mock.call_args[0][0]) + self._json_keys, '', '') + session.Compare('', '') + self.assertNotIn('--dryrun', self.cmd_mock.call_args[0][0]) - @mock.patch.object(skia_gold_session.SkiaGoldSession, '_RunCmdForRcAndOutput') - def test_commandWithInexactArgs(self, cmd_mock): - cmd_mock.return_value = (None, None) + def test_commandWithInexactArgs(self) -> None: + self.cmd_mock.return_value = (None, None) args = createSkiaGoldArgs(git_revision='a') sgp = skia_gold_properties.SkiaGoldProperties(args) session = skia_gold_session.SkiaGoldSession(self._working_dir, sgp, - self._json_keys, None, None) - session.Compare(None, None, inexact_matching_args=['--inexact', 'foobar']) - self.assertIn('--inexact', cmd_mock.call_args[0][0]) - self.assertIn('foobar', cmd_mock.call_args[0][0]) + self._json_keys, '', '') + session.Compare('', '', inexact_matching_args=['--inexact', 'foobar']) + self.assertIn('--inexact', self.cmd_mock.call_args[0][0]) + self.assertIn('foobar', self.cmd_mock.call_args[0][0]) - @mock.patch.object(skia_gold_session.SkiaGoldSession, '_RunCmdForRcAndOutput') - def test_commandCommonArgs(self, cmd_mock): - cmd_mock.return_value = (None, None) + def test_commandCommonArgs(self) -> None: + self.cmd_mock.return_value = (None, None) args = createSkiaGoldArgs(git_revision='a') sgp = skia_gold_properties.SkiaGoldProperties(args) session = skia_gold_session.SkiaGoldSession(self._working_dir, @@ -613,20 +578,19 @@ 'corpus', instance='instance') session.Compare('name', 'png_file') - call_args = cmd_mock.call_args[0][0] + call_args = self.cmd_mock.call_args[0][0] self.assertIn('imgtest', call_args) self.assertIn('add', call_args) assertArgWith(self, call_args, '--test-name', 'name') assertArgWith(self, call_args, '--png-file', 'png_file') assertArgWith(self, call_args, '--work-dir', self._working_dir) - @mock.patch.object(skia_gold_session.SkiaGoldSession, '_RunCmdForRcAndOutput') - def test_noLinkOnSuccess(self, cmd_mock): - cmd_mock.return_value = (0, None) + def test_noLinkOnSuccess(self) -> None: + self.cmd_mock.return_value = (0, None) args = createSkiaGoldArgs(git_revision='a') sgp = skia_gold_properties.SkiaGoldProperties(args) session = skia_gold_session.SkiaGoldSession(self._working_dir, sgp, - self._json_keys, None, None) + self._json_keys, '', '') rc, _ = session.Compare('name', 'png_file') self.assertEqual(rc, 0) comparison_result = session._comparison_results['name'] @@ -634,9 +598,8 @@ self.assertEqual(comparison_result.internal_triage_link, None) self.assertNotEqual(comparison_result.triage_link_omission_reason, None) - @mock.patch.object(skia_gold_session.SkiaGoldSession, '_RunCmdForRcAndOutput') - def test_clLinkOnTrybot(self, cmd_mock): - cmd_mock.return_value = (1, None) + def test_clLinkOnTrybot(self) -> None: + self.cmd_mock.return_value = (1, None) args = createSkiaGoldArgs(git_revision='a', gerrit_issue=1, gerrit_patchset=2, @@ -645,7 +608,7 @@ session = skia_gold_session.SkiaGoldSession(self._working_dir, sgp, self._json_keys, - None, + '', instance='instance') rc, _ = session.Compare('name', 'png_file') self.assertEqual(rc, 1) @@ -660,14 +623,13 @@ self.assertEqual(session.GetTriageLinks('name'), (public_link, internal_link)) - @mock.patch.object(skia_gold_session.SkiaGoldSession, '_RunCmdForRcAndOutput') - def test_individualLinkOnCi(self, cmd_mock): + def test_individualLinkOnCi(self) -> None: args = createSkiaGoldArgs(git_revision='a') sgp = skia_gold_properties.SkiaGoldProperties(args) session = skia_gold_session.SkiaGoldSession(self._working_dir, sgp, self._json_keys, - None, + '', instance='foobar') internal_link = 'foobar-gold.skia.org' @@ -678,7 +640,7 @@ f.write(internal_link) return (1, None) - cmd_mock.side_effect = WriteTriageLinkFile + self.cmd_mock.side_effect = WriteTriageLinkFile rc, _ = session.Compare('name', 'png_file') self.assertEqual(rc, 1) comparison_result = session._comparison_results['name'] @@ -690,19 +652,18 @@ self.assertEqual(session.GetTriageLinks('name'), (public_link, internal_link)) - @mock.patch.object(skia_gold_session.SkiaGoldSession, '_RunCmdForRcAndOutput') - def test_validOmissionOnMissingLink(self, cmd_mock): + def test_validOmissionOnMissingLink(self) -> None: args = createSkiaGoldArgs(git_revision='a') sgp = skia_gold_properties.SkiaGoldProperties(args) session = skia_gold_session.SkiaGoldSession(self._working_dir, sgp, - self._json_keys, None, None) + self._json_keys, '', '') def WriteTriageLinkFile(_): with open(session._triage_link_file, 'w'): pass return (1, None) - cmd_mock.side_effect = WriteTriageLinkFile + self.cmd_mock.side_effect = WriteTriageLinkFile rc, _ = session.Compare('name', 'png_file') self.assertEqual(rc, 1) comparison_result = session._comparison_results['name'] @@ -711,19 +672,18 @@ self.assertIn('Gold did not provide a triage link', comparison_result.triage_link_omission_reason) - @mock.patch.object(skia_gold_session.SkiaGoldSession, '_RunCmdForRcAndOutput') - def test_validOmissionOnIoError(self, cmd_mock): - cmd_mock.return_value = (1, None) + def test_validOmissionOnIoError(self) -> None: + self.cmd_mock.return_value = (1, None) args = createSkiaGoldArgs(git_revision='a') sgp = skia_gold_properties.SkiaGoldProperties(args) session = skia_gold_session.SkiaGoldSession(self._working_dir, sgp, - self._json_keys, None, None) + self._json_keys, '', '') def DeleteTriageLinkFile(_): os.remove(session._triage_link_file) return (1, None) - cmd_mock.side_effect = DeleteTriageLinkFile + self.cmd_mock.side_effect = DeleteTriageLinkFile rc, _ = session.Compare('name', 'png_file') self.assertEqual(rc, 1) comparison_result = session._comparison_results['name'] @@ -733,87 +693,89 @@ self.assertIn('Failed to read', comparison_result.triage_link_omission_reason) - @mock.patch.object(skia_gold_session.SkiaGoldSession, '_RunCmdForRcAndOutput') - def test_optionalKeysPassedToGoldctl(self, cmd_mock): - cmd_mock.return_value = (None, None) + def test_optionalKeysPassedToGoldctl(self) -> None: + self.cmd_mock.return_value = (None, None) args = createSkiaGoldArgs(git_revision='a', local_pixel_tests=True) sgp = skia_gold_properties.SkiaGoldProperties(args) session = skia_gold_session.SkiaGoldSession(self._working_dir, sgp, - self._json_keys, None, None) - session.Compare(None, None, optional_keys={'foo': 'bar'}) - assertArgWith(self, cmd_mock.call_args[0][0], '--add-test-optional-key', - 'foo:bar') + self._json_keys, '', '') + session.Compare('', '', optional_keys={'foo': 'bar'}) + assertArgWith(self, self.cmd_mock.call_args[0][0], + '--add-test-optional-key', 'foo:bar') class SkiaGoldSessionDiffTest(fake_filesystem_unittest.TestCase): """Tests the functionality of SkiaGoldSession.Diff.""" - def setUp(self): + def setUp(self) -> None: self.setUpPyfakefs() self._working_dir = tempfile.mkdtemp() self._json_keys = tempfile.NamedTemporaryFile(delete=False).name + self.cmd_patcher = mock.patch.object(skia_gold_session.SkiaGoldSession, + '_RunCmdForRcAndOutput') + self.cmd_mock = self.cmd_patcher.start() + self.addCleanup(self.cmd_patcher.stop) + @mock.patch.object(skia_gold_session.SkiaGoldSession, '_StoreDiffLinks') - @mock.patch.object(skia_gold_session.SkiaGoldSession, '_RunCmdForRcAndOutput') - def test_commandOutputReturned(self, cmd_mock, _): - cmd_mock.return_value = (1, 'Something bad :(') + def test_commandOutputReturned(self, _) -> None: + self.cmd_mock.return_value = (1, 'Something bad :(') args = createSkiaGoldArgs(git_revision='a', local_pixel_tests=False) sgp = skia_gold_properties.SkiaGoldProperties(args) session = skia_gold_session.SkiaGoldSession(self._working_dir, sgp, - self._json_keys, None, None) - rc, stdout = session.Diff(None, None, None) - self.assertEqual(cmd_mock.call_count, 1) + self._json_keys, '', '') + rc, stdout = session.Diff('', '', None) + self.assertEqual(self.cmd_mock.call_count, 1) self.assertEqual(rc, 1) self.assertEqual(stdout, 'Something bad :(') - @mock.patch.object(skia_gold_session.SkiaGoldSession, '_RunCmdForRcAndOutput') - def test_bypassSkiaGoldFunctionality(self, cmd_mock): - cmd_mock.return_value = (None, None) + def test_bypassSkiaGoldFunctionality(self) -> None: + self.cmd_mock.return_value = (None, None) args = createSkiaGoldArgs(git_revision='a', bypass_skia_gold_functionality=True) sgp = skia_gold_properties.SkiaGoldProperties(args) session = skia_gold_session.SkiaGoldSession(self._working_dir, sgp, - self._json_keys, None, None) + self._json_keys, '', '') with self.assertRaises(RuntimeError): - session.Diff(None, None, None) + session.Diff('', '', None) class SkiaGoldSessionTriageLinkOmissionTest(fake_filesystem_unittest.TestCase): """Tests the functionality of SkiaGoldSession.GetTriageLinkOmissionReason.""" - def setUp(self): + def setUp(self) -> None: self.setUpPyfakefs() self._working_dir = tempfile.mkdtemp() - def _CreateSession(self): + def _CreateSession(self) -> skia_gold_session.SkiaGoldSession: sgp = skia_gold_properties.SkiaGoldProperties(createSkiaGoldArgs()) json_keys = tempfile.NamedTemporaryFile(delete=False).name session = skia_gold_session.SkiaGoldSession(self._working_dir, sgp, - json_keys, None, None) + json_keys, '', '') session._comparison_results = { 'foo': skia_gold_session.SkiaGoldSession.ComparisonResults(), } return session - def test_noComparison(self): + def test_noComparison(self) -> None: session = self._CreateSession() session._comparison_results = {} reason = session.GetTriageLinkOmissionReason('foo') self.assertEqual(reason, 'No image comparison performed for foo') - def test_validReason(self): + def test_validReason(self) -> None: session = self._CreateSession() session._comparison_results['foo'].triage_link_omission_reason = 'bar' reason = session.GetTriageLinkOmissionReason('foo') self.assertEqual(reason, 'bar') - def test_onlyLocal(self): + def test_onlyLocal(self) -> None: session = self._CreateSession() session._comparison_results['foo'].local_diff_given_image = 'bar' reason = session.GetTriageLinkOmissionReason('foo') self.assertEqual(reason, 'Gold only used to do a local image diff') - def test_onlyWithoutTriageLink(self): + def test_onlyWithoutTriageLink(self) -> None: session = self._CreateSession() comparison_result = session._comparison_results['foo'] comparison_result.public_triage_link = 'bar' @@ -824,7 +786,7 @@ with self.assertRaises(AssertionError): session.GetTriageLinkOmissionReason('foo') - def test_resultsShouldNotExist(self): + def test_resultsShouldNotExist(self) -> None: session = self._CreateSession() with self.assertRaises(RuntimeError): session.GetTriageLinkOmissionReason('foo')
diff --git a/build/skia_gold_common/unittest_utils.py b/build/skia_gold_common/unittest_utils.py index c4f77a1..ea1fbb0 100644 --- a/build/skia_gold_common/unittest_utils.py +++ b/build/skia_gold_common/unittest_utils.py
@@ -3,7 +3,10 @@ # found in the LICENSE file. """Utility methods for Skia Gold functionality unittests.""" +import argparse import collections +import typing +from typing import Optional _SkiaGoldArgs = collections.namedtuple('_SkiaGoldArgs', [ 'local_pixel_tests', @@ -19,18 +22,21 @@ ]) -def createSkiaGoldArgs(local_pixel_tests=None, - no_luci_auth=None, - code_review_system=None, - continuous_integration_system=None, - git_revision=None, - gerrit_issue=None, - gerrit_patchset=None, - buildbucket_id=None, - bypass_skia_gold_functionality=None, - skia_gold_local_png_write_directory=None): - return _SkiaGoldArgs(local_pixel_tests, no_luci_auth, code_review_system, - continuous_integration_system, git_revision, - gerrit_issue, gerrit_patchset, buildbucket_id, - bypass_skia_gold_functionality, - skia_gold_local_png_write_directory) +def createSkiaGoldArgs(local_pixel_tests: Optional[bool] = None, + no_luci_auth: Optional[bool] = None, + code_review_system: Optional[str] = None, + continuous_integration_system: Optional[str] = None, + git_revision: Optional[str] = None, + gerrit_issue: Optional[int] = None, + gerrit_patchset: Optional[int] = None, + buildbucket_id: Optional[int] = None, + bypass_skia_gold_functionality: Optional[bool] = None, + skia_gold_local_png_write_directory: Optional[str] = None + ) -> argparse.Namespace: + return typing.cast( + argparse.Namespace, + _SkiaGoldArgs(local_pixel_tests, no_luci_auth, code_review_system, + continuous_integration_system, git_revision, gerrit_issue, + gerrit_patchset, buildbucket_id, + bypass_skia_gold_functionality, + skia_gold_local_png_write_directory))
diff --git a/cc/layers/heads_up_display_layer_impl.cc b/cc/layers/heads_up_display_layer_impl.cc index 9a9fada3..17138b5 100644 --- a/cc/layers/heads_up_display_layer_impl.cc +++ b/cc/layers/heads_up_display_layer_impl.cc
@@ -588,7 +588,7 @@ const LayerTreeDebugState& debug_state = layer_tree_impl()->debug_state(); TRACE_EVENT0("cc", "DrawHudContents"); - canvas->clear(SkColorSetARGB(0, 0, 0, 0)); + canvas->clear(SkColors::kTransparent); canvas->save(); canvas->scale(internal_contents_scale_); @@ -704,8 +704,7 @@ PaintFlags* flags, const SkRect& bounds) const { // Draw separator line as transparent white. - constexpr auto kSeparatorLineColor = SkColorSetARGB(64, 255, 255, 255); - flags->setColor(kSeparatorLineColor); + flags->setColor({1.0f, 1.0f, 1.0f, 0.25f}); canvas->drawLine(bounds.left(), bounds.top(), bounds.right(), bounds.top(), *flags); } @@ -822,13 +821,11 @@ SkPoint stat2_pos = SkPoint::Make(left + width - kPadding - 1, top + 2 * kPadding + 3 * kFontHeight); - // TODO(crbug/1308932): Remove toSkColor and make all SkColor4f. - flags.setColor(DebugColors::HUDTitleColor().toSkColor()); + flags.setColor(DebugColors::HUDTitleColor()); DrawText(canvas, flags, "GPU memory", TextAlign::kLeft, kTitleFontHeight, title_pos); - // TODO(crbug/1308932): Remove toSkColor and make all SkColor4f. - flags.setColor(DebugColors::MemoryDisplayTextColor().toSkColor()); + flags.setColor(DebugColors::MemoryDisplayTextColor()); std::string text = base::StringPrintf( "%6.1f MB used", memory_entry_.total_bytes_used / kMegabyte); DrawText(canvas, flags, text, TextAlign::kRight, kFontHeight, stat1_pos);
diff --git a/cc/layers/painted_overlay_scrollbar_layer.cc b/cc/layers/painted_overlay_scrollbar_layer.cc index 33ff15f..7fd89fc 100644 --- a/cc/layers/painted_overlay_scrollbar_layer.cc +++ b/cc/layers/painted_overlay_scrollbar_layer.cc
@@ -155,7 +155,7 @@ SkBitmap skbitmap; skbitmap.allocN32Pixels(paint_size.width(), paint_size.height()); SkiaPaintCanvas canvas(skbitmap); - canvas.clear(SK_ColorTRANSPARENT); + canvas.clear(SkColors::kTransparent); scrollbar->PaintPart(&canvas, ScrollbarPart::THUMB, gfx::Rect(paint_size)); // Make sure that the pixels are no longer mutable to unavoid unnecessary @@ -188,7 +188,7 @@ SkBitmap skbitmap; skbitmap.allocN32Pixels(paint_size.width(), paint_size.height()); SkiaPaintCanvas canvas(skbitmap); - canvas.clear(SK_ColorTRANSPARENT); + canvas.clear(SkColors::kTransparent); scrollbar_.Write(*this)->PaintPart( &canvas, ScrollbarPart::TRACK_BUTTONS_TICKMARKS, gfx::Rect(paint_size));
diff --git a/cc/layers/painted_scrollbar_layer.cc b/cc/layers/painted_scrollbar_layer.cc index fb570bf..ca107ea 100644 --- a/cc/layers/painted_scrollbar_layer.cc +++ b/cc/layers/painted_scrollbar_layer.cc
@@ -256,7 +256,7 @@ << "Failed to allocate memory for scrollbar at dimension : " << dimension; SkiaPaintCanvas canvas(skbitmap); - canvas.clear(SK_ColorTRANSPARENT); + canvas.clear(SkColors::kTransparent); float scale_x = content_size.width() / static_cast<float>(size.width()); float scale_y = content_size.height() / static_cast<float>(size.height());
diff --git a/cc/paint/paint_canvas.h b/cc/paint/paint_canvas.h index 696042ac..3815f67 100644 --- a/cc/paint/paint_canvas.h +++ b/cc/paint/paint_canvas.h
@@ -136,13 +136,8 @@ virtual bool getDeviceClipBounds(SkIRect* bounds) const = 0; virtual void drawColor(SkColor4f color, SkBlendMode mode) = 0; void drawColor(SkColor4f color) { drawColor(color, SkBlendMode::kSrcOver); } - // TODO(crbug.com/1308932): Get rid of the SkColor versions of these - // functions. They both end up calling the SkColor4f versions anyway. - virtual void drawColor(SkColor color, SkBlendMode mode) = 0; - void drawColor(SkColor color) { drawColor(color, SkBlendMode::kSrcOver); } // TODO(enne): This is a synonym for drawColor with kSrc. Remove it. - virtual void clear(SkColor color) = 0; virtual void clear(SkColor4f color) = 0; virtual void drawLine(SkScalar x0,
diff --git a/cc/paint/record_paint_canvas.cc b/cc/paint/record_paint_canvas.cc index 1a36faae..d9c21d7 100644 --- a/cc/paint/record_paint_canvas.cc +++ b/cc/paint/record_paint_canvas.cc
@@ -231,14 +231,6 @@ push<DrawColorOp>(color, mode); } -void RecordPaintCanvas::drawColor(SkColor color, SkBlendMode mode) { - drawColor(SkColor4f::FromColor(color), mode); -} - -void RecordPaintCanvas::clear(SkColor color) { - push<DrawColorOp>(SkColor4f::FromColor(color), SkBlendMode::kSrc); -} - void RecordPaintCanvas::clear(SkColor4f color) { push<DrawColorOp>(color, SkBlendMode::kSrc); }
diff --git a/cc/paint/record_paint_canvas.h b/cc/paint/record_paint_canvas.h index c1a7657..cda8ce7a 100644 --- a/cc/paint/record_paint_canvas.h +++ b/cc/paint/record_paint_canvas.h
@@ -63,9 +63,7 @@ bool getLocalClipBounds(SkRect* bounds) const override; SkIRect getDeviceClipBounds() const override; bool getDeviceClipBounds(SkIRect* bounds) const override; - void drawColor(SkColor color, SkBlendMode mode) override; void drawColor(SkColor4f color, SkBlendMode mode) override; - void clear(SkColor color) override; void clear(SkColor4f color) override; void drawLine(SkScalar x0,
diff --git a/cc/paint/skia_paint_canvas.cc b/cc/paint/skia_paint_canvas.cc index 8f9dddaf..2916a8b 100644 --- a/cc/paint/skia_paint_canvas.cc +++ b/cc/paint/skia_paint_canvas.cc
@@ -160,18 +160,10 @@ return canvas_->getDeviceClipBounds(bounds); } -void SkiaPaintCanvas::drawColor(SkColor color, SkBlendMode mode) { - canvas_->drawColor(color, mode); -} - void SkiaPaintCanvas::drawColor(SkColor4f color, SkBlendMode mode) { canvas_->drawColor(color, mode); } -void SkiaPaintCanvas::clear(SkColor color) { - canvas_->clear(color); -} - void SkiaPaintCanvas::clear(SkColor4f color) { canvas_->clear(color); }
diff --git a/cc/paint/skia_paint_canvas.h b/cc/paint/skia_paint_canvas.h index 9068cf9..09e7d3b 100644 --- a/cc/paint/skia_paint_canvas.h +++ b/cc/paint/skia_paint_canvas.h
@@ -103,9 +103,7 @@ bool getLocalClipBounds(SkRect* bounds) const override; SkIRect getDeviceClipBounds() const override; bool getDeviceClipBounds(SkIRect* bounds) const override; - void drawColor(SkColor color, SkBlendMode mode) override; void drawColor(SkColor4f color, SkBlendMode mode) override; - void clear(SkColor color) override; void clear(SkColor4f color) override; void drawLine(SkScalar x0,
diff --git a/cc/paint/solid_color_analyzer_unittest.cc b/cc/paint/solid_color_analyzer_unittest.cc index a343e1d..aac6c8a 100644 --- a/cc/paint/solid_color_analyzer_unittest.cc +++ b/cc/paint/solid_color_analyzer_unittest.cc
@@ -81,21 +81,21 @@ TEST_F(SolidColorAnalyzerTest, ClearTransparent) { Initialize(); SkColor4f color = SkColor4f::FromColor(SkColorSetARGB(0, 12, 34, 56)); - canvas()->clear(color.toSkColor()); + canvas()->clear(color); EXPECT_EQ(SkColors::kTransparent, GetColor()); } TEST_F(SolidColorAnalyzerTest, ClearSolid) { Initialize(); SkColor4f color = SkColor4f::FromColor(SkColorSetARGB(255, 65, 43, 21)); - canvas()->clear(color.toSkColor()); + canvas()->clear(color); EXPECT_EQ(color, GetColor()); } TEST_F(SolidColorAnalyzerTest, ClearTranslucent) { Initialize(); SkColor4f color = SkColor4f::FromColor(SkColorSetARGB(128, 11, 22, 33)); - canvas()->clear(color.toSkColor()); + canvas()->clear(color); #if BUILDFLAG(IS_MAC) // TODO(andrescj): remove the special treatment of OS_MAC once // https://crbug.com/922899 is fixed. @@ -108,7 +108,7 @@ TEST_F(SolidColorAnalyzerTest, DrawColor) { Initialize(); SkColor4f color = SkColor4f::FromColor(SkColorSetARGB(255, 11, 22, 33)); - canvas()->drawColor(color.toSkColor()); + canvas()->drawColor(color); EXPECT_EQ(color, GetColor()); } @@ -197,8 +197,8 @@ TEST_F(SolidColorAnalyzerTest, TwoOpsNotSolid) { Initialize(); SkColor4f color = SkColor4f::FromColor(SkColorSetARGB(255, 65, 43, 21)); - canvas()->clear(color.toSkColor()); - canvas()->clear(color.toSkColor()); + canvas()->clear(color); + canvas()->clear(color); EXPECT_FALSE(IsSolidColor()); }
diff --git a/chrome/VERSION b/chrome/VERSION index 5437753..070a424 100644 --- a/chrome/VERSION +++ b/chrome/VERSION
@@ -1,4 +1,4 @@ MAJOR=105 MINOR=0 -BUILD=5194 +BUILD=5195 PATCH=0
diff --git a/chrome/android/expectations/monochrome_public_bundle__base.AndroidManifest.expected b/chrome/android/expectations/monochrome_public_bundle__base.AndroidManifest.expected index 725cc01..29ea428 100644 --- a/chrome/android/expectations/monochrome_public_bundle__base.AndroidManifest.expected +++ b/chrome/android/expectations/monochrome_public_bundle__base.AndroidManifest.expected
@@ -857,7 +857,7 @@ <meta-data android:name="com.google.android.gms.cast.framework.OPTIONS_PROVIDER_CLASS_NAME" android:value="org.chromium.components.media_router.caf.CastOptionsProvider"/> <meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version"/> <meta-data android:name="com.google.ar.core" android:value="optional"/> - <meta-data android:name="com.google.ar.core.min_apk_version" android:value="202940000"/> + <meta-data android:name="com.google.ar.core.min_apk_version" android:value="221020000"/> <meta-data android:name="com.samsung.android.sdk.multiwindow.enable" android:value="true"/> <meta-data android:name="com.samsung.android.sdk.multiwindow.penwindow.enable" android:value="true"/> <meta-data android:name="org.chromium.content.browser.NUM_PRIVILEGED_SERVICES" android:value="5"/>
diff --git a/chrome/android/expectations/trichrome_chrome_bundle__base.AndroidManifest.expected b/chrome/android/expectations/trichrome_chrome_bundle__base.AndroidManifest.expected index 39ad303..fa773f5f 100644 --- a/chrome/android/expectations/trichrome_chrome_bundle__base.AndroidManifest.expected +++ b/chrome/android/expectations/trichrome_chrome_bundle__base.AndroidManifest.expected
@@ -804,7 +804,7 @@ <meta-data android:name="com.google.android.gms.cast.framework.OPTIONS_PROVIDER_CLASS_NAME" android:value="org.chromium.components.media_router.caf.CastOptionsProvider"/> <meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version"/> <meta-data android:name="com.google.ar.core" android:value="optional"/> - <meta-data android:name="com.google.ar.core.min_apk_version" android:value="202940000"/> + <meta-data android:name="com.google.ar.core.min_apk_version" android:value="221020000"/> <meta-data android:name="com.samsung.android.sdk.multiwindow.enable" android:value="true"/> <meta-data android:name="com.samsung.android.sdk.multiwindow.penwindow.enable" android:value="true"/> <meta-data android:name="org.chromium.content.browser.NUM_PRIVILEGED_SERVICES" android:value="5"/>
diff --git a/chrome/android/features/autofill_assistant/BUILD.gn b/chrome/android/features/autofill_assistant/BUILD.gn index f2255718..24a9eec 100644 --- a/chrome/android/features/autofill_assistant/BUILD.gn +++ b/chrome/android/features/autofill_assistant/BUILD.gn
@@ -90,6 +90,7 @@ "javatests/src/org/chromium/chrome/browser/autofill_assistant/AutofillAssistantFormActionTest.java", "javatests/src/org/chromium/chrome/browser/autofill_assistant/AutofillAssistantGenericUiTest.java", "javatests/src/org/chromium/chrome/browser/autofill_assistant/AutofillAssistantHeaderUiTest.java", + "javatests/src/org/chromium/chrome/browser/autofill_assistant/AutofillAssistantInfoBoxEndToEndTest.java", "javatests/src/org/chromium/chrome/browser/autofill_assistant/AutofillAssistantInfoBoxUiTest.java", "javatests/src/org/chromium/chrome/browser/autofill_assistant/AutofillAssistantInputActionIntegrationTest.java", "javatests/src/org/chromium/chrome/browser/autofill_assistant/AutofillAssistantInterruptIntegrationTest.java", @@ -101,6 +102,7 @@ "javatests/src/org/chromium/chrome/browser/autofill_assistant/AutofillAssistantPersonalDataManagerTest.java", "javatests/src/org/chromium/chrome/browser/autofill_assistant/AutofillAssistantProgressBarIntegrationTest.java", "javatests/src/org/chromium/chrome/browser/autofill_assistant/AutofillAssistantPromptNavigationIntegrationTest.java", + "javatests/src/org/chromium/chrome/browser/autofill_assistant/AutofillAssistantQrCodeIntegrationTest.java", "javatests/src/org/chromium/chrome/browser/autofill_assistant/AutofillAssistantTabHelperCustomTabTest.java", "javatests/src/org/chromium/chrome/browser/autofill_assistant/AutofillAssistantTabHelperRegularTabTest.java", "javatests/src/org/chromium/chrome/browser/autofill_assistant/AutofillAssistantTestRule.java",
diff --git a/chrome/android/features/autofill_assistant/javatests/src/org/chromium/chrome/browser/autofill_assistant/AutofillAssistantInfoBoxEndToEndTest.java b/chrome/android/features/autofill_assistant/javatests/src/org/chromium/chrome/browser/autofill_assistant/AutofillAssistantInfoBoxEndToEndTest.java new file mode 100644 index 0000000..879d1d8 --- /dev/null +++ b/chrome/android/features/autofill_assistant/javatests/src/org/chromium/chrome/browser/autofill_assistant/AutofillAssistantInfoBoxEndToEndTest.java
@@ -0,0 +1,163 @@ +// Copyright 2020 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +package org.chromium.chrome.browser.autofill_assistant; + +import static androidx.test.espresso.matcher.ViewMatchers.isCompletelyDisplayed; +import static androidx.test.espresso.matcher.ViewMatchers.isDisplayed; +import static androidx.test.espresso.matcher.ViewMatchers.withId; +import static androidx.test.espresso.matcher.ViewMatchers.withText; + +import static org.chromium.chrome.browser.autofill_assistant.AutofillAssistantUiTestUtil.startAutofillAssistant; +import static org.chromium.chrome.browser.autofill_assistant.AutofillAssistantUiTestUtil.waitUntilViewMatchesCondition; + +import android.view.View; + +import androidx.test.filters.MediumTest; + +import org.hamcrest.Matcher; +import org.junit.Rule; +import org.junit.Test; +import org.junit.rules.RuleChain; +import org.junit.rules.TestRule; +import org.junit.runner.RunWith; + +import org.chromium.base.test.util.CommandLineFlags; +import org.chromium.chrome.browser.autofill_assistant.proto.ActionProto; +import org.chromium.chrome.browser.autofill_assistant.proto.BitmapDrawableProto; +import org.chromium.chrome.browser.autofill_assistant.proto.ClientDimensionProto; +import org.chromium.chrome.browser.autofill_assistant.proto.ConfigBasedUrlProto; +import org.chromium.chrome.browser.autofill_assistant.proto.DrawableProto; +import org.chromium.chrome.browser.autofill_assistant.proto.InfoBoxProto; +import org.chromium.chrome.browser.autofill_assistant.proto.ShowInfoBoxProto; +import org.chromium.chrome.browser.autofill_assistant.proto.SupportedScriptProto; +import org.chromium.chrome.browser.autofill_assistant.proto.SupportedScriptProto.PresentationProto; +import org.chromium.chrome.browser.customtabs.CustomTabActivityTestRule; +import org.chromium.chrome.browser.flags.ChromeSwitches; +import org.chromium.chrome.test.ChromeJUnit4ClassRunner; +import org.chromium.components.autofill_assistant.R; + +import java.util.ArrayList; +import java.util.Collections; + +/** Tests autofill assistant's show info box feature. */ +@CommandLineFlags.Add({ChromeSwitches.DISABLE_FIRST_RUN_EXPERIENCE}) +@RunWith(ChromeJUnit4ClassRunner.class) +public class AutofillAssistantInfoBoxEndToEndTest { + private static final String TEST_PAGE = "form_target_website.html"; + private static final String IMAGE_URL = + "data:png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAQAAABKfvVzAAAAGUlEQVR4AWMgAYyC/4QhmRoQYNTTo54eBQD1KGuVIr+14AAAAABJRU5ErkJggg=="; + private static final ClientDimensionProto DIMENSION = + ClientDimensionProto.newBuilder().setDp(150).build(); + private static final ConfigBasedUrlProto MDPI_CONFIG = + ConfigBasedUrlProto.newBuilder().putUrl("mdpi", IMAGE_URL).build(); + + private static final ConfigBasedUrlProto DARK_MDPI_CONFIG = + ConfigBasedUrlProto.newBuilder().putUrl("night-mdpi", IMAGE_URL).build(); + + private static DrawableProto drawable(ConfigBasedUrlProto config) { + BitmapDrawableProto.Builder bitmapBuilder = BitmapDrawableProto.newBuilder(); + bitmapBuilder.setConfigBasedUrl(config); + bitmapBuilder.setHeight(DIMENSION); + bitmapBuilder.setWidth(DIMENSION); + return DrawableProto.newBuilder().setBitmap(bitmapBuilder.build()).build(); + } + + private static ShowInfoBoxProto showInfoBox(DrawableProto drawable) { + return ShowInfoBoxProto.newBuilder() + .setInfoBox(InfoBoxProto.newBuilder().setDrawable(drawable)) + .build(); + } + + private static ShowInfoBoxProto showInfoBox(String explanation) { + return ShowInfoBoxProto.newBuilder() + .setInfoBox(InfoBoxProto.newBuilder().setExplanation(explanation)) + .build(); + } + + private static ShowInfoBoxProto showInfoBox(String explanation, DrawableProto drawable) { + return ShowInfoBoxProto.newBuilder() + .setInfoBox( + InfoBoxProto.newBuilder().setExplanation(explanation).setDrawable(drawable)) + .build(); + } + + private static ActionProto actionProto(ShowInfoBoxProto showInfoBox) { + return ActionProto.newBuilder().setShowInfoBox(showInfoBox).build(); + } + + private static AutofillAssistantTestScript testScript(ArrayList<ActionProto> list) { + return new AutofillAssistantTestScript( + SupportedScriptProto.newBuilder() + .setPath(TEST_PAGE) + .setPresentation(PresentationProto.newBuilder().setAutostart(true)) + .build(), + list); + } + + private final CustomTabActivityTestRule mTestRule = new CustomTabActivityTestRule(); + + @Rule + public final TestRule mRulesChain = RuleChain.outerRule(mTestRule).around( + new AutofillAssistantCustomTabTestRule(mTestRule, TEST_PAGE)); + + private void runAutofillAssistant(AutofillAssistantTestScript script) { + AutofillAssistantTestService testService = + new AutofillAssistantTestService(Collections.singletonList(script)); + startAutofillAssistant(mTestRule.getActivity(), testService); + } + + private Matcher<View> getImageView() { + return withId(R.id.info_box_image); + } + + private Matcher<View> getTextView() { + return withId(R.id.info_box_explanation); + } + + @Test + @MediumTest + public void showInfoBoxShown_onlyText() throws Exception { + ArrayList<ActionProto> list = new ArrayList<>(); + list.add(actionProto(showInfoBox("explanation"))); + + runAutofillAssistant(testScript(list)); + + waitUntilViewMatchesCondition(withText("explanation"), isCompletelyDisplayed()); + } + + @Test + @MediumTest + public void showInfoBoxShown_textAndImage() throws Exception { + ArrayList<ActionProto> list = new ArrayList<>(); + list.add(actionProto(showInfoBox("explanation", drawable(MDPI_CONFIG)))); + + runAutofillAssistant(testScript(list)); + + waitUntilViewMatchesCondition(withText("explanation"), isCompletelyDisplayed()); + waitUntilViewMatchesCondition(getImageView(), isDisplayed()); + } + + @Test + @MediumTest + public void showInfoBoxShown_image() throws Exception { + ArrayList<ActionProto> list = new ArrayList<>(); + list.add(actionProto(showInfoBox(drawable(MDPI_CONFIG)))); + + runAutofillAssistant(testScript(list)); + + waitUntilViewMatchesCondition(getImageView(), isDisplayed()); + } + + @Test + @MediumTest + public void showInfoBoxShown_fallbacks() throws Exception { + ArrayList<ActionProto> list = new ArrayList<>(); + list.add(actionProto(showInfoBox(drawable(DARK_MDPI_CONFIG)))); + + runAutofillAssistant(testScript(list)); + + waitUntilViewMatchesCondition(getImageView(), isDisplayed()); + } +}
diff --git a/chrome/android/features/autofill_assistant/javatests/src/org/chromium/chrome/browser/autofill_assistant/AutofillAssistantQrCodeIntegrationTest.java b/chrome/android/features/autofill_assistant/javatests/src/org/chromium/chrome/browser/autofill_assistant/AutofillAssistantQrCodeIntegrationTest.java new file mode 100644 index 0000000..4cce1b4 --- /dev/null +++ b/chrome/android/features/autofill_assistant/javatests/src/org/chromium/chrome/browser/autofill_assistant/AutofillAssistantQrCodeIntegrationTest.java
@@ -0,0 +1,114 @@ +// Copyright 2022 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +package org.chromium.chrome.browser.autofill_assistant; + +import static androidx.test.espresso.Espresso.onView; +import static androidx.test.espresso.action.ViewActions.click; +import static androidx.test.espresso.matcher.ViewMatchers.assertThat; +import static androidx.test.espresso.matcher.ViewMatchers.isCompletelyDisplayed; +import static androidx.test.espresso.matcher.ViewMatchers.withContentDescription; +import static androidx.test.espresso.matcher.ViewMatchers.withText; + +import static org.hamcrest.Matchers.is; +import static org.hamcrest.Matchers.iterableWithSize; + +import static org.chromium.chrome.browser.autofill_assistant.AutofillAssistantUiTestUtil.startAutofillAssistant; +import static org.chromium.chrome.browser.autofill_assistant.AutofillAssistantUiTestUtil.waitUntilViewMatchesCondition; + +import androidx.test.filters.MediumTest; + +import org.junit.Rule; +import org.junit.Test; +import org.junit.rules.RuleChain; +import org.junit.rules.TestRule; +import org.junit.runner.RunWith; + +import org.chromium.base.test.util.CommandLineFlags; +import org.chromium.chrome.browser.autofill_assistant.proto.ActionProto; +import org.chromium.chrome.browser.autofill_assistant.proto.ChipProto; +import org.chromium.chrome.browser.autofill_assistant.proto.ChipType; +import org.chromium.chrome.browser.autofill_assistant.proto.ProcessedActionProto; +import org.chromium.chrome.browser.autofill_assistant.proto.ProcessedActionStatusProto; +import org.chromium.chrome.browser.autofill_assistant.proto.PromptProto; +import org.chromium.chrome.browser.autofill_assistant.proto.PromptQrCodeScanProto; +import org.chromium.chrome.browser.autofill_assistant.proto.PromptQrCodeScanProto.CameraScanUiStrings; +import org.chromium.chrome.browser.autofill_assistant.proto.SupportedScriptProto; +import org.chromium.chrome.browser.autofill_assistant.proto.SupportedScriptProto.PresentationProto; +import org.chromium.chrome.browser.customtabs.CustomTabActivityTestRule; +import org.chromium.chrome.browser.flags.ChromeSwitches; +import org.chromium.chrome.test.ChromeJUnit4ClassRunner; + +import java.util.ArrayList; +import java.util.Collections; +import java.util.List; + +/** + * Tests autofill assistant's QR Code Scan functionality. + */ +@CommandLineFlags.Add({ChromeSwitches.DISABLE_FIRST_RUN_EXPERIENCE}) +@RunWith(ChromeJUnit4ClassRunner.class) +public class AutofillAssistantQrCodeIntegrationTest { + private static final String TEST_PAGE = "autofill_assistant_target_website.html"; + + private final CustomTabActivityTestRule mTestRule = new CustomTabActivityTestRule(); + + @Rule + public final TestRule mRulesChain = RuleChain.outerRule(mTestRule).around( + new AutofillAssistantCustomTabTestRule(mTestRule, TEST_PAGE)); + + @Test + @MediumTest + public void testCameraScanToolbar() throws Exception { + ArrayList<ActionProto> list = new ArrayList<>(); + CameraScanUiStrings cameraScanUiStrings = + CameraScanUiStrings.newBuilder() + .setTitleText("Scan QR Code") + .setPermissionText("Please provide camera permissions") + .setPermissionButtonText("Continue") + .setOpenSettingsText("Please enable camera permissions in device settings") + .setOpenSettingsButtonText("Open Settings") + .setCameraPreviewInstructionText("Focus the QR Code inside the box") + .build(); + list.add(ActionProto.newBuilder() + .setPromptQrCodeScan( + PromptQrCodeScanProto.newBuilder() + .setOutputClientMemoryKey("output_client_memory_key") + .setCameraScanUiStrings(cameraScanUiStrings)) + .build()); + AutofillAssistantTestScript script = new AutofillAssistantTestScript( + SupportedScriptProto.newBuilder() + .setPath(TEST_PAGE) + .setPresentation(PresentationProto.newBuilder().setAutostart(true)) + .build(), + list); + + AutofillAssistantTestService testService = + new AutofillAssistantTestService(Collections.singletonList(script)); + startAutofillAssistant(mTestRule.getActivity(), testService); + + // Verify that toolbar title is displayed. + waitUntilViewMatchesCondition(withText("Scan QR Code"), isCompletelyDisplayed()); + + // Prepare next set of actions, cancel QR Code Scan action and verify action status. + ArrayList<ActionProto> nextActions = new ArrayList<>(); + nextActions.add( + ActionProto.newBuilder() + .setPrompt(PromptProto.newBuilder() + .setMessage("Finished") + .addChoices(PromptProto.Choice.newBuilder().setChip( + ChipProto.newBuilder() + .setType(ChipType.DONE_ACTION) + .setText("End")))) + .build()); + testService.setNextActions(nextActions); + int numNextActionsCalled = testService.getNextActionsCounter(); + onView(withContentDescription("Close")).perform(click()); + testService.waitUntilGetNextActions(numNextActionsCalled + 1); + List<ProcessedActionProto> processedActions = testService.getProcessedActions(); + assertThat(processedActions, iterableWithSize(1)); + assertThat(processedActions.get(0).getStatus(), + is(ProcessedActionStatusProto.OTHER_ACTION_STATUS)); + } +}
diff --git a/chrome/android/features/tab_ui/java/res/values/dimens.xml b/chrome/android/features/tab_ui/java/res/values/dimens.xml index bdb53d31..3dbd4221 100644 --- a/chrome/android/features/tab_ui/java/res/values/dimens.xml +++ b/chrome/android/features/tab_ui/java/res/values/dimens.xml
@@ -47,6 +47,10 @@ <dimen name="price_tracking_dialog_items_margin">20dp</dimen> <dimen name="price_tracking_dialog_items_bottom_margin">34dp</dimen> + <!-- Dimens for incognito reauth promo message icon --> + <dimen name="incognito_reauth_promo_message_icon_width">52dp</dimen> + <dimen name="incognito_reauth_promo_message_icon_height">52dp</dimen> + <!-- Dimens for theme refactor 2021 --> <dimen name="tab_grid_card_bg_radius">16dp</dimen> <dimen name="tab_grid_card_favicon_padding">11dp</dimen>
diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/IncognitoReauthPromoMessageService.java b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/IncognitoReauthPromoMessageService.java index f2b89224..dab8cbc 100644 --- a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/IncognitoReauthPromoMessageService.java +++ b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/IncognitoReauthPromoMessageService.java
@@ -59,6 +59,14 @@ mReviewActionProvider = reviewActionProvider; mDismissActionProvider = dismissActionProvider; } + + MessageCardView.ReviewActionProvider getReviewActionProvider() { + return mReviewActionProvider; + } + + MessageCardView.DismissActionProvider getDismissActionProvider() { + return mDismissActionProvider; + } } private final @NonNull Profile mProfile;
diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/IncognitoReauthPromoViewModel.java b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/IncognitoReauthPromoViewModel.java index b936ad9..f76b57a3 100644 --- a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/IncognitoReauthPromoViewModel.java +++ b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/IncognitoReauthPromoViewModel.java
@@ -3,12 +3,14 @@ // found in the LICENSE file. package org.chromium.chrome.browser.tasks.tab_management; - +import static org.chromium.chrome.browser.tasks.tab_management.TabListModel.CardProperties.CARD_ALPHA; import static org.chromium.chrome.browser.tasks.tab_management.TabListModel.CardProperties.CARD_TYPE; -import static org.chromium.chrome.browser.tasks.tab_management.TabListModel.CardProperties.ModelType.MESSAGE; import android.content.Context; +import androidx.appcompat.content.res.AppCompatResources; + +import org.chromium.chrome.tab_ui.R; import org.chromium.ui.modelutil.PropertyModel; /** @@ -28,13 +30,46 @@ public static PropertyModel create(Context context, MessageCardView.DismissActionProvider uiDismissActionProvider, IncognitoReauthPromoMessageService.IncognitoReauthMessageData data) { + String titleText = context.getString(R.string.incognito_reauth_promo_title); + String descriptionText = context.getString(R.string.incognito_reauth_promo_description); + String actionText = context.getString(R.string.incognito_reauth_lock_action_text); + String dismissActionText = context.getString(R.string.no_thanks); + return new PropertyModel.Builder(MessageCardViewProperties.ALL_KEYS) .with(MessageCardViewProperties.MESSAGE_TYPE, MessageService.MessageType.INCOGNITO_REAUTH_PROMO_MESSAGE) .with(MessageCardViewProperties .MESSAGE_CARD_VISIBILITY_CONTROL_IN_REGULAR_AND_INCOGNITO_MODE, MessageCardViewProperties.MessageCardScope.INCOGNITO) - .with(CARD_TYPE, MESSAGE) + .with(MessageCardViewProperties.MESSAGE_IDENTIFIER, + MessageService.DEFAULT_MESSAGE_IDENTIFIER) + .with(MessageCardViewProperties.MESSAGE_TYPE, + MessageService.MessageType.INCOGNITO_REAUTH_PROMO_MESSAGE) + .with(MessageCardViewProperties.ACTION_TEXT, actionText) + .with(MessageCardViewProperties.DESCRIPTION_TEXT, descriptionText) + .with(MessageCardViewProperties.SECONDARY_ACTION_TEXT, dismissActionText) + .with(MessageCardViewProperties.SECONDARY_ACTION_BUTTON_CLICK_HANDLER, + view -> { + data.getDismissActionProvider().dismiss( + MessageService.MessageType.INCOGNITO_REAUTH_PROMO_MESSAGE); + }) + .with(MessageCardViewProperties.SHOULD_KEEP_AFTER_REVIEW, false) + .with(MessageCardViewProperties.ICON_WIDTH_IN_PIXELS, + context.getResources().getDimensionPixelSize( + R.dimen.incognito_reauth_promo_message_icon_width)) + .with(MessageCardViewProperties.ICON_HEIGHT_IN_PIXELS, + context.getResources().getDimensionPixelSize( + R.dimen.incognito_reauth_promo_message_icon_height)) + .with(MessageCardViewProperties.IS_ICON_VISIBLE, true) + .with(MessageCardViewProperties.IS_CLOSE_BUTTON_VISIBLE, false) + .with(MessageCardViewProperties.IS_INCOGNITO, true) + .with(MessageCardViewProperties.TITLE_TEXT, titleText) + .with(MessageCardViewProperties.ICON_PROVIDER, + () + -> AppCompatResources.getDrawable( + context, R.drawable.ic_incognito_reauth_promo_icon)) + .with(CARD_TYPE, TabListModel.CardProperties.ModelType.MESSAGE) + .with(CARD_ALPHA, 1f) .build(); } } \ No newline at end of file
diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/LargeMessageCardView.java b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/LargeMessageCardView.java index 11c6db3..47af328 100644 --- a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/LargeMessageCardView.java +++ b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/LargeMessageCardView.java
@@ -24,7 +24,6 @@ import org.chromium.components.browser_ui.styles.ChromeColors; import org.chromium.components.browser_ui.widget.MaterialCardViewNoShadow; import org.chromium.components.browser_ui.widget.textbubble.TextBubble; -import org.chromium.ui.base.ViewUtils; import org.chromium.ui.widget.ButtonCompat; import org.chromium.ui.widget.ChromeImageView; import org.chromium.ui.widget.ViewRectProvider; @@ -234,6 +233,8 @@ mDescription, isIncognito, /*isLargeMessageCard=*/true); MessageCardViewUtils.setActionButtonTextAppearance( mActionButton, isIncognito, /*isLargeMessageCard=*/true); + MessageCardViewUtils.setActionButtonBackgroundColor( + mActionButton, isIncognito, /*isLargeMessageCard=*/true); MessageCardViewUtils.setSecondaryActionButtonColor(mSecondaryActionButton, isIncognito); MessageCardViewUtils.setCloseButtonTint(mCloseButton, isIncognito); } @@ -244,10 +245,10 @@ * TODO(crbug.com/1227656): Confirm with UX, whether large message card can follow a general * icon size for all clients. If so, then remove this method. * - * @param width The desired width to set. + * @param widthInPixels The desired width in pixels to set. */ - void updateIconWidth(int width) { - mIcon.getLayoutParams().width = ViewUtils.dpToPx(mContext, width); + void updateIconWidth(int widthInPixels) { + mIcon.getLayoutParams().width = widthInPixels; } /** @@ -256,10 +257,10 @@ * TODO(crbug.com/1227656): Confirm with UX, whether large message card can follow a general * icon size for all clients. If so, then remove this method. * - * @param height The desired height to set. + * @param heightInPixels The desired height in pixels to set. */ - void updateIconHeight(int height) { - mIcon.getLayoutParams().height = ViewUtils.dpToPx(mIcon.getContext(), height); + void updateIconHeight(int heightInPixels) { + mIcon.getLayoutParams().height = heightInPixels; } /**
diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/LargeMessageCardViewBinder.java b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/LargeMessageCardViewBinder.java index 1ee4b849..20361430 100644 --- a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/LargeMessageCardViewBinder.java +++ b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/LargeMessageCardViewBinder.java
@@ -54,10 +54,10 @@ model.get(MessageCardViewProperties.IS_CLOSE_BUTTON_VISIBLE)); } else if (MessageCardViewProperties.IS_INCOGNITO == propertyKey) { itemView.updateMessageCardColor(model.get(MessageCardViewProperties.IS_INCOGNITO)); - } else if (MessageCardViewProperties.ICON_WIDTH == propertyKey) { - itemView.updateIconWidth(model.get(MessageCardViewProperties.ICON_WIDTH)); - } else if (MessageCardViewProperties.ICON_HEIGHT == propertyKey) { - itemView.updateIconHeight(model.get(MessageCardViewProperties.ICON_HEIGHT)); + } else if (MessageCardViewProperties.ICON_WIDTH_IN_PIXELS == propertyKey) { + itemView.updateIconWidth(model.get(MessageCardViewProperties.ICON_WIDTH_IN_PIXELS)); + } else if (MessageCardViewProperties.ICON_HEIGHT_IN_PIXELS == propertyKey) { + itemView.updateIconHeight(model.get(MessageCardViewProperties.ICON_HEIGHT_IN_PIXELS)); } }
diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/MessageCardViewProperties.java b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/MessageCardViewProperties.java index 23010a1..ae53873d 100644 --- a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/MessageCardViewProperties.java +++ b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/MessageCardViewProperties.java
@@ -78,9 +78,9 @@ new PropertyModel.WritableBooleanPropertyKey(); public static final PropertyModel.WritableBooleanPropertyKey IS_ICON_VISIBLE = new PropertyModel.WritableBooleanPropertyKey(); - public static final PropertyModel.WritableIntPropertyKey ICON_WIDTH = + public static final PropertyModel.WritableIntPropertyKey ICON_WIDTH_IN_PIXELS = new PropertyModel.WritableIntPropertyKey(); - public static final PropertyModel.WritableIntPropertyKey ICON_HEIGHT = + public static final PropertyModel.WritableIntPropertyKey ICON_HEIGHT_IN_PIXELS = new PropertyModel.WritableIntPropertyKey(); public static final PropertyModel.WritableBooleanPropertyKey IS_INCOGNITO = new PropertyModel.WritableBooleanPropertyKey(); @@ -101,7 +101,7 @@ MESSAGE_IDENTIFIER, ICON_PROVIDER, UI_ACTION_PROVIDER, UI_DISMISS_ACTION_PROVIDER, SECONDARY_ACTION_BUTTON_CLICK_HANDLER, MESSAGE_SERVICE_ACTION_PROVIDER, MESSAGE_SERVICE_DISMISS_ACTION_PROVIDER, DISMISS_BUTTON_CONTENT_DESCRIPTION, - SHOULD_KEEP_AFTER_REVIEW, IS_CLOSE_BUTTON_VISIBLE, IS_ICON_VISIBLE, ICON_WIDTH, - ICON_HEIGHT, CARD_TYPE, CARD_ALPHA, IS_INCOGNITO, TITLE_TEXT, - MESSAGE_CARD_VISIBILITY_CONTROL_IN_REGULAR_AND_INCOGNITO_MODE, PRICE_DROP}; + SHOULD_KEEP_AFTER_REVIEW, IS_CLOSE_BUTTON_VISIBLE, IS_ICON_VISIBLE, + ICON_WIDTH_IN_PIXELS, ICON_HEIGHT_IN_PIXELS, CARD_TYPE, CARD_ALPHA, IS_INCOGNITO, + TITLE_TEXT, MESSAGE_CARD_VISIBILITY_CONTROL_IN_REGULAR_AND_INCOGNITO_MODE, PRICE_DROP}; }
diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/MessageCardViewUtils.java b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/MessageCardViewUtils.java index db2e155e..f2e5fcd4f 100644 --- a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/MessageCardViewUtils.java +++ b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/MessageCardViewUtils.java
@@ -4,6 +4,7 @@ package org.chromium.chrome.browser.tasks.tab_management; +import android.content.res.ColorStateList; import android.widget.TextView; import org.chromium.base.ApiCompatibilityUtils; @@ -46,7 +47,7 @@ } /** - * Set text appearance for action button. + * Set appearance for action button. * * @param actionButton The button whose text appearance we want to modify. * @param isIncognito Whether the text appearance is used for incognito mode. @@ -62,6 +63,23 @@ } /** + * Set background color for action button. + * + * @param actionButton The button whose background color we want to modify. + * @param isIncognito Whether the background color is used for incognito mode. + */ + public static void setActionButtonBackgroundColor( + ButtonCompat actionButton, boolean isIncognito, boolean isLargeMessageCard) { + if (!isLargeMessageCard) { + assert false : "Currently not supported."; + return; + } + actionButton.setButtonColor( + ColorStateList.valueOf(TabUiThemeProvider.getLargeMessageCardActionButtonColor( + actionButton.getContext(), isIncognito))); + } + + /** * Set text appearance for secondary action button. * * @param secondaryActionButton The button whose text appearance we want to modify. @@ -75,18 +93,6 @@ } /** - * Set background color for action button. - * - * @param actionButton The button whose background color we want to modify. - * @param isIncognito Whether the background color is used for incognito mode. - */ - public static void setActionButtonBackgroundColor( - ButtonCompat actionButton, boolean isIncognito) { - actionButton.setButtonColor(TabUiThemeProvider.getToggleActionButtonCheckedDrawableTintList( - actionButton.getContext(), isIncognito)); - } - - /** * Set tint for close button. * * TODO(crbug.com/1139194): Set action button ripple color.
diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabUiThemeProvider.java b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabUiThemeProvider.java index dabf376..0399db94 100644 --- a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabUiThemeProvider.java +++ b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabUiThemeProvider.java
@@ -501,14 +501,29 @@ * mode. * * @param isIncognito Whether the text appearance is used for incognito mode. - * @return The text appearance for the message card action button. + * @return The appearance for the message card action button text. */ public static int getLargeMessageCardActionButtonTextAppearance(boolean isIncognito) { - return isIncognito ? R.style.TextAppearance_Button_Text_Blue_Dark + return isIncognito ? R.style.TextAppearance_Button_Text_Filled_Baseline_Dark : R.style.TextAppearance_Button_Text_Filled; } /** + * Returns the color for the large message card action button based on the + * incognito mode. + * + * @param context The {@link Context} to use to fetch the resources. + * @param isIncognito Whether the color is used for incognito mode. + * + * @return The {@link ColorInt} to set for the large message card action button. + */ + public static @ColorInt int getLargeMessageCardActionButtonColor( + Context context, boolean isIncognito) { + return isIncognito ? context.getColor(R.color.filled_button_bg_color_light) + : context.getColor(R.color.filled_button_bg_color); + } + + /** * Returns the text color for the message card secondary action button based on the * incognito mode. *
diff --git a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_te.xtb b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_te.xtb index 08d399a..1a0c54a 100644 --- a/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_te.xtb +++ b/chrome/android/features/tab_ui/java/strings/translations/android_chrome_tab_ui_strings_te.xtb
@@ -2,7 +2,7 @@ <!DOCTYPE translationbundle> <translationbundle lang="te"> <translation id="1075622780330595106">మీ <ph name="NUMBER_OF_TABS" /> ట్యాబ్లు ఇటీవల ఉపయోగించబడలేదు. వాటిని మూసివేయాలా?</translation> -<translation id="1181037720776840403">తీసివేయి</translation> +<translation id="1181037720776840403">తీసివేయండి</translation> <translation id="125153950246128346">మరొక ట్యాబ్ను చూడటానికి నొక్కండి</translation> <translation id="1302104331113804646">ధరను ట్రాక్ చేసే సెట్టింగ్లు</translation> <translation id="1378979118429748177">ధరలు తగ్గినప్పుడు నోటిఫికేషన్ను పొందండి</translation> @@ -26,7 +26,7 @@ <translation id="2759453070259087442"><ph name="NUMBER_OF_TABS" /> ట్యాబ్లతో <ph name="TITLE_OF_GROUP" /> ట్యాబ్ గ్రూప్ను విస్తరించండి.</translation> <translation id="2801787514987684416">స్టోర్ సమాచారాన్ని చూడాలా?</translation> <translation id="2928243913527329289">Google | ఈ స్టోర్ గురించి</translation> -<translation id="2977480621796371840">గుంపు నుండి తీసివేయి</translation> +<translation id="2977480621796371840">గుంపు నుండి తీసివేయండి</translation> <translation id="3008554597174452548">ప్రోడక్ట్ను ట్రాక్ చేయడాన్ని ఆపివేయండి</translation> <translation id="3052964831964880138"><ph name="PRODUCT_NAME" /> పైన <ph name="PRICE_DROP" /> తగ్గింపు</translation> <translation id="3194464645767632461">రేటింగ్</translation> @@ -69,7 +69,7 @@ <translation id="6840760312327750441">ట్యాబ్లను సమూహంగా చేయడానికి, ట్యాబ్ను తాకి & అలాగే నొక్కి ఉంచండి. ట్యాబ్ను మరొక ట్యాబ్ మీదకు లాగండి.</translation> <translation id="6856809498882026482">బహుళ-ఎంపిక మోడ్ను దాచండి</translation> <translation id="7129458170538955174">ఈ స్టోర్ గురించిన సమాచారం స్క్రీన్లో సగం వరకు తెరవబడింది</translation> -<translation id="7151209024774799310">గ్రూప్ నుండి ట్యాబ్లు తీసివేయి</translation> +<translation id="7151209024774799310">గ్రూప్ నుండి ట్యాబ్లు తీసివేయండి</translation> <translation id="7204204600596740190">బహుళ-ఎంపిక మోడ్</translation> <translation id="7326879924029668159">రిటర్న్ పాలసీ, ఇంకా మరిన్నింటిని చూడండి</translation> <translation id="7352298686197644113">మీరు ప్రస్తుతం తెరిచి ఉంచిన ట్యాబ్లలో ఏ ఐటెమ్ ధర తగ్గిందో చూడండి</translation>
diff --git a/chrome/android/features/tab_ui/javatests/src/org/chromium/chrome/browser/tasks/tab_management/IncognitoReauthPromoCardRenderTest.java b/chrome/android/features/tab_ui/javatests/src/org/chromium/chrome/browser/tasks/tab_management/IncognitoReauthPromoCardRenderTest.java new file mode 100644 index 0000000..46314e92 --- /dev/null +++ b/chrome/android/features/tab_ui/javatests/src/org/chromium/chrome/browser/tasks/tab_management/IncognitoReauthPromoCardRenderTest.java
@@ -0,0 +1,112 @@ +// Copyright 2022 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +package org.chromium.chrome.browser.tasks.tab_management; + +import static androidx.test.espresso.Espresso.onView; +import static androidx.test.espresso.assertion.ViewAssertions.matches; +import static androidx.test.espresso.matcher.ViewMatchers.isDisplayed; +import static androidx.test.espresso.matcher.ViewMatchers.withId; + +import static org.chromium.base.test.util.Batch.PER_CLASS; +import static org.chromium.base.test.util.Restriction.RESTRICTION_TYPE_NON_LOW_END_DEVICE; +import static org.chromium.chrome.browser.tasks.tab_management.TabUiTestHelper.createTabs; +import static org.chromium.chrome.browser.tasks.tab_management.TabUiTestHelper.enterTabSwitcher; + +import android.content.res.Configuration; + +import androidx.test.filters.MediumTest; + +import org.junit.After; +import org.junit.Before; +import org.junit.Rule; +import org.junit.Test; +import org.junit.runner.RunWith; + +import org.chromium.base.test.util.Batch; +import org.chromium.base.test.util.CommandLineFlags; +import org.chromium.base.test.util.CriteriaHelper; +import org.chromium.base.test.util.Feature; +import org.chromium.base.test.util.Restriction; +import org.chromium.chrome.browser.ChromeTabbedActivity; +import org.chromium.chrome.browser.flags.ChromeFeatureList; +import org.chromium.chrome.browser.flags.ChromeSwitches; +import org.chromium.chrome.browser.incognito.reauth.IncognitoReauthManager; +import org.chromium.chrome.tab_ui.R; +import org.chromium.chrome.test.ChromeJUnit4ClassRunner; +import org.chromium.chrome.test.ChromeTabbedActivityTestRule; +import org.chromium.chrome.test.util.ActivityTestUtils; +import org.chromium.chrome.test.util.ChromeRenderTestRule; +import org.chromium.chrome.test.util.browser.Features; +import org.chromium.ui.test.util.UiRestriction; + +import java.io.IOException; + +/** + * Render tests for incognito re-auth promo message card. + * + * TODO(crbug.com/1227656): Add render tests for snack bar when integrated with review action. + */ +@RunWith(ChromeJUnit4ClassRunner.class) +@CommandLineFlags.Add(ChromeSwitches.DISABLE_FIRST_RUN_EXPERIENCE) +@Restriction({UiRestriction.RESTRICTION_TYPE_PHONE, RESTRICTION_TYPE_NON_LOW_END_DEVICE}) +@Features.EnableFeatures({ChromeFeatureList.INCOGNITO_REAUTHENTICATION_FOR_ANDROID, + ChromeFeatureList.TAB_GROUPS_CONTINUATION_ANDROID}) +@Batch(PER_CLASS) +public class IncognitoReauthPromoCardRenderTest { + @Rule + public ChromeTabbedActivityTestRule mActivityTestRule = new ChromeTabbedActivityTestRule(); + + @Rule + public ChromeRenderTestRule mRenderTestRule = + ChromeRenderTestRule.Builder.withPublicCorpus() + .setBugComponent(ChromeRenderTestRule.Component.PRIVACY_INCOGNITO) + .build(); + + @Before + public void setUp() { + IncognitoReauthManager.setIsIncognitoReauthFeatureAvailableForTesting(true); + IncognitoReauthPromoMessageService.setIsPromoEnabledForTesting(true); + mActivityTestRule.startMainActivityOnBlankPage(); + + CriteriaHelper.pollUiThread( + mActivityTestRule.getActivity().getTabModelSelector()::isTabStateInitialized); + } + + @After + public void tearDown() { + IncognitoReauthManager.setIsIncognitoReauthFeatureAvailableForTesting(false); + IncognitoReauthPromoMessageService.setIsPromoEnabledForTesting(false); + } + + @Test + @MediumTest + @Feature({"RenderTest"}) + public void testRenderReauthPromoMessageCard_Portrait() throws IOException { + final ChromeTabbedActivity cta = mActivityTestRule.getActivity(); + + createTabs(cta, true, 1); + enterTabSwitcher(cta); + CriteriaHelper.pollUiThread(TabSwitcherCoordinator::hasAppendedMessagesForTesting); + onView(withId(R.id.large_message_card_item)).check(matches(isDisplayed())); + mRenderTestRule.render( + cta.findViewById(R.id.large_message_card_item), "incognito_reauth_promo_portrait"); + } + + @Test + @MediumTest + @Feature({"RenderTest"}) + public void testRenderReauthPromoMessageCard_Landscape() throws IOException { + final ChromeTabbedActivity cta = mActivityTestRule.getActivity(); + + createTabs(cta, true, 1); + ActivityTestUtils.rotateActivityToOrientation(cta, Configuration.ORIENTATION_LANDSCAPE); + + enterTabSwitcher(cta); + CriteriaHelper.pollUiThread(TabSwitcherCoordinator::hasAppendedMessagesForTesting); + onView(withId(R.id.large_message_card_item)).check(matches(isDisplayed())); + mRenderTestRule.render( + cta.findViewById(R.id.large_message_card_item), "incognito_reauth_promo_landscape"); + } +} \ No newline at end of file
diff --git a/chrome/android/features/tab_ui/javatests/src/org/chromium/chrome/browser/tasks/tab_management/TabGridIncognitoReauthPromoTest.java b/chrome/android/features/tab_ui/javatests/src/org/chromium/chrome/browser/tasks/tab_management/TabGridIncognitoReauthPromoTest.java index 2eddb16..a453a474 100644 --- a/chrome/android/features/tab_ui/javatests/src/org/chromium/chrome/browser/tasks/tab_management/TabGridIncognitoReauthPromoTest.java +++ b/chrome/android/features/tab_ui/javatests/src/org/chromium/chrome/browser/tasks/tab_management/TabGridIncognitoReauthPromoTest.java
@@ -5,6 +5,7 @@ package org.chromium.chrome.browser.tasks.tab_management; import static androidx.test.espresso.Espresso.onView; +import static androidx.test.espresso.action.ViewActions.click; import static androidx.test.espresso.assertion.ViewAssertions.doesNotExist; import static androidx.test.espresso.assertion.ViewAssertions.matches; import static androidx.test.espresso.matcher.ViewMatchers.isDisplayed; @@ -119,4 +120,20 @@ assertFalse(cta.getTabModelSelector().getCurrentModel().isIncognito()); onView(withId(R.id.large_message_card_item)).check(doesNotExist()); } + + @Test + @MediumTest + public void testIncognitoReauthPromo_NoThanks_HidesTheCard() { + final ChromeTabbedActivity cta = mActivityTestRule.getActivity(); + + createTabs(cta, true, 1); + enterTabSwitcher(cta); + + assertTrue(cta.getTabModelSelector().getCurrentModel().isIncognito()); + CriteriaHelper.pollUiThread(TabSwitcherCoordinator::hasAppendedMessagesForTesting); + onView(withId(R.id.large_message_card_item)).check(matches(isDisplayed())); + onView(withId(R.id.secondary_action_button)).perform(click()); + + onView(withId(R.id.large_message_card_item)).check(doesNotExist()); + } }
diff --git a/chrome/android/features/tab_ui/junit/src/org/chromium/chrome/browser/tasks/tab_management/LargeMessageCardViewBinderUnitTest.java b/chrome/android/features/tab_ui/junit/src/org/chromium/chrome/browser/tasks/tab_management/LargeMessageCardViewBinderUnitTest.java index d0d4280..92a1de0 100644 --- a/chrome/android/features/tab_ui/junit/src/org/chromium/chrome/browser/tasks/tab_management/LargeMessageCardViewBinderUnitTest.java +++ b/chrome/android/features/tab_ui/junit/src/org/chromium/chrome/browser/tasks/tab_management/LargeMessageCardViewBinderUnitTest.java
@@ -154,14 +154,14 @@ @Test @SmallTest public void updateIconWidth() { - mModel.set(MessageCardViewProperties.ICON_WIDTH, FAKE_ICON_WIDTH); + mModel.set(MessageCardViewProperties.ICON_WIDTH_IN_PIXELS, FAKE_ICON_WIDTH); verify(mMockLargeCardView, times(1)).updateIconWidth(FAKE_ICON_WIDTH); } @Test @SmallTest public void updateIconHeight() { - mModel.set(MessageCardViewProperties.ICON_HEIGHT, FAKE_ICON_HEIGHT); + mModel.set(MessageCardViewProperties.ICON_HEIGHT_IN_PIXELS, FAKE_ICON_HEIGHT); verify(mMockLargeCardView, times(1)).updateIconHeight(FAKE_ICON_HEIGHT); }
diff --git a/chrome/android/features/tab_ui/junit/src/org/chromium/chrome/browser/tasks/tab_management/MessageCardProviderMediatorUnitTest.java b/chrome/android/features/tab_ui/junit/src/org/chromium/chrome/browser/tasks/tab_management/MessageCardProviderMediatorUnitTest.java index cf93ed2c..abd7948 100644 --- a/chrome/android/features/tab_ui/junit/src/org/chromium/chrome/browser/tasks/tab_management/MessageCardProviderMediatorUnitTest.java +++ b/chrome/android/features/tab_ui/junit/src/org/chromium/chrome/browser/tasks/tab_management/MessageCardProviderMediatorUnitTest.java
@@ -7,10 +7,12 @@ import static org.mockito.ArgumentMatchers.anyInt; import static org.mockito.Mockito.doNothing; import static org.mockito.Mockito.doReturn; +import static org.mockito.Mockito.times; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; import android.content.Context; +import android.content.res.Resources; import org.junit.Assert; import org.junit.Before; @@ -45,6 +47,9 @@ private Context mContext; @Mock + private Resources mResourcesMock; + + @Mock private TabSuggestionMessageService.TabSuggestionMessageData mTabSuggestionMessageData; @Mock @@ -350,6 +355,16 @@ @Test public void buildModel_ForIncognitoReauthPromoMessage() { + final int height = 1; + final int width = 2; + when(mResourcesMock.getDimensionPixelSize( + R.dimen.incognito_reauth_promo_message_icon_height)) + .thenReturn(height); + when(mResourcesMock.getDimensionPixelSize( + R.dimen.incognito_reauth_promo_message_icon_width)) + .thenReturn(width); + when(mContext.getResources()).thenReturn(mResourcesMock); + enqueueMessageItem(MessageService.MessageType.INCOGNITO_REAUTH_PROMO_MESSAGE, -1); PropertyModel model = @@ -359,6 +374,11 @@ .model; Assert.assertEquals(MessageService.MessageType.INCOGNITO_REAUTH_PROMO_MESSAGE, model.get(MessageCardViewProperties.MESSAGE_TYPE)); + verify(mResourcesMock, times(1)) + .getDimensionPixelSize(R.dimen.incognito_reauth_promo_message_icon_height); + verify(mResourcesMock, times(1)) + .getDimensionPixelSize(R.dimen.incognito_reauth_promo_message_icon_width); + verify(mContext, times(2)).getResources(); } @Test
diff --git a/chrome/android/features/tab_ui/tab_management_java_sources.gni b/chrome/android/features/tab_ui/tab_management_java_sources.gni index c0747b83..2ead27d 100644 --- a/chrome/android/features/tab_ui/tab_management_java_sources.gni +++ b/chrome/android/features/tab_ui/tab_management_java_sources.gni
@@ -23,6 +23,7 @@ tab_management_test_java_sources = [ "//chrome/android/features/tab_ui/javatests/src/org/chromium/chrome/browser/tasks/tab_management/AssertsTest.java", "//chrome/android/features/tab_ui/javatests/src/org/chromium/chrome/browser/tasks/tab_management/CloseAllTabsDialogTest.java", + "//chrome/android/features/tab_ui/javatests/src/org/chromium/chrome/browser/tasks/tab_management/IncognitoReauthPromoCardRenderTest.java", "//chrome/android/features/tab_ui/javatests/src/org/chromium/chrome/browser/tasks/tab_management/PriceAlertsMessageCardTest.java", "//chrome/android/features/tab_ui/javatests/src/org/chromium/chrome/browser/tasks/tab_management/PriceTrackingDialogTest.java", "//chrome/android/features/tab_ui/javatests/src/org/chromium/chrome/browser/tasks/tab_management/RecyclerViewMatcherUtils.java",
diff --git a/chrome/android/javatests/src/org/chromium/chrome/browser/ChromeTabbedActivityTest.java b/chrome/android/javatests/src/org/chromium/chrome/browser/ChromeTabbedActivityTest.java index 2f7a3ad..c863d170 100644 --- a/chrome/android/javatests/src/org/chromium/chrome/browser/ChromeTabbedActivityTest.java +++ b/chrome/android/javatests/src/org/chromium/chrome/browser/ChromeTabbedActivityTest.java
@@ -76,6 +76,7 @@ public void testTabVisibility() { // Create two tabs - tab[0] in the foreground and tab[1] in the background. final TabImpl[] tabs = new TabImpl[2]; + sActivityTestRule.getTestServer(); // Triggers the lazy initialization of the test server. TestThreadUtils.runOnUiThreadBlocking(() -> { // Foreground tab. ChromeTabCreator tabCreator = mActivity.getCurrentTabCreator();
diff --git a/chrome/android/javatests/src/org/chromium/chrome/browser/infobar/InfoBarAppearanceTest.java b/chrome/android/javatests/src/org/chromium/chrome/browser/infobar/InfoBarAppearanceTest.java index f9c524f..2bcefd7 100644 --- a/chrome/android/javatests/src/org/chromium/chrome/browser/infobar/InfoBarAppearanceTest.java +++ b/chrome/android/javatests/src/org/chromium/chrome/browser/infobar/InfoBarAppearanceTest.java
@@ -4,8 +4,6 @@ package org.chromium.chrome.browser.infobar; -import static junit.framework.Assert.assertEquals; - import androidx.test.filters.MediumTest; import org.junit.After; @@ -16,25 +14,18 @@ import org.junit.runner.RunWith; import org.chromium.base.test.util.Batch; -import org.chromium.base.test.util.CallbackHelper; import org.chromium.base.test.util.CommandLineFlags; -import org.chromium.base.test.util.CriteriaHelper; -import org.chromium.base.test.util.DisabledTest; import org.chromium.base.test.util.Feature; import org.chromium.chrome.browser.flags.ChromeSwitches; -import org.chromium.chrome.browser.tab.EmptyTabObserver; import org.chromium.chrome.browser.tab.Tab; -import org.chromium.chrome.browser.tab.TabTestUtils; import org.chromium.chrome.browser.test.ScreenShooter; import org.chromium.chrome.test.ChromeJUnit4ClassRunner; import org.chromium.chrome.test.ChromeTabbedActivityTestRule; import org.chromium.chrome.test.batch.BlankCTATabInitialStateRule; import org.chromium.chrome.test.util.InfoBarTestAnimationListener; import org.chromium.components.infobars.InfoBar; -import org.chromium.content_public.browser.NavigationHandle; import org.chromium.content_public.browser.test.util.TestThreadUtils; -import java.util.List; import java.util.concurrent.TimeoutException; /** @@ -86,98 +77,6 @@ @Test @MediumTest @Feature({"InfoBars", "UiCatalogue"}) - @DisabledTest(message = "https://crbug.com/1133772") - public void testFramebustBlockInfoBar() throws Exception { - FramebustBlockInfoBar infobar = new FramebustBlockInfoBar("http://very.evil.biz"); - captureMiniAndRegularInfobar(infobar); - } - - @Test - @MediumTest - @Feature("InfoBars") - public void testFramebustBlockInfoBarOverriding() { - String url1 = "http://very.evil.biz/"; - String url2 = "http://other.evil.biz/"; - List<InfoBar> infobars; - FramebustBlockInfoBar infoBar; - - TestThreadUtils.runOnUiThreadBlocking( - () -> { TabTestUtils.showFramebustBlockInfobarForTesting(mTab, url1); }); - infobars = sActivityTestRule.getInfoBarContainer().getInfoBarsForTesting(); - assertEquals(1, infobars.size()); - infoBar = (FramebustBlockInfoBar) infobars.get(0); - assertEquals(url1, infoBar.getBlockedUrl()); - - TestThreadUtils.runOnUiThreadBlocking( - () -> { TabTestUtils.showFramebustBlockInfobarForTesting(mTab, url2); }); - infobars = sActivityTestRule.getInfoBarContainer().getInfoBarsForTesting(); - assertEquals(1, infobars.size()); - infoBar = (FramebustBlockInfoBar) infobars.get(0); - assertEquals(url2, infoBar.getBlockedUrl()); - } - - @Test - @MediumTest - @Feature("InfoBars") - public void testFramebustBlockInfoBarUrlTapped() throws TimeoutException { - String url = "http://very.evil.biz"; - - CallbackHelper callbackHelper = new CallbackHelper(); - EmptyTabObserver navigationWaiter = new EmptyTabObserver() { - @Override - public void onDidStartNavigation(Tab tab, NavigationHandle navigation) { - callbackHelper.notifyCalled(); - } - }; - TestThreadUtils.runOnUiThreadBlocking(() -> mTab.addObserver(navigationWaiter)); - - TestThreadUtils.runOnUiThreadBlocking( - () -> { TabTestUtils.showFramebustBlockInfobarForTesting(mTab, url); }); - FramebustBlockInfoBar infoBar = - (FramebustBlockInfoBar) sActivityTestRule.getInfoBarContainer() - .getInfoBarsForTesting() - .get(0); - - TestThreadUtils.runOnUiThreadBlocking(infoBar::onLinkClicked); // Once to expand the infobar - assertEquals(0, callbackHelper.getCallCount()); - - TestThreadUtils.runOnUiThreadBlocking(infoBar::onLinkClicked); // Now to navigate - callbackHelper.waitForCallback(0); - - CriteriaHelper.pollUiThread( - () -> InfoBarContainer.get(mTab).getInfoBarsForTesting().isEmpty()); - } - - @Test - @MediumTest - @Feature("InfoBars") - public void testFramebustBlockInfoBarButtonTapped() { - String url = "http://very.evil.biz"; - - TestThreadUtils.runOnUiThreadBlocking( - () -> { TabTestUtils.showFramebustBlockInfobarForTesting(mTab, url); }); - FramebustBlockInfoBar infoBar = - (FramebustBlockInfoBar) sActivityTestRule.getInfoBarContainer() - .getInfoBarsForTesting() - .get(0); - - TestThreadUtils.runOnUiThreadBlocking(() -> infoBar.onButtonClicked(true)); - CriteriaHelper.pollUiThread( - () -> InfoBarContainer.get(mTab).getInfoBarsForTesting().isEmpty()); - } - - @Test - @MediumTest - @Feature({"InfoBars", "UiCatalogue"}) - public void testFramebustBlockInfoBarWithLongMessages() throws Exception { - FramebustBlockInfoBar infobar = new FramebustBlockInfoBar("https://someverylonglink" - + "thatwilldefinitelynotfitevenwhenremovingthefilepath.com/somemorestuff"); - captureMiniAndRegularInfobar(infobar); - } - - @Test - @MediumTest - @Feature({"InfoBars", "UiCatalogue"}) public void testOomInfoBar() throws TimeoutException { TestThreadUtils.runOnUiThreadBlocking( () -> InfoBarContainer.get(mTab).addInfoBarForTesting(new NearOomInfoBar()));
diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources.grd index d8c9ae05..09c7b1f 100644 --- a/chrome/app/generated_resources.grd +++ b/chrome/app/generated_resources.grd
@@ -12086,18 +12086,22 @@ </if> <!-- Framebust / Blocked Redirection intervention message --> - <if expr="not is_android"> - <!-- Android strings are declared in android_chrome_strings.grd. --> - <message name="IDS_REDIRECT_BLOCKED_MESSAGE" desc="The message stating that a redirect (noun) was blocked on this page. This will be followed on a separate line with the address the user was being redirected to."> - Redirect blocked: - </message> - <message name="IDS_REDIRECT_BLOCKED_TITLE" desc="The short message stating that a redirect (noun) was blocked on this page. Same as IDS_REDIRECT_BLOCKED_SHORT_MESSAGE but without the period."> - Redirect blocked - </message> - <message name="IDS_REDIRECT_BLOCKED_TOOLTIP" desc="Tooltip text that appears when the user hovers over the "Redirect blocked" icon in the address bar. It means that a redirect (noun) was blocked by Chrome on this page."> - Redirect blocked on this page. - </message> - </if> + <!-- Android strings are declared in android_chrome_strings.grd. --> + <message name="IDS_REDIRECT_BLOCKED_MESSAGE" desc="The message stating that a redirect (noun) was blocked on this page. This will be followed on a separate line with the address the user was being redirected to."> + Redirect blocked: + </message> + <message name="IDS_REDIRECT_BLOCKED_TITLE" desc="The short message stating that a redirect (noun) was blocked on this page. Same as IDS_REDIRECT_BLOCKED_SHORT_MESSAGE but without the period."> + Redirect blocked + </message> + <message name="IDS_REDIRECT_BLOCKED_TOOLTIP" desc="Tooltip text that appears when the user hovers over the "Redirect blocked" icon in the address bar. It means that a redirect (noun) was blocked by Chrome on this page."> + Redirect blocked on this page. + </message> + <message name="IDS_ALWAYS_ALLOW_REDIRECTS" desc="The message button text allowing a user to always allow redirects (noun) after they were blocked on this page."> + Always allow + </message> + <message name="IDS_OPEN_REDIRECT" desc="Dropdown menu button that allows a user to go to the redirected page once, but continue blocking subsequent attempts on the site."> + Open Anyway + </message> <!-- Windows 10 toast strings --> <if expr="is_win">
diff --git a/chrome/app/generated_resources_grd/IDS_ALWAYS_ALLOW_REDIRECTS.png.sha1 b/chrome/app/generated_resources_grd/IDS_ALWAYS_ALLOW_REDIRECTS.png.sha1 new file mode 100644 index 0000000..f26918a9 --- /dev/null +++ b/chrome/app/generated_resources_grd/IDS_ALWAYS_ALLOW_REDIRECTS.png.sha1
@@ -0,0 +1 @@ +bddab5144f141b70bda61676b1c1c7b650681d46 \ No newline at end of file
diff --git a/chrome/app/generated_resources_grd/IDS_OPEN_REDIRECT.png.sha1 b/chrome/app/generated_resources_grd/IDS_OPEN_REDIRECT.png.sha1 new file mode 100644 index 0000000..a4e5f59 --- /dev/null +++ b/chrome/app/generated_resources_grd/IDS_OPEN_REDIRECT.png.sha1
@@ -0,0 +1 @@ +2748def2707eacb22c687e13a14164a8f2a8a260 \ No newline at end of file
diff --git a/chrome/app/resources/chromium_strings_az.xtb b/chrome/app/resources/chromium_strings_az.xtb index d87d0bdd..3eedd0b 100644 --- a/chrome/app/resources/chromium_strings_az.xtb +++ b/chrome/app/resources/chromium_strings_az.xtb
@@ -43,6 +43,7 @@ <translation id="2018879682492276940">Quraşdırma alınmadı. Yenidən sınayın.</translation> <translation id="2020032459870799438">Digər parollarınızın data pozuntuları və digər güvənlik məsələlərinə qarşı güvəndə olduğunu yoxlamaq üçün <ph name="BEGIN_LINK" />Chromium'a daxil olun<ph name="END_LINK" />.</translation> <translation id="2049376729098081731">Google xidmətlərində daha çox fərdiləşdirilmiş təcrübə üçün Chromium tarixçəsinin daxil edilib-edilməməsini seçin</translation> +<translation id="2088953378266246249">Chromium'un kök sertifikatlarını necə idarə etməsi haqqında məlumat</translation> <translation id="2174178932569897599">Chromium'u fərdiləşdirin</translation> <translation id="2174917724755363426">Quraşdırma tamamlanmayıb. Ləğv etmək istədiyinizə əminsiniz?</translation> <translation id="2185166961232948079">Chromium - Şəbəkəyə Giriş - <ph name="PAGE_TITLE" /></translation> @@ -362,6 +363,7 @@ <translation id="9185526690718004400">&Chromium'u güncəlləmək üçün yenidən başladın</translation> <translation id="9190841055450128916">Chromium (mDNS-In)</translation> <translation id="93478295209880648">Chromium düzgün işləməyə bilər, çünki daha Windows XP və ya Windows Vista'da dəstəklənmir</translation> +<translation id="942598560705308788">Chromium tərəfindən idarə olunan sertifikatlar</translation> <translation id="945990405696787151">Chromium güncəlləmələrini əldə etmək üçün macOS 10.13 və ya daha yeni versiya tələb olunur. Bu kompüter OS X 10.11 istifadə edir.</translation> <translation id="965162752251293939">Chromium'u kim istifadə edir?</translation> <translation id="967427899662692980">Chromium’un ən güclü güvənlik sistemini əldə edin</translation>
diff --git a/chrome/app/resources/chromium_strings_bn.xtb b/chrome/app/resources/chromium_strings_bn.xtb index b060f77..988bdd98 100644 --- a/chrome/app/resources/chromium_strings_bn.xtb +++ b/chrome/app/resources/chromium_strings_bn.xtb
@@ -41,6 +41,7 @@ <translation id="2018879682492276940">ইনস্টল করা যায়নি। আবার চেষ্টা করুন।</translation> <translation id="2020032459870799438">আপনার অন্যান্য পাসওয়ার্ড ডেটার নিরাপত্তা লঙ্ঘন এবং অন্যান্য নিরাপত্তা সংক্রান্ত সমস্যা থেকে সুরক্ষিত কিনা তা চেক করতে <ph name="BEGIN_LINK" />Chromium-এ সাইন-ইন করুন<ph name="END_LINK" />।</translation> <translation id="2049376729098081731">Google পরিষেবাতে আরও পছন্দমতো অভিজ্ঞতার জন্য Chromium ইতিহাস অন্তর্ভুক্ত করবেন কিনা তা বেছে নিন</translation> +<translation id="2088953378266246249">Chromium কীভাবে মূল সার্টিফিকেট ম্যানেজ করে সেই বিষয়ে তথ্য</translation> <translation id="2174178932569897599">Chromium কাস্টমাইজ করুন</translation> <translation id="2174917724755363426">ইনস্টলেশন শেষ হয়নি। আপনি কি সত্যিই বাতিল করতে চান?</translation> <translation id="2185166961232948079">Chromium - নেটওয়ার্ক সাইন-ইন - <ph name="PAGE_TITLE" /></translation> @@ -363,6 +364,7 @@ <translation id="9185526690718004400">&Chromium আপডেট করতে আবার লঞ্চ করুন</translation> <translation id="9190841055450128916">Chromium (mDNS-In)</translation> <translation id="93478295209880648">Chromium সঠিকভাবে কাজ নাও করতে পারে কারণ এটি এখন আর Windows XP বা Windows Vista আর সমর্থিত নয়</translation> +<translation id="942598560705308788">Chromium দ্বারা ম্যানেজ করা সার্টিফিকেট</translation> <translation id="945990405696787151">ভবিষ্যতে Chromium আপডেট পেতে হলে, আপনার macOS 10.13 বা এর পরবর্তী ভার্সন থাকতে হবে। এই কম্পিউটারে OS X 10.11 ভার্সন ব্যবহার করা হচ্ছে।</translation> <translation id="965162752251293939">Chromium কে ব্যবহার করছেন?</translation> <translation id="967427899662692980">Chromium-এ সবচেয়ে বেশি সুরক্ষা পান</translation>
diff --git a/chrome/app/resources/chromium_strings_bs.xtb b/chrome/app/resources/chromium_strings_bs.xtb index 1db774d..d9c62a4 100644 --- a/chrome/app/resources/chromium_strings_bs.xtb +++ b/chrome/app/resources/chromium_strings_bs.xtb
@@ -43,6 +43,7 @@ <translation id="2018879682492276940">Instalacija nije uspjela. Pokušajte ponovo.</translation> <translation id="2020032459870799438">Da provjerite jesu li vaše ostale lozinke zaštićene od narušavanja podataka i drugih sigurnosnih problema, <ph name="BEGIN_LINK" />prijavite se u Chromium<ph name="END_LINK" />.</translation> <translation id="2049376729098081731">Odaberite želite li uključiti historiju Chromiuma da dodatno personalizirate iskustva na Googleovim uslugama</translation> +<translation id="2088953378266246249">Informacije o tome kako Chromium upravlja svojim korijenskim certifikatima</translation> <translation id="2174178932569897599">Prilagodite Chromium</translation> <translation id="2174917724755363426">Instalacija nije završena. Jeste li sigurni da želite otkazati?</translation> <translation id="2185166961232948079">Chromium – prijava na mrežu – <ph name="PAGE_TITLE" /></translation> @@ -367,6 +368,7 @@ <translation id="9185526690718004400">Ponovo pokrenite da ažurirate &Chromium</translation> <translation id="9190841055450128916">Chromium (mDNS-In)</translation> <translation id="93478295209880648">Chromium možda neće ispravno raditi jer više nije podržan na sistemima Windows XP ili Windows Vista</translation> +<translation id="942598560705308788">Certifikati kojima upravlja Chromium</translation> <translation id="945990405696787151">Da primate buduća ažuriranja za Chromium, trebat će vam macOS 10.13 ili novija verzija. Ovaj računar koristi OS X 10.11.</translation> <translation id="965162752251293939">Ko koristi Chromium?</translation> <translation id="967427899662692980">Odaberite maksimalnu sigurnost koju nudi Chromium</translation>
diff --git a/chrome/app/resources/chromium_strings_hr.xtb b/chrome/app/resources/chromium_strings_hr.xtb index c887b47..bbf11ab5 100644 --- a/chrome/app/resources/chromium_strings_hr.xtb +++ b/chrome/app/resources/chromium_strings_hr.xtb
@@ -41,6 +41,7 @@ <translation id="2018879682492276940">Instaliranje nije uspjelo. Pokušajte ponovo.</translation> <translation id="2020032459870799438">Da biste provjerili jesu li vaše druge zaporke sigurne od povrede podataka i drugih poteškoća sa sigurnošću, <ph name="BEGIN_LINK" />prijavite se na Chromium<ph name="END_LINK" />.</translation> <translation id="2049376729098081731">Odaberite želite li uključiti povijest na Chromiumu za prilagođenije doživljaje na Googleovim uslugama</translation> +<translation id="2088953378266246249">Informacije o tome kako Chromium upravlja svojim korijenskim certifikatima</translation> <translation id="2174178932569897599">Prilagodi Chromium</translation> <translation id="2174917724755363426">Instaliranje nije dovršeno. Jeste li sigurni da ga želite otkazati?</translation> <translation id="2185166961232948079">Chromium – Prijava na mrežu – <ph name="PAGE_TITLE" /></translation> @@ -364,6 +365,7 @@ <translation id="9185526690718004400">Ponovo pokrenite da biste ažurirali &Chromium</translation> <translation id="9190841055450128916">Chromium (mDNS-In)</translation> <translation id="93478295209880648">Chromium možda neće ispravno raditi jer više nije podržan na sustavima Windows XP i Windows Vista</translation> +<translation id="942598560705308788">Certifikati kojima upravlja Chromium</translation> <translation id="945990405696787151">Da biste primali buduća Chromiumova ažuriranja, trebat će vam macOS 10.13 ili novija verzija. Na ovom se računalu upotrebljava OS X 10.11.</translation> <translation id="965162752251293939">Tko upotrebljava Chromium?</translation> <translation id="967427899662692980">Odaberite najsnažniju Chromiumovu zaštitu sigurnosti</translation>
diff --git a/chrome/app/resources/chromium_strings_hu.xtb b/chrome/app/resources/chromium_strings_hu.xtb index e836b18e..46aa2796 100644 --- a/chrome/app/resources/chromium_strings_hu.xtb +++ b/chrome/app/resources/chromium_strings_hu.xtb
@@ -41,6 +41,7 @@ <translation id="2018879682492276940">Sikertelen telepítés. Próbálja újra.</translation> <translation id="2020032459870799438">Ha ellenőrizni szeretné, hogy a többi jelszava biztonságban van-e az adatvédelmi incidensektől és más biztonsági problémáktól, <ph name="BEGIN_LINK" />jelentkezzen be a Chromiumba<ph name="END_LINK" />.</translation> <translation id="2049376729098081731">Válassza ki, hogy szeretné-e használni a Chromium-előzményeket személyre szabott élmények biztosításához a Google-szolgáltatásokban.</translation> +<translation id="2088953378266246249">Információ arról, hogy a Chromium hogyan kezeli a főtanúsítványokat</translation> <translation id="2174178932569897599">A Chromium személyre szabása</translation> <translation id="2174917724755363426">A telepítés még nem fejeződött be. Biztosan megszakítja a műveletet?</translation> <translation id="2185166961232948079">Chromium – Hálózati bejelentkezés – <ph name="PAGE_TITLE" /></translation> @@ -363,6 +364,7 @@ <translation id="9185526690718004400">Indítsa újra a Chromium frissítéshez</translation> <translation id="9190841055450128916">Chromium (mDNS-In)</translation> <translation id="93478295209880648">Előfordulhat, hogy a Chromium nem működik majd megfelelően, mert a továbbiakban már nem támogatja a következő rendszereket: Windows XP és Windows Vista</translation> +<translation id="942598560705308788">A Chromium által kezelt tanúsítványok</translation> <translation id="945990405696787151">Ha a jövőben Chromium-frissítéseket szeretne kapni, akkor a macOS 10.13-as vagy újabb verziójára lesz szüksége. Ezen a számítógépen az OS X 10.11 fut.</translation> <translation id="965162752251293939">Ki használja a Chromiumot?</translation> <translation id="967427899662692980">Állítsa be a Chromium legerősebb védelmét</translation>
diff --git a/chrome/app/resources/chromium_strings_ka.xtb b/chrome/app/resources/chromium_strings_ka.xtb index 5c57c20a..1cb4491 100644 --- a/chrome/app/resources/chromium_strings_ka.xtb +++ b/chrome/app/resources/chromium_strings_ka.xtb
@@ -43,6 +43,7 @@ <translation id="2018879682492276940">ინსტალაცია ვერ მოხერხდა. ცადეთ ხელახლა.</translation> <translation id="2020032459870799438"><ph name="BEGIN_LINK" />შედით Chromium-ში<ph name="END_LINK" />, რომ შეამოწმოთ, შეეხო თუ არა პერსონალურ მონაცემთა გაჟონვის შემთხვევები და უსაფრთხოებასთან დაკავშირებული პრობლემები თქვენს სხვა პაროლებს.</translation> <translation id="2049376729098081731">აირჩიეთ, დაერთოს თუ არა Chromium ისტორია, Google სერვისებში უფრო პერსონალიზებული ფუნქციებით რომ ისარგებლოთ</translation> +<translation id="2088953378266246249">ინფორმაცია Chromium-ის მიერ თავისი ძირეული სერტიფიკატების მართვის შესახებ</translation> <translation id="2174178932569897599">Chromium-ის მორგება</translation> <translation id="2174917724755363426">ინსტალაცია არ დასრულებულა. ნამდვილად გსურთ გაუქმება?</translation> <translation id="2185166961232948079">Chromium — ქსელში შესვლა — <ph name="PAGE_TITLE" /></translation> @@ -365,6 +366,7 @@ <translation id="9185526690718004400">ხელახლა გაშვება &Chromium-ის გასაახლებლად</translation> <translation id="9190841055450128916">Chromium (mDNS-In)</translation> <translation id="93478295209880648">Chromium-მა შეიძლება არასწორად იმუშაოს, რადგან ის აღარ არის მხარდაჭერილი Windows XP-სა და Windows Vista-ზე</translation> +<translation id="942598560705308788">Chromium-ის მიერ მართული სერტიფიკატები</translation> <translation id="945990405696787151">Chromium-ის მომავალი განახლებების მისაღებად დაგჭირდებათ macOS 10.13 ან უფრო ახალი ვერსია. ეს კომპიუტერი იყენებს OS X 10.11-ს.</translation> <translation id="965162752251293939">ვინ იყენებს Chromium-ს?</translation> <translation id="967427899662692980">ისარგებლეთ Chromium-ის უსაფრთხოების ყველაზე ძლიერი ფუნქციებით</translation>
diff --git a/chrome/app/resources/chromium_strings_lt.xtb b/chrome/app/resources/chromium_strings_lt.xtb index 6d813ff5..a3d5910b 100644 --- a/chrome/app/resources/chromium_strings_lt.xtb +++ b/chrome/app/resources/chromium_strings_lt.xtb
@@ -43,6 +43,7 @@ <translation id="2018879682492276940">Nepavyko įdiegti. Bandykite dar kartą.</translation> <translation id="2020032459870799438">Jei norite patikrinti, ar kiti slaptažodžiai apsaugoti nuo duomenų saugos pažeidimų bei kitų saugos problemų, <ph name="BEGIN_LINK" />prisijunkite prie „Chromium“<ph name="END_LINK" />.</translation> <translation id="2049376729098081731">Pasirinkite, ar įtraukti „Chromium“ istoriją, kad būtų teikiamos labiau suasmenintos funkcijos „Google“ paslaugose</translation> +<translation id="2088953378266246249">Informacija apie tai, kaip „Chromium“ tvarko šakninius sertifikatus</translation> <translation id="2174178932569897599">Tinkinti „Chromium“</translation> <translation id="2174917724755363426">Diegimas nebaigtas. Ar tikrai norite atšaukti?</translation> <translation id="2185166961232948079">„Chromium“ – prisijungimas prie tinklo – „<ph name="PAGE_TITLE" />“</translation> @@ -367,6 +368,7 @@ <translation id="9185526690718004400">Paleisti iš naujo atnaujinant „&Chromium“</translation> <translation id="9190841055450128916">„Chromium“ (mDNS-In)</translation> <translation id="93478295209880648">„Chromium“ gali tinkamai neveikti, nes ji nebepalaikoma naudojant „Windows XP“ arba „Windows Vista“</translation> +<translation id="942598560705308788">Sertifikatai, kuriuos tvarko „Chromium“</translation> <translation id="945990405696787151">Jei norite gauti būsimus „Chromium“ naujinius, jums reikės 10.13 ar naujesnės „macOS“ versijos. Šiame kompiuteryje naudojama 10.11 versijos „OS X“.</translation> <translation id="965162752251293939">Kas naudoja „Chromium“?</translation> <translation id="967427899662692980">Patikimiausios „Chromium“ saugos užtikrinimas</translation>
diff --git a/chrome/app/resources/chromium_strings_my.xtb b/chrome/app/resources/chromium_strings_my.xtb index 5da630f..8f0ce58 100644 --- a/chrome/app/resources/chromium_strings_my.xtb +++ b/chrome/app/resources/chromium_strings_my.xtb
@@ -44,6 +44,7 @@ <translation id="2018879682492276940">ထည့်သွင်းမှု မအောင်မြင်ပါ။ ထပ်စမ်းကြည့်ပါ။</translation> <translation id="2020032459870799438">သင်၏အခြားစကားဝှက်များတွင် ဒေတာပေါက်ကြားမှုနှင့် အခြားသော လုံခြုံရေးပြဿနာများ ရှိ၊ မရှိ စစ်ဆေးရန် <ph name="BEGIN_LINK" />Chromium သို့ လက်မှတ်ထိုးဝင်ပါ<ph name="END_LINK" />။</translation> <translation id="2049376729098081731">Google ဝန်ဆောင်မှုများရှိ ပုဂ္ဂိုလ်ရေးသီးသန့် အတွေ့အကြုံများ ပိုရရှိရန်အတွက် Chromium မှတ်တမ်းကို ထည့်၊ မထည့် ရွေးနိုင်သည်</translation> +<translation id="2088953378266246249">Chromium က ပင်မအသိအမှတ်ပြုလက်မှတ်များကို စီမံပုံအကြောင်း အချက်အလက်များ</translation> <translation id="2174178932569897599">Chromium ကို စိတ်ကြိုက်ပြင်ရန်</translation> <translation id="2174917724755363426">ထည့်သွင်းမှု မပြီးဆုံးပါ။ ပယ်ဖျက်လိုသည်မှာ သေချာပါသလား။</translation> <translation id="2185166961232948079">Chromium - ကွန်ရက် လက်မှတ်ထိုးဝင်ခြင်း - <ph name="PAGE_TITLE" /></translation> @@ -369,6 +370,7 @@ <translation id="9185526690718004400">&Chromium အပ်ဒိတ်လုပ်ရန် ပြန်ဖွင့်ပါ</translation> <translation id="9190841055450128916">Chromium (mDNS-In)</translation> <translation id="93478295209880648">Windows XP သို့မဟုတ် Windows Vista တွင် မပံ့ပိုးတော့သောကြောင့် Chromium လုပ်ဆောင်မှု မှန်ကန်ချင်မှ မှန်ကန်မည်</translation> +<translation id="942598560705308788">Chromium က စီမံသော အသိအမှတ်ပြုလက်မှတ်များ</translation> <translation id="945990405696787151">နောက်ပိုင်းထွက်မည့် Chromium အပ်ဒိတ်များ ရယူရန် macOS 10.13 နှင့်အထက် လိုအပ်ပါမည်။ ဤကွန်ပျူတာက OS X 10.11 အသုံးပြုနေသည်။</translation> <translation id="965162752251293939">Chromium ကို မည်သူသုံးနေသလဲ။</translation> <translation id="967427899662692980">Chromium ၏ အခိုင်မာဆုံးလုံခြုံရေးကို ရယူခြင်း</translation>
diff --git a/chrome/app/resources/chromium_strings_pl.xtb b/chrome/app/resources/chromium_strings_pl.xtb index e2aa432..36f4be83 100644 --- a/chrome/app/resources/chromium_strings_pl.xtb +++ b/chrome/app/resources/chromium_strings_pl.xtb
@@ -41,6 +41,7 @@ <translation id="2018879682492276940">Nie udało się zainstalować. Spróbuj ponownie.</translation> <translation id="2020032459870799438">Aby sprawdzić, czy Twoje pozostałe hasła są chronione przed naruszeniami bezpieczeństwa danych i innymi zagrożeniami tego typu, <ph name="BEGIN_LINK" />zaloguj się w Chromium<ph name="END_LINK" />.</translation> <translation id="2049376729098081731">Określ, czy chcesz uwzględniać historię Chromium w celu lepszego dostosowania usług Google</translation> +<translation id="2088953378266246249">Informacje o tym, jak Chromium zarządza certyfikatami głównymi</translation> <translation id="2174178932569897599">Dostosuj Chromium</translation> <translation id="2174917724755363426">Instalacja nie została ukończona. Czy na pewno chcesz ją anulować?</translation> <translation id="2185166961232948079">Chromium – logowanie do sieci – <ph name="PAGE_TITLE" /></translation> @@ -361,6 +362,7 @@ <translation id="9185526690718004400">Uruchom ponownie, aby zaktualizować &Chromium</translation> <translation id="9190841055450128916">Chromium (mDNS-In)</translation> <translation id="93478295209880648">Chromium może działać nieprawidłowo, bo nie jest już zgodny z Windows XP ani Windows Vista</translation> +<translation id="942598560705308788">Certyfikaty zarządzane przez Chromium</translation> <translation id="945990405696787151">Aby otrzymywać w przyszłości aktualizacje Chromium, musisz mieć system macOS 10.13 lub nowszy. Na komputerze jest zainstalowany system OS X 10.11.</translation> <translation id="965162752251293939">Kto używa Chromium?</translation> <translation id="967427899662692980">Korzystaj z najlepszych zabezpieczeń Chromium</translation>
diff --git a/chrome/app/resources/chromium_strings_te.xtb b/chrome/app/resources/chromium_strings_te.xtb index b904515..63bf846 100644 --- a/chrome/app/resources/chromium_strings_te.xtb +++ b/chrome/app/resources/chromium_strings_te.xtb
@@ -23,7 +23,7 @@ మీరు వెబ్సైట్లు, యాప్లకు ఇప్పటికే ఇచ్చిన అనుమతులు ఈ ఖాతాకు వర్తించవచ్చు. మీ Google ఖాతాలను మీరు <ph name="SETTINGS_LINK_BEGIN" />సెట్టింగ్లు<ph name="SETTINGS_LINK_END" /> లింక్లో మేనేజ్ చేయవచ్చు.</translation> <translation id="1640672724030957280">డౌన్లోడ్ చేయబడుతోంది...</translation> <translation id="1708666629004767631">Chromium యొక్క కొత్త సురక్షితమైన వెర్షన్ అందుబాటులో ఉంది.</translation> -<translation id="1774152462503052664">బ్యాక్గ్రౌండ్లో Chromiumని అమలు చేయడానికి అనుమతించు</translation> +<translation id="1774152462503052664">బ్యాక్గ్రౌండ్లో Chromiumని అమలు చేయడానికి అనుమతించండి</translation> <translation id="1779356040007214683">Chromiumను సురక్షితం చేయడానికి, మేము <ph name="IDS_EXTENSION_WEB_STORE_TITLE" />లో లిస్ట్ చేయబడని మరియు మీకు తెలియకుండానే జోడించబడిన కొన్ని ఎక్స్టెన్షన్లను నిలిపివేసాము.</translation> <translation id="1808667845054772817">Chromiumను మళ్లీ ఇన్స్టాల్ చేయి</translation> <translation id="185970820835152459">మీరు సైన్ ఇన్ చేసిన Google ఖాతాలను మీరు మేనేజ్ చేయవచ్చు. Chromium బ్రౌజర్, Play Store, Gmail, ఇంకా మరిన్నింటి కోసం మీ Google ఖాతాలు ఉపయోగించబడతాయి. ఫ్యామిలీ మెంబర్ వంటి వారి కోసం మీరు ఖాతాను జోడించాలనుకుంటే, బదులుగా కొత్త వ్యక్తిని మీ <ph name="DEVICE_TYPE" />కు జోడించండి. <ph name="LINK_BEGIN" />మరింత తెలుసుకోండి<ph name="LINK_END" /></translation> @@ -65,7 +65,7 @@ <translation id="2770231113462710648">డిఫాల్ట్ బ్రౌజర్ను దీనికి మార్చు:</translation> <translation id="2799223571221894425">మళ్లీ ప్రారంభించు</translation> <translation id="2837693172913560447">ఇది <ph name="USER_EMAIL_ADDRESS" />కు కొత్త Chromium ప్రొఫైల్ను క్రియేట్ చేస్తుంది</translation> -<translation id="2847479871509788944">Chromium నుండి తీసివేయి...</translation> +<translation id="2847479871509788944">Chromium నుండి తీసివేయండి...</translation> <translation id="2850691299438350830">Chromiumలో మిమ్మల్ని సురక్షితంగా ఉంచుతుంది, మీరు సైన్ ఇన్ చేసినప్పుడు ఇతర Google యాప్లలో మీ సెక్యూరిటీని మెరుగుపరచడానికి ఉపయోగించబడవచ్చు</translation> <translation id="2885378588091291677">విధి సంచాలకులు</translation> <translation id="2910007522516064972">&Chromium గురించి</translation> @@ -285,7 +285,7 @@ <translation id="7467949745582939695">Chromiumను రీ-లాంచ్ చేయాలా?</translation> <translation id="7483335560992089831">ప్రస్తుతం అమలు అవుతోన్న అదే Chromium వెర్షన్ను ఇన్స్టాల్ చేయలేరు. దయచేసి Chromiumను మూసివేసి, మళ్లీ ప్రయత్నించండి.</translation> <translation id="753534427205733210">{0,plural, =1{1 నిమిషంలో Chromium తిరిగి ప్రారంభించబడుతుంది}other{# నిమిషాల్లో Chromium తిరిగి ప్రారంభించబడుతుంది}}</translation> -<translation id="7561906087460245826">అలాగే (<ph name="URL" />)లో ఉన్న Chromiumకి సంబంధించిన డేటాని తీసివేయి</translation> +<translation id="7561906087460245826">అలాగే (<ph name="URL" />)లో ఉన్న Chromiumకి సంబంధించిన డేటాను తీసివేయండి</translation> <translation id="7582945390259497898">Chromium మీ ఆసక్తులను అంచనా వేయగలదు. తర్వాత, మీరు చూసే యాడ్లను వ్యక్తిగతీకరించడం కోసం, మీరు సందర్శించే సైట్ మీ ఆసక్తులను చూడమని Chromiumను అడగవచ్చు.</translation> <translation id="7583399374488819119"><ph name="COMPANY_NAME" /> ఇన్స్టాలర్</translation> <translation id="7597596667193879455">మీరు మీ ఖాతాలో మెరుగైన సురక్షిత బ్రౌజింగ్ను ఆన్ చేశారు. ఇప్పుడు దాన్ని Chromiumలో పొందండి.</translation>
diff --git a/chrome/app/resources/chromium_strings_uz.xtb b/chrome/app/resources/chromium_strings_uz.xtb index afa1647..01e1ce6 100644 --- a/chrome/app/resources/chromium_strings_uz.xtb +++ b/chrome/app/resources/chromium_strings_uz.xtb
@@ -41,6 +41,7 @@ <translation id="2018879682492276940">Oʻrnatilmadi. Qayta urining.</translation> <translation id="2020032459870799438">Parollarni axborotlar sizib chiqishi va xavfsizlikka oid boshqa muammolardan himoyalash uchun <ph name="BEGIN_LINK" />Chromium hisobingizga kiring<ph name="END_LINK" />.</translation> <translation id="2049376729098081731">Kerak boʻlsa, Chromium tarixi yanada moslashtirilgan Google xizmatlarida ishlatilishini tanlang</translation> +<translation id="2088953378266246249">Chromium negiz sertifikatlarini qanday boshqarishi haqida axborot</translation> <translation id="2174178932569897599">Chromiumni moslash</translation> <translation id="2174917724755363426">Oʻrnatish yakunlanmadi. Haqiqatan ham bekor qilmoqchimisiz?</translation> <translation id="2185166961232948079">Chromium - Tarmoqqa kirish - <ph name="PAGE_TITLE" /></translation> @@ -363,6 +364,7 @@ <translation id="9185526690718004400">&Chromium brauzerini yangilash uchun qayta ishga tushiring</translation> <translation id="9190841055450128916">Chromium (mDNS-In)</translation> <translation id="93478295209880648">Chromium brauzeri Windows XP yoki Windows Vista tizimlarida ishlamay qolishi mumkin, chunki uning yangi versiyalarida bu tizimlar ta’minoti to‘xtatiladi</translation> +<translation id="942598560705308788">Chromium boshqaradigan sertifikatlar</translation> <translation id="945990405696787151">Chromium yangilanishlari macOS 10.13 yoki undan yuqori versiyalarda ishlaydi. Bu kompyuterdagi versiya: OS X 10.11.</translation> <translation id="965162752251293939">Chromiumni kim ochdi?</translation> <translation id="967427899662692980">Chromium brauzerining kuchli xavfsizligidan foydalaning</translation>
diff --git a/chrome/app/resources/generated_resources_af.xtb b/chrome/app/resources/generated_resources_af.xtb index ffa29e4..6aa1a92e 100644 --- a/chrome/app/resources/generated_resources_af.xtb +++ b/chrome/app/resources/generated_resources_af.xtb
@@ -334,7 +334,6 @@ <translation id="1319983966058170660"><ph name="SUBPAGE_TITLE" />-subbladsy se terugknoppie</translation> <translation id="1322046419516468189">Bekyk en bestuur gestoorde wagwoorde in jou <ph name="SAVED_PASSWORDS_STORE" /></translation> <translation id="1324106254079708331">Beveilig die persoonlike Google-rekeninge van enigiemand wat die risiko loop om die slagoffer van geteikende aanvalle te wees</translation> -<translation id="1326317727527857210">Meld by Chrome aan om jou oortjies van jou ander toestelle af te kry.</translation> <translation id="1327272175893960498">Kerberos-kaartjies</translation> <translation id="1327495825214193325">Hierdie <ph name="DEVICE_TYPE" /> moet herbegin word om ADB-ontfouting te aktiveer. 'n Terugstelling na fabriekinstellings toe is nodig om dit te deaktiveer.</translation> <translation id="1327794256477341646">Kenmerke wat jou ligging nodig het, sal nie werk nie</translation> @@ -2441,7 +2440,6 @@ <translation id="3280243678470289153">Bly in Chrome</translation> <translation id="3281892622610078515">Lêers en programme wat in kwarantyn geplaas moet word:</translation> <translation id="3282210178675490297">Deel tans 'n oortjie met <ph name="APP_NAME" /></translation> -<translation id="3282568296779691940">Meld by Chrome aan</translation> <translation id="3285322247471302225">Nuwe oortjie</translation> <translation id="328571385944182268">Stoor jou wagwoorde?</translation> <translation id="3288047731229977326">Uitbreidings wat in ontwikkelaarmodus laat loop word, kan jou rekenaar beskadig. As jy nie 'n ontwikkelaar is nie, moet jy hierdie uitbreidings wat in ontwikkelaarmodus laat loop word, deaktiveer om veilig te bly.</translation> @@ -3283,6 +3281,7 @@ <translation id="4077919383365622693">Alle data en webkoekies wat deur <ph name="SITE" /> geberg word, sal uitgevee word.</translation> <translation id="4078738236287221428">Aggressief</translation> <translation id="4079140982534148664">Gebruik verbeterde speltoets</translation> +<translation id="4081203444152654304">Soek op prent met <ph name="VISUAL_SEARCH_PROVIDER" /></translation> <translation id="4081242589061676262">Kan nie lêer uitsaai nie.</translation> <translation id="408223403876103285"><ph name="WEBSITE" /> het 'n kennisgewing na jou foon toe gestuur. Volg die stappe hier om te bevestig dat dit jy is.</translation> <translation id="4084682180776658562">Boekmerk</translation> @@ -3315,7 +3314,6 @@ <translation id="4101352914005291489">Versteekte SSID</translation> <translation id="4102469565336584882">Ongeldige kode. Jou inskrywing se formaat moet LPA:1$<smdp address>$<activation code> wees</translation> <translation id="4102906002417106771">Herbegin om Powerwash uit te voer</translation> -<translation id="4104163789986725820">Voer uit …</translation> <translation id="4107048419833779140">Identifiseer en maak bergingtoestelle los</translation> <translation id="4108314971463891922">Volg</translation> <translation id="4109135793348361820">Beweeg venster na <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />)</translation> @@ -3679,6 +3677,7 @@ <translation id="4476590490540813026">Atleet</translation> <translation id="4476659815936224889">Om hierdie kode te skandeer, moet jy 'n QR-skandeerderprogram op jou foon of sommige kameraprogramme gebruik.</translation> <translation id="4477015793815781985">Sluit Ctrl, Alt of ⌘ in</translation> +<translation id="4477379360383751882">Soek op prent met <ph name="VISUAL_SEARCH_PROVIDER" /></translation> <translation id="4478664379124702289">Stoor skakel as …</translation> <translation id="4479424953165245642">Bestuur kioskprogramme</translation> <translation id="4479639480957787382">Ethernet</translation> @@ -4125,6 +4124,7 @@ <translation id="4900392736118574277">Jou afskopbladsy is verander na <ph name="URL" />.</translation> <translation id="490051679772058907"><ph name="REFRESH_RATE" /> Hz – deurweef</translation> <translation id="4900652253009739885">Kan nie die enigste skakelaar verwyder wat vir "Kies" toegewys is nie. Druk enige sleutel om <ph name="RESPONSE" />.</translation> +<translation id="4901154724271753917">Vou Onlangs Toegemaak uit</translation> <translation id="4901309472892185668">Kies eksperimenttoestand vir die <ph name="EXPERIMENT_NAME" />-eksperiment.</translation> <translation id="49027928311173603">Die beleid wat van die bediener afgelaai is, is ongeldig: <ph name="VALIDATION_ERROR" />.</translation> <translation id="4906490889887219338">Stel netwerklêerdelings op of bestuur dit. <ph name="LINK_BEGIN" />Kom meer te wete<ph name="LINK_END" /></translation> @@ -5072,6 +5072,7 @@ <translation id="5860494867054883682">Dateer tans jou toestel op na <ph name="CHANNEL_NAME" />-kanaal (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">Wys stilusnutsgoed op die rak</translation> <translation id="5862319196656206789">Stel gekoppelde toestelle op</translation> +<translation id="5862731021271217234">Skakel sinkronisering aan om jou oortjies van jou ander toestelle af te kry</translation> <translation id="5863445608433396414">Aktiveer ontfoutingkenmerke</translation> <translation id="5864195618110239517">Gebruik betaalde verbinding</translation> <translation id="5864754048328252126">Rushandeling terwyl dit laai</translation> @@ -5508,7 +5509,6 @@ <translation id="6291949900244949761">Vra wanneer 'n werf toegang tot USB-toestelle wil hê (aanbeveel)</translation> <translation id="6291953229176937411">Wys in vinder</translation> <translation id="6292699686837272722">Oortjies krimp na medium breedte</translation> -<translation id="6294610283659775533">Jy kan oortjies stuur tussen toestelle wat met dieselfde Google-rekening aangemeld is</translation> <translation id="6294759976468837022">Outoskanderingspoed</translation> <translation id="6295158916970320988">Alle werwe</translation> <translation id="6295855836753816081">Stoor tans …</translation> @@ -7014,6 +7014,7 @@ <translation id="7768526219335215384"><ph name="ORIGIN" /> sal lêers in <ph name="FOLDERNAME" /> kan bekyk</translation> <translation id="7768770796815395237">Verander</translation> <translation id="7768784765476638775">Hardoplees</translation> +<translation id="7769748505895274502">Vou Onlangs Toegemaak in</translation> <translation id="7770406201819593386">Laat loop diagnostiese toetse vir Chrome OS Flex.</translation> <translation id="7770450735129978837">Regtermuisklik</translation> <translation id="7770612696274572992">Prent is van ander toestel af gekopieer</translation>
diff --git a/chrome/app/resources/generated_resources_am.xtb b/chrome/app/resources/generated_resources_am.xtb index 7f118f0..3ff80757 100644 --- a/chrome/app/resources/generated_resources_am.xtb +++ b/chrome/app/resources/generated_resources_am.xtb
@@ -333,7 +333,6 @@ <translation id="1319983966058170660">የ<ph name="SUBPAGE_TITLE" /> ንዑስ ገጽ ተመለስ አዝራር</translation> <translation id="1322046419516468189">በእርስዎ <ph name="SAVED_PASSWORDS_STORE" /> ውስጥ የተቀመጡ የይለፍ ቃላትን ይመልከቱ እና ያስተዳድሩ</translation> <translation id="1324106254079708331">የተነጣጠሩ ጥቃቶች አደጋ ያለበት የማንኛውም ሰው የግል Google መለያዎችን ይጠብቃል</translation> -<translation id="1326317727527857210">ትሮችዎን ከሌሎች መሣሪያዎችዎ ለማግኘት ወደ Chrome ይግቡ።</translation> <translation id="1327272175893960498">የKerberos ቲኬቶች</translation> <translation id="1327495825214193325">የADB ስሕተት ማረሚያን ለማንቃት፣ የዚህ <ph name="DEVICE_TYPE" /> ዳግም ማስጀመር ያስፈልጋል። ማሰናከል ወደ የፋብሪካ ቅንብሮች ዳምግ ማስጀመር ያስፈልገዋል።</translation> <translation id="1327794256477341646">አካባቢዎን የሚፈልጉ ባህሪዎች አይሰሩም</translation> @@ -2435,7 +2434,6 @@ <translation id="3280243678470289153">በChrome ውስጥ ይቆዩ</translation> <translation id="3281892622610078515">የሚገለሉ ፋይሎች እና ፕሮግራሞች፦</translation> <translation id="3282210178675490297">አንድ ትር ለ<ph name="APP_NAME" /> በማጋራት ላይ</translation> -<translation id="3282568296779691940">Chrome ውስጥ ይግቡ</translation> <translation id="3285322247471302225">አዲስ &ትር</translation> <translation id="328571385944182268">የእርስዎን የይለፍ ቃላት ይቀመጡ?</translation> <translation id="3288047731229977326">በገንቢ ሁኔታ የሚሄዱ ጥያዎች የእርስዎን ኮምፒውተር ሊጎዱ ይችላሉ። እርስዎ ገንቢ ካልሆኑ ደህንነትዎን ለማረገገጥ በገንቢ ሁኔታ የሚሄዱ ቅጥያዎችን ማሰናከል አለብዎ።</translation> @@ -3307,7 +3305,6 @@ <translation id="4101352914005291489">የተደበቀ SSID</translation> <translation id="4102469565336584882">ልክ ያልሆነ ኮድ። የእርስዎ ግቤት የLPA:1$<smdp address>$<activation code> ቅርጸት ሊኖረው ይገባል።</translation> <translation id="4102906002417106771">powerwash ለማድረግ እንደገና ያስጀምሩ</translation> -<translation id="4104163789986725820">ወደ &ውጪ ላክ...</translation> <translation id="4107048419833779140">የማከማቻ መሣሪያዎችን ለይተው ይወቁ እና ያስወጡ</translation> <translation id="4108314971463891922">ተከተል</translation> <translation id="4109135793348361820">መስኮት ወደ <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />) ውሰድ</translation> @@ -4116,6 +4113,7 @@ <translation id="4900392736118574277">የእርስዎ ጅምር ገጽ ወደ <ph name="URL" /> ተቀይሯል።</translation> <translation id="490051679772058907"><ph name="REFRESH_RATE" /> ኸዝ - የተጠላለፈ</translation> <translation id="4900652253009739885">ለ«ምረጥ» የተመደበውን ብቸኛውን መቀየሪያ ማስወገድ አይቻልም። ለ<ph name="RESPONSE" /> ማንኛውንም ቁልፍ ይጫኑ።</translation> +<translation id="4901154724271753917">በቅርቡ የተዘጉትን ዘርጋ</translation> <translation id="4901309472892185668">ለ<ph name="EXPERIMENT_NAME" /> ሙከራ የሙከራ ሁኔታን ይምረጡ።</translation> <translation id="49027928311173603">ከአገልጋዩ የወረደው መመሪያ ልክ ያልሆነ ነው፦ <ph name="VALIDATION_ERROR" />።</translation> <translation id="4906490889887219338">የአውታረ መረብ ፋይል ማጋራቶችን ያዋቅሩ ወይም ያቀናብሩ። <ph name="LINK_BEGIN" />የበለጠ ለመረዳት<ph name="LINK_END" /></translation> @@ -5062,6 +5060,7 @@ <translation id="5860494867054883682">የእርስዎን መሣሪያ ወደ <ph name="CHANNEL_NAME" /> ሰርጥ በማዘመን ላይ (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">በመደርደሪያው ውስጥ የስቲለስ መሣሪያዎችን አሳይ</translation> <translation id="5862319196656206789">የተገናኙ መሣሪያዎችን ያቀናብሩ</translation> +<translation id="5862731021271217234">ትሮችዎን ከሌሎች መሣሪያዎችዎ ስምረትን ማብራት ለማግኘት</translation> <translation id="5863445608433396414">የማረሚያ ባህሪያትን ያንቁ</translation> <translation id="5864195618110239517">የሚለካ ግንኙነት ተጠቀም</translation> <translation id="5864754048328252126">ኃይል እየሞላ ሳለ የስራ መፍታት እርምጃ</translation> @@ -5498,7 +5497,6 @@ <translation id="6291949900244949761">አንድ ጣቢያ የዩኤስቢ መሣሪያዎችን መድረስ ሲፈልግ ጠይቅ (የሚመከር)</translation> <translation id="6291953229176937411">በፈላጊ ውስጥ &አሳይ</translation> <translation id="6292699686837272722">ትሮች ወደ መካከለኛ ስፋት ይሰበሰባሉ</translation> -<translation id="6294610283659775533">በተመሳሳዩ Google መለያ በገቡባቸው መሣሪያዎች መካከል ትሮችን መላክ ይችላሉ</translation> <translation id="6294759976468837022">የራስ-ቅኝት ፍጥነት</translation> <translation id="6295158916970320988">ሁሉም ጣቢያዎች</translation> <translation id="6295855836753816081">በማስቀመጥ ላይ...</translation> @@ -7006,6 +7004,7 @@ <translation id="7768526219335215384"><ph name="ORIGIN" /> በ <ph name="FOLDERNAME" /> ውስጥ ያሉትን ፋይሎች ማየት ይችላል</translation> <translation id="7768770796815395237">ለውጥ</translation> <translation id="7768784765476638775">ለመናገር-ይምረጡ</translation> +<translation id="7769748505895274502">በቅርቡ የተዘጉትን ሰብስብ</translation> <translation id="7770406201819593386">የChromeOS Flex የምርመራ ሙከራዎችን ያሂዱ።</translation> <translation id="7770450735129978837">የመዳፊት ቀኝ ጠቅታ</translation> <translation id="7770612696274572992">ምስል ከሌላ መሣሪያ ተቀድቷል</translation>
diff --git a/chrome/app/resources/generated_resources_ar.xtb b/chrome/app/resources/generated_resources_ar.xtb index e987958..af207ec 100644 --- a/chrome/app/resources/generated_resources_ar.xtb +++ b/chrome/app/resources/generated_resources_ar.xtb
@@ -336,7 +336,6 @@ <translation id="1319983966058170660">زر الرجوع إلى الصفحة الفرعية <ph name="SUBPAGE_TITLE" /></translation> <translation id="1322046419516468189">عرض كلمات المرور المحفوظة وإدارتها في <ph name="SAVED_PASSWORDS_STORE" /></translation> <translation id="1324106254079708331">يحمي حسابات Google الشخصية لأي شخص معرّض لخطر الهجمات الموجّهة</translation> -<translation id="1326317727527857210">للحصول على علامات التبويب من أجهزتك الأخرى، سجّل الدخول إلى Chrome.</translation> <translation id="1327272175893960498">تذاكر Kerberos</translation> <translation id="1327495825214193325">لتفعيل خيار "تصحيح الأخطاء عبر ADB"، يجب إعادة تشغيل <ph name="DEVICE_TYPE" />. ويتطلب إيقاف هذا الخيار إعادة ضبط الجهاز على الإعدادات الأصلية.</translation> <translation id="1327794256477341646">لن تعمل الميزات التي تحتاج إلى موقعك الجغرافي.</translation> @@ -2431,7 +2430,6 @@ <translation id="3280243678470289153">الاستمرار في استخدام Chrome</translation> <translation id="3281892622610078515">الملفات والبرامج التي تم وضعها في وحدة العزل:</translation> <translation id="3282210178675490297">مشاركة علامة تبويب مع <ph name="APP_NAME" /></translation> -<translation id="3282568296779691940">تسجيل الدخول إلى Chrome</translation> <translation id="3285322247471302225">&علامة تبويب جديدة</translation> <translation id="328571385944182268">هل تريد حفظ كلمات المرور؟</translation> <translation id="3288047731229977326">يمكن أن تؤدي الإضافات التي تعمل في وضع مطور البرامج إلى إلحاق الضرر بجهاز الكمبيوتر. إذا لم تكن مطور برامج، فيجب إيقاف هذه الإضافات التي تعمل في وضع مطور البرامج للبقاء في أمان.</translation> @@ -3302,7 +3300,6 @@ <translation id="4101352914005291489">معرّف SSID المخفي</translation> <translation id="4102469565336584882">الرمز غير صالح. يجب أن يكون الإدخال بتنسيق LPA:1$<smdp address>$<activation code></translation> <translation id="4102906002417106771">إعادة التشغيل لإجراء عملية powerwash</translation> -<translation id="4104163789986725820">ت&صدير...</translation> <translation id="4107048419833779140">تحديد أجهزة التخزين وإخراجها</translation> <translation id="4108314971463891922">متابعة</translation> <translation id="4109135793348361820">نقل النافذة إلى <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />)</translation> @@ -4111,6 +4108,7 @@ <translation id="4900392736118574277">تم تغيير صفحة بدء التشغيل إلى <ph name="URL" />.</translation> <translation id="490051679772058907"><ph name="REFRESH_RATE" /> هرتز - متداخل</translation> <translation id="4900652253009739885">تتعذّر إزالة مفتاح التحكّم الوحيد المخصَّص للإجراء "اختيار". اضغط على أي مفتاح من أجل <ph name="RESPONSE" />.</translation> +<translation id="4901154724271753917">توسيع قائمة علامات التبويب التي تم إغلاقها مؤخرًا</translation> <translation id="4901309472892185668">يمكنك اختيار حالة للتجربة <ph name="EXPERIMENT_NAME" />.</translation> <translation id="49027928311173603">السياسة التي تم تنزيلها من الخادم غير صالحة: <ph name="VALIDATION_ERROR" />.</translation> <translation id="4906490889887219338">إعداد خوادم مشاركة الملفات على الشبكة أو إدارتها <ph name="LINK_BEGIN" />مزيد من المعلومات<ph name="LINK_END" /></translation> @@ -5057,6 +5055,7 @@ <translation id="5860494867054883682">جارٍ تحديث جهازك إلى قناة <ph name="CHANNEL_NAME" /> (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">عرض أدوات قلم الشاشة في الرف</translation> <translation id="5862319196656206789">إعداد الأجهزة المتّصلة</translation> +<translation id="5862731021271217234">للحصول على علامات التبويب من أجهزتك الأخرى، يُرجى تفعيل المزامنة.</translation> <translation id="5863445608433396414">تفعيل ميزات تصحيح الأخطاء</translation> <translation id="5864195618110239517">استخدام اتصال يفرض تكلفة استخدام</translation> <translation id="5864754048328252126">حالة الخمول أثناء الشحن</translation> @@ -5493,7 +5492,6 @@ <translation id="6291949900244949761">طلب الإذن في حال محاولة أحد المواقع الوصول إلى أجهزة USB (مُوصى به)</translation> <translation id="6291953229176937411">إ&ظهار في الباحث</translation> <translation id="6292699686837272722">عرض علامات التبويب بحجم متوسط</translation> -<translation id="6294610283659775533">يمكنك إرسال علامات التبويب من وإلى الأجهزة التي تم من خلالها تسجيل الدخول إلى حساب Google نفسه.</translation> <translation id="6294759976468837022">سرعة الفحص التلقائي</translation> <translation id="6295158916970320988">جميع المواقع الإلكترونية</translation> <translation id="6295855836753816081">جارٍ الحفظ...</translation> @@ -7008,6 +7006,7 @@ <translation id="7768526219335215384">سيتمكّن <ph name="ORIGIN" /> من الاطّلاع على الملفات في <ph name="FOLDERNAME" />.</translation> <translation id="7768770796815395237">تغيير</translation> <translation id="7768784765476638775">الاختيار والاستماع</translation> +<translation id="7769748505895274502">تصغير قائمة علامات التبويب التي تم إغلاقها مؤخرًا</translation> <translation id="7770406201819593386">تشغيل الاختبارات التشخيصية على نظام التشغيل ChromeOS Flex</translation> <translation id="7770450735129978837">النقر بزر الماوس الأيمن</translation> <translation id="7770612696274572992">تم نسخ الصورة من جهاز آخر.</translation>
diff --git a/chrome/app/resources/generated_resources_as.xtb b/chrome/app/resources/generated_resources_as.xtb index f082386..cd4e11ab6 100644 --- a/chrome/app/resources/generated_resources_as.xtb +++ b/chrome/app/resources/generated_resources_as.xtb
@@ -335,7 +335,6 @@ <translation id="1319983966058170660"><ph name="SUBPAGE_TITLE" /> উপ-পৃষ্ঠালৈ উভতি যোৱাৰ বুটাম</translation> <translation id="1322046419516468189">আপোনাৰ <ph name="SAVED_PASSWORDS_STORE" />ত ছেভ কৰি থোৱা পাছৱর্ডসমূহ চাওক আৰু পৰিচালনা কৰক</translation> <translation id="1324106254079708331">উদ্দেশ্য কৰি কৰা আক্ৰমণৰ বিপদাশংকা থকা যিকোনো লোকৰ ব্যক্তিগত Google একাউণ্টসমূহক ৰক্ষণাবেক্ষণ দিয়ে</translation> -<translation id="1326317727527857210">আপোনাৰ অন্য ডিভাইচৰ পৰা টেববোৰ লাভ কৰিবলৈ Chromeত ছাইন ইন কৰক।</translation> <translation id="1327272175893960498">Kerberos টিকেটসমূহ</translation> <translation id="1327495825214193325">ADB ডিবাগিং সক্ষম কৰিবলৈ এই <ph name="DEVICE_TYPE" />টো এবাৰ ৰিষ্টাৰ্ট কৰা আৱশ্যক। ইয়াক অক্ষম কৰিবলৈ ফেক্টৰী ছেটিংসমূহলৈ ৰিছেট কৰা আৱশ্যক।</translation> <translation id="1327794256477341646">এটা অৱস্থান আৱশ্যক হোৱা সুবিধাসমূহে কাম নকৰিব</translation> @@ -2438,7 +2437,6 @@ <translation id="3280243678470289153">Chromeত থাকক</translation> <translation id="3281892622610078515">পৃথক কৰিবলগীয়া ফাইল আৰু প্ৰ’গ্ৰামসমূহ:</translation> <translation id="3282210178675490297"><ph name="APP_NAME" />লৈ এটা টেব শ্বেয়াৰ কৰি থকা হৈছে</translation> -<translation id="3282568296779691940">Chromeত ছাইন-ইন কৰক</translation> <translation id="3285322247471302225">নতুন &টেব</translation> <translation id="328571385944182268">আপোনাৰ পাছৱৰ্ডসমূহ ছেভ কৰিবনে?</translation> <translation id="3288047731229977326">বিকাশকর্তাৰ ম’ড চলি থকা এক্সটেনশ্বনসমূহে আপোনাৰ কম্পিউটাৰৰ ক্ষতি কৰিব পাৰে। যদি আপুনি কোনো বিকাশকর্তা নহয় তেন্তে আপুনি সুৰক্ষিত হৈ থাকিবলৈ বিকাশকর্তাৰ ম’ডত থকা এক্সটেনশ্বনসমূহ অক্ষম কৰা উচিত।</translation> @@ -3279,6 +3277,7 @@ <translation id="4077919383365622693"><ph name="SITE" />এ ষ্ট’ৰ কৰা সকলো ডেটা আৰু কুকি মচি পেলোৱা হ’ব।</translation> <translation id="4078738236287221428">আগ্ৰাসী</translation> <translation id="4079140982534148664">উন্নত বানান পৰীক্ষক ব্যৱহাৰ কৰক</translation> +<translation id="4081203444152654304"><ph name="VISUAL_SEARCH_PROVIDER" />ৰ জৰিয়তে প্ৰতিচ্ছবিখনৰ ভিতৰত সন্ধান কৰক</translation> <translation id="4081242589061676262">ফাইল কাষ্ট কৰিব পৰা নগ’ল।</translation> <translation id="408223403876103285"><ph name="WEBSITE" />এ আপোনাৰ ফ’নটোলৈ এটা জাননী পঠিয়াইছে। এইগৰাকী আপুনিয়েই বুলি নিশ্চিত কৰিবলৈ তাত থকা পদক্ষেপসমূহ মানক।</translation> <translation id="4084682180776658562">বুকমাৰ্ক কৰক</translation> @@ -3311,7 +3310,6 @@ <translation id="4101352914005291489">লুকুৱাই ৰখা SSID</translation> <translation id="4102469565336584882">অমান্য ক’ড। আপোনাৰ প্ৰৱিষ্টিটোত LPA:1$<smdp ঠিকনা>$<সক্ৰিয়কৰণৰ ক'ড> ফর্মেটটো থাকিব লাগে।</translation> <translation id="4102906002417106771">পাৱাৰৱাশ্ব কৰিবলৈ ৰিষ্টাৰ্ট কৰক</translation> -<translation id="4104163789986725820">ৰ&প্তানি কৰক...</translation> <translation id="4107048419833779140">ষ্ট’ৰেজ ডিভাইচ চিনাক্ত কৰক আৰু বাহিৰ কৰক</translation> <translation id="4108314971463891922">ফ’ল’ কৰক</translation> <translation id="4109135793348361820"><ph name="USER_NAME" /> (<ph name="USER_EMAIL" />)লৈ ৱিণ্ড’ক আঁতৰাওক</translation> @@ -3675,6 +3673,7 @@ <translation id="4476590490540813026">ক্ৰীড়াবিদ</translation> <translation id="4476659815936224889">এই ক’ডটো স্কেন কৰিবলৈ আপুনি নিজৰ ফ’নটোত এটা কিউআৰ স্কেনাৰ এপ্ অথবা কোনো কেমেৰা এপ্ ব্যৱহাৰ কৰিব পাৰে।</translation> <translation id="4477015793815781985">Ctrl, Alt, বা ⌘ অন্তৰ্ভুক্ত হয়</translation> +<translation id="4477379360383751882"><ph name="VISUAL_SEARCH_PROVIDER" />ৰ জৰিয়তে প্ৰতিচ্ছবিখনৰ ভিতৰত সন্ধান কৰক</translation> <translation id="4478664379124702289">এইবুলি লিং&কটো ছেভ কৰক...</translation> <translation id="4479424953165245642">কিঅ'স্ক এপ্লিকেশ্বন পৰিচালনা কৰক</translation> <translation id="4479639480957787382">ইথাৰনেট</translation> @@ -5067,6 +5066,7 @@ <translation id="5860494867054883682">আপোনাৰ ডিভাইচটো <ph name="CHANNEL_NAME" />চেনেললৈ আপডে’ট কৰি থকা হৈথে (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">শ্বেল্ফত ষ্টাইলাছ সঁজুলি দেখুৱাওক</translation> <translation id="5862319196656206789">সংযুক্ত হৈ থকা ডিভাইচসমূহ ছেট আপ কৰক</translation> +<translation id="5862731021271217234">আপোনাৰ অন্য ডিভাইচৰ টেবসমূহ পাবলৈ ছিংক অন কৰক</translation> <translation id="5863445608433396414">ডিবাগিং সুবিধাসমূহ সক্ষম কৰক</translation> <translation id="5864195618110239517">নিৰিখ-নিৰ্দিষ্ট সংযোগ ব্যৱহাৰ কৰক</translation> <translation id="5864754048328252126">চার্জ কৰাৰ সময়ত অন্য একো কাৰ্যকলাপ নকৰাকৈ থকা</translation> @@ -5503,7 +5503,6 @@ <translation id="6291949900244949761">কোনো ছাইটে ইউএছবি ডিভাইচ এক্সেছ কৰিব বিচাৰিলে সোধক (আমি পৰামৰ্শ কৰোঁ)</translation> <translation id="6291953229176937411">&Finderত দেখুৱাওক</translation> <translation id="6292699686837272722">টেবসমূহ এক মধ্যমীয়া প্ৰস্থলৈ সংকুচিত হয়</translation> -<translation id="6294610283659775533">আপুনি একেটা Google একাউণ্টৰ জৰিয়তে ছাইন ইন কৰি থোৱা ডিভাইচসমূহৰ মাজত টেব পঠিয়াব পাৰে</translation> <translation id="6294759976468837022">স্বয়ংক্ৰিয়ভাৱে স্কেন কৰাৰ বেগ</translation> <translation id="6295158916970320988">সকলো ছাইট</translation> <translation id="6295855836753816081">ছেভ কৰি থকা হৈছে...</translation>
diff --git a/chrome/app/resources/generated_resources_az.xtb b/chrome/app/resources/generated_resources_az.xtb index 456053f..93b8aeaec 100644 --- a/chrome/app/resources/generated_resources_az.xtb +++ b/chrome/app/resources/generated_resources_az.xtb
@@ -330,7 +330,6 @@ <translation id="1319983966058170660"><ph name="SUBPAGE_TITLE" /> alt səhifəsinin geri düyməsi</translation> <translation id="1322046419516468189"><ph name="SAVED_PASSWORDS_STORE" /> ünvanında yadda saxlanılmış parollara baxın və idarə edin</translation> <translation id="1324106254079708331">Şəxsi Google Hesablarını hədəflənmiş hücumlardan qoruyur</translation> -<translation id="1326317727527857210">Digər cihazlarınızdan panelləri əldə etmək üçün Chorme'a daxil olun.</translation> <translation id="1327272175893960498">Kerberos biletləri</translation> <translation id="1327495825214193325">ADB sazlamasını aktivləşdirmək üçün bu <ph name="DEVICE_TYPE" /> cihazı yenidən başladılmalıdır. Deaktiv edilməsi üçün ilkin ayarlarına sıfırlanmalıdır.</translation> <translation id="1327794256477341646">Məkanınızı tələb edən xüsusiyyətlər işləməyəcək</translation> @@ -2424,7 +2423,6 @@ <translation id="3280243678470289153">Chrome'da qalın</translation> <translation id="3281892622610078515">Təcrid ediləcək fayl və proqramlar:</translation> <translation id="3282210178675490297">Tab <ph name="APP_NAME" /> ilə paylaşılır</translation> -<translation id="3282568296779691940">Chrome'a daxil olun</translation> <translation id="3285322247471302225">Yeni Tab</translation> <translation id="328571385944182268">Parollar yadda saxlanılsın?</translation> <translation id="3288047731229977326">Developer rejimində işləyən artırmalar kompüterinizə zərər verə bilər. Developer deyilsinizsə, güvənli qalmaq üçün bu artırmaların developer rejimində işləməsinə icazə verməməlisiniz.</translation> @@ -3297,7 +3295,6 @@ <translation id="4101352914005291489">Gizli SSID</translation> <translation id="4102469565336584882">Yanlış kod. Daxiletmə üçün LPA formatı:1$<smdp address>$<activation code></translation> <translation id="4102906002417106771">Powerwash üçün yenidən başladın</translation> -<translation id="4104163789986725820">Eksport...</translation> <translation id="4107048419833779140">Yaddaş cihazları müəyyən edin və boşaldın</translation> <translation id="4108314971463891922">İzləyin</translation> <translation id="4109135793348361820">Pəncərəni <ph name="USER_NAME" /> istifadəçisinə daşıyın (<ph name="USER_EMAIL" />)</translation> @@ -5054,6 +5051,7 @@ <translation id="5860494867054883682">Cihazınız <ph name="CHANNEL_NAME" /> kanalına güncəllənir (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">Buferdə fırça alətlərini göstərin</translation> <translation id="5862319196656206789">Qoşulmuş cihazları ayarlayın</translation> +<translation id="5862731021271217234">Tabları digər cihazlarınızdan əldə etmək üçün sinxronizasiyanı aktiv edin</translation> <translation id="5863445608433396414">Debaq funksiyalarını aktiv edin</translation> <translation id="5864195618110239517">Limitli bağlantıdan istifadə edin</translation> <translation id="5864754048328252126">Şarj edilən zaman cihaz fəaliyyətsiz qaldıqda ediləcək əməliyyat</translation> @@ -5488,7 +5486,6 @@ <translation id="6291949900244949761">Sayt USB cihazlarına daxil olmaq istədiyi zaman icazə tələb edin (məsləhətlidir)</translation> <translation id="6291953229176937411">&Axtarıcıda göstərin</translation> <translation id="6292699686837272722">Tabların ölçüsü orta enə keçirilir</translation> -<translation id="6294610283659775533">Eyni Google Hesabı ilə daxil olunan cihazlar arasında tablar göndərə bilərsiniz</translation> <translation id="6294759976468837022">Avtomatik skanlama sürəti</translation> <translation id="6295158916970320988">Bütün saytlar</translation> <translation id="6295855836753816081">Yadda saxlanılır...</translation> @@ -5912,6 +5909,7 @@ <translation id="6709133671862442373">Xəbərlər</translation> <translation id="6709357832553498500"><ph name="EXTENSIONNAME" /> istifadə edərək qoşulun</translation> <translation id="6710213216561001401">Əvvəlki</translation> +<translation id="6710394144992407503">Veb səhifələrdə mətn yazarkən orfoqrafik səhvləri yoxlayın</translation> <translation id="6711146141291425900">Endirmələr üçün <ph name="WEB_DRIVE" /> hesabını əlaqələndirin</translation> <translation id="6712943853047024245"><ph name="WEBSITE" /> üçün bu istifadəçi adı ilə parolu artıq yadda saxlamısınız</translation> <translation id="6713233729292711163">İş Profili əlavə edin</translation> @@ -6533,6 +6531,7 @@ <translation id="7340757554212515731">Xəta hesabatları, eləcə də diaqnostika və istifadə datasını avtomatik Google'a göndərir</translation> <translation id="7341834142292923918">Bu sayta giriş tələb edir</translation> <translation id="7343372807593926528">Rəy göndərməzdən əvvəl problemi təsvir edin.</translation> +<translation id="7344585835349671209">Cihazınızda HTTPS/SSL sertifikatlarını idarə edin</translation> <translation id="7345706641791090287">Parolunuzu təsdiq edin</translation> <translation id="7346909386216857016">Ok, anladım</translation> <translation id="7347452120014970266">Bununla <ph name="ORIGIN_NAME" /> tərəfindən saxlanılan bütün data, kukilər və orada quraşdırılmış tətbiqlər silinəcək</translation> @@ -6662,6 +6661,7 @@ <translation id="7460045493116006516">Quraşdırdığınız hazırki tema</translation> <translation id="7461924472993315131">Pin</translation> <translation id="746216226901520237">Növbəti dəfə telefon <ph name="DEVICE_TYPE" /> cihazını kiliddən çıxaracaq. Ayarlardan Smart Lock'u deaktiv edə bilərsiniz.</translation> +<translation id="7464153996453281700">Komponent artıq güncəldir</translation> <translation id="7464637891177137294">Google Hesabınızda saxlayın, <ph name="ACCOUNT" /></translation> <translation id="7465522323587461835">{NUM_OPEN_TABS,plural, =1{# açıq tab, tab sətrini dəyişmək üçün basın}other{# açıq tab, tab sətrini dəyişmək üçün basın}}</translation> <translation id="7465635034594602553">Xəta baş verdi. Bir neçə dəqiqə gözləyib <ph name="APP_NAME" /> tətbiqini yenidən işə salın.</translation> @@ -7170,6 +7170,7 @@ <translation id="793531125873261495">Virtual cihazı endirmək alınmadı. Sonra yenidən cəhd edin.</translation> <translation id="7935451262452051102"><ph name="PERCENT" />% tamamlanıb</translation> <translation id="7939062555109487992">Qabaqcıl seçimlər</translation> +<translation id="7939328347457537652">Cihaz sertifikatlarını idarə edin</translation> <translation id="7939412583708276221">Hər bir halda saxlamaq</translation> <translation id="7942349550061667556">Qırmızı</translation> <translation id="7943368935008348579">PDF endirin</translation>
diff --git a/chrome/app/resources/generated_resources_be.xtb b/chrome/app/resources/generated_resources_be.xtb index 70cbdff..e1a8aa5 100644 --- a/chrome/app/resources/generated_resources_be.xtb +++ b/chrome/app/resources/generated_resources_be.xtb
@@ -335,7 +335,6 @@ <translation id="1319983966058170660">Кнопка вяртання на ўкладзеную старонку "<ph name="SUBPAGE_TITLE" />"</translation> <translation id="1322046419516468189">Праглядзець захаваныя паролі і кіраваць імі можна ў раздзеле <ph name="SAVED_PASSWORDS_STORE" /></translation> <translation id="1324106254079708331">Праграма абараняе асабістыя Уліковыя запісы Google ад накіраваных атак</translation> -<translation id="1326317727527857210">Каб бачыць укладкі з іншых сваіх прылад, увайдзіце ў Chrome.</translation> <translation id="1327272175893960498">Білеты Kerberos</translation> <translation id="1327495825214193325">Уключэнне адладкі ADB патрабуе перазапуску прылады <ph name="DEVICE_TYPE" />. Выключэнне яе патрабуе скіду да заводскіх налад.</translation> <translation id="1327794256477341646">Функцыі, якім патрэбна інфармацыя пра ваша месцазнаходжанне, не будуць працаваць</translation> @@ -362,6 +361,7 @@ <translation id="1347256498747320987">Усталёўка абнаўленняў і праграм. Працягваючы, вы дазваляеце гэтай прыладзе аўтаматычна спампоўваць і ўсталёўваць абнаўленні і праграмы ад Google, вашага аператара і вытворцы прылады, у тым ліку праз сотавую перадачу даных. Некаторыя з гэтых праграм могуць прапаноўваць платнае змесціва. <ph name="BEGIN_LINK1" />Даведацца больш<ph name="END_LINK1" /></translation> <translation id="1347512539447549782">Сховішча Linux</translation> <translation id="1347975661240122359">Абнаўленне пачнецца, калі акумулятар будзе зараджаны на <ph name="BATTERY_LEVEL" />%.</translation> +<translation id="1348966090521113558">Налады спецыяльных магчымасцей для мышы</translation> <translation id="1353275871123211385">Выкарыстоўваць функцыі бацькоўскага кантролю (напрыклад, ухваляць праграмы і задаваць абмежаванні часу карыстання прыладамі) можна толькі тады, калі ў дзіцяці ёсць Уліковы запіс Google, якім кіруюць бацькі. Пазней можна дадаць навучальны ўліковы запіс, каб выкарыстоўваць такія інструменты, як Google Клас.</translation> <translation id="135389172849514421">Мова даступная па-за сеткай</translation> <translation id="1353980523955420967">Не ўдалося знайсці PPD. Упэўніцеся, што Chromebook падключаны да інтэрнэту, і паўтарыце спробу.</translation> @@ -1786,6 +1786,7 @@ <translation id="2653659639078652383">Адправіць</translation> <translation id="265390580714150011">Значэнне поля</translation> <translation id="2654553774144920065">Запыт на друк</translation> +<translation id="2657612187216250073">Налады спецыяльных магчымасцей для ўказальніка</translation> <translation id="2658941648214598230">Паказаць арыгінальнае змесціва?</translation> <translation id="2659381484350128933"><ph name="FOOTNOTE_POINTER" />Функцыі адрозніваюцца ў залежнасці ад прылады</translation> <translation id="2659971421398561408">Змяніць памер дыска ў Crostini</translation> @@ -1949,6 +1950,7 @@ <translation id="2801954693771979815">Памер экрана</translation> <translation id="2802557211515765772">Няма прынтараў пад кіраваннем</translation> <translation id="2803313416453193357">Адкрыць папку</translation> +<translation id="2803719750464280163">Пацвердзіце, што <ph name="PASSKEY" /> — гэта той ключ доступу, які паказваецца на прыладзе з Bluetooth "<ph name="DEVICE" />".</translation> <translation id="2804043232879091219">Не ўдалося адкрыць альтэрнатыўны браўзер</translation> <translation id="2804667941345577550">Будзе выкананы выхад з гэтага сайта, у тым ліку на адкрытых укладках</translation> <translation id="2804680522274557040">Камера выключана</translation> @@ -2425,7 +2427,6 @@ <translation id="3280243678470289153">Застацца ў браўзеры Chrome</translation> <translation id="3281892622610078515">Файлы і праграмы для адпраўкі ў каранцін:</translation> <translation id="3282210178675490297">Укладка абагульваецца з <ph name="APP_NAME" /></translation> -<translation id="3282568296779691940">Увайсці ў Chrome</translation> <translation id="3285322247471302225">Новая &ўкладка</translation> <translation id="328571385944182268">Захоўваць паролі?</translation> <translation id="3288047731229977326">Пашырэнні, якія працуюць у рэжыме распрацоўшчыка, могуць пашкодзіць камп'ютар. Калі вы не распрацоўшчык, вам у мэтах бяспекі трэба забараніць гэтым пашырэнням працаваць у рэжыме распрацоўшчыка.</translation> @@ -2865,6 +2866,7 @@ <translation id="370649949373421643">Уключыць Wi-Fi</translation> <translation id="370665806235115550">Загрузка…</translation> <translation id="3707163604290651814">Карыстальнік увайшоў у сістэму як <ph name="NAME" /></translation> +<translation id="3708295717182051206">Субцітры для асоб з парушэннем слыху</translation> <translation id="3708684582558000260">Не дазваляць сайтам завяршаць адпраўку або атрыманне даных</translation> <translation id="3709244229496787112">Праца браўзера была завершана пры незакончанай спампоўцы.</translation> <translation id="371174301504454251">У мэтах аховы вашай прыватнасці сайты са спіса, унесеныя ў яго больш чым 4 тыдні таму назад, аўтаматычна выдаляюцца. Сайт, які вы наведаеце паўторна, можа з'явіцца ў спісе зноў. Вы таксама можаце выдаліць нейкі сайт, калі не хочаце, каб ён вызначаў вашы інтарэсы.</translation> @@ -3298,7 +3300,6 @@ <translation id="4101352914005291489">Схаваны ідэнтыфікатар SSID</translation> <translation id="4102469565336584882">Няправільны код. Запіс павінен мець фармат LPA:1$<адрас smdp>$<код актывацыі></translation> <translation id="4102906002417106771">Перазапусціце, каб скінуць налады функцыяй Powerwash</translation> -<translation id="4104163789986725820">Ідзе э&кспарт...</translation> <translation id="4107048419833779140">Вызначыць і выдаліць прылады сховішча</translation> <translation id="4108314971463891922">Падпісацца</translation> <translation id="4109135793348361820">Перамясціць акно карыстальніку <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />)</translation> @@ -3947,6 +3948,7 @@ <translation id="475088594373173692">Першы карыстальнік</translation> <translation id="4756378406049221019">Спыніць/Перазагрузіць</translation> <translation id="4756388243121344051">&Гісторыя</translation> +<translation id="4756671452988984333">Тэкст для аўдыя</translation> <translation id="4759202969060787081">Не адкрываць</translation> <translation id="4759238208242260848">Спампоўкі</translation> <translation id="4761104368405085019">Выкарыстоўваць мікрафон</translation> @@ -5052,6 +5054,7 @@ <translation id="5860494867054883682">Ідзе абнаўленне прылады да версіі <ph name="CHANNEL_NAME" /> (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">Паказваць інструменты стыла на паліцы</translation> <translation id="5862319196656206789">Наладзіць падключаныя прылады</translation> +<translation id="5862731021271217234">Каб глядзець укладкі са сваіх іншых прылад, уключыце сінхранізацыю</translation> <translation id="5863445608433396414">Уключыць функцыі адладкі</translation> <translation id="5864195618110239517">Выкарыстоўваць падключэнне з улікам трафіка</translation> <translation id="5864754048328252126">Пры бяздзейнасці падчас зарадкі</translation> @@ -5488,7 +5491,6 @@ <translation id="6291949900244949761">Пытацца, калі сайт запытвае доступ да USB-прылад (рэкамендуецца)</translation> <translation id="6291953229176937411">&Паказаць у акне Finder</translation> <translation id="6292699686837272722">Укладкі сціскаюцца і маюць сярэднюю шырыню</translation> -<translation id="6294610283659775533">Вы можаце адпраўляць укладкі на свае прылады, на якіх выкананы ўваход у адзін і той жа Уліковы запіс Google</translation> <translation id="6294759976468837022">Хуткасць аўтаматычнага сканіравання</translation> <translation id="6295158916970320988">Усе сайты</translation> <translation id="6295855836753816081">Ідзе захаванне...</translation> @@ -6887,6 +6889,7 @@ <translation id="7668423670802040666">У Менеджары пароляў Google для ўліковага запісу <ph name="ACCOUNT" /></translation> <translation id="7669825497510425694">{NUM_ATTEMPTS,plural, =1{Няправільны PIN-код. У вас засталася адна спроба.}one{Няправільны PIN-код. У вас засталася # спроба.}few{Няправільны PIN-код. У вас засталося # спробы.}many{Няправільны PIN-код. У вас засталося # спроб.}other{Няправільны PIN-код. У вас засталося # спробы.}}</translation> <translation id="7670434942695515800">Для лепшай прадукцыйнасці сістэмы абнавіце яе да апошняй версіі. Мы рэкамендуем стварыць рэзервовыя копіі файлаў на выпадак збою пры абнаўленні. Як толькі пачнецца абнаўленне, Linux завершыць працу. Захавайце адкрытыя файлы, перш чым працягнуць. <ph name="LINK_START" />Даведацца больш<ph name="LINK_END" /></translation> +<translation id="7670483791111801022">Субцітры</translation> <translation id="7671130400130574146">Выкарыстоўваць сістэмныя загаловак і межы акна</translation> <translation id="767127784612208024">Пацвердзіце скід дотыкам да ключа</translation> <translation id="7672520070349703697"><ph name="HUNG_IFRAME_URL" />, старонка "<ph name="PAGE_TITLE" />".</translation> @@ -7972,6 +7975,7 @@ <translation id="8724859055372736596">&Паказаць у папцы</translation> <translation id="8725066075913043281">Паўтарыць спробу</translation> <translation id="8725178340343806893">Абраныя і закладкі</translation> +<translation id="87254326763805752">Пацвердзіце ключ доступу</translation> <translation id="8726206820263995930">Памылка пры атрыманні налад палітыкі з сервера: <ph name="CLIENT_ERROR" />.</translation> <translation id="8728351286589123703">Выбраныя дазволы будуць скінуты</translation> <translation id="8729133765463465108">Адсканіраваць QR-код з дапамогай камеры</translation>
diff --git a/chrome/app/resources/generated_resources_bg.xtb b/chrome/app/resources/generated_resources_bg.xtb index 0c530ab..749ed20 100644 --- a/chrome/app/resources/generated_resources_bg.xtb +++ b/chrome/app/resources/generated_resources_bg.xtb
@@ -334,7 +334,6 @@ <translation id="1319983966058170660">Бутон за връщане назад на подстраницата <ph name="SUBPAGE_TITLE" /></translation> <translation id="1322046419516468189">Преглеждайте и управлявайте запазените пароли в <ph name="SAVED_PASSWORDS_STORE" /></translation> <translation id="1324106254079708331">Предпазва личните профили в Google на всички хора, които са изложени на риск от насочени атаки</translation> -<translation id="1326317727527857210">Влезте в Chrome, за да получите разделите си от другите си устройства.</translation> <translation id="1327272175893960498">Пропуски за Kerberos</translation> <translation id="1327495825214193325">За да активирате отстраняването на грешки през ADB, трябва да рестартирате това устройство <ph name="DEVICE_TYPE" />. За деактивирането му е необходимо да бъдат възстановени фабричните настройки.</translation> <translation id="1327794256477341646">Функциите, които изискват достъп до местоположението ви, няма да работят</translation> @@ -2437,7 +2436,6 @@ <translation id="3280243678470289153">Оставане в Chrome</translation> <translation id="3281892622610078515">Файлове и програми, които да бъдат поставени под карантина:</translation> <translation id="3282210178675490297">Споделя се раздел с(ъс) <ph name="APP_NAME" /></translation> -<translation id="3282568296779691940">Вход в Chrome</translation> <translation id="3285322247471302225">Нов &раздел</translation> <translation id="328571385944182268">Да се запазят ли паролите ви?</translation> <translation id="3288047731229977326">Разширенията, които се изпълняват в режим за програмисти, могат да навредят на компютъра ви. Ако не сте програмист, за по-голяма безопасност трябва да деактивирате изпълнението им в този режим.</translation> @@ -3312,7 +3310,6 @@ <translation id="4101352914005291489">Скрит SSID</translation> <translation id="4102469565336584882">Невалиден код. Въведеното от вас трябва да е във формат LPA:1$<SM-DP адрес>$<код за активиране></translation> <translation id="4102906002417106771">Рестартиране за извършване на Powerwash</translation> -<translation id="4104163789986725820">Екс&портиране...</translation> <translation id="4107048419833779140">Идентифициране и изваждане на устройства за съхранение</translation> <translation id="4108314971463891922">Следване</translation> <translation id="4109135793348361820">Преместване на прозореца към <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />)</translation> @@ -4122,6 +4119,7 @@ <translation id="4900392736118574277">Страницата ви при стартиране бе променена на <ph name="URL" />.</translation> <translation id="490051679772058907"><ph name="REFRESH_RATE" /> Хц – презредова развивка</translation> <translation id="4900652253009739885">Единственият превключвател, за който е зададено „Избиране“, не може да бъде премахнат. Натиснете който и да е клавиш за <ph name="RESPONSE" />.</translation> +<translation id="4901154724271753917">Разгъване на наскоро затворените</translation> <translation id="4901309472892185668">Изберете състояние за експеримента „<ph name="EXPERIMENT_NAME" />“.</translation> <translation id="49027928311173603">Изтегленото от сървъра правило е невалидно: <ph name="VALIDATION_ERROR" />.</translation> <translation id="4906490889887219338">Настройване или управление на споделени хранилища в мрежата. <ph name="LINK_BEGIN" />Научете повече<ph name="LINK_END" /></translation> @@ -5069,6 +5067,7 @@ <translation id="5860494867054883682">Устройството ви се актуализира до следния канал: <ph name="CHANNEL_NAME" /> (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">Показване на инструментите за писане в лавицата</translation> <translation id="5862319196656206789">Настройване на свързаните устройства</translation> +<translation id="5862731021271217234">Включете синхронизирането, за да получите разделите си от другите си устройства</translation> <translation id="5863445608433396414">Активиране на функциите за отстраняване на грешки</translation> <translation id="5864195618110239517">Използване на връзка с отчитане</translation> <translation id="5864754048328252126">Действие при неактивност, когато устройството се зарежда</translation> @@ -5505,7 +5504,6 @@ <translation id="6291949900244949761">Извеждане на запитване, когато сайт иска достъп до USB устройства (препоръчително)</translation> <translation id="6291953229176937411">&Показване във Finder</translation> <translation id="6292699686837272722">Разделите се свиват до размер със средна ширина</translation> -<translation id="6294610283659775533">Можете да изпращате раздели до други устройства, на които сте влезли в един и същ профил в Google</translation> <translation id="6294759976468837022">Скорост на автоматичното сканиране</translation> <translation id="6295158916970320988">Всички сайтове</translation> <translation id="6295855836753816081">Запазва се...</translation> @@ -7011,6 +7009,7 @@ <translation id="7768526219335215384"><ph name="ORIGIN" /> ще може да преглежда файловете в(ъв) „<ph name="FOLDERNAME" />“</translation> <translation id="7768770796815395237">Промяна</translation> <translation id="7768784765476638775">Прочитане на глас</translation> +<translation id="7769748505895274502">Свиване на наскоро затворените</translation> <translation id="7770406201819593386">Провеждане на диагностични тестове на ChromeOS Flex.</translation> <translation id="7770450735129978837">Кликване с десния бутон на мишката</translation> <translation id="7770612696274572992">Изображение, копирано от друго устройство</translation>
diff --git a/chrome/app/resources/generated_resources_bn.xtb b/chrome/app/resources/generated_resources_bn.xtb index ea14fba0..e3b367f 100644 --- a/chrome/app/resources/generated_resources_bn.xtb +++ b/chrome/app/resources/generated_resources_bn.xtb
@@ -335,7 +335,6 @@ <translation id="1319983966058170660"><ph name="SUBPAGE_TITLE" /> সাবপেজে ফিরে যাওয়ার বোতাম</translation> <translation id="1322046419516468189">আপনার <ph name="SAVED_PASSWORDS_STORE" />-এ সেভ করা পাসওয়ার্ড দেখুন এবং পরিচালনা করুন</translation> <translation id="1324106254079708331">টার্গেট করা অ্যাটাকের ঝুঁকি থেকে যেকোনও Google অ্যাকাউন্টকে রক্ষা করে</translation> -<translation id="1326317727527857210">আপনার অন্য ডিভাইসগুলি থেকে আপনার ট্যাবগুলি পেতে, Chrome-এ সাইন-ইন করুন।</translation> <translation id="1327272175893960498">Kerberos টিকিট</translation> <translation id="1327495825214193325">ADB ডিবাগিং চালু করতে, এই <ph name="DEVICE_TYPE" /> রিস্টার্ট করতে হবে। এটি বন্ধ করতে ফ্যাক্টরি সেটিংসে রিসেট করতে হবে।</translation> <translation id="1327794256477341646">যেসব ফিচার ব্যবহার করতে আপনার লোকেশন জানা দরকার সেগুলি কাজ করবে না</translation> @@ -2441,7 +2440,6 @@ <translation id="3280243678470289153">Chrome থেকে যান</translation> <translation id="3281892622610078515">ফাইল এবং প্রোগ্রাম কোয়ারেন্টাইন করা হবে:</translation> <translation id="3282210178675490297"><ph name="APP_NAME" />-এর সাথে একটি ট্যাব শেয়ার করা হচ্ছে</translation> -<translation id="3282568296779691940">Chrome-এ সাইন-ইন করুন</translation> <translation id="3285322247471302225">নতুন &ট্যাব</translation> <translation id="328571385944182268">আপনার পাসওয়ার্ড সেভ করবেন?</translation> <translation id="3288047731229977326">ডেভেলপার মোডে চলমান এক্সটেনশনগুলি আপনার কম্পিউটারের ক্ষতি করতে পারে৷ যদি আপনি একজন ডেভেলপার না হন, তবে সুরক্ষিত থাকার জন্য আপনার এই এক্সটেনশনগুলিকে ডেভেলপার মোডে চালানো বন্ধ করা উচিৎ৷</translation> @@ -3314,7 +3312,6 @@ <translation id="4101352914005291489">লুকানো SSID</translation> <translation id="4102469565336584882">ভুল কোড। আপনার এন্ট্রি LPA:1$<smdp address>$<activation code> ফর্ম্যাটে হতে হবে</translation> <translation id="4102906002417106771">পাওয়ারওয়াশ রিস্টার্ট করুন</translation> -<translation id="4104163789986725820">র&প্তানি...</translation> <translation id="4107048419833779140">স্টোরেজ ডিভাইসগুলি শনাক্ত করে সরিয়ে দিন</translation> <translation id="4108314971463891922">ফলো করুন</translation> <translation id="4109135793348361820"><ph name="USER_NAME" /> (<ph name="USER_EMAIL" />) এ উইন্ডো সরান</translation> @@ -4126,6 +4123,7 @@ <translation id="4900392736118574277">আপনার শুরুর পৃষ্ঠা <ph name="URL" /> এ পরিবর্তন করা হয়েছে।</translation> <translation id="490051679772058907"><ph name="REFRESH_RATE" /> হার্জ - ইন্টারলেস করা</translation> <translation id="4900652253009739885">'বেছে নিন' বিকল্পের জন্য অ্যাসাইন করা একমাত্র সুইচ সরিয়ে দেওয়া যাবে না। <ph name="RESPONSE" />-এর জন্য যেকোনও 'কী' প্রেস করুন।</translation> +<translation id="4901154724271753917">সম্প্রতি বন্ধ হওয়া বোতামগুলি বড় করুন</translation> <translation id="4901309472892185668"><ph name="EXPERIMENT_NAME" /> এক্সপেরিমেন্টের জন্য এক্সপেরিমেন্টের স্ট্যাটাস বেছে নিন।</translation> <translation id="49027928311173603">সার্ভার থেকে ডাউনলোড করা নীতিটি ভুল: <ph name="VALIDATION_ERROR" />৷</translation> <translation id="4906490889887219338">নেটওয়ার্ক ফাইল শেয়ার (SMB) সেট-আপ বা ম্যানেজ করুন। <ph name="LINK_BEGIN" />আরও জানুন<ph name="LINK_END" /></translation> @@ -5073,6 +5071,7 @@ <translation id="5860494867054883682">আপনার ডিভাইস <ph name="CHANNEL_NAME" /> চ্যানেলে আপডেট করা হচ্ছে (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">শেল্ফে স্টাইলাস টুল দেখান</translation> <translation id="5862319196656206789">কানেক্ট থাকা ডিভাইসগুলি সেট আপ করুন</translation> +<translation id="5862731021271217234">আপনার অন্যান্য ডিভাইস থেকে ট্যাবগুলি পেতে সিঙ্ক বিকল্প চালু করুন</translation> <translation id="5863445608433396414">ডিবাগিং বৈশিষ্ট্যাবলী চালু করুন</translation> <translation id="5864195618110239517">মিটার্ড ইন্টারনেট কানেকশন ব্যবহার করুন</translation> <translation id="5864754048328252126">চার্জ করার সময়ে ফোন ইনঅ্যাক্টিভ স্ট্যাটাসে রাখা</translation> @@ -5510,7 +5509,6 @@ <translation id="6291949900244949761">কোনও সাইট ইউএসবি ডিভাইস অ্যাক্সেস করতে চাইলে আমাকে জিজ্ঞাসা করুন (প্রস্তাবিত)</translation> <translation id="6291953229176937411">ফাইন্ডারে &দেখান</translation> <translation id="6292699686837272722">ট্যাব মাঝারি সাইজে সঙ্কুচিত হয়</translation> -<translation id="6294610283659775533">আপনি একই Google অ্যাকাউন্টের মাধ্যমে সাইন-ইন করা ডিভাইসের মধ্যে ট্যাব পাঠাতে পারেন</translation> <translation id="6294759976468837022">অটো-স্ক্যানের স্পিড</translation> <translation id="6295158916970320988">সমস্ত সাইট</translation> <translation id="6295855836753816081">সংরক্ষণ করা হচ্ছে...</translation> @@ -5936,6 +5934,7 @@ <translation id="6709133671862442373">News</translation> <translation id="6709357832553498500"><ph name="EXTENSIONNAME" /> ব্যবহার করে সংযোগ করুন</translation> <translation id="6710213216561001401">আগের</translation> +<translation id="6710394144992407503">ওয়েব পৃষ্ঠাতে টেক্সট টাইপ করার সময় বানান সংক্রান্ত সমস্যা চেক করুন</translation> <translation id="6711146141291425900">ডাউনলোড করার জন্য <ph name="WEB_DRIVE" /> অ্যাকাউন্ট লিঙ্ক করুন</translation> <translation id="6712943853047024245"><ph name="WEBSITE" />-এ এই ইউজারনেম সহ আপনি আগেই একটি পাসওয়ার্ড সেভ করেছেন</translation> <translation id="6713233729292711163">অফিস প্রোফাইল যোগ করুন</translation> @@ -6557,6 +6556,7 @@ <translation id="7340757554212515731">ক্র্যাশ রিপোর্ট, ডায়াগনস্টিক ও ব্যবহারের ডেটা অটোমেটিক Google-কে পাঠানো হয়</translation> <translation id="7341834142292923918">এই সাইটে অ্যাক্সেস চায়</translation> <translation id="7343372807593926528">মতামত পাঠানোর আগে সমস্যাটি বর্ণনা করুন।</translation> +<translation id="7344585835349671209">আপনার ডিভাইসে HTTPS/SSL সার্টিফিকেট ম্যানেজ করুন</translation> <translation id="7345706641791090287">আপনার পাসওয়ার্ড নিশ্চিত করুন</translation> <translation id="7346909386216857016">ঠিক আছে, বুঝেছি</translation> <translation id="7347452120014970266">এর ফলে <ph name="ORIGIN_NAME" /> ও এর ইনস্টল করা অ্যাপগুলির স্টোর করা সমস্ত ডেটা ও কুকি মুছে যাবে</translation> @@ -6686,6 +6686,7 @@ <translation id="7460045493116006516">বর্তমানে আপনার ইনস্টল করা থিম</translation> <translation id="7461924472993315131">পিন</translation> <translation id="746216226901520237">পরের বার, আপনার ফোন <ph name="DEVICE_TYPE" /> আনলক করবে। সেটিংসে গিয়ে Smart Lock বন্ধ করতে পারবেন।</translation> +<translation id="7464153996453281700">কম্পোনেন্ট আগে থেকেই আপ-টু-ডেট আছে</translation> <translation id="7464637891177137294">আপনার <ph name="ACCOUNT" />, Google অ্যাকাউন্টে এটি সেভ করুন</translation> <translation id="7465522323587461835">{NUM_OPEN_TABS,plural, =1{#টি খোলা ট্যাব, ট্যাব স্ট্রিপ টগল করতে প্রেস করুন}one{#টি খোলা ট্যাব, ট্যাব স্ট্রিপ টগল করতে প্রেস করুন}other{#টি খোলা ট্যাব, ট্যাব স্ট্রিপ টগল করতে প্রেস করুন}}</translation> <translation id="7465635034594602553">কিছু সমস্যা হয়েছে। কয়েক মিনিট অপেক্ষা করে আবার <ph name="APP_NAME" /> চালু করুন।</translation> @@ -7018,6 +7019,7 @@ <translation id="7768526219335215384"><ph name="ORIGIN" /> <ph name="FOLDERNAME" /> ফোল্ডারের সব ফাইল দেখতে পারবে</translation> <translation id="7768770796815395237">পরিবর্তন করুন</translation> <translation id="7768784765476638775">বাছুন ও শুনুন</translation> +<translation id="7769748505895274502">সম্প্রতি বন্ধ হওয়া বোতামগুলি আড়াল করুন</translation> <translation id="7770406201819593386">ChromeOS Flex-এর ডায়াগনস্টিকস টেস্ট রান করান।</translation> <translation id="7770450735129978837">ডানদিকের মাউস ক্লিক করার বোতাম</translation> <translation id="7770612696274572992">অন্য ডিভাইস থেকে ছবি কপি করা হয়েছে</translation> @@ -7193,6 +7195,7 @@ <translation id="793531125873261495">ভার্চুয়াল মেশিন ডাউনলোড করার সময় সমস্যা হয়েছে। আবার চেষ্টা করুন।</translation> <translation id="7935451262452051102"><ph name="PERCENT" />% হয়ে গেছে</translation> <translation id="7939062555109487992">উন্নত বিকল্প</translation> +<translation id="7939328347457537652">ডিভাইস সার্টিফিকেট ম্যানেজ করুন</translation> <translation id="7939412583708276221">যে কোনও অবস্থাতেই রাখুন</translation> <translation id="7942349550061667556">লাল</translation> <translation id="7943368935008348579">পিডিএফ ফাইল ডাউনলোড করুন</translation>
diff --git a/chrome/app/resources/generated_resources_bs.xtb b/chrome/app/resources/generated_resources_bs.xtb index 3f56a69..50d4d17 100644 --- a/chrome/app/resources/generated_resources_bs.xtb +++ b/chrome/app/resources/generated_resources_bs.xtb
@@ -336,7 +336,6 @@ <translation id="1319983966058170660">Dugme za povratak na podstranicu <ph name="SUBPAGE_TITLE" /></translation> <translation id="1322046419516468189">Prikažite i upravljajte lozinkama koje čuva <ph name="SAVED_PASSWORDS_STORE" /></translation> <translation id="1324106254079708331">Štiti lične Google račune svih onih koji su u opasnosti od ciljanih napada</translation> -<translation id="1326317727527857210">Da bi se prikazale kartice s vaših ostalih uređaja, prijavite se na Chrome.</translation> <translation id="1327272175893960498">Kerberos tiketi</translation> <translation id="1327495825214193325">Da omogućite otklanjanje grešaka putem ADB-a, potrebno je ponovo pokrenuti ovaj uređaj <ph name="DEVICE_TYPE" />. Onemogućavanje zahtijeva vraćanje na fabričke postavke.</translation> <translation id="1327794256477341646">Funkcije za koje je potrebna vaša lokacija neće funkcionirati</translation> @@ -2439,7 +2438,6 @@ <translation id="3280243678470289153">Ostani u Chromeu</translation> <translation id="3281892622610078515">Fajlovi i programi za karantin:</translation> <translation id="3282210178675490297">Dijeljenje kartice s aplikacijom <ph name="APP_NAME" /></translation> -<translation id="3282568296779691940">Prijava na Chrome</translation> <translation id="3285322247471302225">Nova kartica</translation> <translation id="328571385944182268">Sačuvati vaše lozinke?</translation> <translation id="3288047731229977326">Ekstenzije u načinu rada za programere mogu nanijeti štetu vašem računaru. Ako niste programer, radi sigurnosti onemogućite rad ovih ekstenzija u načinu rada za programere.</translation> @@ -3281,7 +3279,7 @@ <translation id="4077919383365622693">Obrisat će se svi podaci i kolačići koje je pohranila web lokacija <ph name="SITE" />.</translation> <translation id="4078738236287221428">Agresivno</translation> <translation id="4079140982534148664">Koristi naprednu provjeru pravopisa</translation> -<translation id="4081203444152654304">Pretraži na slici pomoću usluge <ph name="VISUAL_SEARCH_PROVIDER" /></translation> +<translation id="4081203444152654304">Pretražite unutar slike koristeći <ph name="VISUAL_SEARCH_PROVIDER" /></translation> <translation id="4081242589061676262">Nije moguće emitirati datoteku.</translation> <translation id="408223403876103285">Web lokacija <ph name="WEBSITE" /> je poslala obavještenje na vaš telefon. Da potvrdite identitet, pratite korake na telefonu.</translation> <translation id="4084682180776658562">Oznaka</translation> @@ -3314,7 +3312,6 @@ <translation id="4101352914005291489">Skriveni SSID</translation> <translation id="4102469565336584882">Nevažeći kôd. Vaš unos mora biti u formatu LPA:1$<smdp address>$<activation code></translation> <translation id="4102906002417106771">Ponovo pokreni da se izvrši powerwash</translation> -<translation id="4104163789986725820">I&zvezi...</translation> <translation id="4107048419833779140">Prepoznavanje i isključivanje uređaja za pohranu</translation> <translation id="4108314971463891922">Prati</translation> <translation id="4109135793348361820">Premjesti prozor korisniku <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />)</translation> @@ -3678,7 +3675,7 @@ <translation id="4476590490540813026">Sportistkinja</translation> <translation id="4476659815936224889">Da skenirate ovaj kôd, možete koristiti aplikaciju za skeniranje QR kodova na telefonu ili neke aplikacije s kamerom.</translation> <translation id="4477015793815781985">Uključite Ctrl, Alt, ili ⌘</translation> -<translation id="4477379360383751882">Pretraži na slici pomoću usluge <ph name="VISUAL_SEARCH_PROVIDER" /></translation> +<translation id="4477379360383751882">Pretražite unutar slike koristeći <ph name="VISUAL_SEARCH_PROVIDER" /></translation> <translation id="4478664379124702289">Sačuvaj lin&k kao...</translation> <translation id="4479424953165245642">Upravljaj aplikacijama za kiosk</translation> <translation id="4479639480957787382">Ethernet</translation> @@ -5072,6 +5069,7 @@ <translation id="5860494867054883682">Ažuriranje vašeg uređaja na <ph name="CHANNEL_NAME" /> kanal (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">Prikaži alate za digitalnu olovku na polici</translation> <translation id="5862319196656206789">Postavite povezane uređaje</translation> +<translation id="5862731021271217234">Da dobijete svoje kartice s drugih uređaja, uključite sinhronizaciju</translation> <translation id="5863445608433396414">Omogući funkcije za otklanjanje grešaka</translation> <translation id="5864195618110239517">Koristi vezu s naplatom</translation> <translation id="5864754048328252126">Radnja u slučaju neaktivnosti tokom punjenja</translation> @@ -5508,7 +5506,6 @@ <translation id="6291949900244949761">Pitaj kada web lokacija želi pristupiti USB uređajima (preporučeno)</translation> <translation id="6291953229176937411">&Prikaži u Tražiocu</translation> <translation id="6292699686837272722">Kartice će se smanjiti na srednju širinu</translation> -<translation id="6294610283659775533">Možete slati kartice između uređaja koji su prijavljeni s istim Google računom</translation> <translation id="6294759976468837022">Brzina automatskog skeniranja</translation> <translation id="6295158916970320988">Sve web-lokacije</translation> <translation id="6295855836753816081">Pohranjivanje…</translation> @@ -5936,6 +5933,7 @@ <translation id="6709133671862442373">Vijesti</translation> <translation id="6709357832553498500">Poveži se na mrežu pomoću dodatka <ph name="EXTENSIONNAME" /></translation> <translation id="6710213216561001401">Nazad</translation> +<translation id="6710394144992407503">Provjerite ima li pravopisnih pogrešaka dok pišete tekst na web-stranicama</translation> <translation id="6711146141291425900">Poveži <ph name="WEB_DRIVE" /> račun za preuzimanja</translation> <translation id="6712943853047024245">Već ste sačuvali lozinku s ovim korisničkim imenom za <ph name="WEBSITE" /></translation> <translation id="6713233729292711163">Dodaj radni profil</translation> @@ -6557,6 +6555,7 @@ <translation id="7340757554212515731">Izvještaji o padovima aplikacije se automatski šalju Googleu, kao i podaci o dijagnostici i korištenju</translation> <translation id="7341834142292923918">Želi pristupiti ovoj web lokaciji</translation> <translation id="7343372807593926528">Prije nego što pošaljete povratne informacije, opišite problem.</translation> +<translation id="7344585835349671209">Upravljanje HTTPS/SSL certifikatima na uređaju</translation> <translation id="7345706641791090287">Potvrdite lozinku</translation> <translation id="7346909386216857016">Uredu, razumijem</translation> <translation id="7347452120014970266">Ovim će se obrisati svi podaci i kolačići koje je pohranila web lokacija <ph name="ORIGIN_NAME" /> i njene instalirane aplikacije</translation> @@ -6686,6 +6685,7 @@ <translation id="7460045493116006516">Trenutna tema koju ste instalirali</translation> <translation id="7461924472993315131">PIN</translation> <translation id="746216226901520237">Sljedeći put će vaš telefon otključati vaš uređaj <ph name="DEVICE_TYPE" />. Pametno zaključavanje možete isključiti u Postavkama.</translation> +<translation id="7464153996453281700">Komponenta je već ažurirana</translation> <translation id="7464637891177137294">Sačuvajte na svoj Google račun, <ph name="ACCOUNT" /></translation> <translation id="7465522323587461835">{NUM_OPEN_TABS,plural, =1{# otvorena kartica. Pritisnite da aktivirate/deaktivirate traku kartice}one{# otvorena kartica. Pritisnite da aktivirate/deaktivirate traku kartice}few{# otvorene kartice. Pritisnite da aktivirate/deaktivirate traku kartice}other{# otvorenih kartica. Pritisnite da aktivirate/deaktivirate traku kartice}}</translation> <translation id="7465635034594602553">Nešto nije uredu. Sačekajte nekoliko minuta i ponovo pokrenite aplikaciju <ph name="APP_NAME" />.</translation> @@ -7195,6 +7195,7 @@ <translation id="793531125873261495">Došlo je do pogreške prilikom preuzimanja virtualnog računala. Pokušajte ponovo.</translation> <translation id="7935451262452051102">Završeno <ph name="PERCENT" />%</translation> <translation id="7939062555109487992">Napredne opcije</translation> +<translation id="7939328347457537652">Upravljanje certifikatima uređaja</translation> <translation id="7939412583708276221">Ipak zadrži</translation> <translation id="7942349550061667556">Crvena</translation> <translation id="7943368935008348579">Preuzimaj PDF-ove</translation>
diff --git a/chrome/app/resources/generated_resources_ca.xtb b/chrome/app/resources/generated_resources_ca.xtb index 814ec9aa..9b4c04b 100644 --- a/chrome/app/resources/generated_resources_ca.xtb +++ b/chrome/app/resources/generated_resources_ca.xtb
@@ -332,7 +332,6 @@ <translation id="1319983966058170660">Botó Enrere de la subpàgina <ph name="SUBPAGE_TITLE" /></translation> <translation id="1322046419516468189">Consulta i gestiona les contrasenyes desades al <ph name="SAVED_PASSWORDS_STORE" /></translation> <translation id="1324106254079708331">Protegeix els Comptes de Google personals de qualsevol usuari que corri el risc de rebre atacs dirigits</translation> -<translation id="1326317727527857210">Inicia la sessió a Chrome per accedir a les pestanyes dels altres dispositius que tinguis.</translation> <translation id="1327272175893960498">Tiquets de Kerberos</translation> <translation id="1327495825214193325">Per activar la depuració d'ADB, cal reiniciar el dispositiu <ph name="DEVICE_TYPE" />. Per desactivar-la, cal restablir-ne la configuració de fàbrica.</translation> <translation id="1327794256477341646">Les funcions que necessiten la teva ubicació no funcionaran</translation> @@ -2426,7 +2425,6 @@ <translation id="3280243678470289153">Continua a Chrome</translation> <translation id="3281892622610078515">Fitxer i programes que es posaran en quarantena:</translation> <translation id="3282210178675490297">S'està compartint una pestanya amb <ph name="APP_NAME" /></translation> -<translation id="3282568296779691940">Inicia la sessió a Chrome</translation> <translation id="3285322247471302225">Pes&tanya nova</translation> <translation id="328571385944182268">Vols desar les contrasenyes?</translation> <translation id="3288047731229977326">Les extensions que funcionen amb el mode de desenvolupador poden malmetre el vostre ordinador. Si no sou desenvolupador, hauríeu de desactivar aquestes extensions per continuar protegit.</translation> @@ -3299,7 +3297,6 @@ <translation id="4101352914005291489">SSID amagat</translation> <translation id="4102469565336584882">El codi no és vàlid. L'entrada ha de tenir el format LPA:1$<adreça smdp>$<codi d'activació></translation> <translation id="4102906002417106771">Reinicia per fer un Powerwash</translation> -<translation id="4104163789986725820">E&xporta...</translation> <translation id="4107048419833779140">Identificar i expulsar els dispositius d'emmagatzematge</translation> <translation id="4108314971463891922">Segueix</translation> <translation id="4109135793348361820">Mou la finestra a <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />)</translation> @@ -5054,6 +5051,7 @@ <translation id="5860494867054883682">S'està actualitzant el dispositiu al canal <ph name="CHANNEL_NAME" /> (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">Mostra les eines del llapis òptic al prestatge</translation> <translation id="5862319196656206789">Configura els dispositius connectats</translation> +<translation id="5862731021271217234">Activa la sincronització per accedir a les pestanyes dels altres dispositius que tinguis</translation> <translation id="5863445608433396414">Activa les funcions de depuració</translation> <translation id="5864195618110239517">Fes servir la connexió d'ús mesurat</translation> <translation id="5864754048328252126">Acció d'inactivitat mentre es carrega</translation> @@ -5489,7 +5487,6 @@ <translation id="6291949900244949761">Pregunta'm quan un lloc web vulgui accedir a dispositius USB (opció recomanada)</translation> <translation id="6291953229176937411">&Mostra a Finder</translation> <translation id="6292699686837272722">Les pestanyes es redueixen a una amplada mitjana</translation> -<translation id="6294610283659775533">Pots enviar pestanyes entre dispositius en què tinguis la sessió iniciada al mateix Compte de Google</translation> <translation id="6294759976468837022">Velocitat de cerca automàtica</translation> <translation id="6295158916970320988">Tots els llocs web</translation> <translation id="6295855836753816081">S'està desant…</translation>
diff --git a/chrome/app/resources/generated_resources_cs.xtb b/chrome/app/resources/generated_resources_cs.xtb index 4570911..4fa0cb5 100644 --- a/chrome/app/resources/generated_resources_cs.xtb +++ b/chrome/app/resources/generated_resources_cs.xtb
@@ -334,7 +334,6 @@ <translation id="1319983966058170660">Tlačítko zpět na podstránce <ph name="SUBPAGE_TITLE" /></translation> <translation id="1322046419516468189">K zobrazení a správě uložených hesel můžete použít svůj <ph name="SAVED_PASSWORDS_STORE" /></translation> <translation id="1324106254079708331">Chrání osobní účty Google kohokoliv, kdo by mohl být vystaven cíleným útokům</translation> -<translation id="1326317727527857210">Chcete-li získat přístup ke kartám ze svých ostatních zařízení, přihlaste se do Chromu.</translation> <translation id="1327272175893960498">Lístky Kerberos</translation> <translation id="1327495825214193325">K aktivaci ladění ADB je toto zařízení <ph name="DEVICE_TYPE" /> potřeba restartovat. K vypnutí je potřeba resetovat tovární nastavení.</translation> <translation id="1327794256477341646">Funkce vyžadující polohu nebudou k dispozici</translation> @@ -2427,7 +2426,6 @@ <translation id="3280243678470289153">Zůstat v Chromu</translation> <translation id="3281892622610078515">Soubory a programy, které chcete umístit do karantény:</translation> <translation id="3282210178675490297">Nějaká karta se sdílí s aplikací <ph name="APP_NAME" /></translation> -<translation id="3282568296779691940">Přihlásit se do Chromu</translation> <translation id="3285322247471302225">Nová kar&ta</translation> <translation id="328571385944182268">Ukládat hesla?</translation> <translation id="3288047731229977326">Rozšíření spuštěná v režimu pro vývojáře mohou poškodit počítač. Pokud nejste vývojář, měli byste s ohledem na svou bezpečnost rozšíření spuštěná v tomto režimu deaktivovat.</translation> @@ -3301,7 +3299,6 @@ <translation id="4101352914005291489">Skryté SSID</translation> <translation id="4102469565336584882">Neplatný kód. Zadaná hodnota by měla mít formát LPA:1$<adresa smdp>$<aktivační kód></translation> <translation id="4102906002417106771">Restartovat a provést powerwash</translation> -<translation id="4104163789986725820">E&xport...</translation> <translation id="4107048419833779140">Identifikovat a vysouvat úložná zařízení</translation> <translation id="4108314971463891922">Sledovat</translation> <translation id="4109135793348361820">Přesunout okno k uživateli <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />)</translation> @@ -5056,6 +5053,7 @@ <translation id="5860494867054883682">Aktualizace zařízení na verzi <ph name="CHANNEL_NAME" /> (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">Zobrazovat na poličce nástroje pro dotykové pero</translation> <translation id="5862319196656206789">Nastavit připojená zařízení</translation> +<translation id="5862731021271217234">Chcete-li získat přístup ke kartám ze svých ostatních zařízení, zapněte synchronizaci</translation> <translation id="5863445608433396414">Aktivovat funkce ladění</translation> <translation id="5864195618110239517">Použít měřené připojení</translation> <translation id="5864754048328252126">Akce nečinnosti při nabíjení</translation> @@ -5491,7 +5489,6 @@ <translation id="6291949900244949761">Zeptat se, když chce web získat přístup k zařízením USB (doporučeno)</translation> <translation id="6291953229176937411">Zobrazit ve &službě Finder</translation> <translation id="6292699686837272722">Karty se zmenší na střední šířku</translation> -<translation id="6294610283659775533">Mezi zařízeními přihlášenými ke stejnému účtu Google lze posílat karty</translation> <translation id="6294759976468837022">Rychlost automatického prohledávání</translation> <translation id="6295158916970320988">Všechny weby</translation> <translation id="6295855836753816081">Ukládání...</translation>
diff --git a/chrome/app/resources/generated_resources_cy.xtb b/chrome/app/resources/generated_resources_cy.xtb index cf6b406..abdc8a4 100644 --- a/chrome/app/resources/generated_resources_cy.xtb +++ b/chrome/app/resources/generated_resources_cy.xtb
@@ -338,7 +338,6 @@ <translation id="1319983966058170660">Botwm nôl yr is-dudalen <ph name="SUBPAGE_TITLE" /></translation> <translation id="1322046419516468189">Gweld a rheoli cyfrineiriau sydd wedi'u cadw yn eich <ph name="SAVED_PASSWORDS_STORE" /></translation> <translation id="1324106254079708331">Yn diogelu Cyfrifon Google personol unrhyw un sydd mewn perygl o ymosodiadau wedi'u targedu</translation> -<translation id="1326317727527857210">I gael eich tabiau o'ch dyfeisiau eraill, mewngofnodwch i Chrome.</translation> <translation id="1327272175893960498">Tocynnau Kerberos</translation> <translation id="1327495825214193325">Er mwyn galluogi dadfygio ADB, mae angen ailgychwyn y <ph name="DEVICE_TYPE" /> hwn. Er mwyn ei analluogi mae angen ei ailosod i'r gosodiadau ffatri.</translation> <translation id="1327794256477341646">Ni fydd nodweddion sydd angen eich lleoliad yn gweithio</translation> @@ -2443,7 +2442,6 @@ <translation id="3280243678470289153">Aros yn Chrome</translation> <translation id="3281892622610078515">Ffeiliau a rhaglenni i'w rhoi mewn cwarantîn:</translation> <translation id="3282210178675490297">Wrthi'n rhannu tab i <ph name="APP_NAME" /></translation> -<translation id="3282568296779691940">Mewngofnodi i Chrome</translation> <translation id="3285322247471302225">Tab &Newydd</translation> <translation id="328571385944182268">Cadw eich cyfrineiriau?</translation> <translation id="3288047731229977326">Gall estyniadau sy'n rhedeg yn y modd datblygwr niweidio'ch cyfrifiadur. Os nad ydych yn ddatblygwr, dylech analluogi'r estyniadau hyn sy'n rhedeg yn y modd datblygwr i gadw'n ddiogel.</translation> @@ -3317,7 +3315,6 @@ <translation id="4101352914005291489">SSID cudd</translation> <translation id="4102469565336584882">Cod annilys. Rhaid i'ch cofnod gael y fformat LPA:1$<cyfeiriad smdp>$<cod gweithredu></translation> <translation id="4102906002417106771">Ailgychwynnwch i ddefnyddio Powerwash</translation> -<translation id="4104163789986725820">A&llforio…</translation> <translation id="4107048419833779140">Nodi a chael gwared ar ddyfeisiau storfa</translation> <translation id="4108314971463891922">Dilyn</translation> <translation id="4109135793348361820">Symud y ffenestr i <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />)</translation> @@ -4127,6 +4124,7 @@ <translation id="4900392736118574277">Newidiwyd eich tudalen gychwyn i <ph name="URL" />.</translation> <translation id="490051679772058907"><ph name="REFRESH_RATE" /> Hz - wedi'i gydblethu</translation> <translation id="4900652253009739885">Methu â thynnu'r unig switsh a aseiniwyd i "Dewis". Pwyswch unrhyw fysell i <ph name="RESPONSE" />.</translation> +<translation id="4901154724271753917">Ehangu caewyd yn ddiweddar</translation> <translation id="4901309472892185668">Dewiswch gyflwr arbrofi ar gyfer yr arbrawf <ph name="EXPERIMENT_NAME" />.</translation> <translation id="49027928311173603">Mae'r polisi a lawrlwythwyd o'r gweinydd yn annilys: <ph name="VALIDATION_ERROR" />.</translation> <translation id="4906490889887219338">Gosod neu reoli cyfrannau ffeiliau rhwydwaith. <ph name="LINK_BEGIN" />Dysgu rhagor<ph name="LINK_END" /></translation> @@ -5073,6 +5071,7 @@ <translation id="5860494867054883682">Yn diweddaru eich dyfais i sianel <ph name="CHANNEL_NAME" /> (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">Dangos yr offer pwyntil yn y silff</translation> <translation id="5862319196656206789">Gosod dyfeisiau sydd wedi'u hychwanegu</translation> +<translation id="5862731021271217234">I gael eich tabiau o'ch dyfeisiau eraill, trowch gysoni ymlaen</translation> <translation id="5863445608433396414">Galluogi nodweddion dadfygio</translation> <translation id="5864195618110239517">Defnyddio cysylltiad sydd â mesurydd</translation> <translation id="5864754048328252126">Segur wrth wefru</translation> @@ -5509,7 +5508,6 @@ <translation id="6291949900244949761">Gofyn pan fydd gwefan eisiau cyrchu dyfeisiau USB (argymhellir)</translation> <translation id="6291953229176937411">&Dangos yn Finder</translation> <translation id="6292699686837272722">Mae tabiau yn crebachu i led ganolig</translation> -<translation id="6294610283659775533">Gallwch anfon tabiau rhwng dyfeisiau sydd wedi'u mewngofnodi gyda'r un Cyfrif Google</translation> <translation id="6294759976468837022">Cyflymder awtosganio</translation> <translation id="6295158916970320988">Pob gwefan</translation> <translation id="6295855836753816081">Wrthi'n cadw...</translation> @@ -7023,6 +7021,7 @@ <translation id="7768526219335215384">Bydd <ph name="ORIGIN" /> yn gallu gweld ffeiliau yn <ph name="FOLDERNAME" /></translation> <translation id="7768770796815395237">Newid</translation> <translation id="7768784765476638775">Dewis i siarad</translation> +<translation id="7769748505895274502">Crebachu caewyd yn ddiweddar</translation> <translation id="7770406201819593386">Rhedeg profion diagnostig ChromeOS Flex.</translation> <translation id="7770450735129978837">Clic llygoden de</translation> <translation id="7770612696274572992">Copïwyd y llun o ddyfais arall</translation>
diff --git a/chrome/app/resources/generated_resources_da.xtb b/chrome/app/resources/generated_resources_da.xtb index 5bb7b0d..31740010 100644 --- a/chrome/app/resources/generated_resources_da.xtb +++ b/chrome/app/resources/generated_resources_da.xtb
@@ -335,7 +335,6 @@ <translation id="1319983966058170660">Knap til undersiden <ph name="SUBPAGE_TITLE" /></translation> <translation id="1322046419516468189">Se og administrer gemte adgangskoder på din <ph name="SAVED_PASSWORDS_STORE" /></translation> <translation id="1324106254079708331">Beskytter personlige Google-konti for brugere, der er i fare for målrettede angreb</translation> -<translation id="1326317727527857210">Log ind på Chrome for at få adgang til dine faner på dine andre enheder.</translation> <translation id="1327272175893960498">Kerberos-billetter</translation> <translation id="1327495825214193325">Hvis du vil aktivere ADB-fejlretning, skal du genstarte denne <ph name="DEVICE_TYPE" />. Du skal gendanne fabriksindstillingerne på den for at deaktivere det.</translation> <translation id="1327794256477341646">Funktioner, der skal bruge din lokation, fungerer ikke</translation> @@ -2442,7 +2441,6 @@ <translation id="3280243678470289153">Bliv i Chrome</translation> <translation id="3281892622610078515">Filer og programmer, der skal i karantæne:</translation> <translation id="3282210178675490297">Deler en fane med <ph name="APP_NAME" /></translation> -<translation id="3282568296779691940">Log ind i Chrome</translation> <translation id="3285322247471302225">Ny &fane</translation> <translation id="328571385944182268">Vil du gemme dine adgangskoder?</translation> <translation id="3288047731229977326">Udvidelser, der kører i udviklertilstand, kan skade din computer. Hvis du ikke er udvikler, skal du deaktivere udvidelserne, der kører i udviklertilstand, af hensyn til sikkerheden.</translation> @@ -3316,7 +3314,6 @@ <translation id="4101352914005291489">Skjult SSID</translation> <translation id="4102469565336584882">Ugyldig kode. Din indtastning bør have formatet LPA:1$<smdp-adresse>$<aktiveringskode></translation> <translation id="4102906002417106771">Genstart for at udføre powerwash</translation> -<translation id="4104163789986725820">E&ksporter...</translation> <translation id="4107048419833779140">Identificer og fjern lagerenheder</translation> <translation id="4108314971463891922">Følg</translation> <translation id="4109135793348361820">Flyt vindue til <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />)</translation> @@ -5072,6 +5069,7 @@ <translation id="5860494867054883682">Opdaterer din enhed til kanalen <ph name="CHANNEL_NAME" /> (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">Vis styluspenværktøjer på hylden</translation> <translation id="5862319196656206789">Konfigurer forbundne enheder</translation> +<translation id="5862731021271217234">Aktivér synkronisering for at få adgang til dine faner på dine andre enheder</translation> <translation id="5863445608433396414">Aktivér fejlretningsfunktioner</translation> <translation id="5864195618110239517">Brug forbrugsafregnet forbindelse</translation> <translation id="5864754048328252126">Handling for inaktivitet under opladning</translation> @@ -5508,7 +5506,6 @@ <translation id="6291949900244949761">Spørg, når et website vil have adgang til USB-enheder (anbefales)</translation> <translation id="6291953229176937411">&Vis i Finder</translation> <translation id="6292699686837272722">Faner formindskes til medium bredde</translation> -<translation id="6294610283659775533">Du kan sende faner mellem enheder, hvor du er logget ind på den samme Google-konto</translation> <translation id="6294759976468837022">Hastighed for automatisk scanning</translation> <translation id="6295158916970320988">Alle websites</translation> <translation id="6295855836753816081">Gemmer...</translation>
diff --git a/chrome/app/resources/generated_resources_de.xtb b/chrome/app/resources/generated_resources_de.xtb index 0bc37306..337f17bd 100644 --- a/chrome/app/resources/generated_resources_de.xtb +++ b/chrome/app/resources/generated_resources_de.xtb
@@ -332,7 +332,6 @@ <translation id="1319983966058170660">Schaltfläche "Zurück" auf Unterseite "<ph name="SUBPAGE_TITLE" />"</translation> <translation id="1322046419516468189">Gespeicherte Passwörter in meinem <ph name="SAVED_PASSWORDS_STORE" /> ansehen und verwalten</translation> <translation id="1324106254079708331">Schützt private Google-Konten jeglicher Nutzer vor gezielten Angriffen</translation> -<translation id="1326317727527857210">Melde dich in Chrome an, um Tabs von deinen anderen Geräten abzurufen.</translation> <translation id="1327272175893960498">Kerberos-Tickets</translation> <translation id="1327495825214193325">Das Aktivieren der ADB-Fehlerbehebung erfordert einen Neustart von <ph name="DEVICE_TYPE" />. Zum Deaktivieren der ADB-Fehlerbehebung ist das Zurücksetzen auf die Werkseinstellungen erforderlich.</translation> <translation id="1327794256477341646">Funktionen, die deinen Standort benötigen, funktionieren dann nicht</translation> @@ -359,6 +358,7 @@ <translation id="1347256498747320987">Updates und Apps installieren. Wenn du fortfährst, stimmst du zu, dass dieses Gerät automatisch Updates und Apps von Google, deinem Mobilfunkanbieter und dem Hersteller deines Geräts herunterladen und installieren darf, möglicherweise über eine mobile Datenverbindung. Einige dieser Apps bieten eventuell In-App-Käufe an. <ph name="BEGIN_LINK1" />Weitere Informationen<ph name="END_LINK1" /></translation> <translation id="1347512539447549782">Linux-Speicher</translation> <translation id="1347975661240122359">Das Update wird ausgeführt, sobald der Akkustand <ph name="BATTERY_LEVEL" /> % erreicht.</translation> +<translation id="1348966090521113558">Einstellungen für Bedienungshilfen (Maus)</translation> <translation id="1353275871123211385">Wenn du Jugendschutzeinstellungen wie das Genehmigen von Apps und Limits für die Gerätenutzungsdauer verwenden möchtest, muss das Kind ein Google-Konto haben, das von einem Elternteil verwaltet wird. Du kannst später das Konto einer Bildungseinrichtung hinzufügen, damit Tools wie Google Classroom genutzt werden können.</translation> <translation id="135389172849514421">Funktioniert im Offlinemodus</translation> <translation id="1353980523955420967">PPD kann nicht gefunden werden. Vergewissere dich, dass dein Chromebook online ist und versuche es noch einmal.</translation> @@ -1780,6 +1780,7 @@ <translation id="2653659639078652383">Senden</translation> <translation id="265390580714150011">Feldwert</translation> <translation id="2654553774144920065">Druckanfrage</translation> +<translation id="2657612187216250073">Einstellungen für Bedienungshilfen (Mauszeiger)</translation> <translation id="2658941648214598230">Originalinhalte anzeigen?</translation> <translation id="2659381484350128933"><ph name="FOOTNOTE_POINTER" /> Die Funktionen variieren je nach Gerät</translation> <translation id="2659971421398561408">Crostini-Laufwerkgröße anpassen</translation> @@ -1944,6 +1945,7 @@ <translation id="2801954693771979815">Bildschirmgröße</translation> <translation id="2802557211515765772">Es gibt keine verwalteten Drucker.</translation> <translation id="2803313416453193357">Ordner öffnen</translation> +<translation id="2803719750464280163">Bitte bestätige, dass <ph name="PASSKEY" /> der auf dem Bluetooth-Gerät „<ph name="DEVICE" />“ angezeigte Passkey ist.</translation> <translation id="2804043232879091219">Der alternative Browser konnte nicht geöffnet werden</translation> <translation id="2804667941345577550">Du wirst von dieser Website abgemeldet, auch in offenen Tabs</translation> <translation id="2804680522274557040">Kamera ausgeschaltet</translation> @@ -2420,7 +2422,6 @@ <translation id="3280243678470289153">In Chrome bleiben</translation> <translation id="3281892622610078515">Dateien und Programme, die unter Quarantäne gestellt werden:</translation> <translation id="3282210178675490297">Tab wird mit <ph name="APP_NAME" /> geteilt</translation> -<translation id="3282568296779691940">In Chrome anmelden</translation> <translation id="3285322247471302225">Neuer &Tab</translation> <translation id="328571385944182268">Passwörter speichern?</translation> <translation id="3288047731229977326">Erweiterungen im Entwicklermodus können auf deinem Computer Schaden anrichten. Wenn du kein Entwickler bist, solltest du diese Erweiterungen im Entwicklermodus deaktivieren, um sicher zu sein.</translation> @@ -2860,6 +2861,7 @@ <translation id="370649949373421643">WLAN aktivieren</translation> <translation id="370665806235115550">Wird geladen...</translation> <translation id="3707163604290651814">Derzeit angemeldet als <ph name="NAME" /></translation> +<translation id="3708295717182051206">Untertitel</translation> <translation id="3708684582558000260">Geschlossene Websites dürfen den Datenversand oder -empfang nicht abschließen</translation> <translation id="3709244229496787112">Der Browser wurde beendet, bevor der Download abgeschlossen war.</translation> <translation id="371174301504454251">Zum Schutz deiner Daten entfernen wir automatisch Websites aus der Liste, die älter als vier Wochen sind. Wenn du eine der Websites noch einmal besuchst, kann sie wieder in der Liste erscheinen. Du kannst einzelne Websites auch entfernen, wenn du nicht möchtest, dass sie Interessen für dich definieren.</translation> @@ -3293,7 +3295,6 @@ <translation id="4101352914005291489">SSID ausgeblendet</translation> <translation id="4102469565336584882">Ungültiger Code. Deine Eingabe muss dieses Format haben: LPA:1$<smdp address>$<activation code></translation> <translation id="4102906002417106771">Für Powerwash neu starten</translation> -<translation id="4104163789986725820">E&xportieren...</translation> <translation id="4107048419833779140">Speichergeräte ermitteln und auswerfen</translation> <translation id="4108314971463891922">Folgen</translation> <translation id="4109135793348361820">Fenster zu <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />) verschieben</translation> @@ -3942,6 +3943,7 @@ <translation id="475088594373173692">Erster Nutzer</translation> <translation id="4756378406049221019">Stopp/Neu laden</translation> <translation id="4756388243121344051">&Verlauf</translation> +<translation id="4756671452988984333">Text für Audio</translation> <translation id="4759202969060787081">Nicht öffnen</translation> <translation id="4759238208242260848">Downloads</translation> <translation id="4761104368405085019">Mikrofon verwenden</translation> @@ -4101,6 +4103,7 @@ <translation id="4900392736118574277">Deine "Beim Start"-Seite wurde in <ph name="URL" /> geändert.</translation> <translation id="490051679772058907"><ph name="REFRESH_RATE" /> Hz, Zeilensprung</translation> <translation id="4900652253009739885">Der einzige Schalter, der „Auswählen“ zugewiesen ist, kann nicht entfernt werden. Drücke zum <ph name="RESPONSE" /> eine beliebige Taste.</translation> +<translation id="4901154724271753917">Kürzlich geschlossene Tabs maximieren</translation> <translation id="4901309472892185668">Wähle den Teststatus für den Test „<ph name="EXPERIMENT_NAME" />“ aus.</translation> <translation id="49027928311173603">Die vom Server heruntergeladene Richtlinie ist ungültig: <ph name="VALIDATION_ERROR" />.</translation> <translation id="4906490889887219338">Netzwerkfreigaben einrichten oder verwalten. <ph name="LINK_BEGIN" />Weitere Informationen<ph name="LINK_END" /></translation> @@ -5045,6 +5048,7 @@ <translation id="5860494867054883682">Dein Gerät wird auf Kanal <ph name="CHANNEL_NAME" /> aktualisiert (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">Eingabestift-Tools in der Ablage einblenden</translation> <translation id="5862319196656206789">Verbundene Geräte einrichten</translation> +<translation id="5862731021271217234">Aktiviere die Synchronisierung, um deine Tabs von deinen anderen Geräten abzurufen</translation> <translation id="5863445608433396414">Debugging-Funktionen aktivieren</translation> <translation id="5864195618110239517">Kostenpflichtige Verbindung nutzen</translation> <translation id="5864754048328252126">Aktion bei Inaktivität beim Aufladen</translation> @@ -5480,7 +5484,6 @@ <translation id="6291949900244949761">Nachfragen, wenn eine Website auf USB-Geräte zugreifen möchte (empfohlen)</translation> <translation id="6291953229176937411">Im Finder &zeigen</translation> <translation id="6292699686837272722">Tabs werden auf eine mittlere Breite verkleinert</translation> -<translation id="6294610283659775533">Du kannst Tabs zwischen Geräten senden, auf denen du mit demselben Google-Konto angemeldet bist.</translation> <translation id="6294759976468837022">Geschwindigkeit des automatischen Scans</translation> <translation id="6295158916970320988">Alle Websites</translation> <translation id="6295855836753816081">Wird gespeichert...</translation> @@ -6873,6 +6876,7 @@ <translation id="7668423670802040666">Im Passwortmanager von Google für <ph name="ACCOUNT" /></translation> <translation id="7669825497510425694">{NUM_ATTEMPTS,plural, =1{Falsche PIN. Du hast noch einen Eingabeversuch.}other{Falsche PIN. Du hast noch # Eingabeversuche.}}</translation> <translation id="7670434942695515800">Führe für optimale Leistung ein Upgrade auf die aktuelle Version durch. Wir empfehlen, deine Dateien vor dem Upgrade zu sichern, für den Fall, dass es nicht abgeschlossen werden kann. Sobald das Upgrade gestartet wird, wird Linux heruntergefahren. Speichere geöffnete Dateien, bevor du fortfährst. <ph name="LINK_START" />Weitere Informationen<ph name="LINK_END" /></translation> +<translation id="7670483791111801022">Untertitel</translation> <translation id="7671130400130574146">Titelleiste und Ränder des Systems verwenden</translation> <translation id="767127784612208024">Tippen, um Zurücksetzen zu bestätigen</translation> <translation id="7672520070349703697"><ph name="HUNG_IFRAME_URL" /> auf <ph name="PAGE_TITLE" />.</translation> @@ -6985,6 +6989,7 @@ <translation id="7768526219335215384"><ph name="ORIGIN" /> kann Dateien in <ph name="FOLDERNAME" /> aufrufen</translation> <translation id="7768770796815395237">Ändern</translation> <translation id="7768784765476638775">Vorlesen</translation> +<translation id="7769748505895274502">Kürzlich geschlossene Tabs minimieren</translation> <translation id="7770406201819593386">Chrome OS Flex-Diagnose durchführen.</translation> <translation id="7770450735129978837">Mit der rechten Maustaste klicken</translation> <translation id="7770612696274572992">Bild wurde von einem anderen Gerät kopiert</translation> @@ -7959,6 +7964,7 @@ <translation id="8724859055372736596">&In Ordner anzeigen</translation> <translation id="8725066075913043281">Erneut versuchen</translation> <translation id="8725178340343806893">Favoriten/Lesezeichen</translation> +<translation id="87254326763805752">Passkey bestätigen</translation> <translation id="8726206820263995930">Fehler beim Übertragen von Richtlinieneinstellungen vom Server: <ph name="CLIENT_ERROR" />.</translation> <translation id="8728351286589123703">Die von dir gewählten Berechtigungen werden zurückgesetzt</translation> <translation id="8729133765463465108">Kamera verwenden, um QR-Code zu scannen</translation>
diff --git a/chrome/app/resources/generated_resources_el.xtb b/chrome/app/resources/generated_resources_el.xtb index bc5e8ad..d392952 100644 --- a/chrome/app/resources/generated_resources_el.xtb +++ b/chrome/app/resources/generated_resources_el.xtb
@@ -334,7 +334,6 @@ <translation id="1319983966058170660">Κουμπί Πίσω δευτερεύουσας σελίδας <ph name="SUBPAGE_TITLE" /></translation> <translation id="1322046419516468189">Προβολή και διαχείριση αποθηκευμένων κωδικών πρόσβασης στον <ph name="SAVED_PASSWORDS_STORE" /></translation> <translation id="1324106254079708331">Προστατεύει τους προσωπικούς Λογαριασμούς Google οποιουδήποτε χρήστη κινδυνεύει από στοχευμένες επιθέσεις.</translation> -<translation id="1326317727527857210">Για να εμφανίζονται οι καρτέλες από τις άλλες συσκευές σας, συνδεθείτε στο Chrome.</translation> <translation id="1327272175893960498">Εισιτήρια Kerberos</translation> <translation id="1327495825214193325">Για την ενεργοποίηση του εντοπισμού και της διόρθωσης σφαλμάτων ADB, απαιτείται επανεκκίνηση της συσκευής <ph name="DEVICE_TYPE" />. Η απενεργοποίηση απαιτεί επαναφορά των εργοστασιακών ρυθμίσεων.</translation> <translation id="1327794256477341646">Οι λειτουργίες που πρέπει να γνωρίζουν την τοποθεσία σας δεν θα είναι διαθέσιμες.</translation> @@ -2441,7 +2440,6 @@ <translation id="3280243678470289153">Παραμονή στο Chrome</translation> <translation id="3281892622610078515">Αρχεία και προγράμματα για καραντίνα:</translation> <translation id="3282210178675490297">Κοινοποίηση καρτέλας στην εφαρμογή <ph name="APP_NAME" /></translation> -<translation id="3282568296779691940">Σύνδεση στο Chrome</translation> <translation id="3285322247471302225">Νέα &Καρτέλα</translation> <translation id="328571385944182268">Αποθήκευση των κωδικών πρόσβασής σας;</translation> <translation id="3288047731229977326">Οι επεκτάσεις που εκτελούνται σε λειτουργία προγραμματιστή μπορούν να βλάψουν τον υπολογιστή σας. Εάν δεν είστε προγραμματιστής, θα πρέπει να απενεργοποιήσετε αυτές τις επεκτάσεις που εκτελούνται σε λειτουργία προγραμματιστή για να διατηρήσετε την ασφάλειά σας.</translation> @@ -3283,6 +3281,7 @@ <translation id="4077919383365622693">Όλα τα δεδομένα και τα cookie που αποθηκεύτηκαν από τον ιστότοπο <ph name="SITE" /> θα διαγραφούν.</translation> <translation id="4078738236287221428">Επιθετική</translation> <translation id="4079140982534148664">Χρήση βελτιωμένου ορθογραφικού ελέγχου</translation> +<translation id="4081203444152654304">Αναζήτηση εντός της εικόνας με το <ph name="VISUAL_SEARCH_PROVIDER" /></translation> <translation id="4081242589061676262">Αδυναμία μετάδοσης αρχείου.</translation> <translation id="408223403876103285">Ο ιστότοπος <ph name="WEBSITE" /> έστειλε μια ειδοποίηση στο τηλέφωνό σας. Για να επαληθεύσετε την ταυτότητά σας, ακολουθήστε βήματα που εμφανίζονται εκεί.</translation> <translation id="4084682180776658562">Σελιδοδείκτης</translation> @@ -3315,7 +3314,6 @@ <translation id="4101352914005291489">Κρυφό SSID</translation> <translation id="4102469565336584882">Μη έγκυρος κωδικός. Η καταχώρισή σας θα πρέπει να έχει τη μορφή LPA:1$<smdp address>$<κωδικός ενεργοποίησης></translation> <translation id="4102906002417106771">Επανεκκίνηση για powerwash</translation> -<translation id="4104163789986725820">Ε&ξαγωγή...</translation> <translation id="4107048419833779140">Ταυτοποίηση και κατάργηση συσκευών αποθηκευτικού χώρου</translation> <translation id="4108314971463891922">Παρακολούθηση</translation> <translation id="4109135793348361820">Μετακίνηση παραθύρου στο χρήστη <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />)</translation> @@ -3679,6 +3677,7 @@ <translation id="4476590490540813026">Αθλήτρια</translation> <translation id="4476659815936224889">Για να σαρώσετε αυτόν τον κωδικό, μπορείτε να χρησιμοποιήσετε μια εφαρμογή σαρωτή QR στο τηλέφωνό σας ή ορισμένες εφαρμογές κάμερας.</translation> <translation id="4477015793815781985">Συμπεριλάβετε το Ctrl, το Alt ή το ⌘</translation> +<translation id="4477379360383751882">Αναζήτηση εντός της εικόνας με το <ph name="VISUAL_SEARCH_PROVIDER" /></translation> <translation id="4478664379124702289">Αποθήκευση Συν&δέσμου Ως...</translation> <translation id="4479424953165245642">Διαχειριστείτε τις εφαρμογές kiosk</translation> <translation id="4479639480957787382">Ethernet</translation> @@ -5073,6 +5072,7 @@ <translation id="5860494867054883682">Ενημέρωση της συσκευής σας στο κανάλι <ph name="CHANNEL_NAME" /> (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">Εμφάνιση εργαλείων γραφίδας στο ράφι</translation> <translation id="5862319196656206789">Ρύθμιση συνδεδεμένων συσκευών</translation> +<translation id="5862731021271217234">Για να εμφανίζονται οι καρτέλες σας από τις άλλες συσκευές σας, ενεργοποιήστε τον συγχρονισμό</translation> <translation id="5863445608433396414">Ενεργοποίηση λειτουργιών εντοπισμού σφαλμάτων</translation> <translation id="5864195618110239517">Χρήση σύνδεσης με ογκοχρέωση</translation> <translation id="5864754048328252126">Ενέργεια αδράνειας κατά τη φόρτιση</translation> @@ -5509,7 +5509,6 @@ <translation id="6291949900244949761">Να γίνεται ερώτηση όταν κάποιος ιστότοπος θέλει να αποκτήσει πρόσβαση σε συσκευές USB (συνιστάται)</translation> <translation id="6291953229176937411">&Εμφάνιση στο Finder</translation> <translation id="6292699686837272722">Σμίκρυνση καρτελών σε μεσαίο πλάτος</translation> -<translation id="6294610283659775533">Μπορείτε να στέλνετε καρτέλες μεταξύ συσκευών οι οποίες έχουν συνδεθεί με τον ίδιο Λογαριασμό Google.</translation> <translation id="6294759976468837022">Ταχύτητα αυτόματης σάρωσης</translation> <translation id="6295158916970320988">Όλοι οι ιστότοποι</translation> <translation id="6295855836753816081">Αποθήκευση…</translation>
diff --git a/chrome/app/resources/generated_resources_en-GB.xtb b/chrome/app/resources/generated_resources_en-GB.xtb index e50053b..748b89d 100644 --- a/chrome/app/resources/generated_resources_en-GB.xtb +++ b/chrome/app/resources/generated_resources_en-GB.xtb
@@ -334,7 +334,6 @@ <translation id="1319983966058170660"><ph name="SUBPAGE_TITLE" /> sub-page back button</translation> <translation id="1322046419516468189">View and manage saved passwords in your <ph name="SAVED_PASSWORDS_STORE" /></translation> <translation id="1324106254079708331">Safeguards the personal Google Accounts of anyone at risk of targeted attacks</translation> -<translation id="1326317727527857210">To get your tabs from your other devices, sign in to Chrome.</translation> <translation id="1327272175893960498">Kerberos tickets</translation> <translation id="1327495825214193325">To enable ADB debugging, a restart of this <ph name="DEVICE_TYPE" /> is required. Disabling it requires a reset to factory settings.</translation> <translation id="1327794256477341646">Features that need your location won't work</translation> @@ -2441,7 +2440,6 @@ <translation id="3280243678470289153">Stay in Chrome</translation> <translation id="3281892622610078515">Files and programs to be quarantined:</translation> <translation id="3282210178675490297">Sharing a tab to <ph name="APP_NAME" /></translation> -<translation id="3282568296779691940">Sign in to Chrome</translation> <translation id="3285322247471302225">New &Tab</translation> <translation id="328571385944182268">Save your passwords?</translation> <translation id="3288047731229977326">Extensions running in developer mode can harm your computer. If you're not a developer, you should disable these extensions running in developer mode to stay safe.</translation> @@ -3316,7 +3314,6 @@ <translation id="4101352914005291489">Hidden SSID</translation> <translation id="4102469565336584882">Invalid code. Your entry should have the format LPA:1$<smdp address>$<activation code></translation> <translation id="4102906002417106771">Restart to Powerwash</translation> -<translation id="4104163789986725820">E&xport...</translation> <translation id="4107048419833779140">Identify and eject storage devices</translation> <translation id="4108314971463891922">Follow</translation> <translation id="4109135793348361820">Move window to <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />)</translation> @@ -5074,6 +5071,7 @@ <translation id="5860494867054883682">Updating your device to <ph name="CHANNEL_NAME" /> channel (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">Show stylus tools in the shelf</translation> <translation id="5862319196656206789">Set up connected devices</translation> +<translation id="5862731021271217234">To get your tabs from your other devices, turn on sync</translation> <translation id="5863445608433396414">Enable debugging features</translation> <translation id="5864195618110239517">Use metered connection</translation> <translation id="5864754048328252126">Idle action while charging</translation> @@ -5510,7 +5508,6 @@ <translation id="6291949900244949761">Ask when a site wants to access USB devices (recommended)</translation> <translation id="6291953229176937411">&Show in Finder</translation> <translation id="6292699686837272722">Tabs shrink to a medium width</translation> -<translation id="6294610283659775533">You can send tabs between devices that are signed in with the same Google Account</translation> <translation id="6294759976468837022">Auto-scan speed</translation> <translation id="6295158916970320988">All sites</translation> <translation id="6295855836753816081">Saving...</translation>
diff --git a/chrome/app/resources/generated_resources_es-419.xtb b/chrome/app/resources/generated_resources_es-419.xtb index 6c1676f9..6616ab38 100644 --- a/chrome/app/resources/generated_resources_es-419.xtb +++ b/chrome/app/resources/generated_resources_es-419.xtb
@@ -332,7 +332,6 @@ <translation id="1319983966058170660">Botón para volver de la subpágina <ph name="SUBPAGE_TITLE" /></translation> <translation id="1322046419516468189">Consulta y administra las contraseñas guardadas en tu <ph name="SAVED_PASSWORDS_STORE" /></translation> <translation id="1324106254079708331">Protege las cuentas personales de Google de los usuarios que estén en riesgo de sufrir ataques dirigidos</translation> -<translation id="1326317727527857210">Accede a Chrome para obtener las pestañas de tus otros dispositivos.</translation> <translation id="1327272175893960498">Tickets de Kerberos</translation> <translation id="1327495825214193325">Para habilitar la depuración de adb, es necesario restablecer este dispositivo <ph name="DEVICE_TYPE" />. Si quieres inhabilitarla, deberás restablecer la configuración de fábrica.</translation> <translation id="1327794256477341646">No se habilitarán las funciones que necesitan tu ubicación.</translation> @@ -359,6 +358,7 @@ <translation id="1347256498747320987">Instala actualizaciones y apps. Al continuar, aceptas que este dispositivo también descargue e instale automáticamente actualizaciones y apps de Google, tu administrador y el fabricante del dispositivo, posiblemente a través de datos móviles. Es posible que algunas de estas apps ofrezcan compras directas desde la aplicación. <ph name="BEGIN_LINK1" />Más información<ph name="END_LINK1" /></translation> <translation id="1347512539447549782">Almacenamiento en Linux</translation> <translation id="1347975661240122359">La actualización comenzará cuando el nivel de la batería alcance el <ph name="BATTERY_LEVEL" />%.</translation> +<translation id="1348966090521113558">Configuración de accesibilidad del mouse</translation> <translation id="1353275871123211385">Para usar los controles parentales, como la aprobación de apps y los límites de tiempo de uso, el niño debe tener una Cuenta de Google que administre el padre o la madre. Para usar herramientas como Google Classroom, se puede agregar una cuenta de institución educativa en otro momento.</translation> <translation id="135389172849514421">Funciona sin conexión</translation> <translation id="1353980523955420967">No se puede encontrar el archivo PPD. Comprueba que tu Chromebook esté en línea y vuelve a intentarlo.</translation> @@ -1780,6 +1780,7 @@ <translation id="2653659639078652383">Enviar</translation> <translation id="265390580714150011">Valor de campo</translation> <translation id="2654553774144920065">Solicitud de impresión</translation> +<translation id="2657612187216250073">Configuración de accesibilidad del puntero</translation> <translation id="2658941648214598230">¿Deseas mostrar el contenido original?</translation> <translation id="2659381484350128933"><ph name="FOOTNOTE_POINTER" />Las funciones varían según el dispositivo</translation> <translation id="2659971421398561408">Cambiar el tamaño de la partición del disco para Crostini</translation> @@ -1944,6 +1945,7 @@ <translation id="2801954693771979815">Tamaño de pantalla</translation> <translation id="2802557211515765772">No hay impresoras administradas.</translation> <translation id="2803313416453193357">Abrir carpeta</translation> +<translation id="2803719750464280163">Confirma que <ph name="PASSKEY" /> sea la clave de acceso que se muestra en el dispositivo Bluetooth <ph name="DEVICE" />.</translation> <translation id="2804043232879091219">No se pudo abrir el otro navegador</translation> <translation id="2804667941345577550">Saldrás de este sitio y de las pestañas abiertas</translation> <translation id="2804680522274557040">Se desactivó la cámara</translation> @@ -2420,7 +2422,6 @@ <translation id="3280243678470289153">Seguir en Chrome</translation> <translation id="3281892622610078515">Archivos y programas que se guardarán en cuarentena:</translation> <translation id="3282210178675490297">Se está compartiendo una pestaña con <ph name="APP_NAME" /></translation> -<translation id="3282568296779691940">Acceder a Chrome</translation> <translation id="3285322247471302225">Nueva pes&taña en</translation> <translation id="328571385944182268">¿Quieres guardar tus contraseñas?</translation> <translation id="3288047731229977326">Las extensiones que se ejecutan en modo de programador pueden dañar tu computadora. Si no eres programador, debes inhabilitar las extensiones que se ejecutan en modo de programador para mantenerte protegido.</translation> @@ -2860,6 +2861,7 @@ <translation id="370649949373421643">Habilitar Wi-Fi</translation> <translation id="370665806235115550">Cargando...</translation> <translation id="3707163604290651814">Accediste como <ph name="NAME" /></translation> +<translation id="3708295717182051206">Subtítulos</translation> <translation id="3708684582558000260">No permitir que los sitios cerrados terminen de enviar o recibir datos</translation> <translation id="3709244229496787112">El navegador se cerró antes de que finalizara la descarga.</translation> <translation id="371174301504454251">Para proteger tu privacidad, borramos los sitios de la lista automáticamente luego de 4 semanas. Es posible que, si vuelves a visitar un sitio, aparezca en la lista otra vez. O bien, puedes quitar un sitio si no quieres que defina tus intereses.</translation> @@ -3293,7 +3295,6 @@ <translation id="4101352914005291489">SSID oculto</translation> <translation id="4102469565336584882">El código no es válido. El formato de tu entrada debe ser LPA:1$<smdp address>$<activation code></translation> <translation id="4102906002417106771">Reiniciar con Powerwash</translation> -<translation id="4104163789986725820">E&xportar...</translation> <translation id="4107048419833779140">Identificar y expulsar los dispositivos de almacenamiento</translation> <translation id="4108314971463891922">Seguir</translation> <translation id="4109135793348361820">Mover ventana a <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />)</translation> @@ -3942,6 +3943,7 @@ <translation id="475088594373173692">Primer usuario</translation> <translation id="4756378406049221019">Detener/volver a cargar</translation> <translation id="4756388243121344051">&Historial</translation> +<translation id="4756671452988984333">Texto para audio</translation> <translation id="4759202969060787081">No abrir</translation> <translation id="4759238208242260848">Descargas</translation> <translation id="4761104368405085019">Usar tu micrófono</translation> @@ -5047,6 +5049,7 @@ <translation id="5860494867054883682">Actualizando tu dispositivo al canal <ph name="CHANNEL_NAME" /> (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">Mostrar herramientas de la pluma stylus en la biblioteca</translation> <translation id="5862319196656206789">Configurar los dispositivos conectados</translation> +<translation id="5862731021271217234">Para obtener las pestañas de tus otros dispositivos, activa la sincronización</translation> <translation id="5863445608433396414">Habilitar funciones de depuración</translation> <translation id="5864195618110239517">Usar la conexión de uso medido</translation> <translation id="5864754048328252126">Acción de inactividad durante la carga</translation> @@ -5483,7 +5486,6 @@ <translation id="6291949900244949761">Preguntarme cuando un sitio desee acceder a dispositivos USB (recomendado)</translation> <translation id="6291953229176937411">Mo&strar en Buscador</translation> <translation id="6292699686837272722">Las pestañas se achican a un ancho mediano</translation> -<translation id="6294610283659775533">Puedes enviar pestañas entre dispositivos en los que se haya accedido a la misma Cuenta de Google.</translation> <translation id="6294759976468837022">Velocidad de la búsqueda automática</translation> <translation id="6295158916970320988">Todos los sitios</translation> <translation id="6295855836753816081">Guardando…</translation> @@ -6876,6 +6878,7 @@ <translation id="7668423670802040666">En el Administrador de contraseñas de Google de <ph name="ACCOUNT" /></translation> <translation id="7669825497510425694">{NUM_ATTEMPTS,plural, =1{El PIN es incorrecto. Te queda un intento.}other{El PIN es incorrecto. Te quedan # intentos.}}</translation> <translation id="7670434942695515800">Para obtener el mejor rendimiento, actualiza Linux y usa la versión más reciente. Te recomendamos realizar una copia de seguridad de tus archivos en caso de que la actualización no pueda completarse. Cuando empiece la actualización, se apagará Linux. Guarda los archivos que estén abiertos antes de continuar. <ph name="LINK_START" />Más información<ph name="LINK_END" /></translation> +<translation id="7670483791111801022">Subtítulos</translation> <translation id="7671130400130574146">Usar la barra de título y los bordes del sistema</translation> <translation id="767127784612208024">Toca para confirmar que quieres restablecer la llave</translation> <translation id="7672520070349703697"><ph name="HUNG_IFRAME_URL" />, en <ph name="PAGE_TITLE" /></translation> @@ -7963,6 +7966,7 @@ <translation id="8724859055372736596">Mo&strar en carpeta</translation> <translation id="8725066075913043281">Intentar nuevamente</translation> <translation id="8725178340343806893">Favoritos/Favoritos</translation> +<translation id="87254326763805752">Confirmar la clave de acceso</translation> <translation id="8726206820263995930">Se produjo un error al recuperar la configuración de la política del servidor: <ph name="CLIENT_ERROR" />.</translation> <translation id="8728351286589123703">Se restablecerán los permisos que hayas elegido</translation> <translation id="8729133765463465108">Usar la cámara para escanear el código QR</translation>
diff --git a/chrome/app/resources/generated_resources_es.xtb b/chrome/app/resources/generated_resources_es.xtb index c80191d..f212c182 100644 --- a/chrome/app/resources/generated_resources_es.xtb +++ b/chrome/app/resources/generated_resources_es.xtb
@@ -332,7 +332,6 @@ <translation id="1319983966058170660">Botón para volver de la página secundaria de <ph name="SUBPAGE_TITLE" /></translation> <translation id="1322046419516468189">Consulta y administra las contraseñas guardadas en tu <ph name="SAVED_PASSWORDS_STORE" /></translation> <translation id="1324106254079708331">Protege las cuentas personales de Google de cualquier persona que corra el riesgo de sufrir ataques dirigidos</translation> -<translation id="1326317727527857210">Inicia sesión en Chrome para ver las pestañas de tus otros dispositivos.</translation> <translation id="1327272175893960498">Tickets de Kerberos</translation> <translation id="1327495825214193325">Para habilitar la depuración ADB, es necesario reiniciar este <ph name="DEVICE_TYPE" />. Para inhabilitarla, es necesario restablecer la configuración de fábrica.</translation> <translation id="1327794256477341646">Las funciones que necesiten la ubicación no se podrán utilizar</translation> @@ -359,6 +358,7 @@ <translation id="1347256498747320987">Instalar actualizaciones y aplicaciones. Si continúas, aceptas que este dispositivo pueda descargar e instalar actualizaciones y aplicaciones de Google, de tu operador y del fabricante de forma automática, y que pueda usar datos móviles para ello. Es posible que algunas de estas aplicaciones ofrezcan compras en la aplicación. <ph name="BEGIN_LINK1" />Más información<ph name="END_LINK1" /></translation> <translation id="1347512539447549782">Almacenamiento de Linux</translation> <translation id="1347975661240122359">La actualización comenzará cuando tengas un <ph name="BATTERY_LEVEL" />% de batería.</translation> +<translation id="1348966090521113558">Ajustes de accesibilidad del ratón</translation> <translation id="1353275871123211385">Para usar controles parentales, como la aprobación de aplicaciones y los límites de tiempo de pantalla, el niño debe tener una cuenta de Google gestionada por su padre o madre. Además, se puede añadir una cuenta de centro educativo para usarla en herramientas como Google Classroom.</translation> <translation id="135389172849514421">Funciona sin conexión</translation> <translation id="1353980523955420967">No se ha podido encontrar el archivo PPD. Comprueba que el Chromebook esté conectado y vuelve a intentarlo.</translation> @@ -1784,6 +1784,7 @@ <translation id="2653659639078652383">Enviar</translation> <translation id="265390580714150011">Valor de campo</translation> <translation id="2654553774144920065">Solicitud de impresión</translation> +<translation id="2657612187216250073">Ajustes de accesibilidad del puntero</translation> <translation id="2658941648214598230">¿Mostrar contenido original?</translation> <translation id="2659381484350128933"><ph name="FOOTNOTE_POINTER" />Las funciones varían según el dispositivo</translation> <translation id="2659971421398561408">Modificar el tamaño del disco de Crostini</translation> @@ -1947,6 +1948,7 @@ <translation id="2801954693771979815">Tamaño de la pantalla</translation> <translation id="2802557211515765772">No hay impresoras gestionadas.</translation> <translation id="2803313416453193357">Abrir carpeta</translation> +<translation id="2803719750464280163">Confirma que <ph name="PASSKEY" /> es la clave de acceso que se muestra en el dispositivo Bluetooth <ph name="DEVICE" />.</translation> <translation id="2804043232879091219">No se ha podido abrir el navegador alternativo</translation> <translation id="2804667941345577550">Se cerrará tu sesión en este sitio web (también en las pestañas abiertas)</translation> <translation id="2804680522274557040">Cámara desactivada</translation> @@ -2423,7 +2425,6 @@ <translation id="3280243678470289153">Permanecer en Chrome</translation> <translation id="3281892622610078515">Archivos y programas que se pondrán en cuarentena:</translation> <translation id="3282210178675490297">Compartiendo una pestaña con <ph name="APP_NAME" /></translation> -<translation id="3282568296779691940">Iniciar sesión en Chrome</translation> <translation id="3285322247471302225">Nueva &pestaña</translation> <translation id="328571385944182268">¿Quieres guardar tus contraseñas?</translation> <translation id="3288047731229977326">Las extensiones que se ejecutan en modo de desarrollador pueden causar daños en el ordenador. Si no eres desarrollador, debes inhabilitar esas extensiones para mantener protegido tu ordenador.</translation> @@ -2863,6 +2864,7 @@ <translation id="370649949373421643">Habilitar Wi-Fi</translation> <translation id="370665806235115550">Cargando...</translation> <translation id="3707163604290651814">Has iniciado sesión como <ph name="NAME" /></translation> +<translation id="3708295717182051206">Subtítulos</translation> <translation id="3708684582558000260">No permitir que los sitios cerrados terminen de enviar o recibir datos</translation> <translation id="3709244229496787112">El navegador se ha cerrado antes de que finalizara la descarga.</translation> <translation id="371174301504454251">Para proteger tu privacidad, eliminamos automáticamente los sitios de la lista que tengan una antigüedad superior a 4 semanas. Es posible que un sitio que vuelvas a visitar aparezca de nuevo en la lista. También puedes eliminar un sitio si no quieres que defina tus intereses.</translation> @@ -3295,7 +3297,6 @@ <translation id="4101352914005291489">SSID oculto</translation> <translation id="4102469565336584882">Código no válido. El formato debe ser LPA:1$<dirección smdp>$<código de activación></translation> <translation id="4102906002417106771">Reiniciar para ejecutar Powerwash</translation> -<translation id="4104163789986725820">E&xportar...</translation> <translation id="4107048419833779140">Identificar y expulsar dispositivos de almacenamiento</translation> <translation id="4108314971463891922">Seguir</translation> <translation id="4109135793348361820">Mover ventana a <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />)</translation> @@ -3944,6 +3945,7 @@ <translation id="475088594373173692">Primer usuario</translation> <translation id="4756378406049221019">Detener/Volver a cargar</translation> <translation id="4756388243121344051">&Historial</translation> +<translation id="4756671452988984333">Texto para audio</translation> <translation id="4759202969060787081">No abrir</translation> <translation id="4759238208242260848">Descargas</translation> <translation id="4761104368405085019">Utilizar el micrófono</translation> @@ -4103,6 +4105,7 @@ <translation id="4900392736118574277">Tu página de inicio ha cambiado a <ph name="URL" />.</translation> <translation id="490051679772058907"><ph name="REFRESH_RATE" /> Hz - entrelazado</translation> <translation id="4900652253009739885">No se puede quitar el único interruptor asignado a la acción "Seleccionar". Pulsa cualquier tecla para <ph name="RESPONSE" />.</translation> +<translation id="4901154724271753917">Mostrar cerradas recientemente</translation> <translation id="4901309472892185668">Selecciona el estado del experimento <ph name="EXPERIMENT_NAME" />.</translation> <translation id="49027928311173603">La política que has descargado del servidor no es válida (<ph name="VALIDATION_ERROR" />).</translation> <translation id="4906490889887219338">Configurar o gestionar sistemas de archivos compartidos de red. <ph name="LINK_BEGIN" />Más información<ph name="LINK_END" /></translation> @@ -5049,6 +5052,7 @@ <translation id="5860494867054883682">Actualizando el canal del dispositivo a <ph name="CHANNEL_NAME" /> (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">Mostrar herramientas del lápiz óptico en la estantería</translation> <translation id="5862319196656206789">Configurar dispositivos conectados</translation> +<translation id="5862731021271217234">Activa la sincronización para ver las pestañas de tus otros dispositivos</translation> <translation id="5863445608433396414">Habilitar funciones de depuración</translation> <translation id="5864195618110239517">Usar conexión de uso medido</translation> <translation id="5864754048328252126">Modo de inactividad durante la carga</translation> @@ -5485,7 +5489,6 @@ <translation id="6291949900244949761">Preguntar cuando un sitio web quiera acceder a los dispositivos USB (recomendado)</translation> <translation id="6291953229176937411">&Mostrar en Finder</translation> <translation id="6292699686837272722">el tamaño de las pestañas se ajusta a un ancho medio</translation> -<translation id="6294610283659775533">Puedes enviar pestañas entre dispositivos en los que se haya iniciado sesión con la misma cuenta de Google</translation> <translation id="6294759976468837022">Velocidad de la búsqueda automática</translation> <translation id="6295158916970320988">Todos los sitios</translation> <translation id="6295855836753816081">Guardando...</translation> @@ -6878,6 +6881,7 @@ <translation id="7668423670802040666">En el gestor de contraseñas de Google de <ph name="ACCOUNT" /></translation> <translation id="7669825497510425694">{NUM_ATTEMPTS,plural, =1{PIN incorrecto. Solo te queda 1 intento.}other{PIN incorrecto. Te quedan # intentos.}}</translation> <translation id="7670434942695515800">Para obtener el mejor rendimiento, actualiza a la versión más reciente. Es recomendable crear una copia de seguridad de los archivos por si no se puede completar la actualización. Una vez comience la actualización, Linux se apagará. Guarda los archivos abiertos antes de continuar. <ph name="LINK_START" />Más información<ph name="LINK_END" /></translation> +<translation id="7670483791111801022">Subtítulos</translation> <translation id="7671130400130574146">Utilizar bordes y barra de título</translation> <translation id="767127784612208024">Tocar para confirmar el borrado</translation> <translation id="7672520070349703697"><ph name="HUNG_IFRAME_URL" /> en <ph name="PAGE_TITLE" />.</translation> @@ -6990,6 +6994,7 @@ <translation id="7768526219335215384"><ph name="ORIGIN" /> podrá ver los archivos de <ph name="FOLDERNAME" /></translation> <translation id="7768770796815395237">Cambiar</translation> <translation id="7768784765476638775">Enunciar selección</translation> +<translation id="7769748505895274502">Ocultar cerradas recientemente</translation> <translation id="7770406201819593386">Ejecuta pruebas diagnósticas de ChromeOS Flex.</translation> <translation id="7770450735129978837">Clic derecho del ratón</translation> <translation id="7770612696274572992">Imagen copiada desde otro dispositivo</translation> @@ -7965,6 +7970,7 @@ <translation id="8724859055372736596">&Mostrar en carpeta</translation> <translation id="8725066075913043281">Reintentar</translation> <translation id="8725178340343806893">Favoritos/Marcadores</translation> +<translation id="87254326763805752">Confirma la clave de acceso</translation> <translation id="8726206820263995930">Error al recuperar la configuración de política del servidor (<ph name="CLIENT_ERROR" />)</translation> <translation id="8728351286589123703">Se restablecerán los permisos que hayas elegido</translation> <translation id="8729133765463465108">Usar cámara para escanear código QR</translation>
diff --git a/chrome/app/resources/generated_resources_et.xtb b/chrome/app/resources/generated_resources_et.xtb index 7dca878..75076ca 100644 --- a/chrome/app/resources/generated_resources_et.xtb +++ b/chrome/app/resources/generated_resources_et.xtb
@@ -334,7 +334,6 @@ <translation id="1319983966058170660">Alamlehe <ph name="SUBPAGE_TITLE" /> tagasinupp</translation> <translation id="1322046419516468189">Vaadake ja hallake oma salvestatud paroole siin: <ph name="SAVED_PASSWORDS_STORE" /></translation> <translation id="1324106254079708331">Kaitseb nende isiklikke Google'i kontosid, keda ähvardab sihitud rünnakute oht.</translation> -<translation id="1326317727527857210">Vahelehtede hankimiseks oma teistest seadmetest logige Chrome'i sisse.</translation> <translation id="1327272175893960498">Kerberose piletid</translation> <translation id="1327495825214193325">ADB silumise lubamiseks, tuleb seade <ph name="DEVICE_TYPE" /> taaskäivitada. Selle keelamiseks on seade vaja lähtestada tehaseseadetele.</translation> <translation id="1327794256477341646">Teie asukohateavet vajavad funktsioonid ei tööta</translation> @@ -2432,7 +2431,6 @@ <translation id="3280243678470289153">Jää Chrome'i</translation> <translation id="3281892622610078515">Karantiini pandavad failid ja programmid:</translation> <translation id="3282210178675490297">Vahelehte jagatakse rakendusega <ph name="APP_NAME" /></translation> -<translation id="3282568296779691940">Chrome'i sisselogimine</translation> <translation id="3285322247471302225">Uus &vaheleht</translation> <translation id="328571385944182268">Kas salvestada teie paroolid?</translation> <translation id="3288047731229977326">Arendaja režiimis töötavad laiendused võivad teie arvutit kahjustada. Kui te pole arendaja, peaksite turvalisuse säilitamiseks nende laienduste käitamise arendaja režiimis keelama.</translation> @@ -3306,7 +3304,6 @@ <translation id="4101352914005291489">Peidetud SSID</translation> <translation id="4102469565336584882">Kehtetu kood. Sisestus peab olema järgmises vormingus: LPA:1$<smdp address>$<activation code></translation> <translation id="4102906002417106771">Taaskäivita Powerwashi aktiveerimiseks</translation> -<translation id="4104163789986725820">&Ekspordi...</translation> <translation id="4107048419833779140">Salvestusseadmete tuvastamine ja väljutamine</translation> <translation id="4108314971463891922">Jälgi</translation> <translation id="4109135793348361820">Teisalda aken kasutaja <ph name="USER_NAME" /> töölauale (<ph name="USER_EMAIL" />)</translation> @@ -4115,6 +4112,7 @@ <translation id="4900392736118574277">Käivitamisel avatavaks leheks määrati <ph name="URL" />.</translation> <translation id="490051679772058907"><ph name="REFRESH_RATE" /> Hz – ülereaskannimine</translation> <translation id="4900652253009739885">Nupu „Vali“ jaoks määratud ainsat lülitit ei saa eemaldada. Vajutage mis tahes klahvi, et <ph name="RESPONSE" />.</translation> +<translation id="4901154724271753917">Laienda hiljuti suletud</translation> <translation id="4901309472892185668">Valige katse <ph name="EXPERIMENT_NAME" /> olek.</translation> <translation id="49027928311173603">Serverist alla laaditud reegel on kehtetu: <ph name="VALIDATION_ERROR" />.</translation> <translation id="4906490889887219338">Seadistage või hallake failide võrguhoidlaid. <ph name="LINK_BEGIN" />Lisateave<ph name="LINK_END" /></translation> @@ -5061,6 +5059,7 @@ <translation id="5860494867054883682">Seadme värskendamine kanalile <ph name="CHANNEL_NAME" /> (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">Kuva riiulis elektronpliiatsi tööriistad</translation> <translation id="5862319196656206789">Ühendatud seadmete seadistamine</translation> +<translation id="5862731021271217234">Vahelehtede hankimiseks oma teistest seadmetest lülitage sünkroonimine sisse</translation> <translation id="5863445608433396414">Silumisfunktsioonide lubamine</translation> <translation id="5864195618110239517">Kasuta mahupõhist ühendust</translation> <translation id="5864754048328252126">Toiming Tegevusetu laadimise ajal</translation> @@ -5497,7 +5496,6 @@ <translation id="6291949900244949761">Küsi, kui sait soovib juurdepääsu USB-seadmetele (soovitatav)</translation> <translation id="6291953229176937411">&Näita otsijas</translation> <translation id="6292699686837272722">Vahelehed kahanevad keskmisele laiusele</translation> -<translation id="6294610283659775533">Saate vahelehti saata seadmete vahel, mis on sisse logitud sama Google'i kontoga</translation> <translation id="6294759976468837022">Automaatse skannimise kiirus</translation> <translation id="6295158916970320988">Kõik saidid</translation> <translation id="6295855836753816081">Salvestamine ...</translation> @@ -7003,6 +7001,7 @@ <translation id="7768526219335215384"><ph name="ORIGIN" /> saab vaadata kaustas <ph name="FOLDERNAME" /> olevaid faile</translation> <translation id="7768770796815395237">Muuda</translation> <translation id="7768784765476638775">Vali ja kuula</translation> +<translation id="7769748505895274502">Ahenda hiljuti suletud</translation> <translation id="7770406201819593386">Chrome OS Flexi diagnostikatestide käitamine.</translation> <translation id="7770450735129978837">Hiire paremklikk</translation> <translation id="7770612696274572992">Pilt kopeeriti teisest seadmest</translation>
diff --git a/chrome/app/resources/generated_resources_eu.xtb b/chrome/app/resources/generated_resources_eu.xtb index 7be42ec..5acac3ed 100644 --- a/chrome/app/resources/generated_resources_eu.xtb +++ b/chrome/app/resources/generated_resources_eu.xtb
@@ -332,7 +332,6 @@ <translation id="1319983966058170660"><ph name="SUBPAGE_TITLE" /> azpiorriko Atzera botoia</translation> <translation id="1322046419516468189">Ikusi eta kudeatu gordetako pasahitzak hemen: <ph name="SAVED_PASSWORDS_STORE" /></translation> <translation id="1324106254079708331">Eraso bideratuak jasotzeko arriskuan dagoen edonoren Google-ko kontu pertsonala babesten du</translation> -<translation id="1326317727527857210">Beste gailuetako fitxak eskura izateko, hasi saioa Chrome-n.</translation> <translation id="1327272175893960498">Kerberos-eko zerbitzu-eskaerak</translation> <translation id="1327495825214193325">ADB arazketa gaitzeko, <ph name="DEVICE_TYPE" /> gailua berrabiarazi behar da. Desgaitzeko, jatorrizko ezarpenak berrezarri behar dira.</translation> <translation id="1327794256477341646">Kokapenerako sarbidea behar duten eginbideek ez dute funtzionatuko</translation> @@ -2425,7 +2424,6 @@ <translation id="3280243678470289153">Gelditu Chrome-n</translation> <translation id="3281892622610078515">Berrogeialdian sartu beharreko fitxategiak eta programak:</translation> <translation id="3282210178675490297"><ph name="APP_NAME" /> aplikazioarekin fitxa bat partekatzen</translation> -<translation id="3282568296779691940">Hasi saioa Chrome-n</translation> <translation id="3285322247471302225">&Fitxa berria</translation> <translation id="328571385944182268">Pasahitzak gorde nahi dituzu?</translation> <translation id="3288047731229977326">Garatzaile moduan abiarazten diren luzapenek ordenagailua kalte diezazukete. Ez bazara garatzailea, segurtasunez jokatzeko, luzapen horiek garatzaile moduan exekutatzeko aukera desgaitu beharko zenuke.</translation> @@ -3299,7 +3297,6 @@ <translation id="4101352914005291489">SSID ezkutua</translation> <translation id="4102469565336584882">Kodeak ez du balio. Sarrerak formatu hau eduki behar du: LPA:1$<SMDP helbidea>$<aktibazio-kodea></translation> <translation id="4102906002417106771">Berrabiarazi fabrikako ezarpenak Powerwash bidez berrezartzeko</translation> -<translation id="4104163789986725820">E&sportatu…</translation> <translation id="4107048419833779140">Identifikatu eta kanporatu memoria-gailuak</translation> <translation id="4108314971463891922">Jarraitu</translation> <translation id="4109135793348361820">Eraman leihoa <ph name="USER_NAME" /> erabiltzailearen mahaigainera (<ph name="USER_EMAIL" />)</translation> @@ -5053,6 +5050,7 @@ <translation id="5860494867054883682">Gailua <ph name="CHANNEL_NAME" /> kanalerako eguneratzen (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">Erakutsi arkatzaren tresnak apalean</translation> <translation id="5862319196656206789">Konfiguratu konektatutako gailuak</translation> +<translation id="5862731021271217234">Beste gailuetako fitxak eskura izateko, aktibatu sinkronizazioa</translation> <translation id="5863445608433396414">Gaitu arazketa-eginbideak</translation> <translation id="5864195618110239517">Erabili neurtutako konexioa</translation> <translation id="5864754048328252126">Gailua kargatzen ari denean inaktibo geratuz gero gauzatu beharreko ekintza</translation> @@ -5488,7 +5486,6 @@ <translation id="6291949900244949761">Eskatu nire baimena webguneren batek USB bidezko gailuak atzitu nahi dituenean (gomendatua)</translation> <translation id="6291953229176937411">&Erakutsi Finder-en</translation> <translation id="6292699686837272722">Fitxek zabalera ertaina hartzen dute txikituz gero</translation> -<translation id="6294610283659775533">Google-ko kontu berean saioa hasita daukaten gailuen artean fitxak bidal ditzakezu</translation> <translation id="6294759976468837022">Pantailan automatikoki mugitzeko abiadura</translation> <translation id="6295158916970320988">Webgune guztiak</translation> <translation id="6295855836753816081">Gordetzen…</translation>
diff --git a/chrome/app/resources/generated_resources_fa.xtb b/chrome/app/resources/generated_resources_fa.xtb index e3ed26af..005196f 100644 --- a/chrome/app/resources/generated_resources_fa.xtb +++ b/chrome/app/resources/generated_resources_fa.xtb
@@ -335,7 +335,6 @@ <translation id="1319983966058170660">دکمه برگشت صفحه فرعی <ph name="SUBPAGE_TITLE" /></translation> <translation id="1322046419516468189">در <ph name="SAVED_PASSWORDS_STORE" /> گذرواژههای ذخیرهشدهتان را مشاهده و مدیریت کنید</translation> <translation id="1324106254079708331">از «حسابهای Google» شخصی همه افرادی که درخطر حمله هدفمند قرار دارند حفاظت میکند</translation> -<translation id="1326317727527857210">برای دسترسی به برگههایتان در دستگاههای دیگر، به سیستم Chrome وارد شوید.</translation> <translation id="1327272175893960498">بلیتهای Kerberos</translation> <translation id="1327495825214193325">برای فعالسازی اشکالزدایی ADB (پل اشکالزدایی android)، بازراهاندازی <ph name="DEVICE_TYPE" /> لازم است. برای غیرفعال کردن این تنظیم، باید به تنظیمات کارخانه بازنشانی کنید.</translation> <translation id="1327794256477341646">ویژگیهایی که به مکان شما نیاز دارند کار نخواهند کرد</translation> @@ -2438,7 +2437,6 @@ <translation id="3280243678470289153">ماندن در Chrome</translation> <translation id="3281892622610078515">فایلها و برنامههایی که قرنطینه میشود:</translation> <translation id="3282210178675490297">درحال همرسانی برگه با <ph name="APP_NAME" /></translation> -<translation id="3282568296779691940">ورود به Chrome</translation> <translation id="3285322247471302225">&برگه جدید</translation> <translation id="328571385944182268">گذرواژه ذخیره شود؟</translation> <translation id="3288047731229977326">افزونههایی که در حالت برنامهنوبس اجرا میشوند میتوانند به رایانه شما آسیب برسانند. اگر برنامهنویس نیستید، باید این برنامههای افزودنی را که در حالت برنامهنویس اجرا میشوند غیرفعال کنید تا ایمن بمانید.</translation> @@ -3312,7 +3310,6 @@ <translation id="4101352914005291489">SSID پنهان</translation> <translation id="4102469565336584882">کد نامعتبر است. ورودی باید در قالب LPA:1$<نشانی smdp>$<کد فعالسازی> باشد</translation> <translation id="4102906002417106771">بازراهاندازی برای powerwash</translation> -<translation id="4104163789986725820">&صادر کردن...</translation> <translation id="4107048419833779140">شناسایی و خارج کردن دستگاههای ذخیرهسازی</translation> <translation id="4108314971463891922">دنبال کردن</translation> <translation id="4109135793348361820">انتقال پنجره به <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />)</translation> @@ -4122,6 +4119,7 @@ <translation id="4900392736118574277">صفحه شروع به <ph name="URL" /> تغییر کرد.</translation> <translation id="490051679772058907"><ph name="REFRESH_RATE" /> هرتز - درهمبافته</translation> <translation id="4900652253009739885">نمیتوان تنها کلید اختصاصیافته به کنش «انتخاب» را برداشت. برای <ph name="RESPONSE" />، کلیدی را فشار دهید.</translation> +<translation id="4901154724271753917">ازهم بازکردن موارد اخیراً بستهشده</translation> <translation id="4901309472892185668">وضعیت آزمایش را برای آزمایش <ph name="EXPERIMENT_NAME" /> انتخاب کنید.</translation> <translation id="49027928311173603">خطمشی بارگیریشده از سرور نامعتبر است: <ph name="VALIDATION_ERROR" />.</translation> <translation id="4906490889887219338">راهاندازی یا مدیریت دستگاههای ذخیرهسازی متصل به شبکه. <ph name="LINK_BEGIN" />بیشتر بدانید<ph name="LINK_END" /></translation> @@ -5068,6 +5066,7 @@ <translation id="5860494867054883682">درحال بهروزرسانی دستگاه شما به کانال <ph name="CHANNEL_NAME" /> (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">نمایش ابزار قلم در قفسه</translation> <translation id="5862319196656206789">راهاندازی دستگاههای متصل</translation> +<translation id="5862731021271217234">برای اینکه به برگههای بازشده در سایر دستگاهها دسترسی داشته باشید، همگامسازی را روشن کنید</translation> <translation id="5863445608433396414">فعال کردن ویژگیهای رفع اشکال</translation> <translation id="5864195618110239517">استفاده از اتصال محدود</translation> <translation id="5864754048328252126">کنش راکد هنگام شارژ شدن</translation> @@ -5504,7 +5503,6 @@ <translation id="6291949900244949761">وقتی سایتی میخواهد به دستگاههای USB دسترسی پیدا کند سؤال شود (توصیه میشود)</translation> <translation id="6291953229176937411">&نمایش در Finder</translation> <translation id="6292699686837272722">برگهها تا عرض متوسط کوچک میشوند</translation> -<translation id="6294610283659775533">برگهها را میتوانید بین دستگاههایی که با یک «حساب Google» به سیستم وارد شدند ارسال کنید.</translation> <translation id="6294759976468837022">سرعت اسکن خودکار</translation> <translation id="6295158916970320988">همه سایتها</translation> <translation id="6295855836753816081">در حال ذخیره کردن...</translation> @@ -7012,6 +7010,7 @@ <translation id="7768526219335215384"><ph name="ORIGIN" /> خواهد توانست فایلهای <ph name="FOLDERNAME" /> را مشاهده کند</translation> <translation id="7768770796815395237">تغییر دادن</translation> <translation id="7768784765476638775">انتخاب برای شنیدن</translation> +<translation id="7769748505895274502">جمع کردن موارد اخیراً بستهشده</translation> <translation id="7770406201819593386">اجرای آزمایشهای عیبیابی ChromeOS Flex.</translation> <translation id="7770450735129978837">کلیک سمت راست موشواره</translation> <translation id="7770612696274572992">تصویر از دستگاه دیگری کپی شده است</translation>
diff --git a/chrome/app/resources/generated_resources_fi.xtb b/chrome/app/resources/generated_resources_fi.xtb index 34a076e..7bb7e3c 100644 --- a/chrome/app/resources/generated_resources_fi.xtb +++ b/chrome/app/resources/generated_resources_fi.xtb
@@ -334,7 +334,6 @@ <translation id="1319983966058170660">Alasivun <ph name="SUBPAGE_TITLE" /> takaisin-painike</translation> <translation id="1322046419516468189">Katso ja ylläpidä salasanoja: <ph name="SAVED_PASSWORDS_STORE" /></translation> <translation id="1324106254079708331">Turvaa sellaisten henkilöiden omat Google-tilit, jotka ovat alttiita kohdistetuille hyökkäyksille</translation> -<translation id="1326317727527857210">Käytä välilehtiä muilta laitteiltasi kirjautumalla Chromeen.</translation> <translation id="1327272175893960498">Kerberos-tukipyyntö</translation> <translation id="1327495825214193325">ADB-virheenkorjauksen käyttöönottoa varten tämä <ph name="DEVICE_TYPE" /> on käynnistettävä uudelleen. Sen poistaminen käytöstä edellyttää tehdasasetusten palautusta.</translation> <translation id="1327794256477341646">Sijaintia edellyttävät ominaisuudet eivät enää toimi</translation> @@ -361,6 +360,7 @@ <translation id="1347256498747320987">Asenna päivityksiä ja sovelluksia. Jatkamalla hyväksyt, että laite voi automaattisesti ladata ja asentaa Googlen, operaattorisi tai laitevalmistajan päivityksiä ja sovelluksia, mahdollisesti mobiilidatayhteyden välityksellä. Osa näistä sovelluksista voi tarjota sovelluksen sisäisiä ostoksia. <ph name="BEGIN_LINK1" />Lue lisää<ph name="END_LINK1" /></translation> <translation id="1347512539447549782">Linux-tallennustila</translation> <translation id="1347975661240122359">Päivitys alkaa, kun akun lataustaso on <ph name="BATTERY_LEVEL" /> %.</translation> +<translation id="1348966090521113558">Hiiren saavutettavuusasetukset</translation> <translation id="1353275871123211385">Lapsella on oltava vanhemman ylläpitämä Google-tili, jotta tämä voi käyttää lapsilukkoasetuksia, kuten sovellusten hyväksyntää ja käyttöaikarajoituksia. Koulutili voidaan lisätä myöhemmin Google Classroomin kaltaisten työkalujen käyttöä varten.</translation> <translation id="135389172849514421">Toimii offline-tilassa</translation> <translation id="1353980523955420967">PPD:tä ei löydy. Varmista, että Chromebook on verkossa, ja yritä uudelleen.</translation> @@ -1797,6 +1797,7 @@ <translation id="2653659639078652383">Lähetä</translation> <translation id="265390580714150011">Kentän arvo</translation> <translation id="2654553774144920065">Tulostuspyyntö</translation> +<translation id="2657612187216250073">Osoittimen saavutettavuusasetukset</translation> <translation id="2658941648214598230">Näytetäänkö alkuperäinen sisältö?</translation> <translation id="2659381484350128933"><ph name="FOOTNOTE_POINTER" /> Ominaisuudet vaihtelevat laitteen mukaan</translation> <translation id="2659971421398561408">Crostini-levyn koon muutos</translation> @@ -1961,6 +1962,7 @@ <translation id="2801954693771979815">Näytön koko</translation> <translation id="2802557211515765772">Hallinnoituja tulostimia ei ole.</translation> <translation id="2803313416453193357">Avaa kansio</translation> +<translation id="2803719750464280163">Vahvista, että <ph name="PASSKEY" /> on Bluetooth-laitteella <ph name="DEVICE" /> näkyvä avainkoodi.</translation> <translation id="2804043232879091219">Toisen selaimen avaaminen epäonnistui</translation> <translation id="2804667941345577550">Sinut kirjataan ulos tältä sivustolta, myös avoimilta välilehdiltä.</translation> <translation id="2804680522274557040">Kamera poistettiin käytöstä</translation> @@ -2437,7 +2439,6 @@ <translation id="3280243678470289153">Pysy Chromessa</translation> <translation id="3281892622610078515">Karanteeniin siirrettävät tiedostot ja ohjelmat:</translation> <translation id="3282210178675490297">Välilehti jaetaan: <ph name="APP_NAME" /></translation> -<translation id="3282568296779691940">Kirjaudu Chromeen</translation> <translation id="3285322247471302225">Uusi välileh&ti</translation> <translation id="328571385944182268">Tallennetaanko salasanat?</translation> <translation id="3288047731229977326">Kehittäjätilassa olevat laajennukset voivat vahingoittaa tietokonettasi. Jos et ole kehittäjä, poista kehittäjätilassa olevat laajennukset käytöstä varmuuden vuoksi.</translation> @@ -2877,6 +2878,7 @@ <translation id="370649949373421643">Ota Wi-Fi käyttöön</translation> <translation id="370665806235115550">Ladataan...</translation> <translation id="3707163604290651814"><ph name="NAME" /> on kirjautuneena sisään</translation> +<translation id="3708295717182051206">Tekstitykset</translation> <translation id="3708684582558000260">Älä salli suljettujen sivustojen suorittaa datan lähettämistä tai vastaanottamista loppuun</translation> <translation id="3709244229496787112">Selain suljettiin ennen latauksen päättymistä.</translation> <translation id="371174301504454251">Yksityisyytesi suojaamiseksi poistamme listalta automaattisesti yli neljä viikkoa vanhat sivustotiedot. Jos käyt taas sivustolla, se voi näkyä listalla uudelleen. Voit myös poistaa sivuston, jos et halua sen koskaan määrittelevän sinua kiinnostavia aiheita.</translation> @@ -3307,7 +3309,6 @@ <translation id="4101352914005291489">Piilotettu SSID</translation> <translation id="4102469565336584882">Virheellinen koodi. Muodon pitää olla tällainen: LPA:1$<smdp address>$<activation code></translation> <translation id="4102906002417106771">Aloita Powerwash käynnistämällä uudelleen</translation> -<translation id="4104163789986725820">V&ie...</translation> <translation id="4107048419833779140">Tunnistaa ja poistaa tallennuslaitteet</translation> <translation id="4108314971463891922">Seuraa</translation> <translation id="4109135793348361820">Siirrä ikkuna käyttäjälle <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />)</translation> @@ -3957,6 +3958,7 @@ <translation id="475088594373173692">Ensimmäinen käyttäjä</translation> <translation id="4756378406049221019">Pysäytä/päivitä</translation> <translation id="4756388243121344051">&Historia</translation> +<translation id="4756671452988984333">Audio ja tekstitys</translation> <translation id="4759202969060787081">Älä avaa</translation> <translation id="4759238208242260848">Lataukset</translation> <translation id="4761104368405085019">Käyttää mikrofonia</translation> @@ -4116,6 +4118,7 @@ <translation id="4900392736118574277">Aloitussivuksi vaihdettiin <ph name="URL" />.</translation> <translation id="490051679772058907"><ph name="REFRESH_RATE" /> Hz – lomitettu</translation> <translation id="4900652253009739885">Ainoaa Valinta-toiminnolle määritettyä kytkintä ei voi poistaa. <ph name="RESPONSE" /> painamalla mitä tahansa näppäintä.</translation> +<translation id="4901154724271753917">Laajenna äskettäin suljetut</translation> <translation id="4901309472892185668">Valitse kokeilutila tälle kokeilulle: <ph name="EXPERIMENT_NAME" />.</translation> <translation id="49027928311173603">Palvelimelta ladattu käytäntö on virheellinen: <ph name="VALIDATION_ERROR" />.</translation> <translation id="4906490889887219338">Aloita verkkotiedostojen jakaminen tai muuta sitä. <ph name="LINK_BEGIN" />Lue lisää<ph name="LINK_END" /></translation> @@ -5062,6 +5065,7 @@ <translation id="5860494867054883682">Päivitetään laitetta versioon <ph name="CHANNEL_NAME" /> (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">Näytä näyttökynätyökalut hyllyssä</translation> <translation id="5862319196656206789">Lisää yhdistettyjä laitteita</translation> +<translation id="5862731021271217234">Ota synkronointi käyttöön, niin voit käyttää välilehtiä muilta laitteiltasi</translation> <translation id="5863445608433396414">Ota käyttöön virheenkorjausominaisuudet</translation> <translation id="5864195618110239517">Käytä maksullista yhteyttä</translation> <translation id="5864754048328252126">Epäaktiivisuustoiminto latauksessa</translation> @@ -5498,7 +5502,6 @@ <translation id="6291949900244949761">Kysy aina, kun sivusto pyytää USB-laitteen käyttölupaa (suositus)</translation> <translation id="6291953229176937411">Näytä Finderi&ssä</translation> <translation id="6292699686837272722">Välilehdet kutistuvat keskipitkään leveyteen</translation> -<translation id="6294610283659775533">Voit lähettää välilehtiä laitteiden välillä, jos olet kirjautuneena niillä samalle Google-tilille</translation> <translation id="6294759976468837022">Automaattisen skannauksen nopeus</translation> <translation id="6295158916970320988">Kaikki sivustot</translation> <translation id="6295855836753816081">Tallennetaan…</translation> @@ -6891,6 +6894,7 @@ <translation id="7668423670802040666">Googlen Salasanojen ylläpidossa: <ph name="ACCOUNT" /></translation> <translation id="7669825497510425694">{NUM_ATTEMPTS,plural, =1{Väärä PIN-koodi. Jäljellä on yksi yritys.}other{Väärä PIN-koodi. Jäljellä on # yritystä.}}</translation> <translation id="7670434942695515800">Parhaan suorituskyvyn saat päivittämällä uusimpaan versioon. Tiedostojen varmuuskopiointia suositellaan siltä varalta, että päivitystä ei voida suorittaa loppuun. Kun päivitys alkaa, Linux sammuu. Tallenna avoinna olevat tiedostot ennen kuin jatkat. <ph name="LINK_START" />Lue lisää<ph name="LINK_END" /></translation> +<translation id="7670483791111801022">Tekstitykset</translation> <translation id="7671130400130574146">Käytä järjestelmän otsikkoriviä ja reunoja</translation> <translation id="767127784612208024">Vahvista nollaus koskettamalla</translation> <translation id="7672520070349703697"><ph name="HUNG_IFRAME_URL" /> (<ph name="PAGE_TITLE" />)</translation> @@ -7003,6 +7007,7 @@ <translation id="7768526219335215384"><ph name="ORIGIN" /> voi nähdä täällä oleva tiedostot: <ph name="FOLDERNAME" /></translation> <translation id="7768770796815395237">Muuta</translation> <translation id="7768784765476638775">Teksti puhuttuna</translation> +<translation id="7769748505895274502">Tiivistä äskettäin suljetut</translation> <translation id="7770406201819593386">Suorittaa ChromeOS Flexin diagnostiikkatestit.</translation> <translation id="7770450735129978837">Klikkaus hiiren oikealla painikkeella</translation> <translation id="7770612696274572992">Toiselta laitteelta kopioitu kuva</translation> @@ -7977,6 +7982,7 @@ <translation id="8724859055372736596">Näytä ka&nsiossa</translation> <translation id="8725066075913043281">Yritä uudelleen</translation> <translation id="8725178340343806893">Suosikit/Kirjanmerkit</translation> +<translation id="87254326763805752">Vahvista avainkoodi</translation> <translation id="8726206820263995930">Virhe noudettaessa käytäntöasetuksia palvelimelta: <ph name="CLIENT_ERROR" />.</translation> <translation id="8728351286589123703">Valitsemasi luvat nollataan</translation> <translation id="8729133765463465108">Skannaa QR-koodi kameralla</translation>
diff --git a/chrome/app/resources/generated_resources_fil.xtb b/chrome/app/resources/generated_resources_fil.xtb index 8f670f0..6151aaf 100644 --- a/chrome/app/resources/generated_resources_fil.xtb +++ b/chrome/app/resources/generated_resources_fil.xtb
@@ -335,7 +335,6 @@ <translation id="1319983966058170660">Button na bumalik ng subpage na <ph name="SUBPAGE_TITLE" /></translation> <translation id="1322046419516468189">Tingnan at pamahalaan ang mga naka-save na password sa iyong <ph name="SAVED_PASSWORDS_STORE" /></translation> <translation id="1324106254079708331">Iniingatan ang mga personal na Google Account ng sinumang nanganganib sa mga naka-target na pag-atake</translation> -<translation id="1326317727527857210">Upang makuha ang iyong mga tab mula sa iba mo pang mga device, mag-sign in sa Chrome.</translation> <translation id="1327272175893960498">Mga ticket ng Kerberos</translation> <translation id="1327495825214193325">Para ma-enable ang pag-debug ng ADB, kinakailangang i-restart ang <ph name="DEVICE_TYPE" /> na ito. Kinakailangan sa pag-disable nito ang pag-reset sa mga factory setting.</translation> <translation id="1327794256477341646">Hindi gagana ang mga feature na nangangailangan ng iyong lokasyon</translation> @@ -2442,7 +2441,6 @@ <translation id="3280243678470289153">Manatili sa Chrome</translation> <translation id="3281892622610078515">Mga file at program na iku-quarantine:</translation> <translation id="3282210178675490297">Nagbabahagi ng tab sa <ph name="APP_NAME" /></translation> -<translation id="3282568296779691940">Mag-sign in sa Chrome</translation> <translation id="3285322247471302225">Bagong &Tab</translation> <translation id="328571385944182268">I-save ang iyong mga password?</translation> <translation id="3288047731229977326">Ang mga extension na tumatakbo sa developer mode ay maaaring makapinsala sa iyong computer. Kung hindi ka isang developer, dapat mong i-disable ang mga extension na tumatakbo sa developer mode upang manatiling ligtas.</translation> @@ -3284,6 +3282,7 @@ <translation id="4077919383365622693">Maki-clear ang lahat ng data at cookies na na-store ng <ph name="SITE" />.</translation> <translation id="4078738236287221428">Agresibo</translation> <translation id="4079140982534148664">Gumamit ng Pinahusay na Pang-check ng Pagbabaybay</translation> +<translation id="4081203444152654304">Maghanap sa loob ng larawan gamit ang <ph name="VISUAL_SEARCH_PROVIDER" /></translation> <translation id="4081242589061676262">Hindi ma-cast ang file.</translation> <translation id="408223403876103285">Nagpadala ng notification ang <ph name="WEBSITE" /> sa iyong telepono. Para kumpirmahing ikaw ito, sundin ang mga hakbang doon.</translation> <translation id="4084682180776658562">Bookmark</translation> @@ -3316,7 +3315,6 @@ <translation id="4101352914005291489">Nakatagong SSID</translation> <translation id="4102469565336584882">Invalid ang code. Dapat LPA:1$<smdp address>$<activation code> ang format ng entry mo</translation> <translation id="4102906002417106771">I-restart para mag-powerwash</translation> -<translation id="4104163789986725820">I-e&xport...</translation> <translation id="4107048419833779140">Kumilala at mag-eject ng mga storage device</translation> <translation id="4108314971463891922">Subaybayan</translation> <translation id="4109135793348361820">Ilipat ang window sa <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />)</translation> @@ -3680,6 +3678,7 @@ <translation id="4476590490540813026">Atleta</translation> <translation id="4476659815936224889">Para i-scan ang code na ito, puwede kang gumamit ng QR scanner app sa iyong telepono, o ilang camera app.</translation> <translation id="4477015793815781985">Dapat may kasabay na Ctrl, Alt, o ⌘</translation> +<translation id="4477379360383751882">Maghanap sa loob ng Larawan gamit ang <ph name="VISUAL_SEARCH_PROVIDER" /></translation> <translation id="4478664379124702289">I-save ang Lin&k Bilang...</translation> <translation id="4479424953165245642">Pamahalaan ang mga kiosk application</translation> <translation id="4479639480957787382">Ethernet</translation> @@ -4126,6 +4125,7 @@ <translation id="4900392736118574277">Naging <ph name="URL" /> ang iyong pahina sa pagsisimula.</translation> <translation id="490051679772058907"><ph name="REFRESH_RATE" /> Hz - naka-interlace</translation> <translation id="4900652253009739885">Hindi maalis ang tanging switch na nakatalaga sa “Piliin.” Pumindot ng anumang key para <ph name="RESPONSE" />.</translation> +<translation id="4901154724271753917">I-expand ang kamakailang isinara</translation> <translation id="4901309472892185668">Pumili ng status ng eksperimento para sa eksperimentong <ph name="EXPERIMENT_NAME" />.</translation> <translation id="49027928311173603">Di-wasto ang patakaran na-download mula sa server: <ph name="VALIDATION_ERROR" />.</translation> <translation id="4906490889887219338">Mag-set up o mamahala ng mga file share ng network. <ph name="LINK_BEGIN" />Matuto pa<ph name="LINK_END" /></translation> @@ -5072,6 +5072,7 @@ <translation id="5860494867054883682">Ina-update ang iyong device sa <ph name="CHANNEL_NAME" /> channel (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">Ipakita ang mga stylus tool sa shelf</translation> <translation id="5862319196656206789">I-set up ang mga nakakonektang device</translation> +<translation id="5862731021271217234">Para makuha ang iyong mga tab mula sa iba mo pang device, i-on ang pag-sync</translation> <translation id="5863445608433396414">I-enable ang mga feature para sa pagde-debug</translation> <translation id="5864195618110239517">Gumamit ng nakametrong koneksyon</translation> <translation id="5864754048328252126">Idle na pagkilos habang nagcha-charge</translation> @@ -5508,7 +5509,6 @@ <translation id="6291949900244949761">Magtanong kapag gusto ng isang site na i-access ang mga USB device (inirerekomenda)</translation> <translation id="6291953229176937411">&Show in Finder</translation> <translation id="6292699686837272722">Paliitin ang mga tab sa katamtamang lapad</translation> -<translation id="6294610283659775533">Puwede kang magpadala ng mga tab sa pagitan ng mga device na naka-sign in gamit ang iisang Google Account</translation> <translation id="6294759976468837022">Bilis ng awtomatikong pag-scan</translation> <translation id="6295158916970320988">Lahat ng site</translation> <translation id="6295855836753816081">Sine-save...</translation> @@ -7016,6 +7016,7 @@ <translation id="7768526219335215384">Matitingnan ng <ph name="ORIGIN" /> ang mga file sa <ph name="FOLDERNAME" /></translation> <translation id="7768770796815395237">Baguhin</translation> <translation id="7768784765476638775">Select to Speak</translation> +<translation id="7769748505895274502">I-collapse ang kamakailang isinara</translation> <translation id="7770406201819593386">Magpatakbo ng mga diagnostic test ng ChromeOS Flex.</translation> <translation id="7770450735129978837">Pag-click sa kanang mouse button</translation> <translation id="7770612696274572992">Nakopya ang larawan mula sa isa pang device</translation>
diff --git a/chrome/app/resources/generated_resources_fr-CA.xtb b/chrome/app/resources/generated_resources_fr-CA.xtb index 06618eb..5fba1ac8 100644 --- a/chrome/app/resources/generated_resources_fr-CA.xtb +++ b/chrome/app/resources/generated_resources_fr-CA.xtb
@@ -333,7 +333,6 @@ <translation id="1319983966058170660">Bouton de retour pour la sous-page <ph name="SUBPAGE_TITLE" /></translation> <translation id="1322046419516468189">Affichez et gérez les mots de passe enregistrés dans votre <ph name="SAVED_PASSWORDS_STORE" /></translation> <translation id="1324106254079708331">Protège les comptes Google personnels des utilisateurs susceptibles d'être victimes d'attaques ciblées</translation> -<translation id="1326317727527857210">Pour synchroniser les onglets de vos autres appareils, connectez-vous à Chrome.</translation> <translation id="1327272175893960498">Tickets Kerberos</translation> <translation id="1327495825214193325">Pour activer le débogage PDA, vous devez redémarrer cet appareil <ph name="DEVICE_TYPE" />. Pour désactiver votre appareil, vous devez le réinitialiser à ses paramètres par défaut.</translation> <translation id="1327794256477341646">Les fonctionnalités qui nécessitent l'accès à votre position ne seront pas accessibles</translation> @@ -360,6 +359,7 @@ <translation id="1347256498747320987">Installer des mises à jour et des applications. En continuant, vous acceptez que cet appareil puisse également télécharger et installer automatiquement des mises à jour et des applications de Google, de votre fournisseur de services sans fil et du fabricant de votre appareil, éventuellement en utilisant les réseaux de données cellulaires. Certaines de ces applications peuvent aussi offrir des achats au moyen de l'application. <ph name="BEGIN_LINK1" />En savoir plus<ph name="END_LINK1" /></translation> <translation id="1347512539447549782">Espace de stockage de Linux</translation> <translation id="1347975661240122359">La mise à jour commencera lorsque la pile atteindra <ph name="BATTERY_LEVEL" /> %.</translation> +<translation id="1348966090521113558">Paramètres d'accessibilité de la souris</translation> <translation id="1353275871123211385">Pour que vous puissiez utiliser des contrôles parentaux comme l'approbation d'applications et les limites de temps d'utilisation des écrans, votre enfant doit posséder un compte Google géré par un parent. Un compte scolaire peut être ajouté par la suite pour des outils comme Google Classroom.</translation> <translation id="135389172849514421">Fonctionne hors ligne</translation> <translation id="1353980523955420967">Impossible de trouver le PPD. Vérifiez que votre Chromebook est en ligne, puis réessayez.</translation> @@ -1785,6 +1785,7 @@ <translation id="2653659639078652383">Envoyer</translation> <translation id="265390580714150011">Valeur du champ</translation> <translation id="2654553774144920065">Demande d'impression</translation> +<translation id="2657612187216250073">Paramètres d'accessibilité du curseur</translation> <translation id="2658941648214598230">Afficher le contenu original?</translation> <translation id="2659381484350128933"><ph name="FOOTNOTE_POINTER" />Les fonctionnalités varient selon l'appareil</translation> <translation id="2659971421398561408">Modification de la taille du disque pour Crostini</translation> @@ -1949,6 +1950,7 @@ <translation id="2801954693771979815">Taille de l'écran</translation> <translation id="2802557211515765772">Il n'y a aucune imprimante gérée.</translation> <translation id="2803313416453193357">Ouvrir le dossier</translation> +<translation id="2803719750464280163">Veuillez confirmer que <ph name="PASSKEY" /> est le mot de passe apparaissant sur l'appareil Bluetooth <ph name="DEVICE" />.</translation> <translation id="2804043232879091219">Impossible d'ouvrir le navigateur secondaire</translation> <translation id="2804667941345577550">Vous serez déconnecté de ce site, y compris dans les onglets ouverts</translation> <translation id="2804680522274557040">Appareil photo désactivé</translation> @@ -2425,7 +2427,6 @@ <translation id="3280243678470289153">Rester dans Chrome</translation> <translation id="3281892622610078515">Fichiers et programmes à placer en quarantaine :</translation> <translation id="3282210178675490297">Partage d'un onglet avec <ph name="APP_NAME" /> en cours…</translation> -<translation id="3282568296779691940">Connexion à Chrome</translation> <translation id="3285322247471302225">Nouvel ongle&t</translation> <translation id="328571385944182268">Enregistrer vos mots de passe?</translation> <translation id="3288047731229977326">Les extensions exécutées en mode développeur peuvent nuire à votre ordinateur. Si vous n'êtes pas un développeur, nous vous recommandons de désactiver celles-ci afin d'assurer la sécurité de votre ordinateur.</translation> @@ -2865,6 +2866,7 @@ <translation id="370649949373421643">Activer le Wi-Fi</translation> <translation id="370665806235115550">Chargement en cours...</translation> <translation id="3707163604290651814">Actuellement connecté en tant que <ph name="NAME" /></translation> +<translation id="3708295717182051206">Sous-titres</translation> <translation id="3708684582558000260">Ne pas autoriser les sites fermés à terminer l'envoi ni la réception de données</translation> <translation id="3709244229496787112">Le navigateur s'est fermé avant la fin du téléchargement.</translation> <translation id="371174301504454251">Afin de protéger votre confidentialité, nous supprimons automatiquement de la liste les sites ayant plus de quatre semaines. Un site que vous revisitez pourrait réapparaître sur la liste. Vous pouvez également retirer un site si vous ne souhaitez pas que vos centres d'intérêt soient définis en fonction de ce dernier.</translation> @@ -3266,6 +3268,7 @@ <translation id="4077919383365622693">Toutes les données et tous les témoins stockés par <ph name="SITE" /> seront supprimés.</translation> <translation id="4078738236287221428">Aggressive</translation> <translation id="4079140982534148664">Utiliser le correcteur orthographique amélioré</translation> +<translation id="4081203444152654304">Rechercher dans l'image avec <ph name="VISUAL_SEARCH_PROVIDER" /></translation> <translation id="4081242589061676262">Impossible de diffuser le fichier.</translation> <translation id="408223403876103285"><ph name="WEBSITE" /> a envoyé une notification sur votre téléphone. Pour confirmer votre identité, suivez les étapes indiquées.</translation> <translation id="4084682180776658562">Favoris</translation> @@ -3298,7 +3301,6 @@ <translation id="4101352914005291489">SSID masqué</translation> <translation id="4102469565336584882">Code incorrect. Votre entrée doit respecter le format LPA:1$<adresse smdp>$<code d'activation></translation> <translation id="4102906002417106771">Redémarrer l'appareil pour effectuer une réinitialisation Powerwash</translation> -<translation id="4104163789986725820">E&xporter...</translation> <translation id="4107048419833779140">Identifier et éjecter la mémoire de stockage des appareils</translation> <translation id="4108314971463891922">Suivre</translation> <translation id="4109135793348361820">Déplacer la fenêtre vers le bureau de <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />)</translation> @@ -3662,6 +3664,7 @@ <translation id="4476590490540813026">Athlète</translation> <translation id="4476659815936224889">Pour numériser ce code, vous pouvez utiliser une application de numérisation de code QR sur votre téléphone ou certaines applications d'appareil photo.</translation> <translation id="4477015793815781985">Incluez la touche Ctrl, Alt ou ⌘</translation> +<translation id="4477379360383751882">Rechercher dans l'image avec <ph name="VISUAL_SEARCH_PROVIDER" /></translation> <translation id="4478664379124702289">Enregistrer le lie&n sous...</translation> <translation id="4479424953165245642">Gérer les applications de kiosque</translation> <translation id="4479639480957787382">Ethernet</translation> @@ -3947,6 +3950,7 @@ <translation id="475088594373173692">Premier utilisateur</translation> <translation id="4756378406049221019">Arrêter/Actualiser</translation> <translation id="4756388243121344051">&Historique</translation> +<translation id="4756671452988984333">Texte pour le contenu audio</translation> <translation id="4759202969060787081">Ne pas ouvrir</translation> <translation id="4759238208242260848">Téléchargements</translation> <translation id="4761104368405085019">Utiliser votre microphone</translation> @@ -5053,6 +5057,7 @@ <translation id="5860494867054883682">Passage à la version <ph name="CHANNEL_NAME" /> en cours (<ph name="PROGRESS_PERCENT" />)…</translation> <translation id="5862109781435984885">Afficher les outils de stylet dans l'étagère</translation> <translation id="5862319196656206789">Configurer les appareils connectés</translation> +<translation id="5862731021271217234">Pour synchroniser vos onglets sur vos autres appareils, activez la synchronisation</translation> <translation id="5863445608433396414">Activer les fonctionnalités de débogage</translation> <translation id="5864195618110239517">Utiliser une connexion mesurée</translation> <translation id="5864754048328252126">Action en cas d'inactivité durant la recharge</translation> @@ -5489,7 +5494,6 @@ <translation id="6291949900244949761">Demander une autorisation lorsqu'un site veut accéder à des appareils USB (recommandé)</translation> <translation id="6291953229176937411">&Afficher dans le Finder</translation> <translation id="6292699686837272722">Les onglets sont réduits à une largeur moyenne</translation> -<translation id="6294610283659775533">Vous pouvez envoyer des onglets entre des appareils qui sont connectés au même compte Google</translation> <translation id="6294759976468837022">Vitesse du balayage automatique</translation> <translation id="6295158916970320988">Tous les sites</translation> <translation id="6295855836753816081">Enregistrement en cours...</translation> @@ -6884,6 +6888,7 @@ <translation id="7668423670802040666">Dans le gestionnaire de mots de passe Google pour <ph name="ACCOUNT" /></translation> <translation id="7669825497510425694">{NUM_ATTEMPTS,plural, =1{NIP incorrect. Il vous reste une tentative.}one{NIP incorrect. Il vous reste # tentative.}other{NIP incorrect. Il vous reste # tentatives.}}</translation> <translation id="7670434942695515800">Pour une performance optimale, effectuez une mise à niveau vers la dernière version. La sauvegarde de vos fichiers est recommandée au cas où la mise à niveau ne pourrait pas être terminée. Une fois la mise à niveau commencée, Linux s'éteindra. Enregistrez les fichiers ouverts avant de continuer. <ph name="LINK_START" />En savoir plus<ph name="LINK_END" /></translation> +<translation id="7670483791111801022">Sous-titres</translation> <translation id="7671130400130574146">Utiliser la barre de titre et les bordures de fenêtre du système</translation> <translation id="767127784612208024">Touchez pour confirmer la réinitialisation</translation> <translation id="7672520070349703697"><ph name="HUNG_IFRAME_URL" />, dans <ph name="PAGE_TITLE" />.</translation> @@ -7971,6 +7976,7 @@ <translation id="8724859055372736596">Afficher dans le do&ssier</translation> <translation id="8725066075913043281">Réessayer</translation> <translation id="8725178340343806893">Favoris ou signets</translation> +<translation id="87254326763805752">Confirmer le mot de passe</translation> <translation id="8726206820263995930">Une erreur est survenue lors de la récupération des paramètres des politiques sur le serveur : <ph name="CLIENT_ERROR" />.</translation> <translation id="8728351286589123703">Les autorisations que vous avez choisies seront réinitialisées</translation> <translation id="8729133765463465108">Utiliser l'appareil photo pour numériser le code QR</translation>
diff --git a/chrome/app/resources/generated_resources_fr.xtb b/chrome/app/resources/generated_resources_fr.xtb index bac41e9..98adfe0 100644 --- a/chrome/app/resources/generated_resources_fr.xtb +++ b/chrome/app/resources/generated_resources_fr.xtb
@@ -333,7 +333,6 @@ <translation id="1319983966058170660">Bouton "Retour" de la sous-page "<ph name="SUBPAGE_TITLE" />"</translation> <translation id="1322046419516468189">Afficher et gérer les mots de passe enregistrés de votre <ph name="SAVED_PASSWORDS_STORE" /></translation> <translation id="1324106254079708331">Sauvegarde les comptes Google personnels des utilisateurs susceptibles d'être victimes d'attaques ciblées</translation> -<translation id="1326317727527857210">Connectez-vous à Chrome pour accéder à vos onglets sur vos autres appareils.</translation> <translation id="1327272175893960498">Tickets Kerberos</translation> <translation id="1327495825214193325">Pour activer le débogage ADB, vous devrez redémarrer votre <ph name="DEVICE_TYPE" />. Et, pour le désactiver, vous devrez rétablir la configuration d'usine.</translation> <translation id="1327794256477341646">Les fonctionnalités qui nécessitent l'accès à votre position ne seront pas disponibles</translation> @@ -2427,7 +2426,6 @@ <translation id="3280243678470289153">Rester dans Chrome</translation> <translation id="3281892622610078515">Fichiers et programmes à placer en quarantaine :</translation> <translation id="3282210178675490297">Partage d'un onglet avec <ph name="APP_NAME" />…</translation> -<translation id="3282568296779691940">Connectez-vous à Chrome</translation> <translation id="3285322247471302225">Nouvel ongle&t</translation> <translation id="328571385944182268">Enregistrer vos mots de passe ?</translation> <translation id="3288047731229977326">Les extensions exécutées en mode développeur peuvent nuire à votre ordinateur. Si vous n'êtes pas un développeur, nous vous recommandons de désactiver celles-ci afin d'assurer la sécurité de votre ordinateur.</translation> @@ -3301,7 +3299,6 @@ <translation id="4101352914005291489">SSID masqué</translation> <translation id="4102469565336584882">Code non valide. Votre entrée devrait correspondre au format LPA:1$<adresse smdp>$<code d'activation></translation> <translation id="4102906002417106771">Redémarrer en mode Powerwash</translation> -<translation id="4104163789986725820">E&xporter...</translation> <translation id="4107048419833779140">Identifier et exclure des périphériques de stockage</translation> <translation id="4108314971463891922">Suivre</translation> <translation id="4109135793348361820">Déplacer la fenêtre vers <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />)</translation> @@ -5057,6 +5054,7 @@ <translation id="5860494867054883682">Mise à jour de votre appareil sur la version <ph name="CHANNEL_NAME" /> (<ph name="PROGRESS_PERCENT" />)…</translation> <translation id="5862109781435984885">Afficher les outils de stylet sur l'étagère</translation> <translation id="5862319196656206789">Configurer les appareils connectés</translation> +<translation id="5862731021271217234">Activez la synchronisation pour accéder à vos onglets sur vos autres appareils</translation> <translation id="5863445608433396414">Activer les fonctionnalités de débogage</translation> <translation id="5864195618110239517">Utiliser une connexion facturée à l'usage</translation> <translation id="5864754048328252126">Lorsque l'appareil est inactif et en charge</translation> @@ -5493,7 +5491,6 @@ <translation id="6291949900244949761">Me demander lorsqu'un site souhaite accéder aux appareils USB (recommandé)</translation> <translation id="6291953229176937411">&Afficher dans le Finder</translation> <translation id="6292699686837272722">Onglets réduits à une largeur moyenne</translation> -<translation id="6294610283659775533">Vous pouvez envoyer des onglets entre appareils connectés au même compte Google</translation> <translation id="6294759976468837022">Vitesse de la recherche automatique</translation> <translation id="6295158916970320988">Tous les sites</translation> <translation id="6295855836753816081">Enregistrement…</translation>
diff --git a/chrome/app/resources/generated_resources_gl.xtb b/chrome/app/resources/generated_resources_gl.xtb index 9275da61..c5e98c5 100644 --- a/chrome/app/resources/generated_resources_gl.xtb +++ b/chrome/app/resources/generated_resources_gl.xtb
@@ -332,7 +332,6 @@ <translation id="1319983966058170660">Botón Atrás da subpáxina <ph name="SUBPAGE_TITLE" /></translation> <translation id="1322046419516468189">Para consultar e xestionar os contrasinais gardados, accede á túa <ph name="SAVED_PASSWORDS_STORE" /></translation> <translation id="1324106254079708331">Protexe as Contas de Google persoais de calquera usuario que corra o risco de sufrir ataques dirixidos</translation> -<translation id="1326317727527857210">Inicia sesión en Chrome para sincronizar as pestanas dos demais dispositivos.</translation> <translation id="1327272175893960498">Tíckets de Kerberos</translation> <translation id="1327495825214193325">Para activar a depuración de ADB, é necesario reiniciar o <ph name="DEVICE_TYPE" />. Para desactivala debes restablecer a configuración de fábrica.</translation> <translation id="1327794256477341646">As funcións que requiran a túa localización non estarán dispoñibles</translation> @@ -2424,7 +2423,6 @@ <translation id="3280243678470289153">Permanecer en Chrome</translation> <translation id="3281892622610078515">Ficheiros e programas para poñer en corentena:</translation> <translation id="3282210178675490297">Compartindo unha pestana coa aplicación <ph name="APP_NAME" /></translation> -<translation id="3282568296779691940">Iniciar sesión en Chrome</translation> <translation id="3285322247471302225">Nova &pestana</translation> <translation id="328571385944182268">Queres gardar os teus contrasinais?</translation> <translation id="3288047731229977326">As extensións que se executan no modo de programador poden danar o ordenador. Se non es programador, deberás desactivar estas extensións que se executan no modo de programador para permanecer seguro.</translation> @@ -3298,7 +3296,6 @@ <translation id="4101352914005291489">SSID oculto</translation> <translation id="4102469565336584882">O código non é válido. Debería ter o formato LPA:1$<enderezo smdp>$<código de activación></translation> <translation id="4102906002417106771">Reiniciar para usar a función Powerwash</translation> -<translation id="4104163789986725820">E&xportar...</translation> <translation id="4107048419833779140">Identificar e expulsar dispositivos de almacenamento</translation> <translation id="4108314971463891922">Seguir</translation> <translation id="4109135793348361820">Mover ventá a <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />)</translation> @@ -4107,6 +4104,7 @@ <translation id="4900392736118574277">A páxina de inicio cambiou a <ph name="URL" />.</translation> <translation id="490051679772058907"><ph name="REFRESH_RATE" /> Hz: liñas entrelazadas</translation> <translation id="4900652253009739885">Non se pode quitar o único interruptor que ten asignada a acción Seleccionar. Preme calquera tecla para <ph name="RESPONSE" />.</translation> +<translation id="4901154724271753917">Despregar as pestanas pechadas recentemente</translation> <translation id="4901309472892185668">Seleccionar estado do experimento <ph name="EXPERIMENT_NAME" />.</translation> <translation id="49027928311173603">A política descargada do servidor non é válida: <ph name="VALIDATION_ERROR" />.</translation> <translation id="4906490889887219338">Configurar ou xestionar sistemas de ficheiros compartidos en rede. <ph name="LINK_BEGIN" />Máis información<ph name="LINK_END" /></translation> @@ -5051,6 +5049,7 @@ <translation id="5860494867054883682">Actualizando o teu dispositivo na canle <ph name="CHANNEL_NAME" /> (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">Mostrar ferramentas do lapis óptico no estante</translation> <translation id="5862319196656206789">Configurar dispositivos conectados</translation> +<translation id="5862731021271217234">Activa a sincronización para sincronizar as pestanas dos demais dispositivos</translation> <translation id="5863445608433396414">Activar funcións de depuración</translation> <translation id="5864195618110239517">Usar conexión de pago por consumo</translation> <translation id="5864754048328252126">Acción de inactividade durante a carga</translation> @@ -5486,7 +5485,6 @@ <translation id="6291949900244949761">Preguntar cando un sitio web queira acceder aos dispositivos USB (recomendado)</translation> <translation id="6291953229176937411">&Mostrar en Finder</translation> <translation id="6292699686837272722">As pestanas redúcense a unha anchura media</translation> -<translation id="6294610283659775533">Podes enviar pestanas entre dispositivos nos que teñas a sesión iniciada coa mesma Conta de Google</translation> <translation id="6294759976468837022">Velocidade da exploración automática</translation> <translation id="6295158916970320988">Todos os sitios</translation> <translation id="6295855836753816081">Gardando...</translation> @@ -6992,6 +6990,7 @@ <translation id="7768526219335215384"><ph name="ORIGIN" /> poderá ver os ficheiros de <ph name="FOLDERNAME" /></translation> <translation id="7768770796815395237">Cambiar</translation> <translation id="7768784765476638775">Escoitar selección</translation> +<translation id="7769748505895274502">Contraer as pestanas pechadas recentemente</translation> <translation id="7770406201819593386">Executar probas de diagnóstico de Chrome OS Flex.</translation> <translation id="7770450735129978837">Clic co botón dereito do rato</translation> <translation id="7770612696274572992">Copiouse a imaxe desde outro dispositivo</translation>
diff --git a/chrome/app/resources/generated_resources_gu.xtb b/chrome/app/resources/generated_resources_gu.xtb index ed3c436..5d2f321 100644 --- a/chrome/app/resources/generated_resources_gu.xtb +++ b/chrome/app/resources/generated_resources_gu.xtb
@@ -333,7 +333,6 @@ <translation id="1319983966058170660"><ph name="SUBPAGE_TITLE" /> સબપેજનું પાછળ જવા માટેનું બટન</translation> <translation id="1322046419516468189">સાચવેલા પાસવર્ડ તમારા <ph name="SAVED_PASSWORDS_STORE" />માં જુઓ અને મેનેજ કરો</translation> <translation id="1324106254079708331">લક્ષિત હુમલાના જોખમમાં હોય એવી કોઈપણ વ્યક્તિના વ્યક્તિગત Google એકાઉન્ટનું સંરક્ષણ કરે છે</translation> -<translation id="1326317727527857210">તમારા અન્ય ઉપકરણો પરથી તમારા ટૅબ્સ મેળવવા માટે, Chrome માં સાઇન ઇન કરો.</translation> <translation id="1327272175893960498">Kerberosની ટિકિટ</translation> <translation id="1327495825214193325">ADB ડિબગીંગ ચાલુ કરવા માટે, આ <ph name="DEVICE_TYPE" />ને ફરી શરૂ કરવું જરૂરી છે. તેને બંધ કરવા ફેક્ટરી સેટિંગ પર રીસેટ કરવું જરૂરી છે.</translation> <translation id="1327794256477341646">તમારા સ્થાનની આવશ્યકતા હોય તેવી સુવિધાઓ કાર્ય નહીં કરે</translation> @@ -2424,7 +2423,6 @@ <translation id="3280243678470289153">Chromeમાં રહો</translation> <translation id="3281892622610078515">ક્વૉરન્ટીન કરવા માટેની ફાઇલો અને પ્રોગ્રામ:</translation> <translation id="3282210178675490297">ટૅબને <ph name="APP_NAME" />માં શેર કરી રહ્યાં છીએ</translation> -<translation id="3282568296779691940">Chrome માં સાઇન ઇન કરો</translation> <translation id="3285322247471302225">નવું &ટૅબ</translation> <translation id="328571385944182268">તમારા પાસવર્ડ સાચવીએ?</translation> <translation id="3288047731229977326">ડેવલપર મોડમાં ચાલી રહેલા એક્સટેન્શન તમારા કમ્પ્યુટરને નુકસાન પહોંચાડી શકે છે. જો તમે ડેવલપર નથી, તો તમે સુરક્ષિત રહેવા માટે ડેવલપર મોડમાં ચાલી રહેલા આ એક્સ્ટેન્શનને બંધ કરવા જોઈએ.</translation> @@ -3298,7 +3296,6 @@ <translation id="4101352914005291489">છુપાયેલા SSID</translation> <translation id="4102469565336584882">અમાન્ય કોડ. તમારી એન્ટ્રી આ ફૉર્મેટમાં હોવી જોઈએ LPA:1$<smdp ઍડ્રેસ>$<સક્રિયકરણનો કોડ></translation> <translation id="4102906002417106771">પાવરવોશ માટે ફરી શરૂ કરો</translation> -<translation id="4104163789986725820">નિ&કાસ કરો...</translation> <translation id="4107048419833779140">સ્ટોરેજ ઉપકરણોને ઓળખો અને તેને બહાર કાઢો</translation> <translation id="4108314971463891922">ફૉલો કરો</translation> <translation id="4109135793348361820"><ph name="USER_NAME" /> (<ph name="USER_EMAIL" />) પર વિંડો ખસેડો</translation> @@ -4107,6 +4104,7 @@ <translation id="4900392736118574277">તમારું શરૂઆતનું પેજ, <ph name="URL" /> પર બદલવામાં આવ્યું હતું.</translation> <translation id="490051679772058907"><ph name="REFRESH_RATE" /> Hz - ઇન્ટરલેસ કરેલો</translation> <translation id="4900652253009739885">“પસંદ કરો”ના એકમાત્ર સોંપણી કરવામાં આવેલા સ્વિચને કાઢી નાખી શકાતું નથી. <ph name="RESPONSE" /> માટે કોઈપણ કી દબાવો.</translation> +<translation id="4901154724271753917">તાજેતરમાં બંધ કરવામાં આવેલી સૂચિ મોટી કરો</translation> <translation id="4901309472892185668"><ph name="EXPERIMENT_NAME" /> પ્રયોગ માટે, પ્રયોગનું સ્ટેટસ પસંદ કરો.</translation> <translation id="49027928311173603">સર્વરમાંથી ડાઉનલોડ કરેલી પૉલિસી અમાન્ય છે: <ph name="VALIDATION_ERROR" />.</translation> <translation id="4906490889887219338">નેટવર્ક ફાઇલ શેર સેટઅપ કરો અથવા મેનેજ કરો. <ph name="LINK_BEGIN" />વધુ જાણો<ph name="LINK_END" /></translation> @@ -5054,6 +5052,7 @@ <translation id="5860494867054883682">તમારા ઉપકરણને <ph name="CHANNEL_NAME" /> ચેનલ પર અપડેટ કરી રહ્યાં છે (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">શેલ્ફમાં સ્ટાઇલસનાં સાધનો બતાવો</translation> <translation id="5862319196656206789">કનેક્ટ કરેલાં ડિવાઇસ સેટઅપ કરો</translation> +<translation id="5862731021271217234">તમારા અન્ય ઉપકરણો પરથી તમારા ટૅબ મેળવવા માટે, સિંક કરવાનું ચાલુ કરો</translation> <translation id="5863445608433396414">ડિબગીંગ સુવિધાઓ ચાલુ કરો</translation> <translation id="5864195618110239517">મીટર્ડ કનેક્શનનો ઉપયોગ કરો</translation> <translation id="5864754048328252126">ચાર્જિંગ દરમ્યાનની નિષ્ક્રિય ક્રિયા</translation> @@ -5491,7 +5490,6 @@ <translation id="6291949900244949761">જ્યારે કોઈ સાઇટ USB ઉપકરણોને ઍક્સેસ કરવા માગે ત્યારે પૂછો (સુઝાવ આપેલ)</translation> <translation id="6291953229176937411">ફાઇન્ડર માં &બતાવો</translation> <translation id="6292699686837272722">ટૅબ મધ્યમ પહોળાઈ જેટલી સંકોચાય છે</translation> -<translation id="6294610283659775533">તમે સમાન Google એકાઉન્ટ વડે સાઇન ઇન કરેલા ડિવાઇસ વચ્ચે ટૅબ મોકલી શકો છો</translation> <translation id="6294759976468837022">ઑટો-સ્કૅનની ઝડપ</translation> <translation id="6295158916970320988">બધી સાઇટ</translation> <translation id="6295855836753816081">સાચવી રહ્યું છે...</translation> @@ -6999,6 +6997,7 @@ <translation id="7768526219335215384"><ph name="ORIGIN" /> <ph name="FOLDERNAME" />માં રહેલી ફાઇલોને જોઈ શકશે</translation> <translation id="7768770796815395237">બદલો</translation> <translation id="7768784765476638775">સાંભળવા માટે પસંદ કરો</translation> +<translation id="7769748505895274502">તાજેતરમાં બંધ કરવામાં આવેલી સૂચિ નાની કરો</translation> <translation id="7770406201819593386">ChromeOS Flex ડાયગ્નોસ્ટિક પરીક્ષણો ચલાવો.</translation> <translation id="7770450735129978837">માઉસનું જમણું ક્લિક</translation> <translation id="7770612696274572992">અન્ય ડિવાઇસમાંથી કૉપિ કરવામાં આવેલી છબી</translation>
diff --git a/chrome/app/resources/generated_resources_hi.xtb b/chrome/app/resources/generated_resources_hi.xtb index 757b49c..ca3e817 100644 --- a/chrome/app/resources/generated_resources_hi.xtb +++ b/chrome/app/resources/generated_resources_hi.xtb
@@ -335,7 +335,6 @@ <translation id="1319983966058170660"><ph name="SUBPAGE_TITLE" /> सबपेज पर वापस जाने का बटन</translation> <translation id="1322046419516468189">अपने <ph name="SAVED_PASSWORDS_STORE" /> में सेव किए गए पासवर्ड देखें और उन्हें प्रबंधित करें</translation> <translation id="1324106254079708331">ऐसे व्यक्तिगत Google खातों की सुरक्षा करता है जिन पर निशाना बनाकर हमला करने का जोखिम होता है</translation> -<translation id="1326317727527857210">अपने दूसरे डिवाइस से अपने टैब पाने के लिए, Chrome में साइन इन करें.</translation> <translation id="1327272175893960498">Kerberos के टिकट</translation> <translation id="1327495825214193325">ADB डीबग करने की सुविधा चालू करने के लिए, इस <ph name="DEVICE_TYPE" /> को रीस्टार्ट करना ज़रूरी है. इस सुविधा को बंद करने के लिए, डिवाइस को फ़ैक्ट्री सेटिंग पर रीसेट करना ज़रूरी है.</translation> <translation id="1327794256477341646">जिन सुविधाओं के लिए जगह की जानकारी की ज़रूरत होती है वे काम नहीं करेंगी</translation> @@ -2441,7 +2440,6 @@ <translation id="3280243678470289153">Chrome में बने रहें</translation> <translation id="3281892622610078515">क्वॉरंटीन की जाने वाली फ़ाइलें और प्रोग्राम:</translation> <translation id="3282210178675490297"><ph name="APP_NAME" /> के साथ टैब शेयर किया जा रहा है</translation> -<translation id="3282568296779691940">Chrome में साइन इन करें</translation> <translation id="3285322247471302225">नया &टैब</translation> <translation id="328571385944182268">क्या आप पासवर्ड सेव करना चाहते हैं?</translation> <translation id="3288047731229977326">डेवलपर मोड में चलने वाले एक्सटेंशन आपके कंप्यूटर को नुकसान पहुंचा सकते हैं. अगर आप डेवलपर नहीं हैं तो, सुरक्षित रहने के लिए आपको डेवलपर मोड मे चलने वाले इन एक्सटेंशन को बंद कर देना चाहिए.</translation> @@ -3314,7 +3312,6 @@ <translation id="4101352914005291489">छिपा हुआ SSID</translation> <translation id="4102469565336584882">कोड अमान्य है. डाला गया कोड LPA:1$<smdp address>$<activation code> के फ़ॉर्मैट में होना चाहिए</translation> <translation id="4102906002417106771">पावरवॉश के लिए रीस्टार्ट करें</translation> -<translation id="4104163789986725820">नि&र्यात करें...</translation> <translation id="4107048419833779140">मेमोरी डिवाइसों की पहचान करें और उन्हें निकालें</translation> <translation id="4108314971463891922">फ़ॉलो करें</translation> <translation id="4109135793348361820">विंडो को <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />) पर ले जाएं</translation> @@ -4124,6 +4121,7 @@ <translation id="4900392736118574277">आपका स्टार्टअप पेज<ph name="URL" /> में बदल दिया गया था.</translation> <translation id="490051679772058907"><ph name="REFRESH_RATE" /> हर्ट्ज़ - साथ में स्कैन किया गया</translation> <translation id="4900652253009739885">“चुनें” कार्रवाई के लिए असाइन किए गए एकमात्र स्विच को नहीं हटाया जा सकता. <ph name="RESPONSE" /> के लिए, कोई कुंजी दबाएं.</translation> +<translation id="4901154724271753917">हाल ही में बंद किए गए टैब की सूची को बड़ा करें</translation> <translation id="4901309472892185668"><ph name="EXPERIMENT_NAME" /> एक्सपेरिमेंट के लिए, एक्सपेरिमेंट की स्थिति चुनें.</translation> <translation id="49027928311173603">सर्वर से डाउनलोड की गई नीति अमान्य है: <ph name="VALIDATION_ERROR" />.</translation> <translation id="4906490889887219338">नेटवर्क फ़ाइल शेयर सेट अप या प्रबंधित करें. <ph name="LINK_BEGIN" />ज़्यादा जानें<ph name="LINK_END" /></translation> @@ -5070,6 +5068,7 @@ <translation id="5860494867054883682">आपका डिवाइस <ph name="CHANNEL_NAME" /> चैनल में अपडेट हो रहा है (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">शेल्फ़ में स्टाइस टूल दिखाएं</translation> <translation id="5862319196656206789">कनेक्ट किए गए डिवाइस सेट अप करें</translation> +<translation id="5862731021271217234">अपने दूसरे डिवाइस से अपने टैब पाने के लिए, 'सिंक करें' को चालू करें</translation> <translation id="5863445608433396414">डीबग करने वाली सुविधाएं चालू करें</translation> <translation id="5864195618110239517">सीमित डेटा वाला कनेक्शन इस्तेमाल करें</translation> <translation id="5864754048328252126">चार्ज करते समय डिवाइस पर काम नहीं हो रहा है</translation> @@ -5506,7 +5505,6 @@ <translation id="6291949900244949761">जब कोई साइट USB डिवाइस एक्सेस करना चाहे, तो इसके लिए पूछें (सुझाया गया)</translation> <translation id="6291953229176937411">खोजकर्ता में &दिखाएं</translation> <translation id="6292699686837272722">टैब की चौड़ाई मध्यम हो जाती है</translation> -<translation id="6294610283659775533">आप उन डिवाइसों के बीच टैब शेयर कर सकते हैं जिन पर एक ही Google खाते से साइन इन किया हो</translation> <translation id="6294759976468837022">अपने-आप स्कैन होने की रफ़्तार</translation> <translation id="6295158916970320988">सभी साइटें</translation> <translation id="6295855836753816081">सहेज रहा है...</translation> @@ -7014,6 +7012,7 @@ <translation id="7768526219335215384"><ph name="ORIGIN" />, <ph name="FOLDERNAME" /> के अंदर फ़ाइलें देख पाएंगे</translation> <translation id="7768770796815395237">बदलें</translation> <translation id="7768784765476638775">चुनें और सुनें</translation> +<translation id="7769748505895274502">हाल ही में बंद किए गए टैब की सूची को छोटा करें</translation> <translation id="7770406201819593386">ChromeOS Flex पर डाइग्नोस्टिक्स टेस्ट चलाएं.</translation> <translation id="7770450735129978837">माउस का दायां क्लिक</translation> <translation id="7770612696274572992">दूसरे डिवाइस से इमेज कॉपी की गई</translation>
diff --git a/chrome/app/resources/generated_resources_hr.xtb b/chrome/app/resources/generated_resources_hr.xtb index 126f0bf..8282bf4 100644 --- a/chrome/app/resources/generated_resources_hr.xtb +++ b/chrome/app/resources/generated_resources_hr.xtb
@@ -334,7 +334,6 @@ <translation id="1319983966058170660">Gumb za natrag na podstranici <ph name="SUBPAGE_TITLE" /></translation> <translation id="1322046419516468189">Spremljene zaporke možete pregledati i upravljati njima ovdje: <ph name="SAVED_PASSWORDS_STORE" /></translation> <translation id="1324106254079708331">Štiti osobne Google račune bilo koje osobe kojoj prijete ciljani napadi</translation> -<translation id="1326317727527857210">Da bi se prikazale kartice s vaših ostalih uređaja, prijavite se na Chrome.</translation> <translation id="1327272175893960498">Kerberosovi tiketi</translation> <translation id="1327495825214193325">Za omogućivanje ADB otklanjanja pogrešaka potrebno je ponovo pokrenuti uređaj <ph name="DEVICE_TYPE" />. Onemogućivanje zahtijeva vraćanje na tvorničke postavke.</translation> <translation id="1327794256477341646">Značajke kojima je potrebna vaša lokacija neće raditi</translation> @@ -2429,7 +2428,6 @@ <translation id="3280243678470289153">Ostani u Chromeu</translation> <translation id="3281892622610078515">Datoteke i programi za karantenu:</translation> <translation id="3282210178675490297">Jedna kartica dijeli se s aplikacijom <ph name="APP_NAME" /></translation> -<translation id="3282568296779691940">Prijavite se u Chrome</translation> <translation id="3285322247471302225">Nova &kartica</translation> <translation id="328571385944182268">Spremiti zaporke?</translation> <translation id="3288047731229977326">Proširenja pokrenuta u načinu rada razvojnog programera mogu naštetiti vašem računalu. Ako niste razvojni programer, trebali biste onemogućiti proširenja koja su pokrenuta u načinu rada razvojnog programera radi svoje zaštite.</translation> @@ -3304,7 +3302,6 @@ <translation id="4101352914005291489">Skriveni SSID</translation> <translation id="4102469565336584882">Kôd nije važeći. Unos treba biti u formatu LPA:1$<smdp address>$<activation code></translation> <translation id="4102906002417106771">Pokrenite ponovo da biste izvršili powerwash</translation> -<translation id="4104163789986725820">I&zvoz...</translation> <translation id="4107048419833779140">Prepoznaj i izbaci uređaje za pohranu</translation> <translation id="4108314971463891922">Prati</translation> <translation id="4109135793348361820">Premjesti prozor korisniku <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />)</translation> @@ -4114,6 +4111,7 @@ <translation id="4900392736118574277">Vaša je polazna stranica promijenjena u <ph name="URL" />.</translation> <translation id="490051679772058907"><ph name="REFRESH_RATE" /> Hz – isprepleteno</translation> <translation id="4900652253009739885">Nije moguće ukloniti jedini prekidač dodijeljen radnji Odaberi. Pritisnite bilo koju tipku za <ph name="RESPONSE" />.</translation> +<translation id="4901154724271753917">Proširivanje nedavno zatvorenog</translation> <translation id="4901309472892185668">Odaberite stanje za eksperiment <ph name="EXPERIMENT_NAME" />.</translation> <translation id="49027928311173603">Pravilo preuzeto s poslužitelja nije važeće: <ph name="VALIDATION_ERROR" />.</translation> <translation id="4906490889887219338">Postavite mrežna dijeljenja datoteka ili upravljajte njima. <ph name="LINK_BEGIN" />Saznajte više<ph name="LINK_END" /></translation> @@ -5058,6 +5056,7 @@ <translation id="5860494867054883682">Ažuriranje uređaja na <ph name="CHANNEL_NAME" /> kanal (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">Prikaži alate pisaljke na polici</translation> <translation id="5862319196656206789">Postavljanje povezanih uređaja</translation> +<translation id="5862731021271217234">Da bi se prikazale kartice s vaših ostalih uređaja, uključite sinkronizaciju</translation> <translation id="5863445608433396414">Omogući značajke za otklanjanje pogrešaka</translation> <translation id="5864195618110239517">Koristi vezu s ograničenim prometom</translation> <translation id="5864754048328252126">Radnja tijekom napajanja</translation> @@ -5493,7 +5492,6 @@ <translation id="6291949900244949761">Kada web-lokacija želi pristupiti USB uređajima, prikaži upit (preporučeno)</translation> <translation id="6291953229176937411">&Prikaži u programu Finder</translation> <translation id="6292699686837272722">Kartice se smanjuju na srednju širinu</translation> -<translation id="6294610283659775533">Možete slati kartice među uređajima prijavljenima istim Google računom</translation> <translation id="6294759976468837022">Brzina automatskog traženja</translation> <translation id="6295158916970320988">Sve web-lokacije</translation> <translation id="6295855836753816081">Spremanje...</translation> @@ -5921,6 +5919,7 @@ <translation id="6709133671862442373">Vijesti</translation> <translation id="6709357832553498500">Poveži pomoću proširenja <ph name="EXTENSIONNAME" /></translation> <translation id="6710213216561001401">Prethodno</translation> +<translation id="6710394144992407503">Provjerite ima li pravopisnih pogrešaka dok pišete tekst na web-stranicama</translation> <translation id="6711146141291425900">Povežite <ph name="WEB_DRIVE" /> račun za preuzimanja</translation> <translation id="6712943853047024245">Već ste spremili zaporku uz to korisničko ime za <ph name="WEBSITE" /></translation> <translation id="6713233729292711163">Dodaj poslovni profil</translation> @@ -6542,6 +6541,7 @@ <translation id="7340757554212515731">Automatski Googleu šalje izvješća o padu programa kao i podatke o upotrebi i dijagnostici</translation> <translation id="7341834142292923918">Želi pristup ovoj web-lokaciji</translation> <translation id="7343372807593926528">Prije slanja povratnih informacija opišite problem.</translation> +<translation id="7344585835349671209">Upravljanje HTTPS/SSL certifikatima na uređaju</translation> <translation id="7345706641791090287">Potvrdite zaporku</translation> <translation id="7346909386216857016">Dobro, shvaćam</translation> <translation id="7347452120014970266">Izbrisat će se svi podaci i kolačići koje je spremila web-lokacija <ph name="ORIGIN_NAME" /> i njezine instalirane aplikacije</translation> @@ -6671,6 +6671,7 @@ <translation id="7460045493116006516">Trenutačna instalirana tema</translation> <translation id="7461924472993315131">Prikvači</translation> <translation id="746216226901520237">Sljedeći će put vaš telefon otključati vaš uređaj <ph name="DEVICE_TYPE" />. Smart Lock možete isključiti u Postavkama.</translation> +<translation id="7464153996453281700">Komponenta je već ažurirana</translation> <translation id="7464637891177137294">Spremite je na svojem Google računu, <ph name="ACCOUNT" /></translation> <translation id="7465522323587461835">{NUM_OPEN_TABS,plural, =1{# otvorena kartica, pritisnite da biste uključili ili isključili vrpcu kartica}one{# otvorena kartica, pritisnite da biste uključili ili isključili vrpcu kartica}few{# otvorene kartice, pritisnite da biste uključili ili isključili vrpcu kartica}other{# otvorenih kartica, pritisnite da biste uključili ili isključili vrpcu kartica}}</translation> <translation id="7465635034594602553">Nešto nije u redu. Pričekajte nekoliko minuta, a zatim ponovo pokrenite <ph name="APP_NAME" />.</translation> @@ -7003,6 +7004,7 @@ <translation id="7768526219335215384"><ph name="ORIGIN" /> će moći pregledavati datoteke u mapi <ph name="FOLDERNAME" /></translation> <translation id="7768770796815395237">Promijenite</translation> <translation id="7768784765476638775">Odabir za govor</translation> +<translation id="7769748505895274502">Sažimanje nedavno zatvorenog</translation> <translation id="7770406201819593386">Pokreni dijagnostičke testove za ChromeOS Flex.</translation> <translation id="7770450735129978837">Desni klik mišem</translation> <translation id="7770612696274572992">Slika kopirana s drugog uređaja</translation> @@ -7178,6 +7180,7 @@ <translation id="793531125873261495">Došlo je do pogreške prilikom preuzimanja virtualnog računala. Pokušajte ponovo.</translation> <translation id="7935451262452051102">Dovršeno: <ph name="PERCENT" />%</translation> <translation id="7939062555109487992">Napredne opcije</translation> +<translation id="7939328347457537652">Upravljanje certifikatima uređaja</translation> <translation id="7939412583708276221">Svejedno zadrži</translation> <translation id="7942349550061667556">Crvena</translation> <translation id="7943368935008348579">Preuzmite PDF-ove</translation>
diff --git a/chrome/app/resources/generated_resources_hu.xtb b/chrome/app/resources/generated_resources_hu.xtb index a69faac4..cf12bb3 100644 --- a/chrome/app/resources/generated_resources_hu.xtb +++ b/chrome/app/resources/generated_resources_hu.xtb
@@ -334,7 +334,6 @@ <translation id="1319983966058170660"><ph name="SUBPAGE_TITLE" /> aloldal vissza gombja</translation> <translation id="1322046419516468189">A mentett jelszavakat itt láthatja és kezelheti: <ph name="SAVED_PASSWORDS_STORE" /></translation> <translation id="1324106254079708331">Segíti a célzott támadások kockázatának kitett személyek személyes Google-fiókjának védelmét</translation> -<translation id="1326317727527857210">Ha a többi eszközéről is szeretné elérni a lapjait, jelentkezzen be a Chrome-ba.</translation> <translation id="1327272175893960498">Kerberos-jegyek</translation> <translation id="1327495825214193325">Az ADB-hibakeresés engedélyezéséhez újra kell indítani ezt a(z) <ph name="DEVICE_TYPE" /> eszközt. A letiltásához vissza kell állítani az eszköz gyári beállításait.</translation> <translation id="1327794256477341646">A helyadatokat igénylő funkciók nem működnek</translation> @@ -2439,7 +2438,6 @@ <translation id="3280243678470289153">A Chrome használatának folytatása</translation> <translation id="3281892622610078515">Karanténba helyezendő fájlok és programok:</translation> <translation id="3282210178675490297">Lap megosztása a következővel: <ph name="APP_NAME" /></translation> -<translation id="3282568296779691940">Bejelentkezés a Chrome-ba</translation> <translation id="3285322247471302225">Új lap</translation> <translation id="328571385944182268">Szeretné menteni a jelszavait?</translation> <translation id="3288047731229977326">A fejlesztői módban futó bővítmények kárt okozhatnak számítógépén. Ha Ön nem fejlesztő, akkor a biztonság kedvéért kapcsolja ki a fejlesztői módban futó bővítményeket.</translation> @@ -3312,7 +3310,6 @@ <translation id="4101352914005291489">Rejtett SSID</translation> <translation id="4102469565336584882">Érvénytelen kód. A következő formátumban kell megadni: LPA:1$<smdp-cím>$<aktivációs kód></translation> <translation id="4102906002417106771">Újraindítás a powerwash megkezdéséhez</translation> -<translation id="4104163789986725820">E&xportálás...</translation> <translation id="4107048419833779140">Tárolóeszközök azonosítása és kiadása</translation> <translation id="4108314971463891922">Követés</translation> <translation id="4109135793348361820">Az ablak áthelyezése <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />) asztalára</translation> @@ -5071,6 +5068,7 @@ <translation id="5860494867054883682">Eszköz frissítése a(z) <ph name="CHANNEL_NAME" /> csatornára (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">Érintőceruza-eszközök megjelenítése a polcon</translation> <translation id="5862319196656206789">Csatlakoztatott eszközök beállítása</translation> +<translation id="5862731021271217234">Ha a többi eszközén lévő lapjait is szeretné elérni, kapcsolja be a szinkronizálást</translation> <translation id="5863445608433396414">Hibakeresési funkciók bekapcsolása</translation> <translation id="5864195618110239517">Forgalomkorlátos kapcsolat használata</translation> <translation id="5864754048328252126">Tétlenségi művelet töltés közben</translation> @@ -5507,7 +5505,6 @@ <translation id="6291949900244949761">Kérdezzen rá, ha valamelyik webhely hozzá szeretne férni az USB-eszközökhöz (ajánlott)</translation> <translation id="6291953229176937411">Me&gjelenítés a Finderben</translation> <translation id="6292699686837272722">A lapok közepes szélességre zsugorodnak</translation> -<translation id="6294610283659775533">Átküldheti a lapokat ugyanazzal a Google-fiókkal bejelentkezett eszközei között</translation> <translation id="6294759976468837022">Automatikus keresés sebessége</translation> <translation id="6295158916970320988">Az összes webhely</translation> <translation id="6295855836753816081">Mentés…</translation> @@ -5931,6 +5928,7 @@ <translation id="6709133671862442373">Hírek</translation> <translation id="6709357832553498500">Csatlakozás a következővel: <ph name="EXTENSIONNAME" /></translation> <translation id="6710213216561001401">Előző</translation> +<translation id="6710394144992407503">Helyesírási hibák keresése szöveg weboldalakon való beírásakor</translation> <translation id="6711146141291425900">A fiók (<ph name="WEB_DRIVE" />) összekapcsolása letöltésekhez</translation> <translation id="6712943853047024245">Már mentett jelszót ezzel a felhasználónévvel a következőhöz: <ph name="WEBSITE" /></translation> <translation id="6713233729292711163">Munkaprofil hozzáadása</translation> @@ -6552,6 +6550,7 @@ <translation id="7340757554212515731">A hibajelentések, valamint a diagnosztikai és használati adatok automatikus elküldése a Google-nak</translation> <translation id="7341834142292923918">Hozzáférést kér ehhez a webhelyhez</translation> <translation id="7343372807593926528">Visszajelzés küldése előtt ismertesse a problémát.</translation> +<translation id="7344585835349671209">Az eszközön lévő HTTPS-/SSL-tanúsítványok kezelése</translation> <translation id="7345706641791090287">Erősítse meg a jelszót</translation> <translation id="7346909386216857016">Rendben, értem</translation> <translation id="7347452120014970266">Ezzel törli a(z) <ph name="ORIGIN_NAME" /> és a telepített alkalmazásai által tárolt összes adatot és cookie-t</translation> @@ -6681,6 +6680,7 @@ <translation id="7460045493116006516">Jelenleg telepített téma</translation> <translation id="7461924472993315131">Rögzítés</translation> <translation id="746216226901520237">Legközelebb a telefonjával oldhatja fel <ph name="DEVICE_TYPE" /> eszköze lezárását. A Smart Lock funkciót a Beállításokban kapcsolhatja ki.</translation> +<translation id="7464153996453281700">Az összetevő már naprakész</translation> <translation id="7464637891177137294">Elmentheti a Google-fiókjába (<ph name="ACCOUNT" />)</translation> <translation id="7465522323587461835">{NUM_OPEN_TABS,plural, =1{# megnyitott lap, nyomja meg a lapsor be-/kikapcsolásához}other{# megnyitott lap, nyomja meg a lapsor be-/kikapcsolásához}}</translation> <translation id="7465635034594602553">Hiba történt. Várjon néhány percet, majd próbálja meg újra futtatni a(z) <ph name="APP_NAME" /> alkalmazást.</translation> @@ -7189,6 +7189,7 @@ <translation id="793531125873261495">Nem sikerült letölteni a virtuális gépet. Próbálja újra.</translation> <translation id="7935451262452051102"><ph name="PERCENT" />% kész</translation> <translation id="7939062555109487992">Haladó beállítások</translation> +<translation id="7939328347457537652">Eszköztanúsítványok kezelése</translation> <translation id="7939412583708276221">Megtartás</translation> <translation id="7942349550061667556">Piros</translation> <translation id="7943368935008348579">PDF-ek letöltése</translation>
diff --git a/chrome/app/resources/generated_resources_hy.xtb b/chrome/app/resources/generated_resources_hy.xtb index be88dda..f938b3d7 100644 --- a/chrome/app/resources/generated_resources_hy.xtb +++ b/chrome/app/resources/generated_resources_hy.xtb
@@ -334,7 +334,6 @@ <translation id="1319983966058170660"><ph name="SUBPAGE_TITLE" /> ենթաէջի «Հետ» կոճակ</translation> <translation id="1322046419516468189">Դիտեք և կառավարեք պահված գաղտնաբառերը ձեր Google հաշվում: Անցեք <ph name="SAVED_PASSWORDS_STORE" />:</translation> <translation id="1324106254079708331">Անձնական Google հաշիվների պաշտպանություն նրանց համար, ովքեր թիրախավորված հարձակման վտանգի տակ են</translation> -<translation id="1326317727527857210">Ձեր մյուս սարքերում եղած ներդիրներն օգտագործելու համար մուտք գործեք Chrome:</translation> <translation id="1327272175893960498">Kerberos տոմսեր</translation> <translation id="1327495825214193325">ADB վրիպազերծումը միացնելու համար վերագործարկեք <ph name="DEVICE_TYPE" /> սարքը։ Դրա համար անհրաժեշտ է վերականգնել սարքի գործարանային կարգավորումները։</translation> <translation id="1327794256477341646">Գործառույթները, որոնց համար պահանջվում է տեղորոշում, չեն աշխատի</translation> @@ -2427,7 +2426,6 @@ <translation id="3280243678470289153">Շարունակել Chrome-ում</translation> <translation id="3281892622610078515">Հետևյալ ֆայլերն ու ծրագրերը կմեկուսացվեն՝</translation> <translation id="3282210178675490297">Ներդիրն ուղարկվում է <ph name="APP_NAME" /> հավելվածին</translation> -<translation id="3282568296779691940">Մուտք գործել Chrome</translation> <translation id="3285322247471302225">Նոր &ներդիր</translation> <translation id="328571385944182268">Պահե՞լ ձեր գաղտնաբառերը</translation> <translation id="3288047731229977326">Մշակողի ռեժիմում գործարկվող ընդլայնումները կարող են վնասել ձեր համակարգիչը: Եթե դուք մշակող չեք, ձեր ապահովության համար խորհուրդ ենք տալիս անջատել այդ ընդլայնումները:</translation> @@ -3300,7 +3298,6 @@ <translation id="4101352914005291489">Թաքցված SSID</translation> <translation id="4102469565336584882">Կոդն անվավեր է։ Մուտքագրումը պետք է լինի LPA ձևաչափով՝ 1$<smdp address>$<activation code></translation> <translation id="4102906002417106771">Վերագործարկել՝ Powerwash-ը գործարկելու համար</translation> -<translation id="4104163789986725820">Ար&տահանել…</translation> <translation id="4107048419833779140">Գտնել և անջատել հիշասարքերը</translation> <translation id="4108314971463891922">Հետևել</translation> <translation id="4109135793348361820">Տեղափոխել պատուհանը <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />)</translation> @@ -4109,6 +4106,7 @@ <translation id="4900392736118574277">Մեկնարկի էջը փոխվել է: Նոր էջն է՝ <ph name="URL" />:</translation> <translation id="490051679772058907"><ph name="REFRESH_RATE" /> Հց, միահյուսված</translation> <translation id="4900652253009739885">Հնարավոր չէ չեղարկել միակ փոխանջատիչի նշանակումը «Ընտրել» գործողության համար։ Սեղմեք որևէ ստեղն՝ <ph name="RESPONSE" /> համար։</translation> +<translation id="4901154724271753917">Ծավալել վերջերս փակվածները</translation> <translation id="4901309472892185668">Ընտրեք «<ph name="EXPERIMENT_NAME" />» փորձարկման կարգավիճակը։</translation> <translation id="49027928311173603">Սերվերից ներբեռնված քաղաքականությունն անվավեր է՝ <ph name="VALIDATION_ERROR" />:</translation> <translation id="4906490889887219338">Կարգավորել կամ կառավարել ցանցային պահոցը <ph name="LINK_BEGIN" />Իմանալ ավելին<ph name="LINK_END" /></translation> @@ -5055,6 +5053,7 @@ <translation id="5860494867054883682">Ձեր սարքն անցնում է <ph name="CHANNEL_NAME" /> վարկածին (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">Ցուցադրել ստիլուսի գործիքները դարակում</translation> <translation id="5862319196656206789">Կարգավորել միացված սարքերը</translation> +<translation id="5862731021271217234">Ձեր մյուս սարքերում եղած ներդիրներն օգտագործելու համար միացրեք համաժամացումը</translation> <translation id="5863445608433396414">Միացնել վրիպազերծման գործառույթները</translation> <translation id="5864195618110239517">Օգտագործել վճարովի թրաֆիկով կապը</translation> <translation id="5864754048328252126">Անգործուն ռեժիմի միացում լիցքավորման ընթացքում</translation> @@ -5490,7 +5489,6 @@ <translation id="6291949900244949761">Հարցնել, երբ որևէ կայք ուզում է օգտագործել USB սարքեր (խորհուրդ է տրվում)</translation> <translation id="6291953229176937411">&Ցույց տալ Finder-ում</translation> <translation id="6292699686837272722">Ներդիրները փոքրացվում են չորս անգամ</translation> -<translation id="6294610283659775533">Դուք կարող եք ուղարկել ներդիրները մի սարքից մյուսը, եթե դրանցում մտել եք հաշիվ միևնույն Google հաշվով</translation> <translation id="6294759976468837022">Ավտոմատ սկանավորման արագությունը</translation> <translation id="6295158916970320988">Բոլոր կայքերը</translation> <translation id="6295855836753816081">Պահում...</translation> @@ -6998,6 +6996,7 @@ <translation id="7768526219335215384"><ph name="ORIGIN" /> կայքը կկարողանա դիտել «<ph name="FOLDERNAME" />» պանակի ֆայլերը</translation> <translation id="7768770796815395237">Փոխել</translation> <translation id="7768784765476638775">Ընտրեք և լսեք</translation> +<translation id="7769748505895274502">Ծալել վերջերս փակվածները</translation> <translation id="7770406201819593386">Գործարկել ChromeOS Flex-ի դիագնոստիկ թեստեր</translation> <translation id="7770450735129978837">Մկնիկի աջ ստեղնի սեղմում</translation> <translation id="7770612696274572992">Պատկերը պատճենվեց այլ սարքից</translation>
diff --git a/chrome/app/resources/generated_resources_id.xtb b/chrome/app/resources/generated_resources_id.xtb index b84cb071a..404dc287 100644 --- a/chrome/app/resources/generated_resources_id.xtb +++ b/chrome/app/resources/generated_resources_id.xtb
@@ -334,7 +334,6 @@ <translation id="1319983966058170660">tombol kembali subhalaman <ph name="SUBPAGE_TITLE" /></translation> <translation id="1322046419516468189">Lihat dan kelola sandi tersimpan di <ph name="SAVED_PASSWORDS_STORE" /></translation> <translation id="1324106254079708331">Mengamankan Akun Google pribadi siapa saja yang berisiko terkena serangan yang ditargetkan</translation> -<translation id="1326317727527857210">Untuk mengakses tab Anda dari perangkat lainnya, login ke Chrome.</translation> <translation id="1327272175893960498">Tiket Kerberos</translation> <translation id="1327495825214193325">Untuk mengaktifkan proses debug ADB, Anda perlu memulai ulang <ph name="DEVICE_TYPE" /> ini. Perlu melakukan reset ke setelan pabrik untuk menonaktifkannya.</translation> <translation id="1327794256477341646">Fitur yang memerlukan lokasi Anda tidak akan berfungsi</translation> @@ -2441,7 +2440,6 @@ <translation id="3280243678470289153">Tetap di Chrome</translation> <translation id="3281892622610078515">File dan program yang akan dikarantina:</translation> <translation id="3282210178675490297">Membagikan tab ke <ph name="APP_NAME" /></translation> -<translation id="3282568296779691940">Login ke Chrome</translation> <translation id="3285322247471302225">&Tab Baru</translation> <translation id="328571385944182268">Simpan sandi Anda?</translation> <translation id="3288047731229977326">Ekstensi yang berjalan dalam mode pengembang dapat membahayakan komputer Anda. Jika Anda bukan pengembang, Anda sebaiknya menonaktifkan ekstensi yang berjalan dalam mode pengembang ini agar tetap aman.</translation> @@ -3315,7 +3313,6 @@ <translation id="4101352914005291489">SSID tersembunyi</translation> <translation id="4102469565336584882">Kode tidak valid. Entri Anda harus memiliki format LPA:1$<alamat smdp>$<kode aktivasi></translation> <translation id="4102906002417106771">Mulai ulang untuk powerwash</translation> -<translation id="4104163789986725820">E&kspor...</translation> <translation id="4107048419833779140">Identifikasi dan keluarkan perangkat penyimpanan</translation> <translation id="4108314971463891922">Ikuti</translation> <translation id="4109135793348361820">Pindahkan jendela ke <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />)</translation> @@ -4125,6 +4122,7 @@ <translation id="4900392736118574277">Halaman awal diubah menjadi <ph name="URL" />.</translation> <translation id="490051679772058907"><ph name="REFRESH_RATE" /> Hz - saling bertaut</translation> <translation id="4900652253009739885">Tidak dapat menghapus satu-satunya tombol akses yang ditetapkan untuk “Pilih”. Tekan sembarang tombol untuk <ph name="RESPONSE" />.</translation> +<translation id="4901154724271753917">Luaskan yang baru saja ditutup</translation> <translation id="4901309472892185668">Pilih status eksperimen untuk eksperimen <ph name="EXPERIMENT_NAME" />.</translation> <translation id="49027928311173603">Kebijakan yang didownload dari server tidak valid: <ph name="VALIDATION_ERROR" />.</translation> <translation id="4906490889887219338">Siapkan atau kelola berbagi file jaringan. <ph name="LINK_BEGIN" />Pelajari lebih lanjut<ph name="LINK_END" /></translation> @@ -5071,6 +5069,7 @@ <translation id="5860494867054883682">Memperbarui perangkat ke saluran <ph name="CHANNEL_NAME" /> (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">Tampilkan alat stilus di rak</translation> <translation id="5862319196656206789">Siapkan perangkat yang terhubung</translation> +<translation id="5862731021271217234">Untuk membuka tab dari perangkat Anda yang lain, aktifkan sinkronisasi</translation> <translation id="5863445608433396414">Aktifkan fitur debug</translation> <translation id="5864195618110239517">Gunakan koneksi berbayar</translation> <translation id="5864754048328252126">Tidak ada aktivitas saat mengisi daya</translation> @@ -5507,7 +5506,6 @@ <translation id="6291949900244949761">Tanyakan saat situs ingin mengakses perangkat USB (direkomendasikan)</translation> <translation id="6291953229176937411">&Tampilkan di Penemu</translation> <translation id="6292699686837272722">Tab dikecilkan ke lebar sedang</translation> -<translation id="6294610283659775533">Anda dapat mengirim tab antar-perangkat yang login ke Akun Google yang sama</translation> <translation id="6294759976468837022">Kecepatan pemindaian otomatis</translation> <translation id="6295158916970320988">Semua situs</translation> <translation id="6295855836753816081">Menyimpan...</translation> @@ -7013,6 +7011,7 @@ <translation id="7768526219335215384"><ph name="ORIGIN" /> akan dapat melihat file di <ph name="FOLDERNAME" /></translation> <translation id="7768770796815395237">Ubah</translation> <translation id="7768784765476638775">Klik untuk diucapkan</translation> +<translation id="7769748505895274502">Ciutkan yang baru saja ditutup</translation> <translation id="7770406201819593386">Menjalankan pengujian diagnostik ChromeOS Flex.</translation> <translation id="7770450735129978837">Klik kanan mouse</translation> <translation id="7770612696274572992">Gambar disalin dari perangkat lain</translation>
diff --git a/chrome/app/resources/generated_resources_is.xtb b/chrome/app/resources/generated_resources_is.xtb index bc9fa4e..ff6a328 100644 --- a/chrome/app/resources/generated_resources_is.xtb +++ b/chrome/app/resources/generated_resources_is.xtb
@@ -335,7 +335,6 @@ <translation id="1319983966058170660">Bakkhnappur undirsíðu <ph name="SUBPAGE_TITLE" /></translation> <translation id="1322046419516468189">Þú getur skoðað og haft umsjón með vistuðum aðgangsorðum á <ph name="SAVED_PASSWORDS_STORE" /></translation> <translation id="1324106254079708331">Verndar Google reikninga einstaklinga þar sem hætta er á miðuðum árásum</translation> -<translation id="1326317727527857210">Skráðu þig inn í Chrome til að fá aðgang að flipunum þínum í öllum tækjum.</translation> <translation id="1327272175893960498">Kerberos-miðar</translation> <translation id="1327495825214193325">Til að kveikja á ADB-villuleit þarf að endurræsa þetta <ph name="DEVICE_TYPE" /> tæki. Ef slökkt er á henni þarf að núllstilla tækið.</translation> <translation id="1327794256477341646">Eiginleikar sem þurfa staðsetningu þína munu ekki virka</translation> @@ -362,6 +361,7 @@ <translation id="1347256498747320987">Setja upp uppfærslur og forrit. Með því að halda áfram samþykkirðu að þetta tæki geti einnig sjálfkrafa sótt og sett upp uppfærslur og forrit frá Google, símafyrirtækinu þínu og framleiðanda tækisins, mögulega með því að nota farsímagögn. Einhver þessara forrita kunna að bjóða upp á innkaup í forriti. <ph name="BEGIN_LINK1" />Frekari upplýsingar<ph name="END_LINK1" /></translation> <translation id="1347512539447549782">Linux-geymslurými</translation> <translation id="1347975661240122359">Uppfærsla hefst þegar rafhlaðan nær <ph name="BATTERY_LEVEL" />%.</translation> +<translation id="1348966090521113558">Aðgengisstillingar músar</translation> <translation id="1353275871123211385">Til að nota barnalæsingar á borð við samþykki forrita og takmörkun á skjátíma þarf barn að vera með Google reikning í umsjá foreldris. Hægt er að bæta skólareikningi við síðar fyrir verkfæri á borð við Google Classroom.</translation> <translation id="135389172849514421">Virkar án nettengingar</translation> <translation id="1353980523955420967">PPD-skráin finnst ekki. Gættu þess að Chromebook tölvan sé nettengd og reyndu aftur.</translation> @@ -1799,6 +1799,7 @@ <translation id="2653659639078652383">Senda</translation> <translation id="265390580714150011">Gildi reits</translation> <translation id="2654553774144920065">Prentbeiðni</translation> +<translation id="2657612187216250073">Aðgengisstillingar bendils</translation> <translation id="2658941648214598230">Sýna upprunalegt innihald?</translation> <translation id="2659381484350128933"><ph name="FOOTNOTE_POINTER" />Eiginleikar geta verið mismunandi eftir tækjum</translation> <translation id="2659971421398561408">Breyta diskstærð Crostini</translation> @@ -1962,6 +1963,7 @@ <translation id="2801954693771979815">Skjástærð</translation> <translation id="2802557211515765772">Engir prentarar sem er stjórnað.</translation> <translation id="2803313416453193357">Opna möppu</translation> +<translation id="2803719750464280163">Staðfestu að <ph name="PASSKEY" /> sé aðgangslykillinn sem birtist í Bluetooth-tækinu <ph name="DEVICE" />.</translation> <translation id="2804043232879091219">Ekki var hægt að opna hinn vafrann</translation> <translation id="2804667941345577550">Þú verður skráð(ur) út af þessu vefsvæði, þar á meðal opnum flipum</translation> <translation id="2804680522274557040">Slökkt á myndavél</translation> @@ -2438,7 +2440,6 @@ <translation id="3280243678470289153">Vera áfram í Chrome</translation> <translation id="3281892622610078515">Skrár og forrit sem á að setja í sóttkví:</translation> <translation id="3282210178675490297">Deilir flipa með <ph name="APP_NAME" /></translation> -<translation id="3282568296779691940">Skráðu þig inn á Chrome</translation> <translation id="3285322247471302225">Nýr flipi</translation> <translation id="328571385944182268">Vista aðgangsorðin þín?</translation> <translation id="3288047731229977326">Viðbætur sem keyra í forritarastillingu geta skaðað tölvuna þína. Ef þú ert ekki forritari ættirðu að gera þessar viðbætur sem keyra í forritarastillingu óvirkar til öryggis.</translation> @@ -2878,6 +2879,7 @@ <translation id="370649949373421643">Kveikja á Wi-Fi</translation> <translation id="370665806235115550">Hleður...</translation> <translation id="3707163604290651814">Skráð(ur) inn sem <ph name="NAME" /></translation> +<translation id="3708295717182051206">Skjátextar</translation> <translation id="3708684582558000260">Ekki leyfa vefsvæðum sem er búið að loka að ljúka við að senda eða móttaka gögn</translation> <translation id="3709244229496787112">Vafranum var lokað áður en niðurhalinu lauk.</translation> <translation id="371174301504454251">Til að gæta persónuverndar þinnar eyðum við vefsvæðum af listanum sem eru eldri en 4 vikna sjálfkrafa. Vefsvæði sem þú heimsækir aftur gæti birst aftur á listanum. Þú getur einnig fjarlægt vefsvæði ef þú vilt ekki að viðkomandi vefsvæði skilgreini áhugasvið þín.</translation> @@ -3311,7 +3313,6 @@ <translation id="4101352914005291489">SSID falin</translation> <translation id="4102469565336584882">Ógildur kóði. Færslan þín ætti að vera á sniðinu LPA:1$<smdp address>$<activation code></translation> <translation id="4102906002417106771">Endurræsa til að djúphreinsa</translation> -<translation id="4104163789986725820">Flytja út...</translation> <translation id="4107048419833779140">Bera kennsl á og aftengja geymslutæki</translation> <translation id="4108314971463891922">Fylgja</translation> <translation id="4109135793348361820">Færa glugga á <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />)</translation> @@ -3961,6 +3962,7 @@ <translation id="475088594373173692">Fyrsti notandi</translation> <translation id="4756378406049221019">Stöðva/endurhlaða</translation> <translation id="4756388243121344051">Ferill</translation> +<translation id="4756671452988984333">Texti með hljóði</translation> <translation id="4759202969060787081">Ekki opna</translation> <translation id="4759238208242260848">Niðurhal</translation> <translation id="4761104368405085019">Nota hljóðnemann</translation> @@ -5066,6 +5068,7 @@ <translation id="5860494867054883682">Uppfærir tækið í rásina <ph name="CHANNEL_NAME" /> (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">Sýna pennaverkfæri á hillu</translation> <translation id="5862319196656206789">Setja upp tengd tæki</translation> +<translation id="5862731021271217234">Kveiktu á samstillingu til að fá aðgang að flipunum þínum í öðrum tækjum</translation> <translation id="5863445608433396414">Virkja villuleitareiginleika</translation> <translation id="5864195618110239517">Nota mælda tengingu</translation> <translation id="5864754048328252126">Aðgerðaleysi meðan á hleðslu stendur</translation> @@ -5502,7 +5505,6 @@ <translation id="6291949900244949761">Spyrja þegar vefsvæði vill opna USB-tæki (ráðlagt)</translation> <translation id="6291953229176937411">&Sýna í Finder</translation> <translation id="6292699686837272722">Flipar minnka í miðlungsbreidd</translation> -<translation id="6294610283659775533">Þú getur sent flipa á milli tækja sem eru skráð inn á sama Google reikninginn</translation> <translation id="6294759976468837022">Hraði sjálfvirkrar skönnunar</translation> <translation id="6295158916970320988">Öll vefsvæði</translation> <translation id="6295855836753816081">Vistar...</translation> @@ -6897,6 +6899,7 @@ <translation id="7668423670802040666">Í Aðgangsorðastjórnun Google fyrir <ph name="ACCOUNT" /></translation> <translation id="7669825497510425694">{NUM_ATTEMPTS,plural, =1{Rangt PIN-númer. Þú átt eina tilraun eftir.}one{Rangt PIN-númer. Þú átt # tilraun eftir.}other{Rangt PIN-númer. Þú átt # tilraunir eftir.}}</translation> <translation id="7670434942695515800">Uppfærðu í nýjustu útgáfuna til að ná sem mestum afköstum. Mælt er með því að taka afrit af skrám ef ske kynni að ekki takist að ljúka við uppfærsluna. Slökkt verður á Linux um leið og uppfærslan hefst. Vistaðu opnar skrár áður en haldið er áfram. <ph name="LINK_START" />Nánar<ph name="LINK_END" /></translation> +<translation id="7670483791111801022">Skjátexti</translation> <translation id="7671130400130574146">Nota titilrönd og ramma kerfis</translation> <translation id="767127784612208024">Snertu til að staðfesta endurstillingu</translation> <translation id="7672520070349703697"><ph name="HUNG_IFRAME_URL" />, á <ph name="PAGE_TITLE" />.</translation> @@ -7983,6 +7986,7 @@ <translation id="8724859055372736596">&Sýna í möppu</translation> <translation id="8725066075913043281">Reyna aftur</translation> <translation id="8725178340343806893">Uppáhald/bókamerki</translation> +<translation id="87254326763805752">Staðfesta aðgangslykil</translation> <translation id="8726206820263995930">Villa við að sækja stefnustillingar frá þjóninum: <ph name="CLIENT_ERROR" />.</translation> <translation id="8728351286589123703">Valdar heimildir þínar verða endurstilltar</translation> <translation id="8729133765463465108">Notaðu myndavélina til að skanna inn QR-kóða</translation>
diff --git a/chrome/app/resources/generated_resources_it.xtb b/chrome/app/resources/generated_resources_it.xtb index 01a1edc..77635bc 100644 --- a/chrome/app/resources/generated_resources_it.xtb +++ b/chrome/app/resources/generated_resources_it.xtb
@@ -332,7 +332,6 @@ <translation id="1319983966058170660">Pulsante Indietro pagina secondaria <ph name="SUBPAGE_TITLE" /></translation> <translation id="1322046419516468189">Visualizza e gestisci le password salvate in <ph name="SAVED_PASSWORDS_STORE" /></translation> <translation id="1324106254079708331">Protegge gli Account Google personali di chiunque a rischio di attacchi mirati</translation> -<translation id="1326317727527857210">Accedi a Chrome per trovare le tue schede degli altri dispositivi.</translation> <translation id="1327272175893960498">Richieste di Kerberos</translation> <translation id="1327495825214193325">Per attivare il debug ADB è necessario riavviare questo <ph name="DEVICE_TYPE" />. Per disattivarlo è necessario ripristinare le impostazioni di fabbrica.</translation> <translation id="1327794256477341646">Le funzionalità che richiedono la tua posizione non funzioneranno</translation> @@ -359,6 +358,7 @@ <translation id="1347256498747320987">Installa aggiornamenti e app. Se continui, accetti che questo dispositivo possa anche scaricare e installare automaticamente aggiornamenti e app di Google, del tuo operatore e del produttore del dispositivo, utilizzando anche la rete dati. Alcune di queste app potrebbero offrire acquisti in-app. <ph name="BEGIN_LINK1" />Ulteriori informazioni<ph name="END_LINK1" /></translation> <translation id="1347512539447549782">Spazio di archiviazione Linux</translation> <translation id="1347975661240122359">L'aggiornamento inizierà quando la carica della batteria raggiunge il <ph name="BATTERY_LEVEL" />%.</translation> +<translation id="1348966090521113558">Impostazioni di accessibilità del mouse</translation> <translation id="1353275871123211385">Per usare il Controllo genitori, ad esempio l'approvazione delle app e i limiti per il tempo di utilizzo, è necessario che il bambino abbia un Account Google gestito da un genitore. In un secondo momento è possibile aggiungere un account della scuola da usare per strumenti quali Google Classroom.</translation> <translation id="135389172849514421">Funziona offline</translation> <translation id="1353980523955420967">Impossibile trovare il file PPD. Assicurati che il Chromebook sia online e riprova.</translation> @@ -1783,6 +1783,7 @@ <translation id="2653659639078652383">Invia</translation> <translation id="265390580714150011">Valore campo</translation> <translation id="2654553774144920065">Richiesta di stampa</translation> +<translation id="2657612187216250073">Impostazioni di accessibilità del puntatore</translation> <translation id="2658941648214598230">Mostrare il contenuto originale?</translation> <translation id="2659381484350128933"><ph name="FOOTNOTE_POINTER" />Le funzionalità variano in base al dispositivo</translation> <translation id="2659971421398561408">Ridimensionamento del disco Crostini</translation> @@ -1947,6 +1948,7 @@ <translation id="2801954693771979815">Dimensioni schermo</translation> <translation id="2802557211515765772">Nessuna stampante gestita disponibile.</translation> <translation id="2803313416453193357">Apri cartella</translation> +<translation id="2803719750464280163">Conferma che <ph name="PASSKEY" /> è la passkey visualizzata sul dispositivo Bluetooth <ph name="DEVICE" />.</translation> <translation id="2804043232879091219">Impossibile aprire il browser alternativo</translation> <translation id="2804667941345577550">Uscirai da questo sito (schede aperte incluse)</translation> <translation id="2804680522274557040">Fotocamera disattivata</translation> @@ -2423,7 +2425,6 @@ <translation id="3280243678470289153">Rimani in Chrome</translation> <translation id="3281892622610078515">File e programmi che saranno messi in quarantena:</translation> <translation id="3282210178675490297">Condivisione di una scheda con <ph name="APP_NAME" /></translation> -<translation id="3282568296779691940">Accedi a Chrome</translation> <translation id="3285322247471302225">Nuova &scheda</translation> <translation id="328571385944182268">Vuoi salvare le password?</translation> <translation id="3288047731229977326">Le estensioni in esecuzione in modalità sviluppatore potrebbero danneggiare il computer. Se non sei uno sviluppatore, dovresti disattivare queste estensioni per la tua sicurezza.</translation> @@ -2863,6 +2864,7 @@ <translation id="370649949373421643">Attiva Wi-Fi</translation> <translation id="370665806235115550">Caricamento in corso...</translation> <translation id="3707163604290651814">Accesso eseguito come <ph name="NAME" /></translation> +<translation id="3708295717182051206">Sottotitoli codificati</translation> <translation id="3708684582558000260">Non consentire ai siti chiusi di terminare l'invio o la ricezione di dati</translation> <translation id="3709244229496787112">Il browser è stato chiuso prima del termine del download.</translation> <translation id="371174301504454251">Per tutelare la tua privacy, eliminiamo automaticamente dall'elenco i siti risalenti a più di 4 settimane prima della data corrente. Un sito che visiti un'altra volta potrebbe essere visualizzato di nuovo nell'elenco. Puoi anche rimuovere un sito se non vuoi che definisca i tuoi interessi.</translation> @@ -3297,7 +3299,6 @@ <translation id="4101352914005291489">SSID nascosto</translation> <translation id="4102469565336584882">Codice non valido. Il formato dell'elemento dovrebbe essere LPA:1$<smdp address>$<activation code></translation> <translation id="4102906002417106771">Riavvia per eseguire il Powerwash</translation> -<translation id="4104163789986725820">E&sporta...</translation> <translation id="4107048419833779140">Identifica ed espelli i dispositivi di archiviazione</translation> <translation id="4108314971463891922">Segui</translation> <translation id="4109135793348361820">Sposta finestra su <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />)</translation> @@ -3947,6 +3948,7 @@ <translation id="475088594373173692">Primo utente</translation> <translation id="4756378406049221019">Interrompi/Ricarica</translation> <translation id="4756388243121344051">&Cronologia</translation> +<translation id="4756671452988984333">Testo per l'audio</translation> <translation id="4759202969060787081">Non aprire</translation> <translation id="4759238208242260848">Download</translation> <translation id="4761104368405085019">Utilizzare il microfono</translation> @@ -4106,6 +4108,7 @@ <translation id="4900392736118574277">Pagina iniziale sostituita con: <ph name="URL" />.</translation> <translation id="490051679772058907"><ph name="REFRESH_RATE" /> Hz - interlacciata</translation> <translation id="4900652253009739885">Impossibile rimuovere l'unico sensore assegnato a "Seleziona". Premi un tasto qualsiasi per <ph name="RESPONSE" />.</translation> +<translation id="4901154724271753917">Espandi schede chiuse di recente</translation> <translation id="4901309472892185668">Seleziona lo stato dell'esperimento <ph name="EXPERIMENT_NAME" />.</translation> <translation id="49027928311173603">Il criterio scaricato dal server non è valido. <ph name="VALIDATION_ERROR" />.</translation> <translation id="4906490889887219338">Configura o gestisci condivisioni file di rete. <ph name="LINK_BEGIN" />Ulteriori informazioni<ph name="LINK_END" /></translation> @@ -5050,6 +5053,7 @@ <translation id="5860494867054883682">Aggiornamento del dispositivo al canale <ph name="CHANNEL_NAME" /> in corso (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">Mostra strumenti stilo nella barra delle app</translation> <translation id="5862319196656206789">Configura i dispositivi connessi</translation> +<translation id="5862731021271217234">Attiva la sincronizzazione per trovare le tue schede degli altri dispositivi</translation> <translation id="5863445608433396414">Attiva funzioni di debug</translation> <translation id="5864195618110239517">Usa connessione a consumo</translation> <translation id="5864754048328252126">Azione stabilita in caso di inattività durante la ricarica</translation> @@ -5485,7 +5489,6 @@ <translation id="6291949900244949761">Chiedi conferma quando un sito vuole accedere ai dispositivi USB (consigliata)</translation> <translation id="6291953229176937411">Mo&stra nel Finder</translation> <translation id="6292699686837272722">Le schede si riducono a una larghezza media</translation> -<translation id="6294610283659775533">Puoi inviare schede tra dispositivi su cui è stato eseguito l'accesso con lo stesso Account Google</translation> <translation id="6294759976468837022">Velocità della scansione automatica</translation> <translation id="6295158916970320988">Tutti i siti</translation> <translation id="6295855836753816081">Salvataggio in corso...</translation> @@ -6878,6 +6881,7 @@ <translation id="7668423670802040666">In Gestore delle password di Google per l'account <ph name="ACCOUNT" /></translation> <translation id="7669825497510425694">{NUM_ATTEMPTS,plural, =1{PIN errato. Hai ancora a disposizione un tentativo.}other{PIN errato. Hai ancora a disposizione # tentativi.}}</translation> <translation id="7670434942695515800">Per avere prestazioni ottimali, esegui l'upgrade all'ultima versione. Consigliamo di eseguire il backup dei file in caso di interruzione dell'upgrade. L'avvio dell'upgrade comporterà l'arresto di Linux. Salva i file aperti prima di continuare. <ph name="LINK_START" />Scopri di più<ph name="LINK_END" /></translation> +<translation id="7670483791111801022">Sottotitoli</translation> <translation id="7671130400130574146">Usa barra del titolo di sistema e bordi</translation> <translation id="767127784612208024">Tocca per confermare la reimpostazione</translation> <translation id="7672520070349703697"><ph name="HUNG_IFRAME_URL" />, in <ph name="PAGE_TITLE" />.</translation> @@ -6990,6 +6994,7 @@ <translation id="7768526219335215384"><ph name="ORIGIN" /> potrà visualizzare i file nella cartella <ph name="FOLDERNAME" /></translation> <translation id="7768770796815395237">Cambia</translation> <translation id="7768784765476638775">Seleziona per ascoltare</translation> +<translation id="7769748505895274502">Comprimi schede chiuse di recente</translation> <translation id="7770406201819593386">Esecuzione di test diagnostici di Chrome OS Flex.</translation> <translation id="7770450735129978837">Clic con il tasto destro del mouse</translation> <translation id="7770612696274572992">Immagine copiata da un altro dispositivo</translation> @@ -7965,6 +7970,7 @@ <translation id="8724859055372736596">Mo&stra nella cartella</translation> <translation id="8725066075913043281">Riprova</translation> <translation id="8725178340343806893">Preferiti/Segnalibri</translation> +<translation id="87254326763805752">Conferma passkey</translation> <translation id="8726206820263995930">Errore durante il recupero delle impostazioni criterio dal server. <ph name="CLIENT_ERROR" />.</translation> <translation id="8728351286589123703">Le autorizzazioni selezionate verranno reimpostate</translation> <translation id="8729133765463465108">Utilizza la fotocamera per scansionare il codice QR</translation>
diff --git a/chrome/app/resources/generated_resources_iw.xtb b/chrome/app/resources/generated_resources_iw.xtb index f0ea35b7..ebe102c4 100644 --- a/chrome/app/resources/generated_resources_iw.xtb +++ b/chrome/app/resources/generated_resources_iw.xtb
@@ -336,7 +336,6 @@ <translation id="1319983966058170660">לחצן החזרה בדף המשנה <ph name="SUBPAGE_TITLE" /></translation> <translation id="1322046419516468189">הצגה וניהול של סיסמאות שמורות במסגרת <ph name="SAVED_PASSWORDS_STORE" /></translation> <translation id="1324106254079708331">התוכנית עוזרת להגן על חשבונות Google האישיים של כל מי שנמצא בסיכון למתקפות ממוקדות.</translation> -<translation id="1326317727527857210">כדי לקבל את הכרטיסיות מהמכשירים האחרים שלך, יש להיכנס ל-Chrome.</translation> <translation id="1327272175893960498">כרטיסי Kerberos</translation> <translation id="1327495825214193325">כדי להשתמש בניפוי באגים באמצעות ADB צריך להפעיל מחדש את ה-<ph name="DEVICE_TYPE" /> הזה. כדי להשבית את האפשרות הזו צריך לאפס את המכשיר להגדרות היצרן.</translation> <translation id="1327794256477341646">תכונות שצריכות גישה למיקום לא יפעלו</translation> @@ -2439,7 +2438,6 @@ <translation id="3280243678470289153">להישאר ב-Chrome</translation> <translation id="3281892622610078515">קבצים ותוכנות שיש להעביר להסגר:</translation> <translation id="3282210178675490297">המערכת משתפת כרטיסייה עם האפליקציה <ph name="APP_NAME" /></translation> -<translation id="3282568296779691940">כניסה ל-Chrome</translation> <translation id="3285322247471302225">כרטיסייה &חדשה</translation> <translation id="328571385944182268">לשמור את הסיסמאות?</translation> <translation id="3288047731229977326">תוספים הרצים במצב מפתח יכולים להזיק למחשב שלך. אם אינך מפתח, עליך להשבית את התוספים הרצים במצב מפתח כדי לשמור על ביטחונך.</translation> @@ -3313,7 +3311,6 @@ <translation id="4101352914005291489">SSID מוסתר</translation> <translation id="4102469565336584882">הקוד לא חוקי. הפורמט של הקוד צריך להיות LPA:1$<smdp address>$<activation code></translation> <translation id="4102906002417106771">הפעלה מחדש לביצוע Powerwash</translation> -<translation id="4104163789986725820">יי&צוא...</translation> <translation id="4107048419833779140">לזהות ולהוציא התקני אחסון</translation> <translation id="4108314971463891922">מעקב</translation> <translation id="4109135793348361820">העברת חלון אל <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />)</translation> @@ -5065,6 +5062,7 @@ <translation id="5860494867054883682">המערכת מעדכנת את המכשיר שלך לערוץ <ph name="CHANNEL_NAME" /> (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">הצגת כלי סטיילוס במדף</translation> <translation id="5862319196656206789">הגדרה של מכשירים מחוברים</translation> +<translation id="5862731021271217234">כדי לקבל את הכרטיסיות מהמכשירים האחרים שלך, יש להפעיל את הסנכרון</translation> <translation id="5863445608433396414">הפעלת תכונות ניפוי באגים</translation> <translation id="5864195618110239517">שימוש בחיבור עם חיוב לפי שימוש בנתונים</translation> <translation id="5864754048328252126">מה לעשות בעת חוסר פעילות בזמן טעינה</translation> @@ -5500,7 +5498,6 @@ <translation id="6291949900244949761">צריך לבקש ממני אישור כשאתר רוצה לגשת למכשירי USB (מומלץ)</translation> <translation id="6291953229176937411">&הצגה ב-Finder</translation> <translation id="6292699686837272722">הכרטיסיות יתכווצו לתצוגה בינונית</translation> -<translation id="6294610283659775533">אפשר לשלוח כרטיסיות ממכשיר למכשיר, כל עוד נכנסת במכשירים לאותו חשבון Google.</translation> <translation id="6294759976468837022">מהירות הסריקה האוטומטית</translation> <translation id="6295158916970320988">כל האתרים</translation> <translation id="6295855836753816081">בתהליך שמירה...</translation>
diff --git a/chrome/app/resources/generated_resources_ja.xtb b/chrome/app/resources/generated_resources_ja.xtb index ad041e8..d653157 100644 --- a/chrome/app/resources/generated_resources_ja.xtb +++ b/chrome/app/resources/generated_resources_ja.xtb
@@ -332,7 +332,6 @@ <translation id="1319983966058170660"><ph name="SUBPAGE_TITLE" /> サブページの戻るボタン</translation> <translation id="1322046419516468189"><ph name="SAVED_PASSWORDS_STORE" /> での保存パスワードの表示と管理</translation> <translation id="1324106254079708331">個人の Google アカウントを標的型攻撃から保護します</translation> -<translation id="1326317727527857210">他のデバイスと同じタブを使用するには、Chrome にログインします。</translation> <translation id="1327272175893960498">Kerberos チケット</translation> <translation id="1327495825214193325">ADB デバッグを有効にするには、この <ph name="DEVICE_TYPE" /> を再起動する必要があります。ADB デバッグを無効にする場合は、出荷時の設定へのリセットが必要になります。</translation> <translation id="1327794256477341646">位置情報を必要とする機能は動作しなくなります</translation> @@ -2420,7 +2419,6 @@ <translation id="3280243678470289153">Chrome に留まる</translation> <translation id="3281892622610078515">隔離対象のファイルとプログラム:</translation> <translation id="3282210178675490297">タブを <ph name="APP_NAME" /> と共有します</translation> -<translation id="3282568296779691940">Chrome にログイン</translation> <translation id="3285322247471302225">新しいタブ(&T)</translation> <translation id="328571385944182268">パスワードを保存しますか?</translation> <translation id="3288047731229977326">デベロッパー モードで実行される拡張機能はパソコンにダメージを与える恐れがあります。デベロッパーでない場合は、安全のため、デベロッパー モードで実行されているこれらの拡張機能を無効にしてください。</translation> @@ -3291,7 +3289,6 @@ <translation id="4101352914005291489">ステルス SSID</translation> <translation id="4102469565336584882">コードが無効です。エントリは「LPA:1$<smdp address>$<activation code>」という形式にする必要があります。</translation> <translation id="4102906002417106771">再起動して Powerwash を実行</translation> -<translation id="4104163789986725820">エクスポート(&X)</translation> <translation id="4107048419833779140">ストレージ デバイスの認識と取り外し</translation> <translation id="4108314971463891922">フォロー</translation> <translation id="4109135793348361820"><ph name="USER_NAME" />(<ph name="USER_EMAIL" />)にウィンドウを移動</translation> @@ -4097,6 +4094,7 @@ <translation id="4900392736118574277">起動ページが <ph name="URL" /> に変更されました。</translation> <translation id="490051679772058907"><ph name="REFRESH_RATE" /> Hz - インターレース</translation> <translation id="4900652253009739885">「選択」に割り当てられているスイッチが 1 つしかないため、削除できません。<ph name="RESPONSE" />には、いずれかのキーを押してください。</translation> +<translation id="4901154724271753917">最近閉じたタブを展開する</translation> <translation id="4901309472892185668"><ph name="EXPERIMENT_NAME" /> テストの試験運用機能の状態を選択します。</translation> <translation id="49027928311173603">サーバーからダウンロードされたポリシーが無効です: <ph name="VALIDATION_ERROR" />。</translation> <translation id="4906490889887219338">ネットワーク ファイル共有を設定または管理します。<ph name="LINK_BEGIN" />詳細<ph name="LINK_END" /></translation> @@ -5041,6 +5039,7 @@ <translation id="5860494867054883682">デバイスを <ph name="CHANNEL_NAME" /> チャンネルに更新しています(<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">シェルフにタッチペン ツールを表示</translation> <translation id="5862319196656206789">接続済みデバイスのセットアップ</translation> +<translation id="5862731021271217234">他のデバイスと同じタブを使用するには、同期を有効にします</translation> <translation id="5863445608433396414">デバッグ機能を有効にする</translation> <translation id="5864195618110239517">従量制接続を使用</translation> <translation id="5864754048328252126">充電時のアイドル操作</translation> @@ -5474,7 +5473,6 @@ <translation id="6291949900244949761">サイトから USB デバイスへのアクセス許可を求められたときに確認する(推奨)</translation> <translation id="6291953229176937411">Finder で表示(&S)</translation> <translation id="6292699686837272722">タブを中サイズまで縮小</translation> -<translation id="6294610283659775533">同じ Google アカウントでログインしているデバイス間でタブを送信できます</translation> <translation id="6294759976468837022">自動スキャンの速度</translation> <translation id="6295158916970320988">すべてのサイト</translation> <translation id="6295855836753816081">保存しています...</translation> @@ -6976,6 +6974,7 @@ <translation id="7768526219335215384"><ph name="ORIGIN" /> は <ph name="FOLDERNAME" /> 内のファイルを読み取れるようになります</translation> <translation id="7768770796815395237">変更</translation> <translation id="7768784765476638775">選択して読み上げ</translation> +<translation id="7769748505895274502">最近閉じたタブを折りたたむ</translation> <translation id="7770406201819593386">ChromeOS Flex 診断テストを実行する。</translation> <translation id="7770450735129978837">右マウスクリック</translation> <translation id="7770612696274572992">他のデバイスから画像がコピーされました</translation>
diff --git a/chrome/app/resources/generated_resources_ka.xtb b/chrome/app/resources/generated_resources_ka.xtb index 3196401..c8ba31f9 100644 --- a/chrome/app/resources/generated_resources_ka.xtb +++ b/chrome/app/resources/generated_resources_ka.xtb
@@ -332,7 +332,6 @@ <translation id="1319983966058170660">ქვეგვერდის <ph name="SUBPAGE_TITLE" /> ღილაკი „უკან“</translation> <translation id="1322046419516468189">შენახული პაროლების ნახვა და მართვა შეგიძლიათ სექციაში „<ph name="SAVED_PASSWORDS_STORE" />“</translation> <translation id="1324106254079708331">დაიცავს პერსონალურ Google ანგარიშებს, რომლებსაც გამიზნული თავდასხმების საფრთხე ემუქრება</translation> -<translation id="1326317727527857210">თქვენს სხვა მოწყობილობებზე არსებულ ჩანართებზე წვდომის მისაღებად, შედით Chrome-ში.</translation> <translation id="1327272175893960498">Kerberos ბილეთები</translation> <translation id="1327495825214193325">ADB გამართვის ჩასართავად უნდა გადატვირთოთ ეს <ph name="DEVICE_TYPE" />. მის გასათიშად საჭირო ქარხნული პარამეტრების დაბრუნება.</translation> <translation id="1327794256477341646">ფუნქციები, რომლებიც თქვენს მდებარეობას საჭიროებს, არ იმუშავებს</translation> @@ -2426,7 +2425,6 @@ <translation id="3280243678470289153">Chrome-ში დარჩენა</translation> <translation id="3281892622610078515">კარანტინში მოსათავსებელი ფაილები და პროგრამები:</translation> <translation id="3282210178675490297">მიმდინარეობს ჩანართის გაზიარება <ph name="APP_NAME" />-თან</translation> -<translation id="3282568296779691940">შესვლა Chrome-ში</translation> <translation id="3285322247471302225">ახალი ჩ&ანართი</translation> <translation id="328571385944182268">გსურთ თქვენი პაროლების შენახვა?</translation> <translation id="3288047731229977326">დეველოპერის რეჟიმში გაშვებულმა გაფართოებებმა შეიძლება დააზიანოს თქვენი კომპიუტერი. თუ თქვენ არ ხართ დეველოპერი, უსაფრთხოების შენარჩუნებისათვის თქვენ უნდა გამორთოთ დეველოპერულ რეჟიმში გაშვებული გაფართოებები.</translation> @@ -3300,7 +3298,6 @@ <translation id="4101352914005291489">დამალული SSID</translation> <translation id="4102469565336584882">კოდი არასწორია. თქვენი შენატანის ფორმატი უნდა იყოს LPA:1$<smdp მისამართი>$<აქტივაციის კოდი></translation> <translation id="4102906002417106771">გადატვირთვა Powerwash-ისთვის</translation> -<translation id="4104163789986725820">ე&ქსპორტი…</translation> <translation id="4107048419833779140">მეხსიერების მოწყობილობების იდენტიფიცირება და ამოღება</translation> <translation id="4108314971463891922">თვალის დევნება</translation> <translation id="4109135793348361820">ფანჯრის გადატანა <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />)</translation> @@ -5056,6 +5053,7 @@ <translation id="5860494867054883682">მიმდინარეობს თქვენი მოწყობილობის განახლება <ph name="CHANNEL_NAME" /> არხით (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">თაროზე სტილუსის ხელსაწყოების ჩვენება</translation> <translation id="5862319196656206789">დაკავშირებული მოწყობილობების დაყენება</translation> +<translation id="5862731021271217234">თქვენს სხვა მოწყობილობებზე არსებულ ჩანართებზე წვდომისთვის ჩართეთ სინქრონიზაცია</translation> <translation id="5863445608433396414">გამართვის ფუნქციების ჩართვა</translation> <translation id="5864195618110239517">ლიმიტირებული კავშირის გამოყენება</translation> <translation id="5864754048328252126">დატენისას უმოქმედობის შემთხვევაში შესასრულებელი მოქმედება</translation> @@ -5492,7 +5490,6 @@ <translation id="6291949900244949761">საიტების მიერ USB-მოწყობილობებზე წვდომის მოთხოვნა (რეკომენდებულია)</translation> <translation id="6291953229176937411">ჩ&ვენება მაძიებელში</translation> <translation id="6292699686837272722">ჩანართები შევიწროვდება საშუალო სიგანეზე</translation> -<translation id="6294610283659775533">სურვილისამებრ, შეგიძლიათ გაცვალოთ ჩანართები იმ მოწყობილობებს შორის, რომლებშიც შესული ხართ ერთი და იგივე Google ანგარიშით</translation> <translation id="6294759976468837022">ავტომატური სკანირების სიჩქარე</translation> <translation id="6295158916970320988">ყველა საიტი</translation> <translation id="6295855836753816081">მიმდინარეობს შენახვა…</translation> @@ -5916,6 +5913,7 @@ <translation id="6709133671862442373">ახალი ამბები</translation> <translation id="6709357832553498500"><ph name="EXTENSIONNAME" />-ით დაკავშირება</translation> <translation id="6710213216561001401">წინა</translation> +<translation id="6710394144992407503">მართლწერის შეცდომების შემოწმება ვებგვერდებზე ტექსტის აკრეფისას</translation> <translation id="6711146141291425900">მიაბით <ph name="WEB_DRIVE" /> ანგარიში ჩამოტვირთვებისთვის</translation> <translation id="6712943853047024245">თქვენ უკვე შეინახეთ პაროლი ამ მომხმარებლის სახელით <ph name="WEBSITE" />-ისთვის</translation> <translation id="6713233729292711163">სამსახურის პროფილის დამატება</translation> @@ -6537,6 +6535,7 @@ <translation id="7340757554212515731">ავტომატურად უგზავნის Google-ს ავარიულად გათიშვის ანგარიშებს, ასევე, დიაგნოსტიკისა და გამოყენების მონაცემებს</translation> <translation id="7341834142292923918">ითხოვს წვდომას ამ საიტზე</translation> <translation id="7343372807593926528">გამოხმაურებამდე აღწერეთ პრობლემა.</translation> +<translation id="7344585835349671209">HTTPS/SSL სერტიფიკატების მართვა თქვენს მოწყობილობაზე</translation> <translation id="7345706641791090287">დაადასტურეთ თქვენი პაროლი</translation> <translation id="7346909386216857016">კარგი, გასაგებია</translation> <translation id="7347452120014970266">ეს მოქმედება გაასუფთავებს <ph name="ORIGIN_NAME" />-ისა და მისი დაინსტალირებული აპების მიერ შენახულ ყველა მონაცემსა და ქუქი-ჩანაწერს</translation> @@ -6666,6 +6665,7 @@ <translation id="7460045493116006516">თქვენ მიერ ამჟამად დაინსტალირებული თემა</translation> <translation id="7461924472993315131">პინი</translation> <translation id="746216226901520237">შემდეგში <ph name="DEVICE_TYPE" /> განიბლოკება თქვენი ტელეფონის მეშვეობით. Smart Lock-ის გამორთვა შესაძლებელია პარამეტრებიდან.</translation> +<translation id="7464153996453281700">კომპონენტი უკვე განახლებულია</translation> <translation id="7464637891177137294">შეინახეთ ის თქვენს Google ანგარიშში (<ph name="ACCOUNT" />)</translation> <translation id="7465522323587461835">{NUM_OPEN_TABS,plural, =1{# გახსნილი ჩანართი, დააჭირეთ ჩანართების ზოლის გადასართველად}other{# გახსნილი ჩანართი, დააჭირეთ ჩანართების ზოლის გადასართველად}}</translation> <translation id="7465635034594602553">წარმოიქმნა შეფერხება. ცადეთ <ph name="APP_NAME" />-ის ხელახლა გაშვება რამდენიმე წუთის შემდეგ.</translation> @@ -7174,6 +7174,7 @@ <translation id="793531125873261495">ვირტუალური მოწყობილობის ჩამოტვირთვა ვერ ხერხდება. გთხოვთ, ცადოთ ხელახლა.</translation> <translation id="7935451262452051102">შესრულდა <ph name="PERCENT" />%</translation> <translation id="7939062555109487992">გაფართოებული ვარიანტები</translation> +<translation id="7939328347457537652">მოწყობილობის სერტიფიკატების მართვა</translation> <translation id="7939412583708276221">მაინც შენახვა</translation> <translation id="7942349550061667556">წითელი</translation> <translation id="7943368935008348579">PDF-ების ჩამოტვირთვა</translation>
diff --git a/chrome/app/resources/generated_resources_kk.xtb b/chrome/app/resources/generated_resources_kk.xtb index f45b339e..f656a7c 100644 --- a/chrome/app/resources/generated_resources_kk.xtb +++ b/chrome/app/resources/generated_resources_kk.xtb
@@ -332,7 +332,6 @@ <translation id="1319983966058170660"><ph name="SUBPAGE_TITLE" /> қосымша бетіндегі "Aртқа" түймесі</translation> <translation id="1322046419516468189">Сақталған құпия сөздерді <ph name="SAVED_PASSWORDS_STORE" /> бетінен көруге және басқаруға болады</translation> <translation id="1324106254079708331">Арнайы шабуыл жасалуы мүмкін жеке Google аккаунттарын қорғайды.</translation> -<translation id="1326317727527857210">Басқа құрылғылардағы қойындыларды алу үшін, Chrome жүйесіне кіріңіз.</translation> <translation id="1327272175893960498">Kerberos билеттері</translation> <translation id="1327495825214193325">ADB түзетуін қосу үшін осы <ph name="DEVICE_TYPE" /> құрылғысын қайта қосу қажет. Оны өшіру үшін зауыттық параметрлерді қайтару қажет болады.</translation> <translation id="1327794256477341646">Геодерегіңізді қажет ететін функциялар жұмыс істемейді.</translation> @@ -359,6 +358,7 @@ <translation id="1347256498747320987">Жаңа нұсқалар мен қолданбаларды орнату. Жалғастыру арқылы бұл құрылғының Google қызметінен, оператордан және құрылғы өндірушісінен жаңа нұсқалар мен қолданбаларды автоматты түрде жүктеп алуына және орнатуына келісім бересіз (ұялы деректер пайдаланылуы мүмкін). Бұл қолданбалардың кейбірінде қолданба арқылы сатып алу ұсынылуы мүмкін. <ph name="BEGIN_LINK1" />Толығырақ<ph name="END_LINK1" /></translation> <translation id="1347512539447549782">Linux жад көлемі</translation> <translation id="1347975661240122359">Батарея заряды <ph name="BATTERY_LEVEL" />% болғанда ғана жаңарту басталады.</translation> +<translation id="1348966090521113558">Тінтуірге арналған арнайы мүмкіндіктер параметрлері</translation> <translation id="1353275871123211385">Ата-ана бақылауы құралдарын (мысалы, қолданбаны мақұлдау және пайдалану уақыты лимиттері) пайдалану үшін балада оның ата-анасы басқаратын Google аккаунты болуы қажет. Google Classroom сияқты құралдармен пайдалану үшін кейінірек мектеп аккаунтын қосуға болады.</translation> <translation id="135389172849514421">Офлайн режимде қолжетімді</translation> <translation id="1353980523955420967">PPD файлы табылмады. Chromebook ноутбугінің онлайн режимінде екенін тексеріп, әрекетті қайталап көріңіз.</translation> @@ -1780,6 +1780,7 @@ <translation id="2653659639078652383">Жіберу</translation> <translation id="265390580714150011">Өріс мәні</translation> <translation id="2654553774144920065">Басып шығару туралы сұрау</translation> +<translation id="2657612187216250073">Меңзерге арналған арнайы мүмкіндіктер параметрлері</translation> <translation id="2658941648214598230">Бастапқы мазмұн көрсетілсін бе?</translation> <translation id="2659381484350128933"><ph name="FOOTNOTE_POINTER" />Мүмкіндіктер әр құрылғыда әр түрлі болады</translation> <translation id="2659971421398561408">Crostini дискісінің көлемін өзгерту</translation> @@ -1943,6 +1944,7 @@ <translation id="2801954693771979815">Экран өлшемі</translation> <translation id="2802557211515765772">Басқарылатын принтер жоқ.</translation> <translation id="2803313416453193357">Қалтаны ашу</translation> +<translation id="2803719750464280163"><ph name="PASSKEY" /> кіру кілті <ph name="DEVICE" /> Bluetooth құрылғысында көрсетілген кіру кілті екенін растаңыз.</translation> <translation id="2804043232879091219">Балама браузер ашылмады.</translation> <translation id="2804667941345577550">Осы сайттан, оның ішінде ашық қойындылардан шығып кетесіз.</translation> <translation id="2804680522274557040">Камера өшірулі</translation> @@ -2419,7 +2421,6 @@ <translation id="3280243678470289153">Chrome браузерінде қалу</translation> <translation id="3281892622610078515">Кепілдік берілетін файлдар мен бағдарламалар:</translation> <translation id="3282210178675490297">Қойынды <ph name="APP_NAME" /> қолданбасымен бөлісілуде</translation> -<translation id="3282568296779691940">Chrome жүйесіне кіру</translation> <translation id="3285322247471302225">Жаңа &қойынды</translation> <translation id="328571385944182268">Құпия сөздеріңіз сақталсын ба?</translation> <translation id="3288047731229977326">Әзірлеуші режимінде іске қосылатын кеңейтімдер компьютеріңізге зиян келтіруі мүмкін. Әзірлеуші болмасаңыз, қауіпсіз болуы үшін әзірлеуші режимінде іске қосылатын бұл кеңейтімдерді өшіруіңіз тиіс.</translation> @@ -2859,6 +2860,7 @@ <translation id="370649949373421643">Wi‑Fi желісін қосу</translation> <translation id="370665806235115550">Жүктелуде…</translation> <translation id="3707163604290651814">Аккаунтқа <ph name="NAME" /> ретінде кірдіңіз.</translation> +<translation id="3708295717182051206">Субтитр</translation> <translation id="3708684582558000260">Жабылған сайттардың деректерді жіберуді немесе қабылдауды аяқтауына рұқсат бермеу</translation> <translation id="3709244229496787112">Браузер жүктеу аяқталмасынан бұрын өшірілді.</translation> <translation id="371174301504454251">Құпиялылығыңызды сақтау үшін 4 аптадан көп көрсетілген сайттарды тізімнен автоматты түрде жойып отырамыз. Сіз қайтадан кірген сайт тізімде тағы да шығуы мүмкін. Сайттың қызығушылықтарыңызды анықтағанын қаламасаңыз, оны өшіруіңізге болады.</translation> @@ -3292,7 +3294,6 @@ <translation id="4101352914005291489">Жасырын SSID</translation> <translation id="4102469565336584882">Жарамсыз код. LPA форматында жазуыңыз керек: 1$<smdp address>$<activation code></translation> <translation id="4102906002417106771">Powerwash функциясын іске қосу үшін қайта қосу</translation> -<translation id="4104163789986725820">Э&кспорттау…</translation> <translation id="4107048419833779140">Жад құрылғыларын анықтау және шығару</translation> <translation id="4108314971463891922">Жазылу</translation> <translation id="4109135793348361820">Терезені <ph name="USER_NAME" /> пайдаланушысына (<ph name="USER_EMAIL" />) жылжыту</translation> @@ -3941,6 +3942,7 @@ <translation id="475088594373173692">Алғашқы пайдаланушы</translation> <translation id="4756378406049221019">Тоқтату/Қайта жүктеу</translation> <translation id="4756388243121344051">&Тарих</translation> +<translation id="4756671452988984333">Аудиоға арналған мәтін</translation> <translation id="4759202969060787081">Ашылмасын</translation> <translation id="4759238208242260848">Жүктеп алынғандар</translation> <translation id="4761104368405085019">Микрофоныңызды пайдалану</translation> @@ -4100,6 +4102,7 @@ <translation id="4900392736118574277">Іске қосу беті <ph name="URL" /> мекенжайына өзгерді.</translation> <translation id="490051679772058907"><ph name="REFRESH_RATE" /> Гц − қабаттастырылған</translation> <translation id="4900652253009739885">"Таңдау" әрекетіне тағайындалған жалғыз ауыстырғышты жою мүмкін емес. <ph name="RESPONSE" /> үшін кез келген пернені басыңыз.</translation> +<translation id="4901154724271753917">Жақында жабылған беттерді жаю</translation> <translation id="4901309472892185668"><ph name="EXPERIMENT_NAME" /> экспериментінің күйін таңдаңыз.</translation> <translation id="49027928311173603">Серверден жүктелген саясат жарамсыз: <ph name="VALIDATION_ERROR" />.</translation> <translation id="4906490889887219338">Желінің ортақ каталогтерін реттеу немесе басқару. <ph name="LINK_BEGIN" />Толығырақ<ph name="LINK_END" /></translation> @@ -5044,6 +5047,7 @@ <translation id="5860494867054883682">Құрылғы <ph name="CHANNEL_NAME" /> арнасына жаңартылуда (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">Стилус құралдарын сөреден көрсету</translation> <translation id="5862319196656206789">Жалғанған құрылғыларды реттеу</translation> +<translation id="5862731021271217234">Барлық құрылғылардан қойындыларды пайдалану үшін синхрондау функциясын қосыңыз</translation> <translation id="5863445608433396414">Түзету мүмкіндіктерін қосу</translation> <translation id="5864195618110239517">Шектелген байланысты пайдалану</translation> <translation id="5864754048328252126">Зарядтау кезіндегі жұмыссыз режим</translation> @@ -5479,7 +5483,6 @@ <translation id="6291949900244949761">Сайт USB құрылғыларын пайдаланғысы келгенде, рұқсат сұралсын (ұсынылады)</translation> <translation id="6291953229176937411">&Іздеу жүйесінде көрсету</translation> <translation id="6292699686837272722">қойындылар орташа ен өлшеміне дейін кішірейеді</translation> -<translation id="6294610283659775533">Бірдей Google аккаунтымен кірген құрылғыларға қойынды жіберуге болады.</translation> <translation id="6294759976468837022">Автоматты сканерлеу жылдамдығы</translation> <translation id="6295158916970320988">Барлық сайттар</translation> <translation id="6295855836753816081">Сақталуда…</translation> @@ -6872,6 +6875,7 @@ <translation id="7668423670802040666"><ph name="ACCOUNT" /> аккаунтына арналған Google Құпия сөз менеджерінде</translation> <translation id="7669825497510425694">{NUM_ATTEMPTS,plural, =1{PIN коды дұрыс емес. Сізде бір мүмкіндік қалды.}other{PIN коды дұрыс емес. Сізде # мүмкіндік қалды.}}</translation> <translation id="7670434942695515800">Жүйенің тиімді жұмыс істеуі үшін, оны соңғы нұсқасына дейін жаңартыңыз. Жаңартуды аяқтау мүмкін болмаған жағдайда, файлдардың сақтық көшірмесін жасаған жөн. Жаңарту басталған кезде, Linux жүйесі өшеді. Жалғастырмас бұрын ашық тұрған файлдарды сақтаңыз. <ph name="LINK_START" />Толығырақ<ph name="LINK_END" /></translation> +<translation id="7670483791111801022">Субтитрлер</translation> <translation id="7671130400130574146">Жүйе тақырыбы жолағы мен шекараларын пайдалану</translation> <translation id="767127784612208024">Бастапқы күйге қайтару үшін түртіңіз</translation> <translation id="7672520070349703697"><ph name="HUNG_IFRAME_URL" />, <ph name="PAGE_TITLE" /> қызметінде.</translation> @@ -6984,6 +6988,7 @@ <translation id="7768526219335215384"><ph name="ORIGIN" /> домені <ph name="FOLDERNAME" /> қалтасындағы файлдарды көре алады.</translation> <translation id="7768770796815395237">Өзгерту</translation> <translation id="7768784765476638775">Select to Speak</translation> +<translation id="7769748505895274502">Жақында жабылған беттерді жию</translation> <translation id="7770406201819593386">ChromeOS Flex диагностикалық сынақтарын іске қосу.</translation> <translation id="7770450735129978837">Тінтуірдің оң жақ пернесін түрту</translation> <translation id="7770612696274572992">Сурет басқа құрылғыдан көшірілді</translation> @@ -7957,6 +7962,7 @@ <translation id="8724859055372736596">&Қалтада көрсету</translation> <translation id="8725066075913043281">Әрекетті қайталау</translation> <translation id="8725178340343806893">Таңдаулылар/Бетбелгілер</translation> +<translation id="87254326763805752">Кіру кілтін растаңыз</translation> <translation id="8726206820263995930">Серверден саясат параметрлерін алу кезіндегі қате: <ph name="CLIENT_ERROR" />.</translation> <translation id="8728351286589123703">Сіз таңдаған рұқсаттар бастапқы күйге қайтарылады.</translation> <translation id="8729133765463465108">QR кодын сканерлеу үшін камераны пайдалану</translation>
diff --git a/chrome/app/resources/generated_resources_km.xtb b/chrome/app/resources/generated_resources_km.xtb index 3092a569..12efbf4 100644 --- a/chrome/app/resources/generated_resources_km.xtb +++ b/chrome/app/resources/generated_resources_km.xtb
@@ -334,7 +334,6 @@ <translation id="1319983966058170660">ប៊ូតុងថយក្រោយទៅទំព័ររង <ph name="SUBPAGE_TITLE" /></translation> <translation id="1322046419516468189">មើល និងគ្រប់គ្រងពាក្យសម្ងាត់ដែលបានរក្សាទុកនៅក្នុង <ph name="SAVED_PASSWORDS_STORE" /> របស់អ្នក</translation> <translation id="1324106254079708331">ការពារគណនី Google ផ្ទាល់ខ្លួនរបស់អ្នកគ្រប់គ្នាដែលប្រឈមនឹងហានិភ័យនៃការវាយប្រហារតាមគោលដៅ</translation> -<translation id="1326317727527857210">ដើម្បីទទួលបានផ្ទាំងរបស់អ្នកពីឧបករណ៍ផ្សេងទៀតរបស់អ្នក សូមចូលទៅកាន់ Chrome</translation> <translation id="1327272175893960498">សំបុត្រ Kerberos</translation> <translation id="1327495825214193325">តម្រូវឱ្យមានការចាប់ផ្ដើម <ph name="DEVICE_TYPE" /> នេះឡើងវិញ ដើម្បីបើកការជួសជុល ADB។ ការបិទការជួសជុល ADB តម្រូវឱ្យកំណត់ការកំណត់ឱ្យដូចដើមឡើងវិញ។</translation> <translation id="1327794256477341646">មុខងារដែលត្រូវការទីតាំងរបស់អ្នកនឹងមិនដំណើរការទេ</translation> @@ -2441,7 +2440,6 @@ <translation id="3280243678470289153">បន្តនៅក្នុង Chrome</translation> <translation id="3281892622610078515">ឯកសារ និងកម្មវិធីដែលត្រូវបានដាក់ឱ្យនៅដាច់ពីគេ៖</translation> <translation id="3282210178675490297">កំពុងចែករំលែកផ្ទាំងជាមួយ <ph name="APP_NAME" /></translation> -<translation id="3282568296779691940">ចូលទៅ Chrome</translation> <translation id="3285322247471302225">ផ្ទាំងថ្មី</translation> <translation id="328571385944182268">រក្សាទុកពាក្យសម្ងាត់របស់អ្នក?</translation> <translation id="3288047731229977326">កម្មវិធីបន្ថែមដែលដំណើរការនៅក្នុងរបៀបអ្នកអភិវឌ្ឈន៍អាចបង្កគ្រោះថ្នាក់ដល់កុំព្យូទ័ររបស់អ្នក។ ប្រសិនបើអ្នកមិនមែនជាអ្នកអភិវឌ្ឍន៍ អ្នកគួរតែបិទដំណើរការកម្មវិធីបន្ថែមទាំងនេះដែលដំណើរការនៅក្នុងរបៀបអ្នកអភិវឌ្ឍន៍ដើម្បីឲ្យមានសុវត្ថិភាព។</translation> @@ -3315,7 +3313,6 @@ <translation id="4101352914005291489">SSID ដែលបានលាក់</translation> <translation id="4102469565336584882">លេខកូដមិនត្រឹមត្រូវ។ ការបញ្ចូលរបស់អ្នកគួរតែមានទម្រង់ LPA៖1$<smdp address>$<activation code></translation> <translation id="4102906002417106771">ចាប់ផ្ដើមឡើងវិញដើម្បីផៅវើរវាស់</translation> -<translation id="4104163789986725820">នាំចេញ...</translation> <translation id="4107048419833779140">កំណត់អត្តសញ្ញាណ និងដកឧបករណ៍ផ្ទុកចេញ។</translation> <translation id="4108314971463891922">តាមដាន</translation> <translation id="4109135793348361820">ផ្លាស់ទីផ្ទាំងទៅ <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />)</translation> @@ -5073,6 +5070,7 @@ <translation id="5860494867054883682">កំពុងអាប់ដេតឧបករណ៍របស់អ្នកទៅប៉ុស្តិ៍ <ph name="CHANNEL_NAME" /> (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">បង្ហាញឧបករណ៍ប៊ិចនៅក្នុងធ្នើនេះ</translation> <translation id="5862319196656206789">រៀបចំឧបករណ៍ដែលបានភ្ជាប់</translation> +<translation id="5862731021271217234">ដើម្បីទទួលបានផ្ទាំងរបស់អ្នកពីឧបករណ៍ផ្សេងទៀតរបស់អ្នក សូមបើកសមកាលកម្ម</translation> <translation id="5863445608433396414">បើកដំណើរការលក្ខណៈពិសេសកម្ចាត់កំហុស</translation> <translation id="5864195618110239517">ប្រើការតភ្ជាប់តាមកម្រិត</translation> <translation id="5864754048328252126">សកម្មភាពអសកម្ម ពេលកំពុងសាកថ្ម</translation> @@ -5509,7 +5507,6 @@ <translation id="6291949900244949761">សួរនៅពេលដែលទំព័រចង់ចូលប្រើឧបករណ៍ USB (បានណែនាំ)</translation> <translation id="6291953229176937411">បង្ហាញនៅក្នុងប្រអប់ស្វែងរក</translation> <translation id="6292699686837272722">ផ្ទាំងបង្រួមតាមទទឹងមធ្យម</translation> -<translation id="6294610283659775533">អ្នកអាចផ្ញើផ្ទាំងបានរវាងឧបករណ៍ ដែលបានចូលគណនី Google ដូចគ្នា</translation> <translation id="6294759976468837022">ល្បឿនស្កេនស្វ័យប្រវត្តិ</translation> <translation id="6295158916970320988">គេហទំព័រទាំងអស់</translation> <translation id="6295855836753816081">កំពុងរក្សាទុក…</translation>
diff --git a/chrome/app/resources/generated_resources_kn.xtb b/chrome/app/resources/generated_resources_kn.xtb index b66ccc9..2fc97486 100644 --- a/chrome/app/resources/generated_resources_kn.xtb +++ b/chrome/app/resources/generated_resources_kn.xtb
@@ -335,7 +335,6 @@ <translation id="1319983966058170660"><ph name="SUBPAGE_TITLE" /> ಉಪಪುಟದ ಹಿಂದೆ ಬಟನ್</translation> <translation id="1322046419516468189">ಉಳಿಸಿದ ಪಾಸ್ವರ್ಡ್ಗಳನ್ನು <ph name="SAVED_PASSWORDS_STORE" /> ನಲ್ಲಿ ವೀಕ್ಷಿಸಿ ಮತ್ತು ನಿರ್ವಹಿಸಿ</translation> <translation id="1324106254079708331">ಉದ್ದೇಶಿತ ದಾಳಿಯ ಅಪಾಯದಲ್ಲಿರುವ ಯಾವುದೇ ವೈಯಕ್ತಿಕ Google ಖಾತೆಗಳನ್ನು ರಕ್ಷಿಸುತ್ತದೆ</translation> -<translation id="1326317727527857210">ನಿಮ್ಮ ಇತರ ಸಾಧನಗಳಿಂದ ನಿಮ್ಮ ಟ್ಯಾಬ್ಗಳನ್ನು ಪಡೆದುಕೊಳ್ಳಲು, Chrome ಗೆ ಸೈನ್ ಇನ್ ಮಾಡಿ.</translation> <translation id="1327272175893960498">Kerberos ಟಿಕೆಟ್ಗಳು</translation> <translation id="1327495825214193325">ADB ಡೀಬಗ್ ಮಾಡುವಿಕೆಯನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಲು, ಈ <ph name="DEVICE_TYPE" /> ಅನ್ನು ಮರುಪ್ರಾರಂಭಿಸುವ ಅಗತ್ಯವಿದೆ. ಇದನ್ನು ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಲು, ಫ್ಯಾಕ್ಟರಿ ಸೆಟ್ಟಿಂಗ್ಗಳಿಗೆ ಮರುಹೊಂದಿಸಬೇಕಾಗುತ್ತದೆ.</translation> <translation id="1327794256477341646">ನಿಮ್ಮ ಸ್ಥಳಕ್ಕೆ ಅಗತ್ಯವಿರುವ ಫೀಚರ್ಗಳು ಕಾರ್ಯನಿರ್ವಹಿಸುವುದಿಲ್ಲ</translation> @@ -2433,7 +2432,6 @@ <translation id="3280243678470289153">Chrome ನಲ್ಲೇ ಮುಂದುವರಿಯಿರಿ</translation> <translation id="3281892622610078515">ಕ್ವಾರಂಟೈನ್ ಫೋಲ್ಡರ್ಗೆ ಸರಿಸಲಾಗುವ ಫೈಲ್ಗಳು ಮತ್ತು ಪ್ರೋಗ್ರಾಂಗಳು:</translation> <translation id="3282210178675490297"><ph name="APP_NAME" /> ಜೊತೆಗೆ ಟ್ಯಾಬ್ ಹಂಚಿಕೊಳ್ಳಲಾಗುತ್ತಿದೆ</translation> -<translation id="3282568296779691940">Chrome ಗೆ ಸೈನ್ ಇನ್ ಮಾಡಿ</translation> <translation id="3285322247471302225">ಹೊಸ &ಟ್ಯಾಬ್</translation> <translation id="328571385944182268">ನಿಮ್ಮ ಪಾಸ್ವರ್ಡ್ಗಳನ್ನು ಉಳಿಸುವುದೇ?</translation> <translation id="3288047731229977326">ಡೆವಲಪರ್ ಮೋಡ್ನಲ್ಲಿ ಚಾಲನೆಯಾಗುವ ವಿಸ್ತರಣೆಗಳು ನಿಮ್ಮ ಕಂಪ್ಯೂಟರ್ಗೆ ಹಾನಿಮಾಡಬಹುದು. ನೀವು ಡೆವಲಪರ್ ಆಗಿರದಿದ್ದರೇ, ಸುರಕ್ಷಿತವಾಗಿರಲು ಡೆವಲಪರ್ ಮೋಡ್ನಲ್ಲಿ ಈ ವಿಸ್ತರಣೆಗಳ ಚಾಲನೆಯನ್ನು ನೀವು ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಬೇಕು.</translation> @@ -3308,7 +3306,6 @@ <translation id="4101352914005291489">ಮರೆಮಾಡಲಾಗಿರುವ SSID</translation> <translation id="4102469565336584882">ಅಮಾನ್ಯ ಕೋಡ್. ನಿಮ್ಮ ನಮೂದು LPA ಫಾರ್ಮ್ಯಾಟ್ನಲ್ಲಿರಬೇಕು:1$<smdp address>$<activation code></translation> <translation id="4102906002417106771">ಪವರ್ವಾಷ್ಗೆ ಮರುಪ್ರಾರಂಭಿಸಿ</translation> -<translation id="4104163789986725820">ರ&ಫ್ತು...</translation> <translation id="4107048419833779140">ಸಂಗ್ರಹಣೆ ಸಾಧನಗಳನ್ನು ಗುರುತಿಸಿ ಮತ್ತು ತೆಗೆದುಹಾಕಿ</translation> <translation id="4108314971463891922">ಫಾಲೋ ಮಾಡಿ</translation> <translation id="4109135793348361820">ವಿಂಡೋವನ್ನು <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />) ಗೆ ಸರಿಸಿ</translation> @@ -5065,6 +5062,7 @@ <translation id="5860494867054883682">ನಿಮ್ಮ ಸಾಧನವನ್ನು <ph name="CHANNEL_NAME" /> ಚಾನಲ್ಗೆ ಅಪ್ಡೇಟ್ ಮಾಡಲಾಗುತ್ತಿದೆ (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">ಶೆಲ್ಫ್ನಲ್ಲಿ ಸ್ಟೈಲಸ್ ಪರಿಕರಗಳನ್ನು ತೋರಿಸಿ</translation> <translation id="5862319196656206789">ಕನೆಕ್ಟ್ ಮಾಡಿದ ಸಾಧನಗಳನ್ನು ಸೆಟಪ್ ಮಾಡಿ</translation> +<translation id="5862731021271217234">ನಿಮ್ಮ ಇತರ ಸಾಧನಗಳಿಂದ ನಿಮ್ಮ ಟ್ಯಾಬ್ಗಳನ್ನು ಪಡೆದುಕೊಳ್ಳಲು, ಸಿಂಕ್ ಆನ್ ಮಾಡಿ</translation> <translation id="5863445608433396414">ಡೀಬಗ್ ವೈಶಿಷ್ಟ್ಯಗಳನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಿ</translation> <translation id="5864195618110239517">ಮಾಪನ ಮಾಡಿದ ಸಂಪರ್ಕವನ್ನು ಬಳಸಿ</translation> <translation id="5864754048328252126">ಚಾರ್ಜ್ ಆಗುವಾಗ ತಟಸ್ಥ ಸ್ಥಿತಿ</translation> @@ -5501,7 +5499,6 @@ <translation id="6291949900244949761">ಒಂದು ಸೈಟ್ USB ಸಾಧನಗಳನ್ನು ಪ್ರವೇಶಿಸಲು ಬಯಸಿದಾಗ ಕೇಳಿ (ಶಿಫಾರಸು ಮಾಡಲಾಗಿರುವುದು)</translation> <translation id="6291953229176937411">ಫೈಂಡರ್ನಲ್ಲಿ &ತೋರಿಸಿ</translation> <translation id="6292699686837272722">ಟ್ಯಾಬ್ಗಳು ಮಧ್ಯಮ ಅಗಲಕ್ಕೆ ಕುಗ್ಗುತ್ತವೆ</translation> -<translation id="6294610283659775533">ಒಂದೇ Google ಖಾತೆಯನ್ನು ಬಳಸಿಕೊಂಡು ಸೈನ್ ಇನ್ ಮಾಡಿರುವ ಸಾಧನಗಳ ನಡುವೆ ನೀವು ಟ್ಯಾಬ್ಗಳನ್ನು ಕಳುಹಿಸಬಹುದು</translation> <translation id="6294759976468837022">ಸ್ವಯಂ-ಸ್ಕ್ಯಾನ್ ವೇಗ</translation> <translation id="6295158916970320988">ಎಲ್ಲಾ ಸೈಟ್ಗಳು</translation> <translation id="6295855836753816081">ಉಳಿಸಲಾಗುತ್ತಿದೆ...</translation>
diff --git a/chrome/app/resources/generated_resources_ko.xtb b/chrome/app/resources/generated_resources_ko.xtb index 13413dd..c127da9 100644 --- a/chrome/app/resources/generated_resources_ko.xtb +++ b/chrome/app/resources/generated_resources_ko.xtb
@@ -334,7 +334,6 @@ <translation id="1319983966058170660"><ph name="SUBPAGE_TITLE" /> 하위 페이지 뒤로 버튼</translation> <translation id="1322046419516468189"><ph name="SAVED_PASSWORDS_STORE" />에 저장된 비밀번호 보기 및 관리</translation> <translation id="1324106254079708331">개인 Google 계정을 표적 공격으로부터 보호합니다.</translation> -<translation id="1326317727527857210">다른 기기에서 탭을 가져오려면 Chrome에 로그인하세요.</translation> <translation id="1327272175893960498">Kerberos 티켓</translation> <translation id="1327495825214193325">ADB 디버깅을 사용 설정하려면 이 <ph name="DEVICE_TYPE" /> 기기를 다시 시작해야 합니다. ADB 디버깅을 사용 중지하려면 초기화해야 합니다.</translation> <translation id="1327794256477341646">위치가 필요한 기능이 작동하지 않음</translation> @@ -2442,7 +2441,6 @@ <translation id="3280243678470289153">Chrome 사용 계속하기</translation> <translation id="3281892622610078515">스팸 격리 저장소에 보관할 파일 및 프로그램:</translation> <translation id="3282210178675490297"><ph name="APP_NAME" /> 앱과 탭을 공유하는 중</translation> -<translation id="3282568296779691940">Chrome에 로그인</translation> <translation id="3285322247471302225">새 탭(&T)</translation> <translation id="328571385944182268">비밀번호를 저장하시겠습니까?</translation> <translation id="3288047731229977326">개발자 모드로 실행 중인 확장 프로그램은 컴퓨터에 해를 줄 수 있습니다. 개발자가 아닌 경우 컴퓨터를 안전하게 사용하려면 개발자 모드로 실행 중인 확장 프로그램을 사용 중지해야 합니다.</translation> @@ -3314,7 +3312,6 @@ <translation id="4101352914005291489">숨겨진 SSID</translation> <translation id="4102469565336584882">잘못된 코드입니다. LPA:1$<smdp address>$<activation code> 형식이어야 합니다.</translation> <translation id="4102906002417106771">다시 시작하여 파워워시</translation> -<translation id="4104163789986725820">내보내기(&X)...</translation> <translation id="4107048419833779140">외부 저장장치 식별 및 제거</translation> <translation id="4108314971463891922">팔로우</translation> <translation id="4109135793348361820">창을 <ph name="USER_NAME" />(<ph name="USER_EMAIL" />)님에게로 이동</translation> @@ -4124,6 +4121,7 @@ <translation id="4900392736118574277">시작 페이지가 <ph name="URL" />(으)로 변경되었습니다.</translation> <translation id="490051679772058907"><ph name="REFRESH_RATE" />Hz - 인터레이스됨</translation> <translation id="4900652253009739885">'선택'에 할당된 스위치가 1개이므로 삭제할 수 없습니다. <ph name="RESPONSE" />하려면 아무 키나 누르세요.</translation> +<translation id="4901154724271753917">최근에 닫은 탭 펼치기</translation> <translation id="4901309472892185668"><ph name="EXPERIMENT_NAME" /> 실험의 상태를 선택하세요.</translation> <translation id="49027928311173603">서버에서 다운로드한 정책이 잘못됨: <ph name="VALIDATION_ERROR" />.</translation> <translation id="4906490889887219338">네트워크 파일 공유를 설정하거나 관리합니다. <ph name="LINK_BEGIN" />자세히 알아보기<ph name="LINK_END" /></translation> @@ -5070,6 +5068,7 @@ <translation id="5860494867054883682">기기를 <ph name="CHANNEL_NAME" /> 채널로 업데이트 중(<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">실행기에 스타일러스 도구 표시</translation> <translation id="5862319196656206789">연결된 기기 설정</translation> +<translation id="5862731021271217234">다른 기기에서 탭을 가져오려면 동기화를 사용 설정하세요.</translation> <translation id="5863445608433396414">디버깅 기능 사용</translation> <translation id="5864195618110239517">종량제 연결 사용</translation> <translation id="5864754048328252126">충전 시 유휴 작업</translation> @@ -5506,7 +5505,6 @@ <translation id="6291949900244949761">사이트에서 USB 기기에 액세스하려고 할 때 확인(권장)</translation> <translation id="6291953229176937411">Finder에서 보기(&S)</translation> <translation id="6292699686837272722">탭이 중간 폭으로 줄어듦</translation> -<translation id="6294610283659775533">동일한 Google 계정으로 로그인한 기기 간에 탭을 보낼 수 있습니다.</translation> <translation id="6294759976468837022">자동 스캔 속도</translation> <translation id="6295158916970320988">모든 사이트</translation> <translation id="6295855836753816081">저장 중...</translation> @@ -7012,6 +7010,7 @@ <translation id="7768526219335215384"><ph name="ORIGIN" />에서 <ph name="FOLDERNAME" />에 있는 파일을 볼 수 있게 됩니다.</translation> <translation id="7768770796815395237">변경</translation> <translation id="7768784765476638775">텍스트 읽어주기</translation> +<translation id="7769748505895274502">최근에 닫은 탭 접기</translation> <translation id="7770406201819593386">ChromeOS Flex 진단 테스트를 실행합니다.</translation> <translation id="7770450735129978837">마우스 오른쪽 버튼 클릭</translation> <translation id="7770612696274572992">다른 기기에서 이미지가 복사됨</translation>
diff --git a/chrome/app/resources/generated_resources_ky.xtb b/chrome/app/resources/generated_resources_ky.xtb index 5de2f49..1455c09f 100644 --- a/chrome/app/resources/generated_resources_ky.xtb +++ b/chrome/app/resources/generated_resources_ky.xtb
@@ -334,7 +334,6 @@ <translation id="1319983966058170660">Мурунку <ph name="SUBPAGE_TITLE" /> барагына кайтуу баскычы</translation> <translation id="1322046419516468189">Сакталган сырсөздөрдү <ph name="SAVED_PASSWORDS_STORE" /> дарегинен көрүп, башкарыңыз</translation> <translation id="1324106254079708331">Жеке Google аккаунттарын максаттуу чабуулдардан коргойт</translation> -<translation id="1326317727527857210">Өтмөктөрүңүздү башка түзмөктөрүңүздөн алуу үчүн Chrome'го кириңиз.</translation> <translation id="1327272175893960498">Kerberos билеттери</translation> <translation id="1327495825214193325">ADB аркылуу мүчүлүштүктөрдү оңдоону иштетүү үчүн бул <ph name="DEVICE_TYPE" /> түзмөгүн өчүрүп, кайра күйгүзүү талап кылынат. Аны өчүрүү үчүн түзмөктү баштапкы абалга кайтаруу керек.</translation> <translation id="1327794256477341646">Жайгашкан жериңизди колдонгон функциялар иштебейт</translation> @@ -2441,7 +2440,6 @@ <translation id="3280243678470289153">Chrome серепчисинде калуу</translation> <translation id="3281892622610078515">Карантиндеги файлдар жана программалар:</translation> <translation id="3282210178675490297">Өтмөк <ph name="APP_NAME" /> менен бөлүшүлүүдө</translation> -<translation id="3282568296779691940">Chrome'го кириңиз</translation> <translation id="3285322247471302225">Жаңы &өтмөк</translation> <translation id="328571385944182268">Сырсөздөрүңүз сакталсынбы?</translation> <translation id="3288047731229977326">Иштеп чыгуучунун режиминде иштеп жаткан кеңейтүүлөр компьютериңизге зыян келтирип коюшу мүмкүн. Эгер сиз иштеп чыгуучу эмес болсоңуз, коопсуздук максатында иштеп чыгуучу режиминде иштеп жаткан кеңейтүүлөрдү өчүрүп коюңуз.</translation> @@ -3315,7 +3313,6 @@ <translation id="4101352914005291489">Жашырылган SSID</translation> <translation id="4102469565336584882">Код туура эмес. Коддо LPA форматы болушу керек:1$<smdp address>$<activation code></translation> <translation id="4102906002417106771">Жууп салуу үчүн өчүрүп күйгүзүү</translation> -<translation id="4104163789986725820">Э&кспорттоо…</translation> <translation id="4107048419833779140">Сактагыч түзмөктөрү аныкталып, чыгарылсын</translation> <translation id="4108314971463891922">Жазылуу</translation> <translation id="4109135793348361820">Терезени буга <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />) жылдыруу</translation> @@ -4125,6 +4122,7 @@ <translation id="4900392736118574277">Баштоо бетиңиз <ph name="URL" /> дарегине өзгөртүлдү.</translation> <translation id="490051679772058907"><ph name="REFRESH_RATE" /> Герц – бириктирилген</translation> <translation id="4900652253009739885">"Тандоо" баскычы үчүн дайындалган жалгыз которгуч өчүрүлгөн жок. <ph name="RESPONSE" /> үчүн бир баскычты басыңыз.</translation> +<translation id="4901154724271753917">Жакында жабылгандарды жайып көрсөтүү</translation> <translation id="4901309472892185668"><ph name="EXPERIMENT_NAME" /> тажрыйбасы үчүн абалды тандаңыз.</translation> <translation id="49027928311173603">Серверден жүктөлүп алынган саясат жараксыз: <ph name="VALIDATION_ERROR" />.</translation> <translation id="4906490889887219338">Тармактын жалпы файлдарын жөндөңүз же башкарыңыз. <ph name="LINK_BEGIN" />Кеңири маалымат<ph name="LINK_END" /></translation> @@ -5071,6 +5069,7 @@ <translation id="5860494867054883682">Түзмөгүңүз <ph name="CHANNEL_NAME" /> каналына которулууда (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">Текчеде стилус куралдары көрүнсүн</translation> <translation id="5862319196656206789">Байланыштырылган түзмөктөрдү жөндөө</translation> +<translation id="5862731021271217234">Өтмөктөрүңүздү башка түзмөктөрүңүздөн алуу үчүн шайкештирүүнү күйгүзүңүз</translation> <translation id="5863445608433396414">Мүчүлүштүктөрдү аныктоо өзгөчөлүктөрүн иштетүү</translation> <translation id="5864195618110239517">Тарифтелген Интернет байланышты колдонуу</translation> <translation id="5864754048328252126">Кубатталып жатканда эч кандай аракет аткарылбасын</translation> @@ -5507,7 +5506,6 @@ <translation id="6291949900244949761">Сайт USB түзмөктөрүн колдонгону жатканда уруксат суралсын (сунушталат)</translation> <translation id="6291953229176937411">&Тапкычта көрсөтүү</translation> <translation id="6292699686837272722">Өтмөктөр орточо кеңдикке чейин кичирейет</translation> -<translation id="6294610283659775533">Бир Google аккаунту менен кирип турган түзмөктөрдө өтмөктөрдү жөнөтсөңүз болот</translation> <translation id="6294759976468837022">Авто-скандоо ылдамдыгы</translation> <translation id="6295158916970320988">Бардык сайттар</translation> <translation id="6295855836753816081">Сакталууда…</translation> @@ -7013,6 +7011,7 @@ <translation id="7768526219335215384"><ph name="ORIGIN" /> <ph name="FOLDERNAME" /> папкасындагы файлдарды түзөтө алат</translation> <translation id="7768770796815395237">Өзгөртүү</translation> <translation id="7768784765476638775">Басып туруп угуу</translation> +<translation id="7769748505895274502">Жакында жабылгандарды жыйыштыруу</translation> <translation id="7770406201819593386">ChromeOS Flex тутумундагы мүчүлүштүктөрдү аныктоо сынактарын аткаруу.</translation> <translation id="7770450735129978837">Чычкандын оң баскычын чыкылдатуу</translation> <translation id="7770612696274572992">Башка түзмөктөн көчүрүлгөн сүрөт</translation>
diff --git a/chrome/app/resources/generated_resources_lo.xtb b/chrome/app/resources/generated_resources_lo.xtb index a06eada..6bbcb14 100644 --- a/chrome/app/resources/generated_resources_lo.xtb +++ b/chrome/app/resources/generated_resources_lo.xtb
@@ -334,7 +334,6 @@ <translation id="1319983966058170660">ປຸ່ມກັບຄືນຂອງໜ້າຍ່ອຍ <ph name="SUBPAGE_TITLE" /></translation> <translation id="1322046419516468189">ເບິ່ງ ແລະ ຈັດການລະຫັດຜ່ານທີ່ບັນທຶກໄວ້ໃນ <ph name="SAVED_PASSWORDS_STORE" /> ຂອງທ່ານ</translation> <translation id="1324106254079708331">ປົກປ້ອງບັນຊີ Google ສ່ວນຕົວຂອງທຸກຄົນທີ່ມີຄວາມສ່ຽງຕໍ່ກັບການໂຈມຕີແບບມີເປົ້າໝາຍ</translation> -<translation id="1326317727527857210">ເພື່ອໂຫຼດແຖບຂອງທ່ານຈາກອຸປະກອນອື່ນ, ໃຫ້ເຂົ້າສູ່ລະບົບ Chrome ກ່ອນ.</translation> <translation id="1327272175893960498">ປີ້ Kerberos</translation> <translation id="1327495825214193325">ເພື່ອເປີດນຳໃຊ້ການດີບັກ ADB, ຈຳເປັນຕ້ອງຣີສະຕາດ <ph name="DEVICE_TYPE" /> ນີ້. ການປິດນຳໃຊ້ມັນຈຳເປັນຕ້ອງຣີເຊັດເປັນການຕັ້ງຄ່າຈາກໂຮງງານ.</translation> <translation id="1327794256477341646">ຄຸນສົມບັດທີ່ຕ້ອງການໃຊ້ສະຖານທີ່ຈະໃຊ້ບໍ່ໄດ້</translation> @@ -361,6 +360,7 @@ <translation id="1347256498747320987">ຕິດຕັ້ງການອັບເດດ ແລະ ແອັບ. ໂດຍການສືບຕໍ່, ແມ່ນຖືວ່າທ່ານເຫັນດີວ່າອຸປະກອນນີ້ອາດຈະດາວໂຫຼດ ແລະ ຕິດຕັ້ງການອັບເດດ ແລະ ແອັບໂດຍອັດຕະໂນມັດຈາກ Google, ຜູ້ໃຫ້ບໍລິການຂອງທ່ານ ແລະ ຜູ້ຜະລິດອຸປະກອນຂອງທ່ານໄດ້ເຊັ່ນກັນ, ໂດຍເປັນໄປໄດ້ວ່າອາດຈະໃຊ້ຂໍ້ມູນມືຖື. ບາງແອັບເຫຼົ່ານີ້ອາດມີການຊື້ໃນແອັບ. <ph name="BEGIN_LINK1" />ສຶກສາເພີ່ມເຕີມ<ph name="END_LINK1" /></translation> <translation id="1347512539447549782">ບ່ອນຈັດເກັບຂໍ້ມູນ Linux</translation> <translation id="1347975661240122359">ການອັບເດດຈະເລີ່ມຕົ້ນເມື່ອແບັດເຕີຣີຮອດ <ph name="BATTERY_LEVEL" />%.</translation> +<translation id="1348966090521113558">ການຕັ້ງຄ່າການຊ່ວຍເຂົ້າເຖິງເມົ້າ</translation> <translation id="1353275871123211385">ເພື່ອໃຊ້ການຄວບຄຸມຂອງພໍ່ແມ່ ເຊັ່ນ: ການອະນຸມັດແອັບ ແລະ ການຈຳກັດເວລາໜ້າຈໍ, ເດັກນ້ອຍຈະຕ້ອງມີບັນຊີ Google ທີ່ຈັດການໂດຍພໍ່ແມ່ກ່ອນ. ສາມາດເພີ່ມບັນຊີໂຮງຮຽນໃນພາຍຫຼັງໄດ້ສຳລັບເຄື່ອງມືຕ່າງໆ ເຊັ່ນ: Google ຫ້ອງຮຽນ.</translation> <translation id="135389172849514421">ໃຊ້ໄດ້ແບບອອບລາຍ</translation> <translation id="1353980523955420967">ບໍ່ສາມາດຊອກເຫັນ PPD. ກະລຸນາກວດໃຫ້ແນ່ໃຈວ່າ Chromebook ຂອງທ່ານອອນລາຍຢູ່ ແລະ ລອງອີກຄັ້ງ.</translation> @@ -1797,6 +1797,7 @@ <translation id="2653659639078652383">ສົ່ງ</translation> <translation id="265390580714150011">ຄ່າບ່ອນໃສ່ຂໍ້ມູນ</translation> <translation id="2654553774144920065">ຄຳຂໍພິມ</translation> +<translation id="2657612187216250073">ການຕັ້ງຄ່າການຊ່ວຍເຂົ້າເຖິງລູກສອນຊີ້</translation> <translation id="2658941648214598230">ສະແດງເນື້ອຫາຕົ້ນສະບັບບໍ?</translation> <translation id="2659381484350128933"><ph name="FOOTNOTE_POINTER" />ຄຸນສົມບັດແຕກຕ່າງກັນຕາມແຕ່ລະອຸປະກອນ</translation> <translation id="2659971421398561408">ການປັບຂະໜາດດິສ Crostini</translation> @@ -1961,6 +1962,7 @@ <translation id="2801954693771979815">ຂະໜາດໜ້າຈໍ</translation> <translation id="2802557211515765772">ບໍ່ມີເຄື່ອງພິມທີ່ມີການຈັດການ.</translation> <translation id="2803313416453193357">ເປີດໂຟລເດີ</translation> +<translation id="2803719750464280163">ກະລຸນາຢືນຢັນວ່າ <ph name="PASSKEY" /> ແມ່ນກະແຈຜ່ານທີ່ໄດ້ສະແດງຢູ່ອຸປະກອນ Bluetooth <ph name="DEVICE" />.</translation> <translation id="2804043232879091219">ບໍ່ສາມາດເປີດໂປຣແກຣມທ່ອງເວັບສຳຮອງໄດ້</translation> <translation id="2804667941345577550">ທ່ານຈະຖືກນຳອອກຈາກລະບົບເວັບໄຊນີ້, ຮວມທັງໃນແຖບທີ່ເປີດຢູ່</translation> <translation id="2804680522274557040">ປິດກ້ອງຖ່າຍຮູບແລ້ວ</translation> @@ -2437,7 +2439,6 @@ <translation id="3280243678470289153">ສືບຕໍ່ຢູ່ໃນ Chrome</translation> <translation id="3281892622610078515">ໄຟລ໌ ແລະ ໂປຣແກຣມທີ່ຈະຖືກກັກໄວ້:</translation> <translation id="3282210178675490297">ກຳລັງແບ່ງປັນແຖບກັບo <ph name="APP_NAME" /></translation> -<translation id="3282568296779691940">ລົງຊື່ເຂົ້າໃຊ້ Chrome</translation> <translation id="3285322247471302225">ແຖບໃໝ່</translation> <translation id="328571385944182268">ບັນທຶກລະຫັດຜ່ານຂອງທ່ານໄວ້ບໍ?</translation> <translation id="3288047731229977326">ສ່ວນຂະຫຍາຍທີ່ແລ່ນຢູ່ໃນໂໝດຜູ້ພັດທະນາສາມາດເຮັດໃຫ້ຄອມພິວເຕີຂອງທ່ານເສຍຫາຍໄດ້. ຖ້າທ່ານບໍ່ແມ່ນຜູ້ພັດທະນາ, ທ່ານຄວນຈະປິດໃຊ້ງານສ່ວນຂະຫຍາຍເຫຼົ່ານີ້ທີ່ແລ່ນຢູ່ໃນໂໝດຜູ້ພັດທະນາ ເືພ່ອໃຫ້ປອດໄພ.</translation> @@ -2877,6 +2878,7 @@ <translation id="370649949373421643">ເປີດໃຊ້ງານ Wi-Fi</translation> <translation id="370665806235115550">ກໍາລັງໂຫຼດ ...</translation> <translation id="3707163604290651814">ໃນປັດຈຸບັນເຂົ້າສູ່ລະບົບເປັນ <ph name="NAME" /></translation> +<translation id="3708295717182051206">ຄຳບັນຍາຍ</translation> <translation id="3708684582558000260">ບໍ່ອະນຸຍາດໃຫ້ເວັບໄຊທີ່ປິດໄປແລ້ວສາມາດສົ່ງ ຫຼື ຮັບຂໍ້ມູນໃຫ້ແລ້ວໄດ້</translation> <translation id="3709244229496787112">ບຣາວເຊີໄດ້ປິດລົງກ່ອນທີ່ຈະດາວໂຫລດໄດ້ສໍາເລັດ.</translation> <translation id="371174301504454251">ເພື່ອປົກປ້ອງຄວາມເປັນສ່ວນຕົວຂອງທ່ານ, ພວກເຮົາຈະລຶບເວັບໄຊອອກຈາກລາຍຊື່ທີ່ເກົ່າກວ່າ 4 ອາທິດໂດຍອັດຕະໂນມັດ. ເວັບໄຊທີ່ທ່ານເຂົ້າອາດປາກົດຢູ່ລາຍຊື່ຄືນໃໝ່. ຫຼື ທ່ານສາມາດລຶບເວັບໄຊໃດໜຶ່ງອອກໄດ້ຫາກທ່ານບໍ່ຕ້ອງການໃຫ້ເວັບໄຊນັ້ນກຳນົດຄວາມສົນໃຈໃຫ້ທ່ານອີກ.</translation> @@ -3310,7 +3312,6 @@ <translation id="4101352914005291489">SSID ທີ່ຖືກເຊື່ອງໄວ້</translation> <translation id="4102469565336584882">ລະຫັດບໍ່ຖືກຕ້ອງ. ຂໍ້ມູນຂອງທ່ານຄວນມີຮູບແບບ LPA:1$<smdp address>$<activation code></translation> <translation id="4102906002417106771">ຣີສະຕາດ Powerwash</translation> -<translation id="4104163789986725820">ສົ່ງອອກ...</translation> <translation id="4107048419833779140">ລະບຸ ແລະ ປະຕິເສດອຸປະກອນເກັບຂໍ້ມູນ</translation> <translation id="4108314971463891922">ຕິດຕາມ</translation> <translation id="4109135793348361820">ຍ້າຍໜ້າຕ່າງໄປຫາ <ph name="USER_NAME" /> ( <ph name="USER_EMAIL" /> )</translation> @@ -3960,6 +3961,7 @@ <translation id="475088594373173692">ຜູ້ໃຊ້ທໍາອິດ</translation> <translation id="4756378406049221019">ຢຸດ/ໂຫຼດຄືນໃໝ່</translation> <translation id="4756388243121344051">ປະຫວັດ</translation> +<translation id="4756671452988984333">ຂໍ້ຄວາມສຳລັບສຽງ</translation> <translation id="4759202969060787081">ບໍ່ເປີດ</translation> <translation id="4759238208242260848">ດາວໂຫຼດ</translation> <translation id="4761104368405085019">ໃຊ້ໄມໂຄຣໂຟນຂອງທ່ານ</translation> @@ -5064,6 +5066,7 @@ <translation id="5860494867054883682">ກຳລັງອັບເດດອຸປະກອນຂອງທ່ານເປັນຊ່ອງ <ph name="CHANNEL_NAME" /> (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">ສະແດງເຄື່ອງມືປາຍປາກກາໃນຖ້ານເຄື່ອງມື</translation> <translation id="5862319196656206789">ຕັ້ງຄ່າອຸປະກອນທີ່ເຊື່ອມຕໍ່</translation> +<translation id="5862731021271217234">ເພື່ອໂຫຼດແຖບຂອງທ່ານຈາກອຸປະກອນອື່ນ, ກະລຸນາເປີດການຊິ້ງຂໍ້ມູນກ່ອນ</translation> <translation id="5863445608433396414">ເປີດໃຊ້ງານຄຸນສົມບັດແກ້ໄຂບັນຫາ</translation> <translation id="5864195618110239517">ໃຊ້ການເຊື່ອມຕໍ່ແບບວັດແທກປະລິມານອິນເຕີເນັດ</translation> <translation id="5864754048328252126">ການດຳເນີນການເວລາບໍ່ນຳໃຊ້ເຄື່ອງໃນຂະນະທີ່ສາກ</translation> @@ -5500,7 +5503,6 @@ <translation id="6291949900244949761">ຖາມເມື່ອເວັບໄຊໃດໜຶ່ງຕ້ອງການເຂົ້າເຖິງອຸປະກອນ USB (ແນະນຳ)</translation> <translation id="6291953229176937411">ສະແດງຢູ່ໃນຕົວຊອກຫາ</translation> <translation id="6292699686837272722">ຫຍໍ້ແຖບເປັນຄວາມກວ້າງຂະໜາດກາງ</translation> -<translation id="6294610283659775533">ທ່ານສາມາດສົ່ງແຖບຕ່າງໆລະຫວ່າງອຸປະກອນທີ່ເຂົ້າສູ່ລະບົບດ້ວຍບັນຊີ Google ດຽວກັນໄດ້</translation> <translation id="6294759976468837022">ຄວາມໄວສະແກນອັດຕະໂນມັດ</translation> <translation id="6295158916970320988">ທຸກເວັບໄຊທ໌</translation> <translation id="6295855836753816081">ກໍາລັງບັນທຶກ...</translation> @@ -6893,6 +6895,7 @@ <translation id="7668423670802040666">ໃນຕົວຈັດການລະຫັດຜ່ານ Google ສຳລັບ <ph name="ACCOUNT" /></translation> <translation id="7669825497510425694">{NUM_ATTEMPTS,plural, =1{PIN ບໍ່ຖືກຕ້ອງ. ທ່ານຍັງເຫຼືອຄວາມພະຍາຍາມອີກໜຶ່ງຄັ້ງ.}other{PIN ບໍ່ຖືກຕ້ອງ. ທ່ານຍັງເຫຼືອຄວາມພະຍາຍາມອີກ # ຄັ້ງ.}}</translation> <translation id="7670434942695515800">ເພື່ອໃຫ້ໄດ້ປະສິດທິພາບທີ່ດີທີ່ສຸດ, ກະລຸນາອັບເກຣດເປັນເວີຊັນຫຼ້າສຸດ. ຂໍແນະນຳໃຫ້ສຳຮອງຂໍ້ມູນໄຟລ໌ຂອງທ່ານໄວ້ໃນກໍລະນີທີ່ການອັບເກຣດບໍ່ສຳເລັດ. ເມື່ອເລີ່ມອັບເກຣດແລ້ວ, Linux ຈະປິດເຄື່ອງ. ກະລຸນາບັນທຶກໄຟລ໌ທີ່ເປີດໄວ້ກ່ອນສືບຕໍ່. <ph name="LINK_START" />ສຶກສາເພີ່ມເຕີມ<ph name="LINK_END" /></translation> +<translation id="7670483791111801022">ຄຳແປ</translation> <translation id="7671130400130574146">ໃຊ້ແຖບຫົວຂໍ້ລະບົບ ແລະເຂດແດນ</translation> <translation id="767127784612208024">ສຳຜັດເພື່ອຢືນຢັນການຣີເຊັດ</translation> <translation id="7672520070349703697"><ph name="HUNG_IFRAME_URL" />, ໃນ <ph name="PAGE_TITLE" />.</translation> @@ -7978,6 +7981,7 @@ <translation id="8724859055372736596">ສະແດງຢູ່ໃນໂຟລເດີ</translation> <translation id="8725066075913043281">ລອງໃໝ່ອີກ</translation> <translation id="8725178340343806893">ລາຍການທີ່ມັກ/ບຸກມາກ</translation> +<translation id="87254326763805752">ຢືນຢັນກະແຈຜ່ານ</translation> <translation id="8726206820263995930">ຄວາມຜິດພາດເມື່ອໄປເອົາການຕັ້ງຄ່ານະໂຍບາຍຈາກເຊີບເວີ: <ph name="CLIENT_ERROR" />.</translation> <translation id="8728351286589123703">ການອະນຸຍາດທີ່ທ່ານເລືອກຈະຖືກຣີເຊັດ</translation> <translation id="8729133765463465108">ໃຊ້ກ້ອງຖ່າຍຮູບເພື່ອສະແກນລະຫັດ QR</translation>
diff --git a/chrome/app/resources/generated_resources_lt.xtb b/chrome/app/resources/generated_resources_lt.xtb index 8d55224e..cdec1de 100644 --- a/chrome/app/resources/generated_resources_lt.xtb +++ b/chrome/app/resources/generated_resources_lt.xtb
@@ -337,7 +337,6 @@ <translation id="1319983966058170660">Papildomo puslapio „<ph name="SUBPAGE_TITLE" />“ mygtukas „Atgal“</translation> <translation id="1322046419516468189">Peržiūrėkite ir tvarkykite išsaugotus slaptažodžius <ph name="SAVED_PASSWORDS_STORE" /></translation> <translation id="1324106254079708331">Saugomos visų naudotojų, kuriems kyla tikslinių atakų pavojus, asmeninės „Google“ paskyros</translation> -<translation id="1326317727527857210">Prisijunkite prie „Chrome“, kad pasiektumėte skirtukus iš kitų įrenginių.</translation> <translation id="1327272175893960498">„Kerberos“ bilietai</translation> <translation id="1327495825214193325">Jei norite įgalinti ADB derinimą, turite iš naujo paleisti šį „<ph name="DEVICE_TYPE" />“. Išjungus reikia iš naujo nustatyti gamyklinius nustatymus.</translation> <translation id="1327794256477341646">Funkcijos, kurioms reikalinga jūsų vietovės informacija, neveiks</translation> @@ -2444,7 +2443,6 @@ <translation id="3280243678470289153">Toliau naršyti „Chrome“</translation> <translation id="3281892622610078515">Failas ir programos, kurie bus izoliuoti:</translation> <translation id="3282210178675490297">Bendrinamas skirtukas su „<ph name="APP_NAME" />“</translation> -<translation id="3282568296779691940">Prisijungti prie „Chrome“</translation> <translation id="3285322247471302225">Naujas &skirtukas</translation> <translation id="328571385944182268">Išsaugoti slaptažodžius?</translation> <translation id="3288047731229977326">Kūrėjo režimu veikiantys plėtiniai gali padaryti žalos kompiuteryje. Jei nesate kūrėjai, turėtumėte išjungti šių plėtinių veikimą kūrėjo režimu, kad išliktumėte saugūs.</translation> @@ -3318,7 +3316,6 @@ <translation id="4101352914005291489">Paslėptas SSID</translation> <translation id="4102469565336584882">Netinkamas kodas. Turite įvesti LPA formatu:1$<smdp address>$<activation code></translation> <translation id="4102906002417106771">Paleisti iš naujo, kad būtų paleista „Powerwash“</translation> -<translation id="4104163789986725820">Eksportuoti...</translation> <translation id="4107048419833779140">Identifikuoti ir pašalinti saugyklos įrenginius</translation> <translation id="4108314971463891922">Stebėti</translation> <translation id="4109135793348361820">Perkelti langą <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />)</translation> @@ -5076,6 +5073,7 @@ <translation id="5860494867054883682">Įrenginys atnaujinamas į kanalą „<ph name="CHANNEL_NAME" />“ (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">Rodyti rašiklio įrankius lentynoje</translation> <translation id="5862319196656206789">Nustatyti susietus įrenginius</translation> +<translation id="5862731021271217234">Jei norite pasiekti skirtukus iš kitų įrenginių, įjunkite sinchronizavimą</translation> <translation id="5863445608433396414">Įgalinti derinimo funkcijas</translation> <translation id="5864195618110239517">Naudoti matuojamą ryšį</translation> <translation id="5864754048328252126">Neaktyvus įkraunant</translation> @@ -5512,7 +5510,6 @@ <translation id="6291949900244949761">Paklausti, kai svetainė nori pasiekti USB įrenginius (rekomenduojama)</translation> <translation id="6291953229176937411">&Rodyti ieškojimo priemonėje</translation> <translation id="6292699686837272722">Skirtukai sumažinami iki vidutinio pločio</translation> -<translation id="6294610283659775533">Galite siųsti skirtukus iš vieno įrenginio į kitą, kuriuose prisijungta prie tos pačios „Google“ paskyros</translation> <translation id="6294759976468837022">Automatinio nuskaitymo sparta</translation> <translation id="6295158916970320988">Visos svetainės</translation> <translation id="6295855836753816081">Išsaugoma...</translation> @@ -5942,6 +5939,7 @@ <translation id="6709133671862442373">Naujienos</translation> <translation id="6709357832553498500">Prisijungti naudojant „<ph name="EXTENSIONNAME" />“</translation> <translation id="6710213216561001401">Ankstesnė</translation> +<translation id="6710394144992407503">Tikrinkite, ar nėra rašybos klaidų, kai įvedate tekstą tinklalapiuose</translation> <translation id="6711146141291425900">Atsisiuntimams skirtos „<ph name="WEB_DRIVE" />“ paskyros susiejimas</translation> <translation id="6712943853047024245">Jau išsaugojote <ph name="WEBSITE" /> slaptažodį su šiuo naudotojo vardu</translation> <translation id="6713233729292711163">Pridėti darbo profilį</translation> @@ -6563,6 +6561,7 @@ <translation id="7340757554212515731">Automatiškai siunčiamos strigčių ataskaitos ir diagnostikos bei naudojimo duomenys į sistemą „Google“</translation> <translation id="7341834142292923918">Nori gauti prieigą prie šios svetainės</translation> <translation id="7343372807593926528">Prieš išsiųsdami atsiliepimą, kuo išsamiau apibūdinkite problemą.</translation> +<translation id="7344585835349671209">Tvarkykite HTTPS / SSL sertifikatus įrenginyje</translation> <translation id="7345706641791090287">Patvirtinkite slaptažodį</translation> <translation id="7346909386216857016">Gerai, supratau</translation> <translation id="7347452120014970266">Bus išvalyti visi <ph name="ORIGIN_NAME" /> ir įdiegtų programų saugomi duomenys ir slapukai</translation> @@ -6692,6 +6691,7 @@ <translation id="7460045493116006516">Dabartinė jūsų įdiegta tema</translation> <translation id="7461924472993315131">Prisegti</translation> <translation id="746216226901520237">Kitą kartą telefonu galėsite atrakinti „<ph name="DEVICE_TYPE" />“. Funkciją „Smart Lock“ galite išjungti „Nustatymų“ skiltyje.</translation> +<translation id="7464153996453281700">Komponentas jau atnaujintas</translation> <translation id="7464637891177137294">Išsaugokite „Google“ paskyroje, <ph name="ACCOUNT" /></translation> <translation id="7465522323587461835">{NUM_OPEN_TABS,plural, =1{# atidarytas skirtukas, paspauskite perjungdami skirtuko juostelę}one{# atidarytas skirtukas, paspauskite perjungdami skirtuko juostelę}few{# atidaryti skirtukai, paspauskite perjungdami skirtuko juostelę}many{# atidaryto skirtuko, paspauskite perjungdami skirtuko juostelę}other{# atidarytų skirtukų, paspauskite perjungdami skirtuko juostelę}}</translation> <translation id="7465635034594602553">Kažkas nepavyko. Palaukite kelias minutes ir paleiskite programą „<ph name="APP_NAME" />“ dar kartą.</translation> @@ -7201,6 +7201,7 @@ <translation id="793531125873261495">Atsisiunčiant virtualų įrenginį įvyko klaida. Bandykite dar kartą.</translation> <translation id="7935451262452051102"><ph name="PERCENT" /> proc. atlikta</translation> <translation id="7939062555109487992">Išplėstinės parinktys</translation> +<translation id="7939328347457537652">Tvarkykite įrenginių sertifikatus</translation> <translation id="7939412583708276221">Vis tiek saugoti</translation> <translation id="7942349550061667556">Raudona</translation> <translation id="7943368935008348579">Atsisiųsti PDF failus</translation>
diff --git a/chrome/app/resources/generated_resources_lv.xtb b/chrome/app/resources/generated_resources_lv.xtb index ca1883c..f37db63 100644 --- a/chrome/app/resources/generated_resources_lv.xtb +++ b/chrome/app/resources/generated_resources_lv.xtb
@@ -334,7 +334,6 @@ <translation id="1319983966058170660"><ph name="SUBPAGE_TITLE" /> apakšlapas poga Atpakaļ</translation> <translation id="1322046419516468189">Saglabātās paroles varat skatīt un pārvaldīt šeit: <ph name="SAVED_PASSWORDS_STORE" /></translation> <translation id="1324106254079708331">Aizsargā jebkuru personīgo Google kontu pret mērķtiecīga uzbrukuma risku</translation> -<translation id="1326317727527857210">Pierakstieties pārlūkā Chrome, lai būtu pieejamas cilnes no citām jūsu ierīcēm.</translation> <translation id="1327272175893960498">Kerberos biļetes</translation> <translation id="1327495825214193325">Lai iespējotu ADB atkļūdošanu, ir nepieciešama šīs <ph name="DEVICE_TYPE" /> ierīces restartēšana. Lai to atspējotu, jāveic rūpnīcas iestatījumu atiestatīšana.</translation> <translation id="1327794256477341646">Funkcijas, kurām nepieciešama piekļuve atrašanās vietas datiem, nedarbosies</translation> @@ -2428,7 +2427,6 @@ <translation id="3280243678470289153">Turpināt pārlūkā Chrome</translation> <translation id="3281892622610078515">Faili un programmas, kas jāievieto karantīnā:</translation> <translation id="3282210178675490297">Cilnes saturs tiek kopīgots lietotnē <ph name="APP_NAME" />.</translation> -<translation id="3282568296779691940">Pierakstīties pārlūkā Chrome</translation> <translation id="3285322247471302225">Jauna &cilne</translation> <translation id="328571385944182268">Vai saglabāt jūsu paroles?</translation> <translation id="3288047731229977326">Paplašinājumi, kas darbojas izstrādātāja režīmā, var kaitēt jūsu datoram. Ja neesat izstrādātājs, drošības nolūkos atspējojiet šos paplašinājumus, kas darbojas izstrādātāja režīmā.</translation> @@ -3302,7 +3300,6 @@ <translation id="4101352914005291489">Slēpts SSID</translation> <translation id="4102469565336584882">Kods nav derīgs. Ievadiet kodu šādā formātā: LPA:1$<SMDP adrese>$<aktivizācijas kods>.</translation> <translation id="4102906002417106771">Restartēt, lai aktivizētu funkciju Powerwash</translation> -<translation id="4104163789986725820">E&ksportēt...</translation> <translation id="4107048419833779140">Identificēt un atvienot atmiņas ierīces</translation> <translation id="4108314971463891922">Sekot</translation> <translation id="4109135793348361820">Pārvietot logu uz šī lietotāja darbvirsmu: <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />)</translation> @@ -5056,6 +5053,7 @@ <translation id="5860494867054883682">Notiek ierīces atjaunināšana uz kanālu <ph name="CHANNEL_NAME" /> (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">Rādīt skārienekrāna pildspalvas rīkus plauktā</translation> <translation id="5862319196656206789">Iestatīt pievienotās ierīces</translation> +<translation id="5862731021271217234">Lai varētu piekļūt cilnēm no citām ierīcēm, ieslēdziet sinhronizāciju.</translation> <translation id="5863445608433396414">Iespējot atkļūdošanas funkcijas</translation> <translation id="5864195618110239517">Izmantot maksas savienojumu</translation> <translation id="5864754048328252126">Darbība neaktivitātes dēļ uzlādes laikā</translation> @@ -5491,7 +5489,6 @@ <translation id="6291949900244949761">Vaicāt, ja vietne vēlas piekļūt USB ierīcēm (ieteicams)</translation> <translation id="6291953229176937411">Rādīt lietojumprogrammā &Finder</translation> <translation id="6292699686837272722">Cilnes tiek samazinātas līdz vidējam platumam</translation> -<translation id="6294610283659775533">Varat pārsūtīt cilnes starp ierīcēm, kurās esat pierakstījies vienā un tajā pašā Google kontā.</translation> <translation id="6294759976468837022">Automātiskās pārlūkošanas ātrums</translation> <translation id="6295158916970320988">Visas vietnes</translation> <translation id="6295855836753816081">Notiek saglabāšana...</translation>
diff --git a/chrome/app/resources/generated_resources_mk.xtb b/chrome/app/resources/generated_resources_mk.xtb index 6c7b5e8e..b1923b1 100644 --- a/chrome/app/resources/generated_resources_mk.xtb +++ b/chrome/app/resources/generated_resources_mk.xtb
@@ -335,7 +335,6 @@ <translation id="1319983966058170660">Копче за назад на подредената страница <ph name="SUBPAGE_TITLE" /></translation> <translation id="1322046419516468189">Прегледајте ги и управувајте со зачуваните лозинки во вашата <ph name="SAVED_PASSWORDS_STORE" /></translation> <translation id="1324106254079708331">Ги чува личните сметки на Google на луѓето што се во ризик од насочени напади</translation> -<translation id="1326317727527857210">За да ги преземете картичките од другите уреди, најавете се на Chrome.</translation> <translation id="1327272175893960498">Билети на Kerberos</translation> <translation id="1327495825214193325">За да се овозможи отстранување грешки на ADB, потребно е рестартирање на <ph name="DEVICE_TYPE" />. За да се оневозможи, потребно ресетирање на фабрички поставки.</translation> <translation id="1327794256477341646">Функциите на коишто им треба локацијата нема да работат</translation> @@ -2442,7 +2441,6 @@ <translation id="3280243678470289153">Остани во Chrome</translation> <translation id="3281892622610078515">Датотеки и програми за ставање во карантин:</translation> <translation id="3282210178675490297">Картичката се споделува на <ph name="APP_NAME" /></translation> -<translation id="3282568296779691940">Најави се на Chrome</translation> <translation id="3285322247471302225">Нова &картичка</translation> <translation id="328571385944182268">Да се зачуваат лозинките?</translation> <translation id="3288047731229977326">Наставки кои работат во режим на програмер може да го оштетат компјутерот. Ако не сте програмер, треба да ги оневозможите наставките кои работат во режим на програмер за да останете безбедни.</translation> @@ -3317,7 +3315,6 @@ <translation id="4101352914005291489">Сокриен SSID</translation> <translation id="4102469565336584882">Погрешен код. Кодот треба да биде во форматот LPA:1$<smdp address>$<activation code></translation> <translation id="4102906002417106771">Рестартирајте за фабричко ресетирање</translation> -<translation id="4104163789986725820">Из&вези...</translation> <translation id="4107048419833779140">Идентификувај и отстранувај надворешни мемории</translation> <translation id="4108314971463891922">Следи</translation> <translation id="4109135793348361820">Помести прозорец кај <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />)</translation> @@ -5075,6 +5072,7 @@ <translation id="5860494867054883682">Уредот се ажурира на каналот <ph name="CHANNEL_NAME" /> (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">Прикажи ги алатките за пенкало на полицата</translation> <translation id="5862319196656206789">Поставете поврзани уреди</translation> +<translation id="5862731021271217234">За да ги добиете вашите картички од другите уреди, вклучете ја синхронизацијата</translation> <translation id="5863445608433396414">Овозможете ги функциите за отстранување грешки</translation> <translation id="5864195618110239517">Користи врска со ограничен интернет</translation> <translation id="5864754048328252126">Дејство при неактивност додека се полни</translation> @@ -5511,7 +5509,6 @@ <translation id="6291949900244949761">Прашај кога некој сајт сака да пристапи до USB-уредите (препорачано)</translation> <translation id="6291953229176937411">&Прикажи во Наоѓач</translation> <translation id="6292699686837272722">Картичките ќе се собираат, но ќе имаат средна ширина</translation> -<translation id="6294610283659775533">Може да испраќате картички меѓу уредите што се најавени со истата сметка на Google</translation> <translation id="6294759976468837022">Брзина на автоматско скенирање</translation> <translation id="6295158916970320988">Сите локации</translation> <translation id="6295855836753816081">Се зачувува…</translation>
diff --git a/chrome/app/resources/generated_resources_ml.xtb b/chrome/app/resources/generated_resources_ml.xtb index 12432dda..91e3cec 100644 --- a/chrome/app/resources/generated_resources_ml.xtb +++ b/chrome/app/resources/generated_resources_ml.xtb
@@ -334,7 +334,6 @@ <translation id="1319983966058170660"><ph name="SUBPAGE_TITLE" /> സബ്പേജ് മടങ്ങുക ബട്ടൺ</translation> <translation id="1322046419516468189">നിങ്ങളുടെ <ph name="SAVED_PASSWORDS_STORE" /> എന്നതിൽ സംരക്ഷിച്ച പാസ്വേഡുകൾ കാണുക, മാനേജ് ചെയ്യുക</translation> <translation id="1324106254079708331">ടാർഗറ്റ് ചെയ്തുള്ള ആക്രമണങ്ങളുടെ ഭീഷണി നേരിടുന്ന ഏതൊരാളുടെയും വ്യക്തിപരമായ Google അക്കൗണ്ടുകളെ സംരക്ഷിക്കുന്നു</translation> -<translation id="1326317727527857210">നിങ്ങളുടെ മറ്റ് ഉപകരണങ്ങളിൽ നിന്നുള്ള ടാബുകൾ ലഭിക്കാൻ, Chrome-ൽ സൈൻ ഇൻ ചെയ്യുക.</translation> <translation id="1327272175893960498">Kerberos ടിക്കറ്റുകൾ</translation> <translation id="1327495825214193325">ADB ഡീബഗ് ചെയ്യൽ പ്രവർത്തനക്ഷമമാക്കാൻ, ഈ <ph name="DEVICE_TYPE" /> റീസ്റ്റാർട്ട് ചെയ്യേണ്ടതുണ്ട്. അത് പ്രവർത്തനരഹിതമാക്കാൻ, ഫാക്ടറി ക്രമീകരണത്തിലേക്ക് റീസെറ്റ് ചെയ്യേണ്ടതുണ്ട്.</translation> <translation id="1327794256477341646">നിങ്ങളുടെ ലൊക്കേഷൻ ആവശ്യമുള്ള ഫീച്ചറുകൾ പ്രവർത്തിക്കില്ല</translation> @@ -2425,7 +2424,6 @@ <translation id="3280243678470289153">Chrome-ൽ തുടരുക</translation> <translation id="3281892622610078515">ഫയലുകളും പ്രോഗ്രാമുകളും യഥാർത്ഥ ലൊക്കേഷനിൽ നിന്ന് നീക്കി ക്വാരന്റൈൻ ഫോൾഡറിൽ ആർക്കൈവ് ചെയ്യേണ്ടതാണ്:</translation> <translation id="3282210178675490297"><ph name="APP_NAME" /> എന്നതിലേക്ക് ഒരു ടാബ് പങ്കിടുന്നു</translation> -<translation id="3282568296779691940">Chrome-ലേക്ക് സൈൻ ഇൻ ചെയ്യുക</translation> <translation id="3285322247471302225">പുതിയ &ടാബ്</translation> <translation id="328571385944182268">നിങ്ങളുടെ പാസ്വേഡുകൾ സംരക്ഷിക്കണോ?</translation> <translation id="3288047731229977326">ഡവലപ്പർ മോഡിൽ പ്രവർത്തിക്കുന്ന വിപുലീകരണങ്ങൾ നിങ്ങളുടെ കമ്പ്യൂട്ടർ കേടുവരുത്താനിടയുണ്ട്. നിങ്ങൾ ഒരു ഡവലപ്പർ അല്ലെങ്കിൽ, സുരക്ഷിതമായി തുടരാൻ ഡവലപ്പർ മോഡിൽ പ്രവർത്തിക്കുന്ന ഈ വിപുലീകരണങ്ങൾ പ്രവർത്തനരഹിതമാക്കണം.</translation> @@ -3298,7 +3296,6 @@ <translation id="4101352914005291489">മറച്ചിരിക്കുന്ന SSID</translation> <translation id="4102469565336584882">കോഡ് അസാധുവാണ്. നിങ്ങളുടെ എൻട്രിയിൽ LPA:1$<smdp address>$<activation code> എന്ന ഫോർമാറ്റ് ഉണ്ടായിരിക്കണം</translation> <translation id="4102906002417106771">Powerwash ചെയ്യുന്നതിന് റീസ്റ്റാർട്ട് ചെയ്യുക</translation> -<translation id="4104163789986725820">കയ&റ്റുമതി ചെയ്യുക...</translation> <translation id="4107048419833779140">സ്റ്റോറേജ് ഉപകരണം തിരിച്ചറിഞ്ഞ് ഒഴിവാക്കുക</translation> <translation id="4108314971463891922">പിന്തുടരുക</translation> <translation id="4109135793348361820">വിൻഡോ <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />) എന്നതിലേക്ക് നീക്കുക</translation> @@ -5054,6 +5051,7 @@ <translation id="5860494867054883682"><ph name="CHANNEL_NAME" /> ചാനലിലേയ്ക്ക് നിങ്ങളുടെ ഉപകരണം അപ്ഡേറ്റ് ചെയ്യുന്നു, (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">ഷെൽഫിലെ സ്റ്റൈലസ് ടൂളുകൾ കാണിക്കുക</translation> <translation id="5862319196656206789">കണക്റ്റ് ചെയ്തിരിക്കുന്ന ഉപകരണങ്ങൾ സജ്ജീകരിക്കുക</translation> +<translation id="5862731021271217234">നിങ്ങളുടെ മറ്റ് ഉപകരണങ്ങളിൽ നിന്നുള്ള ടാബുകൾ ലഭിക്കാൻ, സമന്വയിപ്പിക്കൽ ഓണാക്കുക</translation> <translation id="5863445608433396414">ഡീബഗ് ചെയ്യൽ ഫീച്ചറുകൾ പ്രവർത്തനക്ഷമമാക്കുക</translation> <translation id="5864195618110239517">മീറ്റർ ചെയ്ത കണക്ഷന് ഉപയോഗിക്കുക</translation> <translation id="5864754048328252126">ചാർജ് ചെയ്യുമ്പോഴുള്ള നിഷ്ക്രിയ പ്രവർത്തനം</translation> @@ -5491,7 +5489,6 @@ <translation id="6291949900244949761">USB ഉപകരണങ്ങൾ ആക്സസ് ചെയ്യാൻ ഒരു സൈറ്റ് താൽപ്പര്യപ്പെടുമ്പോൾ ചോദിക്കുക (ശുപാർശ ചെയ്തത്)</translation> <translation id="6291953229176937411">&ഫൈന്ഡറില് കാണിക്കുക</translation> <translation id="6292699686837272722">ടാബുകൾ ഇടത്തരം വീതിയാക്കി ഉള്ളിലേക്ക് ചുരുക്കുന്നു</translation> -<translation id="6294610283659775533">ഒരേ Google അക്കൗണ്ടിൽ സൈൻ ഇൻ ചെയ്തിരിക്കുന്ന ഉപകരണങ്ങൾ തമ്മിൽ നിങ്ങൾക്ക് ടാബുകൾ അയയ്ക്കാനാകും</translation> <translation id="6294759976468837022">സ്വയമേവയുള്ള സ്കാൻ ചെയ്യൽ വേഗത</translation> <translation id="6295158916970320988">എല്ലാ സൈറ്റുകളും</translation> <translation id="6295855836753816081">സംരക്ഷിക്കുന്നു...</translation>
diff --git a/chrome/app/resources/generated_resources_mn.xtb b/chrome/app/resources/generated_resources_mn.xtb index 0c4300c..a81eeae7 100644 --- a/chrome/app/resources/generated_resources_mn.xtb +++ b/chrome/app/resources/generated_resources_mn.xtb
@@ -334,7 +334,6 @@ <translation id="1319983966058170660"><ph name="SUBPAGE_TITLE" /> дэд хуудасны буцах товчлуур</translation> <translation id="1322046419516468189"><ph name="SAVED_PASSWORDS_STORE" />-д хадгалсан нууц үгнүүдийг харах болон удирдах</translation> <translation id="1324106254079708331">Зорилтот халдлагын эрсдэлд байгаа аливаа хүний хувийн Google Бүртгэлийг хамгаалдаг</translation> -<translation id="1326317727527857210">Бусад төхөөрөмжөөс чихтэй хуудсаа авахын тулд Chrome-д нэвтэрнэ үү.</translation> <translation id="1327272175893960498">Kerberos тасалбар</translation> <translation id="1327495825214193325">ADB алдаа засахыг идэвхжүүлэхийн тулд энэ <ph name="DEVICE_TYPE" />-г дахин эхлүүлэх шаардлагатай. Үүнийг идэвхгүй болгоход үйлдвэрийн тохиргоонд шинэчлэх шаардлагатай.</translation> <translation id="1327794256477341646">Таны байршил шаардлагатай онцлогууд ажиллахгүй</translation> @@ -2437,7 +2436,6 @@ <translation id="3280243678470289153">Chrome-д үлдэх</translation> <translation id="3281892622610078515">Тусгаарлах файл болон программ:</translation> <translation id="3282210178675490297">Табыг <ph name="APP_NAME" />-тай хуваалцаж байна</translation> -<translation id="3282568296779691940">Chrome руу нэвтрэх</translation> <translation id="3285322247471302225">Шинэ &Цонх</translation> <translation id="328571385944182268">Таны нууц үгийг хадгалах уу?</translation> <translation id="3288047731229977326">Хөгжүүлэгч горим дээр ачаалж буй өргөтгөл нь таны компьютерийг гэмтээж болзошгүй байна. Хэрэв та хөгжүүлэгч биш бол аюулгүй байдлаа хангах үүднээс хөгжүүлэгч горим дээр ачаалж буй өргөтгөлийг идэвхгүй болгоно уу.</translation> @@ -3311,7 +3309,6 @@ <translation id="4101352914005291489">Нуусан SSID</translation> <translation id="4102469565336584882">Код буруу байна. Таны оролт LPA форматтай байх ёстой:1$<smdp address>$<activation code></translation> <translation id="4102906002417106771">Үйлдвэрийн тохиргоонд нь буцааж оруулахын тулд дахин эхлүүлэх</translation> -<translation id="4104163789986725820">Экспортлох ...</translation> <translation id="4107048419833779140">Хадгалах төхөөрөмжийг таних, салгах</translation> <translation id="4108314971463891922">Дагах</translation> <translation id="4109135793348361820">Цонхыг <ph name="USER_NAME" /> ( <ph name="USER_EMAIL" /> ) руу зөөх</translation> @@ -5070,6 +5067,7 @@ <translation id="5860494867054883682">Таны төхөөрөмжийг <ph name="CHANNEL_NAME" /> сувагт шинэчилж байна (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">Тавиур хэсэгт мэдрэгч үзэгний хэрэгслийг харуулах</translation> <translation id="5862319196656206789">Холбогдсон төхөөрөмжүүдийг тохируулах</translation> +<translation id="5862731021271217234">Бусад төхөөрөмжөөс чихтэй хуудсаа авахын тулд синкийг асаана уу</translation> <translation id="5863445608433396414">Debugging features-г идэвхгүй болгох</translation> <translation id="5864195618110239517">Хязгаартай холболт ашиглах</translation> <translation id="5864754048328252126">Цэнэглэж байх үед идэвхгүй төлөвт хийх үйлдэл</translation> @@ -5505,7 +5503,6 @@ <translation id="6291949900244949761">Сайт USB төхөөрөмжүүдэд хандах хүсэлтэй үед асуух (санал болгосон)</translation> <translation id="6291953229176937411">& Хайгч дотор харуулах</translation> <translation id="6292699686837272722">Табууд дундаж өргөнтэй болж агшина</translation> -<translation id="6294610283659775533">Та ижил Google Бүртгэлээр нэвтэрсэн төхөөрөмжүүдийн хооронд таб илгээх боломжтой</translation> <translation id="6294759976468837022">Автомат сканы хурд</translation> <translation id="6295158916970320988">Бүх сайт</translation> <translation id="6295855836753816081">Хадгалж байна...</translation>
diff --git a/chrome/app/resources/generated_resources_mr.xtb b/chrome/app/resources/generated_resources_mr.xtb index 17d578e..5e95e1e 100644 --- a/chrome/app/resources/generated_resources_mr.xtb +++ b/chrome/app/resources/generated_resources_mr.xtb
@@ -334,7 +334,6 @@ <translation id="1319983966058170660"><ph name="SUBPAGE_TITLE" /> सबपेजचे मागे जा बटण</translation> <translation id="1322046419516468189">सेव्ह केलेले पासवर्ड तुमच्या <ph name="SAVED_PASSWORDS_STORE" /> मध्ये पहा आणि व्यवस्थापित करा</translation> <translation id="1324106254079708331">लक्ष्यित हल्ल्यांचा धोका असलेल्या कोणाच्याही वैयक्तिक Google खात्यांचे संरक्षण करते</translation> -<translation id="1326317727527857210">आपल्या इतर डिव्हाइसेसवरील तुमचे टॅब प्राप्त करण्यासाठी, Chrome मध्ये साइन इन करा.</translation> <translation id="1327272175893960498">Kerberos तिकिटे</translation> <translation id="1327495825214193325">ADB डीबगिंग सुरू करण्यासाठी, हे <ph name="DEVICE_TYPE" /> रीस्टार्ट करणे आवश्यक आहे. ते बंद करण्यासाठी फॅक्टरी सेटिंग्जवर रीसेट करणे आवश्यक आहे.</translation> <translation id="1327794256477341646">तुमच्या स्थानाची आवश्यकता असलेली वैशिष्ट्ये काम करणार नाहीत</translation> @@ -2440,7 +2439,6 @@ <translation id="3280243678470289153">Chrome मध्ये रहा</translation> <translation id="3281892622610078515">क्वारंटाइन करण्यासाठी फाइल आणि प्रोग्राम:</translation> <translation id="3282210178675490297"><ph name="APP_NAME" /> वर टॅब शेअर करत आहे</translation> -<translation id="3282568296779691940">Chrome वर साइन इन करा</translation> <translation id="3285322247471302225">नवीन &टॅब</translation> <translation id="328571385944182268">तुमचे पासवर्ड सेव्ह करायचे आहेत का?</translation> <translation id="3288047731229977326">डेव्हलपर मोडमध्ये चालणारे विस्तार तुमच्या कॉंप्युटरास हानी पोहचवू शकतात. तुम्ही डेव्हलपर नसल्यास, सुरक्षित राहाण्यासाठी डेव्हलपर मोडमध्ये चालणारे हे विस्तार तुम्ही अक्षम करावे.</translation> @@ -3312,7 +3310,6 @@ <translation id="4101352914005291489">लपवलेला SSID</translation> <translation id="4102469565336584882">कोड चुकीचा आहे. तुमची एंट्री ही LPA:1$<smdp address>$<activation code> या फॉरमॅटमध्ये असणे आवश्यक आहे</translation> <translation id="4102906002417106771">पॉवरवॉश करण्यासाठी रीस्टार्ट करा</translation> -<translation id="4104163789986725820">नि&र्यात करा...</translation> <translation id="4107048419833779140">स्टोरेज डिव्हाइस ओळखा आणि बाहेर काढून टाका</translation> <translation id="4108314971463891922">फॉलो करा</translation> <translation id="4109135793348361820"><ph name="USER_NAME" /> (<ph name="USER_EMAIL" />) वर विंडो हलवा</translation> @@ -4122,6 +4119,7 @@ <translation id="4900392736118574277">तुमचे स्टार्टअप पेज <ph name="URL" /> मध्ये बदलले.</translation> <translation id="490051679772058907"><ph name="REFRESH_RATE" /> Hz - इंटरलेस केलेला</translation> <translation id="4900652253009739885">“निवडा” साठी असाइन केलेला एकमेव स्विच काढून टाकू शकत नाही. <ph name="RESPONSE" /> करण्यासाठी कोणतीही की दाबा.</translation> +<translation id="4901154724271753917">अलीकडे बंद केलेले याचा विस्तार करा</translation> <translation id="4901309472892185668"><ph name="EXPERIMENT_NAME" /> प्रयोगासाठी प्रयोगाची स्थिती निवडा.</translation> <translation id="49027928311173603">सर्व्हरवरून डाउनलोड केलेले धोरण चुकीचे आहे: <ph name="VALIDATION_ERROR" />.</translation> <translation id="4906490889887219338">नेटवर्क फाइल शेअर सेट किंवा व्यवस्थापित करा. <ph name="LINK_BEGIN" />अधिक जाणून घ्या<ph name="LINK_END" /></translation> @@ -5068,6 +5066,7 @@ <translation id="5860494867054883682">तुमचे डिव्हाइस <ph name="CHANNEL_NAME" /> चॅनेलवर (<ph name="PROGRESS_PERCENT" />) अपडेट करीत आहे</translation> <translation id="5862109781435984885">शेल्फमधील स्टायलस टूल दर्शवा</translation> <translation id="5862319196656206789">कनेक्ट केलेली डिव्हाइस सेट करा</translation> +<translation id="5862731021271217234">तुमच्या इतर डिव्हाइसवरून तुमचे टॅब मिळवण्यासाठी, सिंक सुरू करा</translation> <translation id="5863445608433396414">डीबगिंग वैशिष्ट्ये सुरू करा</translation> <translation id="5864195618110239517">मर्यादित कनेक्शन वापरा</translation> <translation id="5864754048328252126">चार्ज होत असताना निष्क्रिय कृती</translation> @@ -5505,7 +5504,6 @@ <translation id="6291949900244949761">साइटला केव्हा USB डिव्हाइस ॲक्सेस करायचे आहेत हे विचारा (शिफारस केलेले)</translation> <translation id="6291953229176937411">फाइंडर मध्ये &दर्शवा</translation> <translation id="6292699686837272722">टॅब मध्यम रुंदीवर आक्रसतात</translation> -<translation id="6294610283659775533">तुम्ही हेच Google खाते वापरून साइन केलेल्या डिव्हाइस दरम्यान टॅब पाठवू शकता</translation> <translation id="6294759976468837022">ऑटो-स्कॅनची गती</translation> <translation id="6295158916970320988">सर्व साइट</translation> <translation id="6295855836753816081">सेव्ह करत आहे...</translation> @@ -7011,6 +7009,7 @@ <translation id="7768526219335215384"><ph name="ORIGIN" /> ला <ph name="FOLDERNAME" /> मधील फाइल पाहता येतील</translation> <translation id="7768770796815395237">बदला</translation> <translation id="7768784765476638775">बोलण्यासाठी निवडा</translation> +<translation id="7769748505895274502">अलीकडे बंद केलेले हे कोलॅप्स करा</translation> <translation id="7770406201819593386">ChromeOS Flex शी संबंधित निदान चाचण्या रन करा.</translation> <translation id="7770450735129978837">माउसचे उजवे क्लिक</translation> <translation id="7770612696274572992">दुसर्या डिव्हाइसवरून कॉपी केलेली इमेज</translation>
diff --git a/chrome/app/resources/generated_resources_ms.xtb b/chrome/app/resources/generated_resources_ms.xtb index 4dc6e56..a1eda1b 100644 --- a/chrome/app/resources/generated_resources_ms.xtb +++ b/chrome/app/resources/generated_resources_ms.xtb
@@ -334,7 +334,6 @@ <translation id="1319983966058170660">Butang kembali subhalaman <ph name="SUBPAGE_TITLE" /></translation> <translation id="1322046419516468189">Lihat dan urus kata laluan yang disimpan dalam <ph name="SAVED_PASSWORDS_STORE" /> anda</translation> <translation id="1324106254079708331">Melindungi Akaun Google peribadi sesiapa yang berisiko menghadapi serangan bertumpu</translation> -<translation id="1326317727527857210">Log masuk ke Chrome untuk mendapatkan tab daripada peranti anda yang lain.</translation> <translation id="1327272175893960498">Tiket Kerberos</translation> <translation id="1327495825214193325">Untuk mendayakan penyahpepijatan ADB, <ph name="DEVICE_TYPE" /> perlu dimulakan semula. Tindakan melumpuhkan ADB memerlukan tetapan semula kepada tetapan kilang.</translation> <translation id="1327794256477341646">Ciri yang memerlukan lokasi anda tidak akan berfungsi</translation> @@ -2441,7 +2440,6 @@ <translation id="3280243678470289153">Kekal dalam Chrome</translation> <translation id="3281892622610078515">Fail dan program yang akan dikuarantin:</translation> <translation id="3282210178675490297">Berkongsi tab kepada <ph name="APP_NAME" /></translation> -<translation id="3282568296779691940">Log masuk ke Chrome</translation> <translation id="3285322247471302225">&Tab Baharu</translation> <translation id="328571385944182268">Simpan kata laluan anda?</translation> <translation id="3288047731229977326">Sambungan yang dijalankan dalam mod pembangun boleh membahayakan komputer anda. Jika anda bukan pembangun, anda harus melumpuhkan sambungan yang dijalankan dalam mod pembangun ini supaya kekal selamat.</translation> @@ -3283,6 +3281,7 @@ <translation id="4077919383365622693">Semua data dan kuki yang disimpan oleh <ph name="SITE" /> akan dipadamkan.</translation> <translation id="4078738236287221428">Agresif</translation> <translation id="4079140982534148664">Gunakan Semak Ejaan yang Dipertingkatkan</translation> +<translation id="4081203444152654304">Cari imej dalam dengan <ph name="VISUAL_SEARCH_PROVIDER" /></translation> <translation id="4081242589061676262">Tidak dapat menghantar fail.</translation> <translation id="408223403876103285"><ph name="WEBSITE" /> telah menghantar pemberitahuan ke telefon anda. Untuk mengesahkan identiti anda, ikut arahan pada telefon anda.</translation> <translation id="4084682180776658562">Penanda halaman</translation> @@ -3315,7 +3314,6 @@ <translation id="4101352914005291489">SSID tersembunyi</translation> <translation id="4102469565336584882">Kod tidak sah. Masukan anda sepatutnya mempunyai format LPA:1$<smdp address>$<activation code></translation> <translation id="4102906002417106771">Mulakan semula untuk menjalankan powerwash</translation> -<translation id="4104163789986725820">E&ksport...</translation> <translation id="4107048419833779140">Kenal pasti dan keluarkan peranti storan</translation> <translation id="4108314971463891922">Ikut</translation> <translation id="4109135793348361820">Alihkan tetingkap ke <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />)</translation> @@ -3679,6 +3677,7 @@ <translation id="4476590490540813026">Atlet</translation> <translation id="4476659815936224889">Untuk mengimbas kos ini, anda boleh menggunakan apl pengimbas QR pada telefon anda atau pada sesetengah apl kamera.</translation> <translation id="4477015793815781985">Sertakan Ctrl, Alt atau ⌘</translation> +<translation id="4477379360383751882">Cari Imej dalam dengan <ph name="VISUAL_SEARCH_PROVIDER" /></translation> <translation id="4478664379124702289">Simpan Pau&tan Sebagai...</translation> <translation id="4479424953165245642">Urus aplikasi kios</translation> <translation id="4479639480957787382">Ethernet</translation> @@ -5072,6 +5071,7 @@ <translation id="5860494867054883682">Mengemas kini peranti anda kepada saluran <ph name="CHANNEL_NAME" /> (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">Tunjukkan alatan stilus dalam rak</translation> <translation id="5862319196656206789">Sediakan peranti yang bersambung</translation> +<translation id="5862731021271217234">Hidupkan penyegerakan untuk mendapatkan tab daripada peranti anda yang lain</translation> <translation id="5863445608433396414">Dayakan ciri penyahpepijatan</translation> <translation id="5864195618110239517">Gunakan sambungan bermeter</translation> <translation id="5864754048328252126">Tindakan melahu semasa mengecas</translation> @@ -5508,7 +5508,6 @@ <translation id="6291949900244949761">Tanya apabila tapak mahu mengakses peranti USB (disyorkan)</translation> <translation id="6291953229176937411">&Paparkan dalam Pencari</translation> <translation id="6292699686837272722">Tab mengecil kepada lebar sederhana</translation> -<translation id="6294610283659775533">Anda boleh menghantar tab antara peranti yang dilog masuk dengan Google Account yang sama</translation> <translation id="6294759976468837022">Kelajuan autoimbas</translation> <translation id="6295158916970320988">Semua tapak</translation> <translation id="6295855836753816081">Menyimpan...</translation>
diff --git a/chrome/app/resources/generated_resources_my.xtb b/chrome/app/resources/generated_resources_my.xtb index 7bbc165..d3972b60 100644 --- a/chrome/app/resources/generated_resources_my.xtb +++ b/chrome/app/resources/generated_resources_my.xtb
@@ -334,7 +334,6 @@ <translation id="1319983966058170660"><ph name="SUBPAGE_TITLE" /> အတွင်းပိုင်းစာမျက်နှာ နောက်ပြန်ခလုတ်</translation> <translation id="1322046419516468189">သိမ်းဆည်းထားသည့် စကားဝှက်များကို သင်၏ <ph name="SAVED_PASSWORDS_STORE" /> တွင် ကြည့်ရှုစီမံပါ</translation> <translation id="1324106254079708331">ပစ်မှတ်ထား တိုက်ခိုက်မှုကို ခံနေရသူများ၏ ကိုယ်ပိုင်သုံး Google အကောင့်များကို ကာကွယ်ပေးသည်</translation> -<translation id="1326317727527857210">အခြားစက်ပစ္စည်းများမှ တဘ်များကို အသုံးပြုရန် Chrome သို့လက်မှတ်ထိုးဝင်ပါ။</translation> <translation id="1327272175893960498">Kerberos လက်မှတ်များ</translation> <translation id="1327495825214193325">ADB အမှားရှာပြင်ခြင်းကို ဖွင့်ရန် ဤ <ph name="DEVICE_TYPE" /> ကို ပြန်လည်စတင်ရပါမည်။ ၎င်းကို ပိတ်ခြင်းက စက်ရုံထုတ်ဆက်တင်များသို့ ပြင်ဆင်သတ်မှတ်ရန် လိုအပ်သည်။</translation> <translation id="1327794256477341646">သင့်တည်နေရာ လိုအပ်သည့် ဝန်ဆောင်မှုများ အလုပ်လုပ်မည်မဟုတ်ပါ</translation> @@ -2439,7 +2438,6 @@ <translation id="3280243678470289153">Chrome ကို ဆက်သုံးရန်</translation> <translation id="3281892622610078515">သီးသန့်ထားရှိရန် ဖိုင်နှင့် ပရိုဂရမ်များ-</translation> <translation id="3282210178675490297">တဘ်ကို <ph name="APP_NAME" /> သို့ မျှဝေနေသည်</translation> -<translation id="3282568296779691940">Chrome သို့ လက်မှတ်ထိုး ဝင်</translation> <translation id="3285322247471302225">တဘ် & အသစ်</translation> <translation id="328571385944182268">သင့်စကားဝှက်များ သိမ်းမလား။</translation> <translation id="3288047731229977326">ဖွံ့ဖြိုးစေသူမုဒ်တွင် ဖွင့်ထားသည့် အိတ်စတန်းရှင်းသည် သင့်ကွန်ပျူတာကို ထိခိုက်စေနိုင်သည်။ အကယ်၍ သင်သည် ဖွံ့ဖြိုးစေသူမဟုတ်လျှင်၊ လုံခြုံမှုရှိစေရန် ဖွံ့ဖြိုးစေသူမုဒ်၌ ဖွင့်ထားသည့် ဤအိတ်စတန်းရှင်းများကို ပိတ်ထားသင့်သည်။</translation> @@ -3312,7 +3310,6 @@ <translation id="4101352914005291489">ဖျောက်ထားသော SSID</translation> <translation id="4102469565336584882">ကုဒ် မမှန်ကန်ပါ။ သင့်ထည့်သွင်းမှုသည် LPA:1$<smdp လိပ်စာ>$<စသုံးရန်ကုဒ်> ပုံစံအတိုင်း ဖြစ်သင့်သည်</translation> <translation id="4102906002417106771">Powerwash ပြုလုပ်ရန်အတွက် ပြန်စရန်</translation> -<translation id="4104163789986725820">တင်&ပို့ရန်...</translation> <translation id="4107048419833779140">သိုလှောင်မှုပစ္စည်းကို ရှာဖွေရွေးထုတ်ပြီး ဖြုတ်ပါ</translation> <translation id="4108314971463891922">လိုက်ကြည့်ရန်</translation> <translation id="4109135793348361820"><ph name="USER_NAME" /> (<ph name="USER_EMAIL" />) သို့ဝင်းဒိုးအား ရွှေ့ရန်</translation> @@ -5070,6 +5067,7 @@ <translation id="5860494867054883682">သင့်စက်ပစ္စည်းကို <ph name="CHANNEL_NAME" /> ချန်နယ်သို့ အပ်ဒိတ်လုပ်နေသည် (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">စင်ပေါ်တွင် စတိုင်လပ်စ်ခဲတံတူးလ်ကို ပြပါ</translation> <translation id="5862319196656206789">ချိတ်ဆက်ထားသည့် စက်များ စနစ်ထည့်သွင်းရန်</translation> +<translation id="5862731021271217234">သင်၏ အခြားစက်ပစ္စည်းများမှ တဘ်များကိုအသုံးပြုရန် စင့်ခ်ကို ဖွင့်ပါ</translation> <translation id="5863445608433396414">ချို့ယွင်းချက်ရှာဖွေပြုပြင်သော အင်္ဂါရပ်များကို လုပ်ဆောင်ပါ</translation> <translation id="5864195618110239517">အခမဲ့ မဟုတ်သော ချိတ်ဆက်မှု အသုံးပြုရန်</translation> <translation id="5864754048328252126">အားသွင်းနေစဉ် လုပ်ဆောင်ချက်ကို ဆိုင်းငံ့ထားပါ</translation> @@ -5505,7 +5503,6 @@ <translation id="6291949900244949761">ဝဘ်ဆိုက်က USB စက်ပစ္စည်းများကို အသုံးပြုလိုသည့်အခါ ခွင့်တောင်းရန် (အကြံပြုထားသည်)</translation> <translation id="6291953229176937411">&တွေ့ရှိချက် ထဲမှာ ပြရန်</translation> <translation id="6292699686837272722">အလယ်အလတ်ဗြက်အတိုင်း တဘ်များကို ချုံ့မည်</translation> -<translation id="6294610283659775533">တူညီသည့် Google Account ဖြင့် လက်မှတ်ထိုး ဝင်ထားသည့်စက်များအကြား တဘ်များပို့နိုင်သည်</translation> <translation id="6294759976468837022">အော်တိုစကင်ဖတ်ခြင်း မြန်နှုန်း</translation> <translation id="6295158916970320988">ဆိုဒ်များအားလုံး</translation> <translation id="6295855836753816081">သိမ်းဆည်းနေသည်...</translation> @@ -5927,6 +5924,7 @@ <translation id="6709133671862442373">သတင်းများ</translation> <translation id="6709357832553498500"><ph name="EXTENSIONNAME" /> သုံး၍ ချိတ်ဆက်ပါ</translation> <translation id="6710213216561001401">အရင်</translation> +<translation id="6710394144992407503">အင်တာနက်စာမျက်နှာများတွင် စာရိုက်စဉ် စာလုံးပေါင်းအမှားများကို စစ်ဆေးပါ</translation> <translation id="6711146141291425900">‘ဒေါင်းလုဒ်များ’ အတွက် <ph name="WEB_DRIVE" /> အကောင့်ကို လင့်ခ်ချိတ်ပါ</translation> <translation id="6712943853047024245"><ph name="WEBSITE" /> အတွက် ဤအသုံးပြုသူအမည်နှင့် စကားဝှက်ကို သိမ်းပြီးဖြစ်သည်</translation> <translation id="6713233729292711163">အလုပ်ပရိုဖိုင်ကို ထည့်ရန်</translation> @@ -6548,6 +6546,7 @@ <translation id="7340757554212515731">အမှားရှာဖွေမှုနှင့် သုံးစွဲမှု ဒေတာများအပြင် ပျက်စီးမှု အစီရင်ခံစာများကို Google သို့ အလိုအလျောက်ပို့သည်</translation> <translation id="7341834142292923918">ဤဝဘ်ဆိုက်သို့ ဝင်လိုသည်</translation> <translation id="7343372807593926528">အကြံပြုချက်မပို့မီ ပြဿနာကို ဖော်ပြပါ။</translation> +<translation id="7344585835349671209">စက်ပေါ်တွင် HTTPS/SSL အသိအမှတ်ပြုလက်မှတ်များကို စီမံနိုင်သည်</translation> <translation id="7345706641791090287">သင့် စကားဝှက် အတည်ပြုပါ</translation> <translation id="7346909386216857016">OK</translation> <translation id="7347452120014970266">ဤလုပ်ဆောင်ချက်က <ph name="ORIGIN_NAME" /> နှင့် ၎င်းထည့်သွင်းထားသော အက်ပ်များ သိမ်းထားသည့် ဒေတာနှင့် ကွတ်ကီးအားလုံးကို ရှင်းထုတ်ပါမည်</translation> @@ -6677,6 +6676,7 @@ <translation id="7460045493116006516">သင်လက်ရှိထည့်သွင်းထားသည့် အပြင်အဆင်</translation> <translation id="7461924472993315131">ပင်နံပါတ်</translation> <translation id="746216226901520237">နောက်တစ်ကြိမ်တွင် သင့်ဖုန်းက သင်၏ <ph name="DEVICE_TYPE" /> ကို လော့ခ်ဖွင့်ပါမည်။ Smart Lock ကို 'ဆက်တင်များ' ထဲတွင် ပိတ်နိုင်သည်။</translation> +<translation id="7464153996453281700">အစိတ်အပိုင်းက အပ်ဒိတ်ဖြစ်နေသည်</translation> <translation id="7464637891177137294">သင်၏ Google Account <ph name="ACCOUNT" /> ထဲတွင် သိမ်းရန်</translation> <translation id="7465522323587461835">{NUM_OPEN_TABS,plural, =1{ပွင့်နေသောတဘ် # ခု၊ တဘ်ဘားတန်း ပိတ်ရန် ဖိပါ}other{ပွင့်နေသောတဘ် # ခု၊ တဘ်ဘားတန်း ပိတ်ရန် ဖိပါ}}</translation> <translation id="7465635034594602553">တစ်ခုခုမှားသွားသည်။ မိနစ်အနည်းငယ်စောင့်ပြီး <ph name="APP_NAME" /> ကို ထပ်ဖွင့်ကြည့်ပါ။</translation> @@ -7186,6 +7186,7 @@ <translation id="793531125873261495">ပကတိအသွင်စက်စနစ် ဒေါင်းလုဒ်လုပ်၍မရပါ။ ထပ်စမ်းကြည့်ပါ။</translation> <translation id="7935451262452051102"><ph name="PERCENT" />% ပြီးပါပြီ</translation> <translation id="7939062555109487992">အဆင့်မြင့် ရွေးစရာများ</translation> +<translation id="7939328347457537652">စက်အသိအမှတ်ပြုခြင်းများကို စီမံရန်</translation> <translation id="7939412583708276221">မည်သို့ပင်ဖြစ်စေ သိမ်းရန်</translation> <translation id="7942349550061667556">အနီရောင်</translation> <translation id="7943368935008348579">PDF များ ဒေါင်းလုဒ်လုပ်ရန်</translation>
diff --git a/chrome/app/resources/generated_resources_ne.xtb b/chrome/app/resources/generated_resources_ne.xtb index 8644dcb..187fc6c 100644 --- a/chrome/app/resources/generated_resources_ne.xtb +++ b/chrome/app/resources/generated_resources_ne.xtb
@@ -330,7 +330,6 @@ <translation id="1319983966058170660"><ph name="SUBPAGE_TITLE" /> को उपपृष्ठमा फर्कने बटन</translation> <translation id="1322046419516468189">आफ्नो <ph name="SAVED_PASSWORDS_STORE" /> मा सुरक्षित गरिएका पासवर्डहरू हेर्नुहोस् र व्यवस्थापन गर्नुहोस्</translation> <translation id="1324106254079708331">लक्षित हमलाको जोखिममा रहेका जुनसुकै व्यक्तिको व्यक्तिगत Google खाताहरूको सुरक्षा गर्दछ</translation> -<translation id="1326317727527857210">आफ्ना अन्य यन्त्रहरूबाट आफ्ना ट्याबहरू प्राप्त गर्न Chrome मा साइन इन गर्नुहोस्।</translation> <translation id="1327272175893960498">Kerberos का टिकटहरू</translation> <translation id="1327495825214193325">ADB डिबग प्रक्रिया सक्षम पार्न यो <ph name="DEVICE_TYPE" /> पुनः सुरु गर्नु पर्ने हुन्छ। यसलाई असक्षम पार्न यस डिभाइसका सेटिङ रिसेट गरी फ्याक्ट्री संस्करणमा लैजानु पर्ने हुन्छ।</translation> <translation id="1327794256477341646">तपाईंको स्थानसम्बन्धी जानकारी प्रयोग गर्ने सुविधाहरूले काम गर्ने छैनन्</translation> @@ -2424,7 +2423,6 @@ <translation id="3280243678470289153">Chrome मै रहनुहोस्</translation> <translation id="3281892622610078515">क्वारेन्टाइन गरिनु पर्ने फाइल र कार्यक्रमहरू:</translation> <translation id="3282210178675490297"><ph name="APP_NAME" /> सँग कुनै ट्याब आदान प्रदान गर्दै</translation> -<translation id="3282568296779691940">Chrome मा साइन इन गर्नुहोस्</translation> <translation id="3285322247471302225">नयाँ &ट्याब</translation> <translation id="328571385944182268">तपाईंका पासवर्डहरू सुरक्षित गर्ने हो?</translation> <translation id="3288047731229977326">विकासकर्ता मोडमा चालू विस्तारहरूले तपाइँको कम्प्युटरलाई हानि पुर्याउन सक्छ। यदि तपाइँ विकासकर्ता हनुहुन्न भने, सुरक्षित रहनको लागि तपाइँले विकासकर्ता मोडमा चालू यी विस्तारहरूलाई असक्षम गर्नुपर्छ।</translation> @@ -3297,7 +3295,6 @@ <translation id="4101352914005291489">लुकाइएको SSID</translation> <translation id="4102469565336584882">अवैध कोड। तपाईंले हालेको कोड LPA फर्म्याटमा हुनु पर्छ:1$<smdp address>$<activation code></translation> <translation id="4102906002417106771">पावरवासको लागि रिस्टार्ट गर्नुहोस्</translation> -<translation id="4104163789986725820">नि&र्यात...</translation> <translation id="4107048419833779140">भण्डारण यन्त्रहरू पहिचान गर्नुहोस् तथा निकाल्नुहोस्</translation> <translation id="4108314971463891922">फलो गर्नुहोस्</translation> <translation id="4109135793348361820">विण्डोलाई <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />) मा सार्नुहोस्</translation> @@ -5052,6 +5049,7 @@ <translation id="5860494867054883682">तपाईँको यन्त्रलाई <ph name="CHANNEL_NAME" /> च्यानलमा अद्यावधिक गर्दै (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">सेल्फमा स्टाइलस सम्बन्धी उपकरणहरू देखाउनुहोस्</translation> <translation id="5862319196656206789">कनेक्ट गरिएका यन्त्रहरू सेटअप गर्नुहोस्</translation> +<translation id="5862731021271217234">आफ्ना अन्य यन्त्रहरूबाट आफ्ना ट्याबहरू प्राप्त गर्न सिंक गर्ने सुविधा अन गर्नुहोस्</translation> <translation id="5863445608433396414">डिबग सुविधाहरू सक्षम गर्नुहोस्</translation> <translation id="5864195618110239517">डेटाको सीमा भएको इन्टरनेट प्रयोग गर्नुहोस्</translation> <translation id="5864754048328252126">चार्ज भइरहेका बेला यन्त्र निष्क्रिय हुँदा गर्नु पर्ने कारबाही</translation> @@ -5487,7 +5485,6 @@ <translation id="6291949900244949761">कुनै साइटले USB यन्त्रहरूमाथि पहुँच राख्न खोज्दा सोध्नुहोस् (सिफारिस गरिएको)</translation> <translation id="6291953229176937411">&फोल्डरमा देखाउनुहोस्</translation> <translation id="6292699686837272722">ट्याबहरू चौडाइ मध्यम हुने गरी साना हुन्छन्</translation> -<translation id="6294610283659775533">तपाईं उही Google खातामार्फत साइन इन गरिएका एउटा डिभाइसबाट अर्को डिभाइसमा ट्याबहरू पठाउन सक्नुहुन्छ</translation> <translation id="6294759976468837022">स्वतः स्क्यान गर्ने गति</translation> <translation id="6295158916970320988">सबै साइटहरू</translation> <translation id="6295855836753816081">सुरक्षित गर्दै...</translation>
diff --git a/chrome/app/resources/generated_resources_nl.xtb b/chrome/app/resources/generated_resources_nl.xtb index 1d747ab0a..a8d31d1 100644 --- a/chrome/app/resources/generated_resources_nl.xtb +++ b/chrome/app/resources/generated_resources_nl.xtb
@@ -332,7 +332,6 @@ <translation id="1319983966058170660">Terugknop van subpagina <ph name="SUBPAGE_TITLE" /></translation> <translation id="1322046419516468189">Bekijk en beheer opgeslagen wachtwoorden in je <ph name="SAVED_PASSWORDS_STORE" /></translation> <translation id="1324106254079708331">Beschermt de persoonlijke Google-accounts van iedereen die risico loopt op gerichte aanvallen</translation> -<translation id="1326317727527857210">Log in bij Chrome om de tabbladen van je andere apparaten te bekijken.</translation> <translation id="1327272175893960498">Kerberos-tickets</translation> <translation id="1327495825214193325">Als je ADB-foutopsporing wilt aanzetten, moet je deze <ph name="DEVICE_TYPE" /> opnieuw opstarten. Je kunt ADB-foutopsporing alleen uitzetten door de fabrieksinstellingen van je apparaat te herstellen.</translation> <translation id="1327794256477341646">Functies waarvoor je locatie nodig is, werken niet</translation> @@ -2425,7 +2424,6 @@ <translation id="3280243678470289153">In Chrome blijven</translation> <translation id="3281892622610078515">Bestanden en programma's die in quarantaine worden gezet:</translation> <translation id="3282210178675490297">Er wordt een tabblad gedeeld met <ph name="APP_NAME" /></translation> -<translation id="3282568296779691940">Inloggen bij Chrome</translation> <translation id="3285322247471302225">Nieuw &tabblad</translation> <translation id="328571385944182268">Je wachtwoorden opslaan?</translation> <translation id="3288047731229977326">Extensies die worden uitgevoerd in de ontwikkelaarsmodus kunnen je computer beschadigen. Als je geen ontwikkelaar bent, doe je er goed aan deze extensies uit te zetten zodat je beveiligd blijft.</translation> @@ -3267,6 +3265,7 @@ <translation id="4077919383365622693">Alle gegevens en cookies die zijn opgeslagen door <ph name="SITE" />, worden verwijderd.</translation> <translation id="4078738236287221428">Agressief</translation> <translation id="4079140982534148664">Verbeterde spellingcontrole gebruiken</translation> +<translation id="4081203444152654304">Zoeken in afbeelding met <ph name="VISUAL_SEARCH_PROVIDER" /></translation> <translation id="4081242589061676262">Kan bestand niet casten.</translation> <translation id="408223403876103285"><ph name="WEBSITE" /> heeft een melding naar je telefoon gestuurd. Volg de stappen op je telefoon om te bevestigen dat jij het bent.</translation> <translation id="4084682180776658562">Bookmark maken</translation> @@ -3299,7 +3298,6 @@ <translation id="4101352914005291489">SSID verborgen</translation> <translation id="4102469565336584882">Ongeldige code. Je invoer moet deze indeling hebben: LPA:1$<smdp address>$<activation code></translation> <translation id="4102906002417106771">Opnieuw opstarten om Powerwash uit te voeren</translation> -<translation id="4104163789986725820">E&xporteren...</translation> <translation id="4107048419833779140">Opslagapparaten identificeren en verwijderen</translation> <translation id="4108314971463891922">Volgen</translation> <translation id="4109135793348361820">Venster verplaatsen naar <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />)</translation> @@ -3662,6 +3660,7 @@ <translation id="4476590490540813026">Atlete</translation> <translation id="4476659815936224889">Je kunt een QR-scanner-app op je telefoon of sommige camera-apps gebruiken om deze code te scannen.</translation> <translation id="4477015793815781985">Neem Ctrl, Alt of ⌘ op</translation> +<translation id="4477379360383751882">Zoeken in afbeelding met <ph name="VISUAL_SEARCH_PROVIDER" /></translation> <translation id="4478664379124702289">Lin&k opslaan als...</translation> <translation id="4479424953165245642">Kiosk-apps beheren</translation> <translation id="4479639480957787382">Ethernet</translation> @@ -5051,6 +5050,7 @@ <translation id="5860494867054883682">Je apparaat updaten naar het kanaal <ph name="CHANNEL_NAME" /> (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">Stylustools op de plank bekijken</translation> <translation id="5862319196656206789">Verbonden apparaten instellen</translation> +<translation id="5862731021271217234">Zet de synchronisatie aan om de tabbladen van je andere apparaten te bekijken</translation> <translation id="5863445608433396414">Foutopsporingsfuncties aanzetten</translation> <translation id="5864195618110239517">Verbinding met datalimiet gebruiken</translation> <translation id="5864754048328252126">Inactieve actie tijdens opladen</translation> @@ -5485,7 +5485,6 @@ <translation id="6291949900244949761">Goedkeuring vragen wanneer een site toegang wil hebben tot USB-apparaten (aanbevolen)</translation> <translation id="6291953229176937411">&Toon in Finder</translation> <translation id="6292699686837272722">Tabbladen krimpen tot een gemiddelde breedte</translation> -<translation id="6294610283659775533">Je kunt tabbladen sturen tussen apparaten waarop je bent ingelogd met hetzelfde Google-account.</translation> <translation id="6294759976468837022">Snelheid voor automatisch scannen</translation> <translation id="6295158916970320988">Alle sites</translation> <translation id="6295855836753816081">Opslaan...</translation>
diff --git a/chrome/app/resources/generated_resources_no.xtb b/chrome/app/resources/generated_resources_no.xtb index a697c83..f5b29bb3 100644 --- a/chrome/app/resources/generated_resources_no.xtb +++ b/chrome/app/resources/generated_resources_no.xtb
@@ -334,7 +334,6 @@ <translation id="1319983966058170660">Tilbakeknapp for den underordnende <ph name="SUBPAGE_TITLE" />-siden</translation> <translation id="1322046419516468189">Se og administrer lagrede passord i <ph name="SAVED_PASSWORDS_STORE" /> din</translation> <translation id="1324106254079708331">Verner de personlige Google-kontoene til personer som er utsatt for målrettede angrep</translation> -<translation id="1326317727527857210">For å få fanene dine fra de andre enhetene du bruker, logg på Chrome.</translation> <translation id="1327272175893960498">Kerberos-saker</translation> <translation id="1327495825214193325">For å slå på ADB-feilsøking må denne <ph name="DEVICE_TYPE" />-enheten startes på nytt. Den må tilbakestilles til fabrikkstandard hvis du vil slå ADB-feilsøking av igjen.</translation> <translation id="1327794256477341646">Funksjoner som krever posisjonen din, kommer ikke til å virke</translation> @@ -2435,7 +2434,6 @@ <translation id="3280243678470289153">Bli værende i Chrome</translation> <translation id="3281892622610078515">Filer og programmer som blir satt i karantene:</translation> <translation id="3282210178675490297">Deler en fane med <ph name="APP_NAME" /></translation> -<translation id="3282568296779691940">Logg på Chrome</translation> <translation id="3285322247471302225">Ny &fane</translation> <translation id="328571385944182268">Vil du lagre passordene dine?</translation> <translation id="3288047731229977326">Utvidelser som kjører i utviklermodus kan skade datamaskinen din. Hvis du ikke er utvikler, bør du deaktivere disse utvidelsene som kjører i utviklermodus, for å være på den sikre siden.</translation> @@ -3275,6 +3273,7 @@ <translation id="4077919383365622693">Alle data og informasjonskapsler som er lagret for <ph name="SITE" />, slettes.</translation> <translation id="4078738236287221428">Aggressiv</translation> <translation id="4079140982534148664">Bruk forbedret stavekontroll</translation> +<translation id="4081203444152654304">Søk i bildet med <ph name="VISUAL_SEARCH_PROVIDER" /></translation> <translation id="4081242589061676262">Kan ikke caste filen.</translation> <translation id="408223403876103285"><ph name="WEBSITE" /> har sendt et varsel til telefonen din. For å bekrefte at det er deg, følg fremgangsmåten der.</translation> <translation id="4084682180776658562">Legg til bokmerke</translation> @@ -3307,7 +3306,6 @@ <translation id="4101352914005291489">Skjult SSID</translation> <translation id="4102469565336584882">Ugyldig kode. Oppføringen skal være på formatet LPA:1$<smdp-adresse>$<aktiveringskode></translation> <translation id="4102906002417106771">Start på nytt for å utføre en powerwash</translation> -<translation id="4104163789986725820">E&ksportér</translation> <translation id="4107048419833779140">Identifiser og løs ut lagringsenheter</translation> <translation id="4108314971463891922">Følg</translation> <translation id="4109135793348361820">Flytt vinduet til <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />)</translation> @@ -3671,6 +3669,7 @@ <translation id="4476590490540813026">Idrettsutøver</translation> <translation id="4476659815936224889">For å skanne denne koden kan du bruke en QR-skanningsapp på telefonen eller enkelte kameraapper.</translation> <translation id="4477015793815781985">Inkluder Ctrl, Alt eller ⌘</translation> +<translation id="4477379360383751882">Søk i bildet med <ph name="VISUAL_SEARCH_PROVIDER" /></translation> <translation id="4478664379124702289">Lagre lin&ken som</translation> <translation id="4479424953165245642">Administrer kiosk-apper</translation> <translation id="4479639480957787382">Ethernet</translation> @@ -4116,6 +4115,7 @@ <translation id="4900392736118574277">Oppstartssiden er endret til <ph name="URL" />.</translation> <translation id="490051679772058907"><ph name="REFRESH_RATE" /> Hz – linjefletting</translation> <translation id="4900652253009739885">Kan ikke fjerne den eneste bryteren som er tilordnet «Velg». Trykk på en valgfri tast for å <ph name="RESPONSE" />.</translation> +<translation id="4901154724271753917">Vis nylig lukkede</translation> <translation id="4901309472892185668">Velg eksperimenttilstand for <ph name="EXPERIMENT_NAME" />-eksperimentet.</translation> <translation id="49027928311173603">Innstillingene som ble lastet ned fra tjeneren er ugyldige: <ph name="VALIDATION_ERROR" />.</translation> <translation id="4906490889887219338">Konfigurer eller administrer delte nettverksressurser. <ph name="LINK_BEGIN" />Finn ut mer<ph name="LINK_END" /></translation> @@ -5061,6 +5061,7 @@ <translation id="5860494867054883682">Oppdaterer enheten din til <ph name="CHANNEL_NAME" />-kanalen (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">Vis pekepennverktøyet på hyllen</translation> <translation id="5862319196656206789">Konfigurer tilkoblede enheter</translation> +<translation id="5862731021271217234">For å få fanene dine fra de andre enhetene du bruker, slå på synkronisering</translation> <translation id="5863445608433396414">Slå på feilsøkingsfunksjoner</translation> <translation id="5864195618110239517">Bruk tilkobling med datamåling</translation> <translation id="5864754048328252126">Inaktivitetshandling når enheten lades</translation> @@ -5497,7 +5498,6 @@ <translation id="6291949900244949761">Spør når et nettsted vil ha tilgang til USB-enheter (anbefales)</translation> <translation id="6291953229176937411">&Vis i Finder</translation> <translation id="6292699686837272722">Faner krymper til middels bredde</translation> -<translation id="6294610283659775533">Du kan sende faner mellom enheter som er logget på med samme Google-konto</translation> <translation id="6294759976468837022">Hastighet for automatisk skanning</translation> <translation id="6295158916970320988">Alle nettsteder</translation> <translation id="6295855836753816081">Lagrer …</translation> @@ -7003,6 +7003,7 @@ <translation id="7768526219335215384"><ph name="ORIGIN" /> får tilgang til å lese filer i <ph name="FOLDERNAME" /></translation> <translation id="7768770796815395237">Endre</translation> <translation id="7768784765476638775">Tekstopplesing</translation> +<translation id="7769748505895274502">Skjul nylig lukkede</translation> <translation id="7770406201819593386">Kjør diagnostikktester for ChromeOS Flex.</translation> <translation id="7770450735129978837">Høyre museknapp</translation> <translation id="7770612696274572992">Et bilde er kopiert fra en annen enhet</translation>
diff --git a/chrome/app/resources/generated_resources_or.xtb b/chrome/app/resources/generated_resources_or.xtb index 3e127b0e..d943656 100644 --- a/chrome/app/resources/generated_resources_or.xtb +++ b/chrome/app/resources/generated_resources_or.xtb
@@ -333,7 +333,6 @@ <translation id="1319983966058170660"><ph name="SUBPAGE_TITLE" /> ସବପେଜକୁ ଫେରିବା ବଟନ୍</translation> <translation id="1322046419516468189">ଆପଣଙ୍କର <ph name="SAVED_PASSWORDS_STORE" />ରେ ସେଭ୍ ହୋଇଥିବା ପାସ୍ୱର୍ଡଗୁଡ଼ିକ ଦେଖନ୍ତୁ ଏବଂ ପରିଚାଳନା କରନ୍ତୁ</translation> <translation id="1324106254079708331">ଉଦ୍ଦେଶ୍ୟମୂଳକ ଆକ୍ରମଣର ବିପଦରୁ ଯେ କୌଣସି ବ୍ୟକ୍ତିଙ୍କର ବ୍ୟକ୍ତିଗତ Google ଆକାଉଣ୍ଟଗୁଡ଼ିକୁ ସୁରକ୍ଷିତ ରଖେ</translation> -<translation id="1326317727527857210">ଆପଣଙ୍କର ଅନ୍ୟ ଡିଭାଇସ୍ଗୁଡ଼ିକରୁ ଟାବ୍ଗୁଡ଼ିକ ପାଇବା ପାଇଁ, Chromeରେ ସାଇନ୍ ଇନ୍ କରନ୍ତୁ।</translation> <translation id="1327272175893960498">Kerberos ଟିକେଟ୍ଗୁଡ଼ିକ</translation> <translation id="1327495825214193325">ADB ଡିବଗିଂ ସକ୍ଷମ କରିବାକୁ, ଏହି <ph name="DEVICE_TYPE" />କୁ ରିଷ୍ଟାର୍ଟ କରିବା ଆବଶ୍ୟକ। ଏହାକୁ ଅକ୍ଷମ କରିବା ପାଇଁ ଫ୍ୟାକ୍ଟୋରୀ ସେଟିଂସ୍ରେ ରିସେଟ୍ କରିବା ଆବଶ୍ୟକ।</translation> <translation id="1327794256477341646">ଆପଣଙ୍କ ଲୋକେସନ୍ ଆବଶ୍ୟକ କରୁଥିବା ଫିଚରଗୁଡ଼ିକ କାମ କରିବ ନାହିଁ</translation> @@ -2424,7 +2423,6 @@ <translation id="3280243678470289153">Chromeରେ ରୁହନ୍ତୁ</translation> <translation id="3281892622610078515">ଫାଇଲ୍ ଏବଂ ପ୍ରୋଗ୍ରାମ୍ଗୁଡ଼ିକ ପୃଥକ କରାଯାଇଛି:</translation> <translation id="3282210178675490297"><ph name="APP_NAME" /> ସହ ଟାବ୍ ସେୟାର୍ କରାଯାଉଛି</translation> -<translation id="3282568296779691940">Chromeରେ ସାଇନ୍ ଇନ୍ କରନ୍ତୁ</translation> <translation id="3285322247471302225">ନୂଆ &ଟାବ୍</translation> <translation id="328571385944182268">ଆପଣଙ୍କର ପାସ୍ୱାର୍ଡଗୁଡ଼ିକୁ ସେଭ୍ କରିବେ?</translation> <translation id="3288047731229977326">ଡେଭଲପର୍ ମୋଡ୍ରେ ଚାଲୁଥିବା ଏକ୍ସଟେନ୍ସନ୍ ଆପଣଙ୍କର କମ୍ପ୍ୟୁଟର୍ର କ୍ଷତି କରିପାରେ। ଯଦି ଆପଣ ଜଣେ ଡେଭଲପର୍ ନୁହଁନ୍ତି, ତେବେ ସୁରକ୍ଷିତ ରହିବା ପାଇଁ ଆପଣଙ୍କୁ ଡେଭଲପର୍ ମୋଡ୍ରେ ଚାଲୁଥିବା ଏହି ଏକ୍ସଟେନ୍ସନ୍ଗୁଡ଼ିକୁ ଅକ୍ଷମ କରିବା ଉଚିତ।</translation> @@ -3297,7 +3295,6 @@ <translation id="4101352914005291489">ଲୁକ୍କାୟିତ SSID</translation> <translation id="4102469565336584882">ଅବୈଧ କୋଡ। ଆପଣଙ୍କ ଏଣ୍ଟ୍ରି LPA:1$<smdp address>$<activation code> ଫର୍ମାଟରେ ହେବା ଉଚିତ</translation> <translation id="4102906002417106771">ପାୱାରୱାସ୍ କରିବାକୁ ରିଷ୍ଟାର୍ଟ କରନ୍ତୁ</translation> -<translation id="4104163789986725820">ଏକ୍ସପୋର୍ଟ...</translation> <translation id="4107048419833779140">ଷ୍ଟୋରେଜ୍ ଡିଭାଇସ୍ଗୁଡ଼ିକ ଚିହ୍ନଟ କରନ୍ତୁ ଏବଂ ବାହାର କରନ୍ତୁ</translation> <translation id="4108314971463891922">ଅନୁସରଣ କରନ୍ତୁ</translation> <translation id="4109135793348361820"><ph name="USER_NAME" /> (<ph name="USER_EMAIL" />)କୁ ୱିଣ୍ଡୋ ନିଅନ୍ତୁ</translation> @@ -4107,6 +4104,7 @@ <translation id="4900392736118574277">ଆପଣଙ୍କର ଆରମ୍ଭ ପୃଷ୍ଠା <ph name="URL" />କୁ ପରିବର୍ତ୍ତନ ହୋଇଥିଲା।</translation> <translation id="490051679772058907"><ph name="REFRESH_RATE" /> Hz - ଇଣ୍ଟରଲେସ୍ ହୋଇଛି</translation> <translation id="4900652253009739885">“ଚୟନ କରନ୍ତୁ” କାର୍ଯ୍ୟ ପାଇଁ ଆସାଇନ କରାଯାଇଥିବା ଏକମାତ୍ର ସ୍ୱିଚକୁ କାଢ଼ି ଦିଆଯାଇପାରିବ ନାହିଁ। <ph name="RESPONSE" /> ପାଇଁ ଯେ କୌଣସି କୀକୁ ଦବାନ୍ତୁ।</translation> +<translation id="4901154724271753917">ବର୍ତ୍ତମାନ ବନ୍ଦ କରାଯାଇଥିବା ବିସ୍ତାର କରନ୍ତୁ</translation> <translation id="4901309472892185668"><ph name="EXPERIMENT_NAME" /> ପରୀକ୍ଷଣ ପାଇଁ ପରୀକ୍ଷଣର ସ୍ଥିତି ଚୟନ କରନ୍ତୁ।</translation> <translation id="49027928311173603">ସର୍ଭର୍ରୁ ଡାଉନ୍ଲୋଡ୍ ହୋଇଥିବା ନୀତି ଅବୈଧ ଅଟେ: <ph name="VALIDATION_ERROR" />।</translation> <translation id="4906490889887219338">ନେଟ୍ୱାର୍କ ଫାଇଲ୍ ସେୟାର୍ ସେଟ୍ ଅପ୍ କରନ୍ତୁ କିମ୍ବା ପରିଚାଳନା କରନ୍ତୁ। <ph name="LINK_BEGIN" />ଅଧିକ ଜାଣନ୍ତୁ<ph name="LINK_END" /></translation> @@ -5051,6 +5049,7 @@ <translation id="5860494867054883682">ଆପଣଙ୍କ ଡିଭାଇସ୍ <ph name="CHANNEL_NAME" /> ଚ୍ୟାନେଲ୍ରେ ଅପ୍ଡେଟ୍ ହେଉଛି (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">ସେଲ୍ଫରେ ଷ୍ଟାଇଲସ୍ ଟୁଲ୍ଗୁଡ଼ିକ ଦେଖାନ୍ତୁ</translation> <translation id="5862319196656206789">ସଂଯୁକ୍ତ ଡିଭାଇସଗୁଡ଼ିକ ସେଟ୍ ଅପ୍ କରନ୍ତୁ</translation> +<translation id="5862731021271217234">ଆପଣଙ୍କର ଅନ୍ୟ ଡିଭାଇସ୍ରୁ ନିଜର ଟାବ୍ଗୁଡ଼ିକୁ ପ୍ରାପ୍ତ କରିବାକୁ, ସିଙ୍କ୍କୁ ଚାଲୁ କରନ୍ତୁ</translation> <translation id="5863445608433396414">ଡିବଗିଂ ବୈଶିଷ୍ଟ୍ୟକୁ ସକ୍ଷମ କରନ୍ତୁ</translation> <translation id="5864195618110239517">ମିଟର ହୋଇଥିବା ସଂଯୋଗ ବ୍ୟବହାର କରନ୍ତୁ</translation> <translation id="5864754048328252126">ବ୍ୟାଟେରୀ ଚାର୍ଜ ହେଉଥିବା ବେଳେ ଡିଭାଇସ୍ ନିଷ୍କ୍ରିୟ ଥିବା ସମୟର ପଦକ୍ଷେପ</translation> @@ -5486,7 +5485,6 @@ <translation id="6291949900244949761">ଯେତେବେଳେ ଏକ ସାଇଟ୍ USB ଡିଭାଇସ୍ଗୁଡ଼ିକୁ ଆକ୍ସେସ୍ କରିବାକୁ ଚାହୁଁଛି, ସେତେବେଳେ ପଚାରନ୍ତୁ (ସୁପାରିଶ୍ କରାଯାଇଛି)</translation> <translation id="6291953229176937411">&ଫାଇଣ୍ଡର୍ରେ ଦେଖାନ୍ତୁ</translation> <translation id="6292699686837272722">ଟାବଗୁଡ଼ିକର ଚଉଡ଼ା ସଙ୍କୁଚିତ ହୋଇ ମଧ୍ୟମ ଲମ୍ବା ହୋଇଯାଏ</translation> -<translation id="6294610283659775533">ସମାନ Google ଆକାଉଣ୍ଟ ମାଧ୍ୟମରେ ସାଇନ୍ ଇନ୍ କରାଯାଇଥିବା ଡିଭାଇସଗୁଡ଼ିକ ମଧ୍ୟରେ ଆପଣ ଟାବଗୁଡ଼ିକ ପଠାଇପାରିବେ</translation> <translation id="6294759976468837022">ସ୍ୱତଃ-ସ୍କାନର ସ୍ପିଡ୍</translation> <translation id="6295158916970320988">ସମସ୍ତ ସାଇଟ୍ଗୁଡ଼ିକ</translation> <translation id="6295855836753816081">ସେଭ୍ ହେଉଛି…</translation> @@ -6994,6 +6992,7 @@ <translation id="7768526219335215384"><ph name="ORIGIN" /> <ph name="FOLDERNAME" />ରେ ଫାଇଲଗୁଡ଼ିକୁ ଦେଖିବାକୁ ସକ୍ଷମ ହେବ</translation> <translation id="7768770796815395237">ପରିବର୍ତ୍ତନ କରନ୍ତୁ</translation> <translation id="7768784765476638775">ସିଲେକ୍ଟ-ଟୁ-ସ୍ପିକ୍</translation> +<translation id="7769748505895274502">ବର୍ତ୍ତମାନ ବନ୍ଦ କରାଯାଇଥିବା ସଙ୍କୁଚିତ କରନ୍ତୁ</translation> <translation id="7770406201819593386">ChromeOS Flex ଡାଏଗ୍ନୋଷ୍ଟିକ ଟେଷ୍ଟଗୁଡ଼ିକ ଚଲାନ୍ତୁ।</translation> <translation id="7770450735129978837">ମାଉସର ଡାହାଣ କ୍ଲିକ</translation> <translation id="7770612696274572992">ଅନ୍ୟ ଡିଭାଇସରୁ କପି କରାଯାଇଥିବା ଛବି</translation>
diff --git a/chrome/app/resources/generated_resources_pa.xtb b/chrome/app/resources/generated_resources_pa.xtb index afaa0d14..1f0f08b 100644 --- a/chrome/app/resources/generated_resources_pa.xtb +++ b/chrome/app/resources/generated_resources_pa.xtb
@@ -335,7 +335,6 @@ <translation id="1319983966058170660"><ph name="SUBPAGE_TITLE" /> ਉਪ-ਪੰਨਾ ਪਿੱਛੇ ਜਾਓ ਬਟਨ</translation> <translation id="1322046419516468189">ਆਪਣੇ <ph name="SAVED_PASSWORDS_STORE" /> ਵਿੱਚ ਰੱਖਿਅਤ ਕੀਤੇ ਪਾਸਵਰਡ ਦੇਖੋ ਅਤੇ ਉਹਨਾਂ ਦਾ ਪ੍ਰਬੰਧਨ ਕਰੋ</translation> <translation id="1324106254079708331">ਕਿਸੇ ਦੇ ਵੀ ਨਿੱਜੀ Google ਖਾਤਿਆਂ ਨੂੰ ਉਦੇਸ਼ਿਤ ਹਮਲਿਆਂ ਦੇ ਖਤਰੇ ਤੋਂ ਬਚਾਉਂਦਾ ਹੈ</translation> -<translation id="1326317727527857210">ਆਪਣੇ ਹੋਰ ਡੀਵਾਈਸਾਂ ਤੋਂ ਆਪਣੀਆਂ ਟੈਬਾਂ ਪ੍ਰਾਪਤ ਕਰਨ ਲਈ, Chrome ਵਿੱਚ ਸਾਈਨ-ਇਨ ਕਰੋ।</translation> <translation id="1327272175893960498">Kerberos ਟਿਕਟਾਂ</translation> <translation id="1327495825214193325">ADB ਡੀਬੱਗਿੰਗ ਨੂੰ ਚਾਲੂ ਕਰਨ ਲਈ, ਇਸ <ph name="DEVICE_TYPE" /> ਨੂੰ ਇੱਕ ਵਾਰ ਮੁੜ-ਸ਼ੁਰੂ ਕਰਨ ਦੀ ਲੋੜ ਹੈ। ਇਸ ਨੂੰ ਬੰਦ ਕਰਨ ਲਈ ਫੈਕਟਰੀ ਸੈਟਿੰਗਾਂ ਨੂੰ ਰੀਸੈੱਟ ਕਰਨ ਦੀ ਲੋੜ ਹੈ।</translation> <translation id="1327794256477341646">ਜਿਹੜੀਆਂ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਲਈ ਤੁਹਾਡੀ ਟਿਕਾਣਾ ਜਾਣਕਾਰੀ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ ਉਹ ਕੰਮ ਨਹੀਂ ਕਰਨਗੀਆਂ</translation> @@ -2441,7 +2440,6 @@ <translation id="3280243678470289153">Chrome ਵਿੱਚ ਰਹੋ</translation> <translation id="3281892622610078515">ਵੱਖ ਰੱਖੇ ਜਾਣ ਵਾਲੀਆਂ ਫ਼ਾਈਲਾਂ ਅਤੇ ਪ੍ਰੋਗਰਾਮ:</translation> <translation id="3282210178675490297">ਟੈਬ ਨੂੰ <ph name="APP_NAME" /> ਨਾਲ ਸਾਂਝਾ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ</translation> -<translation id="3282568296779691940">Chrome 'ਤੇ ਸਾਈਨ-ਇਨ ਕਰੋ</translation> <translation id="3285322247471302225">ਨਵੀਂ &ਟੈਬ</translation> <translation id="328571385944182268">ਕੀ ਆਪਣੇ ਪਾਸਵਰਡ ਰੱਖਿਅਤ ਕਰਨੇ ਹਨ?</translation> <translation id="3288047731229977326">ਵਿਕਾਸਕਾਰ ਮੋਡ ਵਿੱਚ ਚੱਲ ਰਹੀਆਂ ਐਕਸਟੈਂਸ਼ਨਾਂ ਤੁਹਾਡੇ ਕੰਪਿਊਟਰ ਨੂੰ ਨੁਕਸਾਨ ਪਹੁੰਚਾ ਸਕਦੀਆਂ ਹਨ। ਜੇਕਰ ਤੁਸੀਂ ਇੱਕ ਵਿਕਾਸਕਾਰ ਨਹੀਂ ਹੋ, ਤਾਂ ਤੁਹਾਨੂੰ ਸੁਰੱਖਿਅਤ ਰਹਿਣ ਲਈ ਵਿਕਾਸਕਾਰ ਮੋਡ ਵਿੱਚ ਚੱਲ ਰਹੀਆਂ ਇਹਨਾਂ ਐਕਸਟੈਂਸ਼ਨਾਂ ਨੂੰ ਬੰਦ ਕਰਨਾ ਚਾਹੀਦਾ ਹੈ।</translation> @@ -3315,7 +3313,6 @@ <translation id="4101352914005291489">ਲੁਕਿਆ ਹੋਇਆ SSID</translation> <translation id="4102469565336584882">ਅਵੈਧ ਕੋਡ। ਤੁਹਾਡਾ ਇੰਦਰਾਜ ਇਸ LPA ਫਾਰਮੈਟ ਅਨੁਸਾਰ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ:1$<smdp address>$<activation code></translation> <translation id="4102906002417106771">ਪਾਵਰਵਾਸ਼ ਲਈ ਮੁੜ-ਸ਼ੁਰੂ ਕਰੋ</translation> -<translation id="4104163789986725820">ਨਿ&ਰਯਾਤ ਕਰੋ..</translation> <translation id="4107048419833779140">ਸਟੋਰੇਜ ਡੀਵਾਈਸਾਂ ਪਛਾਣੋ ਅਤੇ ਬਾਹਰ ਕੱਢੋ</translation> <translation id="4108314971463891922">ਅਨੁਸਰਣ ਕਰੋ</translation> <translation id="4109135793348361820">window ਨੂੰ <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />) ਵਿੱਚ ਮੂਵ ਕਰੋ</translation> @@ -5071,6 +5068,7 @@ <translation id="5860494867054883682">ਤੁਹਾਡੀ ਡੀਵਾਈਸ ਨੂੰ <ph name="CHANNEL_NAME" /> ਚੈਨਲ 'ਤੇ ਅੱਪਡੇਟ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">ਸ਼ੈਲਫ਼ ਵਿੱਚ ਸਟਾਈਲਸ ਟੂਲ ਦਿਖਾਓ</translation> <translation id="5862319196656206789">ਕਨੈਕਟ ਕੀਤੇ ਡੀਵਾਈਸਾਂ ਦਾ ਸੈੱਟਅੱਪ ਕਰੋ</translation> +<translation id="5862731021271217234">ਆਪਣੇ ਹੋਰ ਡੀਵਾਈਸਾਂ ਤੋਂ ਆਪਣੀਆਂ ਟੈਬਾਂ ਪ੍ਰਾਪਤ ਕਰਨ ਲਈ, ਸਿੰਕ ਚਾਲੂ ਕਰੋ</translation> <translation id="5863445608433396414">ਡੀਬੱਗਿੰਗ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਨੂੰ ਚਾਲੂ ਕਰੋ</translation> <translation id="5864195618110239517">ਮੀਟਰਡ ਕਨੈਕਸ਼ਨ ਵਰਤੋ</translation> <translation id="5864754048328252126">ਚਾਰਜ ਕਰਨ ਦੌਰਾਨ ਅਕਿਰਿਆਸ਼ੀਲ ਕਾਰਵਾਈ</translation> @@ -5507,7 +5505,6 @@ <translation id="6291949900244949761">ਕਿਸੇ ਸਾਈਟ ਦੇ USB ਡੀਵਾਈਸਾਂ ਤੱਕ ਪਹੁੰਚ ਕਰਨ ਵੇਲੇ ਪੁੱਛੋ (ਸਿਫ਼ਾਰਸ਼ੀ)</translation> <translation id="6291953229176937411">&ਫਾਈਂਡਰ ਵਿੱਚ ਦਿਖਾਓ</translation> <translation id="6292699686837272722">ਟੈਬਾਂ ਦੀ ਚੌੜਾਈ ਸੁੰਗੜ ਕੇ ਦਰਮਿਆਨੀ ਹੋ ਜਾਂਦੀ ਹੈ</translation> -<translation id="6294610283659775533">ਤੁਸੀਂ ਉਨ੍ਹਾਂ ਡੀਵਾਈਸਾਂ ਵਿਚਾਲੇ ਟੈਬਾਂ ਭੇਜ ਸਕਦੇ ਹੋ ਜੋ ਇੱਕੋ Google ਖਾਤੇ ਨਾਲ ਸਾਈਨ-ਇਨ ਕੀਤੇ ਹੋਏ ਹਨ</translation> <translation id="6294759976468837022">ਸਵੈਚਲਿਤ-ਸਕੈਨ ਦੀ ਗਤੀ</translation> <translation id="6295158916970320988">ਸਾਰੀਆਂ ਸਾਈਟਾਂ</translation> <translation id="6295855836753816081">ਰੱਖਿਅਤ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ...</translation>
diff --git a/chrome/app/resources/generated_resources_pl.xtb b/chrome/app/resources/generated_resources_pl.xtb index 33f6a98..66f0816d 100644 --- a/chrome/app/resources/generated_resources_pl.xtb +++ b/chrome/app/resources/generated_resources_pl.xtb
@@ -334,7 +334,6 @@ <translation id="1319983966058170660">Przycisk Wstecz na podstronie <ph name="SUBPAGE_TITLE" /></translation> <translation id="1322046419516468189">Swoje zapisane hasła znajdziesz tutaj: <ph name="SAVED_PASSWORDS_STORE" /></translation> <translation id="1324106254079708331">Chroni osobiste konta Google każdej osoby zagrożonej atakami ukierunkowanymi</translation> -<translation id="1326317727527857210">Aby korzystać z kart ze swoich innych urządzeń, zaloguj się w Chrome.</translation> <translation id="1327272175893960498">Bilety Kerberos</translation> <translation id="1327495825214193325">Aby włączyć debugowanie ADB, musisz ponownie uruchomić urządzenie <ph name="DEVICE_TYPE" />. W celu wyłączenia tej funkcji trzeba będzie przywrócić na urządzeniu ustawienia fabryczne.</translation> <translation id="1327794256477341646">Nie będą działać funkcje, które potrzebują lokalizacji</translation> @@ -2412,7 +2411,6 @@ <translation id="3280243678470289153">Zostań w Chrome</translation> <translation id="3281892622610078515">Pliki i programy do kwarantanny:</translation> <translation id="3282210178675490297">Udostępniam kartę aplikacji <ph name="APP_NAME" /></translation> -<translation id="3282568296779691940">Zaloguj się w Chrome</translation> <translation id="3285322247471302225">Nowa &karta</translation> <translation id="328571385944182268">Zapisywać Twoje hasła?</translation> <translation id="3288047731229977326">Rozszerzenia działające w trybie dewelopera mogą uszkodzić Twój komputer. Jeśli nie jesteś deweloperem, wyłącz je dla bezpieczeństwa.</translation> @@ -3254,6 +3252,7 @@ <translation id="4077919383365622693">Wszystkie dane i pliki cookie zapisane przez stronę <ph name="SITE" /> zostaną wyczyszczone.</translation> <translation id="4078738236287221428">Agresywne</translation> <translation id="4079140982534148664">Używaj ulepszonego sprawdzania pisowni</translation> +<translation id="4081203444152654304">Wyszukaj w obrazie za pomocą narzędzia <ph name="VISUAL_SEARCH_PROVIDER" /></translation> <translation id="4081242589061676262">Nie można przesłać pliku.</translation> <translation id="408223403876103285">Strona <ph name="WEBSITE" /> wysłała powiadomienie na Twój telefon. Aby potwierdzić swoją tożsamość, wykonaj podane w nim instrukcje.</translation> <translation id="4084682180776658562">Dodaj do zakładek</translation> @@ -3286,7 +3285,6 @@ <translation id="4101352914005291489">Ukryty identyfikator SSID</translation> <translation id="4102469565336584882">Nieprawidłowy kod. Wpisany ciąg musi mieć format LPA:1$<adres smdp>$<kod aktywacji></translation> <translation id="4102906002417106771">Uruchom ponownie, by wykonać Powerwash</translation> -<translation id="4104163789986725820">E&ksportuj</translation> <translation id="4107048419833779140">Rozpoznawanie i wysuwanie urządzeń pamięci</translation> <translation id="4108314971463891922">Obserwuj</translation> <translation id="4109135793348361820">Przesuń okno do: <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />)</translation> @@ -3650,6 +3648,7 @@ <translation id="4476590490540813026">Sportowiec</translation> <translation id="4476659815936224889">Aby zeskanować ten kod, skorzystaj ze skanera kodów QR w telefonie lub z aplikacji aparatu.</translation> <translation id="4477015793815781985">Uwzględnij klawisze Ctrl, Alt lub ⌘</translation> +<translation id="4477379360383751882">Wyszukaj w obrazie za pomocą narzędzia <ph name="VISUAL_SEARCH_PROVIDER" /></translation> <translation id="4478664379124702289">Zapisz link ja&ko...</translation> <translation id="4479424953165245642">Zarządzaj aplikacjami kiosku</translation> <translation id="4479639480957787382">Ethernet</translation> @@ -5041,6 +5040,7 @@ <translation id="5860494867054883682">Aktualizuję Twoje urządzenie do kanału: <ph name="CHANNEL_NAME" /> (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">Pokaż narzędzia rysika na półce</translation> <translation id="5862319196656206789">Skonfiguruj połączone urządzenia</translation> +<translation id="5862731021271217234">Aby korzystać z kart ze swoich innych urządzeń, włącz synchronizację</translation> <translation id="5863445608433396414">Włącz funkcje debugowania</translation> <translation id="5864195618110239517">Użyj połączenia z pomiarem użycia danych</translation> <translation id="5864754048328252126">Bezczynność podczas ładowania</translation> @@ -5477,7 +5477,6 @@ <translation id="6291949900244949761">Pytaj, gdy strona chce uzyskać dostęp do urządzeń USB (zalecane)</translation> <translation id="6291953229176937411">&Pokaż w Finderze</translation> <translation id="6292699686837272722">Karty zmniejszają się do średniej szerokości</translation> -<translation id="6294610283659775533">Możesz przesyłać karty między urządzeniami zalogowanymi na to samo konto Google</translation> <translation id="6294759976468837022">Szybkość automatycznego skanowania</translation> <translation id="6295158916970320988">Wszystkie witryny</translation> <translation id="6295855836753816081">Zapisuję…</translation> @@ -5905,6 +5904,7 @@ <translation id="6709133671862442373">Wiadomości</translation> <translation id="6709357832553498500">Połącz za pomocą rozszerzenia <ph name="EXTENSIONNAME" /></translation> <translation id="6710213216561001401">Poprzedni</translation> +<translation id="6710394144992407503">Sprawdzaj pisownię podczas wpisywania tekstu na stronach internetowych</translation> <translation id="6711146141291425900">Połącz konto usługi <ph name="WEB_DRIVE" />, aby umożliwić pobieranie plików</translation> <translation id="6712943853047024245">Masz już zapisane hasło do strony <ph name="WEBSITE" /> powiązane z tą nazwą użytkownika.</translation> <translation id="6713233729292711163">Dodaj profil służbowy</translation> @@ -6526,6 +6526,7 @@ <translation id="7340757554212515731">Automatycznie wysyła do Google raporty o awariach, dane diagnostyczne i dane o korzystaniu</translation> <translation id="7341834142292923918">Chce mieć dostęp do tej strony</translation> <translation id="7343372807593926528">Zanim wyślesz opinię, opisz problem.</translation> +<translation id="7344585835349671209">Zarządzaj certyfikatami HTTPS/SSL na urządzeniu</translation> <translation id="7345706641791090287">Potwierdź hasło</translation> <translation id="7346909386216857016">Rozumiem</translation> <translation id="7347452120014970266">Spowoduje to usunięcie wszystkich danych i plików cookie zapisanych przez stronę <ph name="ORIGIN_NAME" /> oraz jej zainstalowane aplikacje</translation> @@ -6655,6 +6656,7 @@ <translation id="7460045493116006516">Zainstalowany motyw</translation> <translation id="7461924472993315131">Przypnij</translation> <translation id="746216226901520237">Następnym razem Twój telefon odblokuje urządzenie <ph name="DEVICE_TYPE" />. Smart Lock możesz wyłączyć w Ustawieniach.</translation> +<translation id="7464153996453281700">Komponent jest już aktualny</translation> <translation id="7464637891177137294">Zapisz je na swoim koncie Google <ph name="ACCOUNT" /></translation> <translation id="7465522323587461835">{NUM_OPEN_TABS,plural, =1{# otwarta karta – naciśnij, by przełączyć pasek kart}few{# otwarte karty – naciśnij, by przełączyć pasek kart}many{# otwartych kart – naciśnij, by przełączyć pasek kart}other{# otwartej karty – naciśnij, by przełączyć pasek kart}}</translation> <translation id="7465635034594602553">Coś poszło nie tak. Zaczekaj kilka minut, a potem uruchom <ph name="APP_NAME" /> ponownie.</translation> @@ -7164,6 +7166,7 @@ <translation id="793531125873261495">Błąd podczas pobierania maszyny wirtualnej. Spróbuj ponownie.</translation> <translation id="7935451262452051102">Ukończono <ph name="PERCENT" />%</translation> <translation id="7939062555109487992">Opcje zaawansowane</translation> +<translation id="7939328347457537652">Zarządzaj certyfikatami urządzenia</translation> <translation id="7939412583708276221">Zachowaj mimo to</translation> <translation id="7942349550061667556">Czerwony</translation> <translation id="7943368935008348579">Pobieranie plików PDF</translation>
diff --git a/chrome/app/resources/generated_resources_pt-BR.xtb b/chrome/app/resources/generated_resources_pt-BR.xtb index bae768c..79a189fa 100644 --- a/chrome/app/resources/generated_resources_pt-BR.xtb +++ b/chrome/app/resources/generated_resources_pt-BR.xtb
@@ -335,7 +335,6 @@ <translation id="1319983966058170660">Botão "Voltar" da subpágina <ph name="SUBPAGE_TITLE" /></translation> <translation id="1322046419516468189">Ver e gerenciar senhas salvas na sua <ph name="SAVED_PASSWORDS_STORE" /></translation> <translation id="1324106254079708331">Protege as Contas do Google pessoais de todos que correm risco de ataques direcionados</translation> -<translation id="1326317727527857210">Para ver as guias dos seus outros dispositivos, faça login no Chrome.</translation> <translation id="1327272175893960498">Tíquetes do Kerberos</translation> <translation id="1327495825214193325">Para ativar a depuração do adb, é necessário reiniciar este <ph name="DEVICE_TYPE" />. Para desativá-la, é necessário redefinir para a configuração original.</translation> <translation id="1327794256477341646">Recursos que precisam da localização não funcionarão</translation> @@ -2442,7 +2441,6 @@ <translation id="3280243678470289153">Ficar no Chrome</translation> <translation id="3281892622610078515">Arquivos e programas a serem colocados em quarentena:</translation> <translation id="3282210178675490297">Compartilhando uma guia com <ph name="APP_NAME" /></translation> -<translation id="3282568296779691940">Fazer login no Google Chrome</translation> <translation id="3285322247471302225">Nova &guia</translation> <translation id="328571385944182268">Salvar senhas?</translation> <translation id="3288047731229977326">Extensões executadas no modo de desenvolvedor podem prejudicar o computador. Se você não for desenvolvedor, para sua segurança, desative essas extensões que estão sendo executadas no modo de desenvolvedor.</translation> @@ -3317,7 +3315,6 @@ <translation id="4101352914005291489">SSID oculto</translation> <translation id="4102469565336584882">Código inválido. Sua entrada precisa ter o formato LPA:1$<smdp address>$<activation code></translation> <translation id="4102906002417106771">Reiniciar para executar o Powerwash</translation> -<translation id="4104163789986725820">E&xportar...</translation> <translation id="4107048419833779140">Identificar e ejetar dispositivos de armazenamento</translation> <translation id="4108314971463891922">Seguir</translation> <translation id="4109135793348361820">Mover janela para <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />)</translation> @@ -5075,6 +5072,7 @@ <translation id="5860494867054883682">Atualizando seu dispositivo para o canal <ph name="CHANNEL_NAME" /> (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">Mostrar ferramentas da stylus na estante</translation> <translation id="5862319196656206789">Configurar dispositivos conectados</translation> +<translation id="5862731021271217234">Para ver as guias dos seus outros dispositivos, ative a sincronização</translation> <translation id="5863445608433396414">Ativar recursos de depuração</translation> <translation id="5864195618110239517">Usar conexão limitada</translation> <translation id="5864754048328252126">Ação de inatividade ao carregar</translation> @@ -5511,7 +5509,6 @@ <translation id="6291949900244949761">Perguntar quando um site quiser acessar dispositivos USB (recomendado)</translation> <translation id="6291953229176937411">&Mostrar no Finder</translation> <translation id="6292699686837272722">as guias são encolhidas para uma largura média</translation> -<translation id="6294610283659775533">Você pode compartilhar guias entre dispositivos conectados à mesma Conta do Google</translation> <translation id="6294759976468837022">Velocidade da leitura automática</translation> <translation id="6295158916970320988">Todos os sites</translation> <translation id="6295855836753816081">Salvando...</translation>
diff --git a/chrome/app/resources/generated_resources_pt-PT.xtb b/chrome/app/resources/generated_resources_pt-PT.xtb index fd72b67..d426322f 100644 --- a/chrome/app/resources/generated_resources_pt-PT.xtb +++ b/chrome/app/resources/generated_resources_pt-PT.xtb
@@ -332,7 +332,6 @@ <translation id="1319983966058170660">Botão anterior da subpágina <ph name="SUBPAGE_TITLE" /></translation> <translation id="1322046419516468189">Veja e faça a gestão das palavras-passe guardadas em <ph name="SAVED_PASSWORDS_STORE" />.</translation> <translation id="1324106254079708331">Salvaguarda as Contas Google pessoais de qualquer pessoa em risco de ataques direcionados.</translation> -<translation id="1326317727527857210">Para obter os separadores dos seus outros dispositivos, inicie sessão no Chrome.</translation> <translation id="1327272175893960498">Permissões Kerberos</translation> <translation id="1327495825214193325">Para ativar a depuração do adb, tem de reiniciar este <ph name="DEVICE_TYPE" />. A desativação requer a reposição das definições de fábrica.</translation> <translation id="1327794256477341646">As funcionalidades que precisam da sua localização não funcionam</translation> @@ -2427,7 +2426,6 @@ <translation id="3280243678470289153">Permanecer no Chrome</translation> <translation id="3281892622610078515">Ficheiros e programas a colocar em quarentena:</translation> <translation id="3282210178675490297">A partilhar um separador com <ph name="APP_NAME" />…</translation> -<translation id="3282568296779691940">Iniciar sessão no Chrome</translation> <translation id="3285322247471302225">Novo &Separador</translation> <translation id="328571385944182268">Pretende guardar as suas palavras-passe?</translation> <translation id="3288047731229977326">As extensões que funcionam no modo de programador podem danificar o seu computador. Se não é programador, deverá desativar as extensões que sejam executadas neste modo para se manter protegido.</translation> @@ -3301,7 +3299,6 @@ <translation id="4101352914005291489">SSID oculto</translation> <translation id="4102469565336584882">Código inválido. A sua entrada deve ter o formato LPA:1$<smdp address>$<activation code></translation> <translation id="4102906002417106771">Reiniciar para Powerwash</translation> -<translation id="4104163789986725820">E&xportar...</translation> <translation id="4107048419833779140">Identificar e ejetar dispositivos de armazenamento</translation> <translation id="4108314971463891922">Seguir</translation> <translation id="4109135793348361820">Mover a janela para <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />)</translation> @@ -4110,6 +4107,7 @@ <translation id="4900392736118574277">A sua página inicial foi alterada para <ph name="URL" />.</translation> <translation id="490051679772058907"><ph name="REFRESH_RATE" /> Hz – entrelaçado</translation> <translation id="4900652253009739885">Não é possível remover o único interruptor atribuído a "Selecionar". Prima qualquer tecla para <ph name="RESPONSE" />.</translation> +<translation id="4901154724271753917">Expanda os fechados recentemente</translation> <translation id="4901309472892185668">Selecione o estado da experiência <ph name="EXPERIMENT_NAME" />.</translation> <translation id="49027928311173603">A política transferida do servidor é inválida: <ph name="VALIDATION_ERROR" />.</translation> <translation id="4906490889887219338">Configure ou efetue a gestão de partilhas de ficheiros na rede. <ph name="LINK_BEGIN" />Saber mais<ph name="LINK_END" /></translation> @@ -5057,6 +5055,7 @@ <translation id="5860494867054883682">A atualizar o dispositivo para o canal <ph name="CHANNEL_NAME" /> (<ph name="PROGRESS_PERCENT" />)…</translation> <translation id="5862109781435984885">Mostrar ferramentas da caneta stylus na prateleira</translation> <translation id="5862319196656206789">Configurar dispositivos ligados</translation> +<translation id="5862731021271217234">Para obter os separadores dos seus outros dispositivos, ative a sincronização.</translation> <translation id="5863445608433396414">Ativar funcionalidades de depuração</translation> <translation id="5864195618110239517">Utilizar ligação com acesso limitado</translation> <translation id="5864754048328252126">Ação de inatividade ao carregar</translation> @@ -5493,7 +5492,6 @@ <translation id="6291949900244949761">Perguntar quando um site pretender aceder a dispositivos USB (recomendado)</translation> <translation id="6291953229176937411">Mo&strar no Finder</translation> <translation id="6292699686837272722">Os separadores são reduzidos para uma largura média</translation> -<translation id="6294610283659775533">Pode enviar separadores entre dispositivos que têm sessão iniciada com a mesma Conta Google</translation> <translation id="6294759976468837022">Velocidade da análise automática</translation> <translation id="6295158916970320988">Todos os sites</translation> <translation id="6295855836753816081">A guardar...</translation> @@ -6999,6 +6997,7 @@ <translation id="7768526219335215384"><ph name="ORIGIN" /> poderá ver os ficheiros em <ph name="FOLDERNAME" /></translation> <translation id="7768770796815395237">Alterar</translation> <translation id="7768784765476638775">Selecionar para ativar voz</translation> +<translation id="7769748505895274502">Reduza os fechados recentemente</translation> <translation id="7770406201819593386">Executar testes de diagnóstico do ChromeOS Flex.</translation> <translation id="7770450735129978837">Clique com o botão direito do rato</translation> <translation id="7770612696274572992">Imagem copiada de outro dispositivo</translation>
diff --git a/chrome/app/resources/generated_resources_ro.xtb b/chrome/app/resources/generated_resources_ro.xtb index 7dec9da..3640702 100644 --- a/chrome/app/resources/generated_resources_ro.xtb +++ b/chrome/app/resources/generated_resources_ro.xtb
@@ -333,7 +333,6 @@ <translation id="1319983966058170660">Butonul Înapoi din pagina secundară <ph name="SUBPAGE_TITLE" /></translation> <translation id="1322046419516468189">Vezi și gestionează parolele salvate în <ph name="SAVED_PASSWORDS_STORE" /></translation> <translation id="1324106254079708331">Protejează Conturile Google personale ale utilizatorilor care pot fi ținta atacurilor direcționate</translation> -<translation id="1326317727527857210">Pentru a accesa filele de pe alte dispozitive, conectează-te la Chrome.</translation> <translation id="1327272175893960498">Tichete Kerberos</translation> <translation id="1327495825214193325">Ca să activezi remedierea erorilor prin ADB, trebuie să repornești acest <ph name="DEVICE_TYPE" />. Dezactivarea necesită revenirea la setările din fabrică.</translation> <translation id="1327794256477341646">Funcțiile care au nevoie de locația ta nu vor funcționa</translation> @@ -2427,7 +2426,6 @@ <translation id="3280243678470289153">Rămâi în Chrome</translation> <translation id="3281892622610078515">Fișierele și programele ce urmează a fi mutate în carantină:</translation> <translation id="3282210178675490297">Se distribuie o filă către <ph name="APP_NAME" /></translation> -<translation id="3282568296779691940">Conectează-te la Chrome</translation> <translation id="3285322247471302225">Filă &nouă</translation> <translation id="328571385944182268">Salvezi parolele?</translation> <translation id="3288047731229977326">Extensiile care rulează în modul pentru dezvoltatori pot afecta computerul. Dacă nu sunteți dezvoltator, se recomandă să dezactivați aceste extensii, pentru siguranță.</translation> @@ -3269,6 +3267,7 @@ <translation id="4077919383365622693">Toate datele și cookie-urile stocate de <ph name="SITE" /> vor fi șterse.</translation> <translation id="4078738236287221428">Agresivă</translation> <translation id="4079140982534148664">Folosește verificarea îmbunătățită a ortografiei</translation> +<translation id="4081203444152654304">Caută în imagine cu <ph name="VISUAL_SEARCH_PROVIDER" /></translation> <translation id="4081242589061676262">Nu se poate proiecta fișierul.</translation> <translation id="408223403876103285"><ph name="WEBSITE" /> a trimis o notificare către telefonul tău. Urmează pașii indicați pentru a-ți confirma identitatea.</translation> <translation id="4084682180776658562">Marcaj</translation> @@ -3301,7 +3300,6 @@ <translation id="4101352914005291489">SSID ascuns</translation> <translation id="4102469565336584882">Cod nevalid. Intrarea ar trebui să aibă formatul LPA:1$<smdp address>$<activation code></translation> <translation id="4102906002417106771">Repornește pentru a face Powerwash</translation> -<translation id="4104163789986725820">E&xportă...</translation> <translation id="4107048419833779140">Identifică și elimină dispozitivele de stocare</translation> <translation id="4108314971463891922">Urmărește</translation> <translation id="4109135793348361820">Mutați fereastra la <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />)</translation> @@ -3665,6 +3663,7 @@ <translation id="4476590490540813026">Atletă</translation> <translation id="4476659815936224889">Pentru a scana codul, poți folosi o aplicație de scanare a codurilor QR pe telefon sau anumite aplicații pentru camera foto.</translation> <translation id="4477015793815781985">Include Ctrl, Alt sau ⌘</translation> +<translation id="4477379360383751882">Caută în imagine cu <ph name="VISUAL_SEARCH_PROVIDER" /></translation> <translation id="4478664379124702289">Salvează lin&kul ca...</translation> <translation id="4479424953165245642">Gestionați aplicațiile de tip chioșc</translation> <translation id="4479639480957787382">Ethernet</translation> @@ -5057,6 +5056,7 @@ <translation id="5860494867054883682">Se actualizează dispozitivul la canalul <ph name="CHANNEL_NAME" /> (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">Afișează pe raft instrumentele pentru creion</translation> <translation id="5862319196656206789">Configurează dispozitivele conectate</translation> +<translation id="5862731021271217234">Pentru a accesa filele de pe alte dispozitive, activează sincronizarea</translation> <translation id="5863445608433396414">Activează funcțiile de remediere a erorilor</translation> <translation id="5864195618110239517">Folosește conexiunea contorizată</translation> <translation id="5864754048328252126">Măsura pentru inactivitate în timpul încărcării</translation> @@ -5493,7 +5493,6 @@ <translation id="6291949900244949761">Anunță-mă dacă un site vrea să acceseze dispozitive USB (recomandat)</translation> <translation id="6291953229176937411">&Afișează în Finder</translation> <translation id="6292699686837272722">Filele se micșorează la lățime medie</translation> -<translation id="6294610283659775533">Poți să trimiți file între dispozitivele conectate cu același Cont Google.</translation> <translation id="6294759976468837022">Viteza de scanare automată</translation> <translation id="6295158916970320988">Toate site-urile</translation> <translation id="6295855836753816081">Se salvează...</translation>
diff --git a/chrome/app/resources/generated_resources_ru.xtb b/chrome/app/resources/generated_resources_ru.xtb index 66ed563..efbd9a1 100644 --- a/chrome/app/resources/generated_resources_ru.xtb +++ b/chrome/app/resources/generated_resources_ru.xtb
@@ -335,7 +335,6 @@ <translation id="1319983966058170660">Кнопка "Назад" для перехода на подстраницу "<ph name="SUBPAGE_TITLE" />"</translation> <translation id="1322046419516468189">Просматривать сохраненные пароли и управлять ими можно на странице <ph name="SAVED_PASSWORDS_STORE" />.</translation> <translation id="1324106254079708331">Защита личных аккаунтов Google для тех, кто чаще других подвергается целенаправленным атакам.</translation> -<translation id="1326317727527857210">Чтобы получить доступ к вкладкам на всех ваших устройствах, войдите в Chrome.</translation> <translation id="1327272175893960498">Билеты Kerberos</translation> <translation id="1327495825214193325">Чтобы включить отладку с ADB, нужно перезагрузить это устройство <ph name="DEVICE_TYPE" />. Для отключения ADB потребуется сбросить настройки устройства до заводских.</translation> <translation id="1327794256477341646">Функции, которым нужна информация о местоположении, не будут работать</translation> @@ -362,6 +361,7 @@ <translation id="1347256498747320987">Установка обновлений и приложений. Продолжая, вы разрешаете устройству автоматически скачивать и устанавливать обновления и приложения от производителя устройства, оператора связи и компании Google (в том числе по мобильной сети). Некоторые из этих приложений могут предлагать приобрести платный контент. <ph name="BEGIN_LINK1" />Подробнее…<ph name="END_LINK1" /></translation> <translation id="1347512539447549782">Хранилище Linux</translation> <translation id="1347975661240122359">Обновление начнется, когда заряд батареи достигнет <ph name="BATTERY_LEVEL" />%.</translation> +<translation id="1348966090521113558">Настройки специальных возможностей для мыши</translation> <translation id="1353275871123211385">Установить родительский контроль, например одобрять приложения и ограничивать время использования устройства, можно только в том случае, если у вашего ребенка есть аккаунт Google, управляемый родителем. Позже можно добавить учебный аккаунт, который подойдет для таких сервисов , как Google Класс.</translation> <translation id="135389172849514421">Доступен офлайн</translation> <translation id="1353980523955420967">Не удается найти файл PPD. Убедитесь, что устройство Chromebook подключено к Интернету, и повторите попытку.</translation> @@ -1785,6 +1785,7 @@ <translation id="2653659639078652383">Отправить</translation> <translation id="265390580714150011">Значение поля</translation> <translation id="2654553774144920065">Запрос на печать</translation> +<translation id="2657612187216250073">Настройки специальных возможностей для курсора</translation> <translation id="2658941648214598230">Показать оригинальный контент?</translation> <translation id="2659381484350128933"><ph name="FOOTNOTE_POINTER" />Набор доступных функций зависит от устройства.</translation> <translation id="2659971421398561408">Изменить размер диска Crostini</translation> @@ -1948,6 +1949,7 @@ <translation id="2801954693771979815">Масштаб изображения на экране</translation> <translation id="2802557211515765772">Нет управляемых принтеров.</translation> <translation id="2803313416453193357">Открыть папку.</translation> +<translation id="2803719750464280163">Подтвердите, что на устройстве Bluetooth <ph name="DEVICE" /> показан ключ доступа <ph name="PASSKEY" />.</translation> <translation id="2804043232879091219">Не удалось открыть альтернативный браузер.</translation> <translation id="2804667941345577550">Вы автоматически выйдете из аккаунта на этом сайте (в том числе на открытых вкладках).</translation> <translation id="2804680522274557040">Камера отключена</translation> @@ -2424,7 +2426,6 @@ <translation id="3280243678470289153">Продолжить в Chrome</translation> <translation id="3281892622610078515">Файлы и программы, которые будут отправлены в карантин:</translation> <translation id="3282210178675490297">Отправка вкладки в приложение <ph name="APP_NAME" />…</translation> -<translation id="3282568296779691940">Войти в Chrome</translation> <translation id="3285322247471302225">Новая вкладка</translation> <translation id="328571385944182268">Сохранить пароли?</translation> <translation id="3288047731229977326">Расширения, запущенные в режиме разработчика, могут причинить вред вашему компьютеру. Если вы не являетесь разработчиком, их следует отключить, чтобы обеспечить безопасность данных.</translation> @@ -2864,6 +2865,7 @@ <translation id="370649949373421643">Включить Wi-Fi</translation> <translation id="370665806235115550">Загрузка...</translation> <translation id="3707163604290651814">Вы вошли как <ph name="NAME" /></translation> +<translation id="3708295717182051206">Субтитры</translation> <translation id="3708684582558000260">Запретить закрытым сайтам завершать отправку и получение данных</translation> <translation id="3709244229496787112">Браузер был закрыт до завершения скачивания.</translation> <translation id="371174301504454251">Для защиты вашей конфиденциальности сайты, добавленные в список более четырех недель назад, удаляются из него автоматически. Если вы повторно зайдете на сайт, он может снова появиться в списке. Чтобы сайт не определял ваши интересы, удалите его.</translation> @@ -3297,7 +3299,6 @@ <translation id="4101352914005291489">Скрытое имя сети</translation> <translation id="4102469565336584882">Недействительный код. Запись должна быть в формате LPA: 1$<smdp address>$<activation code>.</translation> <translation id="4102906002417106771">Перезапустить и использовать Powerwash</translation> -<translation id="4104163789986725820">Э&кспорт...</translation> <translation id="4107048419833779140">Идентификация и извлечение запоминающих устройств</translation> <translation id="4108314971463891922">Подписаться</translation> <translation id="4109135793348361820">Перенести окно на рабочий стол пользователя <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />)</translation> @@ -3946,6 +3947,7 @@ <translation id="475088594373173692">Первый пользователь</translation> <translation id="4756378406049221019">Остановить/Перезапустить</translation> <translation id="4756388243121344051">&История</translation> +<translation id="4756671452988984333">Расшифровка для аудио</translation> <translation id="4759202969060787081">Не открывать</translation> <translation id="4759238208242260848">Скачанные файлы</translation> <translation id="4761104368405085019">Использование микрофона</translation> @@ -5052,6 +5054,7 @@ <translation id="5860494867054883682">Переключение на другой канал (<ph name="CHANNEL_NAME" />) (<ph name="PROGRESS_PERCENT" />)…</translation> <translation id="5862109781435984885">Показывать инструменты стилуса на панели запуска</translation> <translation id="5862319196656206789">Настроить подключенные устройства</translation> +<translation id="5862731021271217234">Чтобы получить доступ к вкладкам на всех устройствах, включите синхронизацию.</translation> <translation id="5863445608433396414">Включить функции отладки</translation> <translation id="5864195618110239517">Использовать подключение с тарификацией</translation> <translation id="5864754048328252126">Что делать при переходе в режим бездействия, когда устройство заряжается</translation> @@ -5488,7 +5491,6 @@ <translation id="6291949900244949761">Запрашивать мое разрешение на доступ сайтов к USB-устройствам (рекомендуется)</translation> <translation id="6291953229176937411">Показать в Finder</translation> <translation id="6292699686837272722">вкладки уменьшаются в четыре раза</translation> -<translation id="6294610283659775533">Вы можете отправлять вкладки на устройства, на которых выполнен вход в тот же аккаунт Google.</translation> <translation id="6294759976468837022">Скорость автосканирования</translation> <translation id="6295158916970320988">Все сайты</translation> <translation id="6295855836753816081">Сохранение...</translation> @@ -6887,6 +6889,7 @@ <translation id="7668423670802040666">В Диспетчере паролей Google для аккаунта <ph name="ACCOUNT" /></translation> <translation id="7669825497510425694">{NUM_ATTEMPTS,plural, =1{Неверный PIN-код. Осталась одна попытка.}one{Неверный PIN-код. Осталась # попытка.}few{Неверный PIN-код. Осталось # попытки.}many{Неверный PIN-код. Осталось # попыток.}other{Неверный PIN-код. Осталось # попытки.}}</translation> <translation id="7670434942695515800">Чтобы использовать все возможности системы, обновите ее до последней версии. Рекомендуем создать резервные копии файлов, чтобы в случае ошибки не потерять данные. Когда начнется обновление, Linux выключится. Прежде чем продолжить, сохраните открытые файлы. <ph name="LINK_START" />Подробнее…<ph name="LINK_END" /></translation> +<translation id="7670483791111801022">Субтитры</translation> <translation id="7671130400130574146">Использовать системные рамки и строку заголовка</translation> <translation id="767127784612208024">Нажмите, чтобы подтвердить сброс</translation> <translation id="7672520070349703697"><ph name="HUNG_IFRAME_URL" /> на странице <ph name="PAGE_TITLE" />.</translation> @@ -7974,6 +7977,7 @@ <translation id="8724859055372736596">Показать в папке</translation> <translation id="8725066075913043281">Повторить попытку</translation> <translation id="8725178340343806893">Избранное/Закладки</translation> +<translation id="87254326763805752">Подтвердите ключ доступа</translation> <translation id="8726206820263995930">Ошибка при получении настроек политики с сервера: <ph name="CLIENT_ERROR" />.</translation> <translation id="8728351286589123703">Выбранные разрешения будут сброшены.</translation> <translation id="8729133765463465108">Использовать камеру для сканирования QR-кода</translation>
diff --git a/chrome/app/resources/generated_resources_si.xtb b/chrome/app/resources/generated_resources_si.xtb index 3407893b..cfbca7a 100644 --- a/chrome/app/resources/generated_resources_si.xtb +++ b/chrome/app/resources/generated_resources_si.xtb
@@ -335,7 +335,6 @@ <translation id="1319983966058170660"><ph name="SUBPAGE_TITLE" /> උප පිටු ආපසු බොත්තම</translation> <translation id="1322046419516468189">ඔබගේ <ph name="SAVED_PASSWORDS_STORE" /> හි සුරකින ලද මුරපද බලන්න සහ කළමනාකරණය කරන්න</translation> <translation id="1324106254079708331">කිසියම් ඉලක්කගත ප්රහාරවල අවදානමෙන් පුද්ගලික Google ගිණුම් ආරක්ෂා කරයි</translation> -<translation id="1326317727527857210">ඔබගේ වෙනත් උපාංග වෙතින් ඔබගේ ටැබ ලබා ගැනීමට, Chrome වෙත පුරන්න.</translation> <translation id="1327272175893960498">Kerberos ප්රවේශපත්ර</translation> <translation id="1327495825214193325">ADB නිදොස් කිරීම සබල කිරීමට, මෙම <ph name="DEVICE_TYPE" /> හි යළි ඇරඹුමක් අවශ්යයි. එය අබල කිරීමට කර්මාන්තශාලා සැකසුම් වෙත යළි සැකසීමක් අවශ්යයි.</translation> <translation id="1327794256477341646">ඔබගේ ස්ථානය අවශ්ය විශේෂාංග ක්රියා නොකරනු ඇත</translation> @@ -2429,7 +2428,6 @@ <translation id="3280243678470289153">Chrome තුළ සිටින්න</translation> <translation id="3281892622610078515">නිරෝධායන කළ යුතු ගොනු සහ වැඩසටහන්:</translation> <translation id="3282210178675490297"><ph name="APP_NAME" /> වෙත පටිත්තක් බෙදා ගැනීම</translation> -<translation id="3282568296779691940">Chrome වෙත පුරන්න</translation> <translation id="3285322247471302225">නව සහ ටැබ</translation> <translation id="328571385944182268">ඔබේ මුරපදය සුරකින්නද?</translation> <translation id="3288047731229977326">සංවර්ධක ප්රකාරය තුළ ධාවනය වන දිගු ඔබගේ පරිගණකයට හානි කළ හැක. ඔබ සංවර්ධකයකු නොවේ නම්, ආරක්ෂිතව සිටීමට ඔබ සංවර්ධක ප්රකාරය තුළ ධාවනය වන මෙම දිගු අබල කළ යුතුයි.</translation> @@ -3304,7 +3302,6 @@ <translation id="4101352914005291489">සැඟවුණ SSID</translation> <translation id="4102469565336584882">වලංගු නොවන කේතයකි. ඔබගේ ඇතුළත් කිරීමට LPA ආකෘතිය තිබිය යුතුය:1$<smdp address>$<activation code></translation> <translation id="4102906002417106771">powerwash යළි අරඹන්න</translation> -<translation id="4104163789986725820">අපනයන (&x)...</translation> <translation id="4107048419833779140">ආචයන උපාංග හඳුනා ගෙන බැහැර කරන්න</translation> <translation id="4108314971463891922">අනුගමනය කරන්න</translation> <translation id="4109135793348361820">කවුළුව <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />) වෙත ගෙනයන්න</translation> @@ -5060,6 +5057,7 @@ <translation id="5860494867054883682">ඔබගේ උපාංගය <ph name="CHANNEL_NAME" /> නාලිකාව වෙත යාවත්කාලීන කරමින් (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">රාක්කයෙහි පන්හිඳ මෙවලම් පෙන්වන්න</translation> <translation id="5862319196656206789">සම්බන්ධිත උපාංග පිහිටුවන්න</translation> +<translation id="5862731021271217234">ඔබගේ වෙනත් උපාංගවලින් ඔබගේ පටිති ලබා ගැනීමට, සමමුහුර්තය ක්රියාත්මක කරන්න</translation> <translation id="5863445608433396414">දෝශ නිරාකරණ විශේෂාංග සක්රීය</translation> <translation id="5864195618110239517">මනුගත සම්බන්ධතාව භාවිත කරන්න</translation> <translation id="5864754048328252126">ආරෝපණය අතුරතුර අකර්මණ්ය ක්රියාව</translation> @@ -5496,7 +5494,6 @@ <translation id="6291949900244949761">වෙබ් අඩවියකට USB උපාංග වෙත පිවිසීමට අවශ්ය විටදී අසන්න (නිර්දේශිතයි)</translation> <translation id="6291953229176937411">Finder තුළ පෙන්වන්න (&S)</translation> <translation id="6292699686837272722">ටැබ මධ්යම පළලකට හැකිළෙයි</translation> -<translation id="6294610283659775533">එකම Google ගිණුම සමඟ පුරා ඇති උපාංග අතර ඔබට ටැබ යැවිය හැකිය</translation> <translation id="6294759976468837022">ස්වයං-ස්කෑන් කිරීමේ වේගය</translation> <translation id="6295158916970320988">සියලු අඩවි</translation> <translation id="6295855836753816081">සුරකිමින්...</translation>
diff --git a/chrome/app/resources/generated_resources_sk.xtb b/chrome/app/resources/generated_resources_sk.xtb index 19b262d..b1c8092 100644 --- a/chrome/app/resources/generated_resources_sk.xtb +++ b/chrome/app/resources/generated_resources_sk.xtb
@@ -334,7 +334,6 @@ <translation id="1319983966058170660">Tlačidlo Späť podstránky <ph name="SUBPAGE_TITLE" /></translation> <translation id="1322046419516468189">Uložené heslá si môžete zobraziť a spravovať v časti <ph name="SAVED_PASSWORDS_STORE" /></translation> <translation id="1324106254079708331">Zabezpečuje ochranu všetkých osobných účtov Google, ktorým hrozia cielené útoky</translation> -<translation id="1326317727527857210">Ak chcete získať karty z ďalších svojich zariadení, prihláste sa do Chromu.</translation> <translation id="1327272175893960498">Tikety Kerberos</translation> <translation id="1327495825214193325">Ak chcete aktivovať ladenie ADB, musíte reštartovať toto zariadenie <ph name="DEVICE_TYPE" />. Jeho deaktivácia vyžaduje obnovenie výrobných nastavení.</translation> <translation id="1327794256477341646">Funkcie vyžadujúce vašu polohu nebudú fungovať</translation> @@ -2428,7 +2427,6 @@ <translation id="3280243678470289153">Zostať v Chrome</translation> <translation id="3281892622610078515">Súbory a programy, ktoré sa pridajú do karantény:</translation> <translation id="3282210178675490297">Zdieľa sa karta v aplikácii <ph name="APP_NAME" /></translation> -<translation id="3282568296779691940">Prihlásiť sa do Chromu</translation> <translation id="3285322247471302225">Nová &karta</translation> <translation id="328571385944182268">Chcete ukladať heslá?</translation> <translation id="3288047731229977326">Rozšírenia spustené v režime pre vývojárov môžu poškodiť váš počítač. Ak nie ste vývojár, mali by ste v záujme bezpečnosti rozšírenia spustené v režime vývojára zakázať.</translation> @@ -3302,7 +3300,6 @@ <translation id="4101352914005291489">Skrytý identifikátor SSID</translation> <translation id="4102469565336584882">Neplatný kód. Mali by ste ho zadať vo formáte LPA:1$<smdp address>$<activation code>.</translation> <translation id="4102906002417106771">Reštartovať a spustiť powerwash</translation> -<translation id="4104163789986725820">E&xportovať...</translation> <translation id="4107048419833779140">Identifikovať a vysunúť zariadenia s úložiskom</translation> <translation id="4108314971463891922">Sledovať</translation> <translation id="4109135793348361820">Presunúť okno k používateľovi <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />)</translation> @@ -5057,6 +5054,7 @@ <translation id="5860494867054883682">Vaše zariadenie sa aktualizuje na kanál <ph name="CHANNEL_NAME" /> (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">Zobraziť nástroje pre dotykové pero na poličke</translation> <translation id="5862319196656206789">Nastaviť pripojené zariadenia</translation> +<translation id="5862731021271217234">Ak chcete získať karty zo svojich ostatných zariadení, zapnite synchronizáciu</translation> <translation id="5863445608433396414">Aktivovať funkcie ladenia</translation> <translation id="5864195618110239517">Použiť merané pripojenie</translation> <translation id="5864754048328252126">Akcia pri nečinnosti počas nabíjania</translation> @@ -5493,7 +5491,6 @@ <translation id="6291949900244949761">Opýtať sa, keď chce web získať prístup k zariadeniam USB (odporúčané)</translation> <translation id="6291953229176937411">&Zobraziť v aplikácii Finder</translation> <translation id="6292699686837272722">Karty sa zmenšia na strednú šírku</translation> -<translation id="6294610283659775533">Môžete odosielať karty medzi zariadeniami, v ktorých sa prihlásite rovnakým účtom Google</translation> <translation id="6294759976468837022">Rýchlosť automatického prehľadávania</translation> <translation id="6295158916970320988">Všetky weby</translation> <translation id="6295855836753816081">Ukladá sa...</translation>
diff --git a/chrome/app/resources/generated_resources_sl.xtb b/chrome/app/resources/generated_resources_sl.xtb index 2b627b5..4ebdd8c4 100644 --- a/chrome/app/resources/generated_resources_sl.xtb +++ b/chrome/app/resources/generated_resources_sl.xtb
@@ -337,7 +337,6 @@ <translation id="1319983966058170660">Gumb za nazaj na podstrani <ph name="SUBPAGE_TITLE" /></translation> <translation id="1322046419516468189">Shranjena gesla si lahko ogledate in jih upravljate tukaj: <ph name="SAVED_PASSWORDS_STORE" /></translation> <translation id="1324106254079708331">Varuje osebne račune Google vseh, pri katerih je možno, da pride do ciljanih napadov</translation> -<translation id="1326317727527857210">Če želite dostopati do zavihkov v drugih napravah, se prijavite v Chrome.</translation> <translation id="1327272175893960498">Kartončki za Kerberos</translation> <translation id="1327495825214193325">Če želite omogočiti odpravljanje napak z mostom za odpravljanje težav s sistemom Android (ADB), morate znova zagnati napravo <ph name="DEVICE_TYPE" />. Če ga onemogočite, je potrebna ponastavitev na tovarniške nastavitve.</translation> <translation id="1327794256477341646">Funkcije, ki potrebujejo lokacijo, ne bodo delovale</translation> @@ -2444,7 +2443,6 @@ <translation id="3280243678470289153">Ostani v Chromu</translation> <translation id="3281892622610078515">Datoteke in programi, določeni za karanteno:</translation> <translation id="3282210178675490297">Deljenje zavihka z aplikacijo <ph name="APP_NAME" /></translation> -<translation id="3282568296779691940">Prijava v Chrome</translation> <translation id="3285322247471302225">Nov &zavihek</translation> <translation id="328571385944182268">Želite shranjevati gesla?</translation> <translation id="3288047731229977326">Razširitve, ki se izvajajo v razvijalskem načinu, lahko škodijo vašemu računalniku. Če niste razvijalec, zaradi varnosti onemogočite razširitve, ki se izvajajo v razvijalskem načinu.</translation> @@ -3319,7 +3317,6 @@ <translation id="4101352914005291489">Skrit SSID</translation> <translation id="4102469565336584882">Neveljavna koda. Oblika zapisa vašega vnosa mora biti LPA:1$<smdp address>$<activation code>.</translation> <translation id="4102906002417106771">Znova zaženite za izvedbo Powerwasha</translation> -<translation id="4104163789986725820">I&zvozi ...</translation> <translation id="4107048419833779140">Prepoznavanje in izmet naprav za shranjevanje</translation> <translation id="4108314971463891922">Spremljaj</translation> <translation id="4109135793348361820">Premakni okno uporabniku <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />)</translation> @@ -5079,6 +5076,7 @@ <translation id="5860494867054883682">Posodabljanje naprave na kanal <ph name="CHANNEL_NAME" /> (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">Prikaz orodij za pisalo na polici</translation> <translation id="5862319196656206789">Nastavitev povezanih naprav</translation> +<translation id="5862731021271217234">Če želite dostopati do zavihkov iz drugih naprav, vklopite sinhronizacijo</translation> <translation id="5863445608433396414">Omogoči funkcije za odpravljanje napak</translation> <translation id="5864195618110239517">Uporaba povezave z omejenim prenosom podatkov</translation> <translation id="5864754048328252126">Dejanje ob nedejavnosti med polnjenjem</translation> @@ -5515,7 +5513,6 @@ <translation id="6291949900244949761">Vprašaj, ko želi spletno mesto dostopati do naprav USB (priporočeno)</translation> <translation id="6291953229176937411">&Pokaži v Finderju</translation> <translation id="6292699686837272722">Zavihki se skrčijo na polovično širino.</translation> -<translation id="6294610283659775533">Med napravami, v katerih ste prijavljeni z istim računom Google, si lahko pošiljate zavihke.</translation> <translation id="6294759976468837022">Hitrost samodejnega iskanja</translation> <translation id="6295158916970320988">Vsa spletna mesta</translation> <translation id="6295855836753816081">Shranjevanje ...</translation>
diff --git a/chrome/app/resources/generated_resources_sq.xtb b/chrome/app/resources/generated_resources_sq.xtb index 43c4b58..c3bd0c2 100644 --- a/chrome/app/resources/generated_resources_sq.xtb +++ b/chrome/app/resources/generated_resources_sq.xtb
@@ -332,7 +332,6 @@ <translation id="1319983966058170660">Butoni i kthimit për nënfaqen "<ph name="SUBPAGE_TITLE" />"</translation> <translation id="1322046419516468189">Shfaq dhe administro fjalëkalimet e ruajtura në <ph name="SAVED_PASSWORDS_STORE" /></translation> <translation id="1324106254079708331">Mbron "Llogaritë personale të Google" të të gjithëve nga rreziku i sulmeve të personalizuara</translation> -<translation id="1326317727527857210">Për të marrë skedat e tua nga pajisjet e tua të tjera, identifikohu në Chrome.</translation> <translation id="1327272175893960498">Biletat e Kerberos</translation> <translation id="1327495825214193325">Për të aktivizuar korrigjimin e ADB-së, kërkohet një rinisje e kësaj pajisjeje <ph name="DEVICE_TYPE" />. Çaktivizimi i saj kërkon një rivendosje në cilësimet e fabrikës.</translation> <translation id="1327794256477341646">Veçoritë që kanë nevojë për vendndodhjen tënde nuk do të funksionojnë</translation> @@ -359,6 +358,7 @@ <translation id="1347256498747320987">Instalo përditësimet dhe aplikacionet. Duke vazhduar, ti pranon që kjo pajisje mund të shkarkojë dhe instalojë po ashtu automatikisht përditësime dhe aplikacione nga Google, operatori yt celular dhe prodhuesi i pajisjes, mundësisht duke përdorur të dhënat celulare. Disa prej këtyre aplikacioneve mund të ofrojnë blerje përmes aplikacionit. <ph name="BEGIN_LINK1" />Mëso më shumë<ph name="END_LINK1" /></translation> <translation id="1347512539447549782">Hapësira ruajtëse e Linux</translation> <translation id="1347975661240122359">Përditësimi do të fillojë kur bateria të arrijë në <ph name="BATTERY_LEVEL" />%.</translation> +<translation id="1348966090521113558">Cilësimet e qasshmërisë të miut</translation> <translation id="1353275871123211385">Për të përdorur kontrolle prindërore si miratimin e aplikacioneve dhe kufijtë e kohës para ekranit, një fëmijë duhet të ketë një "Llogari të Google" të menaxhuar nga një prind. Mund të shtohet më vonë një llogari shkolle për vegla si Google Classroom.</translation> <translation id="135389172849514421">Funksionon jashtë linje</translation> <translation id="1353980523955420967">PPD-ja nuk mund të gjendet. Sigurohu që pajisja jote Chromebook është në linjë dhe provo përsëri.</translation> @@ -1781,6 +1781,7 @@ <translation id="2653659639078652383">Dërgoje</translation> <translation id="265390580714150011">Vlera e fushës</translation> <translation id="2654553774144920065">Kërkesa për printim</translation> +<translation id="2657612187216250073">Cilësimet e qasshmërisë të treguesit</translation> <translation id="2658941648214598230">Të shfaqet përmbajtje origjinale?</translation> <translation id="2659381484350128933"><ph name="FOOTNOTE_POINTER" />Veçoritë ndryshojnë sipas pajisjes</translation> <translation id="2659971421398561408">Ndryshimi i përmasave të diskut të Crostini</translation> @@ -1944,6 +1945,7 @@ <translation id="2801954693771979815">Madhësia e ekranit</translation> <translation id="2802557211515765772">Nuk ka printerë të menaxhuar.</translation> <translation id="2803313416453193357">Hap dosjen</translation> +<translation id="2803719750464280163">Konfirmo që <ph name="PASSKEY" /> është çelësi i kalimit i shfaqur në pajisjen me Bluetooth <ph name="DEVICE" />.</translation> <translation id="2804043232879091219">Shfletuesi alternativ nuk mund të hapej</translation> <translation id="2804667941345577550">Do të nxirresh nga ky sajt, duke përfshirë edhe në skedat e hapura</translation> <translation id="2804680522274557040">Kamera është çaktivizuar</translation> @@ -2420,7 +2422,6 @@ <translation id="3280243678470289153">Qëndro në Chrome</translation> <translation id="3281892622610078515">Skedarët dhe programet për t'u vendosur në karantinë:</translation> <translation id="3282210178675490297">Po ndan një skedë në <ph name="APP_NAME" /></translation> -<translation id="3282568296779691940">Identifikohu në Chrome</translation> <translation id="3285322247471302225">&Skedë e re</translation> <translation id="328571385944182268">Ruaj fjalëkalimet e tua</translation> <translation id="3288047731229977326">Shtesat që ekzekutohen në modalitetin e zhvilluesit mund ta dëmtojnë kompjuterin tënd. Nëse nuk je zhvillues, duhet t'i çaktivizosh këto shtesa që ekzekutohen në modalitetin "si zhvillues" për të qenë i sigurt.</translation> @@ -2860,6 +2861,7 @@ <translation id="370649949373421643">Aktivizo Wi-Fi</translation> <translation id="370665806235115550">Po ngarkon...</translation> <translation id="3707163604290651814">Aktualisht i identifikuar si <ph name="NAME" /></translation> +<translation id="3708295717182051206">Titrat</translation> <translation id="3708684582558000260">Mos lejo që sajtet e mbyllura të përfundojnë dërgimin ose marrjen e të dhënave</translation> <translation id="3709244229496787112">Shfletuesi u mbyll përpara përfundimit të shkarkimit.</translation> <translation id="371174301504454251">Për të mbrojtur privatësinë tënde, ne fshijmë automatikisht nga lista sajtet që janë më të vjetra se 4 javë. Një sajt që ti viziton mund të shfaqet në listë përsëri. Ndryshe, mund ta heqësh një sajt nëse nuk dëshiron që ai të përcaktojë ndonjëherë interesat për ty.</translation> @@ -3293,7 +3295,6 @@ <translation id="4101352914005291489">Identifikuesi SSID i fshehur</translation> <translation id="4102469565336584882">Kod i pavlefshëm. Hyrja jote duhet të jetë në formatin LPA:1$<smdp address>$<activation code></translation> <translation id="4102906002417106771">Rivendose për të kryer powerwash</translation> -<translation id="4104163789986725820">E&ksporto...</translation> <translation id="4107048419833779140">Identifiko dhe nxirr pajisjet e hapësirës së ruajtjes</translation> <translation id="4108314971463891922">Ndiq</translation> <translation id="4109135793348361820">Lëvize dritaren te <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />)</translation> @@ -3942,6 +3943,7 @@ <translation id="475088594373173692">Përdoruesi i parë</translation> <translation id="4756378406049221019">Ndalo/Ringarko</translation> <translation id="4756388243121344051">&Historiku</translation> +<translation id="4756671452988984333">Teksti për audion</translation> <translation id="4759202969060787081">Mos e hap</translation> <translation id="4759238208242260848">Shkarkimet</translation> <translation id="4761104368405085019">Përdor mikrofonin</translation> @@ -5047,6 +5049,7 @@ <translation id="5860494867054883682">Po përditëson pajisjen në kanalin <ph name="CHANNEL_NAME" /> (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">Shfaq veglat e stilolapsit në raft</translation> <translation id="5862319196656206789">Konfiguro pajisjet e lidhura</translation> +<translation id="5862731021271217234">Për të marrë skedat e tua nga pajisjet e tjera, aktivizo sinkronizimin</translation> <translation id="5863445608433396414">Aktivizo funksionet e korrigjimit</translation> <translation id="5864195618110239517">Përdor lidhjen me matje</translation> <translation id="5864754048328252126">Veprimi i gjendjes joaktive gjatë karikimit</translation> @@ -5483,7 +5486,6 @@ <translation id="6291949900244949761">Pyet kur një sajt dëshiron të ketë qasje në pajisje me USB (rekomandohet)</translation> <translation id="6291953229176937411">Shfaqe te "Gjetësi"</translation> <translation id="6292699686837272722">Skedat tkurren në një gjerësi të mesme</translation> -<translation id="6294610283659775533">Mund të dërgosh skeda ndërmjet pajisjeve që janë të identifikuara me të njëjtën "Llogari të Google"</translation> <translation id="6294759976468837022">Shpejtësia e skanimit automatik</translation> <translation id="6295158916970320988">Të gjitha sajtet</translation> <translation id="6295855836753816081">Po ruan...</translation> @@ -6876,6 +6878,7 @@ <translation id="7668423670802040666">Në "Menaxherin e fjalëkalimeve" të Google për <ph name="ACCOUNT" /></translation> <translation id="7669825497510425694">{NUM_ATTEMPTS,plural, =1{Kodi PIN është i pasaktë. Të ka mbetur një përpjekje.}other{Kodi PIN është i pasaktë. Të kanë mbetur # përpjekje.}}</translation> <translation id="7670434942695515800">Për performancën më të mirë, përmirësoje në versionin më të fundit. Rekomandohet të rezervosh skedarët, në rast se përmirësimi nuk mund të kryhet. Pasi të fillojë përmirësimi, Linux do të fiket. Ruaj skedarët e hapur para se të vazhdosh. <ph name="LINK_START" />Mëso më shumë<ph name="LINK_END" /></translation> +<translation id="7670483791111801022">Titrat</translation> <translation id="7671130400130574146">Përdor shiritin dhe kufizimet e titullit të sistemit</translation> <translation id="767127784612208024">Prek për të konfirmuar rivendosjen</translation> <translation id="7672520070349703697"><ph name="HUNG_IFRAME_URL" /> në <ph name="PAGE_TITLE" />.</translation> @@ -7960,6 +7963,7 @@ <translation id="8724859055372736596">&Shfaq në dosje</translation> <translation id="8725066075913043281">Provo sërish</translation> <translation id="8725178340343806893">Preferencat/faqeshënuesit</translation> +<translation id="87254326763805752">Konfirmo çelësin e kalimit</translation> <translation id="8726206820263995930">Gabim gjatë marrjes së cilësimeve të politikës nga serveri: <ph name="CLIENT_ERROR" />.</translation> <translation id="8728351286589123703">Lejet e zgjedhura do të rivendosen</translation> <translation id="8729133765463465108">Përdor kamerën për të skanuar kodin QR</translation>
diff --git a/chrome/app/resources/generated_resources_sr-Latn.xtb b/chrome/app/resources/generated_resources_sr-Latn.xtb index f33ce19..96f8d368 100644 --- a/chrome/app/resources/generated_resources_sr-Latn.xtb +++ b/chrome/app/resources/generated_resources_sr-Latn.xtb
@@ -334,7 +334,6 @@ <translation id="1319983966058170660">Dugme Nazad za podstranicu <ph name="SUBPAGE_TITLE" /></translation> <translation id="1322046419516468189">Pregledajte sačuvane lozinke i upravljajte njima sa <ph name="SAVED_PASSWORDS_STORE" /></translation> <translation id="1324106254079708331">Predostrožno štiti lične Google naloge svih korisnika ugroženih ciljanim napadima</translation> -<translation id="1326317727527857210">Da bi vam kartice bile dostupne na drugim uređajima, prijavite se u Chrome.</translation> <translation id="1327272175893960498">Kerberos tiketi</translation> <translation id="1327495825214193325">Da biste omogućili ADB otklanjanje grešaka, morate da restartujete ovaj <ph name="DEVICE_TYPE" />. Da biste ga onemogućili, moraćete da resetujete uređaj na fabrička podešavanja.</translation> <translation id="1327794256477341646">Funkcije kojima je potrebna vaša lokacija neće raditi</translation> @@ -2425,7 +2424,6 @@ <translation id="3280243678470289153">Ostani u Chrome-u</translation> <translation id="3281892622610078515">Datoteke i programi koji treba da se stave u karantin:</translation> <translation id="3282210178675490297">Kartica se deli sa aplikacijom <ph name="APP_NAME" /></translation> -<translation id="3282568296779691940">Prijavljivanje u Chrome</translation> <translation id="3285322247471302225">Nova &kartica</translation> <translation id="328571385944182268">Želite li da sačuvate lozinke?</translation> <translation id="3288047731229977326">Dodaci pokrenuti u režimu programera mogu da naškode računaru. Ako niste programer, trebalo bi da onemogućite ove dodatke pokrenute u režimu programera da biste se zaštitili.</translation> @@ -3300,7 +3298,6 @@ <translation id="4101352914005291489">Skriveni SSID</translation> <translation id="4102469565336584882">Kôd je nevažeći. Unos treba da bude u formatu LPA:1$<smdp adresa>$<aktivacioni kôd></translation> <translation id="4102906002417106771">Restartujte da biste obavili Powerwash</translation> -<translation id="4104163789986725820">I&zvezi...</translation> <translation id="4107048419833779140">identifikuje i izbacuje memorijske uređaje</translation> <translation id="4108314971463891922">Prati</translation> <translation id="4109135793348361820">Premesti prozor kod <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />)</translation> @@ -5057,6 +5054,7 @@ <translation id="5860494867054883682">Ažuriranje uređaja na kanal <ph name="CHANNEL_NAME" /> (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">Prikazuj alatke za pisaljku u polici</translation> <translation id="5862319196656206789">Podesite povezane uređaje</translation> +<translation id="5862731021271217234">Da bi vam kartice bile dostupne na drugim uređajima, uključite sinhronizaciju</translation> <translation id="5863445608433396414">Omogući funkcije za otklanjanje grešaka</translation> <translation id="5864195618110239517">Koristi vezu sa ograničenjem</translation> <translation id="5864754048328252126">Neaktivnost tokom punjenja</translation> @@ -5493,7 +5491,6 @@ <translation id="6291949900244949761">Pitaj kada sajt želi da pristupi USB uređajima (preporučeno)</translation> <translation id="6291953229176937411">&Prikaži u Finder-u</translation> <translation id="6292699686837272722">Kartice se skupljaju do srednje širine</translation> -<translation id="6294610283659775533">Možete da šaljete kartice s jednog uređaja na drugi ako ste na njih prijavljeni pomoću istog Google naloga</translation> <translation id="6294759976468837022">Brzina automatskog skeniranja</translation> <translation id="6295158916970320988">Svi sajtovi</translation> <translation id="6295855836753816081">Čuva se…</translation>
diff --git a/chrome/app/resources/generated_resources_sr.xtb b/chrome/app/resources/generated_resources_sr.xtb index 4d201077..241b514c 100644 --- a/chrome/app/resources/generated_resources_sr.xtb +++ b/chrome/app/resources/generated_resources_sr.xtb
@@ -334,7 +334,6 @@ <translation id="1319983966058170660">Дугме Назад за подстраницу <ph name="SUBPAGE_TITLE" /></translation> <translation id="1322046419516468189">Прегледајте сачуване лозинке и управљајте њима са <ph name="SAVED_PASSWORDS_STORE" /></translation> <translation id="1324106254079708331">Предострожно штити личне Google налоге свих корисника угрожених циљаним нападима</translation> -<translation id="1326317727527857210">Да би вам картице биле доступне на другим уређајима, пријавите се у Chrome.</translation> <translation id="1327272175893960498">Kerberos тикети</translation> <translation id="1327495825214193325">Да бисте омогућили ADB отклањање грешака, морате да рестартујете овај <ph name="DEVICE_TYPE" />. Да бисте га онемогућили, мораћете да ресетујете уређај на фабричка подешавања.</translation> <translation id="1327794256477341646">Функције којима је потребна ваша локација неће радити</translation> @@ -2425,7 +2424,6 @@ <translation id="3280243678470289153">Остани у Chrome-у</translation> <translation id="3281892622610078515">Датотеке и програми који треба да се ставе у карантин:</translation> <translation id="3282210178675490297">Картица се дели са апликацијом <ph name="APP_NAME" /></translation> -<translation id="3282568296779691940">Пријављивање у Chrome</translation> <translation id="3285322247471302225">Нова &картица</translation> <translation id="328571385944182268">Желите ли да сачувате лозинке?</translation> <translation id="3288047731229977326">Додаци покренути у режиму програмера могу да нашкоде рачунару. Ако нисте програмер, требало би да онемогућите ове додатке покренуте у режиму програмера да бисте се заштитили.</translation> @@ -3300,7 +3298,6 @@ <translation id="4101352914005291489">Скривени SSID</translation> <translation id="4102469565336584882">Кôд је неважећи. Унос треба да буде у формату LPA:1$<smdp адреса>$<активациони кôд></translation> <translation id="4102906002417106771">Рестартујте да бисте обавили Powerwash</translation> -<translation id="4104163789986725820">И&звези...</translation> <translation id="4107048419833779140">идентификује и избацује меморијске уређаје</translation> <translation id="4108314971463891922">Прати</translation> <translation id="4109135793348361820">Премести прозор код <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />)</translation> @@ -5057,6 +5054,7 @@ <translation id="5860494867054883682">Ажурирање уређаја на канал <ph name="CHANNEL_NAME" /> (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">Приказуј алатке за писаљку у полици</translation> <translation id="5862319196656206789">Подесите повезане уређаје</translation> +<translation id="5862731021271217234">Да би вам картице биле доступне на другим уређајима, укључите синхронизацију</translation> <translation id="5863445608433396414">Омогући функције за отклањање грешака</translation> <translation id="5864195618110239517">Користи везу са ограничењем</translation> <translation id="5864754048328252126">Неактивност током пуњења</translation> @@ -5493,7 +5491,6 @@ <translation id="6291949900244949761">Питај када сајт жели да приступи USB уређајима (препоручено)</translation> <translation id="6291953229176937411">&Прикажи у Finder-у</translation> <translation id="6292699686837272722">Картице се скупљају до средње ширине</translation> -<translation id="6294610283659775533">Можете да шаљете картице с једног уређаја на други ако сте на њих пријављени помоћу истог Google налога</translation> <translation id="6294759976468837022">Брзина аутоматског скенирања</translation> <translation id="6295158916970320988">Сви сајтови</translation> <translation id="6295855836753816081">Чува се…</translation>
diff --git a/chrome/app/resources/generated_resources_sv.xtb b/chrome/app/resources/generated_resources_sv.xtb index 5763bf3..e3e7748 100644 --- a/chrome/app/resources/generated_resources_sv.xtb +++ b/chrome/app/resources/generated_resources_sv.xtb
@@ -334,7 +334,6 @@ <translation id="1319983966058170660">Bakåtknapp för undersidan <ph name="SUBPAGE_TITLE" /></translation> <translation id="1322046419516468189">Visa och hantera sparade lösenord i <ph name="SAVED_PASSWORDS_STORE" /></translation> <translation id="1324106254079708331">Skyddar personliga Google-konton från riktade attacker</translation> -<translation id="1326317727527857210">Logga in i Chrome om du vill ha samma flikar tillgängliga på alla enheter.</translation> <translation id="1327272175893960498">Kerberos-biljetter</translation> <translation id="1327495825214193325">Du måste starta om <ph name="DEVICE_TYPE" /> om du vill aktivera felsökning med ADB. Om du vill inaktivera funktionen måste du återställa enheten till standardinställningarna.</translation> <translation id="1327794256477341646">Funktioner där din plats behövs slutar fungera</translation> @@ -361,6 +360,7 @@ <translation id="1347256498747320987">Installera uppdateringar och appar. Genom att fortsätta godkänner du att enheten får ladda ned och installera uppdateringar och appar automatiskt från Google, operatören och enhetstillverkaren, eventuellt genom att använda mobildata. Det kan hända att några av apparna erbjuder köp i appen. <ph name="BEGIN_LINK1" />Läs mer<ph name="END_LINK1" /></translation> <translation id="1347512539447549782">Lagringsutrymme för Linux</translation> <translation id="1347975661240122359">Uppdateringen börjar när batterinivån är på <ph name="BATTERY_LEVEL" /> %.</translation> +<translation id="1348966090521113558">Tillgänglighetsinställningar för mus</translation> <translation id="1353275871123211385">Om du vill använda föräldrakontroller som appgodkännanden och skärmtidsgränser måste barnet ha ett Google-konto som hanteras av en förälder. Ett skolkonto som kan användas för verktyg som Google Classroom kan läggas till senare.</translation> <translation id="135389172849514421">Fungerar offline</translation> <translation id="1353980523955420967">Det gick inte att hitta PPD-filen. Kontrollera att Chromebook är ansluten till internet och försök igen.</translation> @@ -1798,6 +1798,7 @@ <translation id="2653659639078652383">Skicka</translation> <translation id="265390580714150011">Fältvärde</translation> <translation id="2654553774144920065">Utskriftsbegäran</translation> +<translation id="2657612187216250073">Tillgänglighetsinställningar för pekare</translation> <translation id="2658941648214598230">Vill du visa originalinnehållet?</translation> <translation id="2659381484350128933"><ph name="FOOTNOTE_POINTER" />Funktionerna varierar beroende på enhet</translation> <translation id="2659971421398561408">Ändra diskstorlek för Crostini</translation> @@ -1962,6 +1963,7 @@ <translation id="2801954693771979815">Skärmstorlek</translation> <translation id="2802557211515765772">Det finns inga hanterade skrivare.</translation> <translation id="2803313416453193357">Öppna mappen</translation> +<translation id="2803719750464280163">Bekräfta att <ph name="PASSKEY" /> är nyckeln som visas på Bluetooth-enheten <ph name="DEVICE" />.</translation> <translation id="2804043232879091219">Det gick inte att öppna den andra webbläsaren</translation> <translation id="2804667941345577550">Du loggas ut från den här webbplatsen, även på öppna flikar</translation> <translation id="2804680522274557040">Kamera har inaktiverats</translation> @@ -2438,7 +2440,6 @@ <translation id="3280243678470289153">Fortsätt i Chrome</translation> <translation id="3281892622610078515">Filer och program som sätts i karantän:</translation> <translation id="3282210178675490297">En flik delas med <ph name="APP_NAME" /></translation> -<translation id="3282568296779691940">Logga in i Chrome</translation> <translation id="3285322247471302225">Ny &flik</translation> <translation id="328571385944182268">Vill du spara lösenorden?</translation> <translation id="3288047731229977326">Tillägg som körs i utvecklarläge kan skada datorn. Om du inte är en utvecklare bör du inaktivera tillägg som körs i utvecklarläge för att skydda dig.</translation> @@ -2878,6 +2879,7 @@ <translation id="370649949373421643">Aktivera wifi</translation> <translation id="370665806235115550">Läser in...</translation> <translation id="3707163604290651814">För närvarande inloggad som <ph name="NAME" /></translation> +<translation id="3708295717182051206">Textning</translation> <translation id="3708684582558000260">Tillåt inte att stängda webbplatser fortsätter skicka eller ta emot data</translation> <translation id="3709244229496787112">Webbläsaren stängdes innan nedladdningen var klar.</translation> <translation id="371174301504454251">För att skydda din integritet raderar vi automatiskt webbplatser som är äldre än fyra veckor från listan. Om du besöker en webbplats på nytt kan den dyka upp på listan igen. Du kan också ta bort en webbplats om du inte vill att webbplatsen någonsin ska definiera dina intressen.</translation> @@ -3311,7 +3313,6 @@ <translation id="4101352914005291489">Dolt SSID</translation> <translation id="4102469565336584882">Ogiltig kod. Posten ska ha formatet LPA:1$<smdp-adress>$<aktiveringskod></translation> <translation id="4102906002417106771">Starta om för att powerwash</translation> -<translation id="4104163789986725820">E&xportera...</translation> <translation id="4107048419833779140">Identifiera och mata ut lagringsenheter</translation> <translation id="4108314971463891922">Följ</translation> <translation id="4109135793348361820">Flytta fönster till <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />)</translation> @@ -3961,6 +3962,7 @@ <translation id="475088594373173692">Första användare</translation> <translation id="4756378406049221019">Stoppa inläsningen/läs in igen</translation> <translation id="4756388243121344051">&Historik</translation> +<translation id="4756671452988984333">Text till ljud</translation> <translation id="4759202969060787081">Öppna inte</translation> <translation id="4759238208242260848">Nedladdningar</translation> <translation id="4761104368405085019">Använd mikrofonen</translation> @@ -5066,6 +5068,7 @@ <translation id="5860494867054883682">Enheten uppdateras till kanalen <ph name="CHANNEL_NAME" /> (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">Visa verktyg för e-penna i hyllan</translation> <translation id="5862319196656206789">Konfigurera anslutna enheter</translation> +<translation id="5862731021271217234">Aktivera synkronisering om du vill ha samma flikar tillgängliga på alla enheter</translation> <translation id="5863445608433396414">Aktivera felsökningsfunktioner</translation> <translation id="5864195618110239517">Använd anslutning med datapriser</translation> <translation id="5864754048328252126">Inaktivitetsåtgärd vid laddning</translation> @@ -5502,7 +5505,6 @@ <translation id="6291949900244949761">Fråga när en webbplats försöker få åtkomst till USB-enheter (rekommenderas)</translation> <translation id="6291953229176937411">&Visa i Finder</translation> <translation id="6292699686837272722">Flikar förminskas till medelstor bredd</translation> -<translation id="6294610283659775533">Du kan skicka flikar mellan enheter som är inloggade på samma Google-konto</translation> <translation id="6294759976468837022">Hastighet för automatisk genomsökning</translation> <translation id="6295158916970320988">Alla webbplatser</translation> <translation id="6295855836753816081">Sparar ...</translation> @@ -6895,6 +6897,7 @@ <translation id="7668423670802040666">I Google Lösenordshantering för <ph name="ACCOUNT" /></translation> <translation id="7669825497510425694">{NUM_ATTEMPTS,plural, =1{Fel pinkod. Du har ett försök kvar.}other{Fel pinkod. Du har # försök kvar.}}</translation> <translation id="7670434942695515800">Uppgradera till den senaste versionen så att det fungerar så bra som möjligt. Vi rekommenderar att du säkerhetskopierar filer ifall det inte skulle gå att slutföra uppgraderingen. Linux avslutas när uppgraderingen börjar. Spara alla öppna filer innan du fortsätter. <ph name="LINK_START" />Läs mer<ph name="LINK_END" /></translation> +<translation id="7670483791111801022">Undertexter</translation> <translation id="7671130400130574146">Använd systemets inställningar för namnlist och ramar</translation> <translation id="767127784612208024">Tryck för att bekräfta återställningen</translation> <translation id="7672520070349703697"><ph name="HUNG_IFRAME_URL" /> på <ph name="PAGE_TITLE" />.</translation> @@ -7982,6 +7985,7 @@ <translation id="8724859055372736596">Visa i &mapp</translation> <translation id="8725066075913043281">Försök igen</translation> <translation id="8725178340343806893">Favoriter/bokmärken</translation> +<translation id="87254326763805752">Bekräfta nyckel</translation> <translation id="8726206820263995930">Det uppstod ett fel när policyinställningarna hämtades från servern: <ph name="CLIENT_ERROR" />.</translation> <translation id="8728351286589123703">Dina valda behörigheter återställs</translation> <translation id="8729133765463465108">Skanna QR-koden med kameran</translation>
diff --git a/chrome/app/resources/generated_resources_sw.xtb b/chrome/app/resources/generated_resources_sw.xtb index c09ede5..a4e279a 100644 --- a/chrome/app/resources/generated_resources_sw.xtb +++ b/chrome/app/resources/generated_resources_sw.xtb
@@ -334,7 +334,6 @@ <translation id="1319983966058170660">Kitufe cha kurudi nyuma kwenye ukurasa mdogo wa <ph name="SUBPAGE_TITLE" /></translation> <translation id="1322046419516468189">Angalia na udhibiti manenosiri yaliyohifadhiwa kwenye <ph name="SAVED_PASSWORDS_STORE" /> yako</translation> <translation id="1324106254079708331">Hulinda Akaunti binafsi za Google za mtu yeyote zilizo katika hatari ya mashambulizi mahususi.</translation> -<translation id="1326317727527857210">Ili upate vichupo kutoka kwenye vifaa vyako vingine, ingia katika Chrome.</translation> <translation id="1327272175893960498">Tiketi za Kerberos</translation> <translation id="1327495825214193325">Ili uwashe utatuzi wa ADB, unahitaji kuzima kisha uwashe <ph name="DEVICE_TYPE" />. Unatakiwa kurejesha mipangilio ya kiwandani kwenye kifaa chako ili uzime.</translation> <translation id="1327794256477341646">Vipengele vinavyohitaji maelezo ya mahali ulipo havitafanya kazi</translation> @@ -2438,7 +2437,6 @@ <translation id="3280243678470289153">Endelea kutumia Chrome</translation> <translation id="3281892622610078515">Faili na programu ambazo zitawekwa kwenye folda ya vipengee vilivyotengwa:</translation> <translation id="3282210178675490297">Inashiriki kichupo kwenye <ph name="APP_NAME" /></translation> -<translation id="3282568296779691940">Ingia katika Chrome</translation> <translation id="3285322247471302225">Kichupo &Kipya</translation> <translation id="328571385944182268">Ungependa kuhifadhi manenosiri yako?</translation> <translation id="3288047731229977326">Viendelezi vinavyoendeshwa katika hali ya msanidi programu vinaweza vikadhuru kompyuta yako. Kama wewe si msanidi programu, unapaswa kuzima viendelezi hivi vinavyoendeshwa katika hali ya msanidi programu ili ukae salama.</translation> @@ -3310,7 +3308,6 @@ <translation id="4101352914005291489">SSID iliyofichwa</translation> <translation id="4102469565336584882">Msimbo wa kuthibitisha si sahihi. Data yako inapaswa kuwa na muundo wa LPA:1$<anwani ya smdp>$<msimbo wa kuanza kutumia></translation> <translation id="4102906002417106771">Zima kifaa kisha ukiwashe ili utumie powerwash</translation> -<translation id="4104163789986725820">&Hamisha...</translation> <translation id="4107048419833779140">Tambua na uondoe vifaa vya hifadhi</translation> <translation id="4108314971463891922">Fuatilia</translation> <translation id="4109135793348361820">Hamisha dirisha hadi kwa <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />)</translation> @@ -4120,6 +4117,7 @@ <translation id="4900392736118574277">Ukurasa wako unaoanza umebadilishwa kuwa <ph name="URL" />.</translation> <translation id="490051679772058907">Hz <ph name="REFRESH_RATE" /> - imejumuishwa pamoja</translation> <translation id="4900652253009739885">Huwezi kuondoa swichi ya pekee iliyokabidhiwa kitendo cha “Chagua.” Bonyeza kitufe chochote ili <ph name="RESPONSE" />.</translation> +<translation id="4901154724271753917">Panua kichupo kilichofungwa hivi karibuni</translation> <translation id="4901309472892185668">Chagua hali ya jaribio la <ph name="EXPERIMENT_NAME" />.</translation> <translation id="49027928311173603">Sera iliyopakuliwa kutoka kwenye seva ni batili: <ph name="VALIDATION_ERROR" />.</translation> <translation id="4906490889887219338">Dhibiti au uweke mipangilio ya faili za kushiriki katika mtandao. <ph name="LINK_BEGIN" />Pata maelezo zaidi<ph name="LINK_END" /></translation> @@ -5066,6 +5064,7 @@ <translation id="5860494867054883682">Inasasisha kifaa chako kwenda kituo cha <ph name="CHANNEL_NAME" /> (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">Onyesha zana za stylus katika rafu</translation> <translation id="5862319196656206789">Weka mipangilio ya vifaa vilivyounganishwa</translation> +<translation id="5862731021271217234">Washa kipengele cha usawazishaji ili upate vichupo kutoka kwenye vifaa vyako vingine</translation> <translation id="5863445608433396414">Washa vipengele vya kutatua</translation> <translation id="5864195618110239517">Tumia muunganisho wa mtandao unaopima data</translation> <translation id="5864754048328252126">Kitendo kwenye kifaa ambacho hakifanyi kitu wakati kinachaji</translation> @@ -5502,7 +5501,6 @@ <translation id="6291949900244949761">Iulize wakati tovuti inataka kufikia vifaa vya USB (inapendekezwa)</translation> <translation id="6291953229176937411">Onye&sha katika Kipataji</translation> <translation id="6292699686837272722">Ukubwa wa vichupo hupunguzwa ili viwe na upana wa wastani</translation> -<translation id="6294610283659775533">Unaweza kutuma vichupo kati ya vifaa ulivyotumia kuingia katika Akaunti moja ya Google</translation> <translation id="6294759976468837022">Kasi ya kipengele cha kuchanganua kiotomatiki</translation> <translation id="6295158916970320988">Tovuti zote</translation> <translation id="6295855836753816081">Inahifadhi...</translation> @@ -7008,6 +7006,7 @@ <translation id="7768526219335215384"><ph name="ORIGIN" /> itaweza kuangalia faili zilizo katika <ph name="FOLDERNAME" /></translation> <translation id="7768770796815395237">Badilisha</translation> <translation id="7768784765476638775">Chagua ili izungumze</translation> +<translation id="7769748505895274502">Kunja kichupo kilichofunguliwa hivi karibuni</translation> <translation id="7770406201819593386">Tekeleza majaribio ya uchunguzi wa ChromeOS Flex.</translation> <translation id="7770450735129978837">Kubofya kipanya upande wa kulia</translation> <translation id="7770612696274572992">Picha imenakiliwa kutoka kwenye kifaa kingine</translation>
diff --git a/chrome/app/resources/generated_resources_ta.xtb b/chrome/app/resources/generated_resources_ta.xtb index 13cda86..7b4d4b2 100644 --- a/chrome/app/resources/generated_resources_ta.xtb +++ b/chrome/app/resources/generated_resources_ta.xtb
@@ -334,7 +334,6 @@ <translation id="1319983966058170660"><ph name="SUBPAGE_TITLE" /> துணைப்பக்கத்தின் 'பின்செல்' பட்டன்</translation> <translation id="1322046419516468189"><ph name="SAVED_PASSWORDS_STORE" /> இலுள்ள சேமிக்கப்பட்ட கடவுச்சொற்களைப் பார்க்கலாம், நிர்வகிக்கலாம்</translation> <translation id="1324106254079708331">இலக்கிடப்பட்ட தாக்குதல்களுக்கு உட்படக்கூடிய எவரது தனிப்பட்ட Google கணக்குகளையும் பாதுகாக்கும்</translation> -<translation id="1326317727527857210">உங்கள் பிற சாதனங்களிலிருந்து தாவல்களைப் பெற, Chrome இல் உள்நுழையவும்.</translation> <translation id="1327272175893960498">Kerberos டிக்கெட்டுகள்</translation> <translation id="1327495825214193325">ADB பிழைதிருத்தத்தை இயக்க, இந்த <ph name="DEVICE_TYPE" /> சாதனத்தை மீண்டும் தொடங்க வேண்டியிருக்கும். இதை முடக்கினால் ஆரம்பநிலை அமைப்புகளுக்கு சாதனம் மீட்டமைக்கப்படும்.</translation> <translation id="1327794256477341646">இருப்பிடத் தகவலின் உதவியுடன் இயங்கும் அம்சங்கள் செயல்படாது</translation> @@ -361,6 +360,7 @@ <translation id="1347256498747320987">புதுப்பிப்புகளையும் ஆப்ஸையும் நிறுவும். தொடர்வதன் மூலம், இந்தச் சாதனம் Google, உங்கள் மொபைல் நிறுவனம் மற்றும் இந்தச் சாதனத்தின் உற்பத்தியாளர் ஆகியோரிடமிருந்து வரும் புதுப்பிப்புகளையும் ஆப்ஸையும் மொபைல் டேட்டாவைப் பயன்படுத்தி தானாகவே பதிவிறக்கி, நிறுவக்கூடும் என்பதை ஏற்கிறீர்கள். இவற்றில் சில ஆப்ஸில் ஆப்ஸ் சார்ந்த வாங்குதல்களும் வழங்கப்படலாம். <ph name="BEGIN_LINK1" />மேலும் அறிக<ph name="END_LINK1" /></translation> <translation id="1347512539447549782">Linux சேமிப்பகம்</translation> <translation id="1347975661240122359">பேட்டரி <ph name="BATTERY_LEVEL" />%ஐ அடையும் போது, புதுப்பிக்கத் தொடங்கும்.</translation> +<translation id="1348966090521113558">மவுஸ் அணுகல்தன்மை அமைப்புகள்</translation> <translation id="1353275871123211385">ஆப்ஸ் அனுமதி, சாதனத்தைப் பயன்படுத்துவதற்கான நேர வரம்புகள் போன்ற பெற்றோர் கட்டுப்பாடுகளைப் பயன்படுத்த, பெற்றோர் நிர்வகிக்கும் ஒரு Google கணக்கு பிள்ளையிடம் இருக்க வேண்டும். Google Classroom போன்ற கருவிகளைப் பயன்படுத்த பள்ளிக் கணக்கைப் பின்னர் சேர்க்கலாம்.</translation> <translation id="135389172849514421">ஆஃப்லைனிலும் பயன்படுத்தலாம்</translation> <translation id="1353980523955420967">PPDயைக் கண்டறிய முடியவில்லை. உங்கள் Chromebook ஆன்லைனில் இருப்பதை உறுதிசெய்து, மீண்டும் முயலவும்.</translation> @@ -1798,6 +1798,7 @@ <translation id="2653659639078652383">சமர்ப்பி</translation> <translation id="265390580714150011">புல மதிப்பு</translation> <translation id="2654553774144920065">பிரிண்ட் செய்வதற்கான கோரிக்கை</translation> +<translation id="2657612187216250073">பாயிண்டர் அணுகல்தன்மை அமைப்புகள்</translation> <translation id="2658941648214598230">அசல் உள்ளடக்கத்தைக் காட்டவா?</translation> <translation id="2659381484350128933"><ph name="FOOTNOTE_POINTER" />சாதனத்திற்கேற்ப அம்சங்கள் மாறுபடலாம்</translation> <translation id="2659971421398561408">Crostini டிஸ்க் அளவை மாற்று</translation> @@ -1962,6 +1963,7 @@ <translation id="2801954693771979815">திரையின் அளவு</translation> <translation id="2802557211515765772">நிர்வகிக்கப்படும் பிரிண்டர்கள் எதுவுமில்லை.</translation> <translation id="2803313416453193357">ஃபோல்டரைத் திற</translation> +<translation id="2803719750464280163"><ph name="DEVICE" /> புளூடூத் சாதனத்தில் <ph name="PASSKEY" /> என்ற கடவுக்குறியீடு காட்டப்படுவதை உறுதிசெய்யவும்.</translation> <translation id="2804043232879091219">மாற்று உலாவியைத் திறக்க முடியவில்லை</translation> <translation id="2804667941345577550">திறந்துள்ள தாவல்களிலிருந்து உட்பட இந்தத் தளத்திலிருந்து வெளியேற்றப்படுவீர்கள்</translation> <translation id="2804680522274557040">கேமரா முடக்கப்பட்டுள்ளது</translation> @@ -2438,7 +2440,6 @@ <translation id="3280243678470289153">Chrome இல் தொடர்க</translation> <translation id="3281892622610078515">தனிமைப்படுத்தப்படவுள்ள கோப்புகளும் நிரல்களும்:</translation> <translation id="3282210178675490297"><ph name="APP_NAME" /> என்ற ஆப்ஸிற்குத் தாவலைப் பகிர்கிறது</translation> -<translation id="3282568296779691940">Chrome இல் உள்நுழைக</translation> <translation id="3285322247471302225">புதிய &தாவல்</translation> <translation id="328571385944182268">உங்கள் கடவுச்சொற்களைச் சேமிக்க வேண்டுமா?</translation> <translation id="3288047731229977326">டெவெலப்பர் பயன்முறையில் இயங்கிக்கொண்டிருக்கும் நீட்டிப்புகள் உங்கள் கம்ப்யூட்டருக்குத் தீங்கு விளைவிக்கலாம். நீங்கள் டெவெலப்பர் இல்லையென்றால், பாதுகாப்பு காரணமாக டெவெலப்பர் பயன்முறையில் இயங்கிக்கொண்டிருக்கும் இந்த நீட்டிப்புகளை முடக்க வேண்டும்.</translation> @@ -2878,6 +2879,7 @@ <translation id="370649949373421643">Wi-fi ஐ இயக்கு</translation> <translation id="370665806235115550">ஏற்றுகிறது…</translation> <translation id="3707163604290651814">தற்போது <ph name="NAME" /> ஆக உள்நுழைந்துள்ளீர்கள்</translation> +<translation id="3708295717182051206">விவரிப்பு சப்டைட்டில்கள்</translation> <translation id="3708684582558000260">தரவை அனுப்புவதையோ பெறுவதையோ நிறைவுசெய்ய, மூடப்பட்ட தளங்களை அனுமதிக்காதே</translation> <translation id="3709244229496787112">பதிவிறக்கம் நிறைவுபெறுவதற்கு முன்பாகவே உலாவி மூடப்பட்டது.</translation> <translation id="371174301504454251">உங்கள் தனியுரிமையைப் பாதுகாக்க, 4 வாரங்களுக்கு முன்னர் நீங்கள் பார்த்த தளங்களைப் பட்டியலில் இருந்து தானாக நீக்குவோம். மீண்டும் நீங்கள் பார்க்கும் தளம், பட்டியலில் மீண்டும் காட்டப்படக்கூடும். அல்லது அந்தத் தளம் உங்கள் ஆர்வங்களை ஒருபோதும் விவரிக்க வேண்டாம் என நீங்கள் நினைத்தால் அதை அகற்றலாம்.</translation> @@ -3311,7 +3313,6 @@ <translation id="4101352914005291489">மறைக்கப்பட்ட SSID</translation> <translation id="4102469565336584882">தவறான குறியீடு. LPA:1$<smdp முகவரி>$<செயல்படுத்தல் குறியீடு> என்ற வடிவமைப்பில் உள்ளீடு இருக்க வேண்டும்</translation> <translation id="4102906002417106771">பவர்வாஷில் மீண்டும் தொடங்கு</translation> -<translation id="4104163789986725820">ஏற்று&மதி...</translation> <translation id="4107048419833779140">சேமிப்பகச் சாதனங்களைக் கண்டறிந்து, வெளியேற்றுதல்</translation> <translation id="4108314971463891922">பின்தொடர்</translation> <translation id="4109135793348361820"><ph name="USER_NAME" /> (<ph name="USER_EMAIL" />) க்குச் சாளரத்தை நகர்த்து</translation> @@ -3961,6 +3962,7 @@ <translation id="475088594373173692">முதல் பயனர்</translation> <translation id="4756378406049221019">நிறுத்து/ரெஃப்ரெஷ் செய்</translation> <translation id="4756388243121344051">&வரலாறு</translation> +<translation id="4756671452988984333">ஆடியோவிற்கான வார்த்தைகள்</translation> <translation id="4759202969060787081">திறக்காதே</translation> <translation id="4759238208242260848">பதிவிறக்கங்கள்</translation> <translation id="4761104368405085019">உங்கள் மைக்ரோஃபோனைப் பயன்படுத்தலாம்</translation> @@ -5067,6 +5069,7 @@ <translation id="5860494867054883682">சாதனத்தை "<ph name="CHANNEL_NAME" />" சேனலுக்குப் புதுப்பிக்கிறது (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">ஸ்டைலஸ் கருவிகளை ஷெல்ஃபில் காட்டு</translation> <translation id="5862319196656206789">இணைக்கப்பட்டுள்ள சாதனங்களை அமைத்திடுங்கள்</translation> +<translation id="5862731021271217234">உங்கள் பிற சாதனங்களிலிருந்து தாவல்களைப் பெற, ஒத்திசைவை இயக்கவும்</translation> <translation id="5863445608433396414">பிழைதிருத்த அம்சங்களை இயக்கவும்</translation> <translation id="5864195618110239517">கட்டண நெட்வொர்க் இணைப்பைப் பயன்படுத்து</translation> <translation id="5864754048328252126">சார்ஜ் செய்யப்படும்போது செயலற்ற நிலை</translation> @@ -5503,7 +5506,6 @@ <translation id="6291949900244949761">ஒரு தளம் USB சாதனங்களை அணுக விரும்பும் போது அனுமதி கேள் (பரிந்துரைக்கப்படுகிறது)</translation> <translation id="6291953229176937411">&கண்டுபிடிப்பானில் காண்பி</translation> <translation id="6292699686837272722">நடுத்தர அகலத்திற்குத் தாவல்களைச் சுருக்கும்</translation> -<translation id="6294610283659775533">ஒரே Google கணக்கின் மூலம் உள்நுழைந்துள்ள சாதனங்களுக்கு இடையே பக்கங்களை அனுப்பிக்கொள்ள முடியும்</translation> <translation id="6294759976468837022">தானியங்கு ஸ்கேனின் வேகம்</translation> <translation id="6295158916970320988">எல்லா தளங்களும்</translation> <translation id="6295855836753816081">சேமிக்கிறது...</translation> @@ -6896,6 +6898,7 @@ <translation id="7668423670802040666">Google கடவுச்சொல் நிர்வாகியில் <ph name="ACCOUNT" /> கணக்கின் கடவுச்சொல் சேமிக்கப்பட்டது</translation> <translation id="7669825497510425694">{NUM_ATTEMPTS,plural, =1{தவறான பின். இன்னும் ஒருமுறை முயலலாம்.}other{தவறான பின். இன்னும் # முறை முயலலாம்.}}</translation> <translation id="7670434942695515800">சிறந்த செயல்திறனுக்கு, சமீபத்திய பதிப்புக்கு மேம்படுத்தவும். மேம்படுத்தலை நிறைவுசெய்ய முடியாத பட்சத்தில் உங்கள் ஃபைல்களைக் காப்புப் பிரதி எடுத்துக்கொள்ளவும். மேம்படுத்தல் தொடங்கியதும் Linux ஷட் டவுன் ஆகிவிடும். தொடரும் முன், திறந்துள்ள ஃபைல்களைச் சேமிக்கவும். <ph name="LINK_START" />மேலும் அறிக<ph name="LINK_END" /></translation> +<translation id="7670483791111801022">சப்டைட்டில்கள்</translation> <translation id="7671130400130574146">முறைமை தலைப்புப் பட்டியையும் கரைகளையும் பயன்படுத்து</translation> <translation id="767127784612208024">ரீசெட்டை உறுதிப்படுத்தத் தொடவும்</translation> <translation id="7672520070349703697"><ph name="PAGE_TITLE" /> இல் <ph name="HUNG_IFRAME_URL" />.</translation> @@ -7983,6 +7986,7 @@ <translation id="8724859055372736596">ஃபோல்டரில் &காண்பி</translation> <translation id="8725066075913043281">மீண்டும் முயற்சிக்கவும்</translation> <translation id="8725178340343806893">விருப்பங்கள்/புக்மார்க்ஸ்</translation> +<translation id="87254326763805752">கடவுக்குறியீட்டை உறுதிசெய்யுங்கள்</translation> <translation id="8726206820263995930">சேவையகத்திலிருந்து கொள்கை அமைப்புகளைப் பெறுவதில் பிழை: <ph name="CLIENT_ERROR" />.</translation> <translation id="8728351286589123703">நீங்கள் தேர்வுசெய்த அனுமதிகள் மீட்டமைக்கப்படும்</translation> <translation id="8729133765463465108">QR குறியீட்டை ஸ்கேன் செய்ய கேமராவைப் பயன்படுத்து</translation>
diff --git a/chrome/app/resources/generated_resources_te.xtb b/chrome/app/resources/generated_resources_te.xtb index 29dc8b4..e611251 100644 --- a/chrome/app/resources/generated_resources_te.xtb +++ b/chrome/app/resources/generated_resources_te.xtb
@@ -81,7 +81,7 @@ <translation id="1076766328672150609">పరికరాన్ని అన్లాక్ చేయడానికి మీ చిన్నారి PINను ఉపయోగించవచ్చు.</translation> <translation id="1076818208934827215">Microsoft Internet Explorer</translation> <translation id="1076882167394279216"><ph name="LANGUAGE" />కు స్పెల్ చెక్ నిఘంటువును డౌన్లోడ్ చేయడం సాధ్యపడలేదు. మళ్లీ ట్రై చేయండి.</translation> -<translation id="1079766198702302550">ఎల్లప్పుడూ కెమెరా యాక్సెస్ను బ్లాక్ చేయి</translation> +<translation id="1079766198702302550">ఎల్లప్పుడూ కెమెరా యాక్సెస్ను బ్లాక్ చేయండి</translation> <translation id="1081956462909987459">{NUM_TABS,plural, =1{<ph name="GROUP_TITLE" /> - 1 ట్యాబ్}other{<ph name="GROUP_TITLE" /> - # ట్యాబ్లు}}</translation> <translation id="1082214733466244292">ఈ పరికరంలో కొంత ఫంక్షనాలిటీని మీ అడ్మినిస్ట్రేటర్ బ్లాక్ చేశారు</translation> <translation id="1082398631555931481"><ph name="THIRD_PARTY_TOOL_NAME" /> మీ Chrome సెట్టింగ్లను వాటి అసలు డిఫాల్ట్లకు పునరుద్ధరించాలనుకుంటోంది. ఇది మీ హోమ్ పేజీని, కొత్త ట్యాబ్ పేజీని మరియు సెర్చ్ ఇంజిన్ను రీసెట్ చేస్తుంది, మీ ఎక్స్టెన్షన్లను నిలిపివేస్తుంది మరియు ట్యాబ్లు అన్నింటినీ అన్పిన్ చేస్తుంది. ఇది కుక్కీలు, కంటెంట్ మరియు సైట్ డేటా వంటి ఇతర తాత్కాలిక మరియు కాష్ చేసిన డేటాను కూడా తీసివేస్తుంది.</translation> @@ -163,7 +163,7 @@ <translation id="1149725087019908252"><ph name="FILE_NAME" />ను స్కాన్ చేస్తోంది</translation> <translation id="1150490752229770117">ఈ <ph name="DEVICE_TYPE" />కు ఇదే చివరి ఆటోమేటిక్ సాఫ్ట్వేర్ మరియు భద్రతాపరమైన అప్డేట్. భవిష్యత్తు అప్డేట్లను పొందడానికి, సరికొత్త మోడల్కు అప్గ్రేడ్ చేయండి. <ph name="LINK_BEGIN" />మరింత తెలుసుకోండి<ph name="LINK_END" /></translation> <translation id="1150565364351027703">చలువ అద్దాలు</translation> -<translation id="1151917987301063366">సెన్సార్లను యాక్సెస్ చేయడానికి ఎల్లవేళలా <ph name="HOST" />ని అనుమతించు</translation> +<translation id="1151917987301063366">సెన్సార్లను యాక్సెస్ చేయడానికి ఎల్లవేళలా <ph name="HOST" />ని అనుమతించండి</translation> <translation id="1152181876167086799"><ph name="SITE_NAME" />ను చదివి, మార్చడానికి అన్ని ఎక్స్టెన్షన్లకు అనుమతినివ్వండి</translation> <translation id="1152346050262092795">మీ ఖాతాను వెరిఫై చేయడానికి మీ పాస్వర్డ్ను మళ్లీ ఎంటర్ చేయండి.</translation> <translation id="1153356358378277386">జత చేసిన పరికరాలు</translation> @@ -198,7 +198,7 @@ <translation id="1177863135347784049">అనుకూల</translation> <translation id="1178581264944972037">పాజ్ చేయి</translation> <translation id="117916940443676133">మీ 'సెక్యూరిటీ కీ'కి పిన్ రక్షణ లేదు. సైన్-ఇన్ డేటాను నిర్వహించడానికి, ముందు పిన్ను క్రియేట్ చేయండి.</translation> -<translation id="1181037720776840403">తీసివేయి</translation> +<translation id="1181037720776840403">తీసివేయండి</translation> <translation id="1183237619868651138">స్థానిక కాష్లో <ph name="EXTERNAL_CRX_FILE" />ను ఇన్స్టాల్ చేయడం సాధ్యపడదు.</translation> <translation id="1185924365081634987">మీరు ఈ నెట్వర్క్ ఎర్రర్ను పరిష్కరించడానికి <ph name="GUEST_SIGNIN_LINK_START" />అతిథిగా బ్రౌజ్ చేయడాన్ని<ph name="GUEST_SIGNIN_LINK_END" /> కూడా ప్రయత్నించవచ్చు.</translation> <translation id="1186771945450942097">హానికరమైన సాఫ్ట్వేర్ని తీసివేయండి</translation> @@ -219,7 +219,7 @@ <translation id="11978075283960463">యాప్లో డేటా స్టోర్ చేయబడింది: <ph name="APP_SIZE" /></translation> <translation id="1197935538609051549">డీయాక్టివేట్ చేయండి</translation> <translation id="1198066799963193307">చూపు సమస్య ఉన్న వారికి సహాయపడే స్పీచ్ టూల్స్</translation> -<translation id="119944043368869598">అన్ని క్లియర్ చేయి</translation> +<translation id="119944043368869598">అన్ని క్లియర్ చేయండి</translation> <translation id="1199814941632954229">ఈ సర్టిఫికెట్ ప్రొఫైల్లకు సర్టిఫికెట్లు అందించబడుతాయి</translation> <translation id="120069043972472860">చూడదగినది కాదు</translation> <translation id="1201402288615127009">తరువాత</translation> @@ -276,7 +276,7 @@ <translation id="1254593899333212300">ప్రత్యక్ష ఇంటర్నెట్ కనెక్షన్</translation> <translation id="1258491128795710625">కొత్తగా ఏమి ఉన్నాయి</translation> <translation id="1259152067760398571">భద్రతా తనిఖీ నిన్న రన్ చేయబడింది</translation> -<translation id="1260451001046713751"><ph name="HOST" /> నుండి ఎల్లప్పుడూ పాప్-అప్లు మరియు మళ్ళింపులను అనుమతించు</translation> +<translation id="1260451001046713751"><ph name="HOST" /> నుండి ఎల్లప్పుడూ పాప్-అప్లు మరియు మళ్ళింపులను అనుమతించండి</translation> <translation id="1260810365552581339">Linux తగినంత డిస్క్ స్పేస్ను కలిగి ఉండకపోవచ్చు. మీ Linux డిస్క్ స్పేస్ను మీరు పెంచుకొని, <ph name="LINK_START" />సెట్టింగ్లలో<ph name="LINK_END" /> తిరిగి రీస్టోర్ చేయడానికి ట్రై చేయవచ్చు.</translation> <translation id="1261380933454402672">మధ్యస్థం</translation> <translation id="126156426083987769">డెమో మోడ్ పరికర లైసెన్స్లకు సంబంధించి ఒక సమస్య ఏర్పడింది.</translation> @@ -297,7 +297,7 @@ <translation id="1277020343994096713">మీ ప్రస్తుత PINకు భిన్నంగా ఉన్న ఒక కొత్త PINను క్రియేట్ చేయండి</translation> <translation id="1278859221870828664">Google Play యాప్లు, సర్వీస్లను రివ్యూ చేయండి</translation> <translation id="127946606521051357">సమీపంలోని పరికరం షేర్ చేస్తోంది</translation> -<translation id="1280965841156951489">ఎడిటింగ్ను అనుమతించు</translation> +<translation id="1280965841156951489">ఎడిటింగ్ను అనుమతించండి</translation> <translation id="1282465000333679776">సిస్టమ్ ఆడియోను షేర్ చేయండి</translation> <translation id="1285320974508926690">ఈ సైట్ను ఎప్పటికీ అనువదించవద్దు</translation> <translation id="1285484354230578868">మీ Google Drive ఖాతాలో డేటాను నిల్వ చేయండి</translation> @@ -314,7 +314,7 @@ <translation id="1297175357211070620">గమ్యం</translation> <translation id="129770436432446029"><ph name="EXPERIMENT_NAME" />పై మీ ఫీడ్బ్యాక్ను పంపండి</translation> <translation id="1301135395320604080"><ph name="ORIGIN" /> కింది ఫైళ్లను సవరించగలదు</translation> -<translation id="1302227299132585524">Apple ఈవెంట్ల నుండి JavaScriptని అనుమతించు</translation> +<translation id="1302227299132585524">Apple ఈవెంట్ల నుండి JavaScriptని అనుమతించండి</translation> <translation id="1303101771013849280">HTML ఫైల్ని బుక్మార్క్ చేస్తుంది</translation> <translation id="1303671224831497365">బ్లూటూత్ పరికరాలు ఏవీ కనుగొనబడలేదు</translation> <translation id="130491383855577612">Linux యాప్లు, ఫైళ్లు విజయంతంగా భర్తీ చేయబడ్డాయి</translation> @@ -334,7 +334,6 @@ <translation id="1319983966058170660"><ph name="SUBPAGE_TITLE" /> సబ్పేజీ 'వెనుకకు' బటన్</translation> <translation id="1322046419516468189">మీ <ph name="SAVED_PASSWORDS_STORE" />లో సేవ్ చేసిన పాస్వర్డ్లను చూడండి మరియు నిర్వహించండి</translation> <translation id="1324106254079708331">లక్షిత ఇంటర్నెట్ దాడులకు గురయ్యే అవకాశం ఉన్న ఎవరి వ్యక్తిగత Google ఖాతాలనైనా రక్షిస్తుంది</translation> -<translation id="1326317727527857210">మీ ఇతర పరికరాల నుండి మీ ట్యాబ్లను పొందడానికి, Chromeకు సైన్ ఇన్ చేయండి.</translation> <translation id="1327272175893960498">Kerberos టిక్కెట్లు</translation> <translation id="1327495825214193325">ADB డీబగ్గింగ్ను ఎనేబుల్ చేయడానికి, ఈ <ph name="DEVICE_TYPE" />ను తప్పనిసరిగా రీస్టార్ట్ చేయాలి. దీనిని డిజేబుల్ చేయాలంటే, ఫ్యాక్టరీ సెట్టింగ్లకు రీసెట్ చేయడం అవసరం అవుతుంది.</translation> <translation id="1327794256477341646">ఏ ఫీచర్లకు మీ లొకేషన్ అవసరం అవుతుందో అవి పని చేయవు</translation> @@ -515,7 +514,7 @@ <translation id="1484979925941077974">బ్లూటూత్ను సైట్ ఉపయోగిస్తోంది</translation> <translation id="1485015260175968628">ఇప్పుడు ఇది వీటిని చేయగలదు:</translation> <translation id="1485141095922496924">వెర్షన్ <ph name="PRODUCT_VERSION" /> (<ph name="PRODUCT_CHANNEL" />) <ph name="PRODUCT_MODIFIER" /> <ph name="PRODUCT_VERSION_BITS" /></translation> -<translation id="1486096554574027028">పాస్వర్డ్లను వెతుకు</translation> +<translation id="1486096554574027028">పాస్వర్డ్లను వెతకండి</translation> <translation id="1487335504823219454">ఆన్ - అనుకూల సెట్టింగ్లు</translation> <translation id="1489664337021920575">మరొక ఎంపికను ఎంచుకోండి</translation> <translation id="1493892686965953381"><ph name="LOAD_STATE_PARAMETER" /> కోసం వేచి ఉంది...</translation> @@ -523,7 +522,7 @@ <translation id="1495677929897281669">తిరిగి ట్యాబ్కు వెళ్లు</translation> <translation id="1500297251995790841">తెలియని పరికరం [<ph name="VENDOR_ID" />:<ph name="PRODUCT_ID" />]</translation> <translation id="1500801317528437432">సపోర్ట్ చేయని Chrome యాప్ల గురించి మరింత తెలుసుకోండి</translation> -<translation id="150411034776756821"><ph name="SITE" />ని తీసివేయి</translation> +<translation id="150411034776756821"><ph name="SITE" />ని తీసివేయండి</translation> <translation id="1504551620756424144">Windowsలో <ph name="BASE_DIR" />లో షేర్ చేసిన ఫోల్డర్లు అందుబాటులో ఉన్నాయి.</translation> <translation id="1506061864768559482">సెర్చ్ ఇంజిన్</translation> <translation id="1507170440449692343">ఈ పేజీ మీ కెమెరాను యాక్సెస్ చేయకుండా బ్లాక్ చేయబడింది.</translation> @@ -542,7 +541,7 @@ <translation id="1515163294334130951">ప్రారంభించండి</translation> <translation id="1521442365706402292">సర్టిఫికెట్లను మేనేజ్ చేయండి</translation> <translation id="1521774566618522728">ఈ రోజు యాక్టివ్గా ఉంది</translation> -<translation id="152234381334907219">ఎప్పటికి సేవ్ చెయ్యబడవు</translation> +<translation id="152234381334907219">ఎప్పటికి సేవ్ చేయబడవు</translation> <translation id="1523279371236772909">గత నెలలో చూశారు</translation> <translation id="1523978563989812243">టెక్ట్స్-టు-స్పీచ్ ఇంజిన్లు</translation> <translation id="1524430321211440688">కీబోర్డ్</translation> @@ -739,7 +738,7 @@ <translation id="1682867089915960590">క్యారెట్ బ్రౌజింగ్ను ఆన్ చేయాలా?</translation> <translation id="1686550358074589746">'పదం పూర్తయ్యేదాకా వేలిని తీసివేయకుండా టైప్ చేయడం'ను ఎనేబుల్ చేయండి</translation> <translation id="168715261339224929">మీ బుక్మార్క్లను మీ అన్ని పరికరాలలోనూ పొందాలంటే, సింక్ను ఆన్ చేయండి.</translation> -<translation id="1688867105868176567">సైట్ డేటాని క్లియర్ చేయాలా?</translation> +<translation id="1688867105868176567">సైట్ డేటాను క్లియర్ చేయాలా?</translation> <translation id="1688935057616748272">అక్షరాన్ని టైప్ చేయండి</translation> <translation id="168991973552362966">సమీపంలోని ప్రింటర్ను జోడించండి</translation> <translation id="1689945336726856614">&URLను కాపీ చేయండి</translation> @@ -750,7 +749,7 @@ <translation id="1695510246756136088">ఇంటర్నెట్కు కనెక్ట్ చేయడం సాధ్యపడదు. మళ్లీ ట్రై చేయండి.</translation> <translation id="169675691788639886">పరికరానికి SSH సర్వర్ కాన్ఫిగర్ చేయబడింది. గోప్యమైన ఖాతాలతో సైన్ ఇన్ చేయవద్దు.</translation> <translation id="1697150536837697295">కళ</translation> -<translation id="1697686431566694143">ఎడిటింగ్ను అనుమతించు</translation> +<translation id="1697686431566694143">ఎడిటింగ్ను అనుమతించండి</translation> <translation id="1700079447639026019">కుక్కీలను ఉపయోగించే అనుమతి ఎప్పటికీ లేని సైట్లు</translation> <translation id="1700201317341192482">మీ వర్చువల్ కార్డ్ను తీసివేయండి</translation> <translation id="1703331064825191675">మీ పాస్వర్డ్ల గురించి ఎప్పుడూ చింతించకండి</translation> @@ -853,7 +852,7 @@ <translation id="1784707308176068866">సహకారం అందించే నేటివ్ అప్లికేషన్ రిక్వెస్ట్ చేసినప్పుడు బ్యాక్గ్రౌండ్లో అమలు అవుతుంది</translation> <translation id="1784849162047402014">పరికరంలో ఖాళీ నిల్వ స్థలం తక్కువగా ఉంది</translation> <translation id="1787350673646245458">యూజర్ చిత్రం</translation> -<translation id="1790976235243700817">యాక్సెస్ను తీసివేయి</translation> +<translation id="1790976235243700817">యాక్సెస్ను తీసివేయండి</translation> <translation id="1791662854739702043">వ్యవస్థాపించబడింది</translation> <translation id="1792619191750875668">విస్తారిత డిస్ప్లే</translation> <translation id="1794051631868188691"><ph name="MERCHANT" />ను ఎప్పుడూ చూపవద్దు</translation> @@ -914,7 +913,7 @@ <translation id="1832848789136765277">మీ సింక్ చేసిన డేటాను మీరు ఎల్లప్పుడూ యాక్సెస్ చేయగలరని నిర్ధారించుకోవడానికి, అది మీరేనని వెరిఫై చేయండి</translation> <translation id="1834503245783133039">డౌన్లోడ్ విజయవంతం కాలేదు: <ph name="FILE_NAME" /></translation> <translation id="1835261175655098052">Linuxను అప్గ్రేడ్ చేయడం</translation> -<translation id="1838374766361614909">శోధనను తీసివేయి</translation> +<translation id="1838374766361614909">శోధనను తీసివేయండి</translation> <translation id="1839021455997460752">మీ ఈమెయిల్ అడ్రస్</translation> <translation id="1839540115464516994"><ph name="LOCATION" />లో చూపించండి</translation> <translation id="1841616161104323629">పరికర రికార్డ్ కనుగొనబడటం లేదు.</translation> @@ -1053,11 +1052,11 @@ <translation id="1974060860693918893">అధునాతన సెట్టింగ్లు</translation> <translation id="1974159333077206889">అన్ని స్పీకర్లతోనూ ఒకేలాంటి ఆడియో</translation> <translation id="1974821797477522211">నెట్వర్క్కి కనెక్ట్ చేయండి</translation> -<translation id="1975841812214822307">తీసివేయి...</translation> +<translation id="1975841812214822307">తీసివేయండి...</translation> <translation id="1976150099241323601">భద్రతా పరికరానికి సైన్ ఇన్ చేయండి</translation> <translation id="1976928778492259496">వేలిముద్ర సెన్సార్ మీ <ph name="DEVICE_TYPE" />కు ఎడమ వైపున ఉంది ఏదైనా వేలితో దాన్ని తేలికగా టచ్ చేయండి.</translation> <translation id="1977965994116744507">మీ <ph name="DEVICE_TYPE" />ను అన్లాక్ చేయడానికి మీ ఫోన్ను సమీపంలోకి తీసుకురండి.</translation> -<translation id="1978057560491495741">అడ్రస్ను తీసివేయి</translation> +<translation id="1978057560491495741">అడ్రస్ను తీసివేయండి</translation> <translation id="1979095679518582070">ఈ ఫీచర్ను ఆఫ్ చేయడం వలన సిస్టమ్ అప్డేట్లు, భద్రత లాంటి ముఖ్యమైన సర్వీస్లకు అవసరమైన సమాచారాన్ని పంపగల ఈ పరికర సామర్థ్యం ప్రభావితం కాదు.</translation> <translation id="1979280758666859181">మీరు <ph name="PRODUCT_NAME" /> పాత వెర్షన్ ఉన్న ఛానెల్కు మారుతున్నారు. ఈ ఛానెల్ వెర్షన్, మీ పరికరంలో ప్రస్తుతం ఇన్స్టాల్ అయిన వెర్షన్కు సరిపోలినప్పుడు ఛానెల్ మార్పు వర్తిస్తుంది.</translation> <translation id="197989455406964291">ఎన్క్రిప్షన్ రకానికి KDC మద్దతు లేదు</translation> @@ -1073,7 +1072,7 @@ <translation id="1990727803345673966">బ్యాకప్ చేసిన మీ Linux ఫైల్స్, యాప్లు రీస్టోర్ చేయబడుతున్నాయి</translation> <translation id="199191324030140441">'అంతరాయం కలిగించవద్దు'ను ఆఫ్ చేయండి</translation> <translation id="1992397118740194946">సెట్ చెయ్యలేదు</translation> -<translation id="1992924914582925289">పరికరం నుండి తీసివేయి</translation> +<translation id="1992924914582925289">పరికరం నుండి తీసివేయండి</translation> <translation id="1994173015038366702">సైట్ URL</translation> <translation id="1995916364271252349">సైట్లు ఉపయోగించగల సమాచారాన్ని, అవి చూపగల కంటెంట్ను (లొకేషన్, కెమెరా, పాప్-అప్లు, మరిన్ని) నియంత్రిస్తుంది</translation> <translation id="1997433994358798851">మీ పరికరానికి కనెక్ట్ చేయడానికి, బ్లూటూత్ను ఉపయోగించడానికి Chromeకు అనుమతి కావాలి</translation> @@ -1198,12 +1197,12 @@ <translation id="2102495993840063010">Android యాప్లు</translation> <translation id="2105809836724866556"><ph name="MODULE_TITLE" /> దాచబడ్డాయి</translation> <translation id="2108349519800154983">{COUNT,plural, =1{ఫోన్ నంబర్}other{# ఫోన్ నంబర్లు}}</translation> -<translation id="211144231511833662">రకాలను క్లియర్ చేయి</translation> +<translation id="211144231511833662">రకాలను క్లియర్ చేయండి</translation> <translation id="2111670510994270194">కుడివైపున కొత్త ట్యాబ్</translation> <translation id="2112554630428445878">స్వాగతం, <ph name="USERNAME" /></translation> <translation id="21133533946938348">ట్యాబ్ను పిన్ చేయి</translation> <translation id="2113479184312716848">ఫైల్ను &తెరువు...</translation> -<translation id="2113921862428609753">అధికార సమాచార ప్రాప్తి</translation> +<translation id="2113921862428609753">అధికార సమాచార యాక్సెస్</translation> <translation id="2114326799768592691">&ఫ్రేమ్ను మళ్లీ లోడ్ చేయి</translation> <translation id="2114413269775311385">Android యాప్లతో ఈ ఖాతాను ఉపయోగించండి. మీరు Android యాప్లకు అనుమతులను <ph name="LINK_BEGIN" />యాప్ల సెట్టింగ్లు<ph name="LINK_END" /> లింక్లో కంట్రోల్ చేయవచ్చు.</translation> <translation id="2114820389966440614">"ఇటీవలి హైలైట్లు" అలాగే ఇతర మెమరీలను ఇక్కడ చూడండి</translation> @@ -1309,7 +1308,7 @@ <translation id="2204034823255629767">మీరు టైప్ చేసేదాన్ని చదవడం మరియు మార్చడం</translation> <translation id="220858061631308971">దయచేసి ఈ PIN కోడ్ను "<ph name="DEVICE_NAME" />"లో నమోదు చేయండి:</translation> <translation id="2210462644007531147">ఇన్స్టాలేషన్ను పూర్తి చేయడం సాధ్యపడలేదు</translation> -<translation id="2212565012507486665">కుక్కీలను అనుమతించు</translation> +<translation id="2212565012507486665">కుక్కీలను అనుమతించండి</translation> <translation id="2214018885812055163">షేర్ చేసిన ఫోల్డర్లు</translation> <translation id="2214884991347062907">పాస్వర్డ్ తప్పు, మళ్లీ ప్రయత్నించండి</translation> <translation id="2214893006758804920">{LINE_COUNT,plural, =1{<1 పంక్తి చూపబడలేదు>}other{<<ph name="NUMBER_OF_LINES" /> పంక్తులు చూపబడలేదు>}}</translation> @@ -1329,7 +1328,7 @@ <translation id="2226449515541314767">ఈ సైట్ MIDI పరికరాలకు పూర్తి నియంత్రణ లేకుండా బ్లాక్ చేయబడింది.</translation> <translation id="2226826835915474236">ఇన్యాక్టివ్ షార్ట్కట్లు</translation> <translation id="2226907662744526012">ఒకసారి పిన్ ఎంటర్ చేసిన తర్వాత ఆటోమేటిక్గా అన్లాక్ చేయి</translation> -<translation id="2227179592712503583">సూచనను తీసివేయి</translation> +<translation id="2227179592712503583">సూచనను తీసివేయండి</translation> <translation id="2229161054156947610">1 గంట పైగా మిగిలి ఉంది</translation> <translation id="222931766245975952">ఫైల్ కుదించబడింది</translation> <translation id="2230005943220647148">సెల్సియస్</translation> @@ -1354,7 +1353,7 @@ <translation id="2251218783371366160">సిస్టమ్ వ్యూయర్తో తెరువు</translation> <translation id="225163402930830576">నెట్వర్క్లను రిఫ్రెష్ చేయి</translation> <translation id="2251809247798634662">కొత్త అజ్ఞాత విండో</translation> -<translation id="225240747099314620">రక్షిత కంటెంట్ కోసం ఐడెంటిఫైయర్లను అనుమతించు (కంప్యూటర్ను పునఃప్రారంభించాల్సి రావచ్చు)</translation> +<translation id="225240747099314620">రక్షిత కంటెంట్ కోసం ఐడెంటిఫైయర్లను అనుమతించండి (కంప్యూటర్ను పునఃప్రారంభించాల్సి రావచ్చు)</translation> <translation id="2255077166240162850">వేరే డొమైన్ లేదా మోడ్కు ఈ పరికరం లాక్ చేయబడింది.</translation> <translation id="2255317897038918278">Microsoft Time Stamping</translation> <translation id="2256115617011615191">ఇప్పుడే పునఃప్రారంభించు</translation> @@ -1499,7 +1498,7 @@ <translation id="2355314311311231464">మీ ఖాతా వివరాలను తిరిగి పొందడం సాధ్యపడలేదు కనుక, కేటాయింపు విధానం విఫలమైయ్యింది. దయచేసి మళ్లీ ట్రై చేయండి. ఎర్రర్ కోడ్: <ph name="ERROR_CODE" />.</translation> <translation id="2355604387869345912">తక్షణ టెథెరింగ్ను ఆన్ చేయడం</translation> <translation id="2356070529366658676">అడుగు</translation> -<translation id="2357330829548294574"><ph name="USER_NAME" />ను తీసివేయి</translation> +<translation id="2357330829548294574"><ph name="USER_NAME" />ను తీసివేయండి</translation> <translation id="2358561147588818967">సైట్లు JavaScriptను ఉపయోగించగలవు</translation> <translation id="2359071692152028734">Linux యాప్లు ప్రతిస్పందించకపోవచ్చు.</translation> <translation id="2359345697448000899">'సాధనాలు' మెనూలోని ఎక్స్టెన్షన్లను క్లిక్ చేయడం ద్వారా మీ ఎక్స్టెన్షన్లను నిర్వహించండి.</translation> @@ -1508,7 +1507,7 @@ <translation id="2361100938102002520">మీరు ఈ బ్రౌజర్కు మేనేజ్ చేయబడిన ప్రొఫైల్ను జోడిస్తున్నారు. మీ అడ్మినిస్ట్రేటర్ ప్రొఫైల్పైన కంట్రోల్ను కలిగి ఉన్నారు, అలాగే దాని డేటాను యాక్సెస్ చేయగలరు.</translation> <translation id="236117173274098341">ఆప్టిమైజ్ చేయండి</translation> <translation id="2361340419970998028">ఫీడ్బ్యాక్ను పంపుతోంది...</translation> -<translation id="236141728043665931">ఎల్లప్పుడూ మైక్రోఫోన్ యాక్సెస్ను బ్లాక్ చేయి</translation> +<translation id="236141728043665931">ఎల్లప్పుడూ మైక్రోఫోన్ యాక్సెస్ను బ్లాక్ చేయండి</translation> <translation id="2363744066037724557">&విండోను రీస్టోర్ చేయండి</translation> <translation id="2364498172489649528">ఆమోదించినవి</translation> <translation id="2365507699358342471">క్లిప్బోర్డ్కు కాపీ చేసిన వచనం మరియు చిత్రాలను ఈ సైట్ చూడగలదు.</translation> @@ -1729,7 +1728,7 @@ <translation id="2575441894380764255">అనుచితమైన లేదా తప్పుదారి పట్టించే యాడ్లను చూపించడానికి అనుమతి లేదు.</translation> <translation id="2575713839157415345">{YEARS,plural, =1{ఈ పరికరం 1 సంవత్సరం పాటు సేవ్ చేయబడుతుంది, మీరు తర్వాతి సారి కోడ్ అవసరం లేకుండానే కనెక్ట్ చేయవచ్చు. దీనిని మీ అడ్మినిస్ట్రేటర్ సెట్ చేస్తారు.}other{ఈ పరికరం {YEARS} సంవత్సరాల పాటు సేవ్ చేయబడుతుంది, మీరు తర్వాతి సారి కోడ్ అవసరం లేకుండానే కనెక్ట్ చేయవచ్చు. దీనిని మీ అడ్మినిస్ట్రేటర్ సెట్ చేస్తారు.}}</translation> <translation id="257779572837908839">మీటింగ్ల కోసం Chromebox లాగా సెటప్ చేయండి</translation> -<translation id="2580889980133367162">బహుళ ఫైళ్లను డౌన్లోడ్ చేయడానికి <ph name="HOST" />ను ఎల్లప్పుడూ అనుమతించు</translation> +<translation id="2580889980133367162">బహుళ ఫైళ్లను డౌన్లోడ్ చేయడానికి <ph name="HOST" />ను ఎల్లప్పుడూ అనుమతించండి</translation> <translation id="258095186877893873">ఎక్కువ</translation> <translation id="2582253231918033891"><ph name="PRODUCT_NAME" /> <ph name="PRODUCT_VERSION" /> (ప్లాట్ఫారమ్ <ph name="PLATFORM_VERSION" />) <ph name="DEVICE_SERIAL_NUMBER" /></translation> <translation id="2584109212074498965">Kerberos టిక్కెట్ను పొందడం సాధ్యపడలేదు. మళ్లీ ప్రయత్నించండి లేదా మీ సంస్థ పరికర నిర్వాహకులను సంప్రదించండి. (ఎర్రర్ కోడ్ <ph name="ERROR_CODE" />).</translation> @@ -1761,7 +1760,7 @@ <translation id="2612676031748830579">కార్డ్ సంఖ్య</translation> <translation id="2613210758071148851"><ph name="RESTRICTED_SITE" />లో ఎటువంటి ఎక్స్టెన్షన్లనూ అనుమతించకండి</translation> <translation id="2613535083491958306"><ph name="ORIGIN" />, <ph name="FILENAME" />ను ఎడిట్ చేయగలుగుతుంది</translation> -<translation id="2616366145935564096"><ph name="WEBSITE_1" />లో ఉన్న మీ డేటాని చదవడం మరియు మార్చడం</translation> +<translation id="2616366145935564096"><ph name="WEBSITE_1" />లో ఉన్న మీ డేటాను చదవడం మరియు మార్చడం</translation> <translation id="2618797463720777311">సమీప షేరింగ్ను సెటప్ చేయండి</translation> <translation id="2620215283731032047"><ph name="FILE_NAME" />ను సురక్షితంగా డౌన్లోడ్ చేయడం సాధ్యం కాదు.</translation> <translation id="2620436844016719705">సిస్టమ్</translation> @@ -1805,7 +1804,7 @@ <translation id="2660779039299703961">ఈవెంట్</translation> <translation id="266079277508604648">ప్రింటర్కు కనెక్ట్ చేయడం సాధ్యం కాలేదు. ప్రింటర్ని ఆన్ చేసినట్లు, దానిని Wi-Fi లేదా USB ద్వారా మీ Chromebookకి కనెక్ట్ చేసినట్లు నిర్ధారించుకోండి.</translation> <translation id="2661315027005813059">వెనుకకు-ముందుకు కాష్ పేజీ: <ph name="BACK_FORWARD_CACHE_PAGE_URL" /></translation> -<translation id="2661714428027871023">లైట్ మోడ్లో మరింత వేగంగా బ్రౌజ్ చేయండి, అలాగే డేటాని తక్కువగా ఉపయోగించండి. మరింత తెలుసుకోవడానికి క్లిక్ చేయండి.</translation> +<translation id="2661714428027871023">లైట్ మోడ్లో మరింత వేగంగా బ్రౌజ్ చేయండి, అలాగే డేటాను తక్కువగా ఉపయోగించండి. మరింత తెలుసుకోవడానికి క్లిక్ చేయండి.</translation> <translation id="2662876636500006917">Chrome వెబ్ స్టోర్</translation> <translation id="2663302507110284145">భాష</translation> <translation id="2665394472441560184">కొత్త పదాన్ని జోడించు</translation> @@ -2078,7 +2077,7 @@ <translation id="2902265136119311513">గెస్ట్లాగా బ్రౌజ్ చేయండి</translation> <translation id="2902312830803030883">మరిన్ని చర్యలు</translation> <translation id="2903457445916429186">ఎంచుకున్న అంశాలను తెరవండి</translation> -<translation id="2903882649406874750">సెన్సార్లను యాక్సెస్ చేయనీయకుండా ఎల్లప్పుడూ <ph name="HOST" />ని బ్లాక్ చేయి</translation> +<translation id="2903882649406874750">సెన్సార్లను యాక్సెస్ చేయనీయకుండా ఎల్లప్పుడూ <ph name="HOST" />ని బ్లాక్ చేయండి</translation> <translation id="2907619724991574506">ప్రారంభ URLలు</translation> <translation id="2907798539022650680">'<ph name="NAME" />'కు కనెక్ట్ చేయడంలో విఫలమైంది: <ph name="DETAILS" /> సర్వర్ మెసేజ్: <ph name="SERVER_MSG" /></translation> @@ -2102,7 +2101,7 @@ <translation id="2921081876747860777">దయచేసి మీ స్థానిక డేటాను రక్షించడానికి పాస్వర్డ్ను క్రియేట్ చేయండి.</translation> <translation id="2923006468155067296">మీ <ph name="DEVICE_TYPE" /> ఇప్పుడు లాక్ చేయబడింది. మీ స్మార్ట్ కార్డ్ను ఇన్సర్ట్ చేసి ఉంచమని <ph name="DOMAIN" /> మిమ్మల్ని కోరుతుంది.</translation> -<translation id="2923234477033317484">ఈ ఖాతాను తీసివేయి</translation> +<translation id="2923234477033317484">ఈ ఖాతాను తీసివేయండి</translation> <translation id="2923644930701689793">మీ ఫోన్ కెమెరా రోల్ను యాక్సెస్ చేయండి</translation> <translation id="2925658782192398150">పూర్తయింది, సమస్యలు ఏవీ కనుగొనబడలేదు</translation> <translation id="2926085873880284723">డిఫాల్ట్ షార్ట్కట్లను పునరుద్ధరించండి</translation> @@ -2133,7 +2132,7 @@ <translation id="2947605845283690091">వెబ్ బ్రౌజింగ్ వేగంగా ఉండాలి. ఇప్పుడే <ph name="BEGIN_LINK" />మీ ఎక్స్టెన్షన్లను చెక్ చేయడానికి<ph name="END_LINK" /> సమయం తీసుకోండి.</translation> <translation id="2948300991547862301"><ph name="PAGE_TITLE" />కు వెళ్లండి</translation> <translation id="29488703364906173">ఆధునిక వెబ్ కోసం రూపొందించబడిన వేగవంతమైన, సరళమైన మరియు సురక్షితమైన వెబ్ బ్రౌజర్.</translation> -<translation id="2949289451367477459">స్థానాన్ని ఉపయోగించండి. స్థాన అనుమతిని కలిగిన యాప్లు మరియు సేవలు ఈ పరికర స్థానాన్ని ఉపయోగించడానికి అనుమతించండి. Google కాలానుగుణంగా స్థాన డేటాని సేకరించవచ్చు మరియు స్థాన ఖచ్చితత్వం మరియు స్థానం-ఆధారిత సేవలను మెరుగుపరచడం కోసం ఈ డేటాని అనామకంగా ఉపయోగించవచ్చు. <ph name="BEGIN_LINK1" />మరింత తెలుసుకోండి<ph name="END_LINK1" /></translation> +<translation id="2949289451367477459">స్థానాన్ని ఉపయోగించండి. స్థాన అనుమతిని కలిగిన యాప్లు మరియు సేవలు ఈ పరికర స్థానాన్ని ఉపయోగించడానికి అనుమతించండి. Google కాలానుగుణంగా స్థాన డేటాను సేకరించవచ్చు మరియు స్థాన ఖచ్చితత్వం మరియు స్థానం-ఆధారిత సేవలను మెరుగుపరచడం కోసం ఈ డేటాను అనామకంగా ఉపయోగించవచ్చు. <ph name="BEGIN_LINK1" />మరింత తెలుసుకోండి<ph name="END_LINK1" /></translation> <translation id="2950666755714083615">నన్ను సైన్ అప్ చేయనివ్వు</translation> <translation id="2953019166882260872">మీ ఫోన్ను కేబుల్తో కనెక్ట్ చేయండి</translation> <translation id="2956070239128776395">విభాగం గ్రూప్లో ఉంది: <ph name="ERROR_LINE" /></translation> @@ -2154,7 +2153,7 @@ <translation id="2973324205039581528">సైట్ను మ్యూట్ చేయండి</translation> <translation id="2973537811036309675">సైడ్ ప్యానెల్</translation> <translation id="2976557544729462544">సరిగ్గా లేదా పూర్తి స్థాయిలో పనిచేయడానికి డేటా యాక్సెస్ రక్షణను డిజేబుల్ చేయడానికి కొన్ని పరికరాలకు మీరు అవసరం.</translation> -<translation id="2977480621796371840">గుంపు నుండి తీసివేయి</translation> +<translation id="2977480621796371840">గుంపు నుండి తీసివేయండి</translation> <translation id="2979639724566107830">కొత్త విండోలో తెరువు</translation> <translation id="2981113813906970160">పెద్ద మౌస్ కర్సర్ను చూపు</translation> <translation id="2983373101216420412">కేస్ బ్యాటరీ స్థాయి <ph name="PERCENTAGE" />%.</translation> @@ -2440,7 +2439,6 @@ <translation id="3280243678470289153">Chromeలోనే కొనసాగించు</translation> <translation id="3281892622610078515">నిరోధించాల్సిన ఫైళ్లు, ప్రోగ్రామ్లు:</translation> <translation id="3282210178675490297"><ph name="APP_NAME" />తో ట్యాబ్ను షేర్ చేస్తోంది</translation> -<translation id="3282568296779691940">Chromeకు సైన్ ఇన్ చేయండి</translation> <translation id="3285322247471302225">కొత్త &టాబ్</translation> <translation id="328571385944182268">మీ పాస్వర్డ్లను సేవ్ చేయాలా?</translation> <translation id="3288047731229977326">డెవలపర్ మోడ్లో అమలవుతున్న ఎక్స్టెన్షన్లు మీ కంప్యూటర్కు హాని కలిగించవచ్చు. మీరు డెవలపర్ కాకపోతే, సురక్షితంగా ఉంచడానికి డెవలపర్ మోడ్లో అమలవుతున్న ఈ ఎక్స్టెన్షన్లను నిలిపివేయాలి.</translation> @@ -2499,7 +2497,7 @@ <translation id="3340251637492627067">మీ సంస్థ అవసరాల ప్రకారం అర్హత ఉన్న డౌన్లోడ్లు <ph name="WEB_DRIVE" />లో సేవ్ అవ్వాలి. సైన్ ఇన్ చేసిన తర్వాత, ప్రత్యేకమైన ప్రామాణీకరణ టోకెన్ స్టోర్ చేయబడుతుంది, ఇంకా అది భవిష్యత్తులో అర్హత ఉన్న డౌన్లోడ్ల కోసం ఉపయోగించబడుతుంది.</translation> <translation id="3340620525920140773">దీని డౌన్లోడ్ పూర్తయింది: <ph name="FILE_NAME" />.</translation> <translation id="3341699307020049241">పిన్ తప్పు. మీకు <ph name="RETRIES" /> ప్రయత్నాలు మిగిలి ఉన్నాయి.</translation> -<translation id="3341703758641437857">ఫైల్ URLలకు ప్రాప్తిని అనుమతించు</translation> +<translation id="3341703758641437857">ఫైల్ URLలకు యాక్సెస్ను అనుమతించండి</translation> <translation id="3342361181740736773">"<ph name="TRIGGERING_EXTENSION_NAME" />" ఈ ఎక్స్టెన్షన్ని తీసివేయాలనుకుంటోంది.</translation> <translation id="3345135638360864351">ఈ సైట్ను యాక్సెస్ చేయడానికి మీరు చేసిన రిక్వెస్ట్ <ph name="NAME" />కు పంపబడలేదు. దయచేసి మళ్లీ ప్రయత్నించండి.</translation> <translation id="3345634917232014253">ఒక క్షణం క్రితం భద్రతా చెక్ చేయబడింది</translation> @@ -2579,12 +2577,12 @@ <translation id="3423463006624419153">మీ '<ph name="PHONE_NAME_1" />' మరియు '<ph name="PHONE_NAME_2" />'లో:</translation> <translation id="3423858849633684918">దయచేసి <ph name="PRODUCT_NAME" />ని తిరిగి ప్రారంభించండి</translation> <translation id="3424969259347320884">ట్యాబ్ క్రాష్ అయిన సమయంలో మీరు ఏం చేస్తున్నారో వివరించండి</translation> -<translation id="3427092606871434483">అనుమతించు (డిఫాల్ట్)</translation> +<translation id="3427092606871434483">అనుమతించండి (డిఫాల్ట్)</translation> <translation id="3429086384982427336">కింద లిస్ట్ చేయబడిన యాప్లు ఎప్పటికీ ప్రోటోకాల్ లింక్లను హ్యాండిల్ చేయవు.</translation> <translation id="3429160811076349561">ట్రయల్ ఫీచర్లు ఆఫ్ చేయబడి ఉన్నాయి</translation> <translation id="3429271624041785769">వెబ్ కంటెంట్ భాషలు</translation> <translation id="3429275422858276529">ఈ పేజీని తర్వాత సులభంగా కనుగొనడానికి దీనిని బుక్మార్క్ చేయండి</translation> -<translation id="3432227430032737297">చూపుతున్నవన్నీ తీసివేయి</translation> +<translation id="3432227430032737297">చూపుతున్నవన్నీ తీసివేయండి</translation> <translation id="3432762828853624962">షేర్డ్ వర్కర్స్</translation> <translation id="3433507769937235446">వదిలి వెళ్లినప్పుడు లాక్ చేయండి</translation> <translation id="3433621910545056227">అయ్యో! పరికరం ఇన్స్టాలేషన్-సమయ లక్షణాల లాక్ను ఏర్పాటు చేయడంలో సిస్టమ్ విఫలమైంది.</translation> @@ -2612,7 +2610,7 @@ <translation id="3446274660183028131">Windowsను ఇన్స్టాల్ చేయడానికి, దయచేసి parallels desktopను ప్రారంభించండి.</translation> <translation id="344630545793878684">అనేక వెబ్సైట్ల్లోని మీ డేటాను చదవండి</translation> <translation id="3446650212859500694">ఈ ఫైల్లో గోప్యమైన కంటెంట్ ఉంది</translation> -<translation id="3447644283769633681">అన్ని మూడవ-పార్టీ కుక్కీలను బ్లాక్ చేయి</translation> +<translation id="3447644283769633681">అన్ని మూడవ-పార్టీ కుక్కీలను బ్లాక్ చేయండి</translation> <translation id="3448492834076427715">ఖాతాను అప్డేట్ చేయి</translation> <translation id="3449393517661170867">ట్యాబ్లు ఉన్న కొత్త విండో</translation> <translation id="3449839693241009168"><ph name="EXTENSION_NAME" />కు ఆదేశాలను పంపడానికి <ph name="SEARCH_KEY" /> నొక్కండి</translation> @@ -2699,7 +2697,7 @@ <translation id="3524518036046613664">ప్రింటర్ల వంటి మీ లోకల్ నెట్వర్క్లో పరికరాలను కనుగొనండి</translation> <translation id="3524965460886318643">యాక్టివిటీలను ఎగుమతి చేయి</translation> <translation id="3525426269008462093">సెటప్ చేసిన తర్వాత పరికర సింక్ను రివ్యూ చేయండి</translation> -<translation id="3526034519184079374">సైట్ డేటాని చదవడం లేదా మార్చడం సాధ్యం కాదు</translation> +<translation id="3526034519184079374">సైట్ డేటాను చదవడం లేదా మార్చడం సాధ్యం కాదు</translation> <translation id="3527085408025491307">ఫోల్డర్</translation> <translation id="3528498924003805721">షార్ట్కట్ లక్ష్యాలు</translation> <translation id="3532273508346491126">సింక్ మేనేజ్మెంట్</translation> @@ -2722,7 +2720,7 @@ <translation id="3552097563855472344"><ph name="NETWORK_NAME" /> - <ph name="SPAN_START" /><ph name="CARRIER_NAME" /><ph name="SPAN_END" /></translation> <translation id="3552780134252864554">నిష్క్రమణలో క్లియర్ చేయబడింది</translation> <translation id="3554493885489666172">మీ పరికరం <ph name="PROFILE_NAME" /> ద్వారా మేనేజ్ చేయబడుతుంది. ఈ పరికరంలో ఎలాంటి ప్రొఫైల్లోని డేటాను అయినా అడ్మినిస్ట్రేటర్లు యాక్సెస్ చేయగలరు.</translation> -<translation id="3555812735919707620">ఎక్సటెన్షన్ని తీసివేయి</translation> +<translation id="3555812735919707620">ఎక్సటెన్షన్ని తీసివేయండి</translation> <translation id="3556000484321257665">మీ శోధన ఇంజిన్ <ph name="URL" />కు మార్చబడింది.</translation> <translation id="3556433843310711081">మీ నిర్వాహకుడు మీ కోసం దీన్ని అన్బ్లాక్ చేయగలరు</translation> <translation id="3557101512409028104">Family Linkతో వెబ్సైట్ పరిమితులు & పరికర వినియోగ వ్యవధిని సెట్ చేయండి</translation> @@ -2741,7 +2739,7 @@ <translation id="3569407787324516067">స్క్రీన్ సేవర్</translation> <translation id="3569682580018832495"><ph name="ORIGIN" />, కింద ఉన్న ఫైళ్లను, ఫోల్డర్లను చూడగలదు</translation> <translation id="3571734092741541777">సెటప్ చేయి</translation> -<translation id="3575121482199441727">ఈ సైట్కు అనుమతించు</translation> +<translation id="3575121482199441727">ఈ సైట్కు అనుమతించండి</translation> <translation id="3577745545227000795"><ph name="DEVICE_OS" /> హార్డ్వేర్ డేటా సేకరణ</translation> <translation id="3578594933904494462">ఈ ట్యాబ్ యొక్క కంటెంట్ భాగస్వామ్యం చేయబడుతోంది.</translation> <translation id="3578874072190212775">మోసాలను ఎదుర్కోవడంలో, అలాగే వ్యక్తులు, బాట్ల మధ్య ఉన్న తేడాను గుర్తించడంలో సైట్లకు సహాయపడుతుంది</translation> @@ -2756,10 +2754,10 @@ <translation id="3590194807845837023">ప్రొఫైల్ను అన్లాక్ చేసి, మళ్లీ ప్రారంభించు</translation> <translation id="3590295622232282437">నిర్వహిత సెషన్లోకి ప్రవేశిస్తోంది.</translation> <translation id="3592260987370335752">&మరింత తెలుసుకోండి</translation> -<translation id="3593152357631900254">Fuzzy-Pinyin మోడ్ను అనుమతించు</translation> +<translation id="3593152357631900254">Fuzzy-Pinyin మోడ్ను అనుమతించండి</translation> <translation id="3593965109698325041">సర్టిఫికెట్ పేరు పరిమితులు</translation> <translation id="3596012367874587041">యాప్ సెట్టింగ్లు</translation> -<translation id="3596414637720633074">అజ్ఞాతంలో థర్డ్-పార్టీ కుక్కీలను బ్లాక్ చేయి</translation> +<translation id="3596414637720633074">అజ్ఞాతంలో థర్డ్-పార్టీ కుక్కీలను బ్లాక్ చేయండి</translation> <translation id="3599221874935822507">పైకి ఉన్నట్లుగా</translation> <translation id="3600051066689725006">వెబ్ రిక్వెస్ట్ సమాచారం</translation> <translation id="360180734785106144">కొత్త ఫీచర్లు అందుబాటులోకి వస్తే వాటిని అందించడం</translation> @@ -3012,7 +3010,7 @@ <translation id="3826071569074535339">మోషన్ సెన్సార్లను ఉపయోగించడానికి అనుమతించబడింది</translation> <translation id="3826440694796503677">మరిన్ని Google ఖాతాలను చేర్చడాన్ని మీ నిర్వాహకుడు నిలిపివేశారు</translation> <translation id="3827774300009121996">&పూర్తి స్క్రీన్</translation> -<translation id="3828029223314399057">బుక్మార్క్లను వెతుకు</translation> +<translation id="3828029223314399057">బుక్మార్క్లను వెతకండి</translation> <translation id="3828953470056652895">నేను <ph name="BEGIN_LINK1" />Google సర్వీస్ నియమాలు<ph name="END_LINK1" />, <ph name="BEGIN_LINK2" />Chrome, అలాగే ChromeOS అదనపు సర్వీస్ నియమాలు<ph name="END_LINK2" />, అలాగే <ph name="BEGIN_LINK3" />Play సర్వీస్ నియమాలను<ph name="END_LINK3" /> చదివి అంగీకరిస్తున్నాను.</translation> <translation id="3829765597456725595">SMB ఫైల్ షేర్</translation> <translation id="3830654885961023588">{NUM_EXTENSIONS,plural, =1{మీ నిర్వాహకుడు, హానికరమైనది అయ్యే అవకాశం ఉన్న 1 ఎక్స్టెన్షన్ను తిరిగి ఆన్ చేశారు}other{మీ నిర్వాహకుడు, హానికరమైనవి అయ్యే అవకాశం ఉన్న {NUM_EXTENSIONS} ఎక్స్టెన్షన్లను తిరిగి ఆన్ చేశారు}}</translation> @@ -3025,7 +3023,7 @@ <translation id="3838486795898716504">మరిన్ని <ph name="PAGE_TITLE" /></translation> <translation id="383891835335927981">సైట్లు ఏవీ దగ్గరకు లేదా దూరానికి జూమ్ చేయబడలేదు</translation> <translation id="3839509547554145593">మౌస్ స్క్రోల్ యాక్సిలరేషన్ను ఎనేబుల్ చేయండి</translation> -<translation id="3839516600093027468">క్లిప్బోర్డ్ను చూడనీయకుండా ఎల్లప్పుడూ <ph name="HOST" />ని బ్లాక్ చేయి</translation> +<translation id="3839516600093027468">క్లిప్బోర్డ్ను చూడనీయకుండా ఎల్లప్పుడూ <ph name="HOST" />ని బ్లాక్ చేయండి</translation> <translation id="3841964634449506551">పాస్వర్డ్ చెల్లదు</translation> <translation id="3842552989725514455">Serif ఫాంట్</translation> <translation id="3843464315703645664">ఇంటర్నల్గా వైట్లిస్ట్ చేయబడింది</translation> @@ -3104,7 +3102,7 @@ <translation id="39103738135459590">యాక్టివేషన్ కోడ్</translation> <translation id="3911824782900911339">కొత్త ట్యాబ్ పేజీ</translation> <translation id="3914173277599553213">అవసరమైనవి</translation> -<translation id="3915280005470252504">వాయిస్ ద్వారా వెతుకు</translation> +<translation id="3915280005470252504">వాయిస్ ద్వారా వెతకండి</translation> <translation id="3916233823027929090">భద్రతా తనిఖీలు పూర్తయ్యాయి</translation> <translation id="3916445069167113093">ఈ రకం ఫైల్ మీ కంప్యూటర్కు హాని చేయవచ్చు. అయినా సరే <ph name="FILE_NAME" />ని ఉంచాలని అనుకుంటున్నారా?</translation> <translation id="3917184139185490151">మీ కంప్యూటర్లో ఒక సెక్యూరిటీ మాడ్యూల్ ఉంది, ఇది ChromeOSలో అనేక కీలకమైన సెక్యూరిటీ ఫీచర్లను అమలు చేయడానికి ఉపయోగించబడుతుంది. మరింత తెలుసుకోవడానికి Chromebook సహాయ కేంద్రాన్ని సందర్శించండి: https://support.google.com/chromebook/?p=sm</translation> @@ -3189,7 +3187,7 @@ <translation id="3981760180856053153">చెల్లని సేవ్ రకం ఎంటర్ చేయబడింది.</translation> <translation id="3981902534690264083">యాడ్ల పనితీరును అడ్వర్టయిజర్లు అర్థం చేసుకోగలరు</translation> <translation id="3982375475032951137">సులువైన కొద్ది దశలతో మీ బ్రౌజర్ని సెటప్ చేయండి</translation> -<translation id="3983400541576569538">కొన్ని యాప్ల డేటాని కోల్పోవచ్చు</translation> +<translation id="3983400541576569538">కొన్ని యాప్ల డేటాను కోల్పోవచ్చు</translation> <translation id="3983586614702900908">తెలియని విక్రేత అందించిన పరికరాలు</translation> <translation id="3983764759749072418">Play Store అప్లికేషన్లు ఈ పరికరానికి యాక్సెస్ను కలిగి ఉన్నాయి.</translation> <translation id="3983769721878416534">క్లిక్ చర్యను అమలు చేసే ముందు వేచి ఉండాల్సిన జాప్యం</translation> @@ -3314,7 +3312,6 @@ <translation id="4101352914005291489">దాచబడిన SSID</translation> <translation id="4102469565336584882">చెల్లని కోడ్. మీరు ఎంటర్ చేసేది LPA:1$<smdp address>$<activation code> ఫార్మాట్లో ఉండాలి</translation> <translation id="4102906002417106771">పవర్వాష్ చేయడానికి రీస్టార్ట్ చేయి</translation> -<translation id="4104163789986725820">ఎ&గుమతి...</translation> <translation id="4107048419833779140">నిల్వ డివైజ్లను గుర్తించి, తొలగించండి</translation> <translation id="4108314971463891922">ఫాలో అవ్వండి</translation> <translation id="4109135793348361820">విండోను <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />)కు తరలించు</translation> @@ -3375,7 +3372,7 @@ <translation id="4167686856635546851">వీడియో గేమ్లు లేదా వెబ్ ఫారమ్లు వంటి డిస్ప్లే ఇంటరాక్టివ్ ఫీచర్ల కోసం సాధారణంగా సైట్లు JavaScriptను ఉపయోగించుకుంటాయి</translation> <translation id="4168015872538332605"><ph name="PRIMARY_EMAIL" />కు సంబంధించిన కొన్ని సెట్టింగ్లు మీతో షేర్ చేయబడుతున్నాయి. ఈ సెట్టింగ్లు బహుళ సైన్-ఇన్ను ఉపయోగించేటప్పుడు మాత్రమే మీ ఖాతాను ప్రభావితం చేస్తాయి.</translation> <translation id="4168651806173792090"><ph name="LAST_FOUR_DIGITS" />తో ముగిసే <ph name="NETWORK_NAME" /></translation> -<translation id="4170314459383239649">నిష్క్రమించేటప్పుడు క్లియర్ చేయి</translation> +<translation id="4170314459383239649">నిష్క్రమించేటప్పుడు క్లియర్ చేయండి</translation> <translation id="417096670996204801">ఒక ప్రొఫైల్ను ఎంచుకోండి</translation> <translation id="4175137578744761569">లేత వంగ రంగు మరియు తెలుపు</translation> <translation id="4175737294868205930">నిరంతర నిల్వ</translation> @@ -3517,7 +3514,7 @@ <translation id="4310139701823742692">ఫైల్ తప్పు ఫార్మాట్లో ఉంది. PPD ఫైల్ని చెక్ చేసి, మళ్లీ ప్రయత్నించండి.</translation> <translation id="431076611119798497">&వివరాలు</translation> <translation id="4312701113286993760">{COUNT,plural, =1{1 Google ఖాతా}other{<ph name="EXTRA_ACCOUNTS" /> Google ఖాతాలు}}</translation> -<translation id="4312866146174492540">బ్లాక్ చేయి (డిఫాల్ట్)</translation> +<translation id="4312866146174492540">బ్లాక్ చేయండి (డిఫాల్ట్)</translation> <translation id="4314497418046265427">మీ ఫోన్ను మీ <ph name="DEVICE_TYPE" />కు కనెక్ట్ చేసినప్పుడు మరిన్ని ప్రయోజనాలు పొందండి</translation> <translation id="4314815835985389558">సింక్ను నిర్వహించండి</translation> <translation id="4315933848520197627">ఖాతాను అన్లింక్ చేయండి</translation> @@ -3532,7 +3529,7 @@ <translation id="4330387663455830245"><ph name="LANGUAGE" />ని ఎప్పటికీ అనువదించవద్దు</translation> <translation id="4332976768901252016">తల్లిదండ్రుల నియంత్రణలను సెటప్ చేయండి</translation> <translation id="4333854382783149454">RSA ఎన్క్రిప్షన్తో PKCS #1 SHA-1</translation> -<translation id="4336434711095810371">మొత్తం డేటాను క్లియర్ చేయి</translation> +<translation id="4336434711095810371">మొత్తం డేటాను క్లియర్ చేయండి</translation> <translation id="4339203724549370495">యాప్ను అన్ఇన్స్టాల్ చేయి</translation> <translation id="4340125850502689798">చెల్లని యూజర్నేమ్</translation> <translation id="4340515029017875942"><ph name="ORIGIN" />, <ph name="EXTENSION_NAME" />యాప్తో కమ్యూనికేట్ చేయాలనుకుంటోంది</translation> @@ -3547,7 +3544,7 @@ <translation id="4348426576195894795">ఈ ఖాతాను తీసివేస్తే, ఈ ఖాతాతో సైన్ ఇన్ అయిన Chrome ప్రొఫైల్స్ ఏవైనా ఉంటే, అవి కూడా తొలగించబడతాయి</translation> <translation id="4348766275249686434">లోపాలను సేకరించు</translation> <translation id="4349828822184870497">సహాయకరమైనవి</translation> -<translation id="4350230709416545141">మీ లొకేషన్ను యాక్సెస్ చేయకుండా <ph name="HOST" />ను ఎల్లప్పుడూ బ్లాక్ చేయి</translation> +<translation id="4350230709416545141">మీ లొకేషన్ను యాక్సెస్ చేయకుండా <ph name="HOST" />ను ఎల్లప్పుడూ బ్లాక్ చేయండి</translation> <translation id="4350782034419308508">హే Google</translation> <translation id="4351770750390404505"><ph name="BEGIN_PARAGRAPH1" />అత్యుత్తమ అనుభవం అందించడానికి, పరికరాలకు సంబంధించిన హార్డ్వేర్ డేటాను <ph name="DEVICE_OS" /> సేకరిస్తుంది, అలాగే ఏ అప్డేట్లను డెలివరీ చేయాలో నిర్ణయించడం కోసం Googleకు దీనిని షేర్ చేస్తుంది. ఆప్షనల్గా, <ph name="DEVICE_OS" /> అనుభవం, సర్వీస్కు సపోర్ట్, మెరుగుదలల వంటి అదనపు ప్రయోజనాల కోసం ఈ డేటాను Google వినియోగించేందుకు మీరు అనుమతించవచ్చు.<ph name="END_PARAGRAPH1" /> <ph name="BEGIN_PARAGRAPH2" />అప్డేట్లను ఫిల్టర్ చేయడానికి Googleకు పంపిన డేటాను, అలాగే మీరు Googleతో డేటాను షేర్ చేయడానికి ఎంచుకున్న ఏ ఇతర సందర్భాలను అయినా చూడటానికి ఈ పరికరంలో లాగిన్ చేసి, chrome://systemలోని CHROMEOSFLEX_HARDWARE_INFO విభాగాన్ని సందర్శించండి.<ph name="END_PARAGRAPH2" /> @@ -3703,7 +3700,7 @@ <translation id="4500114933761911433"><ph name="PLUGIN_NAME" /> క్రాష్ అయింది</translation> <translation id="450099669180426158">ఆశ్చర్యార్థక గుర్తు చిహ్నం</translation> <translation id="4501530680793980440">తీసివేతను నిర్ధారించండి</translation> -<translation id="4502423230170890588">ఈ పరికరం నుండి తీసివేయి</translation> +<translation id="4502423230170890588">ఈ పరికరం నుండి తీసివేయండి</translation> <translation id="4502477450742595012">ట్యాబ్పై కుడి క్లిక్ చేసి, "కొత్త గ్రూప్నకు ట్యాబ్ను జోడించండి" అనే ఆప్షన్ను ఎంచుకోండి</translation> <translation id="4503748371388753124">మీ కంప్యూటర్ విశ్వసనీయ ప్లాట్ఫామ్ మాడ్యూల్ (TPM) సెక్యూరిటీ పరికరాన్ని కలిగి ఉంది, ఇది ChromeOS Flexలో అనేక కీలకమైన సెక్యూరిటీ ఫీచర్లను అమలు చేయడానికి ఉపయోగించబడుతుంది. మరింత తెలుసుకోవడానికి Chromebook సహాయ కేంద్రాన్ని సందర్శించండి: https://support.google.com/chromebook/?p=tpm</translation> <translation id="4504374760782163539">{COUNT,plural, =0{కుక్కీలు అనుమతించబడ్డాయి}=1{కుక్కీలు అనుమతించబడ్డాయి, 1 మినహాయింపు}other{కుక్కీలు అనుమతించబడ్డాయి, {COUNT} మినహాయింపులు}}</translation> @@ -3720,7 +3717,7 @@ <translation id="4513946894732546136">ఫీడ్బ్యాక్</translation> <translation id="451407183922382411"><ph name="COMPANY_NAME" /> అందిస్తోంది</translation> <translation id="4514610446763173167">ప్లే లేదా పాజ్ చేయడానికి వీడియోని టోగుల్ చేయండి</translation> -<translation id="451515744433878153">తీసివేయి</translation> +<translation id="451515744433878153">తీసివేయండి</translation> <translation id="4515872537870654449">సేవ పొందడానికి డెల్ను సంప్రదించండి. ఫ్యాన్ పని చేయలేదంటే, ఈ డాక్ షట్ డౌన్ అవుతుంది.</translation> <translation id="4519331665958994620">మీ కెమెరాను ఉపయోగించడానికి సైట్లు అడగవచ్చు</translation> <translation id="4519935350946509010">కనెక్షన్ ఎర్రర్.</translation> @@ -4005,7 +4002,7 @@ <translation id="479863874072008121">పరికరాలను మేనేజ్ చేయండి</translation> <translation id="4800839971935185386">పేరు & చిహ్నం అప్డేట్లను రివ్యూ చేయండి</translation> <translation id="4801448226354548035">ఖాతాలను దాచు</translation> -<translation id="4801512016965057443">మొబైల్ డేటా రోమింగ్ను అనుమతించు</translation> +<translation id="4801512016965057443">మొబైల్ డేటా రోమింగ్ను అనుమతించండి</translation> <translation id="4804818685124855865">డిస్కనెక్ట్ చేయి</translation> <translation id="4804827417948292437">వెన్నపండు</translation> <translation id="4806457879608775995">ఈ నిబంధనలను రివ్యూ చేయండి, మీ డేటాను కంట్రోల్ చేయండి</translation> @@ -4124,6 +4121,7 @@ <translation id="4900392736118574277">మా ప్రారంభ పేజీ <ph name="URL" />కి మార్చబడింది.</translation> <translation id="490051679772058907"><ph name="REFRESH_RATE" /> Hz - ఇంటర్లేస్ చేయబడింది</translation> <translation id="4900652253009739885">'ఎంచుకోండి'కి అసైన్ చేయబడిన ఆ స్విచ్ను మాత్రం తీసివేయడం సాధ్యపడలేదు. <ph name="RESPONSE" /> కోసం ఏదైనా కీని నొక్కండి.</translation> +<translation id="4901154724271753917">ఇటీవల మూసివేసిన వాటిని విస్తరించండి</translation> <translation id="4901309472892185668"><ph name="EXPERIMENT_NAME" /> ప్రయోగానికి ప్రయోగ స్థితిని ఎంచుకోండి.</translation> <translation id="49027928311173603">సర్వర్ నుండి డౌన్లోడ్ చేసిన విధానం చెల్లదు: <ph name="VALIDATION_ERROR" />.</translation> <translation id="4906490889887219338">నెట్వర్క్ ఫైల్ షేర్లను సెటప్ చేయండి లేదా నిర్వహించండి. <ph name="LINK_BEGIN" />మరింత తెలుసుకోండి<ph name="LINK_END" /></translation> @@ -4141,7 +4139,7 @@ <translation id="4918086044614829423">ఆమోదించు</translation> <translation id="4918134162946436591">సూచించే ఓవర్లేను చూపించు</translation> <translation id="4921348630401250116">టెక్స్ట్-టు-స్పీచ్</translation> -<translation id="492299503953721473">Android యాప్లను తీసివేయి</translation> +<translation id="492299503953721473">Android యాప్లను తీసివేయండి</translation> <translation id="492363500327720082"><ph name="APP_NAME" />ను అన్ఇన్స్టాల్ చేస్తోంది...</translation> <translation id="4924002401726507608">ఫీడ్బ్యాక్ను సమర్పించండి</translation> <translation id="4924352752174756392">12x</translation> @@ -4235,7 +4233,7 @@ <translation id="5026874946691314267">దీన్ని మళ్లీ చూపవద్దు</translation> <translation id="5027550639139316293">ఈమెయిల్ సర్టిఫికెట్</translation> <translation id="5027562294707732951">ఎక్స్టెన్షన్ని జోడించు</translation> -<translation id="5029568752722684782">కాపీని తీసివేయి</translation> +<translation id="5029568752722684782">కాపీని తీసివేయండి</translation> <translation id="5029873138381728058">వర్చువల్ మెషీన్లను చెక్ చేయడం విఫలమైంది</translation> <translation id="503155457707535043">యాప్లు డౌన్లోడ్ చేయబడుతున్నాయి</translation> <translation id="5032430150487044192">QR కోడ్ను క్రియేట్ చేయడం సాధ్యపడదు</translation> @@ -4245,7 +4243,7 @@ <translation id="5038022729081036555">మీరు రేపు <ph name="TIME_LIMIT" /> పాటు ఉపయోగించవచ్చు.</translation> <translation id="5038818366306248416">మీరు మునుపు <ph name="ORIGIN" />లో ఎటువంటి ఎక్స్టెన్షన్లను అనుమతించకూడదని ఎంచుకున్నారు</translation> <translation id="5039696241953571917">మీ Google ఖాతాలో సేవ్ చేసిన పాస్వర్డ్లను చూడండి, మేనేజ్ చేయండి</translation> -<translation id="5039804452771397117">అనుమతించు</translation> +<translation id="5039804452771397117">అనుమతించండి</translation> <translation id="5040823038948176460">అదనపు కంటెంట్ సెట్టింగ్లు</translation> <translation id="5041509233170835229">Chrome యాప్</translation> <translation id="5043440033854483429">పేరులో అక్షరాలు, నంబర్లు, ఇంకా హైఫన్లు (-) ఉపయోగించవచ్చు, ఇంకా పేరు తప్పనిసరిగా 1 నుండి 15 (వీటిని కలుపుకుని) అక్షరాల మధ్యలో ఉండాలి.</translation> @@ -4304,7 +4302,7 @@ <translation id="5101839224773798795">కర్సర్ ఆపినప్పుడు ఆటోమేటిక్గా క్లిక్ అవుతుంది</translation> <translation id="510695978163689362"><ph name="USER_EMAIL" /> Family Link ద్వారా పర్యవేక్షించబడుతుంది. మీరు తల్లిదండ్రుల పర్యవేక్షణతో స్కూల్ రిసోర్స్లను యాక్సెస్ చేయడానికి స్కూల్ ఖాతాలను జోడించవచ్చు.</translation> <translation id="5107443654503185812">ఎక్స్టెన్షన్, సురక్షిత బ్రౌజింగ్ను ఆఫ్ చేసింది</translation> -<translation id="5108967062857032718">సెట్టింగ్లు - Android యాప్లను తీసివేయి</translation> +<translation id="5108967062857032718">సెట్టింగ్లు - Android యాప్లను తీసివేయండి</translation> <translation id="5109044022078737958">మియా</translation> <translation id="5109816792918100764"><ph name="LANGUAGE_NAME" />ను తీసివేస్తుంది</translation> <translation id="5111646998522066203">అజ్ఞాత మోడ్ని విడిచిపెట్టు</translation> @@ -4459,7 +4457,7 @@ <translation id="5260334392110301220">స్మార్ట్ కోట్లు</translation> <translation id="5260508466980570042">క్షమించండి, మీ ఈమెయిల్ లేదా పాస్వర్డ్ ధృవీకరించబడలేదు. దయచేసి మళ్ళీ ప్రయత్నించండి.</translation> <translation id="5261683757250193089">వెబ్ స్టోర్లో తెరవండి</translation> -<translation id="5262178194499261222">పాస్వర్డ్ను తీసివేయి</translation> +<translation id="5262178194499261222">పాస్వర్డ్ను తీసివేయండి</translation> <translation id="526260164969390554">ఫుల్ స్క్రీన్ మ్యాగ్నిఫైయర్ను ఆన్ లేదా ఆఫ్ చేయడానికి Ctrl+<ph name="SEARCH_KEY_NAME" />+M కీలను నొక్కండి. దగ్గరగా జూమ్ చేసినప్పుడు అంతటా తిరగడానికి Ctrl+Alt+బాణం కీలను నొక్కండి.</translation> <translation id="5262784498883614021">నెట్వర్క్కు ఆటోమేటిక్గా కనెక్ట్ చేయడం</translation> <translation id="5264148714798105376">ఇది ఇంచుమించు ఒక నిమిషంలో పూర్తి కావచ్చు.</translation> @@ -4473,7 +4471,7 @@ <translation id="5275338516105640560">సేవ్ చేయబడిన ట్యాబ్ గ్రూప్ బటన్</translation> <translation id="5275352920323889391">కుక్క</translation> <translation id="527605719918376753">ట్యాబ్ను మ్యూట్ చేయి</translation> -<translation id="527605982717517565"><ph name="HOST" />పై ఎల్లప్పుడూ JavaScriptను అనుమతించు</translation> +<translation id="527605982717517565"><ph name="HOST" />పై ఎల్లప్పుడూ JavaScriptను అనుమతించండి</translation> <translation id="5277127016695466621">సైడ్ ప్యానెల్ను చూడండి</translation> <translation id="5278823018825269962">స్టేటస్ Id</translation> <translation id="5280064835262749532"><ph name="SHARE_PATH" /> కోసం ఆధారాలు అప్డేట్ చేయండి</translation> @@ -4600,7 +4598,7 @@ <translation id="5401851137404501592">కొనసాగించడానికి, మీ పేరు, ఈమెయిల్ అడ్రస్, ప్రొఫైల్ ఫోటోను <ph name="IDENTITY_PROVIDER_ETLD_PLUS_ONE" /> ఈ సైట్తో షేర్ చేస్తుంది.</translation> <translation id="5402367795255837559">బ్రెయిలీ</translation> <translation id="5402815541704507626">మొబైల్ డేటా ఉపయోగించి అప్డేట్ను డౌన్లోడ్ చేయండి</translation> -<translation id="540296380408672091"><ph name="HOST" />లో కుక్కీలను ఎల్లప్పుడూ బ్లాక్ చేయి</translation> +<translation id="540296380408672091"><ph name="HOST" />లో కుక్కీలను ఎల్లప్పుడూ బ్లాక్ చేయండి</translation> <translation id="5404740137318486384">స్విచ్ లేదా కీబోర్డ్ కీని "<ph name="ACTION" />"కు అసైన్ చేయడానికి సదరు స్విచ్ లేదా కీబోర్డ్ కీని నొక్కండి. మీరు ఈ చర్య కోసం అనేక స్విచ్లను అసైన్ చేయవచ్చు.</translation> <translation id="540495485885201800">మునుపటి దానితో స్వాప్ చేయి</translation> @@ -4633,7 +4631,7 @@ <translation id="5434065355175441495">PKCS #1 RSA ఎన్క్రిప్షన్</translation> <translation id="5435779377906857208">మీ లొకేషన్ను యాక్సెస్ చేయడానికి <ph name="HOST" />ని ఎల్లప్పుడూ అనుమతించండి</translation> <translation id="5436492226391861498">ప్రాక్సీ టనెల్ కోసం వేచి ఉంది...</translation> -<translation id="5436510242972373446"><ph name="SITE_NAME" /> వెతుకు:</translation> +<translation id="5436510242972373446"><ph name="SITE_NAME" /> వెతకండి:</translation> <translation id="5436575196282187764">Google Photos జ్ఞాపకాలు</translation> <translation id="5439680044267106777">స్కిప్ చేసి, కొత్త ప్రొఫైల్ను సెటప్ చేయండి</translation> <translation id="544083962418256601">షార్ట్కట్లను క్రియేట్ చేయండి...</translation> @@ -4687,7 +4685,7 @@ <translation id="5486261815000869482">పాస్వర్డ్ని నిర్ధారించండి</translation> <translation id="5486561344817861625">బ్రౌజర్ పునఃప్రారంభాన్ని ప్రారంభించండి</translation> <translation id="5487460042548760727"><ph name="PROFILE_NAME" />కు ప్రొఫైల్ పేరుమార్చండి</translation> -<translation id="5487521232677179737">డేటాని తీసివేయి</translation> +<translation id="5487521232677179737">డేటాను తీసివేయండి</translation> <translation id="5488093641312826914">'<ph name="COPIED_ITEM_NAME" />' కాపీ చేయబడింది</translation> <translation id="5488508217173274228">సింక్ ఎన్క్రిప్షన్ ఆప్షన్లు</translation> <translation id="5489435190927933437"><ph name="DOMAIN" /> కోసం సేవ్ చేసిన పాస్వర్డ్లు</translation> @@ -4816,7 +4814,7 @@ <translation id="5600706100022181951"><ph name="UPDATE_SIZE_MB" /> MB మొబైల్ డేటాను ఉపయోగించి అప్డేట్ డౌన్లోడ్ చేయబడుతుంది. మీరు కొనసాగాలని అనుకుంటున్నారా?</translation> <translation id="5601503069213153581">PIN</translation> <translation id="5601823921345337195">MIDI పరికరాలకు కనెక్ట్ చేయడానికి అనుమతించబడలేదు</translation> -<translation id="5602765853043467355">ఈ పరికరం నుండి బుక్మార్క్లు, చరిత్ర, పాస్వర్డ్లు వంటివాటిని తీసివేయి</translation> +<translation id="5602765853043467355">ఈ పరికరం నుండి బుక్మార్క్లు, చరిత్ర, పాస్వర్డ్లు వంటివాటిని తీసివేయండి</translation> <translation id="5605623530403479164">ఇతర సెర్చ్ ఇంజిన్లు</translation> <translation id="5605758115928394442">మీరేనని నిర్ధారించుకోవడానికి మీ ఫోన్కు ఒక నోటిఫికేషన్ పంపబడింది.</translation> <translation id="5606849116180480101">{NUM_EXTENSIONS,plural, =1{ఈ ఎక్స్టెన్షన్ బ్లాక్ చేయబడింది}other{ఈ ఎక్స్టెన్షన్లు బ్లాక్ చేయబడ్డాయి}}</translation> @@ -4871,7 +4869,7 @@ <translation id="5653154844073528838">మీరు సేవ్ చేయబడిన <ph name="PRINTER_COUNT" /> ప్రింటర్లు కలిగి ఉన్నారు.</translation> <translation id="5655296450510165335">పరికర ఎన్రోల్మెంట్</translation> <translation id="5656845498778518563">Googleకు ఫీడ్బ్యాక్ పంపండి</translation> -<translation id="5657156137487675418">అన్ని కుక్కీలను అనుమతించు</translation> +<translation id="5657156137487675418">అన్ని కుక్కీలను అనుమతించండి</translation> <translation id="5657667036353380798">బాహ్య ఎక్స్టెన్షన్కు chrome వెర్షన్ <ph name="MINIMUM_CHROME_VERSION" /> లేదా అంతకంటే అధిక వెర్షన్ను ఇన్స్టాల్ చేయడం అవసరం.</translation> <translation id="5658415415603568799">అదనపు భద్రత కోసం, 20 గంటల తర్వాత మీ పాస్వర్డ్ను నమోదు చేయమని మీ Smart Lock అడుగుతుంది.</translation> <translation id="5659593005791499971">ఈమెయిల్</translation> @@ -4973,7 +4971,7 @@ <translation id="5772265531560382923">{NUM_PAGES,plural, =1{ఇది ప్రతిస్పందించే వరకు మీరు వేచి ఉండవచ్చు లేదా పేజీ నుండి మీరు నిష్క్రమించవచ్చు.}other{ఇవి ప్రతిస్పందించే వరకు మీరు వేచి ఉండవచ్చు లేదా పేజీల నుండి మీరు నిష్క్రమించవచ్చు.}}</translation> <translation id="577322787686508614">దీనిలో చదివే చర్యకు అనుమతి లేదు: "<ph name="DEVICE_NAME" />".</translation> <translation id="5774295353725270860">ఫైల్స్ యాప్ను తెరువు</translation> -<translation id="577624874850706961">కుకీలను వెతుకు</translation> +<translation id="577624874850706961">కుకీలను వెతకండి</translation> <translation id="5776450228446082914">ఈ వెబ్సైట్ల లిస్ట్ను ఏదొక బ్రౌజర్లో తెరవవచ్చు.</translation> <translation id="5776571780337000608">మీ ఫైల్ బ్రౌజర్ లేదా ఇతర యాప్ల నుండి ఈ యాప్తో, సపోర్ట్ ఉన్న ఫైల్స్ను మీరు తెరవవచ్చు, ఎడిట్ చేయవచ్చు. ఈ యాప్తో ఆటోమేటిక్గా ఏ ఫైల్స్ తెరుచుకోవాలి అనే దానిని కంట్రోల్ చేయడానికి, <ph name="BEGIN_LINK" />మీ పరికరంలో ఆటోమేటిక్ యాప్లను సెట్ చేయడం ఎలాగో తెలుసుకోండి<ph name="END_LINK" />.</translation> <translation id="5777468213129569553">Chromeని తెరవండి</translation> @@ -5070,6 +5068,7 @@ <translation id="5860494867054883682">మీ పరికరం <ph name="CHANNEL_NAME" /> ఛానెల్కు అప్డేట్ చేయబడుతోంది (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">అరలో స్టైలస్ సాధనాలను చూపుతుంది</translation> <translation id="5862319196656206789">కనెక్ట్ చేయబడిన పరికరాలను సెటప్ చేయండి</translation> +<translation id="5862731021271217234">మీ ఇతర పరికరాలలో ఉన్న మీ అన్ని ట్యాబ్లను పొందాలనుకుంటే, సింక్ ఎంపికను ఆన్ చేయాలి</translation> <translation id="5863445608433396414">డీబగ్గింగ్ ఫీచర్లను ప్రారంభించు</translation> <translation id="5864195618110239517">డేటా నియంత్రణ ఉన్న కనెక్షన్ను ఉపయోగించండి</translation> <translation id="5864754048328252126">ఛార్జింగ్లో ఉన్నప్పుడు ఇన్యాక్టివ్ చర్య</translation> @@ -5260,7 +5259,7 @@ <translation id="6051811090255711417">ఈ ఫైల్ సెక్యూరిటీ పాలసీని పాటించనందున మీ సంస్థ దీనిని బ్లాక్ చేసింది</translation> <translation id="6052488962264772833">ప్రసారం చేయడాన్ని ప్రారంభించడానికి యాక్సెస్ కోడ్ను టైప్ చేయండి</translation> <translation id="6052976518993719690">SSL ధృవీకరణ అధికారం</translation> -<translation id="6053401458108962351">&బ్రౌజింగ్ డేటాను క్లియర్ చేయి...</translation> +<translation id="6053401458108962351">&బ్రౌజింగ్ డేటాను క్లియర్ చేయండి...</translation> <translation id="6054284857788651331">ఇటీవల మూసివేసిన ట్యాబ్ గ్రూప్</translation> <translation id="6054961935262556546">విజిబిలిటీను మార్చు</translation> <translation id="6055171183283175969">మీరు నమోదు చేసిన పాస్వర్డ్ తప్పు.</translation> @@ -5285,9 +5284,9 @@ <translation id="6073903501322152803">యాక్సెస్ ఫీచర్లను జోడించండి</translation> <translation id="6075731018162044558">అయ్యో! ఈ పరికరం కోసం దీర్ఘకాల API యాక్సెస్ టోకెన్ను పొందడంలో సిస్టమ్ విఫలమైంది.</translation> <translation id="6075907793831890935"><ph name="HOSTNAME" /> పేరు గల పరికరంతో డేటాను ఇచ్చిపుచ్చుకోవడానికి అనుమతి</translation> -<translation id="6076175485108489240">స్థానాన్ని ఉపయోగించండి. స్థాన అనుమతిని కలిగిన యాప్లు మరియు సేవలు మీ పరికర స్థానాన్ని ఉపయోగించడానికి అనుమతించండి. Google కాలానుగుణంగా స్థాన డేటాని సేకరించవచ్చు మరియు స్థాన ఖచ్చితత్వం మరియు స్థానం-ఆధారిత సేవలను మెరుగుపరచడం కోసం ఈ డేటాని అనామకంగా ఉపయోగించవచ్చు. <ph name="BEGIN_LINK1" />మరింత తెలుసుకోండి<ph name="END_LINK1" /></translation> +<translation id="6076175485108489240">స్థానాన్ని ఉపయోగించండి. స్థాన అనుమతిని కలిగిన యాప్లు మరియు సేవలు మీ పరికర స్థానాన్ని ఉపయోగించడానికి అనుమతించండి. Google కాలానుగుణంగా స్థాన డేటాను సేకరించవచ్చు మరియు స్థాన ఖచ్చితత్వం మరియు స్థానం-ఆధారిత సేవలను మెరుగుపరచడం కోసం ఈ డేటాను అనామకంగా ఉపయోగించవచ్చు. <ph name="BEGIN_LINK1" />మరింత తెలుసుకోండి<ph name="END_LINK1" /></translation> <translation id="6076491747490570887">లేత బూడిద రంగు</translation> -<translation id="6077131872140550515">ప్రాధాన్య నెట్వర్క్ల నుండి తీసివేయి</translation> +<translation id="6077131872140550515">ప్రాధాన్య నెట్వర్క్ల నుండి తీసివేయండి</translation> <translation id="6077189836672154517"><ph name="DEVICE_TYPE" />కు సంబంధించిన చిట్కాలు మరియు అప్డేట్లు</translation> <translation id="6077476112742402730">స్పీక్-టు-టైప్</translation> <translation id="6078121669093215958">{0,plural, =1{గెస్ట్}other{# తెరవబడిన గెస్ట్ విండోలు}}</translation> @@ -5506,7 +5505,6 @@ <translation id="6291949900244949761">సైట్ USB పరికరాలను యాక్సెస్ చేయాలనుకున్నప్పుడు అడుగు (సిఫార్సు చేయబడింది)</translation> <translation id="6291953229176937411">శోధినిలో &చూపించు</translation> <translation id="6292699686837272722">ట్యాబ్లు మీడియం వెడల్పునకు కుదించబడతాయి</translation> -<translation id="6294610283659775533">ఒకే Google ఖాతాతో సైన్ ఇన్ చేయబడి ఉన్న పరికరాల మధ్య మీరు ట్యాబ్లను పంపవచ్చు</translation> <translation id="6294759976468837022">ఆటో-స్కాన్ వేగం</translation> <translation id="6295158916970320988">అన్ని సైట్లు</translation> <translation id="6295855836753816081">సేవ్ చేస్తోంది...</translation> @@ -5614,7 +5612,7 @@ <translation id="6406506848690869874">Sync</translation> <translation id="6406708970972405507">సెట్టింగ్లు - <ph name="SECTION_TITLE" /></translation> <translation id="6407955178761087876">మీ పాస్వర్డ్ను మార్చడంలో Google Assistantను మీకు సహాయం చేయనివ్వండి</translation> -<translation id="6408118934673775994"><ph name="WEBSITE_1" />, <ph name="WEBSITE_2" /> మరియు <ph name="WEBSITE_3" />లో ఉన్న మీ డేటాని చదవడం మరియు మార్చడం</translation> +<translation id="6408118934673775994"><ph name="WEBSITE_1" />, <ph name="WEBSITE_2" /> మరియు <ph name="WEBSITE_3" />లో ఉన్న మీ డేటాను చదవడం మరియు మార్చడం</translation> <translation id="6410257289063177456">చిత్రం ఫైళ్లు</translation> <translation id="6410328738210026208">ఛానెల్ మరియు పవర్వాష్ను మార్చు</translation> <translation id="6410390304316730527">ప్రమాదకరమైన సాఫ్ట్వేర్ ఇన్స్టాల్ చేసే విధంగా లేదా మీ పాస్వర్డ్లు, ఫోన్ నంబర్లు లేదా క్రెడిట్ కార్డ్ల వంటి మీ వ్యక్తిగత సమాచారాన్ని బహిర్గతం చేసే విధంగా మిమ్మల్ని మాయ చేసే హ్యాకర్ల నుండి మిమ్మల్ని సురక్షిత బ్రౌజింగ్ రక్షిస్తుంది. మీరు దీన్ని ఆఫ్ చేస్తే, అపరిచిత లేదా విశ్వసనీయం కాని సైట్లను బ్రౌజ్ చేసినప్పుడు జాగ్రత్త వహించండి.</translation> @@ -5627,7 +5625,7 @@ <translation id="6417265370957905582">Google Assistant</translation> <translation id="6417468503703810114">ఆటోమేటిక్ సెట్టింగ్ ప్రవర్తన</translation> <translation id="6418160186546245112">మునుపు ఇన్స్టాల్ చేసిన <ph name="IDS_SHORT_PRODUCT_NAME" /> వెర్షన్కు తిరిగి మారుస్తోంది</translation> -<translation id="6418481728190846787">అన్ని యాప్ల కోసం యాక్సెస్ను శాశ్వతంగా తీసివేయి</translation> +<translation id="6418481728190846787">అన్ని యాప్ల కోసం యాక్సెస్ను శాశ్వతంగా తీసివేయండి</translation> <translation id="6418511932144861495">కీలకమైన అప్డేట్ను ఇన్స్టాల్ చేయండి</translation> <translation id="641899100123938294">కొత్త పరికరాల కోసం స్కాన్ చేయండి</translation> <translation id="6419524191360800346">Debian 11 (Bullseye) కు అప్గ్రేడ్ అందుబాటులో ఉంది</translation> @@ -5748,7 +5746,7 @@ <translation id="6532206849875187177">భద్రత మరియు సైన్ ఇన్</translation> <translation id="6532527800157340614">మీ యాక్సెస్ టోకెన్ని పొందడం సాధ్యం కాలేదు కాబట్టి, సైన్ ఇన్ విఫలమైంది. దయచేసి మీ నెట్వర్క్ కనెక్షన్ను చెక్ చేసి, మళ్లీ ప్రయత్నించండి.</translation> <translation id="6532663472409656417">ఎంటర్ప్రైజ్ నమోదు చేయబడింది</translation> -<translation id="6535331821390304775">అనుబంధిత యాప్లో ఈ రకమైన లింక్లను తెరవడానికి <ph name="ORIGIN" />ను ఎల్లప్పుడూ అనుమతించు</translation> +<translation id="6535331821390304775">అనుబంధిత యాప్లో ఈ రకమైన లింక్లను తెరవడానికి <ph name="ORIGIN" />ను ఎల్లప్పుడూ అనుమతించండి</translation> <translation id="653659894138286600">డాక్యుమెంట్లు, ఇమేజ్లను స్కాన్ చేయండి</translation> <translation id="6537613839935722475">పేరులో అక్షరాలు, నంబర్లు, అడ్డు గీతలు (-) ఉపయోగించవచ్చు</translation> <translation id="6538098297809675636">కోడ్ను గుర్తించడంలో ఎర్రర్ ఏర్పడింది</translation> @@ -5787,7 +5785,7 @@ <translation id="6568283005472142698">ట్యాబ్ సెర్చ్</translation> <translation id="65711204837946324">దీనిని డౌన్లోడ్ చేయడానికి అనుమతి కావాలి</translation> <translation id="6571772921213691236">సైన్-ఇన్ డేటాను ఎడిట్ చేయండి</translation> -<translation id="6573096386450695060">ఎల్లప్పుడూ అనుమతించు</translation> +<translation id="6573096386450695060">ఎల్లప్పుడూ అనుమతించండి</translation> <translation id="6573497332121198392">షార్ట్కట్ను తీసివేయడం సాధ్యపడలేదు</translation> <translation id="657402800789773160">ఈ పేజీని &రీలోడ్ చేయి</translation> <translation id="6577284282025554716">డౌన్లోడ్ రద్దు చేయబడింది: <ph name="FILE_NAME" /></translation> @@ -5859,7 +5857,7 @@ <translation id="6640268266988685324">తెరిచి ఉన్న ట్యాబ్</translation> <translation id="6642720633335369752">తెరిచి ఉన్న అన్ని యాప్ విండోలనూ చూడటానికి, కింది నుండి పైకి స్వైప్ చేసి, పట్టుకోండి.</translation> <translation id="664290675870910564">నెట్వర్క్ ఎంపిక</translation> -<translation id="6643016212128521049">క్లియర్ చేయి</translation> +<translation id="6643016212128521049">క్లియర్ చేయండి</translation> <translation id="6644512095122093795">పాస్వర్డ్లను సేవ్ చేయడానికి ప్రతిపాదించు</translation> <translation id="6644513150317163574">URL ఫార్మాట్ చెల్లదు. SSO ప్రామాణీకరణను ఉపయోగించినప్పుడు, సర్వర్ను తప్పనిసరిగా హోస్ట్ పేరు రూపంలో పేర్కొనాలి.</translation> <translation id="6644846457769259194">మీ పరికరం అప్డేట్ చేయబడుతోంది (<ph name="PROGRESS_PERCENT" />)</translation> @@ -5965,7 +5963,7 @@ <translation id="6745592621698551453">ఇప్పుడే అప్డేట్ చేయి</translation> <translation id="6746124502594467657">క్రిందికి తరలించు</translation> <translation id="674632704103926902">నొక్కి లాగడాన్ని ప్రారంభించు</translation> -<translation id="6748465660675848252">మీరు కొనసాగించవచ్చు, కానీ మీ సింక్ చేసిన డేటా మరియు సెట్టింగ్లు మాత్రమే పునరుద్ధరించబడతాయి. మొత్తం స్థానిక డేటాని కోల్పోవడం జరుగుతుంది.</translation> +<translation id="6748465660675848252">మీరు కొనసాగించవచ్చు, కానీ మీ సింక్ చేసిన డేటా మరియు సెట్టింగ్లు మాత్రమే పునరుద్ధరించబడతాయి. మొత్తం స్థానిక డేటాను కోల్పోవడం జరుగుతుంది.</translation> <translation id="6748980958975836188">నేను <ph name="BEGIN_LINK1" />Google సర్వీస్ నియమాలు<ph name="END_LINK1" />, <ph name="BEGIN_LINK2" />Chrome, ఇంకా ChromeOS అదనపు సర్వీస్ నియమాలను<ph name="END_LINK2" /> చదివి అంగీకరిస్తున్నాను.</translation> <translation id="6750757184909117990">సెల్యులార్ను డిజేబుల్ చేయడం</translation> <translation id="6751344591405861699"><ph name="WINDOW_TITLE" /> (అజ్ఞాతంగా)</translation> @@ -6055,7 +6053,7 @@ <translation id="6826872289184051766">USB ద్వారా ధృవీకరించు</translation> <translation id="6827121912381363404"><ph name="PERMITTED_SITE" />ను చదివి, మార్చడానికి అన్ని ఎక్స్టెన్షన్లకు అనుమతినివ్వండి</translation> <translation id="6827517233063803343">మీరు మీ Google ఖాతాతో సైన్ ఇన్ చేసిన ChromeOS పరికరాలు అన్నిటిలోనూ మీ యాప్లు, సెట్టింగ్లు సింక్ చేయబడతాయి. బ్రౌజర్ సింక్ ఆప్షన్ల కోసం, <ph name="LINK_BEGIN" />Chrome సెట్టింగ్లు<ph name="LINK_END" /> ఆప్షన్కు వెళ్లండి.</translation> -<translation id="6828153365543658583">కింది వినియోగదారులకు మాత్రమే సైన్-ఇన్ను అనుమతించు:</translation> +<translation id="6828153365543658583">కింది వినియోగదారులకు మాత్రమే సైన్-ఇన్ను అనుమతించండి:</translation> <translation id="6828182567531805778">మీ డేటాను సింక్ చేయడానికి మీ రహస్య పదబంధాన్ని నమోదు చేయండి</translation> <translation id="682871081149631693">QuickFix</translation> <translation id="6828860976882136098">వినియోగదారులందరి కోసం ఆటోమేటిక్ అప్డేట్లను సెటప్ చేయడం విఫలమైంది (ప్రీఫ్లయిట్ అమలు ఎర్రర్: <ph name="ERROR_NUMBER" />)</translation> @@ -6154,7 +6152,7 @@ <translation id="6919868320029503575">బలహీనమైన పాస్వర్డ్లు</translation> <translation id="6919952941889172531">అలాగే ఈ Chrome ప్రొఫైల్కు మెరుగైన సురక్షిత బ్రౌజింగ్ను ఆన్ చేయండి?</translation> <translation id="6920989436227028121">సాధారణ ట్యాబ్ లాగా తెరువు</translation> -<translation id="6921104647315081813">యాక్టివిటీలను తీసివేయి</translation> +<translation id="6921104647315081813">యాక్టివిటీలను తీసివేయండి</translation> <translation id="692114467174262153"><ph name="ALTERNATIVE_BROWSER_NAME" />ను తెరవలేకపోయింది</translation> <translation id="6922128026973287222">Google డేటా సేవర్ను ఉపయోగించి డేటాను ఆదా చేయండి. వేగంగా బ్రౌజ్ చేయండి. మరింత తెలుసుకోవడానికి క్లిక్ చేయండి.</translation> <translation id="6922745772873733498">ముద్రించడానికి పిన్ను నమోదు చేయండి</translation> @@ -6192,7 +6190,7 @@ <translation id="696103774840402661">ఈ <ph name="DEVICE_TYPE" />లో యూజర్లందరికీ సంబంధించిన అన్ని ఫైళ్లు, లోకల్ డేటా శాశ్వతంగా తొలగించబడ్డాయి.</translation> <translation id="6963872466817251924">టెక్స్ట్ కర్సర్ హైలైటర్</translation> <translation id="6964390816189577014">వీరుడు</translation> -<translation id="6964760285928603117">గుంపు నుండి తీసివేయి</translation> +<translation id="6964760285928603117">గుంపు నుండి తీసివేయండి</translation> <translation id="6965382102122355670">సరే</translation> <translation id="6965648386495488594">పోర్ట్</translation> <translation id="6965978654500191972">పరికరం</translation> @@ -6223,7 +6221,7 @@ <translation id="6983783921975806247">రిజిస్టర్ చేసిన OID</translation> <translation id="6984299437918708277">సైన్-ఇన్ స్క్రీన్లో మీ ఖాతా కోసం ప్రదర్శించడానికి చిత్రాన్ని ఎంచుకోండి</translation> <translation id="6985235333261347343">Microsoft Key Recovery Agent</translation> -<translation id="698524779381350301">కింది సైట్లలో యాక్సెస్ను ఆటోమేటిక్గా అనుమతించు</translation> +<translation id="698524779381350301">కింది సైట్లలో యాక్సెస్ను ఆటోమేటిక్గా అనుమతించండి</translation> <translation id="6985607387932385770">ప్రింటర్లు</translation> <translation id="6988094684494323731">Linux కంటెయినర్ను ప్రారంభిస్తోంది</translation> <translation id="6988403677482707277">Tab టాబ్స్ట్రిప్ ప్రారంభానికి తరలించబడింది</translation> @@ -6306,7 +6304,7 @@ <translation id="7057767408836081338">యాప్ డేటాను పొందడంలో సమస్య ఉంది, యాప్ను రన్ చేయడానికి ప్రయత్నిస్తోంది...</translation> <translation id="7058024590501568315">దాచబడిన నెట్వర్క్</translation> <translation id="7059858479264779982">స్వీయ-ప్రారంభానికి సెట్ చేయి</translation> -<translation id="7062222374113411376">డేటాను పంపడం మరియు స్వీకరించడం పూర్తి చేయడానికి ఇటీవల మూసివేసిన సైట్లను అనుమతించు (సిఫార్సు చేయబడింది)</translation> +<translation id="7062222374113411376">డేటాను పంపడం మరియు స్వీకరించడం పూర్తి చేయడానికి ఇటీవల మూసివేసిన సైట్లను అనుమతించండి (సిఫార్సు చేయబడింది)</translation> <translation id="7063129466199351735">షార్ట్కట్లను ప్రాసెస్ చేస్తోంది...</translation> <translation id="7063311912041006059">ప్రశ్న యొక్క ప్రదేశంలో <ph name="SPECIAL_SYMBOL" />తో URL</translation> <translation id="706342288220489463">సహాయం చేయడానికి మీ Assistantను మీ స్క్రీన్పై సమాచారాన్ని ఉపయోగించనివ్వండి</translation> @@ -6417,7 +6415,7 @@ <translation id="7193051357671784796">మీ సంస్థ ద్వారా ఈ యాప్ జోడించబడింది. యాప్ను పునఃప్రారంభించడం ద్వారా దీని ఇన్స్టాలేషన్ను పూర్తి చేయండి.</translation> <translation id="7193374945610105795"><ph name="ORIGIN" /> కోసం పాస్వర్డ్లు సేవ్ చేయబడలేదు</translation> <translation id="7194873994243265344">ఈ ఫైల్ ఎన్క్రిప్ట్ చేయబడింది, కాబట్టి మీ సంస్థ దీన్ని బ్లాక్ చేసింది. డిక్రిప్ట్ చేయమని ఫైల్ ఓనర్ను అడగండి.</translation> -<translation id="7196913789568937443">Google Driveకు బ్యాకప్ చేయండి. ఏ సమయంలో అయినా సులభంగా మీ డేటాని పునరుద్ధరించండి లేదా పరికరాన్ని మార్చండి. ఈ బ్యాకప్లో యాప్ డేటా ఉంటుంది. బ్యాకప్లు Googleకు అప్లోడ్ చేయబడతాయి మరియు మీ Google ఖాతా పాస్వర్డ్ని ఉపయోగించి ఎన్క్రిప్ట్ చేయబడతాయి. <ph name="BEGIN_LINK1" />మరింత తెలుసుకోండి<ph name="END_LINK1" /></translation> +<translation id="7196913789568937443">Google Driveకు బ్యాకప్ చేయండి. ఏ సమయంలో అయినా సులభంగా మీ డేటాను పునరుద్ధరించండి లేదా పరికరాన్ని మార్చండి. ఈ బ్యాకప్లో యాప్ డేటా ఉంటుంది. బ్యాకప్లు Googleకు అప్లోడ్ చేయబడతాయి మరియు మీ Google ఖాతా పాస్వర్డ్ని ఉపయోగించి ఎన్క్రిప్ట్ చేయబడతాయి. <ph name="BEGIN_LINK1" />మరింత తెలుసుకోండి<ph name="END_LINK1" /></translation> <translation id="7197190419934240522">మీరు బ్రౌజ్ చేసే ప్రతిసారి Google Search మరియు Google స్మార్ట్లను పొందండి</translation> <translation id="719791532916917144">కీబోర్డ్ షార్ట్కట్</translation> <translation id="7198503619164954386">మీరు ఎంటర్ప్రైజ్-ఎన్రోల్ చేసిన పరికరంలో ఉండాలి</translation> @@ -6886,7 +6884,7 @@ <translation id="7659336857671800422">గోప్యతా గైడ్ను ఉపయోగించండి</translation> <translation id="7659584679870740384">ఈ పరికరాన్ని ఉపయోగించడానికి మీకు అధికారం లేదు. దయచేసి సైన్-ఇన్ అనుమతి కోసం నిర్వాహకుడిని సంప్రదించండి.</translation> <translation id="7660146600670077843">ట్యాబ్పై కుడి క్లిక్ చేసి, "కొత్త గ్రూప్నకు ట్యాబ్ను జోడించండి" అనే ఆప్షన్ను ఎంచుకోండి</translation> -<translation id="7661259717474717992">కుక్కీ డేటాను సేవ్ చేయడానికి మరియు చదవడానికి సైట్లను అనుమతించు</translation> +<translation id="7661259717474717992">కుక్కీ డేటాను సేవ్ చేయడానికి మరియు చదవడానికి సైట్లను అనుమతించండి</translation> <translation id="7661451191293163002">నమోదు ప్రమాణపత్రాన్ని పొందడం సాధ్యపడలేదు.</translation> <translation id="7662283695561029522">కాన్ఫిగర్ చేయడానికి నొక్కండి</translation> <translation id="7663719505383602579">స్వీకర్త: <ph name="ARC_PROCESS_NAME" /></translation> @@ -6956,7 +6954,7 @@ <translation id="7719367874908701697">పేజీ జూమ్</translation> <translation id="7719588063158526969">పరికరం పేరు చాలా పొడవుగా ఉంది</translation> <translation id="7720216670798402294">ChromeOS పరికర సమాచారాన్ని, ఇంకా పరికర డేటాను చదువుతుంది.</translation> -<translation id="7721179060400456005">డిస్ప్లేల మేరకు విస్తరించేలా విండోలను అనుమతించు</translation> +<translation id="7721179060400456005">డిస్ప్లేల మేరకు విస్తరించేలా విండోలను అనుమతించండి</translation> <translation id="7721237513035801311"><ph name="SWITCH" /> (<ph name="DEVICE_TYPE" />)</translation> <translation id="7721258531237831532">మీ ఆర్గనైజేషన్కు ఒక ప్రొఫైల్ అవసరం</translation> <translation id="7722040605881499779">అప్డేట్ చేయడానికి కావాల్సిన స్థలం: <ph name="NECESSARY_SPACE" /></translation> @@ -7012,6 +7010,7 @@ <translation id="7768526219335215384"><ph name="ORIGIN" />, <ph name="FOLDERNAME" />లోని ఫైళ్లను చూడగలదు</translation> <translation id="7768770796815395237">మార్చు</translation> <translation id="7768784765476638775">వినడానికి ఎంచుకోండి</translation> +<translation id="7769748505895274502">ఇటీవల మూసివేసిన వాటిని కుదించండి</translation> <translation id="7770406201819593386">Chrome OS Flexలో సమస్య విశ్లేషణ టెస్ట్లను రన్ చేయండి.</translation> <translation id="7770450735129978837">కుడి వైపు మౌస్ క్లిక్</translation> <translation id="7770612696274572992">ఇతర పరికరం నుండి కాపీ చేసిన ఇమేజ్</translation> @@ -7029,7 +7028,7 @@ <translation id="7782717250816686129">లాగిన్ స్క్రీన్లో డేటాను నిరంతరం సేవ్ చేయండి, సెషన్లోకి ఆధారాలను ఇంజెక్ట్ చేయండి.</translation> <translation id="778330624322499012"><ph name="PLUGIN_NAME" />ను లోడ్ చేయడం సాధ్యపడలేదు</translation> <translation id="7784067724422331729">మీ కంప్యూటర్లోని భద్రతా సెట్టింగ్లు ఈ ఫైల్ను బ్లాక్ చేసాయి.</translation> -<translation id="7784796923038949829">సైట్ డేటాని చదవడం లేదా మార్చడం సాధ్యం కాదు</translation> +<translation id="7784796923038949829">సైట్ డేటాను చదవడం లేదా మార్చడం సాధ్యం కాదు</translation> <translation id="778480864305029524">తక్షణ టెథెరింగ్ని ఉపయోగించాలంటే, Google Play సేవల కోసం నోటిఫికేషన్లను ఆన్ చేయండి.</translation> <translation id="7785471469930192436">వర్తిస్తే, మీ సెర్చ్ హిస్టరీని తొలగించడానికి మీ సెర్చ్ ఇంజిన్ సూచనలను చూడండి</translation> <translation id="7786889348652477777">యాప్ను &మళ్లీ లోడ్ చేయి</translation> @@ -7097,7 +7096,7 @@ <ph name="BEGIN_PARAGRAPH3" />మీ Google ఖాతాకు వెబ్ & యాప్ యాక్టివిటీ సెట్టింగ్ను ఆన్ చేసినట్లయితే, మీ Android డేటా మీ Google ఖాతాలో సేవ్ చేయబడవచ్చు. మీరు account.google.com లో మీ డేటాను చూడవచ్చు, తొలగించవచ్చు, మీ ఖాతా సెట్టింగ్లను మార్చవచ్చు.<ph name="END_PARAGRAPH3" /></translation> <translation id="7851021205959621355"><ph name="BEGIN_BOLD" />గమనిక:<ph name="END_BOLD" /> ఒకే రీతిలో ఉండే వాయిస్ లేదా రికార్డింగ్ సైతం మీ వ్యక్తిగత ఫలితాలను లేదా మీ Assistantను యాక్సెస్ చేయగలిగే అవకాశం ఉంది. బ్యాటరీని సేవ్ చేయడానికి, మీ పరికరాన్ని పవర్ సోర్స్కు కనెక్ట్ చేసినప్పుడు మాత్రమే “Ok Google” ఆన్ అవ్వాలని మీ Assistant సెట్టింగ్లలో మీరు ఎంచుకోవచ్చు.</translation> <translation id="7851457902707056880">సైన్-ఇన్ అనేది, యజమాని ఖాతాకు మాత్రమే పరిమితం చేయబడింది. దయచేసి రీబూట్ చేసి యజమాని ఖాతాతో సైన్ ఇన్ చేయండి. మెషీన్ 30 సెకన్లలో ఆటోమేటిక్గా రీబూట్ అవుతుంది.</translation> -<translation id="7851716364080026749">ఎల్లప్పుడూ కెమెరా మరియు మైక్రోఫోన్ యాక్సెస్ను బ్లాక్ చేయి</translation> +<translation id="7851716364080026749">ఎల్లప్పుడూ కెమెరా మరియు మైక్రోఫోన్ యాక్సెస్ను బ్లాక్ చేయండి</translation> <translation id="7851720427268294554">IPP పార్సర్</translation> <translation id="78526636422538552">మరిన్ని Google ఖాతాలను జోడించడం నిలిపివేయబడింది</translation> <translation id="7853747251428735">మరిన్ని సాధనా&లు</translation> @@ -7257,7 +7256,7 @@ <translation id="8002274832045662704">అధునాతన ప్రింటర్ కాన్ఫిగరేషన్</translation> <translation id="8002670234429879764">ఇకపై <ph name="PRINTER_NAME" /> అందుబాటులో ఉండదు</translation> <translation id="8004582292198964060">బ్రౌజర్</translation> -<translation id="8005600846065423578">క్లిప్బోర్డ్ను చూడటానికి ఎల్లప్పుడూ <ph name="HOST" />ని అనుమతించు</translation> +<translation id="8005600846065423578">క్లిప్బోర్డ్ను చూడటానికి ఎల్లప్పుడూ <ph name="HOST" />ని అనుమతించండి</translation> <translation id="8006630792898017994">Space లేదా Tab</translation> <translation id="8008356846765065031">ఇంటర్నెట్ డిస్కనెక్ట్ చేయబడింది. దయచేసి మీ ఇంటర్నెట్ కనెక్షన్ను చెక్ చేయండి.</translation> <translation id="8009225694047762179">పాస్వర్డ్లను నిర్వహించండి</translation> @@ -7310,7 +7309,7 @@ <translation id="8050038245906040378">Microsoft Commercial Code Signing</translation> <translation id="8050191834453426339">మళ్లీ వెరిఫై చేయండి</translation> <translation id="8051193500142930381">ఏ ఫీచర్లకు కెమెరా అవసరం అవుతుందో అవి పని చేయవు</translation> -<translation id="8051390370038326517">MIDI డివైజ్ల పూర్తి కంట్రోల్ను కలిగి ఉండటానికి <ph name="HOST" />ను ఎల్లప్పుడూ అనుమతించు</translation> +<translation id="8051390370038326517">MIDI డివైజ్ల పూర్తి కంట్రోల్ను కలిగి ఉండటానికి <ph name="HOST" />ను ఎల్లప్పుడూ అనుమతించండి</translation> <translation id="8053278772142718589">PKCS #12 ఫైళ్ళు</translation> <translation id="8053390638574070785">ఈ పేజీని మళ్లీ లోడ్ చేయి</translation> <translation id="8054517699425078995">ఈ రకమైన ఫైల్ మీ పరికరానికి హాని కలిగించవచ్చు. ఏది ఏమైనా <ph name="FILE_NAME" />ను ఉంచాలని అనుకుంటున్నారా?</translation> @@ -7353,7 +7352,7 @@ <translation id="8090234456044969073">మీరు అత్యంత తరచుగా సందర్శించిన వెబ్సైట్ల లిస్ట్ను చదవడానికి అనుమతి</translation> <translation id="8090513782447872344">మళ్లీ చూడటానికి మీరు ఎప్పుడైనా తిరిగి రావచ్చు</translation> <translation id="8093359998839330381"><ph name="PLUGIN_NAME" /> ప్రతిస్పందించడం లేదు</translation> -<translation id="8095105960962832018"><ph name="BEGIN_PARAGRAPH1" />Google Driveకు బ్యాకప్ చేయండి. ఏ సమయంలో అయినా సులభంగా మీ డేటాని పునరుద్ధరించండి లేదా పరికరాన్ని మార్చండి. మీ బ్యాకప్లో యాప్ డేటా ఉంటుంది.<ph name="END_PARAGRAPH1" /> +<translation id="8095105960962832018"><ph name="BEGIN_PARAGRAPH1" />Google Driveకు బ్యాకప్ చేయండి. ఏ సమయంలో అయినా సులభంగా మీ డేటాను పునరుద్ధరించండి లేదా పరికరాన్ని మార్చండి. మీ బ్యాకప్లో యాప్ డేటా ఉంటుంది.<ph name="END_PARAGRAPH1" /> <ph name="BEGIN_PARAGRAPH2" />మీ బ్యాకప్లు Googleకు అప్లోడ్ చేయబడతాయి మరియు మీ Google ఖాతా పాస్వర్డ్ని ఉపయోగించి ఎన్క్రిప్ట్ చేయబడతాయి.<ph name="END_PARAGRAPH2" /> <ph name="BEGIN_PARAGRAPH3" />కాంటాక్ట్లు, మెసేజ్లు మరియు ఫోటోల వంటి యాప్ సేవ్ చేసిన (డెవలపర్ సెట్టింగ్ల ఆధారంగా) ఎలాంటి డేటా అయినా యాప్ డేటాగా పరిగణించబడుతుంది.<ph name="END_PARAGRAPH3" /> <ph name="BEGIN_PARAGRAPH4" />బ్యాకప్ డేటా మీ డిస్క్ నిల్వ కోటాలో లెక్కించబడదు.<ph name="END_PARAGRAPH4" /> @@ -7441,7 +7440,7 @@ <translation id="8169165065843881617">{NUM_TABS,plural, =1{చదవాల్సిన లిస్ట్కు ట్యాబ్ను జోడించండి}other{చదవాల్సిన లిస్ట్కు ట్యాబ్లను జోడించండి}}</translation> <translation id="8171334254070436367">అన్ని కార్డ్లను దాచు</translation> <translation id="8174047975335711832">పరికర సమాచారం</translation> -<translation id="8174876712881364124">Google Driveకు బ్యాకప్ చేయండి. ఏ సమయంలో అయినా సులభంగా డేటాని పునరుద్ధరించండి లేదా పరికరాన్ని మార్చండి. ఈ బ్యాకప్లో యాప్ డేటా ఉంటుంది. బ్యాకప్లు Googleకు అప్లోడ్ చేయబడతాయి మరియు మీ చిన్నారి Google ఖాతా పాస్వర్డ్ని ఉపయోగించి ఎన్క్రిప్ట్ చేయబడతాయి. <ph name="BEGIN_LINK1" />మరింత తెలుసుకోండి<ph name="END_LINK1" /></translation> +<translation id="8174876712881364124">Google Driveకు బ్యాకప్ చేయండి. ఏ సమయంలో అయినా సులభంగా డేటాను పునరుద్ధరించండి లేదా పరికరాన్ని మార్చండి. ఈ బ్యాకప్లో యాప్ డేటా ఉంటుంది. బ్యాకప్లు Googleకు అప్లోడ్ చేయబడతాయి మరియు మీ చిన్నారి Google ఖాతా పాస్వర్డ్ని ఉపయోగించి ఎన్క్రిప్ట్ చేయబడతాయి. <ph name="BEGIN_LINK1" />మరింత తెలుసుకోండి<ph name="END_LINK1" /></translation> <translation id="8176332201990304395">గులాబీ రంగు మరియు తెలుపు</translation> <translation id="8177196903785554304">నెట్వర్క్ వివరాలు</translation> <translation id="8177318697334260664">{NUM_TABS,plural, =1{ట్యాబ్ను కొత్త విండోకు తరలించు}other{ట్యాబ్లను కొత్త విండోకు తరలించు}}</translation> @@ -7774,7 +7773,7 @@ <translation id="8509967119010808787">మీ ట్యాబ్లను సెర్చ్ చేయడానికి, ఇక్కడ క్లిక్ చేయండి</translation> <translation id="8512396579636492893">{COUNT,plural, =0{బలహీనమైన పాస్వర్డ్లు ఏవీ కనుగొనబడలేదు}=1{{COUNT} బలహీనమైన పాస్వర్డ్ కనుగొనబడింది}other{{COUNT} బలహీనమైన పాస్వర్డ్లు కనుగొనబడ్డాయి}}</translation> <translation id="8512476990829870887">ప్రాసెస్ని ముగించు</translation> -<translation id="851263357009351303">చిత్రాలను చూపించడానికి ఎల్లప్పుడూ <ph name="HOST" />ను అనుమతించు</translation> +<translation id="851263357009351303">చిత్రాలను చూపించడానికి ఎల్లప్పుడూ <ph name="HOST" />ను అనుమతించండి</translation> <translation id="8513108775083588393">ఆటో-రొటేట్</translation> <translation id="8514746246728959655">వేరొక సెక్యూరిటీ కీని ప్రయత్నించండి</translation> <translation id="8523493869875972733">మార్పులను అలాగే ఉంచు</translation> @@ -7824,7 +7823,7 @@ <translation id="8569682776816196752">గమ్యస్థానాలు కనుగొనబడలేదు</translation> <translation id="8571213806525832805">గత 4 వారాలు</translation> <translation id="8571687764447439720">Kerberos టిక్కెట్ను జోడించండి</translation> -<translation id="8574990355410201600"><ph name="HOST" />లో ఎల్లప్పుడూ ధ్వనిని అనుమతించు</translation> +<translation id="8574990355410201600"><ph name="HOST" />లో ఎల్లప్పుడూ ధ్వనిని అనుమతించండి</translation> <translation id="8575286410928791436">నిష్క్రమించడానికి <ph name="KEY_EQUIVALENT" />ని పట్టుకొని ఉంచండి</translation> <translation id="8576885347118332789">{NUM_TABS,plural, =1{చదవాల్సిన లిస్ట్కు ట్యాబ్ను జోడించండి}other{చదవాల్సిన లిస్ట్కు ట్యాబ్లను జోడించండి}}</translation> <translation id="8578639784464423491">99 అక్షరాలను మించకూడదు</translation> @@ -7918,7 +7917,7 @@ <translation id="8662811608048051533">చాలా సైట్ల నుండి మిమ్మల్ని సైన్ అవుట్ చేస్తుంది.</translation> <translation id="8662911384982557515">మీ హోమ్ పేజీని దీనికి మార్చండి: <ph name="HOME_PAGE" /></translation> <translation id="8662978096466608964">వాల్పేపర్ను Chrome సెట్ చేయలేదు.</translation> -<translation id="8663099077749055505"><ph name="HOST" />లో ఎల్లప్పుడూ బహుళ ఆటోమేటిక్ డౌన్లోడ్లను బ్లాక్ చేయి</translation> +<translation id="8663099077749055505"><ph name="HOST" />లో ఎల్లప్పుడూ బహుళ ఆటోమేటిక్ డౌన్లోడ్లను బ్లాక్ చేయండి</translation> <translation id="8664389313780386848">పేజీ మూలాన్ని &వీక్షించండి</translation> <translation id="8665110742939124773">మీరు తప్పు యాక్సెస్ కోడ్ను ఎంటర్ చేశారు. మళ్లీ ట్రై చేయండి.</translation> <translation id="8665180165765946056">బ్యాకప్ పూర్తయింది</translation> @@ -7961,7 +7960,7 @@ <translation id="8705580154597116082">ఫోన్ ద్వారా Wi-Fi అందుబాటులో ఉంది</translation> <translation id="8705629851992224300">మీ 'సెక్యూరిటీ కీ'లోని ఆధారాలను చూడటం సాధ్యం కాలేదు</translation> <translation id="8706111173576263877">QR code స్కాన్ చేయబడింది.</translation> -<translation id="8708000541097332489">నిష్క్రమించేటప్పుడు క్లియర్ చేయి</translation> +<translation id="8708000541097332489">నిష్క్రమించేటప్పుడు క్లియర్ చేయండి</translation> <translation id="870805141700401153">Microsoft Individual Code Signing</translation> <translation id="8708671767545720562">&మరింత సమాచారం</translation> <translation id="8711402221661888347">ఊరగాయలు</translation> @@ -8086,7 +8085,7 @@ <translation id="8821268776955756404"><ph name="APP_NAME" /> ఉపయోగించడానికి సిద్ధంగా ఉంది.</translation> <translation id="882204272221080310">అదనపు భద్రత కోసం ఫర్మ్వేర్ను అప్డేట్ చేయండి.</translation> <translation id="8823514049557262177">లింక్ వచ&నం కాపీ చేయి</translation> -<translation id="8823559166155093873">కుక్కీలను బ్లాక్ చేయి</translation> +<translation id="8823559166155093873">కుక్కీలను బ్లాక్ చేయండి</translation> <translation id="8823704566850948458">పాస్వర్డ్ను సూచించండి...</translation> <translation id="8824701697284169214">పే&జీని జోడించండి...</translation> <translation id="8827125715368568315"><ph name="PERMISSION" />, మరో <ph name="COUNT" /> బ్లాక్ చేయబడ్డాయి</translation> @@ -8235,7 +8234,7 @@ <translation id="8968766641738584599">కార్డ్ని సేవ్ చేయండి</translation> <translation id="89720367119469899">ఎస్కేప్</translation> <translation id="8972513834460200407">దయచేసి Google సర్వర్ల నుండి డౌన్లోడ్లను ఫైర్వాల్ బ్లాక్ చేయడం లేదని నిర్ధారించుకోవడానికి మీ నెట్వర్క్ నిర్వాహకుడిని సంప్రదించండి.</translation> -<translation id="8973557916016709913">జూమ్ స్థాయిని తీసివేయి</translation> +<translation id="8973557916016709913">జూమ్ స్థాయిని తీసివేయండి</translation> <translation id="8973596347849323817">మీరు మీ అవసరాలకు అనుగుణంగా ఈ పరికరాన్ని అనుకూలంగా మార్చవచ్చు. ఈ యాక్సెస్ చేయగల ఫీచర్లను సెట్టింగ్స్లో తర్వాత మార్చవచ్చు.</translation> <translation id="897414447285476047">కనెక్షన్ సమస్య కారణంగా గమ్యస్థాన ఫైల్ సంపూర్ణంగా లేదు.</translation> <translation id="897525204902889653">క్వారెంటైన్ సేవ</translation> @@ -8263,7 +8262,7 @@ <translation id="899676909165543803">మీ కీబోర్డ్లో దిగువున కుడివైపు కీ కింది భాగంలో వేలిముద్ర సెన్సార్ ఉంది. ఏదైనా వేలితో దానిపై మెల్లగా తాకండి.</translation> <translation id="8999560016882908256">ఒక విభాగంలో సింటాక్స్ ఎర్రర్: <ph name="ERROR_LINE" /></translation> <translation id="9003185744423389627">డివైజ్ మేనేజర్ సర్వర్కు కనెక్షన్ <ph name="FAILURE_TIME" />కు '<ph name="STATUS_TEXT" />' స్టేటస్తో విఫలమైంది</translation> -<translation id="9003647077635673607">అన్ని వెబ్సైట్ల్లో అనుమతించు</translation> +<translation id="9003647077635673607">అన్ని వెబ్సైట్ల్లో అనుమతించండి</translation> <translation id="9003677638446136377">మళ్లీ చెక్ చేయండి</translation> <translation id="9004754973617721124"><ph name="SITE_NAME" />, దానికి సంబంధించిన అన్ని సైట్లు, ఇంకా ఇన్స్టాల్ చేయబడిన యాప్లో సైట్ డేటాను, ఇంకా అనుమతులను క్లియర్ చేయాలనుకుంటున్నారా?</translation> <translation id="9008201768610948239">విస్మరించు</translation> @@ -8365,8 +8364,8 @@ <translation id="9094033019050270033">పాస్వర్డ్ను అప్డేట్ చేయి</translation> <translation id="9094038138851891550">వినియోగదారు పేరు చెల్లదు</translation> <translation id="9094859731829297286">మీరు ఖచ్చితంగా Linux కోసం ఒక స్థిర పరిమాణం గల డిస్క్ను రిజర్వ్ చేయాలనుకుంటున్నారా?</translation> -<translation id="9094982973264386462">తీసివేయి</translation> -<translation id="9095253524804455615">తీసివేయి</translation> +<translation id="9094982973264386462">తీసివేయండి</translation> +<translation id="9095253524804455615">తీసివేయండి</translation> <translation id="909554839118732438">అజ్ఞాత విండోలన్నింటినీ మూసివేయండి</translation> <translation id="9100416672768993722">చివరిగా ఉపయోగించిన ఇన్పుట్ విధానానికి స్విచ్ చేయడానికి, <ph name="BEGIN_SHORTCUT" /><ph name="BEGIN_CTRL" />Ctrl<ph name="END_CTRL" /><ph name="SEPARATOR" /><ph name="BEGIN_SPACE" />Space<ph name="END_SPACE" /><ph name="END_SHORTCUT" /> కీలను నొక్కండి</translation> <translation id="9100765901046053179">అధునాతన సెట్టింగ్లు</translation> @@ -8467,7 +8466,7 @@ <translation id="9198090666959937775">మీ Android ఫోన్ను సెక్యూరిటీ కీగా ఉపయోగించండి</translation> <translation id="9199503643457729322">గోప్యతా గైడ్ నుండి దూరంగా నావిగేట్ అవ్వడానికి క్లిక్ చేయండి.</translation> <translation id="9200339982498053969"><ph name="ORIGIN" />, <ph name="FOLDERNAME" />లోని ఫైళ్లను ఎడిట్ చేయగలదు</translation> -<translation id="920045321358709304"><ph name="SEARCH_ENGINE" />ని వెతుకు</translation> +<translation id="920045321358709304"><ph name="SEARCH_ENGINE" />ని వెతకండి</translation> <translation id="9201023452444595544">ఏదైనా ఆఫ్లైన్ డేటా ఉంటే తీసివేయబడుతుంది</translation> <translation id="9201117361710210082">గతంలో చూశారు</translation> <translation id="9201220332032049474">స్క్రీన్ లాక్ ఎంపికలు</translation>
diff --git a/chrome/app/resources/generated_resources_th.xtb b/chrome/app/resources/generated_resources_th.xtb index f18c3af..dca6b37c 100644 --- a/chrome/app/resources/generated_resources_th.xtb +++ b/chrome/app/resources/generated_resources_th.xtb
@@ -332,7 +332,6 @@ <translation id="1319983966058170660">ปุ่มย้อนกลับของหน้าย่อย<ph name="SUBPAGE_TITLE" /></translation> <translation id="1322046419516468189">ดูและจัดการรหัสผ่านที่บันทึกไว้ได้ใน<ph name="SAVED_PASSWORDS_STORE" /></translation> <translation id="1324106254079708331">ป้องกันบัญชี Google ส่วนบุคคลของผู้ที่เสี่ยงต่อการโจมตีแบบกำหนดเป้าหมาย</translation> -<translation id="1326317727527857210">ลงชื่อเข้าใช้ Chrome เพื่อรับแท็บจากอุปกรณ์เครื่องอื่นๆ ของคุณ</translation> <translation id="1327272175893960498">ตั๋ว Kerberos</translation> <translation id="1327495825214193325">หากต้องการเปิดใช้การแก้ไขข้อบกพร่อง ADB คุณต้องรีสตาร์ท <ph name="DEVICE_TYPE" /> เครื่องนี้ และต้องรีเซ็ตเป็นค่าเริ่มต้นจึงจะปิดใช้ได้</translation> <translation id="1327794256477341646">ฟีเจอร์ที่ต้องใช้ตำแหน่งของคุณจะไม่ทำงาน</translation> @@ -2426,7 +2425,6 @@ <translation id="3280243678470289153">อยู่ภายใน Chrome</translation> <translation id="3281892622610078515">ไฟล์และโปรแกรมที่จะกักบริเวณ</translation> <translation id="3282210178675490297">กำลังแชร์แท็บกับ <ph name="APP_NAME" /></translation> -<translation id="3282568296779691940">ลงชื่อเข้าใช้ Chrome</translation> <translation id="3285322247471302225">แ&ท็บใหม่</translation> <translation id="328571385944182268">บันทึกรหัสผ่านไหม</translation> <translation id="3288047731229977326">ส่วนขยายที่ทำงานอยู่ในโหมดนักพัฒนาซอฟต์แวร์อาจเป็นอันตรายต่อคอมพิวเตอร์ของคุณ หากคุณไม่ใช่นักพัฒนาซอฟต์แวร์ คุณควรปิดส่วนขยายที่ทำงานอยู่ในโหมดนักพัฒนาซอฟต์แวร์เพื่อรักษาความปลอดภัย</translation> @@ -3301,7 +3299,6 @@ <translation id="4101352914005291489">SSID ที่ซ่อนไว้</translation> <translation id="4102469565336584882">รหัสไม่ถูกต้อง รหัสที่คุณป้อนต้องอยู่ในรูปแบบ LPA:1$<smdp address>$<activation code></translation> <translation id="4102906002417106771">รีสตาร์ทเพื่อทำ Powerwash</translation> -<translation id="4104163789986725820">ส่ง&ออก</translation> <translation id="4107048419833779140">ระบุและยกเลิกการต่อเชื่อมอุปกรณ์จัดเก็บข้อมูล</translation> <translation id="4108314971463891922">ติดตาม</translation> <translation id="4109135793348361820">ย้ายหน้าต่างไปยัง <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />)</translation> @@ -5056,6 +5053,7 @@ <translation id="5860494867054883682">กำลังอัปเดตอุปกรณ์เป็นเวอร์ชัน <ph name="CHANNEL_NAME" /> (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">แสดงเครื่องมือสไตลัสในชั้นวาง</translation> <translation id="5862319196656206789">ตั้งค่าอุปกรณ์ที่เชื่อมต่อ</translation> +<translation id="5862731021271217234">เปิดการซิงค์เพื่อรับแท็บจากอุปกรณ์เครื่องอื่นๆ ของคุณ</translation> <translation id="5863445608433396414">เปิดใช้ฟีเจอร์การแก้ไขข้อบกพร่อง</translation> <translation id="5864195618110239517">ใช้การเชื่อมต่อที่มีการวัดปริมาณอินเทอร์เน็ต</translation> <translation id="5864754048328252126">การทำงานสำหรับการไม่ใช้งานขณะที่ชาร์จ</translation> @@ -5491,7 +5489,6 @@ <translation id="6291949900244949761">ถามเมื่อเว็บไซต์ต้องการเข้าถึงอุปกรณ์ USB (แนะนำ)</translation> <translation id="6291953229176937411">&แสดงใน Finder</translation> <translation id="6292699686837272722">แท็บจะย่อจนมีความกว้างปานกลาง</translation> -<translation id="6294610283659775533">คุณสามารถส่งแท็บระหว่างอุปกรณ์ที่ลงชื่อเข้าใช้บัญชี Google เดียวกัน</translation> <translation id="6294759976468837022">ความเร็วของการสแกนอัตโนมัติ</translation> <translation id="6295158916970320988">เว็บไซต์ทั้งหมด</translation> <translation id="6295855836753816081">กำลังบันทึก...</translation>
diff --git a/chrome/app/resources/generated_resources_tr.xtb b/chrome/app/resources/generated_resources_tr.xtb index 792995a8..54bd69c6 100644 --- a/chrome/app/resources/generated_resources_tr.xtb +++ b/chrome/app/resources/generated_resources_tr.xtb
@@ -332,7 +332,6 @@ <translation id="1319983966058170660"><ph name="SUBPAGE_TITLE" /> alt sayfa geri düğmesi</translation> <translation id="1322046419516468189">Kayıtlı şifreleri <ph name="SAVED_PASSWORDS_STORE" /> üzerinde görüntüleyin ve yönetin</translation> <translation id="1324106254079708331">Hedeflenmiş saldırıya uğrama riski olan herkesin kişisel Google Hesaplarını korur</translation> -<translation id="1326317727527857210">Diğer cihazlarınızdaki sekmelerinize ulaşmak için Chrome'da oturum açın.</translation> <translation id="1327272175893960498">Kerberos biletleri</translation> <translation id="1327495825214193325">ADB hata ayıklama işlevini etkinleştirmek için bu <ph name="DEVICE_TYPE" /> cihazının yeniden başlatılması gerekir. Bu işlevi devre dışı bırakmak fabrika ayarlarına sıfırlama yapılmasını gerektirir.</translation> <translation id="1327794256477341646">Konumunuza erişilmesini gerektiren özellikler çalışmaz</translation> @@ -2423,7 +2422,6 @@ <translation id="3280243678470289153">Chrome'da Kal</translation> <translation id="3281892622610078515">Karantinaya alınacak dosyalar ve programlar:</translation> <translation id="3282210178675490297"><ph name="APP_NAME" /> ile bir sekme paylaşılıyor</translation> -<translation id="3282568296779691940">Chrome'da oturum aç</translation> <translation id="3285322247471302225">Yeni &Sekme</translation> <translation id="328571385944182268">Şifreleriniz kaydedilsin mi?</translation> <translation id="3288047731229977326">Geliştirici modunda çalışan uzantılar bilgisayarınıza zarar verebilir. Geliştirici değilseniz, geliştirici modundayken güvende olmak için bu uzantıların çalışmasını devre dışı bırakmanız gerekir.</translation> @@ -3297,7 +3295,6 @@ <translation id="4101352914005291489">Gizli SSID</translation> <translation id="4102469565336584882">Geçersiz kod. Girişiniz, LPA:1$<smdp adresi>$<etkinleştirme kodu> biçiminde olmalıdır</translation> <translation id="4102906002417106771">Powerwash için yeniden başlat</translation> -<translation id="4104163789986725820">&Dışa Aktar...</translation> <translation id="4107048419833779140">Depolama cihazlarını tanımlama ve çıkarma</translation> <translation id="4108314971463891922">Takip et</translation> <translation id="4109135793348361820">Pencereyi <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />) kullanıcısına taşı</translation> @@ -4106,6 +4103,7 @@ <translation id="4900392736118574277">Başlangıç sayfanız <ph name="URL" /> olarak değiştirildi.</translation> <translation id="490051679772058907"><ph name="REFRESH_RATE" /> Hz - birbirine geçmiş</translation> <translation id="4900652253009739885">"Seç"e atanmış tek anahtar kaldırılamaz. <ph name="RESPONSE" /> için herhangi bir tuşa basın.</translation> +<translation id="4901154724271753917">Son kapatılanları genişlet</translation> <translation id="4901309472892185668"><ph name="EXPERIMENT_NAME" /> denemesi için deneme durumu seçin.</translation> <translation id="49027928311173603">Sunucudan indirilen politika geçersiz: <ph name="VALIDATION_ERROR" />.</translation> <translation id="4906490889887219338">Ağ dosya paylaşımlarını kurun veya yönetin. <ph name="LINK_BEGIN" />Daha fazla bilgi<ph name="LINK_END" /></translation> @@ -5053,6 +5051,7 @@ <translation id="5860494867054883682">Cihazınız <ph name="CHANNEL_NAME" /> kanalına güncelleniyor (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">Ekran kalemi araçlarını rafta göster</translation> <translation id="5862319196656206789">Bağlı cihazları kur</translation> +<translation id="5862731021271217234">Diğer cihazlarınızdaki sekmelerinize ulaşmak için senkronizasyonu etkinleştirin</translation> <translation id="5863445608433396414">Hata ayıklama özelliklerini etkinleştir</translation> <translation id="5864195618110239517">Sayaçlı bağlantıyı kullan</translation> <translation id="5864754048328252126">Şarj olurken boşta kalma işlemi</translation> @@ -5489,7 +5488,6 @@ <translation id="6291949900244949761">Bir site USB cihazlarına erişmek istediğinde sor (önerilen)</translation> <translation id="6291953229176937411">Bulucu'da &Göster</translation> <translation id="6292699686837272722">Sekmeler orta genişliğe daralır</translation> -<translation id="6294610283659775533">Aynı Google Hesabında oturum açmış olan cihazlar arasında sekmeleri gönderebilirsiniz</translation> <translation id="6294759976468837022">Otomatik tarama hızı</translation> <translation id="6295158916970320988">Tüm siteler</translation> <translation id="6295855836753816081">Kaydediliyor...</translation> @@ -6995,6 +6993,7 @@ <translation id="7768526219335215384"><ph name="ORIGIN" />, <ph name="FOLDERNAME" /> klasöründeki dosyaları görüntüleyebilir</translation> <translation id="7768770796815395237">Değiştir</translation> <translation id="7768784765476638775">Seç ve Dinle</translation> +<translation id="7769748505895274502">Son kapatılanları daralt</translation> <translation id="7770406201819593386">ChromeOS Flex teşhis testlerini çalıştırma.</translation> <translation id="7770450735129978837">Sağ fare tıklaması</translation> <translation id="7770612696274572992">Resim diğer cihazdan kopyalandı</translation>
diff --git a/chrome/app/resources/generated_resources_uk.xtb b/chrome/app/resources/generated_resources_uk.xtb index 866bfca0..ac38e418 100644 --- a/chrome/app/resources/generated_resources_uk.xtb +++ b/chrome/app/resources/generated_resources_uk.xtb
@@ -337,7 +337,6 @@ <translation id="1319983966058170660">Кнопка "Назад" на підсторінці "<ph name="SUBPAGE_TITLE" />"</translation> <translation id="1322046419516468189">Переглядайте збережені паролі й керуйте ними на сторінці <ph name="SAVED_PASSWORDS_STORE" /></translation> <translation id="1324106254079708331">Захищає особисті облікові записи Google від цілеспрямованих атак</translation> -<translation id="1326317727527857210">Щоб мати доступ до вкладок з інших пристроїв, увійдіть в обліковий запис Chrome.</translation> <translation id="1327272175893960498">Квитки Kerberos</translation> <translation id="1327495825214193325">Щоб увімкнути налагодження ADB, потрібно перезапустити пристрій <ph name="DEVICE_TYPE" />. Якщо вимкнути ADB, доведеться відновити заводські налаштування.</translation> <translation id="1327794256477341646">Функції, яким потрібен доступ до геоданих, не працюватимуть</translation> @@ -2444,7 +2443,6 @@ <translation id="3280243678470289153">Не виходити з Chrome</translation> <translation id="3281892622610078515">Файли та програми, які буде переміщено в карантин:</translation> <translation id="3282210178675490297">Додаток <ph name="APP_NAME" /> має доступ до цієї вкладки</translation> -<translation id="3282568296779691940">Вхід у Chrome</translation> <translation id="3285322247471302225">Нова &вкладка</translation> <translation id="328571385944182268">Зберігати паролі?</translation> <translation id="3288047731229977326">Розширення, які працюють у режимі розробника, можуть пошкодити ваш комп’ютер. Якщо ви не розробник, вимкніть їх заради безпеки.</translation> @@ -3318,7 +3316,6 @@ <translation id="4101352914005291489">Приховане ім'я мережі</translation> <translation id="4102469565336584882">Недійсний код. Введіть дані у форматі LPA:1$<smdp address>$<activation code></translation> <translation id="4102906002417106771">Перезапустити, щоб виконати Powerwash</translation> -<translation id="4104163789986725820">Е&кспортувати...</translation> <translation id="4107048419833779140">Виявляти й вилучати пристрої пам’яті</translation> <translation id="4108314971463891922">Підписатися</translation> <translation id="4109135793348361820">Перемістити вікно на робочий стіл користувача <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />)</translation> @@ -4128,6 +4125,7 @@ <translation id="4900392736118574277">Стартову сторінку змінено на <ph name="URL" />.</translation> <translation id="490051679772058907"><ph name="REFRESH_RATE" /> Гц – з накладанням</translation> <translation id="4900652253009739885">Не вдається видалити призначення єдиного перемикача, призначеного дії "Вибрати". Щоб <ph name="RESPONSE" />, натисніть будь-яку клавішу.</translation> +<translation id="4901154724271753917">Розгорнути нещодавно закриті вкладки</translation> <translation id="4901309472892185668">Вибрати статус експерименту "<ph name="EXPERIMENT_NAME" />".</translation> <translation id="49027928311173603">Завантажене із сервера правило недійсне: <ph name="VALIDATION_ERROR" />.</translation> <translation id="4906490889887219338">Налаштувати мережеві файлообмінники або керувати ними. <ph name="LINK_BEGIN" />Докладніше<ph name="LINK_END" /></translation> @@ -5072,6 +5070,7 @@ <translation id="5860494867054883682">На пристрій установлюється <ph name="CHANNEL_NAME" /> версія (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">Показувати інструменти стилуса на панелі запуску</translation> <translation id="5862319196656206789">Налаштувати підключені пристрої</translation> +<translation id="5862731021271217234">Щоб мати доступ до вкладок з інших пристроїв, увімкніть синхронізацію</translation> <translation id="5863445608433396414">Увімкнути функції налагодження</translation> <translation id="5864195618110239517">Використовувати підключення з тарифікацією трафіку</translation> <translation id="5864754048328252126">Що робити, коли пристрій неактивний і заряджається</translation> @@ -5507,7 +5506,6 @@ <translation id="6291949900244949761">Запитувати, коли сайт хоче отримати доступ до пристроїв USB (рекомендовано)</translation> <translation id="6291953229176937411">&Показати в програмі Finder</translation> <translation id="6292699686837272722">Вкладки зменшуються до середньої ширини</translation> -<translation id="6294610283659775533">Ви можете надсилати вкладки між пристроями, на яких увійшли в той самий обліковий запис Google</translation> <translation id="6294759976468837022">Швидкість автоматичного сканування</translation> <translation id="6295158916970320988">Усі сайти</translation> <translation id="6295855836753816081">Зберігання…</translation> @@ -7019,6 +7017,7 @@ <translation id="7768526219335215384">Сайт <ph name="ORIGIN" /> зможе переглядати файли в папці <ph name="FOLDERNAME" /></translation> <translation id="7768770796815395237">Змінити</translation> <translation id="7768784765476638775">Читання з екрана</translation> +<translation id="7769748505895274502">Згорнути нещодавно закриті вкладки</translation> <translation id="7770406201819593386">Виконувати діагностичні перевірки ОС Chrome Flex.</translation> <translation id="7770450735129978837">Клік правою кнопкою миші</translation> <translation id="7770612696274572992">Зображення скопійовано з іншого пристрою</translation>
diff --git a/chrome/app/resources/generated_resources_ur.xtb b/chrome/app/resources/generated_resources_ur.xtb index 631d8c2..fab8cbd 100644 --- a/chrome/app/resources/generated_resources_ur.xtb +++ b/chrome/app/resources/generated_resources_ur.xtb
@@ -332,7 +332,6 @@ <translation id="1319983966058170660"><ph name="SUBPAGE_TITLE" /> ذیلی صفحے کا پیچھے جانے کا بٹن</translation> <translation id="1322046419516468189">اپنے <ph name="SAVED_PASSWORDS_STORE" /> میں محفوظ کردہ پاسورڈز دیکھیں اور ان کا نظم کریں</translation> <translation id="1324106254079708331">ہدف بناکر کیے گئے حملوں کا خطرہ ہونے والے کسی کے بھی ذاتی Google اکاؤنٹس کی حفاظت کرتا ہے</translation> -<translation id="1326317727527857210">اپنے دیگر آلات سے اپنے ٹیبز حاصل کرنے کیلئے، Chrome میں سائن ان کریں۔</translation> <translation id="1327272175893960498">Kerberos ٹکٹس</translation> <translation id="1327495825214193325">ADB ڈیبگنگ کو فعال کرنے کے لیے، اس <ph name="DEVICE_TYPE" /> کو ری سٹارٹ کرنے کی ضرورت ہے۔ اسے غیر فعال کرنے کے لیے فیکٹری کی ترتیبات کو ری سیٹ کرنا ہوگا۔</translation> <translation id="1327794256477341646">وہ خصوصیات کام نہیں کریں گی جن کے لیے آپ کے مقام کی ضرورت ہوتی ہے</translation> @@ -359,6 +358,7 @@ <translation id="1347256498747320987">اپ ڈیٹس اور ایپس انسٹال کریں۔ جاری رکھ کر، آپ اتفاق کرتے ہیں کہ یہ آلہ ممکنہ طور پر سیلولر ڈیٹا استعمال کر کے Google، آپ کے کیریئر، اور آپ کے آلے کے مینوفیکچرر سے اپ ڈیٹس اور ایپس خودکار طور پر ڈاؤن لوڈ اور انسٹال بھی کر سکتا ہے۔ ان میں سے کچھ ایپس درون ایپ خریداریوں کی پیشکش کر سکتی ہیں۔ <ph name="BEGIN_LINK1" />مزید جانیں<ph name="END_LINK1" /></translation> <translation id="1347512539447549782">Linux اسٹوریج</translation> <translation id="1347975661240122359">بیٹری کے <ph name="BATTERY_LEVEL" />% پہنچنے پر اپ ڈیٹ شروع ہو جائے گا۔</translation> +<translation id="1348966090521113558">ماؤس کی ایکسیسبیلٹی کی ترتیبات</translation> <translation id="1353275871123211385">ایپ کی منظوری اور اسکرین کے وقت کی حدود جیسے پیرنٹل کنٹرولز کا استعمال کرنے کیلئے، آپ کے بچے کے پاس والد/والدہ کے زیر انتظام ایک Google اکاؤنٹ ہونا ضروری ہے۔ Google کلاس روم جیسے ٹولز کیلئے بعد میں اسکول اکاؤنٹ شامل کیا جا سکتا ہے۔</translation> <translation id="135389172849514421">آف لائن کام کرتا ہے</translation> <translation id="1353980523955420967">PPD کو تلاش نہیں کر سکتا۔ یقینی بنائیں کہ آپ کا Chromebook آن لائن ہے اور دوبارہ کوشش کریں۔</translation> @@ -1785,6 +1785,7 @@ <translation id="2653659639078652383">جمع کرائیں</translation> <translation id="265390580714150011">فیلڈ قدر</translation> <translation id="2654553774144920065">پرنٹ کی درخواست</translation> +<translation id="2657612187216250073">پوائنٹر کی ایکسیسبیلٹی کی ترتیبات</translation> <translation id="2658941648214598230">اصل مواد دکھائیں؟</translation> <translation id="2659381484350128933"><ph name="FOOTNOTE_POINTER" />خصوصیات آلہ کے لحاظ سے مختلف ہوتی ہیں</translation> <translation id="2659971421398561408">Crostini کی ڈسک کی سائز تبدیل کریں</translation> @@ -1948,6 +1949,7 @@ <translation id="2801954693771979815">اسکرین کا سائز</translation> <translation id="2802557211515765772">کوئی نظم کردہ پرنٹر نہیں ہے۔</translation> <translation id="2803313416453193357">فولڈر کھولیں</translation> +<translation id="2803719750464280163">براہ کرم تصدیق کریں کہ <ph name="PASSKEY" /> وہی پاس کی ہے جس کو بلوٹوتھ آلے <ph name="DEVICE" /> پر ڈسپلے کیا گیا ہے۔</translation> <translation id="2804043232879091219">متبادل براؤزر نہیں کھل سکا</translation> <translation id="2804667941345577550">اوپن ٹیبز سمیت، آپ اس سائٹ سے سائن آؤٹ ہو جائیں گے</translation> <translation id="2804680522274557040">کیمرا آف ہے</translation> @@ -2424,7 +2426,6 @@ <translation id="3280243678470289153">Chrome میں رہیں</translation> <translation id="3281892622610078515">فائلز اور پروگرامز جن کو قوارنٹین فولڈر میں منتقل کرنا ہے:</translation> <translation id="3282210178675490297"><ph name="APP_NAME" /> کے ساتھ ایک ٹیب کا اشتراک کیا جا رہا ہے</translation> -<translation id="3282568296779691940">Chrome میں سائن ان کریں</translation> <translation id="3285322247471302225">نیا &ٹیب</translation> <translation id="328571385944182268">آپ کے پاس ورڈز محفوظ کریں؟</translation> <translation id="3288047731229977326">ڈویلپر وضع میں چلنے والی ایکسٹینشنز آپ کے کمپیوٹر کو نقصان پہنچا سکتی ہیں۔ اگر آپ ایک ڈویلپر نہیں ہیں تو محفوظ رہنے کیلئے آپ کو ڈویلپر وضع میں چلنے والی ان ایکسٹینشنز کو غیر فعال کر دینا چاہیے۔</translation> @@ -2864,6 +2865,7 @@ <translation id="370649949373421643">Wi-Fi فعال کریں</translation> <translation id="370665806235115550">لوڈ ہو رہے ہیں…</translation> <translation id="3707163604290651814">فی الحال <ph name="NAME" /> کے بطور سائن ان ہے</translation> +<translation id="3708295717182051206">سب ٹائٹلز</translation> <translation id="3708684582558000260">بند کی گئی سائٹس کو ڈیٹا بھیجنے اور موصول کرنے کے عمل کو مکمل کرنے کی اجازت نہ دیں</translation> <translation id="3709244229496787112">ڈاؤن لوڈ مکمل ہونے سے پہلے براؤزر بند کر دیا گیا۔</translation> <translation id="371174301504454251">آپ کی رازداری کے تحفظ کے لیے، ہم فہرست کی 4 ہفتے سے زیادہ پرانی سائٹس کو خودکار طور پر حذف کر دیتے ہیں۔ اگر کوئی سائٹ آپ دوبارہ ملاحظہ کرتے ہیں تو وہ فہرست میں دوبارہ نظر آ سکتی ہے۔ یا آپ سائٹ کو ہٹا سکتے ہیں اگر آپ نہیں چاہتے ہیں کہ وہ سائٹ آپ کی دلچسپیوں کا کبھی بھی تعین کرے۔</translation> @@ -3297,7 +3299,6 @@ <translation id="4101352914005291489">پوشیدہ SSID</translation> <translation id="4102469565336584882">غلط کوڈ۔ آپ کے اندراج کا فارمیٹ LPA:1$<smdp address>$<activation code> ہونا چاہیے</translation> <translation id="4102906002417106771">پاور واش کے لیے ری سٹارٹ کریں</translation> -<translation id="4104163789986725820">برآ&مد کریں…</translation> <translation id="4107048419833779140">اسٹوریج کے آلات کی شناخت کر کے انہیں خارج کریں</translation> <translation id="4108314971463891922">پیروی کریں</translation> <translation id="4109135793348361820">ونڈو کو <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />) میں منتقل کریں</translation> @@ -3946,6 +3947,7 @@ <translation id="475088594373173692">پہلا صارف</translation> <translation id="4756378406049221019">بند کریں/دوبارہ لوڈ کریں</translation> <translation id="4756388243121344051">&سرگزشت</translation> +<translation id="4756671452988984333">آڈیو کے لیے ٹیکسٹ</translation> <translation id="4759202969060787081">نہ کھولیں</translation> <translation id="4759238208242260848">ڈاؤن لوڈز</translation> <translation id="4761104368405085019">اپنا مائیکروفون استعمال کریں</translation> @@ -5050,6 +5052,7 @@ <translation id="5860494867054883682">آپ کے آلہ کو <ph name="CHANNEL_NAME" /> چینل میں اپ ڈیٹ کیا جا رہا ہے (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">شیلف میں اسٹائلس ٹولز دکھائیں</translation> <translation id="5862319196656206789">منسلک کردہ آلات سیٹ اپ کریں</translation> +<translation id="5862731021271217234">اپنے دیگر آلات سے اپنے ٹیبز حاصل کرنے کیلئے، سِنک کو آن کریں</translation> <translation id="5863445608433396414">ڈیبگنگ خصوصیات کو فعال کریں</translation> <translation id="5864195618110239517">میٹرڈ کنکشن کا استعمال کریں</translation> <translation id="5864754048328252126">چارجنگ کے دوران معطلی کی کاروائی</translation> @@ -5486,7 +5489,6 @@ <translation id="6291949900244949761">جب کوئی سائٹ USB آلات تک رسائی حاصل کرنا چاہے تو پوچھیں (تجویز کردہ)</translation> <translation id="6291953229176937411">فائنڈر میں &دکھائیں</translation> <translation id="6292699686837272722">ٹیبز کی چوڑائی معتدل ہو جاتی ہے</translation> -<translation id="6294610283659775533">آپ اسی Google اکاؤنٹ کے ساتھ سائن ان کردہ آلات کے درمیان ٹیبز بھیج سکتے ہیں</translation> <translation id="6294759976468837022">خودکار اسکین کی رفتار</translation> <translation id="6295158916970320988">سبھی سائٹس</translation> <translation id="6295855836753816081">محفوظ کیا جا رہا ہے…</translation> @@ -6879,6 +6881,7 @@ <translation id="7668423670802040666"><ph name="ACCOUNT" /> کے لیے Google پاس ورڈ مینیجر میں</translation> <translation id="7669825497510425694">{NUM_ATTEMPTS,plural, =1{غلط PIN۔ آپ کے پاس ایک کوشش باقی ہے۔}other{غلط PIN۔ آپ کے پاس # کوششیں باقی ہیں۔}}</translation> <translation id="7670434942695515800">بہترین کارکردگی کے لیے تازہ ترین ورژن میں اپ گریڈ کریں۔ اپ گریڈ مکمل نہ ہو پانے کی صورت میں اپنی فائلز کی بیک اپ لینے کی تجویز کی جاتی ہے۔ اپ گریڈ شروع ہونے کے بعد، Linux شٹ ڈاؤن ہو جائے گا۔ آگے بڑھنے سے قبل کھلی ہوئی فائلز کو محفوظ کریں۔ <ph name="LINK_START" />مزید جانیں<ph name="LINK_END" /></translation> +<translation id="7670483791111801022">سب ٹائٹلز</translation> <translation id="7671130400130574146">سسٹم کا ٹائٹل بار اور بارڈرز استعمال کریں</translation> <translation id="767127784612208024">دوبارہ ترتیب دینے کی تصدیق کرنے کے لیے ٹچ کریں</translation> <translation id="7672520070349703697"><ph name="HUNG_IFRAME_URL" />، <ph name="PAGE_TITLE" /> میں۔</translation> @@ -7964,6 +7967,7 @@ <translation id="8724859055372736596">فولڈر میں &دکھائیں</translation> <translation id="8725066075913043281">دوبارہ کوشش کریں</translation> <translation id="8725178340343806893">پسندیدہ/بُک مارکس</translation> +<translation id="87254326763805752">پاس کی کی تصدیق کریں</translation> <translation id="8726206820263995930">سرور کی جانب سے پالیسی کی ترتیبات کی بازیابی کے وقت خرابی: <ph name="CLIENT_ERROR" />۔</translation> <translation id="8728351286589123703">آپ کی منتخب کردہ اجازتیں ری سیٹ کی جائیں گی</translation> <translation id="8729133765463465108">QR کوڈ کو اسکین کرنے کیلئے کیمرا استعمال کریں</translation>
diff --git a/chrome/app/resources/generated_resources_uz.xtb b/chrome/app/resources/generated_resources_uz.xtb index 44c5719..4c7131d 100644 --- a/chrome/app/resources/generated_resources_uz.xtb +++ b/chrome/app/resources/generated_resources_uz.xtb
@@ -332,7 +332,6 @@ <translation id="1319983966058170660"><ph name="SUBPAGE_TITLE" /> quyi sahifasi orqaga tugmasi</translation> <translation id="1322046419516468189"><ph name="SAVED_PASSWORDS_STORE" /> omboriga saqlangan parollarni ko‘rish va boshqarish</translation> <translation id="1324106254079708331">Shaxsiy Google hisoblarini barcha maqsadli hujumlardan himoya qiladi</translation> -<translation id="1326317727527857210">Boshqa qurilmalaringizdagi brauzer sahifalarini sinxronlash uchun Chrome hisobingizga kiring.</translation> <translation id="1327272175893960498">Kerberos chiptalari</translation> <translation id="1327495825214193325">ADB tuzatish vositalarini yoqish uchun <ph name="DEVICE_TYPE" /> qurilmasini oʻchirib yoqish zarur. ADB vositasini oʻchirish uchun qurilmani zavod sozlamalariga qaytarish kerak.</translation> <translation id="1327794256477341646">Joylashuvga ruxsat talab qiladigan funksiyalar ishlamaydi</translation> @@ -2428,7 +2427,6 @@ <translation id="3280243678470289153">Chrome brauzerida qolish</translation> <translation id="3281892622610078515">Izolyatsiya qilinadigan fayllar va dasturlar:</translation> <translation id="3282210178675490297">Varaq <ph name="APP_NAME" /> ilovasiga ulashilmoqda</translation> -<translation id="3282568296779691940">Chrome hisobiga kirish</translation> <translation id="3285322247471302225">Yangi &ichki oyna</translation> <translation id="328571385944182268">Parollaringiz saqlansinmi?</translation> <translation id="3288047731229977326">Dasturchi rejimida ishga tushirilgan kengaytmalar kompyuteringizga ziyon yetkazishi mumkin. Agar dasturchi bo‘lmasangiz xavfsizlik maqsadlarida ularni o‘chirib qo‘yishingiz kerak.</translation> @@ -3303,7 +3301,6 @@ <translation id="4101352914005291489">Yashirin SSID</translation> <translation id="4102469565336584882">Kod xato. Xatosiz formatda kiritilishi zarur (LPA:1$<smdp manzili>$<aktivatsiya kodi></translation> <translation id="4102906002417106771">Powerwash amalini bajarish uchun qayta ishga tushirish</translation> -<translation id="4104163789986725820">&Eksport qilish...</translation> <translation id="4107048419833779140">Xotira qurilmalarini aniqlash va uzib qo‘yish</translation> <translation id="4108314971463891922">Kuzatish</translation> <translation id="4109135793348361820">Oynani <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />) foydalanuvchisi ish stoliga ko‘chirish</translation> @@ -5061,6 +5058,7 @@ <translation id="5860494867054883682">Qurilma “<ph name="CHANNEL_NAME" />” kanaliga o‘tkazilmoqda (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">Stilus vositalari javonda ko‘rsatilsin</translation> <translation id="5862319196656206789">Ulangan qurilmalarni sozlash</translation> +<translation id="5862731021271217234">Boshqa qurilmalardagi brauzer sahifalarini ko‘rish uchun sinxronizatsiyani yoqing</translation> <translation id="5863445608433396414">Nosozliklarni ko‘rib chiqish funksiyalarini yoqish</translation> <translation id="5864195618110239517">Trafik hisoblanadigan ulanishdan foydalanish</translation> <translation id="5864754048328252126">Quvvatlanayotganda kutish amali</translation> @@ -5497,7 +5495,6 @@ <translation id="6291949900244949761">Sayt USB qurilmalardan foydalanmoqchi bo‘lganda ruxsat so‘ralsin (tavsiya etiladi)</translation> <translation id="6291953229176937411">&Finder’da ko‘rsatish</translation> <translation id="6292699686837272722">Varaqlar toʻrt marta kichraytiriladi</translation> -<translation id="6294610283659775533">Varaqlarni bir xil Google hisobidan kirilgan qurilmalararo yuborish mumkin</translation> <translation id="6294759976468837022">Avtomatik skanerlash tezligi</translation> <translation id="6295158916970320988">Barcha saytlar</translation> <translation id="6295855836753816081">Saqlanmoqda...</translation> @@ -5921,6 +5918,7 @@ <translation id="6709133671862442373">Yangiliklar</translation> <translation id="6709357832553498500"><ph name="EXTENSIONNAME" /> orqali ulanish</translation> <translation id="6710213216561001401">Avvalgi</translation> +<translation id="6710394144992407503">Veb-sahifalarda matn kiritayotganda imloviy xatolar tekshirilsin</translation> <translation id="6711146141291425900">Yuklanmalar uchun <ph name="WEB_DRIVE" /> hisobini ulash</translation> <translation id="6712943853047024245"><ph name="WEBSITE" /> uchun parol bu foydalanuvchi nomi bilan allaqachon saqlangan</translation> <translation id="6713233729292711163">Ish profilini kiritish</translation> @@ -6542,6 +6540,7 @@ <translation id="7340757554212515731">Google serverlariga xatoliklar hisoboti, shuningdek, diagnostika va foydalanish statistikasi maʼlumotlari avtomatik yuboriladi</translation> <translation id="7341834142292923918">Bu saytga ruxsat olmoqchi</translation> <translation id="7343372807593926528">Fikr-mulohaza yuborishdan oldin muammo haqida batafsil yozing.</translation> +<translation id="7344585835349671209">Qurilmangizda HTTPS/SSL sertifikatlarini boshqarish</translation> <translation id="7345706641791090287">Parolni tasdiqlang</translation> <translation id="7346909386216857016">OK</translation> <translation id="7347452120014970266">Bunda <ph name="ORIGIN_NAME" /> saytidan saqlangan barcha maʼlumotlar, cookie fayllar va oʻrnatilgan ilovalar tozalab tashlanadi</translation> @@ -6671,6 +6670,7 @@ <translation id="7460045493116006516">Siz oʻrnatgan joriy mavzu</translation> <translation id="7461924472993315131">Qadab qo‘yish</translation> <translation id="746216226901520237">Keyingi safar telefoningiz <ph name="DEVICE_TYPE" /> qurilmasini qulfdan chiqara oladi. Sozlamalar orqali Smart Lock funksiyasini faolsizlantirish mumkin.</translation> +<translation id="7464153996453281700">Komponent allaqachon yangilangan</translation> <translation id="7464637891177137294">Uni Google hisobingizga (<ph name="ACCOUNT" />) saqlang</translation> <translation id="7465522323587461835">{NUM_OPEN_TABS,plural, =1{# ta ochiq varaq, darchalar panelini yoqish uchun bosing}other{# ta ochiq varaq, darchalar panelini yoqish uchun bosing}}</translation> <translation id="7465635034594602553">Xatolik yuz berdi. Bir necha daqiqadan keyin <ph name="APP_NAME" /> ilovasini qaytadan ishga tushiring.</translation> @@ -7179,6 +7179,7 @@ <translation id="793531125873261495">Virtual mashina yuklab olinmadi. Qaytadan urining.</translation> <translation id="7935451262452051102"><ph name="PERCENT" />% tugallandi</translation> <translation id="7939062555109487992">Kengaytirilgan sozlamalar</translation> +<translation id="7939328347457537652">Qurilma sertifikatlarini boshqarish</translation> <translation id="7939412583708276221">Baribir davom etsin</translation> <translation id="7942349550061667556">Qizil</translation> <translation id="7943368935008348579">PDF fayllarni yuklab olish</translation>
diff --git a/chrome/app/resources/generated_resources_vi.xtb b/chrome/app/resources/generated_resources_vi.xtb index 928ede3..54b7a8b81 100644 --- a/chrome/app/resources/generated_resources_vi.xtb +++ b/chrome/app/resources/generated_resources_vi.xtb
@@ -334,7 +334,6 @@ <translation id="1319983966058170660">Nút quay lại trang trước <ph name="SUBPAGE_TITLE" /></translation> <translation id="1322046419516468189">Xem và quản lý mật khẩu đã lưu trong <ph name="SAVED_PASSWORDS_STORE" /> của bạn</translation> <translation id="1324106254079708331">Bảo vệ Tài khoản Google cá nhân của bất kỳ ai có nguy cơ bị tấn công có chủ đích</translation> -<translation id="1326317727527857210">Để có các thẻ từ các thiết bị khác của bạn, hãy đăng nhập vào Chrome.</translation> <translation id="1327272175893960498">Phiếu Kerberos</translation> <translation id="1327495825214193325">Để bật tùy chọn gỡ lỗi ADB, bạn cần phải khởi động lại <ph name="DEVICE_TYPE" /> này. Để tắt tùy chọn này, bạn phải đặt lại thiết bị về trạng thái ban đầu.</translation> <translation id="1327794256477341646">Các tính năng cần dùng thông tin vị trí của bạn sẽ không hoạt động</translation> @@ -2441,7 +2440,6 @@ <translation id="3280243678470289153">Tiếp tục điều hướng trong Chrome</translation> <translation id="3281892622610078515">Các tệp và chương trình cần cách ly:</translation> <translation id="3282210178675490297">Đang chia sẻ một thẻ với <ph name="APP_NAME" /></translation> -<translation id="3282568296779691940">Đăng nhập vào Chrome</translation> <translation id="3285322247471302225">&Tab Mới</translation> <translation id="328571385944182268">Lưu mật khẩu của bạn?</translation> <translation id="3288047731229977326">Tiện ích chạy ở chế độ nhà phát triển có thể gây hại cho máy tính của bạn. Nếu bạn không phải là nhà phát triển, bạn nên vô hiệu hóa các tiện ích này chạy trong chế độ nhà phát triển để giữ an toàn.</translation> @@ -3283,6 +3281,7 @@ <translation id="4077919383365622693">Tất cả dữ liệu và cookie do <ph name="SITE" /> lưu trữ sẽ bị xóa.</translation> <translation id="4078738236287221428">Linh hoạt</translation> <translation id="4079140982534148664">Sử dụng tính năng kiểm tra lỗi chính tả nâng cao</translation> +<translation id="4081203444152654304">Tìm kiếm trong hình ảnh bằng <ph name="VISUAL_SEARCH_PROVIDER" /></translation> <translation id="4081242589061676262">Không thể truyền tệp.</translation> <translation id="408223403876103285"><ph name="WEBSITE" /> đã gửi một thông báo đến điện thoại của bạn. Để xác nhận danh tính của bạn, hãy làm theo các bước trên chiếc điện thoại đó.</translation> <translation id="4084682180776658562">Dấu trang</translation> @@ -3315,7 +3314,6 @@ <translation id="4101352914005291489">SSID ẩn</translation> <translation id="4102469565336584882">Mã không hợp lệ. Nội dung bạn nhập phải có định dạng LPA:1$<địa chỉ smdp>$<mã kích hoạt></translation> <translation id="4102906002417106771">Khởi động lại để sử dụng chức năng powerwash</translation> -<translation id="4104163789986725820">X&uất...</translation> <translation id="4107048419833779140">Nhận dạng và ngắt kết nối thiết bị lưu trữ</translation> <translation id="4108314971463891922">Theo dõi</translation> <translation id="4109135793348361820">Di chuyển cửa sổ đến <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />)</translation> @@ -3679,6 +3677,7 @@ <translation id="4476590490540813026">Vận động viên</translation> <translation id="4476659815936224889">Bạn có thể dùng ứng dụng trình quét QR trên điện thoại hoặc một số ứng dụng máy ảnh để quét mã này.</translation> <translation id="4477015793815781985">Bao gồm phím Ctrl, Alt hoặc ⌘</translation> +<translation id="4477379360383751882">Tìm kiếm trong hình ảnh bằng <ph name="VISUAL_SEARCH_PROVIDER" /></translation> <translation id="4478664379124702289">Lưu Liên &kết Dưới dạng...</translation> <translation id="4479424953165245642">Quản lý ứng dụng kiosk</translation> <translation id="4479639480957787382">Ethernet</translation> @@ -5072,6 +5071,7 @@ <translation id="5860494867054883682">Đang cập nhật thiết bị của bạn tới kênh <ph name="CHANNEL_NAME" /> (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">Hiển thị công cụ bút cảm ứng trên kệ</translation> <translation id="5862319196656206789">Thiết lập các thiết bị đã kết nối</translation> +<translation id="5862731021271217234">Để sử dụng các thẻ từ những thiết bị khác, hãy bật tính năng đồng bộ hóa</translation> <translation id="5863445608433396414">Bật tính năng gỡ lỗi</translation> <translation id="5864195618110239517">Sử dụng đường kết nối có đo lượng dữ liệu</translation> <translation id="5864754048328252126">Trạng thái không hoạt động trong khi sạc</translation> @@ -5508,7 +5508,6 @@ <translation id="6291949900244949761">Hỏi khi một trang web muốn truy cập vào các thiết bị USB (khuyên dùng)</translation> <translation id="6291953229176937411">&Hiển thị trong Trình tìm kiếm</translation> <translation id="6292699686837272722">Các thẻ sẽ thu gọn theo chiều rộng có kích thước trung bình</translation> -<translation id="6294610283659775533">Bạn có thể gửi thẻ giữa các thiết bị được đăng nhập bằng cùng một Tài khoản Google</translation> <translation id="6294759976468837022">Tốc độ tự động quét</translation> <translation id="6295158916970320988">Tất cả các trang web</translation> <translation id="6295855836753816081">Đang lưu...</translation>
diff --git a/chrome/app/resources/generated_resources_zh-CN.xtb b/chrome/app/resources/generated_resources_zh-CN.xtb index 65dcf5a..a4874096 100644 --- a/chrome/app/resources/generated_resources_zh-CN.xtb +++ b/chrome/app/resources/generated_resources_zh-CN.xtb
@@ -332,7 +332,6 @@ <translation id="1319983966058170660">“<ph name="SUBPAGE_TITLE" />”子页面上的返回按钮</translation> <translation id="1322046419516468189">您可以查看和管理 <ph name="SAVED_PASSWORDS_STORE" />中保存的密码</translation> <translation id="1324106254079708331">为所有可能会遭到定向攻击的个人 Google 帐号提供保护</translation> -<translation id="1326317727527857210">要访问您在其他设备上的标签页,请登录 Chrome。</translation> <translation id="1327272175893960498">Kerberos 票据</translation> <translation id="1327495825214193325">要启用 ADB 调试,您必须重启此<ph name="DEVICE_TYPE" />。要停用它,则必须将此设备恢复出厂设置。</translation> <translation id="1327794256477341646">所有需要使用您的位置信息的功能都将无法正常运行</translation> @@ -359,6 +358,7 @@ <translation id="1347256498747320987">安装更新和应用。继续操作即表示您同意此设备还可从 Google、您的运营商以及您设备的制造商处自动下载并安装更新和应用(可能会使用移动数据网络)。部分应用可能会提供应用内购商品。<ph name="BEGIN_LINK1" />了解详情<ph name="END_LINK1" /></translation> <translation id="1347512539447549782">Linux 存储空间</translation> <translation id="1347975661240122359">当电池电量达到 <ph name="BATTERY_LEVEL" />% 时将开始更新。</translation> +<translation id="1348966090521113558">鼠标无障碍设置</translation> <translation id="1353275871123211385">如果您想使用家长控制功能(例如应用审批和设备使用时限),您的孩子必须有一个由家长管理的 Google 帐号。日后需要时,您还可添加学校帐号以用于访问相关工具(例如 Google 课堂)。</translation> <translation id="135389172849514421">可离线使用</translation> <translation id="1353980523955420967">找不到 PPD。请确保您的 Chromebook 已连接到网络,然后重试。</translation> @@ -1775,6 +1775,7 @@ <translation id="2653659639078652383">提交</translation> <translation id="265390580714150011">字段值</translation> <translation id="2654553774144920065">打印请求</translation> +<translation id="2657612187216250073">指针无障碍设置</translation> <translation id="2658941648214598230">显示原始内容?</translation> <translation id="2659381484350128933"><ph name="FOOTNOTE_POINTER" />功能因设备而异</translation> <translation id="2659971421398561408">调整为 Crostini 分配的磁盘空间大小</translation> @@ -1938,6 +1939,7 @@ <translation id="2801954693771979815">屏幕上的内容大小</translation> <translation id="2802557211515765772">没有任何受管理的打印机。</translation> <translation id="2803313416453193357">打开文件夹</translation> +<translation id="2803719750464280163">请确认 <ph name="PASSKEY" /> 是蓝牙设备“<ph name="DEVICE" />”上显示的密钥。</translation> <translation id="2804043232879091219">无法打开替代浏览器</translation> <translation id="2804667941345577550">您将会自动退出这个网站(包括打开的标签页)</translation> <translation id="2804680522274557040">摄像头已关闭</translation> @@ -2414,7 +2416,6 @@ <translation id="3280243678470289153">继续使用 Chrome</translation> <translation id="3281892622610078515">要隔离的文件和程序:</translation> <translation id="3282210178675490297">正在与 <ph name="APP_NAME" /> 分享某个标签页</translation> -<translation id="3282568296779691940">登录 Chrome</translation> <translation id="3285322247471302225">打开新的标签页(&T)</translation> <translation id="328571385944182268">保存您的密码?</translation> <translation id="3288047731229977326">以开发者模式运行的扩展程序可能会损害您的计算机。如果您不是开发者,那么,为安全起见,应停用以开发者模式运行的扩展程序。</translation> @@ -2854,6 +2855,7 @@ <translation id="370649949373421643">启用 Wi-Fi</translation> <translation id="370665806235115550">正在加载...</translation> <translation id="3707163604290651814">目前登录的帐号是 <ph name="NAME" /></translation> +<translation id="3708295717182051206">字幕</translation> <translation id="3708684582558000260">不允许已关闭的网站完成数据收发操作</translation> <translation id="3709244229496787112">浏览器已在下载完成前关闭。</translation> <translation id="371174301504454251">为保护您的隐私,一旦网站的保留时长超过 4 周,系统便会自动从列表中删除相应网站。您再次访问的网站可能会重新出现在列表中。如果您不希望系统(再)根据某个网站来推测您的兴趣,也可自行移除相应网站。</translation> @@ -3286,7 +3288,6 @@ <translation id="4101352914005291489">隐藏的 SSID</translation> <translation id="4102469565336584882">代码无效。所输入代码的格式应为 LPA:1$<smdp 地址>$<激活码></translation> <translation id="4102906002417106771">重启以执行 Powerwash</translation> -<translation id="4104163789986725820">导出(&X)...</translation> <translation id="4107048419833779140">识别并弹出存储设备</translation> <translation id="4108314971463891922">关注</translation> <translation id="4109135793348361820">将窗口移至<ph name="USER_NAME" />(<ph name="USER_EMAIL" />)</translation> @@ -3933,6 +3934,7 @@ <translation id="475088594373173692">第 1 位用户</translation> <translation id="4756378406049221019">停止/重新加载</translation> <translation id="4756388243121344051">历史记录(&H)</translation> +<translation id="4756671452988984333">音频的文本</translation> <translation id="4759202969060787081">不要打开</translation> <translation id="4759238208242260848">下载内容</translation> <translation id="4761104368405085019">使用您的麦克风</translation> @@ -5036,6 +5038,7 @@ <translation id="5860494867054883682">正在将您的设备更新至<ph name="CHANNEL_NAME" />版本 (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">在任务栏中显示触控笔工具</translation> <translation id="5862319196656206789">设置已连接的设备</translation> +<translation id="5862731021271217234">要访问您在其他设备上打开的标签页,请开启同步功能</translation> <translation id="5863445608433396414">启用调试功能</translation> <translation id="5864195618110239517">使用按流量计费的网络连接</translation> <translation id="5864754048328252126">充电时的闲置操作</translation> @@ -5471,7 +5474,6 @@ <translation id="6291949900244949761">当网站要访问 USB 设备时询问您(推荐)</translation> <translation id="6291953229176937411">在 Finder 中显示(&S)</translation> <translation id="6292699686837272722">将标签页收缩至中等宽度</translation> -<translation id="6294610283659775533">您可在使用同一 Google 帐号登录的不同设备间发送标签页</translation> <translation id="6294759976468837022">自动扫描速度</translation> <translation id="6295158916970320988">所有网站</translation> <translation id="6295855836753816081">正在保存…</translation> @@ -6864,6 +6866,7 @@ <translation id="7668423670802040666">在 <ph name="ACCOUNT" /> 的 Google 密码管理器中</translation> <translation id="7669825497510425694">{NUM_ATTEMPTS,plural, =1{PIN 码不正确。您还剩 1 次尝试机会。}other{PIN 码不正确。您还剩 # 次尝试机会。}}</translation> <translation id="7670434942695515800">为了获得最佳性能,请升级到最新版本。建议您备份文件,以防无法完成升级。一旦开始升级,Linux 即会关闭。请先保存已打开的文件,然后再继续。<ph name="LINK_START" />了解详情<ph name="LINK_END" /></translation> +<translation id="7670483791111801022">字幕</translation> <translation id="7671130400130574146">使用系统标题栏和边框</translation> <translation id="767127784612208024">轻触以确认重置</translation> <translation id="7672520070349703697"><ph name="HUNG_IFRAME_URL" />(在 <ph name="PAGE_TITLE" /> 中)。</translation> @@ -7950,6 +7953,7 @@ <translation id="8724859055372736596">在文件夹中显示(&S)</translation> <translation id="8725066075913043281">重试</translation> <translation id="8725178340343806893">收藏夹/书签</translation> +<translation id="87254326763805752">确认密钥</translation> <translation id="8726206820263995930">从服务器抓取策略设置时出错:<ph name="CLIENT_ERROR" />。</translation> <translation id="8728351286589123703">您已选择的权限将被重置</translation> <translation id="8729133765463465108">使用摄像头扫描二维码</translation>
diff --git a/chrome/app/resources/generated_resources_zh-HK.xtb b/chrome/app/resources/generated_resources_zh-HK.xtb index 23b91fa1c..1078e358 100644 --- a/chrome/app/resources/generated_resources_zh-HK.xtb +++ b/chrome/app/resources/generated_resources_zh-HK.xtb
@@ -334,7 +334,6 @@ <translation id="1319983966058170660"><ph name="SUBPAGE_TITLE" />子頁面返回掣</translation> <translation id="1322046419516468189">查看和管理儲存在「<ph name="SAVED_PASSWORDS_STORE" />」的密碼</translation> <translation id="1324106254079708331">為任何有機會受到針對性攻擊的人士保障個人 Google 帳戶安全</translation> -<translation id="1326317727527857210">如要取得其他裝置上的分頁,請登入 Chrome。</translation> <translation id="1327272175893960498">Kerberos 票證</translation> <translation id="1327495825214193325">必須重新啟動 <ph name="DEVICE_TYPE" /> 才能啟用 ADB 偵錯。如要停用 ADB 偵錯,則需要將裝置回復原廠設定。</translation> <translation id="1327794256477341646">需要所在位置的功能將無法運作</translation> @@ -2441,7 +2440,6 @@ <translation id="3280243678470289153">繼續使用 Chrome</translation> <translation id="3281892622610078515">要隔離的檔案和程式:</translation> <translation id="3282210178675490297">正在與 <ph name="APP_NAME" /> 共用此標籤</translation> -<translation id="3282568296779691940">登入 Chrome</translation> <translation id="3285322247471302225">新分頁(&T)</translation> <translation id="328571385944182268">要儲存密碼嗎?</translation> <translation id="3288047731229977326">在開發人員模式中執行擴充功能可能會損害您的電腦。如果您不是開發人員,最好在開發人員模式中停用這些擴充功能,以策安全。</translation> @@ -3316,7 +3314,6 @@ <translation id="4101352914005291489">隱藏的 SSID</translation> <translation id="4102469565336584882">啟動碼無效。輸入的內容必須使用 LPA 格式:1$<smdp address>$<activation code></translation> <translation id="4102906002417106771">重新啟動即可進行 Powerwash</translation> -<translation id="4104163789986725820">匯出(&X)…</translation> <translation id="4107048419833779140">識別並退出儲存裝置</translation> <translation id="4108314971463891922">追蹤</translation> <translation id="4109135793348361820">將視窗傳送給 <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />)</translation> @@ -5072,6 +5069,7 @@ <translation id="5860494867054883682">正在將您的裝置更新至<ph name="CHANNEL_NAME" />版 (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">在捷徑列中顯示觸控筆工具</translation> <translation id="5862319196656206789">設定已連接的裝置</translation> +<translation id="5862731021271217234">如要取得其他裝置上的分頁,請開啟同步處理功能</translation> <translation id="5863445608433396414">啟用偵錯功能</translation> <translation id="5864195618110239517">使用按用量收費的連線</translation> <translation id="5864754048328252126">叉緊電時嘅閒置動作</translation> @@ -5508,7 +5506,6 @@ <translation id="6291949900244949761">在網站要存取 USB 裝置時詢問您 (建議)</translation> <translation id="6291953229176937411">在 Finder 中顯示(&S)</translation> <translation id="6292699686837272722">將分頁縮成中寬度</translation> -<translation id="6294610283659775533">您可在已登入同一個 Google 帳戶的裝置之間傳送分頁</translation> <translation id="6294759976468837022">自動掃瞄速度</translation> <translation id="6295158916970320988">所有網站</translation> <translation id="6295855836753816081">正在儲存...</translation>
diff --git a/chrome/app/resources/generated_resources_zh-TW.xtb b/chrome/app/resources/generated_resources_zh-TW.xtb index 03ed455..604fd58 100644 --- a/chrome/app/resources/generated_resources_zh-TW.xtb +++ b/chrome/app/resources/generated_resources_zh-TW.xtb
@@ -332,7 +332,6 @@ <translation id="1319983966058170660"><ph name="SUBPAGE_TITLE" />子頁面返回按鈕</translation> <translation id="1322046419516468189">你可以查看及管理 <ph name="SAVED_PASSWORDS_STORE" />中儲存的密碼</translation> <translation id="1324106254079708331">保護任何容易成為攻擊目標的使用者,確保他們的帳戶安全無虞</translation> -<translation id="1326317727527857210">如要存取您在其他裝置上開啟的分頁,請登入 Chrome。</translation> <translation id="1327272175893960498">Kerberos 票證</translation> <translation id="1327495825214193325">如要啟用 ADB 偵錯,必須重新啟動這部 <ph name="DEVICE_TYPE" />。如要停用 ADB 偵錯,必須將裝置恢復原廠設定。</translation> <translation id="1327794256477341646">需要位置資訊的功能將無法運作</translation> @@ -2426,7 +2425,6 @@ <translation id="3280243678470289153">繼續使用 Chrome</translation> <translation id="3281892622610078515">要隔離的檔案和程式:</translation> <translation id="3282210178675490297">正在與 <ph name="APP_NAME" /> 共用這個分頁</translation> -<translation id="3282568296779691940">登入 Chrome</translation> <translation id="3285322247471302225">新增分頁(&T)</translation> <translation id="328571385944182268">要儲存密碼嗎?</translation> <translation id="3288047731229977326">在開發人員模式中執行擴充功能可能會損害你的電腦。如果你不是開發人員,最好在開發人員模式中停用這些擴充功能,以策安全。</translation> @@ -3300,7 +3298,6 @@ <translation id="4101352914005291489">隱藏的 SSID</translation> <translation id="4102469565336584882">代碼無效,輸入的內容必須使用 LPA 格式:1$<smdp address>$<activation code></translation> <translation id="4102906002417106771">重新啟動以執行 Powerwash</translation> -<translation id="4104163789986725820">匯出(&X)...</translation> <translation id="4107048419833779140">識別並退出儲存裝置</translation> <translation id="4108314971463891922">追蹤</translation> <translation id="4109135793348361820">將視窗傳送給 <ph name="USER_NAME" /> (<ph name="USER_EMAIL" />)</translation> @@ -5055,6 +5052,7 @@ <translation id="5860494867054883682">正在將你的裝置更新至<ph name="CHANNEL_NAME" /> (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">在檔案櫃中顯示觸控筆工具</translation> <translation id="5862319196656206789">設定已連結的裝置</translation> +<translation id="5862731021271217234">如要存取你在其他裝置上開啟的分頁,請開啟同步處理功能</translation> <translation id="5863445608433396414">啟用偵錯功能</translation> <translation id="5864195618110239517">使用計量付費連線</translation> <translation id="5864754048328252126">充電時的閒置動作</translation> @@ -5490,7 +5488,6 @@ <translation id="6291949900244949761">網站要求存取 USB 裝置時詢問我 (建議)</translation> <translation id="6291953229176937411">在 Finder 中顯示(&S)</translation> <translation id="6292699686837272722">將分頁縮成中寬度</translation> -<translation id="6294610283659775533">你可以在已登入相同 Google 帳戶的裝置之間傳送分頁</translation> <translation id="6294759976468837022">自動掃描速度</translation> <translation id="6295158916970320988">所有網站</translation> <translation id="6295855836753816081">儲存中...</translation>
diff --git a/chrome/app/resources/generated_resources_zu.xtb b/chrome/app/resources/generated_resources_zu.xtb index 9cf209a6d..c1eec55 100644 --- a/chrome/app/resources/generated_resources_zu.xtb +++ b/chrome/app/resources/generated_resources_zu.xtb
@@ -335,7 +335,6 @@ <translation id="1319983966058170660">Inkinobho yasemuva yekhasi elingezansi le-<ph name="SUBPAGE_TITLE" /></translation> <translation id="1322046419516468189">Buka futhi uphathe amaphasiwedi alondoloziwe ku-<ph name="SAVED_PASSWORDS_STORE" /> yakho</translation> <translation id="1324106254079708331">Vikela wonke ama-akhawunti e-Google omuntu siqu wanoma ubani asengcupheni yokuhlaselwa okuqondiwe</translation> -<translation id="1326317727527857210">Ukuze uthole amathebhu akho kusukela kumanye amadivayisi akho, ngena ngemvume ku-Chrome.</translation> <translation id="1327272175893960498">Amathikithi e-Kerberos</translation> <translation id="1327495825214193325">Ukuze unike amandla ukulungisa kwe-ADB, ukuqaliswa kabusha kwale <ph name="DEVICE_TYPE" /> kuyadingeka. Ukuyikhubaza kudinga ukusethwa kabusha kuzilungiselelo zasekuqaleni.</translation> <translation id="1327794256477341646">Izici ezidinga indawo yakho ngeke zize zisebenze</translation> @@ -362,6 +361,7 @@ <translation id="1347256498747320987">Faka izibuyekezo nezinhlelo zokusebenza. Ngokuqhubeka, uvuma ukuthi le divayisi ingaphinda ilande ngokuzenzakalela iphinde ifake izibuyekezo nezinhlelo zokusebenza kusukela ku-Google, inkampani yakho yenethiwekhi, kanye nomkhiqizi wedivayisi yakho, kungenzeka kusetshenziswa idatha yeselula. Ezinye zalezi zinhlelo zokusebenza zinganikeza ukuthenga ngaphakathi nohlelo. <ph name="BEGIN_LINK1" />Funda kabanzi<ph name="END_LINK1" /></translation> <translation id="1347512539447549782">Isitoreji se-Linux</translation> <translation id="1347975661240122359">Isibuyekezo sizoqala uma ibhethri lifika ku-<ph name="BATTERY_LEVEL" />%.</translation> +<translation id="1348966090521113558">Amasethingi okungena kwe-mouse</translation> <translation id="1353275871123211385">Ukuze isebenzise izilawuli zomzali njengokugunyazwa kwe-app nemikhawulo yesikhathi sesikrini, ingane kufanele ibe ne-akhawunti ye-Google ephethwe umzali. I-akhawunti yesikole ingangezwa ngemuva kwesikhathi ngamathuluzi afana nokuthi Ikilasi le-Google.</translation> <translation id="135389172849514421">Isebenza ngokungaxhunyiwe ku-intanethi</translation> <translation id="1353980523955420967">Ayikwazi ukuthola i-PPD. Yenza isiqiniseko sokuthi i-Chromebook iku-inthanethi uphinde uzame futhi.</translation> @@ -1799,6 +1799,7 @@ <translation id="2653659639078652383">Hambisa</translation> <translation id="265390580714150011">Inani lenkambu</translation> <translation id="2654553774144920065">Phrinta isicelo</translation> +<translation id="2657612187216250073">Amasethingi okungena kwesikhombi</translation> <translation id="2658941648214598230">Bonisa okuqukethwe kwangempela?</translation> <translation id="2659381484350128933"><ph name="FOOTNOTE_POINTER" />Izici ziyahluka ngedivayisi</translation> <translation id="2659971421398561408">Ukushintsha usayizi wediski we-Crostini</translation> @@ -1963,6 +1964,7 @@ <translation id="2801954693771979815">Usayizi wesikrini</translation> <translation id="2802557211515765772">Awekho amaphrinta aphethwe.</translation> <translation id="2803313416453193357">Vula ifolda</translation> +<translation id="2803719750464280163">Sicela uqinisekise ukuthi okuthi <ph name="PASSKEY" /> kungukhiye oboniswe kudivayisi ye-Bluetooth ethi <ph name="DEVICE" />.</translation> <translation id="2804043232879091219">Esinye isiphequluli asikwazanga ukuvulwa</translation> <translation id="2804667941345577550">Uzokhishwa kuleli sayithi, kufaka phakathi kumathebhu avuliwe</translation> <translation id="2804680522274557040">Ikhamera ivaliwe</translation> @@ -2439,7 +2441,6 @@ <translation id="3280243678470289153">Hlala ku-Chrome</translation> <translation id="3281892622610078515">Amafayela nezinhlelo ezizohlukaniswa:</translation> <translation id="3282210178675490297">Yabelana ngethebhu ku-<ph name="APP_NAME" /></translation> -<translation id="3282568296779691940">Ngena ngemvume ku-Chrome</translation> <translation id="3285322247471302225">Ithebhu entsha</translation> <translation id="328571385944182268">Londoloza amaphasiwedi akho?</translation> <translation id="3288047731229977326">Izandiso ezisebenza kumodi yonjiniyela zingalimaza ikhompyutha yakho. Uma ungeyena unjiniyela, kuzomele ukhubaze lezi zandiso ezisebenza kumodi yonjiniyela ukuze uhlale uvikelekile.</translation> @@ -2879,6 +2880,7 @@ <translation id="370649949373421643">Nika amandla i-Wi-Fi</translation> <translation id="370665806235115550">Kuyalayisha...</translation> <translation id="3707163604290651814">Manje ungene ngemvume njengo-<ph name="NAME" /></translation> +<translation id="3708295717182051206">Imibhalo engezansi</translation> <translation id="3708684582558000260">Ungavumeli amasayithi avaliwe aqedelele ukuthumela noma ukwamukela idatha</translation> <translation id="3709244229496787112">Isiphequluli siye savalwa ngaphambi kokuthi ukulanda kuqedwe.</translation> <translation id="371174301504454251">Ukuze sivikele ubumfihlo bakho, sisula ngokuzenzakalelayo amasayithi avela ohlwini amadala kunamaviki ama-4. Isayithi olivakashelayo futhi lingase livele futhi ohlwini. Noma ungasusa isayithi uma ungafuni ukuthi lelo sayithi likuchazele okuthakaselayo.</translation> @@ -3311,7 +3313,6 @@ <translation id="4101352914005291489">I-SSID efihliwe</translation> <translation id="4102469565336584882">Ikhodi engavumelekile. Ukufaka kwakho kufanele kube ne-LPA yefomethi:1$<smdp address>$<activation code></translation> <translation id="4102906002417106771">Qala kabusha ku-powerwash</translation> -<translation id="4104163789986725820">T&humela...</translation> <translation id="4107048419833779140">Khomba uphinde ukhiphe amadivayisi esitoreji</translation> <translation id="4108314971463891922">Landela</translation> <translation id="4109135793348361820">Hambisa iwindi ku-<ph name="USER_NAME" /> (<ph name="USER_EMAIL" />)</translation> @@ -3961,6 +3962,7 @@ <translation id="475088594373173692">Umsebenzisi wokuqala</translation> <translation id="4756378406049221019">Misa/Layisha kabusha</translation> <translation id="4756388243121344051">Umlando</translation> +<translation id="4756671452988984333">Umbhalo womsindo</translation> <translation id="4759202969060787081">Ungavuli</translation> <translation id="4759238208242260848">Ukulanda</translation> <translation id="4761104368405085019">Sebenzisa imakrofoni yakho</translation> @@ -4120,6 +4122,7 @@ <translation id="4900392736118574277">Ikhasi lakho lokuqalisa lishintshelwe ku-<ph name="URL" />.</translation> <translation id="490051679772058907"><ph name="REFRESH_RATE" /> Hz - okuhlanganisiwe</translation> <translation id="4900652253009739885">Ayikwazi ukususa iswishi okuyiyo kuphela eyabelwe kokuthi “Khetha.” Cindezela noma yimuphi ukhiye ukuze u-<ph name="RESPONSE" />.</translation> +<translation id="4901154724271753917">Nweba okusanda kuvalwa</translation> <translation id="4901309472892185668">Khetha isimo sokuhlola sohlolo lwe-<ph name="EXPERIMENT_NAME" />.</translation> <translation id="49027928311173603">Inqubomgomo elandwe kusuka kuseva ayivumelekile: <ph name="VALIDATION_ERROR" />.</translation> <translation id="4906490889887219338">Setha noma phatha ukwabelana kwefayela lenethiwekhi. <ph name="LINK_BEGIN" />Funda kabanzi<ph name="LINK_END" /></translation> @@ -5069,6 +5072,7 @@ <translation id="5860494867054883682">Ibuyekezela idivayisi yakho kusiteshi se-<ph name="CHANNEL_NAME" /> (<ph name="PROGRESS_PERCENT" />)</translation> <translation id="5862109781435984885">Bonisa amathuluzi e-stylus kushelufu</translation> <translation id="5862319196656206789">Setha amadivayisi axhunyiwe</translation> +<translation id="5862731021271217234">Ukuze uthole amathebhu akho kusukela kwamanye amadivayisi akho, vula ukuvumelanisa</translation> <translation id="5863445608433396414">Nika amandla izici zokususa amaphutha</translation> <translation id="5864195618110239517">Sebenzisa ukuxhuma okwenziwe imitha</translation> <translation id="5864754048328252126">Isenzo sokungenzi lutho ngenkathi ishaja</translation> @@ -5505,7 +5509,6 @@ <translation id="6291949900244949761">Buma uma isayithi lifuna ukufinyelela amadivayisi e-USB (kuyanconywa)</translation> <translation id="6291953229176937411">Bonisa kusitholi</translation> <translation id="6292699686837272722">Amathebhu ancipha abe ububanzi obumaphakathi</translation> -<translation id="6294610283659775533">Ungathumela amathebhu phakathi kwamadivayisi angene ngemvume nge-akhawunti ye-Google efanayo</translation> <translation id="6294759976468837022">Isivinini sokuskena okuzenzakalelayo</translation> <translation id="6295158916970320988">Wonke amasayithi</translation> <translation id="6295855836753816081">Iyalondoloza...</translation> @@ -6900,6 +6903,7 @@ <translation id="7668423670802040666">Ku-Google Password Manager ye-<ph name="ACCOUNT" /></translation> <translation id="7669825497510425694">{NUM_ATTEMPTS,plural, =1{Iphinikhodi engalungile. Unomzamo owodwa osele.}one{Iphinikhodi engalungile. Unemizamo engu-# esele.}other{Iphinikhodi engalungile. Unemizamo engu-# esele.}}</translation> <translation id="7670434942695515800">Ukuze uthole ukusebenza okuhle kakhulu, thuthukela kuhlobo lwakamuva. Ukwenza isipele samafayela akho kuyanconywa uma ukuthuthukiswa kungaqedwa. Uma ukuthuthukiswa kuqala, i-Linux izovalwa. Londoloza amafayela avuliwe ngaphambi kokuqhubeka. <ph name="LINK_START" />Funda kabanzi<ph name="LINK_END" /></translation> +<translation id="7670483791111801022">Imibhalo engezansi</translation> <translation id="7671130400130574146">Sebenzisa ibha yesihloko yesistimu nemingcele</translation> <translation id="767127784612208024">Thinta ukuze uqinisekise ukusetha kabusha</translation> <translation id="7672520070349703697"><ph name="HUNG_IFRAME_URL" />, ku-<ph name="PAGE_TITLE" />.</translation> @@ -7012,6 +7016,7 @@ <translation id="7768526219335215384">I-<ph name="ORIGIN" /> izokwazi ukubuka wonke amafayela ku-<ph name="FOLDERNAME" />.</translation> <translation id="7768770796815395237">Shintsha</translation> <translation id="7768784765476638775">Khetha ukuze ukhulume</translation> +<translation id="7769748505895274502">Goqa okusanda kuvalwa</translation> <translation id="7770406201819593386">Qalisa ukuhlolwa kokuxilongwa kwe-ChromeOS Flex</translation> <translation id="7770450735129978837">Chofoza kwesokudla ku-mouse</translation> <translation id="7770612696274572992">Isithombe sikopishwe kusuka kwenye idivayisi</translation> @@ -7985,6 +7990,7 @@ <translation id="8724859055372736596">Bonisa kufolda</translation> <translation id="8725066075913043281">Zama futhi</translation> <translation id="8725178340343806893">Izintandokazi/Amabhukhimakhi</translation> +<translation id="87254326763805752">Qinisekisa ukhiye wokudlula</translation> <translation id="8726206820263995930">Iphutha ngenkathi kulandwa izilungiselelo zenqubomgomo kusuka kuseva: <ph name="CLIENT_ERROR" />.</translation> <translation id="8728351286589123703">Izimvume zakho ozikhethile zizosethwa kabusha</translation> <translation id="8729133765463465108">Sebenzisa ikhamera ukuskena ikhodi ye-QR</translation>
diff --git a/chrome/app/resources/google_chrome_strings_az.xtb b/chrome/app/resources/google_chrome_strings_az.xtb index 92eccc1c..c3d4b79 100644 --- a/chrome/app/resources/google_chrome_strings_az.xtb +++ b/chrome/app/resources/google_chrome_strings_az.xtb
@@ -67,6 +67,7 @@ <translation id="2139300032719313227">ChromeOS'i yenidən başladın</translation> <translation id="2151406531797534936">İndi Chrome'u yenidən başladın</translation> <translation id="2174917724755363426">Quraşdırma tamamlanmayıb. Ləğv etmək istədiyinizə əminsiniz?</translation> +<translation id="223889379102603431">Chrome'un kök sertifikatlarını necə idarə etməsi haqqında məlumat</translation> <translation id="2258103955319320201">Bütün cihazlarınızda Chrome brauzerinin elementlərinə giriş etmək üçün daxil olun və sinxronizasiyanı aktiv edin</translation> <translation id="2290014774651636340">Google API açarları çatışmır. Google Chrome'un bəzi funksionallığı deaktiv ediləcək.</translation> <translation id="2290095356545025170">Google Chrome'u silmək istəyirsiniz?</translation> @@ -351,6 +352,7 @@ <translation id="8129812357326543296">Google Chrome haqqında</translation> <translation id="813913629614996137">Başladılır...</translation> <translation id="8255190535488645436">Google Chrome kameranızı və mikrofonunuzu işlədir.</translation> +<translation id="8270775718612349140">Chrome tərəfindən idarə olunan sertifikatlar</translation> <translation id="8286862437124483331">Google Chrome parolları göstərməyə cəhd edir. Buna icazə vermək üçün Windows parolunuzu yazın.</translation> <translation id="828798499196665338">Valideyniniz Chrome üçün "Saytlar, tətbiqlər və artırmalar üçün icazələri" deaktiv edib. Bu <ph name="EXTENSION_TYPE_PARAMETER" /> artırmasının aktiv edilməsinə icazə verilmir.</translation> <translation id="8290100596633877290">Google Chrome'da xəta baş verdi. İndi yenidən başladılsın?</translation>
diff --git a/chrome/app/resources/google_chrome_strings_bn.xtb b/chrome/app/resources/google_chrome_strings_bn.xtb index 574146c..2a78441b 100644 --- a/chrome/app/resources/google_chrome_strings_bn.xtb +++ b/chrome/app/resources/google_chrome_strings_bn.xtb
@@ -68,6 +68,7 @@ <translation id="2139300032719313227">ChromeOS রিস্টার্ট করুন</translation> <translation id="2151406531797534936">এখনই Chrome রিস্টার্ট করুন</translation> <translation id="2174917724755363426">ইনস্টলেশন শেষ হয়নি। আপনি কি সত্যিই বাতিল করতে চান?</translation> +<translation id="223889379102603431">Chrome কীভাবে মূল সার্টিফিকেট ম্যানেজ করে সেই বিষয়ে তথ্য</translation> <translation id="2258103955319320201">সব ডিভাইস জুড়ে Chrome ব্রাউজারে থাকা ডেটা অ্যাক্সেস করতে, প্রথমে সাইন-ইন করে সিঙ্ক চালু করুন।</translation> <translation id="2290014774651636340">Google এপিআই কীগুলি অনুপস্থিত৷ Google Chrome-এর কিছু বৈশিষ্ট্য নিষ্ক্রিয় হয়ে যাবে৷</translation> <translation id="2290095356545025170">আপনি কি Google Chrome আনইনস্টল করার ব্যাপারে নিষ্চিত ?</translation> @@ -352,6 +353,7 @@ <translation id="8129812357326543296">&Google Chrome সম্বন্ধে</translation> <translation id="813913629614996137">আরম্ভ হচ্ছে…</translation> <translation id="8255190535488645436">Google Chrome আপনার ক্যামেরা এবং মাইক্রোফোন ব্যবহার করছে৷</translation> +<translation id="8270775718612349140">Chrome দ্বারা ম্যানেজ করা সার্টিফিকেট</translation> <translation id="8286862437124483331">Google Chrome পাসওয়ার্ডগুলি দেখানোর চেষ্টা করছে। এটির অনুমতি দিতে আপনার Windows পাসওয়ার্ড টাইপ করুন।</translation> <translation id="828798499196665338">তোমার অভিভাবক Chrome-এ "সাইট, অ্যাপ ও এক্সটেনশনের অনুমতি" বন্ধ করে দিয়েছেন। এই <ph name="EXTENSION_TYPE_PARAMETER" /> চালু করার অনুমতি নেই।</translation> <translation id="8290100596633877290">হোয়া! Google Chrome ক্র্যাশ হয়েছে৷ এখনই পুনঃলঞ্চ করবেন?</translation>
diff --git a/chrome/app/resources/google_chrome_strings_bs.xtb b/chrome/app/resources/google_chrome_strings_bs.xtb index 7778a87..c5f6320 100644 --- a/chrome/app/resources/google_chrome_strings_bs.xtb +++ b/chrome/app/resources/google_chrome_strings_bs.xtb
@@ -69,6 +69,7 @@ <translation id="2139300032719313227">Ponovo pokrenite ChromeOS</translation> <translation id="2151406531797534936">Ponovo pokrenite Chrome sada</translation> <translation id="2174917724755363426">Instalacija nije završena. Jeste li sigurni da želite otkazati?</translation> +<translation id="223889379102603431">informacije o tome kako Chrome upravlja korijenskim certifikatima</translation> <translation id="2258103955319320201">Prijavite se, a zatim uključite sinhronizaciju da pristupite svojim stvarima s Chrome preglednika na svim svojim uređajima</translation> <translation id="2290014774651636340">Nedostaju ključevi za Google API. Neke funkcionalnosti Google Chromea će biti onemogućene.</translation> <translation id="2290095356545025170">Jeste li sigurni da želite deinstalirati Google Chrome?</translation> @@ -353,6 +354,7 @@ <translation id="8129812357326543296">O &Google Chromeu</translation> <translation id="813913629614996137">Pokretanje…</translation> <translation id="8255190535488645436">Google Chrome koristi vašu kameru i mikrofon.</translation> +<translation id="8270775718612349140">Certifikati kojima upravlja Chrome</translation> <translation id="8286862437124483331">Google Chrome pokušava prikazati lozinke. Unesite svoju lozinku za Windows da ovo omogućite.</translation> <translation id="828798499196665338">Tvoj roditelj je isključio "Odobrenja za web lokacije, aplikacije i ekstenzije" za Chrome. Omogućavanje ove stavke (<ph name="EXTENSION_TYPE_PARAMETER" />) nije dozvoljeno.</translation> <translation id="8290100596633877290">Joj! Došlo je do pada aplikacije Google Chrome. Ponovo pokrenuti sada?</translation>
diff --git a/chrome/app/resources/google_chrome_strings_hr.xtb b/chrome/app/resources/google_chrome_strings_hr.xtb index 7fe3eaa1..5cec0e2 100644 --- a/chrome/app/resources/google_chrome_strings_hr.xtb +++ b/chrome/app/resources/google_chrome_strings_hr.xtb
@@ -66,6 +66,7 @@ <translation id="2139300032719313227">Ponovo pokrenite Chrome OS</translation> <translation id="2151406531797534936">Sada ponovo pokrenite Chrome</translation> <translation id="2174917724755363426">Instaliranje nije dovršeno. Jeste li sigurni da ga želite otkazati?</translation> +<translation id="223889379102603431">informacije o tome kako Chrome upravlja korijenskim certifikatima</translation> <translation id="2258103955319320201">Da biste mogli pristupiti svojim sadržajima u pregledniku Chrome na svim svojim uređajima, prijavite se i zatim uključite sinkronizaciju.</translation> <translation id="2290014774651636340">Nedostaju ključevi Google API-ja. Neke funkcije Google Chromea bit će onemogućene.</translation> <translation id="2290095356545025170">Jeste li sigurni da želite deinstalirati Google Chrome?</translation> @@ -347,6 +348,7 @@ <translation id="8129812357326543296">O programu Google Chrome</translation> <translation id="813913629614996137">Pokretanje...</translation> <translation id="8255190535488645436">Google Chrome upotrebljava vašu kameru i mikrofon.</translation> +<translation id="8270775718612349140">Certifikati kojima upravlja Chrome</translation> <translation id="8286862437124483331">Google Chrome pokušava prikazati zaporke. Upišite svoju zaporku za Windows da biste to dopustili.</translation> <translation id="828798499196665338">Tvoj je roditelj isključio "Dopuštenja za web-lokacije, aplikacije i proširenja" za Chrome. Nije dopušteno omogućiti <ph name="EXTENSION_TYPE_PARAMETER" />.</translation> <translation id="8290100596633877290">Opa! Google Chrome je pao. Ponovo pokrenuti sada?</translation>
diff --git a/chrome/app/resources/google_chrome_strings_hu.xtb b/chrome/app/resources/google_chrome_strings_hu.xtb index f0eeffe9..96450b4f 100644 --- a/chrome/app/resources/google_chrome_strings_hu.xtb +++ b/chrome/app/resources/google_chrome_strings_hu.xtb
@@ -66,6 +66,7 @@ <translation id="2139300032719313227">A ChromeOS újraindítása</translation> <translation id="2151406531797534936">Indítsa újra most a Chrome-ot</translation> <translation id="2174917724755363426">A telepítés még nem fejeződött be. Biztosan megszakítja a műveletet?</translation> +<translation id="223889379102603431">Információ arról, hogy a Chrome hogyan kezeli a főtanúsítványokat</translation> <translation id="2258103955319320201">Ha szeretne minden eszközén hozzáférni a Chrome böngészőhöz tartozó anyagaihoz, jelentkezzen be, majd kapcsolja be a szinkronizálást.</translation> <translation id="2290014774651636340">Hiányoznak Google API-kulcsok. A Google Chrome egyes funkciói kikapcsolnak.</translation> <translation id="2290095356545025170">Biztos benne, hogy eltávolítja a Google Chrome-ot?</translation> @@ -348,6 +349,7 @@ <translation id="8129812357326543296">A &Google Chrome névjegye</translation> <translation id="813913629614996137">Indítás…</translation> <translation id="8255190535488645436">A Google Chrome használja a kamerát és a mikrofont.</translation> +<translation id="8270775718612349140">A Chrome által kezelt tanúsítványok</translation> <translation id="8286862437124483331">A Google Chrome megkísérli megjeleníteni a jelszavakat. Ennek engedélyezéséhez írja be Windows-jelszavát.</translation> <translation id="828798499196665338">Szülőd kikapcsolta a Chrome „Engedélyek webhelyek, alkalmazások és bővítmények számára” beállítását. A(z) <ph name="EXTENSION_TYPE_PARAMETER" /> nem engedélyezhető.</translation> <translation id="8290100596633877290">Hmm. A Google Chrome összeomlott. Újraindítja most?</translation>
diff --git a/chrome/app/resources/google_chrome_strings_ka.xtb b/chrome/app/resources/google_chrome_strings_ka.xtb index 9bc8c85..f20a947 100644 --- a/chrome/app/resources/google_chrome_strings_ka.xtb +++ b/chrome/app/resources/google_chrome_strings_ka.xtb
@@ -69,6 +69,7 @@ <translation id="2139300032719313227">გადატვირთეთ ChromeOS</translation> <translation id="2151406531797534936">გთხოვთ, ახლავე გადატვირთოთ Chrome</translation> <translation id="2174917724755363426">ინსტალაცია არ დასრულებულა. ნამდვილად გსურთ გაუქმება?</translation> +<translation id="223889379102603431">ინფორმაცია Chrome-ის მიერ თავისი ძირეული სერტიფიკატების მართვის შესახებ</translation> <translation id="2258103955319320201">Chrome ბრაუზერში თქვენს კონტენტზე თქვენი ნებისმიერი მოწყობილობიდან წვდომისთვის შედით სისტემაში, შემდეგ კი ჩართეთ სინქრონიზაცია</translation> <translation id="2290014774651636340">Google API გასაღები გამოტოვებულია. Google Chrome-ის ზოგიერთი ფუნქცია გამორთული იქნება.</translation> <translation id="2290095356545025170">ნამდვილად გსურთ მოახდინოთ Google Chrome-ის დეინსტალაცია?</translation> @@ -354,6 +355,7 @@ <translation id="8129812357326543296">&Google Chrome-ის შესახებ</translation> <translation id="813913629614996137">მიმდინარეობს ინიცირება…</translation> <translation id="8255190535488645436">Google Chrome იყენებს თქვენს კამერასა და მიკროფონს.</translation> +<translation id="8270775718612349140">Chrome-ის მიერ მართული სერტიფიკატები</translation> <translation id="8286862437124483331">Google Chrome ცდილობს პაროლების ჩვენებას. აკრიფეთ თქვენი Windows-ის პაროლი, რათა დაუშვათ ეს.</translation> <translation id="828798499196665338">თქვენმა მშობელმა გამორთო „ნებართვები საიტებისთვის, აპებისა და გაფართოებებისთვის“ Chrome-ისთვის. ეს <ph name="EXTENSION_TYPE_PARAMETER" /> ვერ ჩაირთვება.</translation> <translation id="8290100596633877290">Google Chrome-ში შეცდომაა. გადავტვირთოთ?</translation>
diff --git a/chrome/app/resources/google_chrome_strings_lt.xtb b/chrome/app/resources/google_chrome_strings_lt.xtb index effa2a9..3c8cdeb 100644 --- a/chrome/app/resources/google_chrome_strings_lt.xtb +++ b/chrome/app/resources/google_chrome_strings_lt.xtb
@@ -70,6 +70,7 @@ <translation id="2139300032719313227">„Chrome“ OS paleidimas iš naujo</translation> <translation id="2151406531797534936">Dabar iš naujo paleiskite „Chrome“</translation> <translation id="2174917724755363426">Diegimas nebaigtas. Ar tikrai norite atšaukti?</translation> +<translation id="223889379102603431">Informacija apie tai, kaip „Chrome“ tvarko šakninius sertifikatus</translation> <translation id="2258103955319320201">Jei norite pasiekti „Chrome“ naršyklės duomenis visuose savo įrenginiuose, prisijunkite ir įjunkite sinchronizavimą</translation> <translation id="2290014774651636340">Trūksta „Google“ API raktų. Bus išjungtos kai kurios „Google Chrome“ funkcijos.</translation> <translation id="2290095356545025170">Ar tikrai norite pašalinti „Google Chrome“?</translation> @@ -356,6 +357,7 @@ <translation id="8129812357326543296">Apie „&Google Chrome“</translation> <translation id="813913629614996137">Inicijuojama...</translation> <translation id="8255190535488645436">„Google Chrome“ naudoja jūsų fotoaparatą ir mikrofoną.</translation> +<translation id="8270775718612349140">Sertifikatai, kuriuos tvarko „Chrome“</translation> <translation id="8286862437124483331">„Google Chrome“ bando rodyti slaptažodžius. Įveskite „Windows“ slaptažodį, kad tai leistumėte.</translation> <translation id="828798499196665338">Jūsų tėvai išjungė svetainių, programų ir plėtinių leidimus sistemoje „Chrome“. Neleidžiama įgalinti šio <ph name="EXTENSION_TYPE_PARAMETER" />.</translation> <translation id="8290100596633877290">Oi! „Google Chrome“ užstrigo. Paleisti iš naujo dabar?</translation>
diff --git a/chrome/app/resources/google_chrome_strings_my.xtb b/chrome/app/resources/google_chrome_strings_my.xtb index 786c4020..6f2cf15 100644 --- a/chrome/app/resources/google_chrome_strings_my.xtb +++ b/chrome/app/resources/google_chrome_strings_my.xtb
@@ -70,6 +70,7 @@ <translation id="2139300032719313227">ChromeOS ပြန်စပါ</translation> <translation id="2151406531797534936">Chrome ကို ယခုပြန်စပါ</translation> <translation id="2174917724755363426">ထည့်သွင်းမှု မပြီးဆုံးပါ။ ပယ်ဖျက်လိုသည်မှာ သေချာပါသလား။</translation> +<translation id="223889379102603431">Chrome က ပင်မအသိအမှတ်ပြုလက်မှတ်များကို စီမံပုံအကြောင်း အချက်အလက်များ</translation> <translation id="2258103955319320201">သင့်စက်အားလုံးတွင် သင်၏ Chrome ဘရောင်ဇာနှင့်သက်ဆိုင်သည့်အရာများကို သုံးရန် လက်မှတ်ထိုးဝင်ပြီး စင့်ခ်လုပ်ခြင်းကို ဖွင့်ပါ</translation> <translation id="2290014774651636340">Google API သော့များ မရှိပါ။ Google Chrome ၏ အချို့သော လုပ်ကိုင်နိုင်စွမ်းများမှာ ပိတ်ခံကြရမည်။</translation> <translation id="2290095356545025170">သင်သည် Google Chromeကို ဖြုတ်ချင်တာ သေချာလား?</translation> @@ -356,6 +357,7 @@ <translation id="8129812357326543296">Google Chrome &အကြောင်း</translation> <translation id="813913629614996137">စတင်နေသည်…</translation> <translation id="8255190535488645436">Google Chrome က သင့်ကင်မရာနှင့် မိုက်ကရိုဖုန်းကို သုံးနေသည်။</translation> +<translation id="8270775718612349140">Chrome မှစီမံထားသည့် အသိအမှတ်ပြုလက်မှတ်များ</translation> <translation id="8286862437124483331">Google Chrome သည် စကားဝှက်ကို ပြပေးရန် ကြိုးစာနေသည်။ ၎င်းကို ခွင့်ပြုရန် သင်၏ Windows စကားဝှက်ကို ရိုက်ထည့်ပါ။</translation> <translation id="828798499196665338">Chrome အတွက် "ဝဘ်ဆိုက်၊ အက်ပ်နှင့် နောက်ဆက်တွဲ ခွင့်ပြုချက်များ" ကို သင့်မိဘက ပိတ်လိုက်သည်။ ဤ <ph name="EXTENSION_TYPE_PARAMETER" /> ဖွင့်ခြင်းကို ခွင့်မပြုပါ။</translation> <translation id="8290100596633877290">ဝါး! Google Chrome ပျက်သွားပြီ။ ယခုပြန်စတင်မလား?</translation>
diff --git a/chrome/app/resources/google_chrome_strings_pl.xtb b/chrome/app/resources/google_chrome_strings_pl.xtb index 7aef4bce..29040f4 100644 --- a/chrome/app/resources/google_chrome_strings_pl.xtb +++ b/chrome/app/resources/google_chrome_strings_pl.xtb
@@ -64,6 +64,7 @@ <translation id="2139300032719313227">Uruchom ponownie Chrome OS</translation> <translation id="2151406531797534936">Uruchom Chrome ponownie</translation> <translation id="2174917724755363426">Instalacja nie została ukończona. Czy na pewno chcesz ją anulować?</translation> +<translation id="223889379102603431">Informacje o tym, jak Chrome zarządza certyfikatami głównymi</translation> <translation id="2258103955319320201">Aby mieć dostęp do danych z Chrome na wszystkich swoich urządzeniach, zaloguj się i włącz synchronizację</translation> <translation id="2290014774651636340">Brakuje kluczy interfejsu Google API. Niektóre funkcje Google Chrome będą wyłączone.</translation> <translation id="2290095356545025170">Czy na pewno chcesz odinstalować przeglądarkę Google Chrome?</translation> @@ -345,6 +346,7 @@ <translation id="8129812357326543296">&Google Chrome – informacje</translation> <translation id="813913629614996137">Inicjuję…</translation> <translation id="8255190535488645436">Google Chrome używa Twojej kamery i mikrofonu.</translation> +<translation id="8270775718612349140">Certyfikaty zarządzane przez Chrome</translation> <translation id="8286862437124483331">Google Chrome próbuje pokazać hasła. Podaj swoje hasło do Windows, by na to zezwolić.</translation> <translation id="828798499196665338">Rodzic wyłączył „Uprawnienia stron, aplikacji i rozszerzeń” dla Chrome. Włączenie elementu <ph name="EXTENSION_TYPE_PARAMETER" /> jest niedozwolone.</translation> <translation id="8290100596633877290">O kurczę! Przeglądarka Google Chrome uległa awarii. Uruchomić ją teraz ponownie?</translation>
diff --git a/chrome/app/resources/google_chrome_strings_te.xtb b/chrome/app/resources/google_chrome_strings_te.xtb index 9cc2c1a..88c0bcb1 100644 --- a/chrome/app/resources/google_chrome_strings_te.xtb +++ b/chrome/app/resources/google_chrome_strings_te.xtb
@@ -135,7 +135,7 @@ <translation id="3451115285585441894">Chromeకు జోడిస్తోంది...</translation> <translation id="345171907106878721">Chromeకు మిమ్మల్ని జోడించుకోండి</translation> <translation id="3453763134178591239">ChromeOS నియమాలు</translation> -<translation id="34857402635545079">అలాగే (<ph name="URL" />)లో ఉన్న Chromeకి సంబంధించిన డేటాని తీసివేయి</translation> +<translation id="34857402635545079">అలాగే (<ph name="URL" />)లో ఉన్న Chromeకి సంబంధించిన డేటాను తీసివేయండి</translation> <translation id="3503306920980160878">ఈ సైట్తో మీ స్థానాన్ని షేర్ చేయడానికి Chromeకు మీ స్థాన యాక్సెస్ అవసరం</translation> <translation id="3533694711092285624">సేవ్ చేసిన పాస్వర్డ్లు లేవు. మీరు మీ పాస్వర్డ్లను సేవ్ చేసినప్పుడు Chrome వాటిని చెక్ చేయగలదు.</translation> <translation id="3541482654983822893">మీ పాస్వర్డ్లను Chrome చెక్ చేయలేకపోయింది. 24 గంటల తర్వాత మళ్లీ ట్రై చేయండి.</translation> @@ -328,7 +328,7 @@ <translation id="778331955594035129">ఈ సైట్ కోసం Chromeకు లొకేషన్ అనుమతి అవసరం</translation> <translation id="7787950393032327779">ఈ ప్రొఫైల్ను మరొక కంప్యూటర్ (<ph name="HOST_NAME" />)లో మరో Google Chrome ప్రాసెస్ (<ph name="PROCESS_ID" />) ఉపయోగిస్తున్నట్లు కనిపిస్తోంది. ఆ ప్రొఫైల్ పాడవకూడదనే ఉద్దేశ్యంతో Chrome దానిని లాక్ చేసింది. ఈ ప్రొఫైల్ను వేరే ఇతర ప్రాసెస్లు ఏవీ ఉపయోగించడం లేదని మీకు ఖచ్చితంగా తెలిస్తే, మీరు ప్రొఫైల్ను అన్లాక్ చేసి Chromeను మళ్లీ లాంచ్ చేయవచ్చు.</translation> <translation id="7801699035218095297">పాస్వర్డ్లను కాపీ చేయడానికి Google Chrome ప్రయత్నిస్తోంది. దీన్ని అనుమతించడానికి మీ Windows పాస్వర్డ్ను టైప్ చేయండి.</translation> -<translation id="7808348361785373670">Chrome నుండి తీసివేయి...</translation> +<translation id="7808348361785373670">Chrome నుండి తీసివేయండి...</translation> <translation id="7825851276765848807">నిర్దిష్టంగా తెలియని ఎర్రర్ కారణంగా ఇన్స్టలేషన్ విఫలమైంది. దయచేసి Google Chromeను మళ్లీ డౌన్లోడ్ చేయండి.</translation> <translation id="7845233973568007926">ఇన్స్టాల్ చేసినందుకు ధన్యవాదాలు. <ph name="BUNDLE_NAME" />ను ఉపయోగించడానికి ముందు మీరు కంప్యూటర్ను తప్పకుండా రీస్టార్ట్ చేయాలి.</translation> <translation id="7872446069773932638">డౌన్లోడ్ అవుతోంది... <ph name="SECONDS" /> సెకను(లు) సమయం మిగిలి ఉంది</translation>
diff --git a/chrome/app/resources/google_chrome_strings_uz.xtb b/chrome/app/resources/google_chrome_strings_uz.xtb index 026c83e2..48bfd205 100644 --- a/chrome/app/resources/google_chrome_strings_uz.xtb +++ b/chrome/app/resources/google_chrome_strings_uz.xtb
@@ -67,6 +67,7 @@ <translation id="2139300032719313227">ChromeOS tizimini qayta ishga tushirish</translation> <translation id="2151406531797534936">Chromeni hozir qayta ishga tushiring</translation> <translation id="2174917724755363426">Oʻrnatish yakunlanmadi. Haqiqatan ham bekor qilmoqchimisiz?</translation> +<translation id="223889379102603431">Chrome negiz sertifikatlarini qanday boshqarishi haqida axborot</translation> <translation id="2258103955319320201">Chrome brauzeridagi axborotlardan barcha qurilmalaringizda foydalanish uchun hisobingizga kiring va sinxronizatsiyani yoqing</translation> <translation id="2290014774651636340">Google API kalitlari topilmadi. Google Chrome’ning ba’zi funksiyalari o‘chirib qo‘yiladi.</translation> <translation id="2290095356545025170">Haqiqatan ham Google Chrome brauzerini o‘chirib tashlamoqchimisiz?</translation> @@ -354,6 +355,7 @@ <translation id="8129812357326543296">&Google Chrome haqida</translation> <translation id="813913629614996137">Ishga tushirilmoqda...</translation> <translation id="8255190535488645436">Google Chrome kamera va mikrofoningizdan foydalanmoqda.</translation> +<translation id="8270775718612349140">Chrome boshqaradigan sertifikatlar</translation> <translation id="8286862437124483331">Google Chrome parollarni ko‘rsatishga urinmoqda. Ruxsat berish uchun Windows platformasidagi parolingizni kiriting.</translation> <translation id="828798499196665338">Chromedagi “Sayt, ilova va kengaytmalarga ruxsat” ota-onangiz tomonidan faolsizlantirilgan. Bu <ph name="EXTENSION_TYPE_PARAMETER" /> yoqilishi taqiqlangan.</translation> <translation id="8290100596633877290">Google Chrome ishdan chiqdi. Qaytadan ishga tushirilsinmi?</translation>
diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn index e4f8295a..b834023 100644 --- a/chrome/browser/BUILD.gn +++ b/chrome/browser/BUILD.gn
@@ -1218,6 +1218,10 @@ "policy/status_provider/status_provider_util.h", "policy/status_provider/user_cloud_policy_status_provider.cc", "policy/status_provider/user_cloud_policy_status_provider.h", + "policy/value_provider/policy_value_provider.cc", + "policy/value_provider/policy_value_provider.h", + "policy/value_provider/value_provider_util.cc", + "policy/value_provider/value_provider_util.h", "policy/webusb_allow_devices_for_urls_policy_handler.cc", "policy/webusb_allow_devices_for_urls_policy_handler.h", "predictors/autocomplete_action_predictor.cc", @@ -2672,6 +2676,8 @@ "android/flags/bad_flags_snackbar_manager.h", "android/foreign_session_helper.cc", "android/foreign_session_helper.h", + "android/framebust_intervention/framebust_blocked_delegate_android.cc", + "android/framebust_intervention/framebust_blocked_delegate_android.h", "android/historical_tab_saver.cc", "android/historical_tab_saver.h", "android/history/browsing_history_bridge.cc", @@ -3202,6 +3208,10 @@ "search_engines/template_url_service_factory_android.cc", "search_engines/ui_thread_search_terms_data_android.cc", "search_engines/ui_thread_search_terms_data_android.h", + "search_resumption/search_resumption_module_bridge.cc", + "search_resumption/search_resumption_module_bridge.h", + "search_resumption/start_suggest_service_factory.cc", + "search_resumption/start_suggest_service_factory.h", "segmentation_platform/android/contextual_page_action_controller_android.cc", "segmentation_platform/android/segmentation_platform_service_factory_android.cc", "segmentation_platform/default_model/chrome_start_model_android.cc", @@ -3316,6 +3326,7 @@ "//chrome/browser/reading_list/android", "//chrome/browser/safe_browsing/android:safe_browsing_enums", "//chrome/browser/safety_check/android", + "//chrome/browser/search_resumption:jni_headers", "//chrome/browser/share/android:jni_headers", "//chrome/browser/share/core/crow:crow_configuration", "//chrome/browser/signin/services/android:jni_headers", @@ -3404,6 +3415,7 @@ "//components/resources:android_resources", "//components/resources:components_resources", "//components/safe_browsing/core/browser/password_protection:password_protection_metrics_util", + "//components/search:start_suggest", "//components/security_state/content/android", "//components/send_tab_to_self", "//components/signin/internal/identity_manager", # cf android/signin/DEPS @@ -3973,6 +3985,8 @@ "new_tab_page/modules/task_module/task_module_service_factory.h", "new_tab_page/modules/task_module/time_format_util.cc", "new_tab_page/modules/task_module/time_format_util.h", + "new_tab_page/new_tab_page_util.cc", + "new_tab_page/new_tab_page_util.h", "new_tab_page/one_google_bar/one_google_bar_data.cc", "new_tab_page/one_google_bar/one_google_bar_data.h", "new_tab_page/one_google_bar/one_google_bar_loader.h", @@ -6859,6 +6873,8 @@ "performance_manager/extension_watcher.h", "policy/chrome_extension_policy_migrator.cc", "policy/chrome_extension_policy_migrator.h", + "policy/value_provider/extension_policies_value_provider.cc", + "policy/value_provider/extension_policies_value_provider.h", "renderer_context_menu/context_menu_content_type_app_mode.cc", "renderer_context_menu/context_menu_content_type_app_mode.h", "renderer_context_menu/context_menu_content_type_extension_popup.cc",
diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc index c89d054..e83c29e5 100644 --- a/chrome/browser/about_flags.cc +++ b/chrome/browser/about_flags.cc
@@ -7103,14 +7103,22 @@ page_info::kPageInfoDiscoverability, kPageInfoDiscoverabilityTimeoutVariations, "kPageInfoDiscoverabilityTimeoutVariations")}, +#endif // BUILDFLAG(IS_ANDROID) +#if !BUILDFLAG(IS_ANDROID) + {"page-info-hide-site-settings", + flag_descriptions::kPageInfoHideSiteSettingsName, + flag_descriptions::kPageInfoHideSiteSettingsDescription, kOsDesktop, + FEATURE_VALUE_TYPE(page_info::kPageInfoHideSiteSettings)}, +#endif // !BUILDFLAG(IS_ANDROID) + +#if BUILDFLAG(IS_ANDROID) {"page-info-history", flag_descriptions::kPageInfoHistoryName, flag_descriptions::kPageInfoHistoryDescription, kOsAndroid, FEATURE_VALUE_TYPE(page_info::kPageInfoHistory)}, {"page-info-store-info", flag_descriptions::kPageInfoStoreInfoName, flag_descriptions::kPageInfoStoreInfoDescription, kOsAndroid, FEATURE_VALUE_TYPE(page_info::kPageInfoStoreInfo)}, - #endif // BUILDFLAG(IS_ANDROID) #if !BUILDFLAG(IS_ANDROID)
diff --git a/chrome/browser/android/framebust_intervention/framebust_blocked_delegate_android.cc b/chrome/browser/android/framebust_intervention/framebust_blocked_delegate_android.cc new file mode 100644 index 0000000..8463cbd6 --- /dev/null +++ b/chrome/browser/android/framebust_intervention/framebust_blocked_delegate_android.cc
@@ -0,0 +1,131 @@ +// Copyright 2022 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include "chrome/browser/android/framebust_intervention/framebust_blocked_delegate_android.h" + +#include "chrome/grit/generated_resources.h" +#include "components/blocked_content/android/popup_blocked_helper.h" +#include "components/content_settings/core/browser/host_content_settings_map.h" +#include "components/content_settings/core/common/content_settings.h" +#include "components/content_settings/core/common/content_settings_types.h" +#include "components/messages/android/message_dispatcher_bridge.h" +#include "components/prefs/pref_service.h" +#include "components/resources/android/theme_resources.h" +#include "components/strings/grit/components_strings.h" +#include "components/url_formatter/elide_url.h" +#include "ui/base/l10n/l10n_util.h" + +namespace blocked_content { + +bool FramebustBlockedMessageDelegate::ShowMessage( + const GURL& blocked_url, + HostContentSettingsMap* settings_map, + OutcomeCallback intervention_callback) { + if (message_ != nullptr) { // update description only + blocked_url_ = blocked_url; + message_->SetDescription(url_formatter::FormatUrlForSecurityDisplay( + blocked_url, url_formatter::SchemeDisplay::OMIT_CRYPTOGRAPHIC)); + return false; + } + + intervention_callback_ = std::move(intervention_callback); + url_ = GetWebContents().GetLastCommittedURL(); + blocked_url_ = blocked_url; + + // Unretained is safe because |this| will always outlive |message_| which owns + // the callback. + auto message = std::make_unique<messages::MessageWrapper>( + messages::MessageIdentifier::FRAMEBUST_BLOCKED, + base::BindOnce(&FramebustBlockedMessageDelegate::HandleClick, + base::Unretained(this)), + base::BindOnce(&FramebustBlockedMessageDelegate::HandleDismissCallback, + base::Unretained(this))); + + message->SetTitle(l10n_util::GetStringUTF16(IDS_REDIRECT_BLOCKED_TITLE)); + message->SetDescription(url_formatter::FormatUrlForSecurityDisplay( + blocked_url, url_formatter::SchemeDisplay::OMIT_CRYPTOGRAPHIC)); + + messages::MessageDispatcherBridge* message_dispatcher_bridge = + messages::MessageDispatcherBridge::Get(); + DCHECK(message_dispatcher_bridge->IsMessagesEnabledForEmbedder()); + + message->SetSecondaryIconResourceId( + message_dispatcher_bridge->MapToJavaDrawableId(IDR_ANDROID_SETTINGS)); + message->SetSecondaryButtonMenuText( + l10n_util::GetStringUTF16(IDS_OPEN_REDIRECT)); + message->SetSecondaryActionCallback( + base::BindRepeating(&FramebustBlockedMessageDelegate::HandleOpenLink, + base::Unretained(this))); + + settings_map_ = settings_map; + allow_settings_changes_ = !PopupSettingManagedByPolicy(settings_map_, url_); + + // Don't allow the user to configure the setting in the UI if the setting + // is managed by policy. + int button_text_id = + allow_settings_changes_ ? IDS_ALWAYS_ALLOW_REDIRECTS : IDS_OK; + message->SetPrimaryButtonText(l10n_util::GetStringUTF16(button_text_id)); + message->SetIconResourceId(message_dispatcher_bridge->MapToJavaDrawableId( + IDR_ANDROID_INFOBAR_BLOCKED_POPUPS)); + + // On rare occasions, such as the moment when activity is being recreated + // or destroyed, framebust blocked message will not be displayed and the + // method will return false. + if (!message_dispatcher_bridge->EnqueueMessage( + message.get(), &GetWebContents(), + messages::MessageScopeType::NAVIGATION, + messages::MessagePriority::kNormal)) { + return false; + } + + message_ = std::move(message); + return true; +} + +FramebustBlockedMessageDelegate::~FramebustBlockedMessageDelegate() { + if (message_ != nullptr) { + messages::MessageDispatcherBridge::Get()->DismissMessage( + message_.get(), messages::DismissReason::UNKNOWN); + } +} + +FramebustBlockedMessageDelegate::FramebustBlockedMessageDelegate( + content::WebContents* web_contents) + : content::WebContentsUserData<FramebustBlockedMessageDelegate>( + *web_contents) {} + +void FramebustBlockedMessageDelegate::HandleDismissCallback( + messages::DismissReason dismiss_reason) { + message_.reset(); + settings_map_ = nullptr; + + if (intervention_callback_) + std::move(intervention_callback_).Run(InterventionOutcome::kAccepted); +} + +void FramebustBlockedMessageDelegate::HandleClick() { + if (!allow_settings_changes_) { + return; + } + + // Create exceptions. The allow pop-ups setting also allows redirects. + settings_map_->SetNarrowestContentSetting( + url_, url_, ContentSettingsType::POPUPS, CONTENT_SETTING_ALLOW); + + HandleOpenLink(); +} + +void FramebustBlockedMessageDelegate::HandleOpenLink() { + GetWebContents().OpenURL(content::OpenURLParams( + blocked_url_, content::Referrer(), WindowOpenDisposition::CURRENT_TAB, + ui::PAGE_TRANSITION_LINK, false)); + + if (intervention_callback_) + std::move(intervention_callback_) + .Run(InterventionOutcome::kDeclinedAndNavigated); +} + +WEB_CONTENTS_USER_DATA_KEY_IMPL(FramebustBlockedMessageDelegate); + +} // namespace blocked_content
diff --git a/chrome/browser/android/framebust_intervention/framebust_blocked_delegate_android.h b/chrome/browser/android/framebust_intervention/framebust_blocked_delegate_android.h new file mode 100644 index 0000000..d18b05d --- /dev/null +++ b/chrome/browser/android/framebust_intervention/framebust_blocked_delegate_android.h
@@ -0,0 +1,72 @@ +// Copyright 2022 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#ifndef CHROME_BROWSER_ANDROID_FRAMEBUST_INTERVENTION_FRAMEBUST_BLOCKED_DELEGATE_ANDROID_H_ +#define CHROME_BROWSER_ANDROID_FRAMEBUST_INTERVENTION_FRAMEBUST_BLOCKED_DELEGATE_ANDROID_H_ + +#include <memory> + +#include "base/callback.h" +#include "base/memory/raw_ptr.h" +#include "components/messages/android/message_enums.h" +#include "components/messages/android/message_wrapper.h" +#include "content/public/browser/web_contents_user_data.h" +#include "url/gurl.h" + +class HostContentSettingsMap; + +namespace content { +class WebContents; +} // namespace content + +namespace blocked_content { + +// A framebust blocked delegate responsible for showing message bubbles. +// Created lazily when a framebust is first blocked, and matches the +// lifetime of WebContents afterwards. +class FramebustBlockedMessageDelegate + : public content::WebContentsUserData<FramebustBlockedMessageDelegate> { + public: + // Describes the actions the user can take regarding this intervention, they + // are provided through a callback the caller can pass to the delegate's + // constructor. + // This enum backs a histogram. Any updates should be reflected in enums.xml, + // and new elements should only be appended to the end. + enum class InterventionOutcome { + kAccepted = 0, + kDeclinedAndNavigated = 1, + kMaxValue = kDeclinedAndNavigated + }; + + typedef base::OnceCallback<void(InterventionOutcome)> OutcomeCallback; + + bool ShowMessage(const GURL& blocked_url, + HostContentSettingsMap* settings_map, + OutcomeCallback intervention_callback); + + ~FramebustBlockedMessageDelegate() override; + + messages::MessageWrapper* message_for_testing() { return message_.get(); } + + private: + friend class content::WebContentsUserData<FramebustBlockedMessageDelegate>; + + explicit FramebustBlockedMessageDelegate(content::WebContents* web_contents); + void HandleClick(); + void HandleDismissCallback(messages::DismissReason dismiss_reason); + void HandleOpenLink(); + + raw_ptr<HostContentSettingsMap> settings_map_ = nullptr; + + GURL url_; + bool allow_settings_changes_ = false; + OutcomeCallback intervention_callback_; + std::unique_ptr<messages::MessageWrapper> message_; + GURL blocked_url_; + WEB_CONTENTS_USER_DATA_KEY_DECL(); +}; + +} // namespace blocked_content + +#endif // CHROME_BROWSER_ANDROID_FRAMEBUST_INTERVENTION_FRAMEBUST_BLOCKED_DELEGATE_ANDROID_H_
diff --git a/chrome/browser/android/framebust_intervention/framebust_blocked_delegate_android_unittest.cc b/chrome/browser/android/framebust_intervention/framebust_blocked_delegate_android_unittest.cc new file mode 100644 index 0000000..2826253 --- /dev/null +++ b/chrome/browser/android/framebust_intervention/framebust_blocked_delegate_android_unittest.cc
@@ -0,0 +1,197 @@ +// Copyright 2022 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include "chrome/browser/android/framebust_intervention/framebust_blocked_delegate_android.h" + +#include "base/android/jni_android.h" +#include "base/memory/raw_ptr.h" +#include "base/test/bind.h" +#include "base/test/scoped_feature_list.h" +#include "chrome/grit/generated_resources.h" +#include "chrome/test/base/chrome_render_view_host_test_harness.h" +#include "components/blocked_content/popup_blocker_tab_helper.h" +#include "components/blocked_content/safe_browsing_triggered_popup_blocker.h" +#include "components/content_settings/browser/page_specific_content_settings.h" +#include "components/content_settings/browser/test_page_specific_content_settings_delegate.h" +#include "components/content_settings/core/browser/host_content_settings_map.h" +#include "components/messages/android/mock_message_dispatcher_bridge.h" +#include "components/strings/grit/components_strings.h" +#include "components/sync_preferences/testing_pref_service_syncable.h" +#include "components/url_formatter/elide_url.h" +#include "content/public/test/test_renderer_host.h" +#include "testing/gmock/include/gmock/gmock.h" +#include "testing/gtest/include/gtest/gtest.h" +#include "ui/base/l10n/l10n_util.h" +#include "url/gurl.h" + +namespace blocked_content { +namespace { +constexpr char kPageUrl[] = "http://example_page.test"; +} // namespace + +class FramebustBlockedMessageDelegateTest + : public ChromeRenderViewHostTestHarness { + public: + FramebustBlockedMessageDelegateTest() = default; + ~FramebustBlockedMessageDelegateTest() override; + + // ChromeRenderViewHostTestHarness: + void SetUp() override; + void TearDown() override; + + HostContentSettingsMap* settings_map() { return settings_map_.get(); } + + bool EnqueueMessage(GURL url); + + messages::MessageWrapper* GetMessageWrapper(); + void TriggerMessageDismissedCallback(messages::DismissReason dismiss_reason); + void TriggerActionClick(); + void TriggerSecondaryActionClick(); + + FramebustBlockedMessageDelegate* GetDelegate() { + return framebust_blocked_message_delegate_; + } + + private: + base::test::ScopedFeatureList feature_list_; + sync_preferences::TestingPrefServiceSyncable pref_service_; + scoped_refptr<HostContentSettingsMap> settings_map_; + messages::MockMessageDispatcherBridge message_dispatcher_bridge_; + raw_ptr<FramebustBlockedMessageDelegate> framebust_blocked_message_delegate_; +}; + +FramebustBlockedMessageDelegateTest::~FramebustBlockedMessageDelegateTest() { + settings_map_->ShutdownOnUIThread(); +} + +void FramebustBlockedMessageDelegateTest::SetUp() { + content::RenderViewHostTestHarness::SetUp(); + + // Make sure the SafeBrowsingTriggeredPopupBlocker is not created. + feature_list_.InitAndDisableFeature(kAbusiveExperienceEnforce); + + HostContentSettingsMap::RegisterProfilePrefs(pref_service_.registry()); + settings_map_ = base::MakeRefCounted<HostContentSettingsMap>( + &pref_service_, false /* is_off_the_record */, + false /* store_last_modified */, false /* restore_session*/); + content_settings::PageSpecificContentSettings::CreateForWebContents( + web_contents(), + std::make_unique< + content_settings::TestPageSpecificContentSettingsDelegate>( + /*prefs=*/nullptr, settings_map_.get())); + + PopupBlockerTabHelper::CreateForWebContents(web_contents()); + + FramebustBlockedMessageDelegate::CreateForWebContents(web_contents()); + framebust_blocked_message_delegate_ = + FramebustBlockedMessageDelegate::FromWebContents(web_contents()); + NavigateAndCommit(GURL(kPageUrl)); + message_dispatcher_bridge_.SetMessagesEnabledForEmbedder(true); + messages::MessageDispatcherBridge::SetInstanceForTesting( + &message_dispatcher_bridge_); +} + +void FramebustBlockedMessageDelegateTest::TearDown() { + messages::MessageDispatcherBridge::SetInstanceForTesting(nullptr); + ChromeRenderViewHostTestHarness::TearDown(); +} + +messages::MessageWrapper* +FramebustBlockedMessageDelegateTest::GetMessageWrapper() { + return framebust_blocked_message_delegate_->message_for_testing(); +} + +bool FramebustBlockedMessageDelegateTest::EnqueueMessage(GURL url) { + EXPECT_CALL(message_dispatcher_bridge_, EnqueueMessage) + .WillOnce(testing::Return(true)); + auto intervention_outcome = + [](FramebustBlockedMessageDelegate::InterventionOutcome outcome) {}; + return GetDelegate()->ShowMessage(url, settings_map(), + base::BindOnce(intervention_outcome)); +} + +void FramebustBlockedMessageDelegateTest::TriggerActionClick() { + GetMessageWrapper()->HandleActionClick(base::android::AttachCurrentThread()); +} + +void FramebustBlockedMessageDelegateTest::TriggerSecondaryActionClick() { + GetMessageWrapper()->HandleSecondaryActionClick( + base::android::AttachCurrentThread()); +} + +void FramebustBlockedMessageDelegateTest::TriggerMessageDismissedCallback( + messages::DismissReason dismiss_reason) { + GetMessageWrapper()->HandleDismissCallback( + base::android::AttachCurrentThread(), static_cast<int>(dismiss_reason)); + EXPECT_EQ(nullptr, GetMessageWrapper()); +} + +// Tests that message properties (title, description, icon, button text) are +// set correctly. +TEST_F(FramebustBlockedMessageDelegateTest, MessagePropertyValues) { + EnqueueMessage(GURL("a.test")); + EXPECT_EQ(l10n_util::GetStringUTF16(IDS_REDIRECT_BLOCKED_TITLE), + GetMessageWrapper()->GetTitle()); + EXPECT_EQ(l10n_util::GetStringUTF16(IDS_ALWAYS_ALLOW_REDIRECTS), + GetMessageWrapper()->GetPrimaryButtonText()); + EXPECT_EQ( + url_formatter::FormatUrlForSecurityDisplay( + GURL("a.test"), url_formatter::SchemeDisplay::OMIT_CRYPTOGRAPHIC), + GetMessageWrapper()->GetDescription()); + + // The description should be updated after ShowMessage is called with a + // new blocked URL. + // #EnqueueMessage ensure message is enqueued only once. + GetDelegate()->ShowMessage(GURL("b.test"), settings_map(), + base::NullCallback()); + EXPECT_EQ( + url_formatter::FormatUrlForSecurityDisplay( + GURL("b.test"), url_formatter::SchemeDisplay::OMIT_CRYPTOGRAPHIC), + GetMessageWrapper()->GetDescription()); + TriggerMessageDismissedCallback(messages::DismissReason::UNKNOWN); +} + +// Tests that the settings are properly updated when a user decides to always +// allow redirects on a page. +TEST_F(FramebustBlockedMessageDelegateTest, OverrideIntervention) { + EXPECT_EQ(settings_map()->GetContentSetting(GURL(kPageUrl), GURL(kPageUrl), + ContentSettingsType::POPUPS), + CONTENT_SETTING_BLOCK); + bool result = EnqueueMessage(GURL("a.test")); + EXPECT_TRUE(result); + TriggerActionClick(); + EXPECT_EQ(settings_map()->GetContentSetting(GURL(kPageUrl), GURL(kPageUrl), + ContentSettingsType::POPUPS), + CONTENT_SETTING_ALLOW); +} + +// Tests that the settings are not updated when a user dismisses a redirect +// blocked message. +TEST_F(FramebustBlockedMessageDelegateTest, AcceptIntervention) { + EXPECT_EQ(settings_map()->GetContentSetting(GURL(kPageUrl), GURL(kPageUrl), + ContentSettingsType::POPUPS), + CONTENT_SETTING_BLOCK); + bool result = EnqueueMessage(GURL("a.test")); + EXPECT_TRUE(result); + TriggerMessageDismissedCallback(messages::DismissReason::GESTURE); + EXPECT_EQ(settings_map()->GetContentSetting(GURL(kPageUrl), GURL(kPageUrl), + ContentSettingsType::POPUPS), + CONTENT_SETTING_BLOCK); +} + +// Tests that the settings are not updated when a user allows a redirect +// once. +TEST_F(FramebustBlockedMessageDelegateTest, AllowOnce) { + EXPECT_EQ(settings_map()->GetContentSetting(GURL(kPageUrl), GURL(kPageUrl), + ContentSettingsType::POPUPS), + CONTENT_SETTING_BLOCK); + bool result = EnqueueMessage(GURL("a.test")); + EXPECT_TRUE(result); + TriggerSecondaryActionClick(); + EXPECT_EQ(settings_map()->GetContentSetting(GURL(kPageUrl), GURL(kPageUrl), + ContentSettingsType::POPUPS), + CONTENT_SETTING_BLOCK); +} + +} // namespace blocked_content
diff --git a/chrome/browser/android/tab_web_contents_delegate_android.cc b/chrome/browser/android/tab_web_contents_delegate_android.cc index 58de298a..b6372c1 100644 --- a/chrome/browser/android/tab_web_contents_delegate_android.cc +++ b/chrome/browser/android/tab_web_contents_delegate_android.cc
@@ -19,6 +19,7 @@ #include "base/rand_util.h" #include "chrome/android/chrome_jni_headers/TabWebContentsDelegateAndroidImpl_jni.h" #include "chrome/browser/android/customtabs/client_data_header_web_contents_observer.h" +#include "chrome/browser/android/framebust_intervention/framebust_blocked_delegate_android.h" #include "chrome/browser/android/hung_renderer_infobar_delegate.h" #include "chrome/browser/android/tab_android.h" #include "chrome/browser/browser_process.h" @@ -37,12 +38,10 @@ #include "chrome/browser/profiles/profile.h" #include "chrome/browser/safe_browsing/safe_browsing_navigation_observer_manager_factory.h" #include "chrome/browser/safe_browsing/safe_browsing_service.h" -#include "chrome/browser/ui/android/infobars/framebust_block_infobar.h" #include "chrome/browser/ui/android/tab_model/tab_model_list.h" #include "chrome/browser/ui/autofill/chrome_autofill_client.h" #include "chrome/browser/ui/blocked_content/chrome_popup_navigation_delegate.h" #include "chrome/browser/ui/browser_navigator_params.h" -#include "chrome/browser/ui/interventions/framebust_block_message_delegate.h" #include "chrome/browser/ui/prefs/prefs_tab_helper.h" #include "chrome/browser/ui/tab_helpers.h" #include "chrome/browser/vr/vr_tab_helper.h" @@ -122,17 +121,25 @@ return nullptr; } -void ShowFramebustBlockInfobarInternal(content::WebContents* web_contents, +void ShowFramebustBlockMessageInternal(content::WebContents* web_contents, const GURL& url) { auto intervention_outcome = - [](FramebustBlockMessageDelegate::InterventionOutcome outcome) { + [](blocked_content::FramebustBlockedMessageDelegate::InterventionOutcome + outcome) { UMA_HISTOGRAM_ENUMERATION("WebCore.Framebust.InterventionOutcome", outcome); }; - FramebustBlockInfoBar::Show( - web_contents, - std::make_unique<FramebustBlockMessageDelegate>( - web_contents, url, base::BindOnce(intervention_outcome))); + blocked_content::FramebustBlockedMessageDelegate::CreateForWebContents( + web_contents); + blocked_content::FramebustBlockedMessageDelegate* + framebust_blocked_message_delegate = + blocked_content::FramebustBlockedMessageDelegate::FromWebContents( + web_contents); + framebust_blocked_message_delegate->ShowMessage( + url, + HostContentSettingsMapFactory::GetForProfile( + web_contents->GetBrowserContext()), + base::BindOnce(intervention_outcome)); } } // anonymous namespace @@ -429,7 +436,7 @@ const GURL& blocked_url, const GURL& initiator_url, blink::mojom::NavigationBlockedReason reason) { - ShowFramebustBlockInfobarInternal(web_contents, blocked_url); + ShowFramebustBlockMessageInternal(web_contents, blocked_url); } void TabWebContentsDelegateAndroid::UpdateUserGestureCarryoverInfo( @@ -667,5 +674,5 @@ GURL url(base::android::ConvertJavaStringToUTF16(env, java_url)); content::WebContents* web_contents = content::WebContents::FromJavaWebContents(java_web_contents); - ShowFramebustBlockInfobarInternal(web_contents, url); + ShowFramebustBlockMessageInternal(web_contents, url); }
diff --git a/chrome/browser/ash/BUILD.gn b/chrome/browser/ash/BUILD.gn index c4e3d3e8..3bfa9789 100644 --- a/chrome/browser/ash/BUILD.gn +++ b/chrome/browser/ash/BUILD.gn
@@ -1613,6 +1613,7 @@ "//chromeos/dbus/cryptohome:cryptohome_proto", "//chromeos/dbus/debug_daemon", "//chromeos/dbus/dlcservice", + "//chromeos/dbus/fwupd", "//chromeos/dbus/missive", "//chromeos/dbus/power", "//chromeos/dbus/power:power_manager_proto",
diff --git a/chrome/browser/ash/arc/input_overlay/actions/action.cc b/chrome/browser/ash/arc/input_overlay/actions/action.cc index 1d3f2345..2b8a7e4 100644 --- a/chrome/browser/ash/arc/input_overlay/actions/action.cc +++ b/chrome/browser/ash/arc/input_overlay/actions/action.cc
@@ -237,10 +237,15 @@ void Action::CancelPendingBind(const gfx::RectF& content_bounds) { if (!pending_binding_) return; + pending_binding_.reset(); + DCHECK(action_view_); if (!action_view_) return; action_view_->SetViewContent(BindingOption::kCurrent, content_bounds); +} + +void Action::ResetPendingBind() { pending_binding_.reset(); }
diff --git a/chrome/browser/ash/arc/input_overlay/actions/action.h b/chrome/browser/ash/arc/input_overlay/actions/action.h index 72c642b..ee6f2876 100644 --- a/chrome/browser/ash/arc/input_overlay/actions/action.h +++ b/chrome/browser/ash/arc/input_overlay/actions/action.h
@@ -94,6 +94,7 @@ void BindPending(); // Cancel |pending_binding_|. void CancelPendingBind(const gfx::RectF& content_bounds); + void ResetPendingBind(); // Restore the input binding back to the original binding. void RestoreToDefault(const gfx::RectF& content_bounds);
diff --git a/chrome/browser/ash/arc/input_overlay/touch_injector.cc b/chrome/browser/ash/arc/input_overlay/touch_injector.cc index 88035ae..7dc4d68 100644 --- a/chrome/browser/ash/arc/input_overlay/touch_injector.cc +++ b/chrome/browser/ash/arc/input_overlay/touch_injector.cc
@@ -177,6 +177,9 @@ return; DispatchTouchCancelEvent(); observation_.Reset(); + // Need reset pending input bind if it is unregistered in edit mode. + for (auto& action : actions_) + action->ResetPendingBind(); } void TouchInjector::Update() {
diff --git a/chrome/browser/ash/chrome_browser_main_parts_ash.cc b/chrome/browser/ash/chrome_browser_main_parts_ash.cc index c1bdbf1..cdc91ccb 100644 --- a/chrome/browser/ash/chrome_browser_main_parts_ash.cc +++ b/chrome/browser/ash/chrome_browser_main_parts_ash.cc
@@ -214,6 +214,7 @@ #include "chromeos/components/sensors/ash/sensor_hal_dispatcher.h" #include "chromeos/dbus/constants/cryptohome_key_delegate_constants.h" #include "chromeos/dbus/dbus_thread_manager.h" +#include "chromeos/dbus/debug_daemon/debug_daemon_client.h" #include "chromeos/dbus/power/fake_power_manager_client.h" #include "chromeos/dbus/power/power_manager_client.h" #include "chromeos/dbus/power/power_policy_controller.h" @@ -804,8 +805,8 @@ SystemProxyManager::Initialize(g_browser_process->local_state()); - debugd_notification_handler_ = std::make_unique<DebugdNotificationHandler>( - DBusThreadManager::Get()->GetDebugDaemonClient()); + debugd_notification_handler_ = + std::make_unique<DebugdNotificationHandler>(DebugDaemonClient::Get()); return ChromeBrowserMainPartsLinux::PreMainMessageLoopRun(); }
diff --git a/chrome/browser/ash/crostini/crostini_installer_unittest.cc b/chrome/browser/ash/crostini/crostini_installer_unittest.cc index b046461c..93b467d 100644 --- a/chrome/browser/ash/crostini/crostini_installer_unittest.cc +++ b/chrome/browser/ash/crostini/crostini_installer_unittest.cc
@@ -29,6 +29,7 @@ #include "chromeos/ash/components/dbus/concierge/fake_concierge_client.h" #include "chromeos/ash/components/dbus/seneschal/seneschal_client.h" #include "chromeos/dbus/dbus_thread_manager.h" +#include "chromeos/dbus/debug_daemon/debug_daemon_client.h" #include "chromeos/dbus/dlcservice/dlcservice_client.h" #include "content/public/test/browser_task_environment.h" #include "testing/gmock/include/gmock/gmock.h" @@ -119,6 +120,7 @@ chromeos::DBusThreadManager::Initialize(); ash::ChunneldClient::InitializeFake(); ash::CiceroneClient::InitializeFake(); + chromeos::DebugDaemonClient::InitializeFake(); SetOSRelease(); waiting_fake_concierge_client_ = new WaitingFakeConciergeClient(ash::FakeCiceroneClient::Get()); @@ -153,6 +155,7 @@ ash::disks::MockDiskMountManager::Shutdown(); ash::SeneschalClient::Shutdown(); + chromeos::DebugDaemonClient::Shutdown(); ash::ConciergeClient::Shutdown(); ash::CiceroneClient::Shutdown(); ash::ChunneldClient::Shutdown();
diff --git a/chrome/browser/ash/crostini/crostini_manager_unittest.cc b/chrome/browser/ash/crostini/crostini_manager_unittest.cc index ab51664..faabb72 100644 --- a/chrome/browser/ash/crostini/crostini_manager_unittest.cc +++ b/chrome/browser/ash/crostini/crostini_manager_unittest.cc
@@ -49,6 +49,7 @@ #include "chromeos/ash/components/dbus/session_manager/fake_session_manager_client.h" #include "chromeos/ash/components/dbus/userdataauth/fake_cryptohome_misc_client.h" #include "chromeos/dbus/dbus_thread_manager.h" +#include "chromeos/dbus/debug_daemon/debug_daemon_client.h" #include "chromeos/dbus/dlcservice/dlcservice_client.h" #include "components/account_id/account_id.h" #include "components/policy/proto/chrome_device_policy.pb.h" @@ -197,6 +198,7 @@ ash::ChunneldClient::InitializeFake(); ash::CiceroneClient::InitializeFake(); ash::ConciergeClient::InitializeFake(); + chromeos::DebugDaemonClient::InitializeFake(); ash::SeneschalClient::InitializeFake(); fake_cicerone_client_ = ash::FakeCiceroneClient::Get(); fake_concierge_client_ = ash::FakeConciergeClient::Get(); @@ -211,6 +213,7 @@ ~CrostiniManagerTest() override { ash::AnomalyDetectorClient::Shutdown(); ash::SeneschalClient::Shutdown(); + chromeos::DebugDaemonClient::Shutdown(); ash::ConciergeClient::Shutdown(); ash::CiceroneClient::Shutdown(); ash::ChunneldClient::Shutdown();
diff --git a/chrome/browser/ash/crostini/crostini_util_unittest.cc b/chrome/browser/ash/crostini/crostini_util_unittest.cc index 47b5531..5aaf8c7 100644 --- a/chrome/browser/ash/crostini/crostini_util_unittest.cc +++ b/chrome/browser/ash/crostini/crostini_util_unittest.cc
@@ -21,6 +21,7 @@ #include "chromeos/ash/components/dbus/concierge/fake_concierge_client.h" #include "chromeos/ash/components/dbus/seneschal/seneschal_client.h" #include "chromeos/dbus/dbus_thread_manager.h" +#include "chromeos/dbus/debug_daemon/debug_daemon_client.h" #include "chromeos/dbus/dlcservice/dlcservice_client.h" #include "content/public/test/browser_task_environment.h" #include "testing/gtest/include/gtest/gtest.h" @@ -51,6 +52,7 @@ ash::ChunneldClient::InitializeFake(); ash::CiceroneClient::InitializeFake(); ash::ConciergeClient::InitializeFake(); + chromeos::DebugDaemonClient::InitializeFake(); ash::SeneschalClient::InitializeFake(); fake_concierge_client_ = ash::FakeConciergeClient::Get(); @@ -58,6 +60,7 @@ ~CrostiniUtilTest() override { ash::SeneschalClient::Shutdown(); + chromeos::DebugDaemonClient::Shutdown(); ash::ConciergeClient::Shutdown(); ash::CiceroneClient::Shutdown(); ash::ChunneldClient::Shutdown();
diff --git a/chrome/browser/ash/dbus/ash_dbus_helper.cc b/chrome/browser/ash/dbus/ash_dbus_helper.cc index f5b295d2..2611392 100644 --- a/chrome/browser/ash/dbus/ash_dbus_helper.cc +++ b/chrome/browser/ash/dbus/ash_dbus_helper.cc
@@ -74,8 +74,11 @@ #include "chromeos/ash/components/hibernate/buildflags.h" // ENABLE_HIBERNATE #include "chromeos/dbus/constants/dbus_paths.h" #include "chromeos/dbus/dbus_thread_manager.h" +#include "chromeos/dbus/debug_daemon/debug_daemon_client.h" #include "chromeos/dbus/dlcservice/dlcservice_client.h" #include "chromeos/dbus/dlp/dlp_client.h" +#include "chromeos/dbus/easy_unlock/easy_unlock_client.h" +#include "chromeos/dbus/fwupd/fwupd_client.h" #include "chromeos/dbus/init/initialize_dbus_client.h" #include "chromeos/dbus/machine_learning/machine_learning_client.h" #include "chromeos/dbus/missive/missive_client.h" @@ -152,10 +155,13 @@ InitializeDBusClient<CryptohomeMiscClient>(bus); InitializeDBusClient<CryptohomePkcs11Client>(bus); InitializeDBusClient<CupsProxyClient>(bus); + InitializeDBusClient<DebugDaemonClient>(bus); InitializeDBusClient<chromeos::DlcserviceClient>(bus); InitializeDBusClient<chromeos::DlpClient>(bus); + InitializeDBusClient<EasyUnlockClient>(bus); InitializeDBusClient<FederatedClient>(bus); InitializeDBusClient<FuseBoxReverseClient>(bus); + InitializeDBusClient<chromeos::FwupdClient>(bus); InitializeDBusClient<GnubbyClient>(bus); hermes_clients::Initialize(bus); #if BUILDFLAG(ENABLE_HIBERNATE) @@ -289,10 +295,13 @@ #endif hermes_clients::Shutdown(); GnubbyClient::Shutdown(); + chromeos::FwupdClient::Shutdown(); FuseBoxReverseClient::Shutdown(); FederatedClient::Shutdown(); + EasyUnlockClient::Shutdown(); chromeos::DlcserviceClient::Shutdown(); chromeos::DlpClient::Shutdown(); + DebugDaemonClient::Shutdown(); CupsProxyClient::Shutdown(); CryptohomePkcs11Client::Shutdown(); CryptohomeMiscClient::Shutdown();
diff --git a/chrome/browser/ash/file_manager/file_manager_browsertest.cc b/chrome/browser/ash/file_manager/file_manager_browsertest.cc index 234bb05..e852ffe 100644 --- a/chrome/browser/ash/file_manager/file_manager_browsertest.cc +++ b/chrome/browser/ash/file_manager/file_manager_browsertest.cc
@@ -2150,6 +2150,11 @@ .EnableWebDriveOffice() .EnableUploadOfficeToCloud() .FilesSwa(), + TestCase("uploadToDriveRequiresWebDriveOfficeEnabled") + .EnableUploadOfficeToCloud(), + TestCase("uploadToDriveRequiresWebDriveOfficeEnabled") + .EnableUploadOfficeToCloud() + .FilesSwa(), TestCase("openMultipleOfficeWordFromDrive").EnableWebDriveOffice(), TestCase("openMultipleOfficeWordFromDrive") .EnableWebDriveOffice()
diff --git a/chrome/browser/ash/file_manager/office_task_selection_helper.cc b/chrome/browser/ash/file_manager/office_task_selection_helper.cc index 2252e79..e8c8288 100644 --- a/chrome/browser/ash/file_manager/office_task_selection_helper.cc +++ b/chrome/browser/ash/file_manager/office_task_selection_helper.cc
@@ -67,6 +67,7 @@ // the entries are outside Drive, or the empty string if no candidate can be // set. Returns whether a candidate was found. bool OfficeTaskSelectionHelper::SetCandidateActionId() { + bool not_on_drive = false; for (const auto& entry : entries) { const std::string extension = base::FilePath(entry.path.Extension()).AsUTF8Unsafe(); @@ -88,11 +89,14 @@ DCHECK(candidate_office_action_id_.empty() || candidate_office_action_id_ == kActionIdUploadOfficeToDrive); candidate_office_action_id_ = kActionIdUploadOfficeToDrive; - // Record the "Not on Drive" Web Drive Office metric. - UMA_HISTOGRAM_ENUMERATION(kWebDriveOfficeMetricName, - WebDriveOfficeTaskResult::NOT_ON_DRIVE); + not_on_drive = true; } } + if (not_on_drive) { + // Record the "Not on Drive" Web Drive Office metric. + UMA_HISTOGRAM_ENUMERATION(kWebDriveOfficeMetricName, + WebDriveOfficeTaskResult::NOT_ON_DRIVE); + } return !candidate_office_action_id_.empty(); } @@ -105,22 +109,29 @@ return; } - // Remove Web Drive Office action if Web Drive Office is disabled. - if (IsCandidateWebDriveOffice() && - !ash::features::IsFilesWebDriveOfficeEnabled()) { - UMA_HISTOGRAM_ENUMERATION(kWebDriveOfficeMetricName, - WebDriveOfficeTaskResult::FLAG_DISABLED); + // If the Upload to Drive flag is disabled, invalidate Upload to Drive. + if (!ash::features::IsUploadOfficeToCloudEnabled() && + IsCandidateUploadOfficeToDrive()) { InvalidateCandidate(); EndAdjustTasks(); return; } - // Remove Upload to Drive action if its flag is disabled. - if (IsCandidateUploadOfficeToDrive() && - !ash::features::IsUploadOfficeToCloudEnabled()) { - InvalidateCandidate(); - EndAdjustTasks(); - return; + // If the Web Drive Office flag is disabled, invalidate Web Drive Office, and + // also Upload to Drive which is dependent on Web Drive Office. + if (!ash::features::IsFilesWebDriveOfficeEnabled()) { + if (IsCandidateWebDriveOffice()) { + UMA_HISTOGRAM_ENUMERATION(kWebDriveOfficeMetricName, + WebDriveOfficeTaskResult::FLAG_DISABLED); + InvalidateCandidate(); + EndAdjustTasks(); + return; + } + if (IsCandidateUploadOfficeToDrive()) { + InvalidateCandidate(); + EndAdjustTasks(); + return; + } } // Disable Office file handling if Drive is Offline.
diff --git a/chrome/browser/ash/guest_os/guest_os_share_path_unittest.cc b/chrome/browser/ash/guest_os/guest_os_share_path_unittest.cc index b55c751..df2b9d6 100644 --- a/chrome/browser/ash/guest_os/guest_os_share_path_unittest.cc +++ b/chrome/browser/ash/guest_os/guest_os_share_path_unittest.cc
@@ -42,6 +42,7 @@ #include "chromeos/ash/components/dbus/seneschal/seneschal_service.pb.h" #include "chromeos/ash/components/dbus/vm_plugin_dispatcher/vm_plugin_dispatcher_client.h" #include "chromeos/dbus/dbus_thread_manager.h" +#include "chromeos/dbus/debug_daemon/debug_daemon_client.h" #include "chromeos/dbus/dlcservice/dlcservice_client.h" #include "components/account_id/account_id.h" #include "components/drive/drive_pref_names.h" @@ -229,6 +230,7 @@ ash::ChunneldClient::InitializeFake(); ash::CiceroneClient::InitializeFake(); ash::ConciergeClient::InitializeFake(); + chromeos::DebugDaemonClient::InitializeFake(); ash::SeneschalClient::InitializeFake(); ash::VmPluginDispatcherClient::InitializeFake(); @@ -242,6 +244,7 @@ ~GuestOsSharePathTest() override { ash::VmPluginDispatcherClient::Shutdown(); ash::SeneschalClient::Shutdown(); + chromeos::DebugDaemonClient::Shutdown(); ash::ConciergeClient::Shutdown(); ash::CiceroneClient::Shutdown(); ash::ChunneldClient::Shutdown();
diff --git a/chrome/browser/ash/login/easy_unlock/easy_unlock_create_keys_operation.cc b/chrome/browser/ash/login/easy_unlock/easy_unlock_create_keys_operation.cc index 82986b4..1d3828d 100644 --- a/chrome/browser/ash/login/easy_unlock/easy_unlock_create_keys_operation.cc +++ b/chrome/browser/ash/login/easy_unlock/easy_unlock_create_keys_operation.cc
@@ -21,7 +21,6 @@ #include "chrome/browser/ash/login/easy_unlock/easy_unlock_key_manager.h" #include "chrome/browser/ash/login/easy_unlock/easy_unlock_types.h" #include "chromeos/ash/components/dbus/userdataauth/userdataauth_client.h" -#include "chromeos/dbus/dbus_thread_manager.h" #include "chromeos/dbus/easy_unlock/easy_unlock_client.h" #include "crypto/encryptor.h" #include "crypto/random.h" @@ -85,7 +84,6 @@ std::string ec_public_key_; std::string esk_; - // Owned by DBusThreadManager EasyUnlockClient* easy_unlock_client_; base::WeakPtrFactory<ChallengeCreator> weak_ptr_factory_{this}; @@ -102,7 +100,7 @@ tpm_pub_key_(tpm_pub_key), device_(device), callback_(std::move(callback)), - easy_unlock_client_(DBusThreadManager::Get()->GetEasyUnlockClient()) {} + easy_unlock_client_(EasyUnlockClient::Get()) {} EasyUnlockCreateKeysOperation::ChallengeCreator::~ChallengeCreator() {}
diff --git a/chrome/browser/ash/login/enable_debugging_browsertest.cc b/chrome/browser/ash/login/enable_debugging_browsertest.cc index 52dd144d..083e3f4 100644 --- a/chrome/browser/ash/login/enable_debugging_browsertest.cc +++ b/chrome/browser/ash/login/enable_debugging_browsertest.cc
@@ -29,6 +29,7 @@ #include "chromeos/ash/components/dbus/update_engine/fake_update_engine_client.h" #include "chromeos/dbus/constants/dbus_switches.h" #include "chromeos/dbus/dbus_thread_manager.h" +#include "chromeos/dbus/debug_daemon/debug_daemon_client.h" #include "chromeos/dbus/debug_daemon/fake_debug_daemon_client.h" #include "chromeos/dbus/power/fake_power_manager_client.h" #include "components/prefs/pref_service.h" @@ -187,12 +188,17 @@ // enable-debugging UI. command_line->AppendSwitch(switches::kDisableHIDDetectionOnOOBEForTesting); } - void SetUpInProcessBrowserTestFixture() override { - debug_daemon_client_ = new TestDebugDaemonClient; - chromeos::DBusThreadManager::GetSetterForTesting()->SetDebugDaemonClient( - std::unique_ptr<DebugDaemonClient>(debug_daemon_client_)); + void SetUpInProcessBrowserTestFixture() override { OobeBaseTest::SetUpInProcessBrowserTestFixture(); + debug_daemon_client_ = std::make_unique<TestDebugDaemonClient>(); + DebugDaemonClient::SetInstanceForTest(debug_daemon_client_.get()); + } + + void TearDownInProcessBrowserTestFixture() override { + DebugDaemonClient::SetInstanceForTest(nullptr); + debug_daemon_client_.reset(); + OobeBaseTest::TearDownInProcessBrowserTestFixture(); } void InvokeEnableDebuggingScreen() { @@ -234,7 +240,7 @@ test::OobeJS().ExpectVisiblePath(kPasswordNote); } - TestDebugDaemonClient* debug_daemon_client_ = nullptr; + std::unique_ptr<TestDebugDaemonClient> debug_daemon_client_; }; class EnableDebuggingDevTest : public EnableDebuggingTestBase { @@ -369,19 +375,11 @@ test::OobeJS().ExpectVisiblePath(kRemoveProtectionDialog); } -class EnableDebuggingNonDevTest : public EnableDebuggingTestBase { - public: - EnableDebuggingNonDevTest() = default; - - void SetUpInProcessBrowserTestFixture() override { - chromeos::DBusThreadManager::GetSetterForTesting()->SetDebugDaemonClient( - std::unique_ptr<DebugDaemonClient>(new FakeDebugDaemonClient)); - EnableDebuggingTestBase::SetUpInProcessBrowserTestFixture(); - } -}; +// Uses the base class setup, with a TestDebugDaemonClient. +using EnableDebuggingTest = EnableDebuggingTestBase; // Try to show enable debugging dialog, we should see error screen here. -IN_PROC_BROWSER_TEST_F(EnableDebuggingNonDevTest, NoShowInNonDevMode) { +IN_PROC_BROWSER_TEST_F(EnableDebuggingTest, NoShowInNonDevMode) { test::OobeJS().ExpectHidden(kDebuggingScreenId); InvokeEnableDebuggingScreen(); test::OobeJS().CreateVisibilityWaiter(true, kErrorDialog)->Wait();
diff --git a/chrome/browser/ash/login/login_ui_browsertest.cc b/chrome/browser/ash/login/login_ui_browsertest.cc index 45152943..42bbab07 100644 --- a/chrome/browser/ash/login/login_ui_browsertest.cc +++ b/chrome/browser/ash/login/login_ui_browsertest.cc
@@ -39,6 +39,7 @@ #include "chromeos/ash/components/dbus/session_manager/fake_session_manager_client.h" #include "chromeos/dbus/dbus_thread_manager.h" #include "chromeos/dbus/debug_daemon/fake_debug_daemon_client.h" +#include "components/policy/core/common/cloud/cloud_policy_constants.h" #include "components/prefs/pref_service.h" #include "components/user_manager/known_user.h" #include "content/public/test/browser_test.h" @@ -533,18 +534,22 @@ }; void SetUpOnMainThread() override { - auto scoped_test_client = std::make_unique<TestDebugDaemonClient>(); - test_client_ = scoped_test_client.get(); + test_client_ = std::make_unique<TestDebugDaemonClient>(); test_client_->set_flags( GetParam() ? debugd::DevFeatureFlag::DEV_FEATURE_SSH_SERVER_CONFIGURED : debugd::DevFeatureFlag::DEV_FEATURES_DISABLED); - chromeos::DBusThreadManager::GetSetterForTesting()->SetDebugDaemonClient( - std::move(scoped_test_client)); + DebugDaemonClient::SetInstanceForTest(test_client_.get()); OobeBaseTest::SetUpOnMainThread(); } + void TearDownOnMainThread() override { + test_client_.reset(); + DebugDaemonClient::SetInstanceForTest(nullptr); + OobeBaseTest::TearDownOnMainThread(); + } + protected: - TestDebugDaemonClient* test_client_ = nullptr; + std::unique_ptr<TestDebugDaemonClient> test_client_; }; IN_PROC_BROWSER_TEST_P(SshWarningTest, VisibilityOnGaia) { @@ -580,9 +585,6 @@ namespace { -// This is the constant that exists on the server side. It corresponds to -// the type of enrollment license. -constexpr char kKioskSkuName[] = "GOOGLE.CHROME_KIOSK_ANNUAL"; // Names of policies. constexpr char kManagedGuestModeName[] = "MANAGED_GUEST_MODE"; constexpr char kAllowNewUsersName[] = "ALLOW_NEW_USERS"; @@ -641,7 +643,7 @@ IN_PROC_BROWSER_TEST_F(KioskSkuLoginScreenVisibilityTest, WithoutApps) { Shell::Get()->login_screen_controller()->ShowLoginScreen(); policy_helper()->device_policy()->policy_data().set_license_sku( - kKioskSkuName); + policy::kKioskSkuName); policy_helper()->RefreshPolicyAndWaitUntilDeviceCloudPolicyUpdated(); EXPECT_TRUE(LoginScreenTestApi::IsLoginShelfShown()); @@ -658,7 +660,7 @@ IN_PROC_BROWSER_TEST_F(KioskSkuLoginScreenVisibilityTest, WithApps) { Shell::Get()->login_screen_controller()->ShowLoginScreen(); policy_helper()->device_policy()->policy_data().set_license_sku( - kKioskSkuName); + policy::kKioskSkuName); KioskAppsMixin::AppendKioskAccount( &policy_helper()->device_policy()->payload()); policy_helper()->RefreshPolicyAndWaitUntilDeviceCloudPolicyUpdated(); @@ -676,7 +678,7 @@ IN_PROC_BROWSER_TEST_F(KioskSkuLoginScreenVisibilityTest, OpenKioskMenu) { Shell::Get()->login_screen_controller()->ShowLoginScreen(); policy_helper()->device_policy()->policy_data().set_license_sku( - kKioskSkuName); + policy::kKioskSkuName); KioskAppsMixin::AppendKioskAccount( &policy_helper()->device_policy()->payload()); policy_helper()->RefreshPolicyAndWaitUntilDeviceCloudPolicyUpdated(); @@ -702,7 +704,7 @@ TryDismissDefaultMessage) { Shell::Get()->login_screen_controller()->ShowLoginScreen(); policy_helper()->device_policy()->policy_data().set_license_sku( - kKioskSkuName); + policy::kKioskSkuName); policy_helper()->RefreshPolicyAndWaitUntilDeviceCloudPolicyUpdated(); EXPECT_TRUE(LoginScreenTestApi::IsLoginShelfShown()); @@ -752,7 +754,7 @@ IN_PROC_BROWSER_TEST_P(KioskSkuLoginScreenPolicyTest, EnabledPolicies) { Shell::Get()->login_screen_controller()->ShowLoginScreen(); policy_helper()->device_policy()->policy_data().set_license_sku( - kKioskSkuName); + policy::kKioskSkuName); EnablePolicy(); policy_helper()->RefreshPolicyAndWaitUntilDeviceCloudPolicyUpdated();
diff --git a/chrome/browser/ash/login/login_ui_shelf_visibility_browsertest.cc b/chrome/browser/ash/login/login_ui_shelf_visibility_browsertest.cc index 3ad4c0d..be17098 100644 --- a/chrome/browser/ash/login/login_ui_shelf_visibility_browsertest.cc +++ b/chrome/browser/ash/login/login_ui_shelf_visibility_browsertest.cc
@@ -22,6 +22,7 @@ #include "chrome/browser/ui/webui/chromeos/login/os_install_screen_handler.h" #include "chrome/browser/ui/webui/chromeos/login/sync_consent_screen_handler.h" #include "chrome/browser/ui/webui/chromeos/login/user_creation_screen_handler.h" +#include "components/policy/core/common/cloud/cloud_policy_constants.h" #include "components/policy/proto/device_management_backend.pb.h" #include "content/public/test/browser_test.h" #include "net/dns/mock_host_resolver.h" @@ -182,14 +183,6 @@ EXPECT_TRUE(LoginScreenTestApi::IsGuestButtonShown()); } -namespace { - -// This is the constant that exists on the server side. It corresponds to -// the type of enrollment license. -constexpr char kKioskSkuName[] = "GOOGLE.CHROME_KIOSK_ANNUAL"; - -} // namespace - class KioskSkuVisibilityTest : public LoginUIShelfVisibilityTest { public: KioskSkuVisibilityTest() { @@ -227,7 +220,7 @@ // instruction bubble is hidden too without kiosk apps. IN_PROC_BROWSER_TEST_F(KioskSkuVisibilityTest, WithoutApps) { policy_helper()->device_policy()->policy_data().set_license_sku( - kKioskSkuName); + policy::kKioskSkuName); policy_helper()->RefreshPolicyAndWaitUntilDeviceCloudPolicyUpdated(); EXPECT_TRUE(LoginScreenTestApi::IsLoginShelfShown()); @@ -240,7 +233,7 @@ // instruction bubble is shown with kiosk apps. IN_PROC_BROWSER_TEST_F(KioskSkuVisibilityTest, WithApps) { policy_helper()->device_policy()->policy_data().set_license_sku( - kKioskSkuName); + policy::kKioskSkuName); KioskAppsMixin::AppendKioskAccount( &policy_helper()->device_policy()->payload()); policy_helper()->RefreshPolicyAndWaitUntilDeviceCloudPolicyUpdated();
diff --git a/chrome/browser/ash/login/reporting/login_logout_reporter_browsertest.cc b/chrome/browser/ash/login/reporting/login_logout_reporter_browsertest.cc index 56b846a..84cf54c 100644 --- a/chrome/browser/ash/login/reporting/login_logout_reporter_browsertest.cc +++ b/chrome/browser/ash/login/reporting/login_logout_reporter_browsertest.cc
@@ -19,16 +19,24 @@ #include "chrome/browser/ash/login/test/fake_gaia_mixin.h" #include "chrome/browser/ash/login/test/login_manager_mixin.h" #include "chrome/browser/ash/login/test/session_manager_state_waiter.h" +#include "chrome/browser/ash/policy/core/browser_policy_connector_ash.h" +#include "chrome/browser/ash/policy/core/device_local_account.h" +#include "chrome/browser/ash/policy/core/device_local_account_policy_service.h" #include "chrome/browser/ash/policy/core/device_policy_cros_browser_test.h" #include "chrome/browser/ash/settings/scoped_testing_cros_settings.h" #include "chrome/browser/ash/settings/stub_cros_settings_provider.h" #include "chrome/browser/policy/messaging_layer/proto/synced/login_logout_event.pb.h" +#include "chrome/test/base/testing_browser_process.h" #include "chromeos/ash/components/dbus/session_manager/fake_session_manager_client.h" #include "chromeos/dbus/missive/missive_client.h" #include "chromeos/dbus/missive/missive_client_test_observer.h" #include "components/account_id/account_id.h" +#include "components/policy/core/common/cloud/cloud_policy_store.h" +#include "components/policy/proto/chrome_device_policy.pb.h" +#include "components/policy/proto/device_management_backend.pb.h" #include "components/reporting/proto/synced/record.pb.h" #include "components/reporting/proto/synced/record_constants.pb.h" +#include "components/user_manager/user_manager.h" #include "content/public/test/browser_test.h" #include "testing/gmock/include/gmock/gmock.h" #include "testing/gtest/include/gtest/gtest.h" @@ -36,28 +44,90 @@ using chromeos::MissiveClient; using chromeos::MissiveClientTestObserver; +using enterprise_management::ChromeDeviceSettingsProto; +using enterprise_management::DeviceLocalAccountInfoProto; using reporting::Destination; using reporting::Priority; using reporting::Record; using testing::Eq; +using testing::InvokeWithoutArgs; using testing::SizeIs; namespace ash::reporting { +namespace { + +constexpr char kPublicSessionUserEmail[] = "public_session_user@localhost"; + +Record GetNextLoginLogoutRecord(MissiveClientTestObserver* observer) { + std::tuple<Priority, Record> enqueued_record = + observer->GetNextEnqueuedRecord(); + Priority priority = std::get<0>(enqueued_record); + Record record = std::get<1>(enqueued_record); + + EXPECT_THAT(priority, Eq(Priority::SECURITY)); + return record; +} + +absl::optional<Record> MaybeGetEnqueudLoginLogoutRecord() { + const std::vector<Record>& records = + MissiveClient::Get()->GetTestInterface()->GetEnqueuedRecords( + Priority::SECURITY); + for (const Record& record : records) { + if (record.destination() == Destination::LOGIN_LOGOUT_EVENTS) { + return record; + } + } + return absl::nullopt; +} + +class PublicSessionUserCreationWaiter + : public user_manager::UserManager::Observer { + public: + PublicSessionUserCreationWaiter() = default; + + PublicSessionUserCreationWaiter(const PublicSessionUserCreationWaiter&) = + delete; + PublicSessionUserCreationWaiter& operator=( + const PublicSessionUserCreationWaiter&) = delete; + + ~PublicSessionUserCreationWaiter() override = default; + + void Wait(const AccountId& public_session_account_id) { + if (user_manager::UserManager::Get()->IsKnownUser( + public_session_account_id)) { + return; + } + + local_state_changed_run_loop_ = std::make_unique<base::RunLoop>(); + user_manager::UserManager::Get()->AddObserver(this); + local_state_changed_run_loop_->Run(); + user_manager::UserManager::Get()->RemoveObserver(this); + } + + // user_manager::UserManager::Observer: + void LocalStateChanged(user_manager::UserManager* user_manager) override { + local_state_changed_run_loop_->Quit(); + } + + private: + std::unique_ptr<base::RunLoop> local_state_changed_run_loop_; +}; class LoginLogoutReporterBrowserTest : public policy::DevicePolicyCrosBrowserTest { public: + LoginLogoutReporterBrowserTest(const LoginLogoutReporterBrowserTest&) = + delete; + LoginLogoutReporterBrowserTest& operator=( + const LoginLogoutReporterBrowserTest&) = delete; + + protected: LoginLogoutReporterBrowserTest() { login_manager_.set_session_restore_enabled(); scoped_testing_cros_settings_.device_settings()->SetBoolean( kReportDeviceLoginLogout, true); } - LoginLogoutReporterBrowserTest(const LoginLogoutReporterBrowserTest&) = - delete; - LoginLogoutReporterBrowserTest& operator=( - const LoginLogoutReporterBrowserTest&) = delete; - ~LoginLogoutReporterBrowserTest() override = default; void SetUpOnMainThread() override { @@ -85,29 +155,6 @@ /*check_if_submittable=*/true); } - protected: - Record GetNextLoginLogoutRecord(MissiveClientTestObserver* observer) { - std::tuple<Priority, Record> enqueued_record = - observer->GetNextEnqueuedRecord(); - Priority priority = std::get<0>(enqueued_record); - Record record = std::get<1>(enqueued_record); - - EXPECT_THAT(priority, Eq(Priority::SECURITY)); - return record; - } - - absl::optional<Record> MaybeGetEnqueudLoginLogoutRecord() { - const std::vector<Record>& records = - MissiveClient::Get()->GetTestInterface()->GetEnqueuedRecords( - Priority::SECURITY); - for (const Record& record : records) { - if (record.destination() == Destination::LOGIN_LOGOUT_EVENTS) { - return record; - } - } - return absl::nullopt; - } - const LoginManagerMixin::TestUserInfo test_user_{ AccountId::FromUserEmailGaiaId(FakeGaiaMixin::kFakeUserEmail, FakeGaiaMixin::kFakeUserGaiaId)}; @@ -200,4 +247,106 @@ EXPECT_FALSE(login_record_data.login_event().has_failure()); } +class LoginLogoutReporterPublicSessionBrowserTest + : public policy::DevicePolicyCrosBrowserTest { + public: + LoginLogoutReporterPublicSessionBrowserTest( + const LoginLogoutReporterPublicSessionBrowserTest&) = delete; + LoginLogoutReporterPublicSessionBrowserTest& operator=( + const LoginLogoutReporterPublicSessionBrowserTest&) = delete; + + protected: + LoginLogoutReporterPublicSessionBrowserTest() = default; + ~LoginLogoutReporterPublicSessionBrowserTest() override = default; + + void SetUpOnMainThread() override { + policy::DevicePolicyCrosBrowserTest::SetUpOnMainThread(); + + // Wait for the public session user to be created. + PublicSessionUserCreationWaiter public_session_waiter; + public_session_waiter.Wait(public_session_account_id_); + EXPECT_TRUE(user_manager::UserManager::Get()->IsKnownUser( + public_session_account_id_)); + + // Wait for the device local account policy to be installed. + policy::CloudPolicyStore* const store = + TestingBrowserProcess::GetGlobal() + ->platform_part() + ->browser_policy_connector_ash() + ->GetDeviceLocalAccountPolicyService() + ->GetBrokerForUser(public_session_account_id_.GetUserEmail()) + ->core() + ->store(); + if (!store->has_policy()) { + policy::MockCloudPolicyStoreObserver observer; + + base::RunLoop loop; + store->AddObserver(&observer); + EXPECT_CALL(observer, OnStoreLoaded(store)) + .Times(1) + .WillOnce(InvokeWithoutArgs(&loop, &base::RunLoop::Quit)); + loop.Run(); + store->RemoveObserver(&observer); + } + } + + void SetUpInProcessBrowserTestFixture() override { + policy::DevicePolicyCrosBrowserTest::SetUpInProcessBrowserTestFixture(); + + // Setup the device policy. + ChromeDeviceSettingsProto& proto(device_policy()->payload()); + DeviceLocalAccountInfoProto* account = + proto.mutable_device_local_accounts()->add_account(); + account->set_account_id(kPublicSessionUserEmail); + account->set_type(DeviceLocalAccountInfoProto::ACCOUNT_TYPE_PUBLIC_SESSION); + // Enable login/logout reporting. + proto.mutable_device_reporting()->set_report_login_logout(true); + RefreshDevicePolicy(); + + // Setup the device local account policy. + policy::UserPolicyBuilder device_local_account_policy; + device_local_account_policy.policy_data().set_username( + kPublicSessionUserEmail); + device_local_account_policy.policy_data().set_policy_type( + policy::dm_protocol::kChromePublicAccountPolicyType); + device_local_account_policy.policy_data().set_settings_entity_id( + kPublicSessionUserEmail); + device_local_account_policy.Build(); + session_manager_client()->set_device_local_account_policy( + kPublicSessionUserEmail, device_local_account_policy.GetBlob()); + } + + const AccountId public_session_account_id_ = + AccountId::FromUserEmail(policy::GenerateDeviceLocalAccountUserId( + kPublicSessionUserEmail, + policy::DeviceLocalAccount::TYPE_PUBLIC_SESSION)); + + LoginManagerMixin login_manager_{&mixin_host_, {}}; +}; + +IN_PROC_BROWSER_TEST_F(LoginLogoutReporterPublicSessionBrowserTest, + LoginSuccessful) { + MissiveClientTestObserver observer(Destination::LOGIN_LOGOUT_EVENTS); + + ASSERT_TRUE( + LoginScreenTestApi::ExpandPublicSessionPod(public_session_account_id_)); + LoginScreenTestApi::ClickPublicExpandedSubmitButton(); + test::WaitForPrimaryUserSessionStart(); + base::RunLoop().RunUntilIdle(); + + user_manager::UserManager* user_manager = user_manager::UserManager::Get(); + ASSERT_TRUE(user_manager->IsLoggedInAsPublicAccount()); + + Record login_record = GetNextLoginLogoutRecord(&observer); + + LoginLogoutRecord login_record_data; + ASSERT_TRUE(login_record_data.ParseFromString(login_record.data())); + EXPECT_THAT(login_record_data.session_type(), + Eq(LoginLogoutSessionType::PUBLIC_ACCOUNT_SESSION)); + EXPECT_FALSE(login_record_data.has_affiliated_user()); + ASSERT_TRUE(login_record_data.has_login_event()); + EXPECT_FALSE(login_record_data.login_event().has_failure()); +} + +} // namespace } // namespace ash::reporting
diff --git a/chrome/browser/ash/login/screens/enable_debugging_screen.cc b/chrome/browser/ash/login/screens/enable_debugging_screen.cc index f79da6ef..4f5fa32 100644 --- a/chrome/browser/ash/login/screens/enable_debugging_screen.cc +++ b/chrome/browser/ash/login/screens/enable_debugging_screen.cc
@@ -14,7 +14,6 @@ #include "chrome/common/pref_names.h" #include "chrome/grit/generated_resources.h" #include "chromeos/ash/components/dbus/userdataauth/userdataauth_client.h" -#include "chromeos/dbus/dbus_thread_manager.h" #include "chromeos/dbus/debug_daemon/debug_daemon_client.h" #include "chromeos/dbus/power/power_manager_client.h" #include "components/prefs/pref_service.h" @@ -95,9 +94,7 @@ void EnableDebuggingScreen::HandleRemoveRootFSProtection() { UpdateUIState(EnableDebuggingScreenView::UI_STATE_WAIT); - chromeos::DebugDaemonClient* client = - chromeos::DBusThreadManager::Get()->GetDebugDaemonClient(); - client->RemoveRootfsVerification( + DebugDaemonClient::Get()->RemoveRootfsVerification( base::BindOnce(&EnableDebuggingScreen::OnRemoveRootfsVerification, weak_ptr_factory_.GetWeakPtr())); } @@ -136,9 +133,7 @@ return; } - chromeos::DebugDaemonClient* client = - chromeos::DBusThreadManager::Get()->GetDebugDaemonClient(); - client->WaitForServiceToBeAvailable(base::BindOnce( + DebugDaemonClient::Get()->WaitForServiceToBeAvailable(base::BindOnce( &EnableDebuggingScreen::OnDebugDaemonServiceAvailabilityChecked, weak_ptr_factory_.GetWeakPtr())); } @@ -154,9 +149,7 @@ } // Check the status of debugging features. - chromeos::DebugDaemonClient* client = - chromeos::DBusThreadManager::Get()->GetDebugDaemonClient(); - client->QueryDebuggingFeatures( + DebugDaemonClient::Get()->QueryDebuggingFeatures( base::BindOnce(&EnableDebuggingScreen::OnQueryDebuggingFeatures, weak_ptr_factory_.GetWeakPtr())); } @@ -187,9 +180,7 @@ void EnableDebuggingScreen::HandleSetup(const std::string& password) { UpdateUIState(EnableDebuggingScreenView::UI_STATE_WAIT); - chromeos::DebugDaemonClient* client = - chromeos::DBusThreadManager::Get()->GetDebugDaemonClient(); - client->EnableDebuggingFeatures( + DebugDaemonClient::Get()->EnableDebuggingFeatures( password, base::BindOnce(&EnableDebuggingScreen::OnEnableDebuggingFeatures, weak_ptr_factory_.GetWeakPtr()));
diff --git a/chrome/browser/ash/net/network_health/network_health_service.cc b/chrome/browser/ash/net/network_health/network_health_service.cc index f81389e..f26ded6 100644 --- a/chrome/browser/ash/net/network_health/network_health_service.cc +++ b/chrome/browser/ash/net/network_health/network_health_service.cc
@@ -7,7 +7,7 @@ #include "base/no_destructor.h" #include "chrome/browser/ash/net/network_diagnostics/network_diagnostics.h" #include "chrome/browser/ash/net/network_health/network_health.h" -#include "chromeos/dbus/dbus_thread_manager.h" +#include "chromeos/dbus/debug_daemon/debug_daemon_client.h" namespace ash { namespace network_health { @@ -19,7 +19,7 @@ network_health_ = std::make_unique<NetworkHealth>(); network_diagnostics_ = std::make_unique<network_diagnostics::NetworkDiagnostics>( - chromeos::DBusThreadManager::Get()->GetDebugDaemonClient()); + chromeos::DebugDaemonClient::Get()); } mojo::PendingRemote<mojom::NetworkHealthService>
diff --git a/chrome/browser/ash/plugin_vm/plugin_vm_installer_unittest.cc b/chrome/browser/ash/plugin_vm/plugin_vm_installer_unittest.cc index 311c750..f564a47 100644 --- a/chrome/browser/ash/plugin_vm/plugin_vm_installer_unittest.cc +++ b/chrome/browser/ash/plugin_vm/plugin_vm_installer_unittest.cc
@@ -30,6 +30,7 @@ #include "chromeos/ash/components/dbus/concierge/fake_concierge_client.h" #include "chromeos/ash/components/dbus/vm_plugin_dispatcher/vm_plugin_dispatcher_client.h" #include "chromeos/dbus/dbus_thread_manager.h" +#include "chromeos/dbus/debug_daemon/debug_daemon_client.h" #include "chromeos/dbus/dlcservice/fake_dlcservice_client.h" #include "components/account_id/account_id.h" #include "components/download/public/background_service/test/test_download_service.h" @@ -167,6 +168,7 @@ void SetUp() override { chromeos::DBusThreadManager::Initialize(); ash::ConciergeClient::InitializeFake(/*fake_cicerone_client=*/nullptr); + chromeos::DebugDaemonClient::InitializeFake(); ash::VmPluginDispatcherClient::InitializeFake(); ASSERT_TRUE(profiles_dir_.CreateUniqueTempDir()); @@ -200,6 +202,7 @@ observer_.reset(); ash::VmPluginDispatcherClient::Shutdown(); + chromeos::DebugDaemonClient::Shutdown(); ash::ConciergeClient::Shutdown(); chromeos::DBusThreadManager::Shutdown(); chromeos::DlcserviceClient::Shutdown();
diff --git a/chrome/browser/ash/plugin_vm/plugin_vm_manager_impl.cc b/chrome/browser/ash/plugin_vm/plugin_vm_manager_impl.cc index 5c028198..825da81 100644 --- a/chrome/browser/ash/plugin_vm/plugin_vm_manager_impl.cc +++ b/chrome/browser/ash/plugin_vm/plugin_vm_manager_impl.cc
@@ -22,7 +22,6 @@ #include "chrome/browser/ui/ash/shelf/shelf_spinner_item_controller.h" #include "chrome/browser/ui/simple_message_box.h" #include "chrome/grit/generated_resources.h" -#include "chromeos/dbus/dbus_thread_manager.h" #include "chromeos/dbus/debug_daemon/debug_daemon_client.h" #include "chromeos/dbus/dlcservice/dlcservice.pb.h" #include "components/keyed_service/content/browser_context_dependency_manager.h" @@ -146,9 +145,8 @@ if (reply.has_value()) { LOG(ERROR) << "New session has dispatcher unexpected already " "running. Perhaps Chrome crashed?"; - chromeos::DBusThreadManager::Get() - ->GetDebugDaemonClient() - ->StopPluginVmDispatcher(base::BindOnce([](bool success) { + chromeos::DebugDaemonClient::Get()->StopPluginVmDispatcher( + base::BindOnce([](bool success) { if (!success) { LOG(ERROR) << "Failed to stop the dispatcher"; } @@ -393,11 +391,9 @@ void PluginVmManagerImpl::StartDispatcher( base::OnceCallback<void(bool)> callback) const { LOG_FUNCTION_CALL(); - chromeos::DBusThreadManager::Get() - ->GetDebugDaemonClient() - ->StartPluginVmDispatcher(owner_id_, - g_browser_process->GetApplicationLocale(), - std::move(callback)); + chromeos::DebugDaemonClient::Get()->StartPluginVmDispatcher( + owner_id_, g_browser_process->GetApplicationLocale(), + std::move(callback)); } vm_tools::plugin_dispatcher::VmState PluginVmManagerImpl::vm_state() const {
diff --git a/chrome/browser/ash/plugin_vm/plugin_vm_manager_impl_unittest.cc b/chrome/browser/ash/plugin_vm/plugin_vm_manager_impl_unittest.cc index 87e52c7..617e5ed 100644 --- a/chrome/browser/ash/plugin_vm/plugin_vm_manager_impl_unittest.cc +++ b/chrome/browser/ash/plugin_vm/plugin_vm_manager_impl_unittest.cc
@@ -32,6 +32,7 @@ #include "chromeos/ash/components/dbus/vm_plugin_dispatcher/fake_vm_plugin_dispatcher_client.h" #include "chromeos/ash/components/dbus/vm_plugin_dispatcher/vm_plugin_dispatcher_client.h" #include "chromeos/dbus/dbus_thread_manager.h" +#include "chromeos/dbus/debug_daemon/debug_daemon_client.h" #include "chromeos/dbus/dlcservice/fake_dlcservice_client.h" #include "components/prefs/pref_service.h" #include "content/public/test/browser_task_environment.h" @@ -54,6 +55,7 @@ ash::ChunneldClient::InitializeFake(); ash::CiceroneClient::InitializeFake(); ash::ConciergeClient::InitializeFake(); + chromeos::DebugDaemonClient::InitializeFake(); ash::SeneschalClient::InitializeFake(); ash::VmPluginDispatcherClient::InitializeFake(); testing_profile_ = std::make_unique<TestingProfile>(); @@ -95,6 +97,7 @@ testing_profile_.reset(); ash::VmPluginDispatcherClient::Shutdown(); ash::SeneschalClient::Shutdown(); + chromeos::DebugDaemonClient::Shutdown(); ash::ConciergeClient::Shutdown(); ash::CiceroneClient::Shutdown(); ash::ChunneldClient::Shutdown();
diff --git a/chrome/browser/ash/policy/core/browser_policy_connector_ash.cc b/chrome/browser/ash/policy/core/browser_policy_connector_ash.cc index b4ec048d..231e5cc 100644 --- a/chrome/browser/ash/policy/core/browser_policy_connector_ash.cc +++ b/chrome/browser/ash/policy/core/browser_policy_connector_ash.cc
@@ -121,10 +121,6 @@ std::make_unique<ash::attestation::AttestationCAClient>()); } -// This is the constant that exists on the server side. It corresponds to -// the type of enrollment license. -constexpr char kKioskSkuName[] = "GOOGLE.CHROME_KIOSK_ANNUAL"; - } // namespace // static
diff --git a/chrome/browser/ash/printing/printer_configurer.cc b/chrome/browser/ash/printing/printer_configurer.cc index c0bc4b3..e787c9b 100644 --- a/chrome/browser/ash/printing/printer_configurer.cc +++ b/chrome/browser/ash/printing/printer_configurer.cc
@@ -24,7 +24,6 @@ #include "chrome/browser/component_updater/cros_component_installer_chromeos.h" #include "chrome/browser/profiles/profile.h" #include "chrome/common/webui_url_constants.h" -#include "chromeos/dbus/dbus_thread_manager.h" #include "chromeos/dbus/debug_daemon/debug_daemon_client.h" #include "chromeos/printing/ppd_provider.h" #include "chromeos/printing/printer_configuration.h" @@ -136,8 +135,7 @@ PRINTER_LOG(DEBUG) << printer.make_and_model() << " Attempting autoconf setup"; - auto* client = DBusThreadManager::Get()->GetDebugDaemonClient(); - client->CupsAddAutoConfiguredPrinter( + DebugDaemonClient::Get()->CupsAddAutoConfiguredPrinter( printer.id(), printer.uri().GetNormalized(true /*always_print_port*/), base::BindOnce(&PrinterConfigurerImpl::OnAddedPrinter, weak_factory_.GetWeakPtr(), printer, @@ -164,10 +162,8 @@ void AddPrinter(const Printer& printer, const std::string& ppd_contents, PrinterSetupCallback cb) { - auto* client = DBusThreadManager::Get()->GetDebugDaemonClient(); - PRINTER_LOG(EVENT) << printer.make_and_model() << " Manual printer setup"; - client->CupsAddManuallyConfiguredPrinter( + DebugDaemonClient::Get()->CupsAddManuallyConfiguredPrinter( printer.id(), printer.uri().GetNormalized(true /*always_print_port*/), ppd_contents, base::BindOnce(&PrinterConfigurerImpl::OnAddedPrinter,
diff --git a/chrome/browser/ash/system_logs/debug_daemon_log_source.cc b/chrome/browser/ash/system_logs/debug_daemon_log_source.cc index de892f9..d656b5d 100644 --- a/chrome/browser/ash/system_logs/debug_daemon_log_source.cc +++ b/chrome/browser/ash/system_logs/debug_daemon_log_source.cc
@@ -21,7 +21,6 @@ #include "base/task/thread_pool.h" #include "chrome/browser/ash/profiles/profile_helper.h" #include "chrome/common/chrome_switches.h" -#include "chromeos/dbus/dbus_thread_manager.h" #include "chromeos/dbus/debug_daemon/debug_daemon_client.h" #include "components/feedback/feedback_util.h" #include "components/user_manager/user.h" @@ -143,8 +142,7 @@ DCHECK(callback_.is_null()); callback_ = std::move(callback); - chromeos::DebugDaemonClient* client = - chromeos::DBusThreadManager::Get()->GetDebugDaemonClient(); + chromeos::DebugDaemonClient* client = chromeos::DebugDaemonClient::Get(); client->GetRoutes(true, // Numeric false, // No IPv6
diff --git a/chrome/browser/ash/system_logs/debug_log_writer.cc b/chrome/browser/ash/system_logs/debug_log_writer.cc index 4b66d5b..96a2049 100644 --- a/chrome/browser/ash/system_logs/debug_log_writer.cc +++ b/chrome/browser/ash/system_logs/debug_log_writer.cc
@@ -19,7 +19,6 @@ #include "base/task/sequenced_task_runner.h" #include "base/task/thread_pool.h" #include "chrome/common/logging_chrome.h" -#include "chromeos/dbus/dbus_thread_manager.h" #include "chromeos/dbus/debug_daemon/debug_daemon_client.h" #include "content/public/browser/browser_task_traits.h" #include "content/public/browser/browser_thread.h" @@ -77,7 +76,7 @@ << ", error: " << file->error_details(); return; } - chromeos::DBusThreadManager::Get()->GetDebugDaemonClient()->DumpDebugLogs( + chromeos::DebugDaemonClient::Get()->DumpDebugLogs( should_compress, file->GetPlatformFile(), base::BindOnce(&WriteDebugLogToFileCompleted, file_path, std::move(callback)));
diff --git a/chrome/browser/ash/system_logs/single_debug_daemon_log_source.cc b/chrome/browser/ash/system_logs/single_debug_daemon_log_source.cc index 262a227..a63932e 100644 --- a/chrome/browser/ash/system_logs/single_debug_daemon_log_source.cc +++ b/chrome/browser/ash/system_logs/single_debug_daemon_log_source.cc
@@ -7,7 +7,6 @@ #include <memory> #include "base/bind.h" -#include "chromeos/dbus/dbus_thread_manager.h" #include "chromeos/dbus/debug_daemon/debug_daemon_client.h" #include "content/public/browser/browser_thread.h" @@ -47,13 +46,11 @@ DCHECK_CURRENTLY_ON(content::BrowserThread::UI); DCHECK(!callback.is_null()); - chromeos::DebugDaemonClient* client = - chromeos::DBusThreadManager::Get()->GetDebugDaemonClient(); - - client->GetLog(source_name(), - base::BindOnce(&SingleDebugDaemonLogSource::OnFetchComplete, - weak_ptr_factory_.GetWeakPtr(), source_name(), - std::move(callback))); + chromeos::DebugDaemonClient::Get()->GetLog( + source_name(), + base::BindOnce(&SingleDebugDaemonLogSource::OnFetchComplete, + weak_ptr_factory_.GetWeakPtr(), source_name(), + std::move(callback))); } void SingleDebugDaemonLogSource::OnFetchComplete(
diff --git a/chrome/browser/ash/system_logs/single_debug_daemon_log_source_unittest.cc b/chrome/browser/ash/system_logs/single_debug_daemon_log_source_unittest.cc index bfbb1770..cf0a1942 100644 --- a/chrome/browser/ash/system_logs/single_debug_daemon_log_source_unittest.cc +++ b/chrome/browser/ash/system_logs/single_debug_daemon_log_source_unittest.cc
@@ -10,7 +10,7 @@ #include "base/bind.h" #include "base/run_loop.h" #include "chromeos/dbus/dbus_thread_manager.h" -#include "chromeos/dbus/debug_daemon/fake_debug_daemon_client.h" +#include "chromeos/dbus/debug_daemon/debug_daemon_client.h" #include "content/public/test/browser_task_environment.h" #include "testing/gtest/include/gtest/gtest.h" @@ -31,11 +31,13 @@ // Since no debug daemon will be available during a unit test, use // FakeDebugDaemonClient to provide dummy DebugDaemonClient functionality. chromeos::DBusThreadManager::Initialize(); - chromeos::DBusThreadManager::GetSetterForTesting()->SetDebugDaemonClient( - std::make_unique<chromeos::FakeDebugDaemonClient>()); + chromeos::DebugDaemonClient::InitializeFake(); } - void TearDown() override { chromeos::DBusThreadManager::Shutdown(); } + void TearDown() override { + chromeos::DebugDaemonClient::Shutdown(); + chromeos::DBusThreadManager::Shutdown(); + } protected: SysLogsSourceCallback fetch_callback() {
diff --git a/chrome/browser/ash/telemetry_extension/probe_service.cc b/chrome/browser/ash/telemetry_extension/probe_service.cc index 411b89c..7137839 100644 --- a/chrome/browser/ash/telemetry_extension/probe_service.cc +++ b/chrome/browser/ash/telemetry_extension/probe_service.cc
@@ -11,7 +11,6 @@ #include "chrome/browser/ash/telemetry_extension/probe_service_converters.h" #include "chromeos/ash/services/cros_healthd/public/cpp/service_connection.h" #include "chromeos/ash/services/cros_healthd/public/mojom/cros_healthd_probe.mojom.h" -#include "chromeos/dbus/dbus_thread_manager.h" #include "chromeos/dbus/debug_daemon/debug_daemon_client.h" #include "third_party/abseil-cpp/absl/types/optional.h" @@ -63,9 +62,7 @@ } void ProbeService::GetOemData(GetOemDataCallback callback) { - chromeos::DebugDaemonClient* debugd_client = - chromeos::DBusThreadManager::Get()->GetDebugDaemonClient(); - debugd_client->GetLog( + chromeos::DebugDaemonClient::Get()->GetLog( kOemDataLogName, base::BindOnce( [](GetOemDataCallback callback,
diff --git a/chrome/browser/ash/telemetry_extension/probe_service_unittest.cc b/chrome/browser/ash/telemetry_extension/probe_service_unittest.cc index 565a89b..2dbc2ba 100644 --- a/chrome/browser/ash/telemetry_extension/probe_service_unittest.cc +++ b/chrome/browser/ash/telemetry_extension/probe_service_unittest.cc
@@ -12,7 +12,7 @@ #include "base/test/task_environment.h" #include "chromeos/ash/services/cros_healthd/public/cpp/fake_cros_healthd.h" #include "chromeos/dbus/dbus_thread_manager.h" -#include "chromeos/dbus/debug_daemon/fake_debug_daemon_client.h" +#include "chromeos/dbus/debug_daemon/debug_daemon_client.h" #include "mojo/public/cpp/bindings/remote.h" #include "testing/gtest/include/gtest/gtest.h" @@ -25,18 +25,14 @@ class ProbeServiceTest : public testing::Test { public: void SetUp() override { - auto fake_debugd_client = std::make_unique<FakeDebugDaemonClient>(); - fake_debugd_client_ = fake_debugd_client.get(); - chromeos::DBusThreadManager::Initialize(); - chromeos::DBusThreadManager::GetSetterForTesting()->SetDebugDaemonClient( - std::move(fake_debugd_client)); - + chromeos::DebugDaemonClient::InitializeFake(); cros_healthd::FakeCrosHealthd::Initialize(); } void TearDown() override { cros_healthd::FakeCrosHealthd::Shutdown(); + chromeos::DebugDaemonClient::Shutdown(); chromeos::DBusThreadManager::Shutdown(); } @@ -44,10 +40,6 @@ return remote_probe_service_.get(); } - FakeDebugDaemonClient* fake_debugd_client() const { - return fake_debugd_client_; - } - private: base::test::TaskEnvironment task_environment_; @@ -55,8 +47,6 @@ std::unique_ptr<ash::health::mojom::ProbeService> probe_service_{ ProbeService::Factory::Create( remote_probe_service_.BindNewPipeAndPassReceiver())}; - - FakeDebugDaemonClient* fake_debugd_client_ = nullptr; }; // Tests that ProbeTelemetryInfo requests telemetry info in cros_healthd and
diff --git a/chrome/browser/ash/u2f_notification.cc b/chrome/browser/ash/u2f_notification.cc index f6c3a7e..785a9eb0 100644 --- a/chrome/browser/ash/u2f_notification.cc +++ b/chrome/browser/ash/u2f_notification.cc
@@ -21,7 +21,6 @@ #include "chrome/browser/ui/browser_navigator.h" #include "chrome/browser/ui/browser_navigator_params.h" #include "chrome/grit/generated_resources.h" -#include "chromeos/dbus/dbus_thread_manager.h" #include "chromeos/dbus/debug_daemon/debug_daemon_client.h" #include "components/policy/proto/chrome_device_policy.pb.h" #include "components/strings/grit/components_strings.h" @@ -50,7 +49,7 @@ U2FNotification::~U2FNotification() {} void U2FNotification::Check() { - DBusThreadManager::Get()->GetDebugDaemonClient()->GetU2fFlags(base::BindOnce( + DebugDaemonClient::Get()->GetU2fFlags(base::BindOnce( &U2FNotification::CheckStatus, weak_factory_.GetWeakPtr())); } @@ -145,14 +144,14 @@ } case ButtonIndex::kReset: { // Add the user_keys flag. - DBusThreadManager::Get()->GetDebugDaemonClient()->GetU2fFlags( + DebugDaemonClient::Get()->GetU2fFlags( base::BindOnce([](absl::optional<std::set<std::string>> flags) { if (!flags) { LOG(ERROR) << "Failed to get U2F flags."; return; } flags->insert(debugd::u2f_flags::kUserKeys); - DBusThreadManager::Get()->GetDebugDaemonClient()->SetU2fFlags( + DebugDaemonClient::Get()->SetU2fFlags( *flags, base::BindOnce([](bool result) { if (!result) { LOG(ERROR) << "Failed to set U2F flags.";
diff --git a/chrome/browser/browser_process_platform_part_ash.cc b/chrome/browser/browser_process_platform_part_ash.cc index 8e960564..4cca3e7a 100644 --- a/chrome/browser/browser_process_platform_part_ash.cc +++ b/chrome/browser/browser_process_platform_part_ash.cc
@@ -37,7 +37,7 @@ #include "chrome/browser/browser_process.h" #include "chrome/browser/component_updater/metadata_table_chromeos.h" #include "chrome/common/chrome_switches.h" -#include "chromeos/dbus/dbus_thread_manager.h" +#include "chromeos/dbus/debug_daemon/debug_daemon_client.h" #include "components/keep_alive_registry/keep_alive_types.h" #include "components/keep_alive_registry/scoped_keep_alive.h" #include "components/keyed_service/content/browser_context_keyed_service_shutdown_notifier_factory.h" @@ -161,8 +161,7 @@ DCHECK(!scheduler_configuration_manager_); scheduler_configuration_manager_ = std::make_unique<ash::SchedulerConfigurationManager>( - chromeos::DBusThreadManager::Get()->GetDebugDaemonClient(), - g_browser_process->local_state()); + chromeos::DebugDaemonClient::Get(), g_browser_process->local_state()); } void BrowserProcessPlatformPart::ShutdownSchedulerConfigurationManager() {
diff --git a/chrome/browser/chrome_browser_interface_binders.cc b/chrome/browser/chrome_browser_interface_binders.cc index 942a164..4ecf332 100644 --- a/chrome/browser/chrome_browser_interface_binders.cc +++ b/chrome/browser/chrome_browser_interface_binders.cc
@@ -142,6 +142,7 @@ #include "chrome/browser/new_tab_page/modules/feed/feed.mojom.h" #include "chrome/browser/new_tab_page/modules/photos/photos.mojom.h" #include "chrome/browser/new_tab_page/modules/task_module/task_module.mojom.h" +#include "chrome/browser/new_tab_page/new_tab_page_util.h" #include "chrome/browser/payments/payment_request_factory.h" #include "chrome/browser/ui/webui/access_code_cast/access_code_cast.mojom.h" #include "chrome/browser/ui/webui/access_code_cast/access_code_cast_ui.h" @@ -910,7 +911,7 @@ NewTabPageUI>(map); } - if (base::FeatureList::IsEnabled(ntp_features::kNtpRecipeTasksModule)) { + if (IsRecipeTasksModuleEnabled()) { RegisterWebUIControllerInterfaceBinder< task_module::mojom::TaskModuleHandler, NewTabPageUI>(map); }
diff --git a/chrome/browser/download/bubble/download_bubble_controller.cc b/chrome/browser/download/bubble/download_bubble_controller.cc index 8fe6e4e..4c70ae4 100644 --- a/chrome/browser/download/bubble/download_bubble_controller.cc +++ b/chrome/browser/download/bubble/download_bubble_controller.cc
@@ -114,10 +114,6 @@ DownloadBubbleUIController::~DownloadBubbleUIController() = default; -void DownloadBubbleUIController::HideDownloadUi() { - display_controller_->HideToolbarButton(); -} - bool DownloadBubbleUIController::MaybeAddOfflineItem(const OfflineItem& item, bool is_new) { if (profile_->IsOffTheRecord() != item.is_off_the_record)
diff --git a/chrome/browser/download/bubble/download_bubble_controller.h b/chrome/browser/download/bubble/download_bubble_controller.h index 1dec973..e563f747 100644 --- a/chrome/browser/download/bubble/download_bubble_controller.h +++ b/chrome/browser/download/bubble/download_bubble_controller.h
@@ -89,12 +89,6 @@ // on when the scheduled time arrives. void ScheduleCancelForEphemeralWarning(const std::string& guid); - // Force the controller to hide the download UI entirely, including the bubble - // and the toolbar icon. This function should only be called if the event is - // triggered outside of normal download events that are not listened by - // observers. - void HideDownloadUi(); - // Returns the DownloadDisplayController. Should always return a valid // controller. DownloadDisplayController* GetDownloadDisplayController() {
diff --git a/chrome/browser/download/bubble/download_bubble_prefs.cc b/chrome/browser/download/bubble/download_bubble_prefs.cc index e90d611..a6e56b7 100644 --- a/chrome/browser/download/bubble/download_bubble_prefs.cc +++ b/chrome/browser/download/bubble/download_bubble_prefs.cc
@@ -6,12 +6,13 @@ #include "base/feature_list.h" #include "build/chromeos_buildflags.h" -#include "chrome/browser/download/download_core_service.h" -#include "chrome/browser/download/download_core_service_factory.h" #include "chrome/browser/enterprise/connectors/connectors_service.h" +#include "chrome/browser/safe_browsing/advanced_protection_status_manager.h" +#include "chrome/browser/safe_browsing/advanced_protection_status_manager_factory.h" #include "chrome/common/pref_names.h" #include "components/prefs/pref_service.h" #include "components/safe_browsing/core/common/features.h" +#include "components/safe_browsing/core/common/safe_browsing_prefs.h" namespace download { @@ -43,14 +44,6 @@ base::FeatureList::IsEnabled(safe_browsing::kDownloadBubbleV2); } -bool ShouldShowDownloadBubble(Profile* profile) { - // If the download UI is disabled by at least one extension, do not show the - // bubble and the toolbar icon. - return DownloadCoreServiceFactory::GetForBrowserContext( - profile->GetOriginalProfile()) - ->IsDownloadUiEnabled(); -} - bool IsDownloadConnectorEnabled(Profile* profile) { auto* connector_service = enterprise_connectors::ConnectorsServiceFactory::GetForBrowserContext(
diff --git a/chrome/browser/download/bubble/download_bubble_prefs.h b/chrome/browser/download/bubble/download_bubble_prefs.h index 923bf5f..ff759be 100644 --- a/chrome/browser/download/bubble/download_bubble_prefs.h +++ b/chrome/browser/download/bubble/download_bubble_prefs.h
@@ -9,15 +9,11 @@ namespace download { -// Called when deciding whether to show the bubble or the old download shelf UI. bool IsDownloadBubbleEnabled(Profile* profile); // V2 is only eligible to be enabled if V1 is also enabled. bool IsDownloadBubbleV2Enabled(Profile* profile); -// Called when deciding whether to show or hide the bubble. -bool ShouldShowDownloadBubble(Profile* profile); - bool IsDownloadConnectorEnabled(Profile* profile); } // namespace download
diff --git a/chrome/browser/download/bubble/download_display_controller.cc b/chrome/browser/download/bubble/download_display_controller.cc index 8de8a39..8a25d6f 100644 --- a/chrome/browser/download/bubble/download_display_controller.cc +++ b/chrome/browser/download/bubble/download_display_controller.cc
@@ -7,7 +7,6 @@ #include "base/time/time.h" #include "base/timer/timer.h" #include "chrome/browser/download/bubble/download_bubble_controller.h" -#include "chrome/browser/download/bubble/download_bubble_prefs.h" #include "chrome/browser/download/bubble/download_display.h" #include "chrome/browser/download/bubble/download_icon_state.h" #include "chrome/browser/download/download_item_model.h" @@ -91,10 +90,6 @@ DownloadDisplayController::~DownloadDisplayController() = default; void DownloadDisplayController::OnNewItem(bool show_details) { - if (!download::ShouldShowDownloadBubble(browser_->profile())) { - return; - } - std::vector<std::unique_ptr<DownloadUIModel>> all_models = bubble_controller_->GetAllItemsToDisplay(); UpdateToolbarButtonState(all_models); @@ -114,9 +109,6 @@ void DownloadDisplayController::OnUpdatedItem(bool is_done, bool show_details_if_done) { - if (!download::ShouldShowDownloadBubble(browser_->profile())) { - return; - } if (is_done) { ScheduleToolbarDisappearance(kToolbarIconVisibilityTimeInterval); if (show_details_if_done) { @@ -133,9 +125,6 @@ } void DownloadDisplayController::OnRemovedItem(const ContentId& id) { - if (!download::ShouldShowDownloadBubble(browser_->profile())) { - return; - } std::vector<std::unique_ptr<DownloadUIModel>> all_models = bubble_controller_->GetAllItemsToDisplay(); // Hide the button if there is only one download item left and that item is @@ -270,9 +259,6 @@ } void DownloadDisplayController::MaybeShowButtonWhenCreated() { - if (!download::ShouldShowDownloadBubble(browser_->profile())) { - return; - } base::Time last_complete_time = GetLastCompleteTime(bubble_controller_->GetOfflineItems()); if (!HasRecentCompleteDownload(kToolbarIconVisibilityTimeInterval,
diff --git a/chrome/browser/download/bubble/download_display_controller.h b/chrome/browser/download/bubble/download_display_controller.h index 36ec649..0bc2e50 100644 --- a/chrome/browser/download/bubble/download_display_controller.h +++ b/chrome/browser/download/bubble/download_display_controller.h
@@ -82,9 +82,6 @@ // Called from bubble controller when an item is deleted. virtual void OnRemovedItem(const ContentId& id); - // Asks `display_` to hide the toolbar button. Does nothing if the toolbar - // button is already hidden. - void HideToolbarButton(); // Asks `display_` to hide the toolbar button details. Does nothing if the // details are already hidden. void HideBubble(); @@ -121,6 +118,9 @@ // Asks `display_` to show the toolbar button. Does nothing if the toolbar // button is already showing. void ShowToolbarButton(); + // Asks `display_` to hide the toolbar button. Does nothing if the toolbar + // button is already hidden. + void HideToolbarButton(); // Based on the information from `download_manager_`, updates the icon state // of the `display_`.
diff --git a/chrome/browser/download/chrome_download_manager_delegate.cc b/chrome/browser/download/chrome_download_manager_delegate.cc index 6f14a54..b517f633 100644 --- a/chrome/browser/download/chrome_download_manager_delegate.cc +++ b/chrome/browser/download/chrome_download_manager_delegate.cc
@@ -445,6 +445,10 @@ } void ChromeDownloadManagerDelegate::SetDownloadManager(DownloadManager* dm) { + if (download_manager_) { + download_manager_->RemoveObserver(this); + } + download_manager_ = dm; safe_browsing::SafeBrowsingService* sb_service = @@ -453,6 +457,10 @@ // Include this download manager in the set monitored by safe browsing. sb_service->AddDownloadManager(dm); } + + if (download_manager_) { + download_manager_->AddObserver(this); + } } #if BUILDFLAG(IS_ANDROID) @@ -480,7 +488,10 @@ void ChromeDownloadManagerDelegate::Shutdown() { download_prefs_.reset(); weak_ptr_factory_.InvalidateWeakPtrs(); - download_manager_ = nullptr; + if (download_manager_) { + download_manager_->RemoveObserver(this); + download_manager_ = nullptr; + } } content::DownloadIdCallback @@ -1797,6 +1808,12 @@ #endif // !BUILDFLAG(IS_WIN) } +void ChromeDownloadManagerDelegate::OnManagerInitialized() { +#if !BUILDFLAG(IS_ANDROID) + CancelAllEphemeralWarnings(); +#endif +} + #if !BUILDFLAG(IS_ANDROID) void ChromeDownloadManagerDelegate::ScheduleCancelForEphemeralWarning( const std::string& guid) { @@ -1821,4 +1838,16 @@ download->Cancel(/*user_cancel=*/false); } } + +void ChromeDownloadManagerDelegate::CancelAllEphemeralWarnings() { + content::DownloadManager::DownloadVector downloads; + download_manager_->GetAllDownloads(&downloads); + for (auto* download : downloads) { + auto model = std::make_unique<DownloadItemModel>(download); + if (model->IsEphemeralWarning() && + model->GetState() != download::DownloadItem::CANCELLED) { + download->Cancel(/*user_cancel=*/false); + } + } +} #endif // !BUILDFLAG(IS_ANDROID)
diff --git a/chrome/browser/download/chrome_download_manager_delegate.h b/chrome/browser/download/chrome_download_manager_delegate.h index a915ef5e..cf76ae3 100644 --- a/chrome/browser/download/chrome_download_manager_delegate.h +++ b/chrome/browser/download/chrome_download_manager_delegate.h
@@ -27,6 +27,7 @@ #include "components/download/public/common/download_item.h" #include "components/download/public/common/download_path_reservation_tracker.h" #include "components/safe_browsing/buildflags.h" +#include "content/public/browser/download_manager.h" #include "content/public/browser/download_manager_delegate.h" #include "content/public/browser/notification_observer.h" #include "content/public/browser/notification_registrar.h" @@ -53,7 +54,8 @@ class ChromeDownloadManagerDelegate : public content::DownloadManagerDelegate, public content::NotificationObserver, - public DownloadTargetDeterminerDelegate { + public DownloadTargetDeterminerDelegate, + public content::DownloadManager::Observer { public: explicit ChromeDownloadManagerDelegate(Profile* profile); @@ -246,12 +248,14 @@ // So that test classes that inherit from this for override purposes // can call back into the DownloadManager. - raw_ptr<content::DownloadManager> download_manager_; + raw_ptr<content::DownloadManager> download_manager_ = nullptr; private: friend class base::RefCountedThreadSafe<ChromeDownloadManagerDelegate>; FRIEND_TEST_ALL_PREFIXES(ChromeDownloadManagerDelegateTest, RequestConfirmation_Android); + FRIEND_TEST_ALL_PREFIXES(ChromeDownloadManagerDelegateTest, + CancelAllEphemeralWarnings); FRIEND_TEST_ALL_PREFIXES(DownloadLaterTriggerTest, DownloadLaterTrigger); using IdCallbackVector = std::vector<content::DownloadIdCallback>; @@ -305,8 +309,15 @@ // Cancels a download if it's still an ephemeral warning (and has not been // acted on by the user). void CancelForEphemeralWarning(const std::string& guid); + // If the browser doesn't shut down cleanly, there can be ephemeral warnings + // that were not cleaned up. This function cleans them up on startup, when the + // download manager is initialized. + void CancelAllEphemeralWarnings(); #endif + // content::DownloadManager::Observer + void OnManagerInitialized() override; + #if BUILDFLAG(IS_ANDROID) // Called after a unique file name is generated in the case that there is a // TARGET_CONFLICT and the new file name should be displayed to the user.
diff --git a/chrome/browser/download/chrome_download_manager_delegate_unittest.cc b/chrome/browser/download/chrome_download_manager_delegate_unittest.cc index af838e4..71c04433 100644 --- a/chrome/browser/download/chrome_download_manager_delegate_unittest.cc +++ b/chrome/browser/download/chrome_download_manager_delegate_unittest.cc
@@ -1328,7 +1328,8 @@ } #endif // BUILDFLAG(IS_ANDROID) -#if !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_CHROMEOS_ASH) +#if !BUILDFLAG(IS_ANDROID) +#if !BUILDFLAG(IS_CHROMEOS_ASH) TEST_F(ChromeDownloadManagerDelegateTest, ScheduleCancelForEphemeralWarning) { base::test::ScopedFeatureList feature_list; feature_list.InitWithFeatures( @@ -1367,7 +1368,44 @@ task_environment()->AdvanceClock(base::Hours(1)); base::RunLoop().RunUntilIdle(); } -#endif // !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_CHROMEOS_ASH) +#endif // !BUILDFLAG(IS_CHROMEOS_ASH) + +TEST_F(ChromeDownloadManagerDelegateTest, CancelAllEphemeralWarnings) { + base::test::ScopedFeatureList feature_list; + feature_list.InitWithFeatures( + {safe_browsing::kDownloadBubble, safe_browsing::kDownloadBubbleV2}, {}); + std::vector<download::DownloadItem*> items; + auto safe_item = CreateActiveDownloadItem(0); + EXPECT_CALL(*safe_item, GetDangerType()) + .WillRepeatedly(Return(download::DOWNLOAD_DANGER_TYPE_NOT_DANGEROUS)); + auto dangerous_item = CreateActiveDownloadItem(0); + EXPECT_CALL(*dangerous_item, GetDangerType()) + .WillRepeatedly(Return(download::DOWNLOAD_DANGER_TYPE_DANGEROUS_FILE)); + auto canceled_item = CreateActiveDownloadItem(0); + EXPECT_CALL(*canceled_item, GetDangerType()) + .WillRepeatedly(Return(download::DOWNLOAD_DANGER_TYPE_DANGEROUS_FILE)); + EXPECT_CALL(*canceled_item, GetState()) + .WillRepeatedly(Return(DownloadItem::CANCELLED)); + items.push_back(safe_item.get()); + items.push_back(dangerous_item.get()); + items.push_back(canceled_item.get()); + EXPECT_CALL(*download_manager(), GetAllDownloads(_)) + .WillRepeatedly(SetArgPointee<0>(items)); + +#if BUILDFLAG(IS_CHROMEOS_ASH) + // No cancels should go through for Ash. + EXPECT_CALL(*safe_item, Cancel(false)).Times(0); + EXPECT_CALL(*dangerous_item, Cancel(false)).Times(0); + EXPECT_CALL(*canceled_item, Cancel(false)).Times(0); +#else + EXPECT_CALL(*safe_item, Cancel(false)).Times(0); + EXPECT_CALL(*dangerous_item, Cancel(false)).Times(1); + EXPECT_CALL(*canceled_item, Cancel(false)).Times(0); +#endif + + delegate()->CancelAllEphemeralWarnings(); +} +#endif // !BUILDFLAG(IS_ANDROID) #if BUILDFLAG(FULL_SAFE_BROWSING) namespace {
diff --git a/chrome/browser/download/download_core_service.h b/chrome/browser/download/download_core_service.h index 79c2065..9453c04 100644 --- a/chrome/browser/download/download_core_service.h +++ b/chrome/browser/download/download_core_service.h
@@ -74,9 +74,9 @@ virtual void SetDownloadHistoryForTesting( std::unique_ptr<DownloadHistory> download_history) {} - // Returns false if at least one extension has disabled the UI, true + // Returns false if at least one extension has disabled the shelf, true // otherwise. - virtual bool IsDownloadUiEnabled() = 0; + virtual bool IsShelfEnabled() = 0; }; #endif // CHROME_BROWSER_DOWNLOAD_DOWNLOAD_CORE_SERVICE_H_
diff --git a/chrome/browser/download/download_core_service_impl.cc b/chrome/browser/download/download_core_service_impl.cc index 5cbb8bb..3eb0cc1 100644 --- a/chrome/browser/download/download_core_service_impl.cc +++ b/chrome/browser/download/download_core_service_impl.cc
@@ -149,11 +149,11 @@ download_history_ = std::move(download_history); } -bool DownloadCoreServiceImpl::IsDownloadUiEnabled() { +bool DownloadCoreServiceImpl::IsShelfEnabled() { #if BUILDFLAG(IS_ANDROID) return true; #else - return !extension_event_router_ || extension_event_router_->IsUiEnabled(); + return !extension_event_router_ || extension_event_router_->IsShelfEnabled(); #endif }
diff --git a/chrome/browser/download/download_core_service_impl.h b/chrome/browser/download/download_core_service_impl.h index 46214d6..f837621 100644 --- a/chrome/browser/download/download_core_service_impl.h +++ b/chrome/browser/download/download_core_service_impl.h
@@ -52,7 +52,7 @@ void CancelDownloads() override; void SetDownloadManagerDelegateForTesting( std::unique_ptr<ChromeDownloadManagerDelegate> delegate) override; - bool IsDownloadUiEnabled() override; + bool IsShelfEnabled() override; void SetDownloadHistoryForTesting( std::unique_ptr<DownloadHistory> download_history) override;
diff --git a/chrome/browser/download/download_shelf.cc b/chrome/browser/download/download_shelf.cc index 6320d184..7a24c4d2 100644 --- a/chrome/browser/download/download_shelf.cc +++ b/chrome/browser/download/download_shelf.cc
@@ -98,7 +98,7 @@ return; if (!DownloadCoreServiceFactory::GetForBrowserContext(download->profile()) - ->IsDownloadUiEnabled()) + ->IsShelfEnabled()) return; Unhide();
diff --git a/chrome/browser/extensions/api/downloads/downloads_api.cc b/chrome/browser/extensions/api/downloads/downloads_api.cc index ff80caea..bcb2992 100644 --- a/chrome/browser/extensions/api/downloads/downloads_api.cc +++ b/chrome/browser/extensions/api/downloads/downloads_api.cc
@@ -33,8 +33,6 @@ #include "base/values.h" #include "build/build_config.h" #include "chrome/browser/browser_process.h" -#include "chrome/browser/download/bubble/download_bubble_controller.h" -#include "chrome/browser/download/bubble/download_bubble_prefs.h" #include "chrome/browser/download/download_core_service.h" #include "chrome/browser/download/download_core_service_factory.h" #include "chrome/browser/download/download_danger_prompt.h" @@ -486,16 +484,16 @@ } } -void MaybeSetUiEnabled(DownloadCoreService* service, - DownloadCoreService* incognito_service, - const Extension* extension, - bool enabled) { +void MaybeSetShelfEnabled(DownloadCoreService* service, + DownloadCoreService* incognito_service, + const Extension* extension, + bool enabled) { if (service) { - service->GetExtensionEventRouter()->SetUiEnabled(extension, enabled); + service->GetExtensionEventRouter()->SetShelfEnabled(extension, enabled); } if (incognito_service) { - incognito_service->GetExtensionEventRouter()->SetUiEnabled(extension, - enabled); + incognito_service->GetExtensionEventRouter()->SetShelfEnabled(extension, + enabled); } } @@ -1508,39 +1506,26 @@ GetDownloadCoreServices(browser_context(), include_incognito_information(), &service, &incognito_service); - MaybeSetUiEnabled(service, incognito_service, extension(), params->enabled); - - bool is_bubble_enabled = download::IsDownloadBubbleEnabled( - Profile::FromBrowserContext(browser_context())); + MaybeSetShelfEnabled(service, incognito_service, extension(), + params->enabled); BrowserList* browsers = BrowserList::GetInstance(); if (browsers) { - for (auto* browser : *browsers) { + for (auto iter = browsers->begin(); iter != browsers->end(); ++iter) { + const Browser* browser = *iter; DownloadCoreService* current_service = DownloadCoreServiceFactory::GetForBrowserContext(browser->profile()); - // The following code is to hide the download UI explicitly if the UI is - // set to disabled. - bool match_current_service = (current_service == service) || - (current_service == incognito_service); - if (!match_current_service || current_service->IsDownloadUiEnabled()) { - continue; - } - // Calling this API affects the download bubble as well, so extensions - // using this API is still compatible with the new download bubble. This - // API will eventually be deprecated (replaced by the SetUiOptions API - // below). - if (is_bubble_enabled && - browser->window()->GetDownloadBubbleUIController()) { - browser->window()->GetDownloadBubbleUIController()->HideDownloadUi(); - } else if (browser->window()->IsDownloadShelfVisible()) { + if (((current_service == service) || + (current_service == incognito_service)) && + browser->window()->IsDownloadShelfVisible() && + !current_service->IsShelfEnabled()) browser->window()->GetDownloadShelf()->Close(); - } } } if (params->enabled && - ((service && !service->IsDownloadUiEnabled()) || - (incognito_service && !incognito_service->IsDownloadUiEnabled()))) { + ((service && !service->IsShelfEnabled()) || + (incognito_service && !incognito_service->IsShelfEnabled()))) { return RespondNow(Error(download_extension_errors::kShelfDisabled)); } @@ -1567,35 +1552,26 @@ GetDownloadCoreServices(browser_context(), include_incognito_information(), &service, &incognito_service); - MaybeSetUiEnabled(service, incognito_service, extension(), options.enabled); - - bool is_bubble_enabled = download::IsDownloadBubbleEnabled( - Profile::FromBrowserContext(browser_context())); + MaybeSetShelfEnabled(service, incognito_service, extension(), + options.enabled); BrowserList* browsers = BrowserList::GetInstance(); if (browsers) { for (auto* browser : *browsers) { DownloadCoreService* current_service = DownloadCoreServiceFactory::GetForBrowserContext(browser->profile()); - // The following code is to hide the download UI explicitly if the UI is - // set to disabled. - bool match_current_service = (current_service == service) || - (current_service == incognito_service); - if (!match_current_service || current_service->IsDownloadUiEnabled()) { - continue; - } - if (is_bubble_enabled && - browser->window()->GetDownloadBubbleUIController()) { - browser->window()->GetDownloadBubbleUIController()->HideDownloadUi(); - } else if (browser->window()->IsDownloadShelfVisible()) { + if (((current_service == service) || + (current_service == incognito_service)) && + browser->window()->IsDownloadShelfVisible() && + !current_service->IsShelfEnabled()) { browser->window()->GetDownloadShelf()->Close(); } } } if (options.enabled && - ((service && !service->IsDownloadUiEnabled()) || - (incognito_service && !incognito_service->IsDownloadUiEnabled()))) { + ((service && !service->IsShelfEnabled()) || + (incognito_service && !incognito_service->IsShelfEnabled()))) { return RespondNow(Error(download_extension_errors::kUiDisabled)); } @@ -1681,19 +1657,19 @@ SetDetermineFilenameTimeoutSecondsForTesting(s); } -void ExtensionDownloadsEventRouter::SetUiEnabled(const Extension* extension, - bool enabled) { - auto iter = ui_disabling_extensions_.find(extension); - if (iter == ui_disabling_extensions_.end()) { +void ExtensionDownloadsEventRouter::SetShelfEnabled(const Extension* extension, + bool enabled) { + auto iter = shelf_disabling_extensions_.find(extension); + if (iter == shelf_disabling_extensions_.end()) { if (!enabled) - ui_disabling_extensions_.insert(extension); + shelf_disabling_extensions_.insert(extension); } else if (enabled) { - ui_disabling_extensions_.erase(extension); + shelf_disabling_extensions_.erase(extension); } } -bool ExtensionDownloadsEventRouter::IsUiEnabled() const { - return ui_disabling_extensions_.empty(); +bool ExtensionDownloadsEventRouter::IsShelfEnabled() const { + return shelf_disabling_extensions_.empty(); } // The method by which extensions hook into the filename determination process @@ -2034,9 +2010,9 @@ const Extension* extension, UnloadedExtensionReason reason) { DCHECK_CURRENTLY_ON(BrowserThread::UI); - auto iter = ui_disabling_extensions_.find(extension); - if (iter != ui_disabling_extensions_.end()) - ui_disabling_extensions_.erase(iter); + auto iter = shelf_disabling_extensions_.find(extension); + if (iter != shelf_disabling_extensions_.end()) + shelf_disabling_extensions_.erase(iter); } void ExtensionDownloadsEventRouter::CheckForHistoryFilesRemoval() {
diff --git a/chrome/browser/extensions/api/downloads/downloads_api.h b/chrome/browser/extensions/api/downloads/downloads_api.h index fabb6603..e5d2eac 100644 --- a/chrome/browser/extensions/api/downloads/downloads_api.h +++ b/chrome/browser/extensions/api/downloads/downloads_api.h
@@ -388,8 +388,8 @@ ~ExtensionDownloadsEventRouter() override; - void SetUiEnabled(const extensions::Extension* extension, bool enabled); - bool IsUiEnabled() const; + void SetShelfEnabled(const extensions::Extension* extension, bool enabled); + bool IsShelfEnabled() const; // Called by ChromeDownloadManagerDelegate during the filename determination // process, allows extensions to change the item's target filename. If no @@ -430,7 +430,7 @@ raw_ptr<Profile> profile_; download::AllDownloadItemNotifier notifier_; - std::set<const extensions::Extension*> ui_disabling_extensions_; + std::set<const extensions::Extension*> shelf_disabling_extensions_; base::Time last_checked_removal_;
diff --git a/chrome/browser/extensions/api/downloads/downloads_api_browsertest.cc b/chrome/browser/extensions/api/downloads/downloads_api_browsertest.cc index 02a3b85..7f2546a 100644 --- a/chrome/browser/extensions/api/downloads/downloads_api_browsertest.cc +++ b/chrome/browser/extensions/api/downloads/downloads_api_browsertest.cc
@@ -28,9 +28,6 @@ #include "base/threading/thread_task_runner_handle.h" #include "base/time/time.h" #include "build/build_config.h" -#include "chrome/browser/download/bubble/download_bubble_controller.h" -#include "chrome/browser/download/bubble/download_display.h" -#include "chrome/browser/download/bubble/download_display_controller.h" #include "chrome/browser/download/download_core_service.h" #include "chrome/browser/download/download_core_service_factory.h" #include "chrome/browser/download/download_file_icon_extractor.h" @@ -44,7 +41,6 @@ #include "chrome/browser/profiles/profile.h" #include "chrome/browser/ui/browser.h" #include "chrome/browser/ui/browser_tabstrip.h" -#include "chrome/browser/ui/browser_window.h" #include "chrome/browser/ui/extensions/extension_action_test_helper.h" #include "chrome/common/extensions/api/downloads.h" #include "chrome/common/pref_names.h" @@ -53,7 +49,6 @@ #include "components/download/public/common/download_item.h" #include "components/prefs/pref_service.h" #include "components/safe_browsing/content/common/file_type_policies_test_util.h" -#include "components/safe_browsing/core/common/features.h" #include "content/public/browser/browser_context.h" #include "content/public/browser/browser_task_traits.h" #include "content/public/browser/browser_thread.h" @@ -4585,11 +4580,11 @@ EXPECT_TRUE(RunFunction(new DownloadsSetShelfEnabledFunction(), "[false]")); EXPECT_FALSE(DownloadCoreServiceFactory::GetForBrowserContext( current_browser()->profile()) - ->IsDownloadUiEnabled()); + ->IsShelfEnabled()); EXPECT_TRUE(RunFunction(new DownloadsSetShelfEnabledFunction(), "[true]")); EXPECT_TRUE(DownloadCoreServiceFactory::GetForBrowserContext( current_browser()->profile()) - ->IsDownloadUiEnabled()); + ->IsShelfEnabled()); // TODO(benjhayden) Test that existing shelves are hidden. // TODO(benjhayden) Test multiple extensions. // TODO(benjhayden) Test disabling extensions. @@ -4611,12 +4606,12 @@ R"([{"enabled": false}])")); EXPECT_FALSE(DownloadCoreServiceFactory::GetForBrowserContext( current_browser()->profile()) - ->IsDownloadUiEnabled()); + ->IsShelfEnabled()); EXPECT_TRUE(RunFunction(new DownloadsSetUiOptionsFunction(), R"([{"enabled": true}])")); EXPECT_TRUE(DownloadCoreServiceFactory::GetForBrowserContext( current_browser()->profile()) - ->IsDownloadUiEnabled()); + ->IsShelfEnabled()); } void OnDangerPromptCreated(DownloadDangerPrompt* prompt) { @@ -4726,84 +4721,6 @@ result_id))); } -// The DownloadExtensionBubbleEnabledTest relies on the download surface, which -// ChromeOS_ASH doesn't use (see crbug.com/1323505). -#if !BUILDFLAG(IS_CHROMEOS_ASH) -class DownloadExtensionBubbleEnabledTest : public DownloadExtensionTest { - public: - DownloadExtensionBubbleEnabledTest() { - feature_list_.InitAndEnableFeature(safe_browsing::kDownloadBubble); - } - - bool IsDownloadToolbarButtonShowing() { - return current_browser() - ->window() - ->GetDownloadBubbleUIController() - ->GetDownloadDisplayController() - ->download_display_for_testing() - ->IsShowing(); - } - - private: - base::test::ScopedFeatureList feature_list_; -}; - -IN_PROC_BROWSER_TEST_F(DownloadExtensionBubbleEnabledTest, - DownloadExtensionBubbleEnabledTest_SetUiOptions) { - DownloadManager::DownloadVector items; - CreateTwoDownloads(&items); - ScopedItemVectorCanceller delete_items(&items); - LoadExtension("downloads_split"); - - EXPECT_TRUE(RunFunction(new DownloadsSetUiOptionsFunction(), - R"([{"enabled": true}])")); - EXPECT_TRUE(IsDownloadToolbarButtonShowing()); - - EXPECT_TRUE(RunFunction(new DownloadsSetUiOptionsFunction(), - R"([{"enabled": false}])")); - EXPECT_FALSE(IsDownloadToolbarButtonShowing()); - - items[0]->Cancel(true); - // Remain hidden on download updates. - EXPECT_FALSE(IsDownloadToolbarButtonShowing()); -} - -IN_PROC_BROWSER_TEST_F( - DownloadExtensionBubbleEnabledTest, - DownloadExtensionBubbleEnabledTest_SetUiOptionsBeforeDownloadStart) { - LoadExtension("downloads_split"); - EXPECT_TRUE(RunFunction(new DownloadsSetUiOptionsFunction(), - R"([{"enabled": false}])")); - DownloadManager::DownloadVector items; - CreateTwoDownloads(&items); - ScopedItemVectorCanceller delete_items(&items); - EXPECT_FALSE(IsDownloadToolbarButtonShowing()); -} - -IN_PROC_BROWSER_TEST_F( - DownloadExtensionBubbleEnabledTest, - DownloadExtensionBubbleEnabledTest_SetUiOptionsOffTheRecord) { - LoadExtension("downloads_split"); - EXPECT_TRUE(RunFunction(new DownloadsSetUiOptionsFunction(), - R"([{"enabled": false}])")); - DownloadManager::DownloadVector items; - CreateTwoDownloads(&items); - ScopedItemVectorCanceller delete_items(&items); - EXPECT_FALSE(IsDownloadToolbarButtonShowing()); - - GoOffTheRecord(); - EXPECT_FALSE(IsDownloadToolbarButtonShowing()); - - EXPECT_TRUE(RunFunction(new DownloadsSetUiOptionsFunction(), - R"([{"enabled": true}])")); - items[0]->Cancel(true); - EXPECT_TRUE(IsDownloadToolbarButtonShowing()); - - GoOnTheRecord(); - EXPECT_TRUE(IsDownloadToolbarButtonShowing()); -} -#endif // !BUILDFLAG(IS_CHROMEOS_ASH) - class DownloadsApiTest : public ExtensionApiTest { public: DownloadsApiTest() {}
diff --git a/chrome/browser/extensions/tab_helper.cc b/chrome/browser/extensions/tab_helper.cc index f0698f5..65b832a4 100644 --- a/chrome/browser/extensions/tab_helper.cc +++ b/chrome/browser/extensions/tab_helper.cc
@@ -64,6 +64,7 @@ #include "extensions/common/permissions/api_permission.h" #include "services/service_manager/public/cpp/interface_provider.h" #include "third_party/blink/public/common/associated_interfaces/associated_interface_provider.h" +#include "third_party/blink/public/common/features.h" #include "url/url_constants.h" #if BUILDFLAG(ENABLE_SESSION_SERVICE) @@ -77,91 +78,101 @@ namespace extensions { +const char kIsPrerender2DisabledKey[] = "extensions.prerender2.browsercontext"; + namespace { -// User data key for caching if bfcache is disabled. -const char kIsBFCacheDisabledKey[] = "extensions.backforward.browsercontext"; - bool AreAllExtensionsAllowedForBFCache() { - // If back forward cache is disabled, indicate we accept everything. - if (!content::BackForwardCache::IsBackForwardCacheFeatureEnabled()) - return true; - static base::FeatureParam<bool> all_extensions_allowed( &features::kBackForwardCache, "all_extensions_allowed", true); return all_extensions_allowed.Get(); } std::string BlockedExtensionListForBFCache() { - // If back forward cache is disabled, indicate nothing is blocked. - if (!content::BackForwardCache::IsBackForwardCacheFeatureEnabled()) - return std::string(); - static base::FeatureParam<std::string> extensions_blocked( &features::kBackForwardCache, "blocked_extensions", ""); return extensions_blocked.Get(); } +bool AreAllExtensionsAllowedForPrerender2(content::WebContents* web_contents) { + static base::FeatureParam<bool> all_extensions_allowed( + &blink::features::kPrerender2, "all_extensions_allowed", true); + return all_extensions_allowed.Get(); +} + +std::string BlockedExtensionListForPrerender2( + content::WebContents* web_contents) { + static base::FeatureParam<std::string> extensions_blocked( + &blink::features::kPrerender2, "blocked_extensions", ""); + return extensions_blocked.Get(); +} + +// Check `enabled_extensions` if any of them are specified in the +// `blocked_extensions` or not. +bool ProcessDisabledExtensions(const std::string& feature, + const ExtensionSet& enabled_extensions, + content::BrowserContext* context, + bool all_allowed, + const std::string& blocked_extensions) { + // If we allow all extensions and there aren't any blocked, then just return. + if (all_allowed && blocked_extensions.empty()) + return false; + + std::vector<std::string> blocked_extensions_list = + base::SplitString(blocked_extensions, ",", base::TRIM_WHITESPACE, + base::SPLIT_WANT_NONEMPTY); + + // Compute whether we need to disable it. + bool disabled_feature = false; + for (const auto& extension : enabled_extensions) { + // Skip component extensions, apps, themes, shared modules and the google + // docs pre-installed extension. + if (Manifest::IsComponentLocation(extension->location()) || + extension->is_app() || extension->is_theme() || + extension->is_shared_module() || + extension->id() == extension_misc::kDocsOfflineExtensionId) { + continue; + } + if (util::IsExtensionVisibleToContext(*extension, context)) { + // If we are allowing all extensions with a block filter set, and this + // extension is not in it then continue. + if (all_allowed && + !base::Contains(blocked_extensions_list, extension->id())) { + continue; + } + + VLOG(1) << "Disabled " << feature << " due to " << extension->short_name() + << "," << extension->id(); + disabled_feature = true; + // TODO(dtapuska): Early termination disabled for now to capture VLOG(1) + // break; + } + } + + return disabled_feature; +} + void DisableBackForwardCacheIfNecessary( const ExtensionSet& enabled_extensions, content::BrowserContext* context, content::NavigationHandle* navigation_handle) { - bool all_allowed = AreAllExtensionsAllowedForBFCache(); - std::string blocked_extensions = BlockedExtensionListForBFCache(); + // User data key for caching if bfcache is disabled. + static const char kIsBFCacheDisabledKey[] = + "extensions.backforward.browsercontext"; - // If we allow all extensions for bfcache and there aren't any blocked, then - // just return. - if (all_allowed && blocked_extensions.empty()) + if (!content::BackForwardCache::IsBackForwardCacheFeatureEnabled() || + context->GetUserData(kIsBFCacheDisabledKey)) { return; - - // We shouldn't have blocked extensions if `all_allowed` is false. - DCHECK(blocked_extensions.empty() || all_allowed); - - bool disable_bfcache = false; - // If the user data exists we know we are disabled. - if (context->GetUserData(kIsBFCacheDisabledKey)) { - disable_bfcache = true; - } else { - std::vector<std::string> blocked_extensions_list = - base::SplitString(blocked_extensions, ",", base::TRIM_WHITESPACE, - base::SPLIT_WANT_NONEMPTY); - - // Compute whether we need to disable it. - for (const auto& extension : enabled_extensions) { - // Skip component extensions, apps, themes, shared modules and the google - // docs pre-installed extension. - if (Manifest::IsComponentLocation(extension->location()) || - extension->is_app() || extension->is_theme() || - extension->is_shared_module() || - extension->id() == extension_misc::kDocsOfflineExtensionId) { - continue; - } - if (util::IsExtensionVisibleToContext(*extension, context)) { - // If we are allowing all extensions with a block filter set, and this - // extension is not in it then continue. - if (all_allowed && - !base::Contains(blocked_extensions_list, extension->id())) { - continue; - } - - VLOG(1) << "Disabled bfcache due to " << extension->short_name() << "," - << extension->id(); - if (!disable_bfcache) { - // Set a user data key indicating we've disabled disabled bfcache for - // this context. - context->SetUserData( - kIsBFCacheDisabledKey, - std::make_unique<base::SupportsUserData::Data>()); - disable_bfcache = true; - } - - // TODO(dtapuska): Early termination disabled for now to capture VLOG(1) - // break; - } - } } - if (disable_bfcache) { + if (ProcessDisabledExtensions("bfcache", enabled_extensions, context, + AreAllExtensionsAllowedForBFCache(), + BlockedExtensionListForBFCache())) { + // Set a user data key indicating we've disabled bfcache for this + // context. + context->SetUserData(kIsBFCacheDisabledKey, + std::make_unique<base::SupportsUserData::Data>()); + // We do not care if GetPreviousRenderFrameHostId returns a reused // RenderFrameHost since disabling the cache multiple times has no side // effects. @@ -172,6 +183,28 @@ } } +// TODO(https://crbug.com/1344511): Current code is overly complex and circular; +// TabHelper sets a bit on the WebContents so that the WebContents can call into +// the Browser so that the Browser can check the bit that was set by TabHelper. +// Instead, 1) Having extensions code directly disable Prerender2 on a +// WebContents (just expose a DisablePrerender2 method), or 2) Having the +// browser code just ask extensions if Prerender2 should be enabled (and +// avoiding setting any bit on the WebContents). +// See also Devlin's comment on patchset 10 at https://crrev.com/c/3762942. +void UpdatePrerender2DisabledKey(const ExtensionSet& enabled_extensions, + content::WebContents* web_contents) { + if (ProcessDisabledExtensions( + "prerender2", enabled_extensions, web_contents->GetBrowserContext(), + AreAllExtensionsAllowedForPrerender2(web_contents), + BlockedExtensionListForPrerender2(web_contents))) { + web_contents->GetBrowserContext()->SetUserData( + kIsPrerender2DisabledKey, + std::make_unique<base::SupportsUserData::Data>()); + } else { + web_contents->GetBrowserContext()->RemoveUserData(kIsPrerender2DisabledKey); + } +} + } // namespace TabHelper::~TabHelper() = default; @@ -406,6 +439,11 @@ // Clear the back forward cache for the associated tab to accommodate for any // side effects of loading/unloading the extension. web_contents()->GetController().GetBackForwardCache().Flush(); + + // Update a setting to disable Prerender2 based on loaded Extensions. + UpdatePrerender2DisabledKey( + ExtensionRegistry::Get(browser_context)->enabled_extensions(), + web_contents()); } void TabHelper::OnExtensionUnloaded(content::BrowserContext* browser_context, @@ -414,6 +452,12 @@ // Clear the back forward cache for the associated tab to accommodate for any // side effects of loading/unloading the extension. web_contents()->GetController().GetBackForwardCache().Flush(); + + // Update a setting to disable Prerender2 based on loaded Extensions. + UpdatePrerender2DisabledKey( + ExtensionRegistry::Get(browser_context)->enabled_extensions(), + web_contents()); + if (!extension_app_) return; if (extension == extension_app_)
diff --git a/chrome/browser/extensions/tab_helper.h b/chrome/browser/extensions/tab_helper.h index c020f40..9e4fa41d 100644 --- a/chrome/browser/extensions/tab_helper.h +++ b/chrome/browser/extensions/tab_helper.h
@@ -38,6 +38,8 @@ class ExtensionActionRunner; class Extension; +extern const char kIsPrerender2DisabledKey[]; + // Per-tab extension helper. Also handles non-extension apps. class TabHelper : public content::WebContentsObserver, public ExtensionFunctionDispatcher::Delegate,
diff --git a/chrome/browser/feedback/system_logs/log_sources/crash_ids_source.cc b/chrome/browser/feedback/system_logs/log_sources/crash_ids_source.cc index dd9dfb2..fe79b636 100644 --- a/chrome/browser/feedback/system_logs/log_sources/crash_ids_source.cc +++ b/chrome/browser/feedback/system_logs/log_sources/crash_ids_source.cc
@@ -16,7 +16,6 @@ #if BUILDFLAG(IS_CHROMEOS_ASH) #include "base/threading/sequenced_task_runner_handle.h" -#include "chromeos/dbus/dbus_thread_manager.h" // nogncheck #include "chromeos/dbus/debug_daemon/debug_daemon_client.h" #include "content/public/browser/browser_task_traits.h" #include "content/public/browser/browser_thread.h" @@ -69,7 +68,7 @@ // unique in that it has a separate process (crash_sender) that uploads // crashes periodically (by default every 5 minutes). chromeos::DebugDaemonClient* debugd_client = - chromeos::DBusThreadManager::Get()->GetDebugDaemonClient(); + chromeos::DebugDaemonClient::Get(); if (debugd_client) { debugd_client->UploadCrashes(base::BindOnce( [](base::OnceClosure load_crash_list_cb, bool success) {
diff --git a/chrome/browser/feedback/system_logs/log_sources/crash_ids_source_unittest.cc b/chrome/browser/feedback/system_logs/log_sources/crash_ids_source_unittest.cc index ed78ceb..4676688 100644 --- a/chrome/browser/feedback/system_logs/log_sources/crash_ids_source_unittest.cc +++ b/chrome/browser/feedback/system_logs/log_sources/crash_ids_source_unittest.cc
@@ -11,6 +11,7 @@ #if BUILDFLAG(IS_CHROMEOS_ASH) #include "chromeos/dbus/dbus_thread_manager.h" // nogncheck +#include "chromeos/dbus/debug_daemon/debug_daemon_client.h" #include "chromeos/dbus/debug_daemon/fake_debug_daemon_client.h" #endif @@ -53,27 +54,23 @@ int upload_crashes_called_ = 0; }; -TestDebugDaemonClient* fake_debug_client() { - return static_cast<TestDebugDaemonClient*>( - chromeos::DBusThreadManager::Get()->GetDebugDaemonClient()); -} - TEST(CrashIdsSourceTest, CallsCrashSender) { content::BrowserTaskEnvironment task_environment; chromeos::DBusThreadManager::Initialize(); - chromeos::DBusThreadManager::GetSetterForTesting()->SetDebugDaemonClient( - std::make_unique<TestDebugDaemonClient>()); + TestDebugDaemonClient test_debug_client; + chromeos::DebugDaemonClient::SetInstanceForTest(&test_debug_client); CrashIdsSource source; source.SetUploadListForTesting(new StubUploadList()); - EXPECT_EQ(0, fake_debug_client()->upload_crashes_called()); + EXPECT_EQ(0, test_debug_client.upload_crashes_called()); source.Fetch(base::BindOnce([](std::unique_ptr<SystemLogsResponse>) {})); - EXPECT_EQ(1, fake_debug_client()->upload_crashes_called()); + EXPECT_EQ(1, test_debug_client.upload_crashes_called()); + chromeos::DebugDaemonClient::SetInstanceForTest(nullptr); chromeos::DBusThreadManager::Shutdown(); } #endif // BUILDFLAG(IS_CHROMEOS_ASH)
diff --git a/chrome/browser/flag-metadata.json b/chrome/browser/flag-metadata.json index f164bcc..9b7a3c8d 100644 --- a/chrome/browser/flag-metadata.json +++ b/chrome/browser/flag-metadata.json
@@ -4979,6 +4979,14 @@ "expiry_milestone": 103 }, { + "name": "page-info-hide-site-settings", + "owners": [ + "zsalata@google.com", + "olesiamarukhno@google.com" + ], + "expiry_milestone": 106 + }, + { "name": "page-info-history", "owners": [ "eokoyomon", "dullweber" ], "expiry_milestone": 97
diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descriptions.cc index b46a1b2..82d9c61 100644 --- a/chrome/browser/flag_descriptions.cc +++ b/chrome/browser/flag_descriptions.cc
@@ -2128,6 +2128,10 @@ "Enable the 'More about this page' link in the 'From the web' section of " "page info."; +const char kPageInfoHideSiteSettingsName[] = "Page info hide site settings"; +const char kPageInfoHideSiteSettingsDescription[] = + "Hides site settings row in the page info menu."; + const char kPageInfoHistoryDesktopName[] = "Page info history"; const char kPageInfoHistoryDesktopDescription[] = "Enable a history section in the page info.";
diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h index 52876c0..fed7a9a 100644 --- a/chrome/browser/flag_descriptions.h +++ b/chrome/browser/flag_descriptions.h
@@ -1187,6 +1187,9 @@ extern const char kPageInfoMoreAboutThisPageName[]; extern const char kPageInfoMoreAboutThisPageDescription[]; +extern const char kPageInfoHideSiteSettingsName[]; +extern const char kPageInfoHideSiteSettingsDescription[]; + extern const char kPageInfoHistoryDesktopName[]; extern const char kPageInfoHistoryDesktopDescription[];
diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browser/flags/android/chrome_feature_list.cc index d524b1c01..c66c234 100644 --- a/chrome/browser/flags/android/chrome_feature_list.cc +++ b/chrome/browser/flags/android/chrome_feature_list.cc
@@ -707,13 +707,13 @@ "SearchEnginePromo.ExistingDevice", base::FEATURE_ENABLED_BY_DEFAULT}; const base::Feature kSearchEnginePromoExistingDeviceV2{ - "SearchEnginePromo.ExistingDeviceVer2", base::FEATURE_DISABLED_BY_DEFAULT}; + "SearchEnginePromo.ExistingDeviceVer2", base::FEATURE_ENABLED_BY_DEFAULT}; const base::Feature kSearchEnginePromoNewDevice{ "SearchEnginePromo.NewDevice", base::FEATURE_ENABLED_BY_DEFAULT}; const base::Feature kSearchEnginePromoNewDeviceV2{ - "SearchEnginePromo.NewDeviceVer2", base::FEATURE_DISABLED_BY_DEFAULT}; + "SearchEnginePromo.NewDeviceVer2", base::FEATURE_ENABLED_BY_DEFAULT}; const base::Feature kMostRecentTabOnBackgroundCloseTab{ "MostRecentTabOnBackgroundCloseTab", base::FEATURE_DISABLED_BY_DEFAULT};
diff --git a/chrome/browser/fuchsia/chrome_browser_main_parts_fuchsia.cc b/chrome/browser/fuchsia/chrome_browser_main_parts_fuchsia.cc index e7e9abe4..2879fa01 100644 --- a/chrome/browser/fuchsia/chrome_browser_main_parts_fuchsia.cc +++ b/chrome/browser/fuchsia/chrome_browser_main_parts_fuchsia.cc
@@ -38,7 +38,6 @@ #include "components/keep_alive_registry/scoped_keep_alive.h" #include "content/public/common/content_switches.h" #include "ui/gfx/geometry/size.h" -#include "ui/gfx/switches.h" #include "ui/ozone/public/ozone_switches.h" #include "ui/platform_window/fuchsia/initialize_presenter_api_view.h" @@ -651,44 +650,34 @@ const bool enable_cfv2 = base::CommandLine::ForCurrentProcess()->HasSwitch(switches::kEnableCFv2); - if (!base::CommandLine::ForCurrentProcess()->HasSwitch(switches::kHeadless)) { - if (enable_cfv2) { - // Configure Ozone to create top-level Views via GraphicalPresenter. - element_manager_ = std::make_unique<ElementManagerImpl>( - base::ComponentContextForProcess()->outgoing().get(), - base::BindRepeating(&NotifyNewBrowserWindow)); - use_graphical_presenter_ = - std::make_unique<UseGraphicalPresenter>(element_manager_.get()); + if (enable_cfv2) { + // Configure Ozone to create top-level Views via GraphicalPresenter. + element_manager_ = std::make_unique<ElementManagerImpl>( + base::ComponentContextForProcess()->outgoing().get(), + base::BindRepeating(&NotifyNewBrowserWindow)); + use_graphical_presenter_ = + std::make_unique<UseGraphicalPresenter>(element_manager_.get()); - // Ensure that the browser process remains live until the first browser - // window is opened by an ElementManager request. The browser will then - // terminate itself as soon as the last browser window is closed, or it - // is explicitly terminated by the Component Framework (see below). - // TODO(crbug.com/1314718): Integrate with the Framework to coordinate - // teardown, to avoid risk of in-flight requests being dropped. - keep_alive_ = std::make_unique<ScopedKeepAlive>( - KeepAliveOrigin::BROWSER_PROCESS_FUCHSIA, - KeepAliveRestartOption::ENABLED); - BrowserList::AddObserver(this); - } else { - // Register the ViewProvider API. - view_provider_ = std::make_unique<ViewProviderRouter>( - std::make_unique<ViewProviderScenic>(), - std::make_unique<ViewProviderFlatland>()); - } + // Ensure that the browser process remains live until the first browser + // window is opened by an ElementManager request. The browser will then + // terminate itself as soon as the last browser window is closed, or it + // is explicitly terminated by the Component Framework (see below). + // TODO(crbug.com/1314718): Integrate with the Framework to coordinate + // teardown, to avoid risk of in-flight requests being dropped. + keep_alive_ = std::make_unique<ScopedKeepAlive>( + KeepAliveOrigin::BROWSER_PROCESS_FUCHSIA, + KeepAliveRestartOption::ENABLED); + BrowserList::AddObserver(this); + } else { + // Register the ViewProvider API. + view_provider_ = std::make_unique<ViewProviderRouter>( + std::make_unique<ViewProviderScenic>(), + std::make_unique<ViewProviderFlatland>()); } - // We should only call ServerFromStartupInfo() when the browser is running as - // a stand-alone component. - if (!is_integration_test()) { - zx_status_t status = - base::ComponentContextForProcess()->outgoing()->ServeFromStartupInfo(); - ZX_CHECK(status == ZX_OK, status); - } - - // Publish the fuchsia.process.lifecycle.Lifecycle service to allow graceful - // teardown. If this is an integration test then graceful shutdown is not - // required. + // Browser tests run in TestLauncher sub-processes, which do not have + // some of the startup handles provided by the ELF runner when running as + // a component in production, so disable features that require them. if (!is_integration_test()) { if (enable_cfv2) { // chrome::ExitIgnoreUnloadHandlers() will perform a graceful shutdown, @@ -704,6 +693,15 @@ lifecycle_ = std::make_unique<base::ProcessLifecycle>(std::move(quit_closure)); } + + // Take the outgoing-directory channel request from the startup handles, + // and start serving requests over it (e.g. for outgoing services, Inspect + // data, etc). This is not possible (see above), in browser tests, + // where TestComponentContextForProcess() should be used to reach the + // outgoing directory if necessary. + zx_status_t status = + base::ComponentContextForProcess()->outgoing()->ServeFromStartupInfo(); + ZX_CHECK(status == ZX_OK, status); } return ChromeBrowserMainParts::PreMainMessageLoopRun();
diff --git a/chrome/browser/incognito/android/java/src/org/chromium/chrome/browser/incognito/reauth/IncognitoReauthCoordinatorFactory.java b/chrome/browser/incognito/android/java/src/org/chromium/chrome/browser/incognito/reauth/IncognitoReauthCoordinatorFactory.java index f393691..beaebc4 100644 --- a/chrome/browser/incognito/android/java/src/org/chromium/chrome/browser/incognito/reauth/IncognitoReauthCoordinatorFactory.java +++ b/chrome/browser/incognito/android/java/src/org/chromium/chrome/browser/incognito/reauth/IncognitoReauthCoordinatorFactory.java
@@ -15,6 +15,7 @@ import org.chromium.chrome.browser.incognito.reauth.IncognitoReauthManager.IncognitoReauthCallback; import org.chromium.chrome.browser.layouts.LayoutManager; import org.chromium.chrome.browser.layouts.LayoutType; +import org.chromium.chrome.browser.tabmodel.IncognitoTabHostUtils; import org.chromium.chrome.browser.tabmodel.TabModelSelector; import org.chromium.chrome.browser.tasks.tab_management.TabSwitcherCustomViewManager; import org.chromium.components.browser_ui.settings.SettingsLauncher; @@ -157,14 +158,7 @@ */ @VisibleForTesting Runnable getCloseAllIncognitoTabsRunnable() { - if (mIsTabbedActivity) { - return () -> { - mTabModelSelector.getModel(/*incognito=*/true).closeAllTabs(/*uponExit=*/false); - }; - } else { - // TODO(crbug.com/1227656): Add implementation for iCCT case. - return () -> {}; - } + return IncognitoTabHostUtils::closeAllIncognitoTabs; } /**
diff --git a/chrome/browser/incognito/android/java/src/org/chromium/chrome/browser/incognito/reauth/IncognitoReauthCoordinatorFactoryTest.java b/chrome/browser/incognito/android/java/src/org/chromium/chrome/browser/incognito/reauth/IncognitoReauthCoordinatorFactoryTest.java index f0135b4..3dbf23d1 100644 --- a/chrome/browser/incognito/android/java/src/org/chromium/chrome/browser/incognito/reauth/IncognitoReauthCoordinatorFactoryTest.java +++ b/chrome/browser/incognito/android/java/src/org/chromium/chrome/browser/incognito/reauth/IncognitoReauthCoordinatorFactoryTest.java
@@ -7,7 +7,6 @@ import static org.junit.Assert.assertTrue; import static org.mockito.ArgumentMatchers.eq; import static org.mockito.Mockito.doNothing; -import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.times; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.verifyNoMoreInteractions; @@ -32,6 +31,8 @@ import org.chromium.base.test.util.Batch; import org.chromium.chrome.browser.layouts.LayoutManager; import org.chromium.chrome.browser.layouts.LayoutType; +import org.chromium.chrome.browser.tabmodel.IncognitoTabHost; +import org.chromium.chrome.browser.tabmodel.IncognitoTabHostRegistry; import org.chromium.chrome.browser.tabmodel.TabModel; import org.chromium.chrome.browser.tabmodel.TabModelSelector; import org.chromium.chrome.browser.tasks.tab_management.TabSwitcherCustomViewManager; @@ -71,6 +72,8 @@ private IncognitoReauthManager.IncognitoReauthCallback mIncognitoReauthCallbackMock; @Mock private IncognitoReauthMenuDelegate mIncognitoReauthMenuDelegateMock; + @Mock + private IncognitoTabHost mIncognitoTabHostMock; private final boolean mIsTabbedActivity; @@ -107,10 +110,12 @@ @After public void tearDown() { + IncognitoTabHostRegistry.getInstance().unregister(mIncognitoTabHostMock); + verifyNoMoreInteractions(mContextMock, mTabModelSelectorMock, mIncognitoTabModelMock, mModalDialogManagerMock, mIncognitoReauthManagerMock, mSettingsLauncherMock, mTabSwitcherCustomViewManagerMock, mIncognitoReauthTopToolbarDelegateMock, - mLayoutManagerMock); + mLayoutManagerMock, mIncognitoTabHostMock); } @Test @@ -139,19 +144,10 @@ public void testCloseAllIncognitoTabsRunnable_IsInvokedCorrectly() { Runnable closeAllIncognitoTabsRunnable = mIncognitoReauthCoordinatorFactory.getCloseAllIncognitoTabsRunnable(); - if (mIsTabbedActivity) { - doReturn(mIncognitoTabModelMock) - .when(mTabModelSelectorMock) - .getModel(/*incognito=*/true); - doNothing().when(mIncognitoTabModelMock).closeAllTabs(/*uponExit=*/eq(false)); + IncognitoTabHostRegistry.getInstance().register(mIncognitoTabHostMock); + closeAllIncognitoTabsRunnable.run(); - closeAllIncognitoTabsRunnable.run(); - - verify(mIncognitoTabModelMock, times(1)).closeAllTabs(/*uponExit=*/eq(false)); - verify(mTabModelSelectorMock, times(1)).getModel(/*incognito=*/eq(true)); - } else { - // TODO(crbug.com/1227656): Add tests for iCCT. - } + verify(mIncognitoTabHostMock, times(1)).closeAllIncognitoTabs(); } @Test
diff --git a/chrome/browser/lacros/account_manager/account_profile_mapper.cc b/chrome/browser/lacros/account_manager/account_profile_mapper.cc index ae6c140..a771850a 100644 --- a/chrome/browser/lacros/account_manager/account_profile_mapper.cc +++ b/chrome/browser/lacros/account_manager/account_profile_mapper.cc
@@ -110,7 +110,6 @@ AccountProfileMapper::CreateAccessTokenFetcher( const base::FilePath& profile_path, const account_manager::AccountKey& account, - const std::string& oauth_consumer_name, OAuth2AccessTokenConsumer* consumer) { // TODO(https://crbug.com/1226045): Create a fetcher that can wait on // initialization of the class. @@ -120,8 +119,7 @@ GoogleServiceAuthError(GoogleServiceAuthError::USER_NOT_SIGNED_UP)); } - return account_manager_facade_->CreateAccessTokenFetcher( - account, oauth_consumer_name, consumer); + return account_manager_facade_->CreateAccessTokenFetcher(account, consumer); } void AccountProfileMapper::GetAccountsMap(MapAccountsCallback callback) {
diff --git a/chrome/browser/lacros/account_manager/account_profile_mapper.h b/chrome/browser/lacros/account_manager/account_profile_mapper.h index ad8be69..9da46cc 100644 --- a/chrome/browser/lacros/account_manager/account_profile_mapper.h +++ b/chrome/browser/lacros/account_manager/account_profile_mapper.h
@@ -109,7 +109,6 @@ std::unique_ptr<OAuth2AccessTokenFetcher> CreateAccessTokenFetcher( const base::FilePath& profile_path, const account_manager::AccountKey& account, - const std::string& oauth_consumer_name, OAuth2AccessTokenConsumer* consumer); // Returns the whole map of accounts per profile. An empty path is used as the
diff --git a/chrome/browser/lacros/account_manager/profile_account_manager.cc b/chrome/browser/lacros/account_manager/profile_account_manager.cc index 0149257..07bbb66 100644 --- a/chrome/browser/lacros/account_manager/profile_account_manager.cc +++ b/chrome/browser/lacros/account_manager/profile_account_manager.cc
@@ -5,7 +5,6 @@ #include "chrome/browser/lacros/account_manager/profile_account_manager.h" #include "base/check.h" -#include "base/containers/flat_set.h" #include "base/notreached.h" #include "components/account_manager_core/account.h" #include "google_apis/gaia/oauth2_access_token_fetcher.h" @@ -93,10 +92,9 @@ std::unique_ptr<OAuth2AccessTokenFetcher> ProfileAccountManager::CreateAccessTokenFetcher( const account_manager::AccountKey& account, - const std::string& oauth_consumer_name, + OAuth2AccessTokenConsumer* consumer) { - return mapper_->CreateAccessTokenFetcher(profile_path_, account, - oauth_consumer_name, consumer); + return mapper_->CreateAccessTokenFetcher(profile_path_, account, consumer); } void ProfileAccountManager::UpsertAccountForTesting(
diff --git a/chrome/browser/lacros/account_manager/profile_account_manager.h b/chrome/browser/lacros/account_manager/profile_account_manager.h index 6487d0e1..37f8f62 100644 --- a/chrome/browser/lacros/account_manager/profile_account_manager.h +++ b/chrome/browser/lacros/account_manager/profile_account_manager.h
@@ -76,7 +76,6 @@ void ShowManageAccountsSettings() override; std::unique_ptr<OAuth2AccessTokenFetcher> CreateAccessTokenFetcher( const account_manager::AccountKey& account, - const std::string& oauth_consumer_name, OAuth2AccessTokenConsumer* consumer) override; void UpsertAccountForTesting(const account_manager::Account& account, const std::string& token_value) override;
diff --git a/chrome/browser/new_tab_page/new_tab_page_util.cc b/chrome/browser/new_tab_page/new_tab_page_util.cc new file mode 100644 index 0000000..723af97 --- /dev/null +++ b/chrome/browser/new_tab_page/new_tab_page_util.cc
@@ -0,0 +1,43 @@ +// Copyright 2022 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include "chrome/browser/new_tab_page/new_tab_page_util.h" + +#include "build/build_config.h" +#include "chrome/browser/browser_process.h" +#include "components/search/ntp_features.h" +#include "components/variations/service/variations_service.h" + +namespace { +bool IsOsSupported() { +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) + return true; +#else + return false; +#endif +} + +std::string GetCountryCode() { + std::string country_code; + auto* variations_service = g_browser_process->variations_service(); + if (!variations_service) + return country_code; + country_code = variations_service->GetStoredPermanentCountry(); + return country_code.empty() ? variations_service->GetLatestCountry() + : country_code; +} +} // namespace + +// If feature is overridden manually or by finch, read the feature flag value. +// Otherwise filter by os, locale and country code. +bool IsRecipeTasksModuleEnabled() { + if (base::FeatureList::GetInstance()->IsFeatureOverridden( + ntp_features::kNtpRecipeTasksModule.name)) { + return base::FeatureList::IsEnabled(ntp_features::kNtpRecipeTasksModule); + } else { + return IsOsSupported() && + g_browser_process->GetApplicationLocale() == "en-US" && + GetCountryCode() == "us"; + } +}
diff --git a/chrome/browser/new_tab_page/new_tab_page_util.h b/chrome/browser/new_tab_page/new_tab_page_util.h new file mode 100644 index 0000000..fe54408 --- /dev/null +++ b/chrome/browser/new_tab_page/new_tab_page_util.h
@@ -0,0 +1,10 @@ +// Copyright 2022 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#ifndef CHROME_BROWSER_NEW_TAB_PAGE_NEW_TAB_PAGE_UTIL_H_ +#define CHROME_BROWSER_NEW_TAB_PAGE_NEW_TAB_PAGE_UTIL_H_ + +bool IsRecipeTasksModuleEnabled(); + +#endif // CHROME_BROWSER_NEW_TAB_PAGE_NEW_TAB_PAGE_UTIL_H_
diff --git a/chrome/browser/new_tab_page/new_tab_page_util_browsertest.cc b/chrome/browser/new_tab_page/new_tab_page_util_browsertest.cc new file mode 100644 index 0000000..6e2b6fe --- /dev/null +++ b/chrome/browser/new_tab_page/new_tab_page_util_browsertest.cc
@@ -0,0 +1,58 @@ +// Copyright 2022 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include "chrome/browser/new_tab_page/new_tab_page_util.h" + +#include "build/build_config.h" +#include "chrome/browser/browser_process.h" +#include "chrome/test/base/in_process_browser_test.h" +#include "chrome/test/base/scoped_browser_locale.h" +#include "components/search/ntp_features.h" +#include "components/variations/service/variations_service.h" +#include "content/public/test/browser_test.h" + +class NewTabPageUtilBrowserTest : public InProcessBrowserTest { + protected: + base::test::ScopedFeatureList features_; +}; + +class NewTabPageUtilEnableFlagBrowserTest : public NewTabPageUtilBrowserTest { + public: + NewTabPageUtilEnableFlagBrowserTest() { + features_.InitWithFeatures({ntp_features::kNtpRecipeTasksModule}, {}); + } +}; + +class NewTabPageUtilDisableFlagBrowserTest : public NewTabPageUtilBrowserTest { + public: + NewTabPageUtilDisableFlagBrowserTest() { + features_.InitWithFeatures({}, {ntp_features::kNtpRecipeTasksModule}); + } +}; + +IN_PROC_BROWSER_TEST_F(NewTabPageUtilBrowserTest, EnableByToT) { + auto locale = std::make_unique<ScopedBrowserLocale>("en-US"); + g_browser_process->variations_service()->OverrideStoredPermanentCountry("us"); +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) + EXPECT_TRUE(IsRecipeTasksModuleEnabled()); +#else + EXPECT_FALSE(IsRecipeTasksModuleEnabled()); +#endif +} + +IN_PROC_BROWSER_TEST_F(NewTabPageUtilBrowserTest, DisableByToT) { + auto locale = std::make_unique<ScopedBrowserLocale>("en-US"); + g_browser_process->variations_service()->OverrideStoredPermanentCountry("ca"); + EXPECT_FALSE(IsRecipeTasksModuleEnabled()); +} + +IN_PROC_BROWSER_TEST_F(NewTabPageUtilEnableFlagBrowserTest, EnableByFlag) { + EXPECT_TRUE(IsRecipeTasksModuleEnabled()); +} + +IN_PROC_BROWSER_TEST_F(NewTabPageUtilDisableFlagBrowserTest, DisableByFlag) { + auto locale = std::make_unique<ScopedBrowserLocale>("en-US"); + g_browser_process->variations_service()->OverrideStoredPermanentCountry("us"); + EXPECT_FALSE(IsRecipeTasksModuleEnabled()); +}
diff --git a/chrome/browser/optimization_guide/optimization_guide_keyed_service_browsertest.cc b/chrome/browser/optimization_guide/optimization_guide_keyed_service_browsertest.cc index 30cc4968..8bec6cf 100644 --- a/chrome/browser/optimization_guide/optimization_guide_keyed_service_browsertest.cc +++ b/chrome/browser/optimization_guide/optimization_guide_keyed_service_browsertest.cc
@@ -22,7 +22,6 @@ #include "chrome/browser/ui/browser.h" #include "chrome/test/base/in_process_browser_test.h" #include "chrome/test/base/ui_test_utils.h" -#include "components/history_clusters/core/on_device_clustering_features.h" #include "components/optimization_guide/core/command_line_top_host_provider.h" #include "components/optimization_guide/core/optimization_guide_enums.h" #include "components/optimization_guide/core/optimization_guide_features.h" @@ -33,7 +32,6 @@ #include "components/optimization_guide/core/optimization_hints_component_update_listener.h" #include "components/optimization_guide/core/test_hints_component_creator.h" #include "components/optimization_guide/proto/hints.pb.h" -#include "components/page_info/core/features.h" #include "components/prefs/pref_service.h" #include "components/ukm/test_ukm_recorder.h" #include "components/variations/active_field_trials.h" @@ -325,35 +323,6 @@ #endif } -class OptimizationGuideKeyedServiceWithoutRegistrationsBrowserTest - : public OptimizationGuideKeyedServiceBrowserTest { - public: - OptimizationGuideKeyedServiceWithoutRegistrationsBrowserTest() { - feature_list_.InitWithFeatures( - {}, {history_clusters::features::kOnDeviceClusteringBlocklists, - page_info::kPageInfoAboutThisSiteEn, - page_info::kPageInfoAboutThisSiteNonEn}); - } - - private: - base::test::ScopedFeatureList feature_list_; -}; - -IN_PROC_BROWSER_TEST_F( - OptimizationGuideKeyedServiceWithoutRegistrationsBrowserTest, - NavigateToPageWithHintsButNoRegistrationDoesNotAttemptToLoadHint) { - PushHintsComponentAndWaitForCompletion(); - - ukm::TestAutoSetUkmRecorder ukm_recorder; - base::HistogramTester histogram_tester; - - ASSERT_TRUE(ui_test_utils::NavigateToURL(browser(), url_with_hints())); - histogram_tester.ExpectTotalCount("OptimizationGuide.LoadedHint.Result", 0); - - // Navigate away so UKM get recorded. - ASSERT_TRUE(ui_test_utils::NavigateToURL(browser(), url_with_hints())); -} - IN_PROC_BROWSER_TEST_F(OptimizationGuideKeyedServiceBrowserTest, NavigateToPageWithAsyncCallbackReturnsAnswerRedirect) { PushHintsComponentAndWaitForCompletion(); @@ -449,18 +418,10 @@ entry, ukm::builders::OptimizationGuide::kRegisteredOptimizationTypesName)); - int64_t expected_types = 1 << OptimizationType::NOSCRIPT; - if (page_info::IsAboutThisSiteFeatureEnabled( - g_browser_process->GetApplicationLocale())) { - expected_types |= 1 << OptimizationType::ABOUT_THIS_SITE; - } - if (base::FeatureList::IsEnabled( - history_clusters::features::kOnDeviceClusteringBlocklists)) { - expected_types |= 1 << OptimizationType::HISTORY_CLUSTERS; - } - ukm_recorder.ExpectEntryMetric( - entry, ukm::builders::OptimizationGuide::kRegisteredOptimizationTypesName, - expected_types); + const int64_t* entry_metric = ukm_recorder.GetEntryMetric( + entry, + ukm::builders::OptimizationGuide::kRegisteredOptimizationTypesName); + EXPECT_TRUE(*entry_metric & (1 << optimization_guide::proto::NOSCRIPT)); } IN_PROC_BROWSER_TEST_F(OptimizationGuideKeyedServiceBrowserTest, @@ -495,18 +456,10 @@ EXPECT_TRUE(ukm_recorder.EntryHasMetric( entry, ukm::builders::OptimizationGuide::kRegisteredOptimizationTypesName)); - int64_t expected_types = 1 << OptimizationType::NOSCRIPT; - if (page_info::IsAboutThisSiteFeatureEnabled( - g_browser_process->GetApplicationLocale())) { - expected_types |= 1 << OptimizationType::ABOUT_THIS_SITE; - } - if (base::FeatureList::IsEnabled( - history_clusters::features::kOnDeviceClusteringBlocklists)) { - expected_types |= 1 << OptimizationType::HISTORY_CLUSTERS; - } - ukm_recorder.ExpectEntryMetric( - entry, ukm::builders::OptimizationGuide::kRegisteredOptimizationTypesName, - expected_types); + const int64_t* entry_metric = ukm_recorder.GetEntryMetric( + entry, + ukm::builders::OptimizationGuide::kRegisteredOptimizationTypesName); + EXPECT_TRUE(*entry_metric & (1 << optimization_guide::proto::NOSCRIPT)); } IN_PROC_BROWSER_TEST_F(
diff --git a/chrome/browser/password_manager/android/BUILD.gn b/chrome/browser/password_manager/android/BUILD.gn index 61274de..c6b186d5 100644 --- a/chrome/browser/password_manager/android/BUILD.gn +++ b/chrome/browser/password_manager/android/BUILD.gn
@@ -85,6 +85,7 @@ ":android_backend_java_enums", ":java_resources", ":settings_interface_java", + "$google_play_services_package:google_play_services_base_java", "$google_play_services_package:google_play_services_basement_java", "//base:base_java", "//base:jni_java", @@ -194,6 +195,7 @@ ":public_impl_java", ":settings_interface_java", ":test_support_java", + "$google_play_services_package:google_play_services_base_java", "$google_play_services_package:google_play_services_basement_java", "//base:base_java", "//base:base_java_test_support",
diff --git a/chrome/browser/password_manager/android/java/src/org/chromium/chrome/browser/password_manager/CredentialManagerLauncher.java b/chrome/browser/password_manager/android/java/src/org/chromium/chrome/browser/password_manager/CredentialManagerLauncher.java index b0f0d0f..889b1b39 100644 --- a/chrome/browser/password_manager/android/java/src/org/chromium/chrome/browser/password_manager/CredentialManagerLauncher.java +++ b/chrome/browser/password_manager/android/java/src/org/chromium/chrome/browser/password_manager/CredentialManagerLauncher.java
@@ -25,7 +25,8 @@ */ @IntDef({CredentialManagerError.NO_CONTEXT, CredentialManagerError.NO_ACCOUNT_NAME, CredentialManagerError.API_ERROR, CredentialManagerError.UNCATEGORIZED, - CredentialManagerError.COUNT}) + CredentialManagerError.BACKEND_VERSION_NOT_SUPPORTED, + CredentialManagerError.BACKEND_NOT_AVAILABLE, CredentialManagerError.COUNT}) @Retention(RetentionPolicy.SOURCE) public @interface CredentialManagerError { // There is no application context. @@ -36,7 +37,24 @@ int API_ERROR = 2; // Error is not categorized. int UNCATEGORIZED = 3; - int COUNT = 4; + // Operation can not be executed due to unsupported backend version. + int BACKEND_VERSION_NOT_SUPPORTED = 4; + // Backend downstream implementation is not available. + int BACKEND_NOT_AVAILABLE = 5; + int COUNT = 6; + } + + /** + * Serves as a general exception for failed requests to the credential manager backend. + */ + class CredentialManagerBackendException extends Exception { + public @CredentialManagerError int errorCode; + + public CredentialManagerBackendException( + String message, @CredentialManagerError int error) { + super(message); + errorCode = error; + } } /**
diff --git a/chrome/browser/password_manager/android/java/src/org/chromium/chrome/browser/password_manager/CredentialManagerLauncherFactory.java b/chrome/browser/password_manager/android/java/src/org/chromium/chrome/browser/password_manager/CredentialManagerLauncherFactory.java index 1fe24b87..c16d661 100644 --- a/chrome/browser/password_manager/android/java/src/org/chromium/chrome/browser/password_manager/CredentialManagerLauncherFactory.java +++ b/chrome/browser/password_manager/android/java/src/org/chromium/chrome/browser/password_manager/CredentialManagerLauncherFactory.java
@@ -31,8 +31,11 @@ * Returns the downstream implementation provided by subclasses. * * @return An implementation of the {@link CredentialManagerLauncher} if one exists. + * + * TODO(crbug.com/1346239): Check if backend could be instantiated and throw error */ - public CredentialManagerLauncher createLauncher() { + public CredentialManagerLauncher createLauncher() + throws CredentialManagerLauncher.CredentialManagerBackendException { return null; }
diff --git a/chrome/browser/password_manager/android/java/src/org/chromium/chrome/browser/password_manager/PasswordCheckupClientHelperFactory.java b/chrome/browser/password_manager/android/java/src/org/chromium/chrome/browser/password_manager/PasswordCheckupClientHelperFactory.java index 8814d50..3f3c6db1 100644 --- a/chrome/browser/password_manager/android/java/src/org/chromium/chrome/browser/password_manager/PasswordCheckupClientHelperFactory.java +++ b/chrome/browser/password_manager/android/java/src/org/chromium/chrome/browser/password_manager/PasswordCheckupClientHelperFactory.java
@@ -26,8 +26,11 @@ * Returns the downstream implementation provided by subclasses. * * @return An implementation of the {@link PasswordCheckupClientHelper} if one exists. + * + * TODO(crbug.com/1346239): Check if backend could be instantiated and throw error */ - public PasswordCheckupClientHelper createHelper() { + public PasswordCheckupClientHelper createHelper() + throws PasswordCheckupClientHelper.PasswordCheckBackendException { return null; }
diff --git a/chrome/browser/password_manager/android/java/src/org/chromium/chrome/browser/password_manager/PasswordManagerHelper.java b/chrome/browser/password_manager/android/java/src/org/chromium/chrome/browser/password_manager/PasswordManagerHelper.java index e890168..f65ba84f 100644 --- a/chrome/browser/password_manager/android/java/src/org/chromium/chrome/browser/password_manager/PasswordManagerHelper.java +++ b/chrome/browser/password_manager/android/java/src/org/chromium/chrome/browser/password_manager/PasswordManagerHelper.java
@@ -9,6 +9,8 @@ import android.app.PendingIntent; import android.app.PendingIntent.CanceledException; import android.content.Context; +import android.content.Intent; +import android.net.Uri; import android.os.Bundle; import android.os.Handler; import android.os.Looper; @@ -17,6 +19,7 @@ import androidx.annotation.IntDef; import androidx.annotation.VisibleForTesting; +import com.google.android.gms.common.GoogleApiAvailability; import com.google.common.base.Optional; import org.chromium.base.Callback; @@ -24,7 +27,9 @@ import org.chromium.base.supplier.ObservableSupplier; import org.chromium.chrome.browser.flags.ChromeFeatureList; import org.chromium.chrome.browser.loading_modal.LoadingModalDialogCoordinator; +import org.chromium.chrome.browser.password_manager.CredentialManagerLauncher.CredentialManagerBackendException; import org.chromium.chrome.browser.password_manager.CredentialManagerLauncher.CredentialManagerError; +import org.chromium.chrome.browser.password_manager.PasswordCheckupClientHelper.PasswordCheckBackendException; import org.chromium.chrome.browser.preferences.Pref; import org.chromium.chrome.browser.profiles.Profile; import org.chromium.chrome.browser.sync.SyncService; @@ -64,6 +69,9 @@ private static final String UPM_VARIATION_FEATURE_PARAM = "stage"; + // Referrer string for the Google Play Store when installing GMS Core package + private static final String STORE_REFERER = "chrome_upm"; + // Loading dialog is dismissed with this delay after sending an intent to prevent // the old activity from showing up before the new one is shown. private static final long LOADING_DIALOG_DISMISS_DELAY_MS = 300L; @@ -137,7 +145,8 @@ if (canUseUpm()) { LoadingModalDialogCoordinator loadingDialogCoordinator = LoadingModalDialogCoordinator.create(modalDialogManagerSupplier, context); - launchTheCredentialManager(referrer, syncService, loadingDialogCoordinator); + launchTheCredentialManager(referrer, syncService, loadingDialogCoordinator, + modalDialogManagerSupplier, context); return; } @@ -158,19 +167,16 @@ * * TODO(crbug.com/1345232): pass syncService and prefService instances as parameters * - * @return True if Unified Password Manager can be use, false otherwise. + * @return True if Unified Password Manager can be used, false otherwise. */ public static boolean canUseUpm() { SyncService syncService = SyncService.get(); PrefService prefService = UserPrefs.get(Profile.getLastUsedRegularProfile()); - // TODO(crbug.com/1327578): Remove isUpdateNeeded() check after adding update - // dialog. return PasswordManagerHelper.usesUnifiedPasswordManagerUI() && syncService != null && hasChosenToSyncPasswords(syncService) && !prefService.getBoolean( Pref.UNENROLLED_FROM_GOOGLE_MOBILE_SERVICES_DUE_TO_ERRORS) - && PasswordManagerBackendSupportHelper.getInstance().isBackendPresent() - && !PasswordManagerBackendSupportHelper.getInstance().isUpdateNeeded(); + && PasswordManagerBackendSupportHelper.getInstance().isBackendPresent(); } /** @@ -194,7 +200,8 @@ LoadingModalDialogCoordinator loadingDialogCoordinator = LoadingModalDialogCoordinator.create(modalDialogManagerSupplier, context); - launchPasswordCheckup(referrer, account, loadingDialogCoordinator); + launchPasswordCheckup( + referrer, account, loadingDialogCoordinator, modalDialogManagerSupplier, context); } /** @@ -216,8 +223,13 @@ new PasswordCheckupClientMetricsRecorder( PasswordCheckOperation.RUN_PASSWORD_CHECKUP); - PasswordCheckupClientHelper checkupClient = - PasswordCheckupClientHelperFactory.getInstance().createHelper(); + PasswordCheckupClientHelper checkupClient; + try { + checkupClient = getPasswordCheckupClientHelper(); + } catch (Exception exception) { + failureCallback.onResult(exception); + return; + } checkupClient.runPasswordCheckupInBackground(referrer, accountName, result @@ -249,8 +261,13 @@ new PasswordCheckupClientMetricsRecorder( PasswordCheckOperation.GET_BREACHED_CREDENTIALS_COUNT); - PasswordCheckupClientHelper checkupClient = - PasswordCheckupClientHelperFactory.getInstance().createHelper(); + PasswordCheckupClientHelper checkupClient; + try { + checkupClient = getPasswordCheckupClientHelper(); + } catch (Exception exception) { + failureCallback.onResult(exception); + return; + } checkupClient.getBreachedCredentialsCount(referrer, accountName, result @@ -338,13 +355,37 @@ prefs.setBoolean(Pref.UNENROLLED_FROM_GOOGLE_MOBILE_SERVICES_DUE_TO_ERRORS, false); } + public static void launchGmsUpdate(Context context) { + Intent intent = new Intent(Intent.ACTION_VIEW); + String deepLinkUrl = "market://details?id=" + + GoogleApiAvailability.GOOGLE_PLAY_SERVICES_PACKAGE + "&referrer=" + STORE_REFERER; + + intent.setPackage("com.android.vending"); + intent.setData(Uri.parse(deepLinkUrl)); + intent.putExtra("callerId", context.getPackageName()); + + // Request for overlay flow, Play Store will fallback to the default + // behaviour if overlay is not available. + intent.putExtra("overlay", true); + + context.startActivity(intent); + } + @VisibleForTesting static void launchTheCredentialManager(@ManagePasswordsReferrer int referrer, - SyncService syncService, LoadingModalDialogCoordinator loadingDialogCoordinator) { + SyncService syncService, LoadingModalDialogCoordinator loadingDialogCoordinator, + ObservableSupplier<ModalDialogManager> modalDialogManagerSupplier, Context context) { assert canUseUpm(); - CredentialManagerLauncher credentialManagerLauncher = - CredentialManagerLauncherFactory.getInstance().createLauncher(); + CredentialManagerLauncher credentialManagerLauncher; + try { + credentialManagerLauncher = getCredentialManagerLauncher(); + } catch (CredentialManagerBackendException exception) { + if (exception.errorCode != CredentialManagerError.BACKEND_VERSION_NOT_SUPPORTED) return; + + showGmsUpdateDialog(modalDialogManagerSupplier, context); + return; + } loadingDialogCoordinator.show(); @@ -364,15 +405,24 @@ @VisibleForTesting static void launchPasswordCheckup(@PasswordCheckReferrer int referrer, Optional<String> account, - LoadingModalDialogCoordinator loadingDialogCoordinator) { + LoadingModalDialogCoordinator loadingDialogCoordinator, + ObservableSupplier<ModalDialogManager> modalDialogManagerSupplier, Context context) { assert canUseUpm(); + PasswordCheckupClientHelper checkupClient; + try { + checkupClient = getPasswordCheckupClientHelper(); + } catch (PasswordCheckBackendException exception) { + if (exception.errorCode != CredentialManagerError.BACKEND_VERSION_NOT_SUPPORTED) return; + + showGmsUpdateDialog(modalDialogManagerSupplier, context); + return; + } + loadingDialogCoordinator.show(); PasswordCheckupClientMetricsRecorder passwordCheckupMetricsRecorder = new PasswordCheckupClientMetricsRecorder( (PasswordCheckOperation.GET_PASSWORD_CHECKUP_INTENT)); - PasswordCheckupClientHelper checkupClient = - PasswordCheckupClientHelperFactory.getInstance().createHelper(); checkupClient.getPasswordCheckupIntent(referrer, account, (intent) -> { @@ -532,4 +582,58 @@ "Unexpected state for metrics recording: " + loadingDialogState); } } + + private static void showGmsUpdateDialog( + ObservableSupplier<ModalDialogManager> modalDialogManagerSupplier, Context context) { + ModalDialogManager modalDialogManager = modalDialogManagerSupplier.get(); + if (modalDialogManager == null) return; + + OutdatedGmsCoreDialog dialog = + new OutdatedGmsCoreDialog(modalDialogManager, context, isAccepted -> { + if (isAccepted) launchGmsUpdate(context); + }); + dialog.show(); + } + + // TODO(crbug.com/1327578): Exceptions should be thrown by factory, remove this method. + private static PasswordCheckupClientHelper getPasswordCheckupClientHelper() + throws PasswordCheckBackendException { + PasswordCheckupClientHelper helper = + PasswordCheckupClientHelperFactory.getInstance().createHelper(); + if (helper != null) return helper; + + if (PasswordManagerBackendSupportHelper.getInstance().isUpdateNeeded()) { + throw new PasswordCheckBackendException("Backend version is not supported.", + CredentialManagerError.BACKEND_VERSION_NOT_SUPPORTED); + } + if (!PasswordManagerBackendSupportHelper.getInstance().isBackendPresent()) { + throw new PasswordCheckBackendException( + "Backend downstream implementation is not available.", + CredentialManagerError.BACKEND_NOT_AVAILABLE); + } + + throw new PasswordCheckBackendException( + "Can not instantiate backend client.", CredentialManagerError.UNCATEGORIZED); + } + + // TODO(crbug.com/1346239): Exceptions should be thrown by factory, remove this method. + private static CredentialManagerLauncher getCredentialManagerLauncher() + throws CredentialManagerBackendException { + CredentialManagerLauncher launcher = + CredentialManagerLauncherFactory.getInstance().createLauncher(); + if (launcher != null) return launcher; + + if (PasswordManagerBackendSupportHelper.getInstance().isUpdateNeeded()) { + throw new CredentialManagerBackendException("Backend version is not supported.", + CredentialManagerError.BACKEND_VERSION_NOT_SUPPORTED); + } + if (!PasswordManagerBackendSupportHelper.getInstance().isBackendPresent()) { + throw new CredentialManagerBackendException( + "Backend downstream implementation is not available.", + CredentialManagerError.BACKEND_NOT_AVAILABLE); + } + + throw new CredentialManagerBackendException( + "Can not instantiate backend client.", CredentialManagerError.UNCATEGORIZED); + } }
diff --git a/chrome/browser/password_manager/android/junit/src/org/chromium/chrome/browser/password_manager/PasswordManagerHelperTest.java b/chrome/browser/password_manager/android/junit/src/org/chromium/chrome/browser/password_manager/PasswordManagerHelperTest.java index 6e70cbf..9a9a2df 100644 --- a/chrome/browser/password_manager/android/junit/src/org/chromium/chrome/browser/password_manager/PasswordManagerHelperTest.java +++ b/chrome/browser/password_manager/android/junit/src/org/chromium/chrome/browser/password_manager/PasswordManagerHelperTest.java
@@ -6,6 +6,8 @@ import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertNull; import static org.junit.Assert.assertTrue; import static org.mockito.Mockito.any; import static org.mockito.Mockito.anyBoolean; @@ -21,8 +23,11 @@ import android.app.PendingIntent; import android.app.PendingIntent.CanceledException; import android.content.Context; +import android.content.Intent; +import android.net.Uri; import android.os.Bundle; +import com.google.android.gms.common.GoogleApiAvailability; import com.google.android.gms.common.api.ApiException; import com.google.android.gms.common.api.CommonStatusCodes; import com.google.android.gms.common.api.Status; @@ -50,6 +55,7 @@ import org.chromium.base.test.util.JniMocker; import org.chromium.chrome.browser.flags.ChromeFeatureList; import org.chromium.chrome.browser.loading_modal.LoadingModalDialogCoordinator; +import org.chromium.chrome.browser.password_manager.CredentialManagerLauncher.CredentialManagerBackendException; import org.chromium.chrome.browser.password_manager.CredentialManagerLauncher.CredentialManagerError; import org.chromium.chrome.browser.password_manager.PasswordCheckupClientHelper.PasswordCheckBackendException; import org.chromium.chrome.browser.password_manager.PasswordManagerHelper.PasswordCheckOperation; @@ -111,7 +117,7 @@ @Rule public JniMocker mJniMocker = new JniMocker(); - // TODO(crbug.com/1345232): Use fakes for CredentialManagerLauncher, PasswordCheckupClientHelper + // TODO(crbug.com/1346235): Use fakes for CredentialManagerLauncher, PasswordCheckupClientHelper // and corresponding factories @Mock private PasswordCheckupClientHelperFactory mPasswordCheckupClientHelperFactoryMock; @@ -143,6 +149,7 @@ @Mock private ObservableSupplier<ModalDialogManager> mModalDialogManagerSupplier; + // TODO(crbug.com/1346235): Use fake instead of mock @Mock private PasswordManagerBackendSupportHelper mBackendSupportHelperMock; @@ -154,7 +161,7 @@ private LoadingModalDialogCoordinator.Observer mLoadingDialogCoordinatorObserver; @Before - public void setUp() { + public void setUp() throws PasswordCheckBackendException, CredentialManagerBackendException { UmaRecorderHolder.resetForTesting(); MockitoAnnotations.initMocks(this); mJniMocker.mock(UserPrefsJni.TEST_HOOKS, mUserPrefsJniMock); @@ -335,7 +342,7 @@ @Test @EnableFeatures(ChromeFeatureList.UNIFIED_PASSWORD_MANAGER_ANDROID) - public void testCanNotUseUpmCheckupWhenBackendUpdateNeeded() { + public void testCanUseUpmCheckupWhenBackendUpdateNeeded() { SyncService.overrideForTests(mSyncServiceMock); when(mSyncServiceMock.getChosenDataTypes()) .thenReturn(CollectionUtil.newHashSet(ModelType.PASSWORDS)); @@ -347,12 +354,111 @@ when(mBackendSupportHelperMock.isBackendPresent()).thenReturn(true); when(mBackendSupportHelperMock.isUpdateNeeded()).thenReturn(true); - assertFalse(PasswordManagerHelper.canUseUpm()); + assertTrue(PasswordManagerHelper.canUseUpm()); SyncService.resetForTests(); } @Test @EnableFeatures(ChromeFeatureList.UNIFIED_PASSWORD_MANAGER_ANDROID) + public void testShowsUpdateDialogOnShowPasswordSettingsWhenBackendUpdateNeeded() + throws CredentialManagerBackendException { + chooseToSyncPasswordsWithoutCustomPassphrase(); + + when(mBackendSupportHelperMock.isBackendPresent()).thenReturn(true); + when(mBackendSupportHelperMock.isUpdateNeeded()).thenReturn(true); + + when(mCredentialManagerLauncherFactoryMock.createLauncher()) + .thenThrow(new CredentialManagerBackendException( + "", CredentialManagerError.BACKEND_VERSION_NOT_SUPPORTED)); + + PasswordManagerHelper.showPasswordSettings(ContextUtils.getApplicationContext(), + ManagePasswordsReferrer.CHROME_SETTINGS, mSettingsLauncherMock, mSyncServiceMock, + mModalDialogManagerSupplier); + + assertNotNull(mModalDialogManager.getCurrentDialogForTest()); + + SyncService.resetForTests(); + } + + @Test + @EnableFeatures(ChromeFeatureList.UNIFIED_PASSWORD_MANAGER_ANDROID) + public void testShowsUpdateDialogOnShowPasswordCheckupWhenBackendUpdateNeeded() + throws PasswordCheckBackendException { + chooseToSyncPasswordsWithoutCustomPassphrase(); + + when(mBackendSupportHelperMock.isBackendPresent()).thenReturn(true); + when(mBackendSupportHelperMock.isUpdateNeeded()).thenReturn(true); + + when(mPasswordCheckupClientHelperFactoryMock.createHelper()) + .thenThrow(new PasswordCheckBackendException( + "", CredentialManagerError.BACKEND_VERSION_NOT_SUPPORTED)); + + PasswordManagerHelper.showPasswordCheckup(ContextUtils.getApplicationContext(), + PasswordCheckReferrer.SAFETY_CHECK, mSyncServiceMock, mModalDialogManagerSupplier); + + assertNotNull(mModalDialogManager.getCurrentDialogForTest()); + + SyncService.resetForTests(); + } + + @Test + @EnableFeatures(ChromeFeatureList.UNIFIED_PASSWORD_MANAGER_ANDROID) + public void testDoesNotShowUpdateDialogOnShowPasswordSettingsWhenNoUpdateNeeded() { + chooseToSyncPasswordsWithoutCustomPassphrase(); + + when(mBackendSupportHelperMock.isBackendPresent()).thenReturn(true); + when(mBackendSupportHelperMock.isUpdateNeeded()).thenReturn(false); + + PasswordManagerHelper.showPasswordSettings(ContextUtils.getApplicationContext(), + ManagePasswordsReferrer.CHROME_SETTINGS, mSettingsLauncherMock, mSyncServiceMock, + mModalDialogManagerSupplier); + + assertNull(mModalDialogManager.getCurrentDialogForTest()); + + SyncService.resetForTests(); + } + + @Test + @EnableFeatures(ChromeFeatureList.UNIFIED_PASSWORD_MANAGER_ANDROID) + public void testDoesNotShowUpdateDialogOnShowPasswordCheckupWhenNoUpdateNeeded() { + chooseToSyncPasswordsWithoutCustomPassphrase(); + + when(mBackendSupportHelperMock.isBackendPresent()).thenReturn(true); + when(mBackendSupportHelperMock.isUpdateNeeded()).thenReturn(false); + + PasswordManagerHelper.showPasswordCheckup(ContextUtils.getApplicationContext(), + PasswordCheckReferrer.SAFETY_CHECK, mSyncServiceMock, mModalDialogManagerSupplier); + + assertNull(mModalDialogManager.getCurrentDialogForTest()); + + SyncService.resetForTests(); + } + + @Test + @EnableFeatures(ChromeFeatureList.UNIFIED_PASSWORD_MANAGER_ANDROID) + public void testSendsIntentOnLaunchGmsUpdate() { + Context mockContext = mock(Context.class); + + PasswordManagerHelper.launchGmsUpdate(mockContext); + + doAnswer(invocation -> { + Intent intent = invocation.getArgument(0); + assertEquals(intent.getAction(), Intent.ACTION_VIEW); + assertEquals(intent.getPackage(), "com.android.vending"); + assertEquals(intent.getBooleanExtra("overlay", false), true); + assertEquals(intent.getStringExtra("callerId"), mockContext.getPackageName()); + assertEquals(intent.getData(), + Uri.parse("market://details?id=" + + GoogleApiAvailability.GOOGLE_PLAY_SERVICES_PACKAGE + + "&referrer=chrome_upm")); + return null; + }) + .when(mockContext) + .startActivity(any(Intent.class)); + } + + @Test + @EnableFeatures(ChromeFeatureList.UNIFIED_PASSWORD_MANAGER_ANDROID) public void testResetsUnenrollment() { SyncService.overrideForTests(mSyncServiceMock); when(mSyncServiceMock.getChosenDataTypes()) @@ -675,7 +781,8 @@ chooseToSyncPasswordsWithoutCustomPassphrase(); PasswordManagerHelper.launchPasswordCheckup(PasswordCheckReferrer.SAFETY_CHECK, - Optional.of(TEST_EMAIL_ADDRESS), mLoadingModalDialogCoordinator); + Optional.of(TEST_EMAIL_ADDRESS), mLoadingModalDialogCoordinator, + mModalDialogManagerSupplier, ContextUtils.getApplicationContext()); verify(mLoadingModalDialogCoordinator).show(); } @@ -687,7 +794,8 @@ setUpSuccessfulCheckupIntentFetching(mPendingIntentMock); PasswordManagerHelper.launchPasswordCheckup(PasswordCheckReferrer.SAFETY_CHECK, - Optional.of(TEST_EMAIL_ADDRESS), mLoadingModalDialogCoordinator); + Optional.of(TEST_EMAIL_ADDRESS), mLoadingModalDialogCoordinator, + mModalDialogManagerSupplier, ContextUtils.getApplicationContext()); verify(mLoadingModalDialogCoordinator).dismiss(); } @@ -701,7 +809,8 @@ doThrow(CanceledException.class).when(mPendingIntentMock).send(); PasswordManagerHelper.launchPasswordCheckup(PasswordCheckReferrer.SAFETY_CHECK, - Optional.of(TEST_EMAIL_ADDRESS), mLoadingModalDialogCoordinator); + Optional.of(TEST_EMAIL_ADDRESS), mLoadingModalDialogCoordinator, + mModalDialogManagerSupplier, ContextUtils.getApplicationContext()); verify(mLoadingModalDialogCoordinator).dismiss(); } @@ -715,7 +824,8 @@ new PasswordCheckBackendException("", CredentialManagerError.UNCATEGORIZED)); PasswordManagerHelper.launchPasswordCheckup(PasswordCheckReferrer.SAFETY_CHECK, - Optional.of(TEST_EMAIL_ADDRESS), mLoadingModalDialogCoordinator); + Optional.of(TEST_EMAIL_ADDRESS), mLoadingModalDialogCoordinator, + mModalDialogManagerSupplier, ContextUtils.getApplicationContext()); verify(mLoadingModalDialogCoordinator).dismiss(); } @@ -730,7 +840,8 @@ .thenReturn(LoadingModalDialogCoordinator.State.CANCELLED); PasswordManagerHelper.launchPasswordCheckup(PasswordCheckReferrer.SAFETY_CHECK, - Optional.of(TEST_EMAIL_ADDRESS), mLoadingModalDialogCoordinator); + Optional.of(TEST_EMAIL_ADDRESS), mLoadingModalDialogCoordinator, + mModalDialogManagerSupplier, ContextUtils.getApplicationContext()); verify(mPendingIntentMock, never()).send(); } @@ -745,7 +856,8 @@ .thenReturn(LoadingModalDialogCoordinator.State.TIMED_OUT); PasswordManagerHelper.launchPasswordCheckup(PasswordCheckReferrer.SAFETY_CHECK, - Optional.of(TEST_EMAIL_ADDRESS), mLoadingModalDialogCoordinator); + Optional.of(TEST_EMAIL_ADDRESS), mLoadingModalDialogCoordinator, + mModalDialogManagerSupplier, ContextUtils.getApplicationContext()); verify(mPendingIntentMock, never()).send(); } @@ -759,7 +871,8 @@ .thenReturn(LoadingModalDialogCoordinator.State.SHOWN); PasswordManagerHelper.launchPasswordCheckup(PasswordCheckReferrer.SAFETY_CHECK, - Optional.of(TEST_EMAIL_ADDRESS), mLoadingModalDialogCoordinator); + Optional.of(TEST_EMAIL_ADDRESS), mLoadingModalDialogCoordinator, + mModalDialogManagerSupplier, ContextUtils.getApplicationContext()); verify(mPendingIntentMock, never()).send(); @@ -773,7 +886,8 @@ chooseToSyncPasswordsWithoutCustomPassphrase(); PasswordManagerHelper.launchTheCredentialManager(ManagePasswordsReferrer.CHROME_SETTINGS, - mSyncServiceMock, mLoadingModalDialogCoordinator); + mSyncServiceMock, mLoadingModalDialogCoordinator, mModalDialogManagerSupplier, + ContextUtils.getApplicationContext()); verify(mLoadingModalDialogCoordinator).show(); } @@ -786,7 +900,8 @@ setUpSuccessfulIntentFetchingForAccount(); PasswordManagerHelper.launchTheCredentialManager(ManagePasswordsReferrer.CHROME_SETTINGS, - mSyncServiceMock, mLoadingModalDialogCoordinator); + mSyncServiceMock, mLoadingModalDialogCoordinator, mModalDialogManagerSupplier, + ContextUtils.getApplicationContext()); verify(mLoadingModalDialogCoordinator).dismiss(); } @@ -800,7 +915,8 @@ doThrow(CanceledException.class).when(mPendingIntentMock).send(); PasswordManagerHelper.launchTheCredentialManager(ManagePasswordsReferrer.CHROME_SETTINGS, - mSyncServiceMock, mLoadingModalDialogCoordinator); + mSyncServiceMock, mLoadingModalDialogCoordinator, mModalDialogManagerSupplier, + ContextUtils.getApplicationContext()); verify(mLoadingModalDialogCoordinator).dismiss(); } @@ -813,7 +929,8 @@ returnErrorWhenFetchingIntentForAccount(CredentialManagerError.API_ERROR); PasswordManagerHelper.launchTheCredentialManager(ManagePasswordsReferrer.CHROME_SETTINGS, - mSyncServiceMock, mLoadingModalDialogCoordinator); + mSyncServiceMock, mLoadingModalDialogCoordinator, mModalDialogManagerSupplier, + ContextUtils.getApplicationContext()); verify(mLoadingModalDialogCoordinator).dismiss(); } @@ -828,7 +945,8 @@ .thenReturn(LoadingModalDialogCoordinator.State.CANCELLED); PasswordManagerHelper.launchTheCredentialManager(ManagePasswordsReferrer.CHROME_SETTINGS, - mSyncServiceMock, mLoadingModalDialogCoordinator); + mSyncServiceMock, mLoadingModalDialogCoordinator, mModalDialogManagerSupplier, + ContextUtils.getApplicationContext()); verify(mPendingIntentMock, never()).send(); } @@ -843,7 +961,8 @@ .thenReturn(LoadingModalDialogCoordinator.State.TIMED_OUT); PasswordManagerHelper.launchTheCredentialManager(ManagePasswordsReferrer.CHROME_SETTINGS, - mSyncServiceMock, mLoadingModalDialogCoordinator); + mSyncServiceMock, mLoadingModalDialogCoordinator, mModalDialogManagerSupplier, + ContextUtils.getApplicationContext()); verify(mPendingIntentMock, never()).send(); } @@ -857,7 +976,8 @@ .thenReturn(LoadingModalDialogCoordinator.State.SHOWN); PasswordManagerHelper.launchTheCredentialManager(ManagePasswordsReferrer.CHROME_SETTINGS, - mSyncServiceMock, mLoadingModalDialogCoordinator); + mSyncServiceMock, mLoadingModalDialogCoordinator, mModalDialogManagerSupplier, + ContextUtils.getApplicationContext()); verify(mPendingIntentMock, never()).send(); @@ -874,7 +994,8 @@ .thenReturn(LoadingModalDialogCoordinator.State.PENDING); PasswordManagerHelper.launchTheCredentialManager(ManagePasswordsReferrer.CHROME_SETTINGS, - mSyncServiceMock, mLoadingModalDialogCoordinator); + mSyncServiceMock, mLoadingModalDialogCoordinator, mModalDialogManagerSupplier, + ContextUtils.getApplicationContext()); verify(mLoadingModalDialogCoordinator).dismiss(); @@ -895,7 +1016,8 @@ when(mLoadingModalDialogCoordinator.isImmediatelyDismissable()).thenReturn(true); PasswordManagerHelper.launchTheCredentialManager(ManagePasswordsReferrer.CHROME_SETTINGS, - mSyncServiceMock, mLoadingModalDialogCoordinator); + mSyncServiceMock, mLoadingModalDialogCoordinator, mModalDialogManagerSupplier, + ContextUtils.getApplicationContext()); assertEquals(1, RecordHistogram.getHistogramValueCountForTesting( @@ -917,7 +1039,8 @@ when(mLoadingModalDialogCoordinator.isImmediatelyDismissable()).thenReturn(false); PasswordManagerHelper.launchTheCredentialManager(ManagePasswordsReferrer.CHROME_SETTINGS, - mSyncServiceMock, mLoadingModalDialogCoordinator); + mSyncServiceMock, mLoadingModalDialogCoordinator, mModalDialogManagerSupplier, + ContextUtils.getApplicationContext()); assertEquals(0, RecordHistogram.getHistogramTotalCountForTesting( @@ -943,7 +1066,8 @@ .thenReturn(LoadingModalDialogCoordinator.State.CANCELLED); PasswordManagerHelper.launchTheCredentialManager(ManagePasswordsReferrer.CHROME_SETTINGS, - mSyncServiceMock, mLoadingModalDialogCoordinator); + mSyncServiceMock, mLoadingModalDialogCoordinator, mModalDialogManagerSupplier, + ContextUtils.getApplicationContext()); assertEquals(1, RecordHistogram.getHistogramValueCountForTesting( @@ -961,7 +1085,8 @@ .thenReturn(LoadingModalDialogCoordinator.State.SHOWN); PasswordManagerHelper.launchTheCredentialManager(ManagePasswordsReferrer.CHROME_SETTINGS, - mSyncServiceMock, mLoadingModalDialogCoordinator); + mSyncServiceMock, mLoadingModalDialogCoordinator, mModalDialogManagerSupplier, + ContextUtils.getApplicationContext()); assertEquals(0, RecordHistogram.getHistogramTotalCountForTesting( @@ -986,7 +1111,8 @@ .thenReturn(LoadingModalDialogCoordinator.State.TIMED_OUT); PasswordManagerHelper.launchTheCredentialManager(ManagePasswordsReferrer.CHROME_SETTINGS, - mSyncServiceMock, mLoadingModalDialogCoordinator); + mSyncServiceMock, mLoadingModalDialogCoordinator, mModalDialogManagerSupplier, + ContextUtils.getApplicationContext()); assertEquals(1, RecordHistogram.getHistogramValueCountForTesting( @@ -1004,7 +1130,8 @@ .thenReturn(LoadingModalDialogCoordinator.State.SHOWN); PasswordManagerHelper.launchTheCredentialManager(ManagePasswordsReferrer.CHROME_SETTINGS, - mSyncServiceMock, mLoadingModalDialogCoordinator); + mSyncServiceMock, mLoadingModalDialogCoordinator, mModalDialogManagerSupplier, + ContextUtils.getApplicationContext()); assertEquals(0, RecordHistogram.getHistogramTotalCountForTesting( @@ -1030,7 +1157,8 @@ .thenReturn(LoadingModalDialogCoordinator.State.PENDING); PasswordManagerHelper.launchTheCredentialManager(ManagePasswordsReferrer.CHROME_SETTINGS, - mSyncServiceMock, mLoadingModalDialogCoordinator); + mSyncServiceMock, mLoadingModalDialogCoordinator, mModalDialogManagerSupplier, + ContextUtils.getApplicationContext()); verify(mLoadingModalDialogCoordinator).dismiss(); @@ -1051,7 +1179,8 @@ .thenReturn(LoadingModalDialogCoordinator.State.PENDING); PasswordManagerHelper.launchTheCredentialManager(ManagePasswordsReferrer.CHROME_SETTINGS, - mSyncServiceMock, mLoadingModalDialogCoordinator); + mSyncServiceMock, mLoadingModalDialogCoordinator, mModalDialogManagerSupplier, + ContextUtils.getApplicationContext()); verify(mLoadingModalDialogCoordinator).dismiss(); @@ -1070,7 +1199,8 @@ .thenReturn(LoadingModalDialogCoordinator.State.PENDING); PasswordManagerHelper.launchPasswordCheckup(PasswordCheckReferrer.SAFETY_CHECK, - Optional.of(TEST_EMAIL_ADDRESS), mLoadingModalDialogCoordinator); + Optional.of(TEST_EMAIL_ADDRESS), mLoadingModalDialogCoordinator, + mModalDialogManagerSupplier, ContextUtils.getApplicationContext()); verify(mLoadingModalDialogCoordinator).dismiss(); @@ -1090,7 +1220,8 @@ when(mLoadingModalDialogCoordinator.isImmediatelyDismissable()).thenReturn(true); PasswordManagerHelper.launchPasswordCheckup(PasswordCheckReferrer.SAFETY_CHECK, - Optional.of(TEST_EMAIL_ADDRESS), mLoadingModalDialogCoordinator); + Optional.of(TEST_EMAIL_ADDRESS), mLoadingModalDialogCoordinator, + mModalDialogManagerSupplier, ContextUtils.getApplicationContext()); ShadowLooper.runUiThreadTasksIncludingDelayedTasks(); verify(mLoadingModalDialogCoordinator).dismiss(); @@ -1112,7 +1243,8 @@ when(mLoadingModalDialogCoordinator.isImmediatelyDismissable()).thenReturn(false); PasswordManagerHelper.launchPasswordCheckup(PasswordCheckReferrer.SAFETY_CHECK, - Optional.of(TEST_EMAIL_ADDRESS), mLoadingModalDialogCoordinator); + Optional.of(TEST_EMAIL_ADDRESS), mLoadingModalDialogCoordinator, + mModalDialogManagerSupplier, ContextUtils.getApplicationContext()); assertEquals(0, RecordHistogram.getHistogramTotalCountForTesting( @@ -1137,7 +1269,8 @@ .thenReturn(LoadingModalDialogCoordinator.State.CANCELLED); PasswordManagerHelper.launchPasswordCheckup(PasswordCheckReferrer.SAFETY_CHECK, - Optional.of(TEST_EMAIL_ADDRESS), mLoadingModalDialogCoordinator); + Optional.of(TEST_EMAIL_ADDRESS), mLoadingModalDialogCoordinator, + mModalDialogManagerSupplier, ContextUtils.getApplicationContext()); assertEquals(1, RecordHistogram.getHistogramValueCountForTesting( @@ -1155,7 +1288,8 @@ .thenReturn(LoadingModalDialogCoordinator.State.SHOWN); PasswordManagerHelper.launchPasswordCheckup(PasswordCheckReferrer.SAFETY_CHECK, - Optional.of(TEST_EMAIL_ADDRESS), mLoadingModalDialogCoordinator); + Optional.of(TEST_EMAIL_ADDRESS), mLoadingModalDialogCoordinator, + mModalDialogManagerSupplier, ContextUtils.getApplicationContext()); assertEquals(0, RecordHistogram.getHistogramTotalCountForTesting( @@ -1180,7 +1314,8 @@ .thenReturn(LoadingModalDialogCoordinator.State.TIMED_OUT); PasswordManagerHelper.launchPasswordCheckup(PasswordCheckReferrer.SAFETY_CHECK, - Optional.of(TEST_EMAIL_ADDRESS), mLoadingModalDialogCoordinator); + Optional.of(TEST_EMAIL_ADDRESS), mLoadingModalDialogCoordinator, + mModalDialogManagerSupplier, ContextUtils.getApplicationContext()); assertEquals(1, RecordHistogram.getHistogramValueCountForTesting( @@ -1198,7 +1333,8 @@ .thenReturn(LoadingModalDialogCoordinator.State.SHOWN); PasswordManagerHelper.launchPasswordCheckup(PasswordCheckReferrer.SAFETY_CHECK, - Optional.of(TEST_EMAIL_ADDRESS), mLoadingModalDialogCoordinator); + Optional.of(TEST_EMAIL_ADDRESS), mLoadingModalDialogCoordinator, + mModalDialogManagerSupplier, ContextUtils.getApplicationContext()); assertEquals(0, RecordHistogram.getHistogramTotalCountForTesting( @@ -1225,7 +1361,8 @@ .thenReturn(LoadingModalDialogCoordinator.State.PENDING); PasswordManagerHelper.launchPasswordCheckup(PasswordCheckReferrer.SAFETY_CHECK, - Optional.of(TEST_EMAIL_ADDRESS), mLoadingModalDialogCoordinator); + Optional.of(TEST_EMAIL_ADDRESS), mLoadingModalDialogCoordinator, + mModalDialogManagerSupplier, ContextUtils.getApplicationContext()); verify(mLoadingModalDialogCoordinator).dismiss(); @@ -1245,7 +1382,8 @@ .thenReturn(LoadingModalDialogCoordinator.State.PENDING); PasswordManagerHelper.launchPasswordCheckup(PasswordCheckReferrer.SAFETY_CHECK, - Optional.of(TEST_EMAIL_ADDRESS), mLoadingModalDialogCoordinator); + Optional.of(TEST_EMAIL_ADDRESS), mLoadingModalDialogCoordinator, + mModalDialogManagerSupplier, ContextUtils.getApplicationContext()); verify(mLoadingModalDialogCoordinator).dismiss();
diff --git a/chrome/browser/policy/value_provider/extension_policies_value_provider.cc b/chrome/browser/policy/value_provider/extension_policies_value_provider.cc new file mode 100644 index 0000000..6e35ed3 --- /dev/null +++ b/chrome/browser/policy/value_provider/extension_policies_value_provider.cc
@@ -0,0 +1,159 @@ +// Copyright 2022 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include "chrome/browser/policy/value_provider/extension_policies_value_provider.h" + +#include <memory> + +#include "base/memory/scoped_refptr.h" +#include "base/values.h" +#include "chrome/browser/policy/chrome_policy_conversions_client.h" +#include "chrome/browser/policy/schema_registry_service.h" +#include "chrome/browser/policy/value_provider/value_provider_util.h" +#include "chrome/browser/profiles/profile.h" +#include "components/policy/core/common/policy_namespace.h" +#include "components/policy/core/common/policy_service.h" +#include "components/policy/core/common/schema.h" +#include "components/policy/core/common/schema_map.h" +#include "components/policy/core/common/schema_registry.h" +#include "content/public/browser/web_contents.h" +#include "extensions/browser/extension_registry.h" +#include "extensions/common/extension.h" +#include "extensions/common/extension_set.h" +#include "extensions/common/manifest.h" +#include "extensions/common/manifest_constants.h" + +#if BUILDFLAG(IS_CHROMEOS_ASH) +#include "chrome/browser/ash/profiles/profile_helper.h" +#endif // BUILDFLAG(IS_CHROMEOS_ASH) + +namespace { + +bool ContainsStorageManagedSchema(const extensions::Extension* extension) { + return extension->manifest()->FindPath( + extensions::manifest_keys::kStorageManagedSchema); +} + +} // namespace + +ExtensionPoliciesValueProvider::ExtensionPoliciesValueProvider(Profile* profile) + : profile_(profile) { + extension_registry_observation_.Observe( + extensions::ExtensionRegistry::Get(profile_)); + policy::PolicyService* policy_service = GetPolicyService(profile_); + policy_service->AddObserver(policy::POLICY_DOMAIN_EXTENSIONS, this); +#if BUILDFLAG(IS_CHROMEOS_ASH) + policy_service->AddObserver(policy::POLICY_DOMAIN_SIGNIN_EXTENSIONS, this); +#endif // BUILDFLAG(IS_CHROMEOS_ASH) +} + +ExtensionPoliciesValueProvider::~ExtensionPoliciesValueProvider() { + policy::PolicyService* policy_service = GetPolicyService(profile_); + policy_service->RemoveObserver(policy::POLICY_DOMAIN_EXTENSIONS, this); +#if BUILDFLAG(IS_CHROMEOS_ASH) + policy_service->RemoveObserver(policy::POLICY_DOMAIN_SIGNIN_EXTENSIONS, this); +#endif // BUILDFLAG(IS_CHROMEOS_ASH) +} + +base::Value::List ExtensionPoliciesValueProvider::GetValues() { + auto client = + std::make_unique<policy::ChromePolicyConversionsClient>(profile_); + base::Value::List extension_policies; + if (client->HasUserPolicies()) { + for (auto& policy : + client->GetExtensionPolicies(policy::POLICY_DOMAIN_EXTENSIONS)) { + extension_policies.Append(std::move(policy)); + } + } +#if BUILDFLAG(IS_CHROMEOS_ASH) + for (auto& policy : + client->GetExtensionPolicies(policy::POLICY_DOMAIN_SIGNIN_EXTENSIONS)) { + extension_policies.Append(std::move(policy)); + } +#endif // BUILDFLAG(IS_CHROMEOS_ASH) + return extension_policies; +} + +base::Value::Dict ExtensionPoliciesValueProvider::GetNames() { + base::Value::Dict extension_policy_names = + GetExtensionPolicyNames(policy::POLICY_DOMAIN_EXTENSIONS); +#if BUILDFLAG(IS_CHROMEOS_ASH) + extension_policy_names.Merge( + GetExtensionPolicyNames(policy::POLICY_DOMAIN_SIGNIN_EXTENSIONS)); +#endif // BUILDFLAG(IS_CHROMEOS_ASH) + return extension_policy_names; +} + +base::Value::Dict ExtensionPoliciesValueProvider::GetExtensionPolicyNames( + policy::PolicyDomain policy_domain) { + base::Value::Dict names; +#if BUILDFLAG(IS_CHROMEOS_ASH) + Profile* extension_profile = + policy_domain == policy::POLICY_DOMAIN_SIGNIN_EXTENSIONS + ? ash::ProfileHelper::GetSigninProfile() + : profile_.get(); +#else // BUILDFLAG(IS_CHROMEOS_ASH) + Profile* extension_profile = profile_.get(); +#endif // BUILDFLAG(IS_CHROMEOS_ASH) + + scoped_refptr<policy::SchemaMap> schema_map = + extension_profile->GetOriginalProfile() + ->GetPolicySchemaRegistryService() + ->registry() + ->schema_map(); + + const extensions::ExtensionRegistry* registry = + extensions::ExtensionRegistry::Get(extension_profile); + std::unique_ptr<extensions::ExtensionSet> extension_set = + registry->GenerateInstalledExtensionsSet(); + + for (const scoped_refptr<const extensions::Extension>& extension : + *extension_set) { + // Skip this extension if it's not an enterprise extension. + if (!ContainsStorageManagedSchema(extension.get())) { + continue; + } + base::Value::Dict extension_value; + extension_value.Set("name", extension->name()); + const policy::Schema* schema = schema_map->GetSchema( + policy::PolicyNamespace(policy_domain, extension->id())); + base::Value::List policy_names; + if (schema && schema->valid()) { + // Get policy names from the extension's policy schema. + for (auto prop = schema->GetPropertiesIterator(); !prop.IsAtEnd(); + prop.Advance()) { + policy_names.Append(prop.key()); + } + } + extension_value.Set("policyNames", std::move(policy_names)); + names.Set(extension->id(), std::move(extension_value)); + } + return names; +} + +void ExtensionPoliciesValueProvider::OnExtensionLoaded( + content::BrowserContext* browser_context, + const extensions::Extension* extension) { + // Notify value change if the loaded extension has policy. + if (ContainsStorageManagedSchema(extension)) { + NotifyValueChange(); + } +} + +void ExtensionPoliciesValueProvider::OnExtensionUnloaded( + content::BrowserContext* browser_context, + const extensions::Extension* extension, + extensions::UnloadedExtensionReason reason) { + // Notify value change if the unloaded extension has policy. + if (ContainsStorageManagedSchema(extension)) { + NotifyValueChange(); + } +} + +void ExtensionPoliciesValueProvider::OnPolicyUpdated( + const policy::PolicyNamespace& ns, + const policy::PolicyMap& previous, + const policy::PolicyMap& current) { + NotifyValueChange(); +}
diff --git a/chrome/browser/policy/value_provider/extension_policies_value_provider.h b/chrome/browser/policy/value_provider/extension_policies_value_provider.h new file mode 100644 index 0000000..38835457 --- /dev/null +++ b/chrome/browser/policy/value_provider/extension_policies_value_provider.h
@@ -0,0 +1,60 @@ +// Copyright 2022 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#ifndef CHROME_BROWSER_POLICY_VALUE_PROVIDER_EXTENSION_POLICIES_VALUE_PROVIDER_H_ +#define CHROME_BROWSER_POLICY_VALUE_PROVIDER_EXTENSION_POLICIES_VALUE_PROVIDER_H_ + +#include "base/memory/raw_ptr.h" +#include "base/scoped_observation.h" +#include "base/values.h" +#include "chrome/browser/policy/value_provider/policy_value_provider.h" +#include "chrome/browser/profiles/profile.h" +#include "components/policy/core/common/policy_namespace.h" +#include "components/policy/core/common/policy_service.h" +#include "extensions/browser/extension_registry.h" +#include "extensions/browser/extension_registry_observer.h" +#include "extensions/browser/unloaded_extension_reason.h" +#include "extensions/common/extension.h" + +namespace content { +class BrowserContext; +} // namespace content + +// Returns the extension policy values. +class ExtensionPoliciesValueProvider + : public policy::PolicyValueProvider, + public extensions::ExtensionRegistryObserver, + public policy::PolicyService::Observer { + public: + explicit ExtensionPoliciesValueProvider(Profile* profile); + ~ExtensionPoliciesValueProvider() override; + + // PolicyValueProvider overrides. + base::Value::List GetValues() override; + + base::Value::Dict GetNames() override; + + // extensions::ExtensionRegistryObserver implementation. + void OnExtensionLoaded(content::BrowserContext* browser_context, + const extensions::Extension* extension) override; + + void OnExtensionUnloaded(content::BrowserContext* browser_context, + const extensions::Extension* extension, + extensions::UnloadedExtensionReason reason) override; + + // policy::PolicyService::Observer implementation. + void OnPolicyUpdated(const policy::PolicyNamespace& ns, + const policy::PolicyMap& previous, + const policy::PolicyMap& current) override; + + private: + base::Value::Dict GetExtensionPolicyNames(policy::PolicyDomain policy_domain); + + base::ScopedObservation<extensions::ExtensionRegistry, + extensions::ExtensionRegistryObserver> + extension_registry_observation_{this}; + base::raw_ptr<Profile> profile_; +}; + +#endif // CHROME_BROWSER_POLICY_VALUE_PROVIDER_EXTENSION_POLICIES_VALUE_PROVIDER_H_
diff --git a/chrome/browser/policy/value_provider/policy_value_provider.cc b/chrome/browser/policy/value_provider/policy_value_provider.cc new file mode 100644 index 0000000..5375a804 --- /dev/null +++ b/chrome/browser/policy/value_provider/policy_value_provider.cc
@@ -0,0 +1,30 @@ +// Copyright 2022 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include "chrome/browser/policy/value_provider/policy_value_provider.h" + +#include <utility> + +#include "base/observer_list.h" + +namespace policy { + +PolicyValueProvider::PolicyValueProvider() = default; + +PolicyValueProvider::~PolicyValueProvider() = default; + +void PolicyValueProvider::NotifyValueChange() { + for (auto& observer : observers_) + observer.OnPolicyValueChanged(); +} + +void PolicyValueProvider::AddObserver(Observer* observer) { + observers_.AddObserver(observer); +} + +void PolicyValueProvider::RemoveObserver(Observer* observer) { + observers_.RemoveObserver(observer); +} + +} // namespace policy
diff --git a/chrome/browser/policy/value_provider/policy_value_provider.h b/chrome/browser/policy/value_provider/policy_value_provider.h new file mode 100644 index 0000000..c78c950 --- /dev/null +++ b/chrome/browser/policy/value_provider/policy_value_provider.h
@@ -0,0 +1,46 @@ +// Copyright 2022 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#ifndef CHROME_BROWSER_POLICY_VALUE_PROVIDER_POLICY_VALUE_PROVIDER_H_ +#define CHROME_BROWSER_POLICY_VALUE_PROVIDER_POLICY_VALUE_PROVIDER_H_ + +#include "base/observer_list.h" +#include "base/observer_list_types.h" +#include "base/values.h" + +namespace policy { + +// An interface for querying a policy provider about policy names and values and +// refreshing them. +class PolicyValueProvider { + public: + class Observer : public base::CheckedObserver { + public: + virtual void OnPolicyValueChanged() = 0; + }; + + PolicyValueProvider(); + PolicyValueProvider(const PolicyValueProvider&) = delete; + PolicyValueProvider& operator=(const PolicyValueProvider&) = delete; + virtual ~PolicyValueProvider(); + + // Returns the list of available policy values. + virtual base::Value::List GetValues() = 0; + + // Returns the dictionary containing the policy names. + virtual base::Value::Dict GetNames() = 0; + + void AddObserver(Observer* observer); + void RemoveObserver(Observer* observer); + + protected: + void NotifyValueChange(); + + private: + base::ObserverList<Observer> observers_; +}; + +} // namespace policy + +#endif // CHROME_BROWSER_POLICY_VALUE_PROVIDER_POLICY_VALUE_PROVIDER_H_
diff --git a/chrome/browser/policy/value_provider/value_provider_util.cc b/chrome/browser/policy/value_provider/value_provider_util.cc new file mode 100644 index 0000000..795156e5 --- /dev/null +++ b/chrome/browser/policy/value_provider/value_provider_util.cc
@@ -0,0 +1,15 @@ +// Copyright 2022 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include "chrome/browser/policy/value_provider/value_provider_util.h" + +#include <utility> + +#include "chrome/browser/policy/profile_policy_connector.h" +#include "chrome/browser/profiles/profile.h" +#include "components/policy/core/common/policy_service.h" + +policy::PolicyService* GetPolicyService(Profile* profile) { + return profile->GetProfilePolicyConnector()->policy_service(); +}
diff --git a/chrome/browser/policy/value_provider/value_provider_util.h b/chrome/browser/policy/value_provider/value_provider_util.h new file mode 100644 index 0000000..26536057 --- /dev/null +++ b/chrome/browser/policy/value_provider/value_provider_util.h
@@ -0,0 +1,14 @@ +// Copyright 2022 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#ifndef CHROME_BROWSER_POLICY_VALUE_PROVIDER_VALUE_PROVIDER_UTIL_H_ +#define CHROME_BROWSER_POLICY_VALUE_PROVIDER_VALUE_PROVIDER_UTIL_H_ + +#include "chrome/browser/profiles/profile.h" +#include "components/policy/core/common/policy_service.h" + +// Returns policy::PolicyService for `profile`. +policy::PolicyService* GetPolicyService(Profile* profile); + +#endif // CHROME_BROWSER_POLICY_VALUE_PROVIDER_VALUE_PROVIDER_UTIL_H_
diff --git a/chrome/browser/prefetch/prefetch_proxy/chrome_speculation_host_delegate.cc b/chrome/browser/prefetch/prefetch_proxy/chrome_speculation_host_delegate.cc index 914f6b4..0886c843a 100644 --- a/chrome/browser/prefetch/prefetch_proxy/chrome_speculation_host_delegate.cc +++ b/chrome/browser/prefetch/prefetch_proxy/chrome_speculation_host_delegate.cc
@@ -118,10 +118,10 @@ should_process_entry); candidates.erase(new_end, candidates.end()); - if (const auto& bypass_for_host = PrefetchProxyBypassProxyForHost()) { + if (const auto& host_to_bypass = PrefetchProxyBypassProxyForHost()) { for (auto& [prefetch_url, prefetch_type] : prefetches) { if (prefetch_type.IsProxyRequired() && - prefetch_url.host() == *bypass_for_host) + prefetch_url.host() == *host_to_bypass) prefetch_type.SetProxyBypassedForTest(); } }
diff --git a/chrome/browser/prefetch/prefetch_proxy/prefetch_container.cc b/chrome/browser/prefetch/prefetch_proxy/prefetch_container.cc index 7c509c5b..e7f27dd5 100644 --- a/chrome/browser/prefetch/prefetch_proxy/prefetch_container.cc +++ b/chrome/browser/prefetch/prefetch_proxy/prefetch_container.cc
@@ -121,7 +121,7 @@ network_context_ = std::make_unique<PrefetchProxyNetworkContext>( profile, prefetch_type_.IsIsolatedNetworkContextRequired(), prefetch_type_.IsProxyRequired() && - !prefetch_type_.IsProxyBypassedForTest()); + !prefetch_type_.IsProxyBypassedForTesting()); } std::unique_ptr<PrefetchProxyNetworkContext>
diff --git a/chrome/browser/prefetch/prefetch_proxy/prefetch_proxy_params.h b/chrome/browser/prefetch/prefetch_proxy/prefetch_proxy_params.h index 75a5ca6..f3bb775d 100644 --- a/chrome/browser/prefetch/prefetch_proxy/prefetch_proxy_params.h +++ b/chrome/browser/prefetch/prefetch_proxy/prefetch_proxy_params.h
@@ -138,8 +138,8 @@ // Whether the PrefetchProxy code can handle non-private prefetches. bool PrefetchProxySupportNonPrivatePrefetches(); -// Whether the PrefetchProxy should bypass using proxy for a specific host for -// test purposes. +// Retrieves a host for which the prefetch proxy should be bypassed for testing +// purposes. absl::optional<std::string> PrefetchProxyBypassProxyForHost(); // Whether only prefetched resources with a text/html MIME type should be used.
diff --git a/chrome/browser/prefetch/prefetch_proxy/prefetch_proxy_tab_helper.cc b/chrome/browser/prefetch/prefetch_proxy/prefetch_proxy_tab_helper.cc index d93fdfd..57bedb60 100644 --- a/chrome/browser/prefetch/prefetch_proxy/prefetch_proxy_tab_helper.cc +++ b/chrome/browser/prefetch/prefetch_proxy/prefetch_proxy_tab_helper.cc
@@ -1042,7 +1042,7 @@ // Verifies that the request was made using the prefetch proxy if required, // or made directly if the proxy was not required. DCHECK(prefetch_container_iter->second->GetPrefetchType() - .IsProxyBypassedForTest() || + .IsProxyBypassedForTesting() || !head->proxy_server.is_direct() == prefetch_container_iter->second->GetPrefetchType() .IsProxyRequired()); @@ -1480,7 +1480,7 @@ // While a registry-controlled domain could still resolve to a non-publicly // routable IP, this allows hosts which are very unlikely to work via the // proxy to be discarded immediately. - if (!prefetch_type.IsProxyBypassedForTest() && + if (!prefetch_type.IsProxyBypassedForTesting() && prefetch_type.IsProxyRequired() && (g_host_non_unique_filter ? g_host_non_unique_filter(url.HostNoBracketsPiece())
diff --git a/chrome/browser/prefetch/prefetch_proxy/prefetch_type.cc b/chrome/browser/prefetch/prefetch_proxy/prefetch_type.cc index dce6ce6..60a75926 100644 --- a/chrome/browser/prefetch/prefetch_proxy/prefetch_type.cc +++ b/chrome/browser/prefetch/prefetch_proxy/prefetch_type.cc
@@ -32,7 +32,7 @@ void PrefetchType::SetProxyBypassedForTest() { DCHECK(use_prefetch_proxy_); - proxy_bypassed_for_test_ = true; + proxy_bypassed_for_testing_ = true; } bool operator==(const PrefetchType& prefetch_type_1, @@ -40,11 +40,11 @@ return std::tie(prefetch_type_1.use_isolated_network_context_, prefetch_type_1.use_prefetch_proxy_, prefetch_type_1.can_prefetch_subresources_, - prefetch_type_1.proxy_bypassed_for_test_) == + prefetch_type_1.proxy_bypassed_for_testing_) == std::tie(prefetch_type_2.use_isolated_network_context_, prefetch_type_2.use_prefetch_proxy_, prefetch_type_2.can_prefetch_subresources_, - prefetch_type_2.proxy_bypassed_for_test_); + prefetch_type_2.proxy_bypassed_for_testing_); } bool operator!=(const PrefetchType& prefetch_type_1,
diff --git a/chrome/browser/prefetch/prefetch_proxy/prefetch_type.h b/chrome/browser/prefetch/prefetch_proxy/prefetch_type.h index f702fa8..27da3552 100644 --- a/chrome/browser/prefetch/prefetch_proxy/prefetch_type.h +++ b/chrome/browser/prefetch/prefetch_proxy/prefetch_type.h
@@ -25,7 +25,7 @@ // Whether this prefetch should bypass the proxy even though it would need to // be proxied for anonymity. For use in test automation only. - bool IsProxyBypassedForTest() const { return proxy_bypassed_for_test_; } + bool IsProxyBypassedForTesting() const { return proxy_bypassed_for_testing_; } void SetProxyBypassedForTest(); @@ -44,7 +44,7 @@ bool use_isolated_network_context_; bool use_prefetch_proxy_; bool can_prefetch_subresources_; - bool proxy_bypassed_for_test_ = false; + bool proxy_bypassed_for_testing_ = false; }; bool operator==(const PrefetchType& prefetch_type_1,
diff --git a/chrome/browser/prefetch/prefetch_proxy/prefetch_type_unittest.cc b/chrome/browser/prefetch/prefetch_proxy/prefetch_type_unittest.cc index 7e58e85..762c15a 100644 --- a/chrome/browser/prefetch/prefetch_proxy/prefetch_type_unittest.cc +++ b/chrome/browser/prefetch/prefetch_proxy/prefetch_type_unittest.cc
@@ -14,10 +14,10 @@ {/*isolated*/ true, /*use_proxy*/ false, /*subresources*/ false}, {/*isolated*/ false, /*use_proxy*/ false, /*subresources*/ false}}; for (auto& prefetch_type : prefetch_types) { - EXPECT_FALSE(prefetch_type.IsProxyBypassedForTest()); + EXPECT_FALSE(prefetch_type.IsProxyBypassedForTesting()); if (prefetch_type.IsProxyRequired()) { prefetch_type.SetProxyBypassedForTest(); - EXPECT_TRUE(prefetch_type.IsProxyBypassedForTest()); + EXPECT_TRUE(prefetch_type.IsProxyBypassedForTesting()); } } }
diff --git a/chrome/browser/resource_coordinator/tab_manager_delegate_chromeos.cc b/chrome/browser/resource_coordinator/tab_manager_delegate_chromeos.cc index 9c26f6c..45400cf 100644 --- a/chrome/browser/resource_coordinator/tab_manager_delegate_chromeos.cc +++ b/chrome/browser/resource_coordinator/tab_manager_delegate_chromeos.cc
@@ -42,7 +42,7 @@ #include "chrome/browser/ui/browser_window.h" #include "chrome/browser/ui/tabs/tab_strip_model.h" #include "chromeos/ash/components/memory/pressure/system_memory_pressure_evaluator.h" -#include "chromeos/dbus/dbus_thread_manager.h" +#include "chromeos/dbus/debug_daemon/debug_daemon_client.h" #include "components/device_event_log/device_event_log.h" #include "content/public/browser/browser_thread.h" #include "content/public/browser/notification_service.h" @@ -525,7 +525,7 @@ } chromeos::DebugDaemonClient* TabManagerDelegate::GetDebugDaemonClient() { - return chromeos::DBusThreadManager::Get()->GetDebugDaemonClient(); + return chromeos::DebugDaemonClient::Get(); } void TabManagerDelegate::LowMemoryKillImpl(
diff --git a/chrome/browser/resources/chromeos/accessibility/braille_ime/PRESUBMIT.py b/chrome/browser/resources/chromeos/accessibility/braille_ime/PRESUBMIT.py deleted file mode 100644 index 469afc80..0000000 --- a/chrome/browser/resources/chromeos/accessibility/braille_ime/PRESUBMIT.py +++ /dev/null
@@ -1,27 +0,0 @@ -# Copyright 2014 The Chromium Authors. All rights reserved. -# Use of this source code is governed by a BSD-style license that can be -# found in the LICENSE file. - -USE_PYTHON3 = True - -"""Presubmit script for the Braille IME.""" - -def CheckChangeOnUpload(input_api, output_api): - def FileFilter(path): - return path.endswith('.js') or path.endswith('check_braille_ime.py') - if not any((FileFilter(p) for p in input_api.LocalPaths())): - return [] - import sys - if not sys.platform.startswith('linux'): - return [] - sys.path.insert(0, input_api.PresubmitLocalPath()) - try: - from check_braille_ime import CheckBrailleIme - finally: - sys.path.pop(0) - success, output = CheckBrailleIme() - if not success: - return [output_api.PresubmitError( - 'Braille IME closure compilation failed', - long_text=output)] - return []
diff --git a/chrome/browser/resources/chromeos/accessibility/braille_ime/check_braille_ime.py b/chrome/browser/resources/chromeos/accessibility/braille_ime/check_braille_ime.py deleted file mode 100755 index 9bc9fee..0000000 --- a/chrome/browser/resources/chromeos/accessibility/braille_ime/check_braille_ime.py +++ /dev/null
@@ -1,47 +0,0 @@ -#!/usr/bin/env python - -# Copyright 2014 The Chromium Authors. All rights reserved. -# Use of this source code is governed by a BSD-style license that can be -# found in the LICENSE file. - -'''Uses the closure compiler to check the braille ime.''' - -import os -import sys - - -_SCRIPT_DIR = os.path.dirname(os.path.abspath(__file__)) - -sys.path.insert(0, os.path.join(_SCRIPT_DIR, '..', 'chromevox', 'tools')) -from jscompilerwrapper import RunCompiler - - -_CHROME_SOURCE_DIR = os.path.normpath( - os.path.join(_SCRIPT_DIR, *[os.path.pardir] * 6)) - - -def CheckBrailleIme(): - print('Compiling braille IME.') - js_files = [ - os.path.join(_SCRIPT_DIR, 'braille_ime.js'), - os.path.join(_SCRIPT_DIR, 'main.js')] - externs = [ - os.path.join( - _CHROME_SOURCE_DIR, - 'third_party/closure_compiler/externs/chrome.js'), - os.path.join( - _CHROME_SOURCE_DIR, - 'third_party/closure_compiler/externs/chrome_extensions.js'), - os.path.join(_SCRIPT_DIR, 'externs.js')] - return RunCompiler(js_files, externs) - - -def main(): - success, output = CheckBrailleIme() - if len(output) > 0: - print(output) - return int(not success) - - -if __name__ == '__main__': - sys.exit(main())
diff --git a/chrome/browser/resources/chromeos/accessibility/chromevox/BUILD.gn b/chrome/browser/resources/chromeos/accessibility/chromevox/BUILD.gn index 05b6854..c86dad33 100644 --- a/chrome/browser/resources/chromeos/accessibility/chromevox/BUILD.gn +++ b/chrome/browser/resources/chromeos/accessibility/chromevox/BUILD.gn
@@ -512,7 +512,6 @@ "$externs_path/automation.js", "$externs_path/braille_display_private.js", "$externs_path/chromeos_info_private.js", - "$externs_path/chrome.js", "$externs_path/chrome_extensions.js", "$externs_path/clipboard.js", "$externs_path/command_line_private.js",
diff --git a/chrome/browser/resources/chromeos/accessibility/chromevox/background/editing/editing_test.js b/chrome/browser/resources/chromeos/accessibility/chromevox/background/editing/editing_test.js index 9c2dfec6..30ee503 100644 --- a/chrome/browser/resources/chromeos/accessibility/chromevox/background/editing/editing_test.js +++ b/chrome/browser/resources/chromeos/accessibility/chromevox/background/editing/editing_test.js
@@ -1606,9 +1606,11 @@ .replay(); }); -AX_TEST_F('ChromeVoxEditingTest', 'MoveByCharSuggestions', async function() { - const mockFeedback = this.createMockFeedback(); - const site = ` +// TODO(https://crbug.com/1342870): Test is flaky. +AX_TEST_F( + 'ChromeVoxEditingTest', 'DISABLED_MoveByCharSuggestions', async function() { + const mockFeedback = this.createMockFeedback(); + const site = ` <div contenteditable="true" role="textbox"> <p>Start</p> <span>I </span> @@ -1618,41 +1620,41 @@ <p>End</p> </div> `; - const root = await this.runWithLoadedTree(site); - await this.focusFirstTextField(root); + const root = await this.runWithLoadedTree(site); + await this.focusFirstTextField(root); - mockFeedback.call(this.press(KeyCode.DOWN)) - .expectSpeech('I ') - // Move forward through line. - .call(this.press(KeyCode.RIGHT)) - .expectSpeech(' ') - .call(this.press(KeyCode.RIGHT)) - .expectSpeech('Suggest', 'Username', 'Insert', 'w') - .call(this.press(KeyCode.RIGHT)) - .expectSpeech('a') - .call(this.press(KeyCode.RIGHT)) - .expectSpeech('s') - .expectSpeech('Insert end') - .call(this.press(KeyCode.RIGHT)) - .call(this.press(KeyCode.RIGHT)) - .expectSpeech('Delete', 'a') - .call(this.press(KeyCode.RIGHT)) - .expectSpeech('m') - .expectSpeech('Delete end', 'Suggest end') - // Move backward through the same line. - .call(this.press(KeyCode.LEFT)) - .expectSpeech('Delete', 'a') - .call(this.press(KeyCode.LEFT)) - .call(this.press(KeyCode.LEFT)) - .expectSpeech('s', 'Insert end') - .call(this.press(KeyCode.LEFT)) - .expectSpeech('a') - .call(this.press(KeyCode.LEFT)) - .expectSpeech('Suggest', 'Insert', 'w') - .call(this.press(KeyCode.DOWN)) - .expectSpeech('End') - .replay(); -}); + mockFeedback.call(this.press(KeyCode.DOWN)) + .expectSpeech('I ') + // Move forward through line. + .call(this.press(KeyCode.RIGHT)) + .expectSpeech(' ') + .call(this.press(KeyCode.RIGHT)) + .expectSpeech('Suggest', 'Username', 'Insert', 'w') + .call(this.press(KeyCode.RIGHT)) + .expectSpeech('a') + .call(this.press(KeyCode.RIGHT)) + .expectSpeech('s') + .expectSpeech('Insert end') + .call(this.press(KeyCode.RIGHT)) + .call(this.press(KeyCode.RIGHT)) + .expectSpeech('Delete', 'a') + .call(this.press(KeyCode.RIGHT)) + .expectSpeech('m') + .expectSpeech('Delete end', 'Suggest end') + // Move backward through the same line. + .call(this.press(KeyCode.LEFT)) + .expectSpeech('Delete', 'a') + .call(this.press(KeyCode.LEFT)) + .call(this.press(KeyCode.LEFT)) + .expectSpeech('s', 'Insert end') + .call(this.press(KeyCode.LEFT)) + .expectSpeech('a') + .call(this.press(KeyCode.LEFT)) + .expectSpeech('Suggest', 'Insert', 'w') + .call(this.press(KeyCode.DOWN)) + .expectSpeech('End') + .replay(); + }); AX_TEST_F('ChromeVoxEditingTest', 'MoveByWordSuggestions', async function() { const mockFeedback = this.createMockFeedback();
diff --git a/chrome/browser/resources/chromeos/accessibility/chromevox/tools/find_js_files.py b/chrome/browser/resources/chromeos/accessibility/chromevox/tools/find_js_files.py deleted file mode 100755 index 62be097..0000000 --- a/chrome/browser/resources/chromeos/accessibility/chromevox/tools/find_js_files.py +++ /dev/null
@@ -1,33 +0,0 @@ -#!/usr/bin/env python - -# Copyright 2014 The Chromium Authors. All rights reserved. -# Use of this source code is governed by a BSD-style license that can be -# found in the LICENSE file. -'''Scans one or more directory trees for .js files, printing filenames, -relative to the current directory on stdout. -''' - -import optparse -import os -import sys - -_SCRIPT_DIR = os.path.realpath(os.path.dirname(__file__)) -_CHROME_SOURCE = os.path.realpath( - os.path.join(_SCRIPT_DIR, *[os.path.pardir] * 7)) -sys.path.insert( - 0, - os.path.join(_CHROME_SOURCE, ('third_party/chromevox/third_party/' + - 'closure-library/closure/bin/build'))) -import treescan - - -def main(): - parser = optparse.OptionParser(description=__doc__) - parser.usage = '%prog <tree_root>...' - _, args = parser.parse_args() - for root in args: - print '\n'.join(treescan.ScanTreeForJsFiles(root)) - - -if __name__ == '__main__': - main()
diff --git a/chrome/browser/resources/chromeos/accessibility/chromevox/tools/jscompilerwrapper.py b/chrome/browser/resources/chromeos/accessibility/chromevox/tools/jscompilerwrapper.py deleted file mode 100755 index b321e413..0000000 --- a/chrome/browser/resources/chromeos/accessibility/chromevox/tools/jscompilerwrapper.py +++ /dev/null
@@ -1,63 +0,0 @@ -#!/usr/bin/env python - -# Copyright 2014 The Chromium Authors. All rights reserved. -# Use of this source code is governed by a BSD-style license that can be -# found in the LICENSE file. -'''Uses the closure compiler to check syntax and semantics of a js module -with dependencies.''' - -import os -import re -import subprocess -import sys - -_SCRIPT_DIR = os.path.dirname(os.path.abspath(__file__)) -_CHROME_SOURCE_DIR = os.path.normpath( - os.path.join(_SCRIPT_DIR, *[os.path.pardir] * 7)) - -# Compiler path. -_CLOSURE_COMPILER_JAR = os.path.join(_CHROME_SOURCE_DIR, 'third_party', - 'closure_compiler', 'compiler', - 'compiler.jar') - -# List of compilation errors to enable with the --jscomp_errors flag. -_JSCOMP_ERRORS = [ - 'accessControls', 'checkTypes', 'checkVars', 'invalidCasts', - 'missingProperties', 'undefinedNames', 'undefinedVars', 'visibility' -] - -# List of compilation groups to turn off with the --jscomp_off flag. -_JSCOMP_OFF = ['duplicate'] - -_java_executable = 'java' - - -def _Error(msg): - print >> sys.stderr, msg - sys.exit(1) - - -def _ExecuteCommand(args, ignore_exit_status=False): - try: - return subprocess.check_output(args, stderr=subprocess.STDOUT) - except subprocess.CalledProcessError as e: - if ignore_exit_status and e.returncode > 0: - return e.output - _Error('%s\nCommand \'%s\' returned non-zero exit status %d' % - (e.output, ' '.join(e.cmd), e.returncode)) - except (OSError, IOError) as e: - _Error('Error executing %s: %s' % (_java_executable, str(e))) - - -def RunCompiler(js_files, externs=[]): - args = [_java_executable, '-jar', _CLOSURE_COMPILER_JAR] - args.extend(['--compilation_level', 'SIMPLE_OPTIMIZATIONS']) - args.extend(['--jscomp_error=%s' % error for error in _JSCOMP_ERRORS]) - args.extend(['--jscomp_off=%s' % off for off in _JSCOMP_OFF]) - args.extend(['--language_in', 'ECMASCRIPT_NEXT']) - args.extend(['--externs=%s' % extern for extern in externs]) - args.extend(['--js=%s' % js for js in js_files]) - args.extend(['--js_output_file', '/dev/null']) - output = _ExecuteCommand(args, ignore_exit_status=True) - success = len(output) == 0 - return success, output
diff --git a/chrome/browser/resources/chromeos/accessibility/strings/accessibility_strings_af.xtb b/chrome/browser/resources/chromeos/accessibility/strings/accessibility_strings_af.xtb index 2d18d1c..18c0e7c 100644 --- a/chrome/browser/resources/chromeos/accessibility/strings/accessibility_strings_af.xtb +++ b/chrome/browser/resources/chromeos/accessibility/strings/accessibility_strings_af.xtb
@@ -511,6 +511,7 @@ <translation id="4300318234632215983">Kondig die URL agter 'n skakel aan</translation> <translation id="4322625298640984693">Siënna</translation> <translation id="4342180618051828363">{COUNT,plural, =1{kolletjie}=3{ellips}other{# kolletjies}}</translation> +<translation id="4352022650330571548">tik <ph name="PHRASE" /></translation> <translation id="4372435075475052704">minimum:<ph name="X" /></translation> <translation id="4372705107434148843">Stop spraak</translation> <translation id="4376316291247992553">Bekyk grafika in Braille</translation>
diff --git a/chrome/browser/resources/chromeos/accessibility/strings/accessibility_strings_as.xtb b/chrome/browser/resources/chromeos/accessibility/strings/accessibility_strings_as.xtb index 81d8250e..7a2686c 100644 --- a/chrome/browser/resources/chromeos/accessibility/strings/accessibility_strings_as.xtb +++ b/chrome/browser/resources/chromeos/accessibility/strings/accessibility_strings_as.xtb
@@ -511,6 +511,7 @@ <translation id="4300318234632215983">কোনো লিংকৰ অন্তৰালত থকা URLটো ঘোষণা কৰক</translation> <translation id="4322625298640984693">ছিয়েনা</translation> <translation id="4342180618051828363">{COUNT,plural, =1{বিন্দু}=3{এলিপ্সিছ}one{#টা বিন্দু}other{#টা বিন্দু}}</translation> +<translation id="4352022650330571548"><ph name="PHRASE" /> টাইপ কৰক</translation> <translation id="4372435075475052704">সৰ্বনিম্ন:<ph name="X" /></translation> <translation id="4372705107434148843">কথন বন্ধ কৰক</translation> <translation id="4376316291247992553">গ্ৰাফিকক ব্ৰেইল হিচাপে চাওক</translation>
diff --git a/chrome/browser/resources/chromeos/accessibility/strings/accessibility_strings_bs.xtb b/chrome/browser/resources/chromeos/accessibility/strings/accessibility_strings_bs.xtb index 5e7fd6e6..bb6ae6b6 100644 --- a/chrome/browser/resources/chromeos/accessibility/strings/accessibility_strings_bs.xtb +++ b/chrome/browser/resources/chromeos/accessibility/strings/accessibility_strings_bs.xtb
@@ -511,7 +511,7 @@ <translation id="4300318234632215983">Najava URL-a iza linka</translation> <translation id="4322625298640984693">Sijena</translation> <translation id="4342180618051828363">{COUNT,plural, =1{tačka}=3{tri tačke}one{# tačka}few{# tačke}other{# tačaka}}</translation> -<translation id="4352022650330571548">unesi <ph name="PHRASE" /></translation> +<translation id="4352022650330571548">napiši <ph name="PHRASE" /></translation> <translation id="4372435075475052704">min:<ph name="X" /></translation> <translation id="4372705107434148843">Zaustavljanje govora</translation> <translation id="4376316291247992553">Prikaži grafiku kao Braillevo pismo</translation>
diff --git a/chrome/browser/resources/chromeos/accessibility/strings/accessibility_strings_el.xtb b/chrome/browser/resources/chromeos/accessibility/strings/accessibility_strings_el.xtb index d2702bb..1888527 100644 --- a/chrome/browser/resources/chromeos/accessibility/strings/accessibility_strings_el.xtb +++ b/chrome/browser/resources/chromeos/accessibility/strings/accessibility_strings_el.xtb
@@ -512,6 +512,7 @@ <translation id="4300318234632215983">Ανακοίνωση της διεύθυνσης URL πίσω από ένα σύνδεσμο</translation> <translation id="4322625298640984693">Σιένα</translation> <translation id="4342180618051828363">{COUNT,plural, =1{κουκκίδα}=3{αποσιωπητικά}other{# κουκκίδες}}</translation> +<translation id="4352022650330571548">πληκτρολογήστε <ph name="PHRASE" /></translation> <translation id="4372435075475052704">ελάχ.:<ph name="X" /></translation> <translation id="4372705107434148843">Διακοπή ομιλίας</translation> <translation id="4376316291247992553">Προβολή γραφικού ως Braille</translation>
diff --git a/chrome/browser/resources/chromeos/accessibility/strings/accessibility_strings_fil.xtb b/chrome/browser/resources/chromeos/accessibility/strings/accessibility_strings_fil.xtb index 9643270..b4a5886 100644 --- a/chrome/browser/resources/chromeos/accessibility/strings/accessibility_strings_fil.xtb +++ b/chrome/browser/resources/chromeos/accessibility/strings/accessibility_strings_fil.xtb
@@ -511,6 +511,7 @@ <translation id="4300318234632215983">Ianunsyo ang URL sa likod ng isang link</translation> <translation id="4322625298640984693">Sienna</translation> <translation id="4342180618051828363">{COUNT,plural, =1{tuldok}=3{ellipsis}one{# tuldok}other{# na tuldok}}</translation> +<translation id="4352022650330571548">i-type ang <ph name="PHRASE" /></translation> <translation id="4372435075475052704">min:<ph name="X" /></translation> <translation id="4372705107434148843">Ihinto ang speech</translation> <translation id="4376316291247992553">Tingnan ang Graphic Bilang Braille</translation>
diff --git a/chrome/browser/resources/chromeos/accessibility/strings/accessibility_strings_fr-CA.xtb b/chrome/browser/resources/chromeos/accessibility/strings/accessibility_strings_fr-CA.xtb index 6f485d7..aa995ea 100644 --- a/chrome/browser/resources/chromeos/accessibility/strings/accessibility_strings_fr-CA.xtb +++ b/chrome/browser/resources/chromeos/accessibility/strings/accessibility_strings_fr-CA.xtb
@@ -511,6 +511,7 @@ <translation id="4300318234632215983">Lire à voix haute l'adresse l'URL d'un lien</translation> <translation id="4322625298640984693">Terre de Sienne</translation> <translation id="4342180618051828363">{COUNT,plural, =1{point}=3{points de suspension}one{# point}other{# points}}</translation> +<translation id="4352022650330571548">taper <ph name="PHRASE" /></translation> <translation id="4372435075475052704">min. : <ph name="X" /></translation> <translation id="4372705107434148843">Arrêter les commentaires vocaux</translation> <translation id="4376316291247992553">Afficher le graphique en braille</translation>
diff --git a/chrome/browser/resources/chromeos/accessibility/strings/accessibility_strings_ms.xtb b/chrome/browser/resources/chromeos/accessibility/strings/accessibility_strings_ms.xtb index b0c9535d..8cf4b20 100644 --- a/chrome/browser/resources/chromeos/accessibility/strings/accessibility_strings_ms.xtb +++ b/chrome/browser/resources/chromeos/accessibility/strings/accessibility_strings_ms.xtb
@@ -511,6 +511,7 @@ <translation id="4300318234632215983">Umumkan URL di sebalik pautan</translation> <translation id="4322625298640984693">Siena</translation> <translation id="4342180618051828363">{COUNT,plural, =1{titik}=3{elipsis}other{# titik}}</translation> +<translation id="4352022650330571548">taip <ph name="PHRASE" /></translation> <translation id="4372435075475052704">min:<ph name="X" /></translation> <translation id="4372705107434148843">Hentikan pertuturan</translation> <translation id="4376316291247992553">Lihat Grafik Sebagai Braille</translation>
diff --git a/chrome/browser/resources/chromeos/accessibility/strings/accessibility_strings_nl.xtb b/chrome/browser/resources/chromeos/accessibility/strings/accessibility_strings_nl.xtb index f5c600c..0a74002f 100644 --- a/chrome/browser/resources/chromeos/accessibility/strings/accessibility_strings_nl.xtb +++ b/chrome/browser/resources/chromeos/accessibility/strings/accessibility_strings_nl.xtb
@@ -511,6 +511,7 @@ <translation id="4300318234632215983">De URL achter een link melden</translation> <translation id="4322625298640984693">Sienna</translation> <translation id="4342180618051828363">{COUNT,plural, =1{punt}=3{ellipsis}other{# punten}}</translation> +<translation id="4352022650330571548">typ <ph name="PHRASE" /></translation> <translation id="4372435075475052704">min:<ph name="X" /></translation> <translation id="4372705107434148843">Spraak stoppen</translation> <translation id="4376316291247992553">Afbeelding als braille bekijken</translation>
diff --git a/chrome/browser/resources/chromeos/accessibility/strings/accessibility_strings_no.xtb b/chrome/browser/resources/chromeos/accessibility/strings/accessibility_strings_no.xtb index 727860b..0c9d579f 100644 --- a/chrome/browser/resources/chromeos/accessibility/strings/accessibility_strings_no.xtb +++ b/chrome/browser/resources/chromeos/accessibility/strings/accessibility_strings_no.xtb
@@ -511,6 +511,7 @@ <translation id="4300318234632215983">Kunngjør nettadressen bak en link</translation> <translation id="4322625298640984693">Sienna</translation> <translation id="4342180618051828363">{COUNT,plural, =1{punktum}=3{ellipse}other{# punktum}}</translation> +<translation id="4352022650330571548">skriv <ph name="PHRASE" /></translation> <translation id="4372435075475052704">min.: <ph name="X" /></translation> <translation id="4372705107434148843">Stopp tale</translation> <translation id="4376316291247992553">Se grafikk som punktskrift</translation>
diff --git a/chrome/browser/resources/chromeos/accessibility/strings/accessibility_strings_pl.xtb b/chrome/browser/resources/chromeos/accessibility/strings/accessibility_strings_pl.xtb index 7d7b1c8..2894afc 100644 --- a/chrome/browser/resources/chromeos/accessibility/strings/accessibility_strings_pl.xtb +++ b/chrome/browser/resources/chromeos/accessibility/strings/accessibility_strings_pl.xtb
@@ -511,6 +511,7 @@ <translation id="4300318234632215983">Przeczytaj URL linku</translation> <translation id="4322625298640984693">Sjena</translation> <translation id="4342180618051828363">{COUNT,plural, =1{kropka}=3{wielokropek}few{# kropki}many{# kropek}other{# dots}}</translation> +<translation id="4352022650330571548">wpisz <ph name="PHRASE" /></translation> <translation id="4372435075475052704">minimalnie: <ph name="X" /></translation> <translation id="4372705107434148843">Zakończ mowę</translation> <translation id="4376316291247992553">Wyświetl grafikę w systemie brajlowskim</translation>
diff --git a/chrome/browser/resources/chromeos/accessibility/strings/accessibility_strings_ro.xtb b/chrome/browser/resources/chromeos/accessibility/strings/accessibility_strings_ro.xtb index 0e04c35..4cc4be3 100644 --- a/chrome/browser/resources/chromeos/accessibility/strings/accessibility_strings_ro.xtb +++ b/chrome/browser/resources/chromeos/accessibility/strings/accessibility_strings_ro.xtb
@@ -511,6 +511,7 @@ <translation id="4300318234632215983">Anunță adresa URL la care trimite un link</translation> <translation id="4322625298640984693">Siena</translation> <translation id="4342180618051828363">{COUNT,plural, =1{punct}=3{puncte de suspensie}few{# puncte}other{# de puncte}}</translation> +<translation id="4352022650330571548">introdu <ph name="PHRASE" /></translation> <translation id="4372435075475052704">min.:<ph name="X" /></translation> <translation id="4372705107434148843">Oprește vorbirea</translation> <translation id="4376316291247992553">Vezi imaginea în formatul Braille</translation>
diff --git a/chrome/browser/resources/chromeos/accessibility/strings/accessibility_strings_vi.xtb b/chrome/browser/resources/chromeos/accessibility/strings/accessibility_strings_vi.xtb index 85d3c98c..2ef07b0 100644 --- a/chrome/browser/resources/chromeos/accessibility/strings/accessibility_strings_vi.xtb +++ b/chrome/browser/resources/chromeos/accessibility/strings/accessibility_strings_vi.xtb
@@ -511,6 +511,7 @@ <translation id="4300318234632215983">Thông báo URL ở sau liên kết</translation> <translation id="4322625298640984693">Màu hung đỏ</translation> <translation id="4342180618051828363">{COUNT,plural, =1{dấu chấm}=3{dấu chấm lửng}other{# dấu chấm}}</translation> +<translation id="4352022650330571548">nhập <ph name="PHRASE" /></translation> <translation id="4372435075475052704">tối thiểu:<ph name="X" /></translation> <translation id="4372705107434148843">Dừng giọng nói</translation> <translation id="4376316291247992553">Xem đồ thị dưới dạng chữ nổi</translation>
diff --git a/chrome/browser/resources/settings/chromeos/os_icons.html b/chrome/browser/resources/settings/chromeos/os_icons.html index edc5ff98..2b6a26d 100644 --- a/chrome/browser/resources/settings/chromeos/os_icons.html +++ b/chrome/browser/resources/settings/chromeos/os_icons.html
@@ -110,10 +110,15 @@ <g id="assistant"><path d="M6.36364 3C8.77382 3 10.7273 4.95418 10.7273 7.36364C10.7273 9.77309 8.77382 11.7273 6.36364 11.7273C3.95345 11.7273 2 9.77309 2 7.36364C2 4.95418 3.95345 3 6.36364 3Z"></path><path d="M18 6.99997C18 7.60215 17.5113 8.09088 16.9091 8.09088C16.3069 8.09088 15.8182 7.60215 15.8182 6.99997C15.8182 6.39778 16.3069 5.90906 16.9091 5.90906C17.5113 5.90906 18 6.39778 18 6.99997Z"></path><path d="M15.8182 9.54547C15.8182 10.7506 14.8414 11.7273 13.6363 11.7273C12.4313 11.7273 11.4545 10.7506 11.4545 9.54547C11.4545 8.34037 12.4313 7.36365 13.6363 7.36365C14.8414 7.36365 15.8182 8.34037 15.8182 9.54547Z"></path><path d="M13.6363 17.5455C15.0422 17.5455 16.1818 16.4059 16.1818 15C16.1818 13.5942 15.0422 12.4546 13.6363 12.4546C12.2305 12.4546 11.0909 13.5942 11.0909 15C11.0909 16.4059 12.2305 17.5455 13.6363 17.5455Z"></path></g> <g id="audio"><path fill-rule="evenodd" clip-rule="evenodd" d="M1 13H4.46667L8 16.4V3.40002L4.46667 7.00002H1V13ZM10 6.40002V13.4C11.776 12.7652 12.5 10.9044 12.5 9.90002C12.5 8.89568 11.776 7.0435 10 6.40002ZM10 4.16171C12.4771 4.89717 14.5 7.18908 14.5 9.90002C14.5 12.611 12.4771 14.9029 10 15.6383V17.4C13.4371 16.6218 16 13.5602 16 9.90002C16 6.23982 13.4371 3.17825 10 2.40002V4.16171Z"></path></g> <g id="auth-key"><path d="M6.364 5C3.956 5 2 7.018 2 9.5S3.956 14 6.364 14c1.898 0 3.512-1.252 4.11-3H13.5v3h3v-3H18V8h-7.527c-.597-1.747-2.21-3-4.11-3zm0 6c-.8 0-1.455-.675-1.455-1.5S5.563 8 6.363 8c.8 0 1.454.675 1.454 1.5S7.164 11 6.364 11z"></path></g> + <g id="autoclick" viewBox="0 0 20 20"><path fill-rule="evenodd" clip-rule="evenodd" d="M7 10a3 3 0 1 0 6 0 3 3 0 0 0-6 0Zm4 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M10 2c-4.416 0-8 3.584-8 8s3.584 8 8 8 8-3.584 8-8-3.584-8-8-8Zm0 14c-3.308 0-6-2.693-6-6 0-3.308 2.692-6 6-6 3.307 0 6 2.692 6 6 0 3.307-2.693 6-6 6Z"></path></g> <g id="cellular"><path fill-rule="evenodd" clip-rule="evenodd" d="M15.002 15.002V7.41622L7.41622 15.002H15.002ZM16.002 17.002C16.5543 17.002 17.002 16.5543 17.002 16.002V5.002C17.002 4.1111 15.9249 3.66493 15.2949 4.2949L4.2949 15.2949C3.66493 15.9249 4.1111 17.002 5.002 17.002H16.002Z"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M13.5 16.002C13.5 16.5543 13.0523 17.002 12.5 17.002H5.002C4.1111 17.002 3.66493 15.9249 4.2949 15.2949L11.7929 7.79289C12.4229 7.16293 13.5 7.6091 13.5 8.5V16.002Z"></path></g> <g id="chrome"><path d="M17.4167 6.24996H10C8.16671 6.24996 6.58337 7.66663 6.33337 9.41663L3.58337 4.66663C5.08337 2.83329 7.41671 1.66663 10 1.66663C13.25 1.66663 16.0834 3.49996 17.4167 6.24996Z"></path><path d="M6.75002 11.8333C7.41669 13 8.58335 13.75 10 13.75C10.5 13.75 10.9167 13.6666 11.4167 13.5L8.66669 18.25C4.66669 17.5833 1.66669 14.1666 1.66669 9.99996C1.66669 8.33329 2.16669 6.74996 3.00002 5.41663L6.75002 11.8333Z"></path><path d="M13.75 9.99992C13.75 10.6666 13.5833 11.3333 13.25 11.8333L9.5 18.3333H10C14.5833 18.3333 18.3333 14.5833 18.3333 9.99992C18.3333 8.99992 18.1667 7.99992 17.8333 7.08325H12.3333C13.1667 7.74992 13.75 8.83325 13.75 9.99992Z"></path><path d="M12.9167 9.99992C12.9167 11.6107 11.6109 12.9166 10 12.9166C8.38921 12.9166 7.08337 11.6107 7.08337 9.99992C7.08337 8.38909 8.38921 7.08325 10 7.08325C11.6109 7.08325 12.9167 8.38909 12.9167 9.99992Z"></path></g> - <g id="chromevox" viewBox="0 0 16 16"><path fill-rule="evenodd" clip-rule="evenodd" d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0Zm-5.335-3.549c-.259.259-.511.522-.762.79l.039.042c.696.775 1.467 1.633 1.413 2.738.068 1.127-.67 2.053-1.433 2.805.215.286.433.57.652.855 1.258-.839 2.037-2.313 1.937-3.812-.02-1.355-.798-2.58-1.846-3.418Zm3.772 5.35a6.562 6.562 0 0 1-2.562 3.566c-.233-.31-.458-.624-.678-.942l.205-.203c.524-.519 1.054-1.044 1.404-1.694.869-1.564.818-3.568-.099-5.102-.309-.514-.735-.943-1.158-1.37a31.85 31.85 0 0 1-.306-.311c.233-.306.467-.61.704-.914 2.263 1.469 3.192 4.445 2.49 6.97ZM6.768 1.68c-.11-.003-.225-.008-.345-.014-2.921.698-5.09 3.281-5.09 6.361 0 2.658 1.614 4.946 3.934 5.972a23.226 23.226 0 0 1 1.48-.387c.206-1.043.328-2.1.379-3.162a24.1 24.1 0 0 0-1.481-.763c-.228-.11-.456-.221-.682-.335l.557-.104c.652-.12 1.305-.24 1.946-.416l.042-.633c.02-.295.038-.59.061-.886a61.845 61.845 0 0 1 1.548-.978 11.885 11.885 0 0 0-.812-1.77c-.203-.367-.39-.742-.576-1.117-.3-.6-.599-1.2-.96-1.767Z"></path></svg> + <g id="chromevox" viewBox="0 0 20 20"><path fill-rule="evenodd" clip-rule="evenodd" d="M18 10a8 8 0 1 1-16 0 8 8 0 0 1 16 0Zm-5.335-3.549c-.259.259-.511.522-.762.79l.039.042c.696.775 1.467 1.633 1.413 2.738.068 1.127-.67 2.053-1.434 2.805.216.286.434.57.653.855 1.258-.839 2.037-2.313 1.937-3.812-.02-1.355-.798-2.58-1.846-3.418Zm3.772 5.35a6.562 6.562 0 0 1-2.562 3.566c-.233-.31-.458-.624-.678-.942l.205-.203c.524-.519 1.054-1.044 1.404-1.694.869-1.564.818-3.568-.099-5.102-.309-.514-.735-.943-1.158-1.37a31.85 31.85 0 0 1-.306-.311c.233-.306.467-.61.704-.914 2.262 1.469 3.192 4.445 2.49 6.97ZM8.768 3.68c-.11-.003-.225-.008-.345-.014-2.921.698-5.09 3.281-5.09 6.361 0 2.658 1.614 4.946 3.934 5.972a23.226 23.226 0 0 1 1.48-.387c.206-1.043.328-2.1.379-3.162-.481-.277-.981-.52-1.481-.763-.228-.11-.456-.221-.682-.335l.557-.104c.652-.12 1.305-.24 1.946-.416l.042-.633c.02-.295.038-.59.061-.886a61.936 61.936 0 0 1 1.548-.978 11.89 11.89 0 0 0-.813-1.77c-.202-.367-.389-.742-.575-1.117-.3-.6-.599-1.2-.96-1.767Z"></path></g> + <g id="contrast" viewBox="0 0 20 20"><path fill-rule="evenodd" clip-rule="evenodd" d="M18 10a8 8 0 1 1-16 0 8 8 0 0 1 16 0Zm-1.882 0A6.118 6.118 0 0 0 10 3.882v12.236A6.118 6.118 0 0 0 16.118 10Z"></path></g> + <g id="dictation" viewBox="0 0 20 20"><path fill-rule="evenodd" clip-rule="evenodd" d="m12.571 4.5-.008 5c0 1.383-1.14 2.5-2.563 2.5-1.423 0-2.571-1.117-2.571-2.5v-5C7.429 3.117 8.577 2 10 2c1.423 0 2.571 1.117 2.571 2.5Zm-2.524-1a1 1 0 0 0-1 .992l-.04 5a1 1 0 0 0 2 .016l.04-5a1 1 0 0 0-1-1.008ZM10 13.874c-2.366 0-4.543-1.769-4.543-4.295H4c0 2.88 2.331 5.246 5.143 5.659V18h1.714v-2.762C13.67 14.834 16 12.459 16 9.579h-1.457c0 2.526-2.177 4.295-4.543 4.295Z"></path></g> <g id="display"><path fill-rule="evenodd" clip-rule="evenodd" d="M17.5 3H2.5C1.6 3 1 3.7 1 4.55556V14.5C1 15.3556 1.6 16 2.5 16H7V18H13V16H17.5C18.4 16 19 15.3556 19 14.5V4.5C19 3.64444 18.4 3 17.5 3ZM17 14H3V5H17V14Z"></path></g> + <g id="docked-magnifier" viewBox="0 0 20 20"><path d="M14 11V9h2V8h-2V6h-1v2h-2v1h2v2h1Z"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M17.5 3h-15C1.6 3 1 3.7 1 4.556V15.5c0 .856.6 1.5 1.5 1.5h15c.9 0 1.5-.644 1.5-1.5v-11c0-.856-.6-1.5-1.5-1.5Zm-.5 9H3V5h14v7Z"></path></g> + <g id="fullscreen-magnifier" viewBox="0 0 20 20"><path d="M14 11V9h2V8h-2V6h-1v2h-2v1h2v2h1Z"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M17.5 3h-15C1.6 3 1 3.7 1 4.556V15.5c0 .856.6 1.5 1.5 1.5h15c.9 0 1.5-.644 1.5-1.5v-11c0-.856-.6-1.5-1.5-1.5ZM17 15H3V5h14v10Z"></path></g> <g id="google-drive"><path fill-rule="evenodd" clip-rule="evenodd" d="M18.7333 12L13.0167 2H7.31665V2.00833L13.025 12H18.7333ZM8.27502 12.8334L5.41669 17.8334H16.35L19.2084 12.8334H8.27502ZM6.59167 3.26672L1.125 12.8334L3.98333 17.8251L9.45 8.26672C9.45 8.27506 6.59167 3.26672 6.59167 3.26672Z"></path></g> <g id="google-play"><path fill-rule="evenodd" clip-rule="evenodd" d="M16.8167 9.06658L14.2667 7.61658L11.8834 9.99991L14.2667 12.3832L16.8167 10.9332C17.275 10.6749 17.5 10.3416 17.5 9.99991C17.5 9.65824 17.275 9.32491 16.8167 9.06658ZM3.92498 2.04163C4.93332 3.04996 10.9417 9.05829 10.9417 9.05829L13.0666 6.93329L4.14998 1.88329C4.09165 1.84996 4.03332 1.82496 3.97498 1.79996C3.83332 1.74163 3.72498 1.84163 3.84998 1.97496C3.87498 1.99163 3.89998 2.01663 3.92498 2.04163ZM3.92501 17.9583C3.90001 17.9833 3.87501 18.0083 3.85834 18.025C3.73334 18.15 3.84168 18.2583 3.98334 18.2C4.04168 18.175 4.10001 18.15 4.15834 18.1166L13.0667 13.0667L10.9417 10.9417C10.9417 10.9417 4.94168 16.95 3.92501 17.9583ZM10 9.99995C10 9.99995 2.975 2.97495 2.81667 2.81662C2.65833 2.65828 2.5 2.75828 2.5 2.97495V17.025C2.5 17.2416 2.65833 17.3416 2.81667 17.1833C2.975 17.025 10 9.99995 10 9.99995Z"></path></g> <g id="hard-drive"><path d="M14 14C14 14.5523 13.5523 15 13 15C12.4477 15 12 14.5523 12 14C12 13.4477 12.4477 13 13 13C13.5523 13 14 13.4477 14 14Z"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M5 2C3.89543 2 3 2.89543 3 4V16C3 17.1046 3.89543 18 5 18H15C16.1046 18 17 17.1046 17 16V4C17 2.89543 16.1046 2 15 2H5ZM5 16H15V12H5V16ZM5 10H15V4H5V10Z"></path></g> @@ -124,11 +129,14 @@ <g id="magic-tethering"><path d="M19 6.49212C14.5855 1.83596 6.42182 1.83596 2 6.49212L3.5 8C7.5 3.97898 13.5 3.97898 17.5 8L19 6.49212Z"></path><path d="M6.23521 11L4.5 9.33611C5.90378 7.99334 7.67283 7.21963 9.5 7L8.2038 9.73544C7.48803 10.0225 6.81737 10.4418 6.23521 11Z"></path><path d="M16.5 9.33645L14.7651 11C14.183 10.4419 13.5125 10.0227 12.7968 9.7357L11.5 7C13.3286 7.21876 15.0982 7.99231 16.5 9.33645Z"></path><path d="M6.5 12.9992L9.2496 11.7496L10.4992 9L11.7496 11.7496L14.5 12.9992L11.7496 14.2504L10.4992 17L9.2496 14.2504L6.5 12.9992Z"></path></g> <g id="mouse"><path fill-rule="evenodd" clip-rule="evenodd" d="M10 2C6.68286 2 4 4.504 4 7.6V12.4C4 15.496 6.68286 18 10 18C13.3171 18 16 15.496 16 12.4V7.6C16 4.504 13.3171 2 10 2ZM14 7.5V8H11V4C13 4 14 6 14 7.5ZM9 4V8H6V7.6C6 6 7 4 9 4ZM10 16C7.63429 16 6 14.608 6 12.4V10H14V12.4C14 14.608 12.3657 16 10 16Z"></path></g> <g id="network-wifi"><path fill-rule="evenodd" clip-rule="evenodd" d="M10.5554 16.7289C10.2698 17.0905 9.72802 17.0905 9.44247 16.7281L2.15749 7.49646C1.89621 7.16533 1.96831 6.68099 2.31239 6.44135C3.50455 5.61135 6.26792 4 10 4C13.7328 4 16.4955 5.61135 17.6876 6.44135C18.0317 6.68099 18.1038 7.16533 17.8425 7.49646L10.5554 16.7289ZM5.46762 8.4626L4.61134 7.37751C5.85753 6.71277 7.72159 6 10 6C12.2788 6 14.1425 6.71268 15.3886 7.37739L14.5315 8.46329C13.348 7.94707 11.8035 7.5 9.99865 7.5C8.19498 7.5 6.65099 7.94668 5.46762 8.4626Z"></path></g> + <g id="on-screen-keyboard" viewBox="0 0 20 20"><path fill-rule="evenodd" clip-rule="evenodd" d="M5 14V9h11v5H5Zm8-2H8v1h5v-1Zm-6-2h1v1H7v-1Zm3 0H9v1h1v-1Zm1 0h1v1h-1v-1Zm3 0h-1v1h1v-1Z"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M2 4.669C2 3.75 2.736 3 3.636 3h13.728c.9 0 1.636.75 1.636 1.669v10.68c0 .917-.736 1.651-1.636 1.651H3.636C2.736 17 2 16.266 2 15.348V4.668ZM4 5v10h13V5H4Z"></path></g> <g id="print"><path fill-rule="evenodd" clip-rule="evenodd" d="M5 3H15V7H16C17.1046 7 18 7.89543 18 9V14H15V17H5V14H2V9C2 7.89543 2.89543 7 4 7H5V3ZM13 5H7V7H13V5ZM16 10C16 10.5523 15.5523 11 15 11C14.4477 11 14 10.5523 14 10C14 9.44772 14.4477 9 15 9C15.5523 9 16 9.44772 16 10ZM7 12H13V15H7V12Z"></path></g> <g id="printer-add"><path fill-opacity=".3" d="M17.8734304,8.29826826 C17.2839707,8.10470383 16.6542128,8 16,8 C13.3875623,8 11.1650842,9.66961525 10.3414114,12 L7,12 L7,15 L10.0829584,15 C10.2034032,15.7179235 10.4513404,16.3926158 10.8026932,17 L5,17 L5,14 L2,14 L2,9 C2,7.8954305 2.8954305,7 4,7 L5,7 L5,3 L15,3 L15,7 L16,7 C16.8576527,7 17.5892179,7.53984453 17.8734304,8.29826826 Z M7,5 L7,7 L13,7 L13,5 L7,5 Z"></path><polygon points="17 13 19 13 19 15 17 15 17 17 15 17 15 15 13 15 13 13 15 13 15 11 17 11"></polygon></g> <g id="restore"><path fill-rule="evenodd" clip-rule="evenodd" d="M12 9V7H15.1979C14.1609 5.20627 12.2219 4 10 4C6.685 4 4 6.685 4 10C4 13.315 6.685 16 10 16C12.9739 16 15.4407 13.8392 15.9169 11.0011L17.9379 11.0005C17.4451 14.9449 14.0766 18 9.992 18C5.576 18 2 14.416 2 10C2 5.584 5.576 2 9.992 2C12.3857 2 14.5335 3.04926 16.0007 4.71184L16 3H18V9H12ZM10.5 6V10L13 12.5L11.5 14L8.5 11V6H10.5Z"></path></g> + <g id="select-to-speak" viewBox="0 0 20 20"><path fill-rule="evenodd" clip-rule="evenodd" d="M18 10a8 8 0 1 1-16 0 8 8 0 0 1 16 0ZM7.778 11.368H6V8.632h1.778L10 6.352v7.297l-2.222-2.28ZM12 10c0-.807-.453-1.5-1.111-1.838v3.671A2.046 2.046 0 0 0 12 10Zm-1.111-3.06V6C12.67 6.415 14 8.048 14 10s-1.329 3.585-3.111 4v-.94c1.284-.392 2.222-1.614 2.222-3.06s-.938-2.668-2.222-3.06ZM5 7V5h2v1H6v1H5Zm10 6v2h-2v-1h1v-1h1Z"></path></g> <g id="social-group"><path fill-rule="evenodd" clip-rule="evenodd" d="M7.5 3C9.425 3 11 4.575 11 6.5C11 8.425 9.425 10 7.5 10C5.575 10 4 8.425 4 6.5C4 4.575 5.575 3 7.5 3ZM7.5 5C6.67957 5 6 5.67957 6 6.5C6 7.32043 6.67957 8 7.5 8C8.32043 8 9 7.32043 9 6.5C9 5.67957 8.32043 5 7.5 5ZM13.9916 14.0859C13.7789 12.0336 9.60583 11 7.5 11C5.33875 11 1 12.0887 1 14.25V17H14V14.25L13.9916 14.0859ZM11.9947 14.3433C11.9867 14.3476 11.9693 14.3346 11.9329 14.3011L11.8432 14.2246C11.6159 14.0441 11.2636 13.85 10.8172 13.6713C9.79154 13.2607 8.42752 13 7.5 13C6.57248 13 5.20846 13.2607 4.18279 13.6713C3.73641 13.85 3.38414 14.0441 3.15679 14.2246L3.0671 14.3011C3.01855 14.3458 3.00384 14.3539 3 14.3335V15H12V14.3335L11.9947 14.3433ZM11.2717 9.77623C11.6543 9.92081 12.0683 10 12.5 10C14.425 10 16 8.425 16 6.5C16 4.575 14.425 3 12.5 3C12.0683 3 11.6543 3.07919 11.2717 3.22377C12.0361 4.10238 12.5 5.24886 12.5 6.5C12.5 7.75114 12.0361 8.89762 11.2717 9.77623ZM15.5 17H19V14.25L18.9916 14.0859C18.8063 12.2977 15.6141 11.2828 13.4026 11.0513C14.5583 11.7896 15.3634 12.7824 15.4896 14.0088L15.5 14.25V17Z"></path></g> <g id="stylus"><path fill-rule="evenodd" clip-rule="evenodd" d="M2 14.6662V18H5.32305L12.0225 11.3057L8.69053 7.97192L2 14.6662ZM15.6565 2.26452L17.7356 4.33592C18.0821 4.68263 18.091 5.2516 17.7445 5.59831L12.9732 10.3634L9.63234 7.02073L11.8803 4.77153L11.2317 4.12255L6.20266 9.15435L4.95874 7.90974L10.6186 2.25563C10.9651 1.90892 11.5426 1.91781 11.8803 2.26452L13.142 3.51803L14.4037 2.26452C14.7413 1.91781 15.31 1.91781 15.6565 2.26452Z"></path></g> + <g id="switch-access" viewBox="0 0 20 20"><path fill-rule="evenodd" clip-rule="evenodd" d="M18 9v2h-1.17a3.001 3.001 0 1 1 0-2H18ZM6 7c.463 0 .902.105 1.293.292L10 4.586 11.414 6 8.708 8.707A3 3 0 1 1 3.17 11H2V9h1.17A3.001 3.001 0 0 1 6 7Zm0 4a1 1 0 1 0 0-2 1 1 0 0 0 0 2Zm8 0a1 1 0 1 0 0-2 1 1 0 0 0 0 2Z"></path></g> <g id="sync"><path fill-rule="evenodd" clip-rule="evenodd" d="M8.99977 3.07092L8.9991 5.1002C6.71731 5.56382 5 7.58136 5 10C5 11.8507 6.00553 13.4666 7.50008 14.3311L7.5 12H9V17H4V15.5L5.6705 15.5009C4.04414 14.2191 3 12.2315 3 10C3 6.55562 5.48772 3.69227 8.76441 3.1087L8.99977 3.07092ZM16 3V4.5L14.3315 4.5007C15.9567 5.78256 17 7.76944 17 10C17 13.5264 14.3924 16.4438 11.0002 16.9291L11.0009 14.8998C13.2827 14.4362 15 12.4186 15 10C15 8.14968 13.9949 6.5341 12.5009 5.66945L12.5 8H11V3H16Z"></path></g> <g id="wallpaper"><path fill-rule="evenodd" clip-rule="evenodd" d="M4 3H16C17.1046 3 18 3.89543 18 5V15C18 16.1046 17.1046 17 16 17H4C2.89543 17 2 16.1046 2 15V5C2 3.89543 2.89543 3 4 3ZM4 5V15H16V5H4ZM6 13L9 7L11 11L12 9.5L14 13H6Z"></path></g>
diff --git a/chrome/browser/resources/settings/chromeos/os_settings_search_box/os_search_result_row.js b/chrome/browser/resources/settings/chromeos/os_settings_search_box/os_search_result_row.js index dc8bc2b5..0962465d 100644 --- a/chrome/browser/resources/settings/chromeos/os_settings_search_box/os_search_result_row.js +++ b/chrome/browser/resources/settings/chromeos/os_settings_search_box/os_search_result_row.js
@@ -676,6 +676,10 @@ return 'os-settings:audio'; case SearchResultIcon.kAuthKey: return 'os-settings:auth-key'; + case SearchResultIcon.kAutoclick: + return 'os-settings:autoclick'; + case SearchResultIcon.kSwitchAccess: + return 'os-settings:switch-access'; case SearchResultIcon.kAvatar: return 'cr:person'; case SearchResultIcon.kBluetooth: @@ -688,10 +692,16 @@ return 'os-settings:chromevox'; case SearchResultIcon.kClock: return 'os-settings:access-time'; + case SearchResultIcon.kContrast: + return 'os-settings:contrast'; case SearchResultIcon.kDeveloperTags: return 'os-settings:developer-tags'; + case SearchResultIcon.kDictation: + return 'os-settings:dictation'; case SearchResultIcon.kDisplay: return 'os-settings:display'; + case SearchResultIcon.kDockedMagnifier: + return 'os-settings:docked-magnifier'; case SearchResultIcon.kDrive: return 'os-settings:google-drive'; case SearchResultIcon.kEthernet: @@ -700,6 +710,8 @@ return 'os-settings:fingerprint'; case SearchResultIcon.kFolder: return 'os-settings:folder-outline'; + case SearchResultIcon.kFullscreenMagnifier: + return 'os-settings:fullscreen-magnifier'; case SearchResultIcon.kGlobe: return 'os-settings:language'; case SearchResultIcon.kGooglePlay: @@ -722,6 +734,8 @@ return 'os-settings:mouse'; case SearchResultIcon.kNearbyShare: return 'os-settings:nearby-share'; + case SearchResultIcon.kOnScreenKeyboard: + return 'os-settings:on-screen-keyboard'; case SearchResultIcon.kPaintbrush: return 'os-settings:paint-brush'; case SearchResultIcon.kPenguin: @@ -736,6 +750,8 @@ return 'os-settings:print'; case SearchResultIcon.kReset: return 'os-settings:restore'; + case SearchResultIcon.kSelectToSpeak: + return 'os-settings:select-to-speak'; case SearchResultIcon.kShield: return 'cr:security'; case SearchResultIcon.kStartup:
diff --git a/chrome/browser/search_engines/ui_thread_search_terms_data.cc b/chrome/browser/search_engines/ui_thread_search_terms_data.cc index 4ae408e4..0e4eedc94 100644 --- a/chrome/browser/search_engines/ui_thread_search_terms_data.cc +++ b/chrome/browser/search_engines/ui_thread_search_terms_data.cc
@@ -85,9 +85,11 @@ DCHECK(!BrowserThread::IsThreadInitialized(BrowserThread::UI) || BrowserThread::CurrentlyOn(BrowserThread::UI)); #if BUILDFLAG(IS_ANDROID) - // Android does not send non-searchbox suggest requests from NTP at this time. - return ui::GetDeviceFormFactor() == ui::DEVICE_FORM_FACTOR_PHONE ? - "chrome" : "chrome-omni"; + if (ui::GetDeviceFormFactor() == ui::DEVICE_FORM_FACTOR_PHONE) { + return non_searchbox_ntp ? "chrome-android-search-resumption-module" + : "chrome"; + } + return "chrome-omni"; #else return "chrome-omni"; #endif @@ -98,8 +100,9 @@ DCHECK(!BrowserThread::IsThreadInitialized(BrowserThread::UI) || BrowserThread::CurrentlyOn(BrowserThread::UI)); #if BUILDFLAG(IS_ANDROID) - if (ui::GetDeviceFormFactor() == ui::DEVICE_FORM_FACTOR_PHONE) - return "chrome-mobile-ext-ansg"; + if (ui::GetDeviceFormFactor() == ui::DEVICE_FORM_FACTOR_PHONE) { + return non_searchbox_ntp ? std::string() : "chrome-mobile-ext-ansg"; + } #endif return "chrome-ext-ansg"; }
diff --git a/chrome/browser/search_resumption/BUILD.gn b/chrome/browser/search_resumption/BUILD.gn index c8aa2c8..e5608aa2 100644 --- a/chrome/browser/search_resumption/BUILD.gn +++ b/chrome/browser/search_resumption/BUILD.gn
@@ -6,6 +6,7 @@ android_library("java") { sources = [ + "java/src/org/chromium/chrome/browser/search_resumption/SearchResumptionModuleBridge.java", "java/src/org/chromium/chrome/browser/search_resumption/SearchResumptionModuleCoordinator.java", "java/src/org/chromium/chrome/browser/search_resumption/SearchResumptionModuleMediator.java", "java/src/org/chromium/chrome/browser/search_resumption/SearchResumptionModuleProperties.java", @@ -19,6 +20,8 @@ deps = [ ":java_resources", "//base:base_java", + "//base:jni_java", + "//build/android:build_java", "//chrome/browser/flags:java", "//chrome/browser/preferences:java", "//chrome/browser/profiles/android:java", @@ -38,6 +41,11 @@ "//url:gurl_java", ] resources_package = "org.chromium.chrome.browser.search_resumption" + annotation_processor_deps = [ "//base/android/jni_generator:jni_processor" ] +} + +generate_jni("jni_headers") { + sources = [ "java/src/org/chromium/chrome/browser/search_resumption/SearchResumptionModuleBridge.java" ] } android_resources("java_resources") {
diff --git a/chrome/browser/search_resumption/java/src/org/chromium/chrome/browser/search_resumption/SearchResumptionModuleBridge.java b/chrome/browser/search_resumption/java/src/org/chromium/chrome/browser/search_resumption/SearchResumptionModuleBridge.java new file mode 100644 index 0000000..cb5a215 --- /dev/null +++ b/chrome/browser/search_resumption/java/src/org/chromium/chrome/browser/search_resumption/SearchResumptionModuleBridge.java
@@ -0,0 +1,57 @@ +// Copyright 2022 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +package org.chromium.chrome.browser.search_resumption; + +import org.chromium.base.annotations.CalledByNative; +import org.chromium.base.annotations.JNINamespace; +import org.chromium.base.annotations.NativeMethods; +import org.chromium.chrome.browser.profiles.Profile; +import org.chromium.url.GURL; + +/** + * Bridge, providing access to the native-side functionalities to fetch search suggestions. + */ +@JNINamespace("search_resumption_module") +public class SearchResumptionModuleBridge { + interface OnSuggestionsReceivedCallback { + void onSuggestionsReceived(String[] suggestionTexts, GURL[] suggestionUrls); + } + private long mSearchResumptionModuleBridge; + private OnSuggestionsReceivedCallback mCallback; + + public SearchResumptionModuleBridge(Profile profile) { + mSearchResumptionModuleBridge = SearchResumptionModuleBridgeJni.get().create( + SearchResumptionModuleBridge.this, profile); + } + + void fetchSuggestions(String url, OnSuggestionsReceivedCallback callback) { + if (mSearchResumptionModuleBridge == 0) return; + + mCallback = callback; + SearchResumptionModuleBridgeJni.get().fetchSuggestions( + mSearchResumptionModuleBridge, SearchResumptionModuleBridge.this, url); + } + + void destroy() { + if (mSearchResumptionModuleBridge != 0) { + SearchResumptionModuleBridgeJni.get().destroy( + mSearchResumptionModuleBridge, SearchResumptionModuleBridge.this); + mSearchResumptionModuleBridge = 0; + } + } + + @CalledByNative + void onSuggestionsReceived(String[] suggestionTexts, GURL[] suggestionUrls) { + mCallback.onSuggestionsReceived(suggestionTexts, suggestionUrls); + } + + @NativeMethods + interface Natives { + long create(SearchResumptionModuleBridge caller, Profile profile); + void fetchSuggestions(long nativeSearchResumptionModuleBridge, + SearchResumptionModuleBridge caller, String url); + void destroy(long nativeSearchResumptionModuleBridge, SearchResumptionModuleBridge caller); + } +}
diff --git a/chrome/browser/search_resumption/search_resumption_module_bridge.cc b/chrome/browser/search_resumption/search_resumption_module_bridge.cc new file mode 100644 index 0000000..59aeb4d4 --- /dev/null +++ b/chrome/browser/search_resumption/search_resumption_module_bridge.cc
@@ -0,0 +1,79 @@ +// Copyright 2022 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include "search_resumption_module_bridge.h" + +#include "base/android/jni_array.h" +#include "base/bind.h" +#include "chrome/browser/profiles/profile.h" +#include "chrome/browser/profiles/profile_android.h" +#include "chrome/browser/search_resumption/jni_headers/SearchResumptionModuleBridge_jni.h" +#include "chrome/browser/search_resumption/start_suggest_service_factory.h" +#include "components/search/start_suggest_service.h" +#include "url/android/gurl_android.h" + +using base::android::JavaParamRef; +using base::android::JavaRef; + +namespace search_resumption_module { +SearchResumptionModuleBridge::SearchResumptionModuleBridge(JNIEnv* env, + jobject jobj, + Profile* profile) + : java_object_(env, env->NewWeakGlobalRef(jobj)) { + CHECK(!profile->IsOffTheRecord()); + start_suggest_service_ = + StartSuggestServiceFactory::GetInstance()->GetForBrowserContext(profile); +} + +void SearchResumptionModuleBridge::Destroy(JNIEnv* env, + const JavaParamRef<jobject>& obj) { + delete this; +} + +void SearchResumptionModuleBridge::FetchSuggestions( + JNIEnv* env, + const JavaParamRef<jobject>& obj, + const JavaParamRef<jstring>& j_page_url) { + if (start_suggest_service_ == nullptr) { + return; + } + + TemplateURLRef::SearchTermsArgs args; + args.request_source = TemplateURLRef::NON_SEARCHBOX_NTP; + args.current_page_url = ConvertJavaStringToUTF8(env, j_page_url); + start_suggest_service_->FetchSuggestions( + args, base::BindOnce(&SearchResumptionModuleBridge::OnSuggestionsReceived, + weak_ptr_factory_.GetWeakPtr())); +} + +SearchResumptionModuleBridge::~SearchResumptionModuleBridge() = default; + +void SearchResumptionModuleBridge::OnSuggestionsReceived( + std::vector<QuerySuggestion> suggestions) { + JNIEnv* env = base::android::AttachCurrentThread(); + std::vector<std::u16string> titles; + titles.reserve(suggestions.size()); + std::vector<base::android::ScopedJavaLocalRef<jobject>> urls; + urls.reserve(suggestions.size()); + for (const auto& suggestion : suggestions) { + titles.push_back(suggestion.query); + urls.push_back( + url::GURLAndroid::FromNativeGURL(env, suggestion.destination_url)); + } + Java_SearchResumptionModuleBridge_onSuggestionsReceived( + env, java_object_, base::android::ToJavaArrayOfStrings(env, titles), + url::GURLAndroid::ToJavaArrayOfGURLs(env, urls)); +} + +static jlong JNI_SearchResumptionModuleBridge_Create( + JNIEnv* env, + const JavaParamRef<jobject>& obj, + const JavaParamRef<jobject>& jprofile) { + SearchResumptionModuleBridge* native_bridge = + new SearchResumptionModuleBridge( + env, obj, ProfileAndroid::FromProfileAndroid(jprofile)); + return reinterpret_cast<intptr_t>(native_bridge); +} + +} // namespace search_resumption_module
diff --git a/chrome/browser/search_resumption/search_resumption_module_bridge.h b/chrome/browser/search_resumption/search_resumption_module_bridge.h new file mode 100644 index 0000000..473133d --- /dev/null +++ b/chrome/browser/search_resumption/search_resumption_module_bridge.h
@@ -0,0 +1,47 @@ +// Copyright 2022 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#ifndef CHROME_BROWSER_SEARCH_RESUMPTION_SEARCH_RESUMPTION_MODULE_BRIDGE_H_ +#define CHROME_BROWSER_SEARCH_RESUMPTION_SEARCH_RESUMPTION_MODULE_BRIDGE_H_ + +#include <jni.h> +#include <vector> + +#include "base/android/jni_android.h" +#include "base/android/jni_string.h" +#include "base/memory/weak_ptr.h" +#include "components/keyed_service/content/browser_context_keyed_service_factory.h" +#include "components/search/start_suggest_service.h" + +class Profile; + +namespace search_resumption_module { +// Bridge between the C++ and the Java for fetching suggestions in the search +// resumption module on NTP. +class SearchResumptionModuleBridge { + public: + SearchResumptionModuleBridge(JNIEnv* env, jobject obj, Profile* profile); + SearchResumptionModuleBridge(const SearchResumptionModuleBridge&) = delete; + SearchResumptionModuleBridge& operator=(const SearchResumptionModuleBridge&) = + delete; + + void Destroy(JNIEnv* env, const base::android::JavaParamRef<jobject>& obj); + + void FetchSuggestions(JNIEnv* env, + const base::android::JavaParamRef<jobject>& obj, + const base::android::JavaParamRef<jstring>& j_page_url); + + private: + ~SearchResumptionModuleBridge(); + void OnSuggestionsReceived(std::vector<QuerySuggestion> suggestions); + + StartSuggestService* start_suggest_service_; + base::android::ScopedJavaGlobalRef<jobject> java_object_; + + const base::WeakPtrFactory<SearchResumptionModuleBridge> weak_ptr_factory_{ + this}; +}; + +} // namespace search_resumption_module +#endif // CHROME_BROWSER_SEARCH_RESUMPTION_SEARCH_RESUMPTION_MODULE_BRIDGE_H_
diff --git a/chrome/browser/search_resumption/start_suggest_service_factory.cc b/chrome/browser/search_resumption/start_suggest_service_factory.cc new file mode 100644 index 0000000..c1ce0ec8 --- /dev/null +++ b/chrome/browser/search_resumption/start_suggest_service_factory.cc
@@ -0,0 +1,56 @@ +// Copyright 2022 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include <utility> + +#include "start_suggest_service_factory.h" + +#include "chrome/browser/autocomplete/chrome_autocomplete_scheme_classifier.h" +#include "chrome/browser/profiles/profile.h" +#include "chrome/browser/profiles/profile_android.h" +#include "chrome/browser/search_engines/template_url_service_factory.h" +#include "chrome/common/webui_url_constants.h" +#include "components/keyed_service/content/browser_context_dependency_manager.h" +#include "components/search/start_suggest_service.h" +#include "content/public/browser/browser_context.h" +#include "content/public/browser/storage_partition.h" + +namespace search_resumption_module { +// static +StartSuggestService* StartSuggestServiceFactory::GetForBrowserContext( + content::BrowserContext* browser_context) { + return static_cast<StartSuggestService*>( + GetInstance()->GetServiceForBrowserContext(browser_context, true)); +} + +// static +StartSuggestServiceFactory* StartSuggestServiceFactory::GetInstance() { + static base::NoDestructor<StartSuggestServiceFactory> instance; + return instance.get(); +} + +StartSuggestServiceFactory::StartSuggestServiceFactory() + : BrowserContextKeyedServiceFactory( + "StartSuggestServiceFactory", + BrowserContextDependencyManager::GetInstance()) { + DependsOn(TemplateURLServiceFactory::GetInstance()); +} + +StartSuggestServiceFactory::~StartSuggestServiceFactory() = default; + +KeyedService* StartSuggestServiceFactory::BuildServiceInstanceFor( + content::BrowserContext* context) const { + Profile* profile = Profile::FromBrowserContext(context); + + TemplateURLService* template_url_service = + TemplateURLServiceFactory::GetForProfile(profile); + auto url_loader_factory = context->GetDefaultStoragePartition() + ->GetURLLoaderFactoryForBrowserProcess(); + return new StartSuggestService( + template_url_service, url_loader_factory, + std::make_unique<ChromeAutocompleteSchemeClassifier>(profile), + GURL(chrome::kChromeUINewTabURL)); +} + +} // namespace search_resumption_module
diff --git a/chrome/browser/search_resumption/start_suggest_service_factory.h b/chrome/browser/search_resumption/start_suggest_service_factory.h new file mode 100644 index 0000000..23804fc --- /dev/null +++ b/chrome/browser/search_resumption/start_suggest_service_factory.h
@@ -0,0 +1,42 @@ +// Copyright 2022 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#ifndef CHROME_BROWSER_SEARCH_RESUMPTION_START_SUGGEST_SERVICE_FACTORY_H_ +#define CHROME_BROWSER_SEARCH_RESUMPTION_START_SUGGEST_SERVICE_FACTORY_H_ + +#include "base/no_destructor.h" +#include "components/keyed_service/content/browser_context_keyed_service_factory.h" + +namespace content { +class BrowserContext; +} // namespace content + +class StartSuggestService; + +namespace search_resumption_module { +// Factory to create StarrSuggestService per regular profile. nullptr will be +// returned for incognito profile. +class StartSuggestServiceFactory : public BrowserContextKeyedServiceFactory { + public: + static StartSuggestService* GetForBrowserContext( + content::BrowserContext* context); + static StartSuggestServiceFactory* GetInstance(); + + StartSuggestServiceFactory(const StartSuggestServiceFactory&) = delete; + StartSuggestServiceFactory& operator=(const StartSuggestServiceFactory&) = + delete; + + private: + friend class base::NoDestructor<StartSuggestServiceFactory>; + + StartSuggestServiceFactory(); + ~StartSuggestServiceFactory() override; + + // BrowserContextKeyedServiceFactory implementation. + KeyedService* BuildServiceInstanceFor( + content::BrowserContext* context) const override; +}; + +} // namespace search_resumption_module +#endif // CHROME_BROWSER_SEARCH_RESUMPTION_START_SUGGEST_SERVICE_FACTORY_H_
diff --git a/chrome/browser/signin/signin_profile_attributes_updater_factory.cc b/chrome/browser/signin/signin_profile_attributes_updater_factory.cc index 513b0cf..eb42122 100644 --- a/chrome/browser/signin/signin_profile_attributes_updater_factory.cc +++ b/chrome/browser/signin/signin_profile_attributes_updater_factory.cc
@@ -10,17 +10,6 @@ #include "chrome/browser/signin/identity_manager_factory.h" #include "chrome/browser/signin/signin_profile_attributes_updater.h" -namespace { -ProfileSelections BuildServicesForSigninProfileAttributesUpdater() { - // Some tests don't have a ProfileManager, disable this service. - if (!g_browser_process || !g_browser_process->profile_manager()) { - return ProfileSelections::BuildNoServicesForAllProfiles(); - } - - return ProfileSelections::BuildDefault(); -} -} // namespace - // static SigninProfileAttributesUpdater* SigninProfileAttributesUpdaterFactory::GetForProfile(Profile* profile) { @@ -35,9 +24,7 @@ } SigninProfileAttributesUpdaterFactory::SigninProfileAttributesUpdaterFactory() - : ProfileKeyedServiceFactory( - "SigninProfileAttributesUpdater", - BuildServicesForSigninProfileAttributesUpdater()) { + : ProfileKeyedServiceFactory("SigninProfileAttributesUpdater") { DependsOn(IdentityManagerFactory::GetInstance()); } @@ -48,6 +35,11 @@ content::BrowserContext* context) const { Profile* profile = Profile::FromBrowserContext(context); + // Some tests don't have a ProfileManager, disable this service. + if (!g_browser_process->profile_manager()) { + return nullptr; + } + return new SigninProfileAttributesUpdater( IdentityManagerFactory::GetForProfile(profile), &g_browser_process->profile_manager()->GetProfileAttributesStorage(),
diff --git a/chrome/browser/support_tool/ash/network_routes_data_collector.cc b/chrome/browser/support_tool/ash/network_routes_data_collector.cc index 3f3af0f..5ba3514 100644 --- a/chrome/browser/support_tool/ash/network_routes_data_collector.cc +++ b/chrome/browser/support_tool/ash/network_routes_data_collector.cc
@@ -21,7 +21,6 @@ #include "base/task/sequenced_task_runner.h" #include "base/task/thread_pool.h" #include "chrome/browser/support_tool/data_collector.h" -#include "chromeos/dbus/dbus_thread_manager.h" #include "chromeos/dbus/debug_daemon/debug_daemon_client.h" #include "components/feedback/pii_types.h" #include "components/feedback/redaction_tool.h" @@ -98,7 +97,7 @@ scoped_refptr<feedback::RedactionToolContainer> redaction_tool_container) { DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); chromeos::DebugDaemonClient* debugd_client = - chromeos::DBusThreadManager::Get()->GetDebugDaemonClient(); + chromeos::DebugDaemonClient::Get(); // We will call DebugDaemonClient::GetRoutes twice to get IPv4 and IPv6 routes // in separate calls. size_t get_routes_calls = 2;
diff --git a/chrome/browser/support_tool/ash/network_routes_data_collector_unittest.cc b/chrome/browser/support_tool/ash/network_routes_data_collector_unittest.cc index a6aa930..c191c37 100644 --- a/chrome/browser/support_tool/ash/network_routes_data_collector_unittest.cc +++ b/chrome/browser/support_tool/ash/network_routes_data_collector_unittest.cc
@@ -19,6 +19,7 @@ #include "base/test/test_future.h" #include "chrome/browser/support_tool/data_collector.h" #include "chromeos/dbus/dbus_thread_manager.h" +#include "chromeos/dbus/debug_daemon/debug_daemon_client.h" #include "chromeos/dbus/debug_daemon/fake_debug_daemon_client.h" #include "components/feedback/pii_types.h" #include "components/feedback/redaction_tool.h" @@ -171,17 +172,19 @@ void SetUp() override { ASSERT_TRUE(temp_dir_.CreateUniqueTempDir()); chromeos::DBusThreadManager::Initialize(); - std::unique_ptr<chromeos::FakeDebugDaemonClient> fake_debug_daemon_client = - std::make_unique<chromeos::FakeDebugDaemonClient>(); - fake_debug_daemon_client->SetRoutesForTesting(fake_routes); - chromeos::DBusThreadManager::GetSetterForTesting()->SetDebugDaemonClient( - std::move(fake_debug_daemon_client)); + chromeos::DebugDaemonClient::InitializeFake(); + static_cast<chromeos::FakeDebugDaemonClient*>( + chromeos::DebugDaemonClient::Get()) + ->SetRoutesForTesting(fake_routes); } void TearDown() override { if (!temp_dir_.IsValid()) return; EXPECT_TRUE(temp_dir_.Delete()); + + chromeos::DebugDaemonClient::Shutdown(); + chromeos::DBusThreadManager::Shutdown(); } protected:
diff --git a/chrome/browser/ui/BUILD.gn b/chrome/browser/ui/BUILD.gn index 9034611e..7612f95e 100644 --- a/chrome/browser/ui/BUILD.gn +++ b/chrome/browser/ui/BUILD.gn
@@ -109,8 +109,6 @@ "find_bar/find_bar_state.h", "find_bar/find_bar_state_factory.cc", "find_bar/find_bar_state_factory.h", - "interventions/framebust_block_message_delegate.cc", - "interventions/framebust_block_message_delegate.h", "interventions/intervention_delegate.h", "interventions/intervention_infobar_delegate.cc", "interventions/intervention_infobar_delegate.h", @@ -776,8 +774,6 @@ "android/infobars/autofill_virtual_card_enrollment_infobar.h", "android/infobars/duplicate_download_infobar.cc", "android/infobars/duplicate_download_infobar.h", - "android/infobars/framebust_block_infobar.cc", - "android/infobars/framebust_block_infobar.h", "android/infobars/generated_password_saved_infobar.cc", "android/infobars/generated_password_saved_infobar.h", "android/infobars/grouped_permission_infobar.cc",
diff --git a/chrome/browser/ui/android/infobars/framebust_block_infobar.cc b/chrome/browser/ui/android/infobars/framebust_block_infobar.cc deleted file mode 100644 index 1329a1fe..0000000 --- a/chrome/browser/ui/android/infobars/framebust_block_infobar.cc +++ /dev/null
@@ -1,75 +0,0 @@ -// Copyright 2017 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#include "chrome/browser/ui/android/infobars/framebust_block_infobar.h" - -#include <memory> -#include <utility> - -#include "base/android/jni_string.h" -#include "base/bind.h" -#include "base/memory/ptr_util.h" -#include "chrome/android/chrome_jni_headers/FramebustBlockInfoBar_jni.h" -#include "chrome/browser/android/tab_android.h" -#include "chrome/browser/ui/android/interventions/framebust_block_message_delegate_bridge.h" -#include "chrome/browser/ui/interventions/framebust_block_message_delegate.h" -#include "chrome/browser/ui/interventions/intervention_infobar_delegate.h" -#include "components/infobars/content/content_infobar_manager.h" -#include "components/infobars/core/infobar_delegate.h" -#include "content/public/browser/web_contents.h" - -FramebustBlockInfoBar::FramebustBlockInfoBar( - std::unique_ptr<FramebustBlockMessageDelegate> message_delegate) - : infobars::InfoBarAndroid(std::make_unique<InterventionInfoBarDelegate>( - infobars::InfoBarDelegate::InfoBarIdentifier:: - FRAMEBUST_BLOCK_INFOBAR_ANDROID, - message_delegate.get())), - delegate_(std::move(message_delegate)) { - DCHECK(delegate_); -} - -FramebustBlockInfoBar::~FramebustBlockInfoBar() = default; - -void FramebustBlockInfoBar::ProcessButton(int action) { - if (!owner()) - return; // We're closing; don't call anything, it might access the owner. - - // Tapping the button means that the user wants to bypass the intervention in - // a sticky way, e.g. via content settings. - DCHECK_EQ(action, infobars::InfoBarAndroid::ACTION_OK); - delegate_->DeclineInterventionSticky(); - RemoveSelf(); -} - -void FramebustBlockInfoBar::OnLinkClicked( - JNIEnv* env, - const base::android::JavaParamRef<jobject>& obj) { - if (!owner()) - return; // We're closing; don't call anything, it might access the owner. - - // Tapping the link means that the user wants to bypass the intervention by - // navigating to the blocked URL. - delegate_->DeclineIntervention(); - RemoveSelf(); -} - -base::android::ScopedJavaLocalRef<jobject> -FramebustBlockInfoBar::CreateRenderInfoBar( - JNIEnv* env, - const ResourceIdMapper& resource_id_mapper) { - return Java_FramebustBlockInfoBar_create( - env, base::android::ConvertUTF8ToJavaString( - env, delegate_->GetBlockedUrl().spec())); -} - -// static -void FramebustBlockInfoBar::Show( - content::WebContents* web_contents, - std::unique_ptr<FramebustBlockMessageDelegate> message_delegate) { - infobars::ContentInfoBarManager* manager = - infobars::ContentInfoBarManager::FromWebContents(web_contents); - manager->AddInfoBar( - base::WrapUnique(new FramebustBlockInfoBar(std::move(message_delegate))), - /*replace_existing=*/true); -}
diff --git a/chrome/browser/ui/android/infobars/framebust_block_infobar.h b/chrome/browser/ui/android/infobars/framebust_block_infobar.h deleted file mode 100644 index 032f5a1..0000000 --- a/chrome/browser/ui/android/infobars/framebust_block_infobar.h +++ /dev/null
@@ -1,48 +0,0 @@ -// Copyright 2017 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#ifndef CHROME_BROWSER_UI_ANDROID_INFOBARS_FRAMEBUST_BLOCK_INFOBAR_H_ -#define CHROME_BROWSER_UI_ANDROID_INFOBARS_FRAMEBUST_BLOCK_INFOBAR_H_ - -#include "base/android/jni_android.h" -#include "base/android/scoped_java_ref.h" -#include "components/infobars/android/infobar_android.h" - -namespace content { -class WebContents; -} - -class FramebustBlockMessageDelegate; - -// Communicates to the user about the intervention performed by the browser by -// blocking a framebust. -// That InfoBar shows a link to the URL that was blocked if the user wants to -// bypass the intervention, and a "OK" button to acknowledge and accept it. -// See FramebustBlockInfoBar.java for UI specifics. -class FramebustBlockInfoBar : public infobars::InfoBarAndroid { - public: - FramebustBlockInfoBar(const FramebustBlockInfoBar&) = delete; - FramebustBlockInfoBar& operator=(const FramebustBlockInfoBar&) = delete; - - ~FramebustBlockInfoBar() override; - - static void Show(content::WebContents* web_contents, - std::unique_ptr<FramebustBlockMessageDelegate> delegate); - - private: - explicit FramebustBlockInfoBar( - std::unique_ptr<FramebustBlockMessageDelegate> delegate); - - // infobars::InfoBarAndroid: - base::android::ScopedJavaLocalRef<jobject> CreateRenderInfoBar( - JNIEnv* env, - const ResourceIdMapper& resource_id_mapper) override; - void ProcessButton(int action) override; - void OnLinkClicked(JNIEnv* env, - const base::android::JavaParamRef<jobject>& obj) override; - - std::unique_ptr<FramebustBlockMessageDelegate> delegate_; -}; - -#endif // CHROME_BROWSER_UI_ANDROID_INFOBARS_FRAMEBUST_BLOCK_INFOBAR_H_
diff --git a/chrome/browser/ui/android/interventions/framebust_block_message_delegate_bridge.cc b/chrome/browser/ui/android/interventions/framebust_block_message_delegate_bridge.cc deleted file mode 100644 index 45c25f1..0000000 --- a/chrome/browser/ui/android/interventions/framebust_block_message_delegate_bridge.cc +++ /dev/null
@@ -1,55 +0,0 @@ -// Copyright 2017 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#include "chrome/browser/ui/android/interventions/framebust_block_message_delegate_bridge.h" - -#include "base/android/jni_android.h" -#include "base/android/jni_string.h" -#include "base/android/scoped_java_ref.h" -#include "chrome/browser/android/resource_mapper.h" -#include "chrome/browser/ui/interventions/framebust_block_message_delegate.h" - -using base::android::ScopedJavaLocalRef; -using base::android::JavaParamRef; -using base::android::ConvertUTF16ToJavaString; -using base::android::ConvertUTF8ToJavaString; - -FramebustBlockMessageDelegateBridge::FramebustBlockMessageDelegateBridge( - std::unique_ptr<FramebustBlockMessageDelegate> delegate) - : message_delegate_(std::move(delegate)) {} - -FramebustBlockMessageDelegateBridge::~FramebustBlockMessageDelegateBridge() = - default; - -ScopedJavaLocalRef<jstring> FramebustBlockMessageDelegateBridge::GetLongMessage( - JNIEnv* env, - const JavaParamRef<jobject>& obj) { - return ConvertUTF16ToJavaString(env, message_delegate_->GetLongMessage()); -} - -ScopedJavaLocalRef<jstring> -FramebustBlockMessageDelegateBridge::GetShortMessage( - JNIEnv* env, - const JavaParamRef<jobject>& obj) { - return ConvertUTF16ToJavaString(env, message_delegate_->GetShortMessage()); -} - -ScopedJavaLocalRef<jstring> FramebustBlockMessageDelegateBridge::GetBlockedUrl( - JNIEnv* env, - const JavaParamRef<jobject>& obj) { - return ConvertUTF8ToJavaString(env, - message_delegate_->GetBlockedUrl().spec()); -} - -jint FramebustBlockMessageDelegateBridge::GetEnumeratedIcon( - JNIEnv* env, - const JavaParamRef<jobject>& obj) { - return ResourceMapper::MapToJavaDrawableId(message_delegate_->GetIconId()); -} - -void FramebustBlockMessageDelegateBridge::OnLinkTapped( - JNIEnv* env, - const JavaParamRef<jobject>& obj) { - message_delegate_->OnLinkClicked(); -}
diff --git a/chrome/browser/ui/android/interventions/framebust_block_message_delegate_bridge.h b/chrome/browser/ui/android/interventions/framebust_block_message_delegate_bridge.h deleted file mode 100644 index 645fda7..0000000 --- a/chrome/browser/ui/android/interventions/framebust_block_message_delegate_bridge.h +++ /dev/null
@@ -1,47 +0,0 @@ -// Copyright 2017 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#ifndef CHROME_BROWSER_UI_ANDROID_INTERVENTIONS_FRAMEBUST_BLOCK_MESSAGE_DELEGATE_BRIDGE_H_ -#define CHROME_BROWSER_UI_ANDROID_INTERVENTIONS_FRAMEBUST_BLOCK_MESSAGE_DELEGATE_BRIDGE_H_ - -#include "base/android/jni_android.h" -#include "base/android/scoped_java_ref.h" -#include "chrome/browser/ui/interventions/framebust_block_message_delegate.h" - -class FramebustBlockMessageDelegate; - -// Wrapper class that exposes data from a native FramebustBlockMessageDelegate -// through JNI. -class FramebustBlockMessageDelegateBridge { - public: - explicit FramebustBlockMessageDelegateBridge( - std::unique_ptr<FramebustBlockMessageDelegate> delegate); - - FramebustBlockMessageDelegateBridge( - const FramebustBlockMessageDelegateBridge&) = delete; - FramebustBlockMessageDelegateBridge& operator=( - const FramebustBlockMessageDelegateBridge&) = delete; - - virtual ~FramebustBlockMessageDelegateBridge(); - - // JNI accessors. - base::android::ScopedJavaLocalRef<jstring> GetLongMessage( - JNIEnv* env, - const base::android::JavaParamRef<jobject>& obj); - base::android::ScopedJavaLocalRef<jstring> GetShortMessage( - JNIEnv* env, - const base::android::JavaParamRef<jobject>& obj); - base::android::ScopedJavaLocalRef<jstring> GetBlockedUrl( - JNIEnv* env, - const base::android::JavaParamRef<jobject>& obj); - jint GetEnumeratedIcon(JNIEnv* env, - const base::android::JavaParamRef<jobject>& obj); - void OnLinkTapped(JNIEnv* env, - const base::android::JavaParamRef<jobject>& obj); - - private: - std::unique_ptr<FramebustBlockMessageDelegate> message_delegate_; -}; - -#endif // CHROME_BROWSER_UI_ANDROID_INTERVENTIONS_FRAMEBUST_BLOCK_MESSAGE_DELEGATE_BRIDGE_H_
diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd index eff4eab..809cac6 100644 --- a/chrome/browser/ui/android/strings/android_chrome_strings.grd +++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd
@@ -2782,6 +2782,17 @@ See other tabs </message> + <!-- Incognito reauthentication promo card --> + <message name ="IDS_INCOGNITO_REAUTH_PROMO_TITLE" desc="The title of the incognito re-auth promo card."> + Lock Incognito tabs when you leave Chrome + </message> + <message name ="IDS_INCOGNITO_REAUTH_PROMO_DESCRIPTION" desc="The description of the incognito re-auth promo card."> + Use screen lock to see open Incognito tabs + </message> + <message name ="IDS_INCOGNITO_REAUTH_LOCK_ACTION_TEXT" desc="The label of the button which upon click would turn on the corresponding Chrome level Incognito lock setting after a re-authentication."> + Turn on Incognito lock + </message> + <!-- Autofill/Wallet integration prompt --> <message name="IDS_CARD_UNMASK_INPUT_HINT" desc="Hint text for an input field containing the user's credit card CVC (card verification code)."> CVC
diff --git a/chrome/browser/ui/android/strings/android_chrome_strings_grd/IDS_INCOGNITO_REAUTH_LOCK_ACTION_TEXT.png.sha1 b/chrome/browser/ui/android/strings/android_chrome_strings_grd/IDS_INCOGNITO_REAUTH_LOCK_ACTION_TEXT.png.sha1 new file mode 100644 index 0000000..24f32c5 --- /dev/null +++ b/chrome/browser/ui/android/strings/android_chrome_strings_grd/IDS_INCOGNITO_REAUTH_LOCK_ACTION_TEXT.png.sha1
@@ -0,0 +1 @@ +d33d94885dc2d28fd5ad5fd8dbc3ab18c716ee43 \ No newline at end of file
diff --git a/chrome/browser/ui/android/strings/android_chrome_strings_grd/IDS_INCOGNITO_REAUTH_PROMO_DESCRIPTION.png.sha1 b/chrome/browser/ui/android/strings/android_chrome_strings_grd/IDS_INCOGNITO_REAUTH_PROMO_DESCRIPTION.png.sha1 new file mode 100644 index 0000000..24f32c5 --- /dev/null +++ b/chrome/browser/ui/android/strings/android_chrome_strings_grd/IDS_INCOGNITO_REAUTH_PROMO_DESCRIPTION.png.sha1
@@ -0,0 +1 @@ +d33d94885dc2d28fd5ad5fd8dbc3ab18c716ee43 \ No newline at end of file
diff --git a/chrome/browser/ui/android/strings/android_chrome_strings_grd/IDS_INCOGNITO_REAUTH_PROMO_TITLE.png.sha1 b/chrome/browser/ui/android/strings/android_chrome_strings_grd/IDS_INCOGNITO_REAUTH_PROMO_TITLE.png.sha1 new file mode 100644 index 0000000..24f32c5 --- /dev/null +++ b/chrome/browser/ui/android/strings/android_chrome_strings_grd/IDS_INCOGNITO_REAUTH_PROMO_TITLE.png.sha1
@@ -0,0 +1 @@ +d33d94885dc2d28fd5ad5fd8dbc3ab18c716ee43 \ No newline at end of file
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_af.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_af.xtb index 8e99428..58f4f7f1 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_af.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_af.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">Moenie aanbied om hierdie werwe te vertaal nie</translation> <translation id="1145536944570833626">Vee bestaande data uit.</translation> <translation id="1146678959555564648">Gaan na VR</translation> -<translation id="114825011539563458">Die mees belangrike privaatheid- en sekuriteitkontroles op een plek</translation> <translation id="1149401351239820326">Vervalmaand</translation> <translation id="1150263420752757504"><ph name="APP_NAME" /> sal in Chrome oopmaak. Deur voort te gaan, stem jy in tot <ph name="BEGIN_LINK1" />Google se diensbepalings<ph name="END_LINK1" /> en <ph name="BEGIN_LINK2" />Google Chrome en Chrome-bedryfstelsel se bykomende diensbepalings<ph name="END_LINK2" />.</translation> <translation id="1154704303112745282">Blad is nie vanlyn beskikbaar nie: <ph name="VIOLATED_URL" /></translation> @@ -170,6 +169,7 @@ <translation id="189358972401248634">Ander tale</translation> <translation id="1894023287452300670">Spoor prys hier na</translation> <translation id="1900260903084164610">Deur voort te gaan, stem jy in tot die <ph name="BEGIN_TOS_LINK" />diensbepalings<ph name="END_TOS_LINK" />.</translation> +<translation id="1904580727789512086">Die URL'e wat jy besoek, word in jou Google-rekening gestoor</translation> <translation id="1910950723001426294">Lys deelopsies is gesluit.</translation> <translation id="1918175104945982129">Assistent-stemsoektog se instemming-UI is teen halwe hoogte oopgemaak</translation> <translation id="1919130412786645364">Laat Chrome-aanmelding toe</translation> @@ -194,7 +194,6 @@ <translation id="2000419248597011803">Stuur 'n paar webkoekies en soektogte vanaf die adresbalk en soekkassie na jou versteksoekenjin toe</translation> <translation id="200114059308480249">Sluit omringende teks by Google-soektogte in?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# lêer}other{# lêers}}</translation> -<translation id="2020309681647789787">Jy sal jou geskiedenis op al jou gesinkroniseerde toestelle hê sodat jy kan voortgaan met dit waarmee jy besig was</translation> <translation id="2021896219286479412">Volskermwerfkontroles</translation> <translation id="2038563949887743358">Skakel Versoek rekenaarwerf aan</translation> <translation id="204321170514947529"><ph name="APP_NAME" /> het ook data in Chrome</translation> @@ -280,7 +279,6 @@ <translation id="2527779675047087889">Versteek knipbordinhoud</translation> <translation id="2532336938189706096">Webaansig</translation> <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> items is uitgevee</translation> -<translation id="2534582914273493287">URL'e wat jy besoek, word na Google toe gestuur</translation> <translation id="2536728043171574184">Bekyk tans 'n vanlyn kopie van hierdie bladsy</translation> <translation id="2546283357679194313">Webkoekies en werfdata</translation> <translation id="2549516196460093976">Jy kan hierdie tablet gebruik om op die rekenaar aan te meld wat hierdie QR-kode wys.</translation> @@ -372,7 +370,6 @@ <translation id="2996291259634659425">Skep wagfrase</translation> <translation id="2996809686854298943">URL vereis</translation> <translation id="2997081575621687554">Chrome enkripteer en laai bladsye vooraf deur Google-bedieners sonder webkoekies wanneer 'n Google-werf vra om skakels op hul bladsy privaat vooraf te laai. Dit versteek jou identiteit vir die voorafgelaaide werf.</translation> -<translation id="3003733539450769656">Waarsku jou oor gevaarlike gevalle voordat hulle plaasvind</translation> <translation id="3006881078666935414">Geen gebruikdata nie</translation> <translation id="301080557829842765">Privaatheidgids</translation> <translation id="3016635187733453316">Maak seker dat hierdie toestel aan die internet gekoppel is</translation> @@ -432,6 +429,7 @@ <translation id="3284510035090979597">Proaktiewe hulp</translation> <translation id="3285080554353377245">Video's oor hoe om Chrome te gebruik</translation> <translation id="3288003805934695103">Die bladsy herlaai</translation> +<translation id="3290249595466894471">Stuur ook 'n klein voorbeeld van bladsye, aflaaie, uitbreidingaktiwiteit en stelselinligting om te help om nuwe bedreigings te ontdek</translation> <translation id="3297344142967351106">Stembystand</translation> <translation id="3303414029551471755">Gaan voort om die inhoud af te laai?</translation> <translation id="3334729583274622784">Verander lêeruitbreiding?</translation> @@ -637,7 +635,6 @@ <translation id="4558311620361989323">Webbladkortpaaie</translation> <translation id="4561730552726921821">Suksesvol geregistreer</translation> <translation id="4561979708150884304">Geen verbinding nie</translation> -<translation id="4562008740775511591">Chrome verskaf redelike verstekke, maar jy kan dit pasmaak om die beste by jou blaaigewoonte te pas</translation> <translation id="4565377596337484307">Versteek wagwoord</translation> <translation id="4572422548854449519">Meld by 'n bestuurde rekening aan</translation> <translation id="4576892426230499203">Probeer 'n ander verifikasie-opsie</translation> @@ -919,7 +916,6 @@ <translation id="604996488070107836">Kon <ph name="FILE_NAME" /> weens 'n onbekende fout nie aflaai nie.</translation> <translation id="605721222689873409">YY</translation> <translation id="6059830886158432458">Beheer jou stories en aktiwiteit hier</translation> -<translation id="6069177176307973611">Gaan privaatheid- en sekuriteitinstellings na</translation> <translation id="6070730414166672373">Kontak tans jou bank u2026</translation> <translation id="6085886413119427067">Bepaal hoe om met 'n beveiligde verbinding aan webwerwe te koppel</translation> <translation id="6091413777268123602">Met Privacy Sandbox-proeflopies kan werwe minder van jou data gebruik om dieselfde blaai-ervaring te lewer. Dit beteken meer privaatheid vir jou en minder oorkruiswerfnasporing. Ons sal nuwe proeflopies byvoeg soos hulle gereed is om te toets.</translation> @@ -1040,6 +1036,7 @@ <translation id="6641780377503683465">Verwyder <ph name="INTEREST" /></translation> <translation id="6643016212128521049">Vee uit</translation> <translation id="6645629752388991326">Beheer watter toestelle kan aanmeld deur hierdie toestel as 'n sekuriteitsleutel te gebruik.</translation> +<translation id="6647441008198474441">URL'e wat jy besoek, word na Google toe gestuur om te voorspel watter werwe jy dalk volgende sal besoek</translation> <translation id="6648459603387803038">Jou administrateur kan jou blaaieropstelling oor 'n afstand verander. Aktiwiteit op hierdie toestel kan ook buite Chrome bestuur word.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" /> \u2026 en nog <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}other{<ph name="CONTACT_PREVIEW" /> \u2026 en nog <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}}</translation> <translation id="6649642165559792194">Voorbeskou prent <ph name="BEGIN_NEW" />Nuwe<ph name="END_NEW" /></translation> @@ -1047,7 +1044,6 @@ <translation id="6659594942844771486">Oortjie</translation> <translation id="666731172850799929">Maak oop in <ph name="APP_NAME" /></translation> <translation id="6671495933530132209">Kopieer prent</translation> -<translation id="6674044799624355221">Stuur 'n klein voorbeeld van bladsye, aflaaie, uitbreidingaktiwiteit en stelselinligting om te help om nuwe bedreigings te ontdek</translation> <translation id="6674571176963658787">Voer jou wagfrase in om sinkronisering te begin</translation> <translation id="6676840375528380067">Vee jou Chrome-data op hierdie toestel uit?</translation> <translation id="6684809838922667136">Maak Chrome beter</translation> @@ -1069,7 +1065,6 @@ <translation id="6802555630140434547">Die venster sal toegemaak word</translation> <translation id="6811034713472274749">Bladsy is gereed om bekyk te word</translation> <translation id="6813446258015311409">Meld by Chrome aan; oopgemaak.</translation> -<translation id="6814033694018386318">Wat jy met Google deel</translation> <translation id="6817747507826986771">Deel hierdie bladsy vinnig. Raak en hou om hierdie kortpad te wysig.</translation> <translation id="6819199143469632133">Meld aan om jou Google-goed op alle toestelle te kry</translation> <translation id="6820686453637990663">CVC</translation> @@ -1164,6 +1159,7 @@ <translation id="7352939065658542140">VIDEO</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{Deel 1 gekose item}other{Deel # gekose items}}</translation> <translation id="7359002509206457351">Toegang tot betaalmetodes</translation> +<translation id="7363349185727752629">'n Gids tot jou privaatheidkeuses</translation> <translation id="7375125077091615385">Tipe:</translation> <translation id="7376560087009844242">As jy meer van 'n bladsy se teks insluit, sal jy dalk beter resultate sien wanneer jy Raak om te Soek gebruik. Jy kan altyd <ph name="BEGIN_LINK" />Instellings<ph name="END_LINK" /> besoek om dit te verander.</translation> <translation id="7379900596734708416">Donkertema vir werwe is beskikbaar</translation> @@ -1263,6 +1259,7 @@ <translation id="7876243839304621966">Verwyder alles</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{Jy het <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> ongelese bladsy}other{Jy het <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> ongelese bladsye}}</translation> <translation id="7886917304091689118">Werk in Chrome</translation> +<translation id="7887174313503389866">Begin 'n begeleide toer van belangrike privaatheid- en sekuriteitkontroles. Gaan na individuele instellings vir meer opsies.</translation> <translation id="7887334752153342268">Dupliseer</translation> <translation id="789763218334337857">Hoe om Chrome te gebruik</translation> <translation id="7903184275147100332">Dit kan 'n rukkie neem</translation> @@ -1376,6 +1373,7 @@ <translation id="8445448999790540984">Kan nie wagwoorde uitvoer nie</translation> <translation id="8446884382197647889">Kom meer te wete</translation> <translation id="8453310803815879010">Begin Dinosourusspeletjie</translation> +<translation id="8460448946170646641">Gaan belangrike privaatheid- en sekuriteitkontroles na</translation> <translation id="8461694314515752532">Enkripteer gesinkroniseerde data met jou eie sinkroniseringwagfrase</translation> <translation id="8466613982764129868">Maak seker dat <ph name="TARGET_DEVICE_NAME" /> aan die internet gekoppel is.</translation> <translation id="8473863474539038330">Adresse en meer</translation> @@ -1421,6 +1419,7 @@ <translation id="8636825310635137004">Skakel sinkronisering aan om jou oortjies van jou ander toestelle af te kry.</translation> <translation id="8641930654639604085">Probeer volwasse werwe blokkeer</translation> <translation id="864544049772947936">Bestuur vensters (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">Voorspel en waarsku jou teen gevaarlike gevalle voordat hulle plaasvind</translation> <translation id="8646467750715887511">Bladsye laai slegs nadat jy hulle oopgemaak het.</translation> <translation id="8655129584991699539">Jy kan die data in Chrome-instellings uitvee</translation> <translation id="8659579665266920523">Hoe om met Chrome te soek</translation> @@ -1433,7 +1432,6 @@ <translation id="867767487203716855">Volgende opdatering</translation> <translation id="8683039184091909753">prent</translation> <translation id="8683081248374354009">Stel groep terug</translation> -<translation id="8683526617475118045">Wat jy kry</translation> <translation id="869891660844655955">Vervaldatum</translation> <translation id="8699120352855309748">Moenie aanbied om hierdie tale te vertaal nie</translation> <translation id="8712637175834984815">Het dit</translation> @@ -1517,7 +1515,6 @@ <translation id="9148126808321036104">Meld weer aan …</translation> <translation id="9158770349521403363">Deel net inhoud</translation> <translation id="9159716826369098114">Stel oortjiegroep van <ph name="TAB_COUNT" /> oortjies terug as ’n nuwe agtergrondoortjiegroep.</translation> -<translation id="916446198114569890">Die URL'e wat jy besoek, word in jou Google-rekening gestoor</translation> <translation id="9169507124922466868">Navigasiegeskiedenis is half oopgemaak</translation> <translation id="9187955620966010988">Reaksie is verstel</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{1 minuut gelede nagegaan}other{# minute gelede nagegaan}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_am.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_am.xtb index b73057b..6336a72 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_am.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_am.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">እነዚህን ጣቢያዎች ለትርጉም አታቅርብ</translation> <translation id="1145536944570833626">ነባሩን ውሂብ ይሰርዙ።</translation> <translation id="1146678959555564648">ምናባዊ ዕውነታ አስገባ</translation> -<translation id="114825011539563458">በጣም አስፈላጊ የሆኑት የግላዊነት እና የደህንነት ቁጥጥሮች በአንድ ቦታ</translation> <translation id="1149401351239820326">ጊዜው የሚያልፍበት ወር</translation> <translation id="1150263420752757504"><ph name="APP_NAME" /> በChrome ውስጥ ይከፈታል። በመቀጠልዎ በ<ph name="BEGIN_LINK1" />Google አገልግሎት ውል<ph name="END_LINK1" /> እና <ph name="BEGIN_LINK2" />የGoogle Chrome እና የChromeOS ተጨማሪ አገልግሎት ውል<ph name="END_LINK2" /> ይስማማሉ።</translation> <translation id="1154704303112745282">ገጽ ከመስመር ውጭ አይገኝም፦ <ph name="VIOLATED_URL" /></translation> @@ -170,6 +169,7 @@ <translation id="189358972401248634">ሌሎች ቋንቋዎች</translation> <translation id="1894023287452300670">ዋጋን እዚህ ይከታተሉ</translation> <translation id="1900260903084164610">በመቀጠል፣ በ<ph name="BEGIN_TOS_LINK" />የአገልግሎት ውል<ph name="END_TOS_LINK" /> ይስማማሉ።</translation> +<translation id="1904580727789512086">የሚጎበኟቸው ዩአርኤሎች በGoogle መለያዎ ላይ ይቀመጣሉ።</translation> <translation id="1910950723001426294">የማጋሪያ አማራጮች ዝርዝር ተዘግቷል።</translation> <translation id="1918175104945982129">የረዳት ድምፅ ፍለጋ ስምምነት ዩአይን በግማሽ ቁመት ተከፍቷል</translation> <translation id="1919130412786645364">የChrome በመለያ መግባትን ይፍቀዱ</translation> @@ -194,7 +194,6 @@ <translation id="2000419248597011803">ፍለጋዎችን ከአድራሻ አሞሌው እና ከፍለጋ ሳጥኑ እና አንዳንድ ኩኪዎችን ወደ ነባሪው የፍለጋ ፕሮግራምዎ ይልካል</translation> <translation id="200114059308480249">በGoogle ፍለጋዎች ውስጥ በዙሪያው ያለው ጽሑፍ ይካተት?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# ፋይል}one{# ፋይሎች}other{# ፋይሎች}}</translation> -<translation id="2020309681647789787">እያደረጉ የነበሩትን መቀጠል እንዲችሉ ታሪክዎን በሁሉም በተሰመሩ መሳሪያዎችዎ ላይ ይኖረዎታል</translation> <translation id="2021896219286479412">የሙሉ ማያ ገጽ ጣቢያ መቆጣጠሪያዎች</translation> <translation id="2038563949887743358">የዴስክቶፕ ጣቢያን ጠይቅን አብራ</translation> <translation id="204321170514947529"><ph name="APP_NAME" /> እንዲሁም በChrome ውስጥ ውሂብ አለው</translation> @@ -280,7 +279,6 @@ <translation id="2527779675047087889">የቅንጥብ ሰሌዳ ይዘቶችን ደብቅ</translation> <translation id="2532336938189706096">የድር ዕይታ</translation> <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> ንጥሎች ተሰርዟል</translation> -<translation id="2534582914273493287">እርስዎ የጎበኟቸው ዩአርኤሎች ወደ Google ይላካሉ</translation> <translation id="2536728043171574184">የዚህን ገጽ የመስመር ውጭ ቅጂ በመመልከት ላይ</translation> <translation id="2546283357679194313">ኩኪዎች እና የጣቢያ ውሂብ</translation> <translation id="2549516196460093976">ይህን QR ኮድ ወደሚያሳየው ኮምፒውተር በመለያ ለመግባት ይህን ጡባዊ መጠቀም ይችላሉ።</translation> @@ -372,7 +370,6 @@ <translation id="2996291259634659425">የይለፍ ሐረግ ይፍጠሩ</translation> <translation id="2996809686854298943">ዩአርኤል ያስፈልጋል</translation> <translation id="2997081575621687554">አንድ የGoogle ጣቢያ በገጻቸው ላይ አገናኞችን በግል ቅድሚያ እንዲጭኑ ሲጠይቀዎት Chrome ገጾችን አመስጥሮ ያለኩኪዎች በGoogle አገልጋዮች በኩል ቅድሚያ ይጭናቸዋል። ይህ ማንነትዎን ቅድሚያ ከተጫነው ጣቢያ ይደብቀዋል።</translation> -<translation id="3003733539450769656">አደገኛ ክስተቶች ከመከሰታቸው በፊት ያስጠነቅቀዎታል</translation> <translation id="3006881078666935414">ምንም የአጠቃቀም ውሂብ የለም</translation> <translation id="301080557829842765">የግላዊነት መመሪያ</translation> <translation id="3016635187733453316">ይህ መሣሪያ ወደ በይነ መረብ እንደተገናኘ እርግጠኛ ይሁኑ</translation> @@ -432,6 +429,7 @@ <translation id="3284510035090979597">ንቁ እገዛ</translation> <translation id="3285080554353377245">Chromeን እንዴት እንደሚጠቀሙ ቪዲዮዎች</translation> <translation id="3288003805934695103">ገጹን እንደገና መጫን</translation> +<translation id="3290249595466894471">አዲስ ስጋቶችን ፈልጎ ለማግኘት እንዲያግዝ በተጨማሪም የገጾች፣ ውርዶች፣ የቅጥያ እንቅስቃሴ እና የሥርዓት መረጃ ትንሽ ናሙና ይልካል</translation> <translation id="3297344142967351106">የድምጽ እርዳታ</translation> <translation id="3303414029551471755">ይዘቱን ማውረድ ይቀጥል?</translation> <translation id="3334729583274622784">የፋይል ቅጥያ ይቀየር?</translation> @@ -637,7 +635,6 @@ <translation id="4558311620361989323">የድረ-ገጽ አቋራጮች</translation> <translation id="4561730552726921821">ምዝገባው ተሳክቷል</translation> <translation id="4561979708150884304">ግንኙነት የለም</translation> -<translation id="4562008740775511591">Chrome ምክንያታዊ ነባሪዎችን ይሰጣል፣ ነረር ግን የአሰሳ ልማድዎን በተሻለ ሁኔታ እንዲስማማ ማበጀት ይችላሉ</translation> <translation id="4565377596337484307">የይለፍ ቃል ደብቅ</translation> <translation id="4572422548854449519">ወደ የሚተዳደር መለያ ይግቡ</translation> <translation id="4576892426230499203">ሌላ የማረጋገጫ አማራጭ ይሞክሩ</translation> @@ -919,7 +916,6 @@ <translation id="604996488070107836"><ph name="FILE_NAME" />ን ማውረድ ባልታወቀ ስህተት ምክንያት አልተሳካም።</translation> <translation id="605721222689873409">ዓዓ</translation> <translation id="6059830886158432458">የእርስዎን ታሪክ እና እንቅስቃሴ እዚህ ይቆጣጠሩ</translation> -<translation id="6069177176307973611">የግላዊነት እና የደህንነት ቅንብሮችን ይገምግሙ</translation> <translation id="6070730414166672373">ባንክዎን በማነጋገር ላይ\u2026</translation> <translation id="6085886413119427067">እንዴት ደህንነቱ በተጠበቀ ግንኙነት ላይ ከድር ጣቢያዎች ጋር እንደሚገናኙ ይወስናል</translation> <translation id="6091413777268123602">በግላዊነት Sandbox ሙከራዎች ጣቢያዎች ያነስ ውሂብዎን በመጠቀም ተመሳሳይ የአሰሳ ተሞክሮን ማድረስ ይችላሉ። ይህ ማለት ለእርስዎ የበለጠ ግላዊነት እና ያነሰ የጣቢያ ተሻጋሪ ክትትል ማለት ነው። ለመሞከር ልክ ዝግጁ ሲሆኑ አዲስ ሙከራዎችን እናክላለን።</translation> @@ -1040,6 +1036,7 @@ <translation id="6641780377503683465"><ph name="INTEREST" />ን አስወግድ</translation> <translation id="6643016212128521049">አጽዳ</translation> <translation id="6645629752388991326">ይህንን መሳሪያ እንደ የደህንነት ቁልፍ በመጠቀም የትኛዎቹ መሳሪያዎች መግባት እንደሚችሉ ይቆጣጠሩ።</translation> +<translation id="6647441008198474441">እርስዎ የሚጎበኟቸው ዩአርኤሎች ቀጥሎ የትኞቹን ጣቢያዎች ሊጎበኙ እንደሚችሉ ለመተንበይ ወደ Google ይላካሉ</translation> <translation id="6648459603387803038">የእርስዎ አስተዳዳሪ በርቀት የአሳሽዎን ውቅረት መቀየር ይችላል። በዚህ መሣሪያ ላይ ያለ እንቅስቃሴ ከChrome ውጭም ሊስተዳደር ይችላል።</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 እና <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> ተጨማሪ}one{<ph name="CONTACT_PREVIEW" />\u2026 እና <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> ተጨማሪ}other{<ph name="CONTACT_PREVIEW" />\u2026 እና <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> ተጨማሪ}}</translation> <translation id="6649642165559792194">ምስል <ph name="BEGIN_NEW" />አዲስ<ph name="END_NEW" />ን ቅድሚያ ይመልከቱ</translation> @@ -1047,7 +1044,6 @@ <translation id="6659594942844771486">ትር</translation> <translation id="666731172850799929">በ<ph name="APP_NAME" /> ውስጥ ክፈት</translation> <translation id="6671495933530132209">ምስል ቅዳ</translation> -<translation id="6674044799624355221">አዲስ ስጋቶችን ፈልጎ ለማግኘት እንዲያግዝ የገጾች፣ ውርዶች፣ የቅጥያ እንቅስቃሴ እና የሥርዓት መረጃ ትንሽ ናሙና ይልካል</translation> <translation id="6674571176963658787">ስምረትን ለመጀመር የይለፍ ሐረግዎን ያስገቡ</translation> <translation id="6676840375528380067">የChrome ውሂብዎ ከዚህ መሣሪያ ላይ ይጽዳ?</translation> <translation id="6684809838922667136">Chromeን የተሻለ ያድርጉት</translation> @@ -1069,7 +1065,6 @@ <translation id="6802555630140434547">መስኮቱ ይዘጋል</translation> <translation id="6811034713472274749">ገጽ ለመመልከት ዝግጁ ነው</translation> <translation id="6813446258015311409">ወደ Chrome መግባት፣ ተከፍቷል።</translation> -<translation id="6814033694018386318">ለGoogle የሚያጋሩት ነገር</translation> <translation id="6817747507826986771">ይህንን ገጽ በፍጥነት ያጋሩ ይህን አቋራጭ ለማርትዕ ነክተው ይያዙ።</translation> <translation id="6819199143469632133">የእርስዎን የGoogle ነገሮች በመሳሪያዎች ላይ ለማግኘት፣ በመለያ ይግቡ</translation> <translation id="6820686453637990663">CVC</translation> @@ -1164,6 +1159,7 @@ <translation id="7352939065658542140">ቪድዮ</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{1 የተመረጠ ንጥል አጋራ}one{# የተመረጡ ንጥሎችን አጋራ}other{# የተመረጡ ንጥሎችን አጋራ}}</translation> <translation id="7359002509206457351">የመዳረሻ መክፈያ ዘዴዎች</translation> +<translation id="7363349185727752629">የግላዊነት ምርጫዎችዎ መመሪያ</translation> <translation id="7375125077091615385">ዓይነት፦</translation> <translation id="7376560087009844242">ተጨማሪ የገጽ ጽሑፍ በማካተት፣ ለመፈለግ ይንኩን ሲጠቀሙ የተሻሉ ውጤቶችን ማየት ይችላሉ። ይህንን ለመለወጥ ሁልጊዜ <ph name="BEGIN_LINK" />ቅንብሮች<ph name="END_LINK" />ን መጎብኘት ይችላሉ።</translation> <translation id="7379900596734708416">ለጣቢያዎች ጠቆር ያለ ገጽታ ይገኛል</translation> @@ -1263,6 +1259,7 @@ <translation id="7876243839304621966">ሁሉንም አስወግድ</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{<ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> ያልተነበበ ገጽ አለዎት}one{<ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> ያልተነበቡ ገጾች አለዎት}other{<ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> ያልተነበቡ ገጾች አለዎት}}</translation> <translation id="7886917304091689118">በChrome ውስጥ በማሄድ ላይ</translation> +<translation id="7887174313503389866">የቁልፍ ግላዊነት እና ደህንነት ቁጥጥሮች በአስጎብኚ የሚወሰድ ጉብኝት ያድርጉ። ለተጨማሪ አማራጮች ወደ ግለሰብ ቅንብሮች ይሂዱ።</translation> <translation id="7887334752153342268">አባዛ</translation> <translation id="789763218334337857">እንዴት Chromeን እንደሚጠቀሙበት</translation> <translation id="7903184275147100332">ይህ አንድ ደቂቃ ሊወስድ ይችላል</translation> @@ -1376,6 +1373,7 @@ <translation id="8445448999790540984">የይለፍ ቃላትን ወደ ውጭ መላክ አልተቻለም</translation> <translation id="8446884382197647889">ተጨማሪ ለመረዳት</translation> <translation id="8453310803815879010">የዳይኖ ጨዋታን ይጀምሩ</translation> +<translation id="8460448946170646641">ቁልፍ የግላዊነት እና የደህንነት ቁጥጥሮችን ይገምግሙ</translation> <translation id="8461694314515752532">የሰመረ ውሂብ በራስዎ የስምረት ይለፍ ሐረግ ያመሣጥሩ</translation> <translation id="8466613982764129868"><ph name="TARGET_DEVICE_NAME" /> ከበይነ መረብ ጋር መገናኘቱን ያረጋግጡ</translation> <translation id="8473863474539038330">አድራሻዎች እና ተጨማሪ</translation> @@ -1421,6 +1419,7 @@ <translation id="8636825310635137004">ትሮችዎን ከሌሎች መሣሪያዎችዎ ለማግኘት ስምረትን ያብሩ።</translation> <translation id="8641930654639604085">የአዋቂ ሰው ጣቢያዎችን ለማገድ ሞክር</translation> <translation id="864544049772947936">መስኮቶችን (<ph name="INSTANCE_COUNTS" />) ያቀናብሩ</translation> +<translation id="8645920082661222035">አደገኛ ክስተቶች ከመፈጠራቸው በፊት ይገምት እና እርስዎን ያስጠነቅቀዎታል</translation> <translation id="8646467750715887511">ገጾች የሚጫኑት እርስዎ ከከፈቷቸው በኋላ ብቻ ነው።</translation> <translation id="8655129584991699539">ውሂቡን በChrome ቅንብሮች ውስጥ ማጽዳት ይችላሉ</translation> <translation id="8659579665266920523">በChrome እንዴት መፈለግ እንደሚቻል</translation> @@ -1433,7 +1432,6 @@ <translation id="867767487203716855">ቀጣዩ ዝማኔ</translation> <translation id="8683039184091909753">ምስል</translation> <translation id="8683081248374354009">ቡድንን ዳግም አስጀምር</translation> -<translation id="8683526617475118045">የሚያገኙት ነገር</translation> <translation id="869891660844655955">የሚያበቀበት ጊዜ</translation> <translation id="8699120352855309748">እነዚህን ቋንቋዎች ለመተርጎም አያቅርቡ</translation> <translation id="8712637175834984815">ገባኝ</translation> @@ -1517,7 +1515,6 @@ <translation id="9148126808321036104">እንደገና ይግቡ</translation> <translation id="9158770349521403363">ይዘትን ብቻ ያጋሩ</translation> <translation id="9159716826369098114">የ<ph name="TAB_COUNT" /> ትሮችን የትር ቡድን እንደ አዲስ የዳራ ትር ቡድን ወደነበረበት መልስ።</translation> -<translation id="916446198114569890">የሚጎበኟቸው ዩአርኤሎች በGoogle መለያዎ ላይ ይቀመጣሉ</translation> <translation id="9169507124922466868">የዳሰሳ ታሪክ በግማሽ ተከፍቷል</translation> <translation id="9187955620966010988">ምላሽ ተስተካክሏል</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{ከ1 ደቂቃ በፊት ተፈትሿል}one{ከ# ደቂቃዎች በፊት ተፈትሿል}other{ከ# ደቂቃዎች በፊት ተፈትሿል}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_ar.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_ar.xtb index cd5d138..a6abe006 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_ar.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_ar.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">عدم اقتراح ترجمة لهذه المواقع الإلكترونية</translation> <translation id="1145536944570833626">يمكنك حذف البيانات الحالية.</translation> <translation id="1146678959555564648">إدخال VR</translation> -<translation id="114825011539563458">أهم عناصر التحكّم في الخصوصية والأمان من مكان واحد</translation> <translation id="1149401351239820326">شهر انتهاء الصلاحية</translation> <translation id="1150263420752757504">سيتم فتح تطبيق "<ph name="APP_NAME" />" في Chrome. تعني المتابعة موافقتك على <ph name="BEGIN_LINK1" />بنود خدمة Google<ph name="END_LINK1" /> و<ph name="BEGIN_LINK2" />بنود الخدمة الإضافية لكل من متصفّح Google Chrome ونظام التشغيل Chrome<ph name="END_LINK2" />.</translation> <translation id="1154704303112745282">لا تتوفّر الصفحة بلا اتصال بالإنترنت: <ph name="VIOLATED_URL" /></translation> @@ -170,6 +169,7 @@ <translation id="189358972401248634">لغات أخرى</translation> <translation id="1894023287452300670">يمكنك تتبُّع السعر من هنا.</translation> <translation id="1900260903084164610">تشير المتابعة إلى موافقتك على <ph name="BEGIN_TOS_LINK" />بنود الخدمة<ph name="END_TOS_LINK" />.</translation> +<translation id="1904580727789512086">يتم حفظ عناوين URL التي تنتقل إليها في حسابك على Google.</translation> <translation id="1910950723001426294">قائمة خيارات المشاركة مغلقة.</translation> <translation id="1918175104945982129">تم فتح واجهة المستخدم الخاصة بالموافقة على استخدام ميزة "البحث الصوتي" في "مساعد Google" في نصف الشاشة.</translation> <translation id="1919130412786645364">السماح بتسجيل الدخول إلى Chrome</translation> @@ -194,7 +194,6 @@ <translation id="2000419248597011803">يُرسِل بعض ملفات تعريف الارتباط وعمليات البحث من شريط العناوين ومربّع البحث إلى محرِّك البحث التلقائي.</translation> <translation id="200114059308480249">هل تريد تضمين النص المحيط في عمليات البحث على Google؟</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{ملف واحد (#)}zero{# ملف}two{ملفان (#)}few{# ملفات}many{# ملفًا}other{# ملف}}</translation> -<translation id="2020309681647789787">سيظهر لك سجلّ التصفّح على جميع الأجهزة التي تتم مزامنة حسابك معها، ما يعني أنه يمكنك متابعة التصفّح من حيث توقفت.</translation> <translation id="2021896219286479412">عناصر التحكم لموقع في وضع ملء الشاشة</translation> <translation id="2038563949887743358">تفعيل طلب الموقع الإلكتروني لسطح المكتب</translation> <translation id="204321170514947529">تتوفَّر بيانات<ph name="APP_NAME" /> أيضًا في Chrome</translation> @@ -280,7 +279,6 @@ <translation id="2527779675047087889">إخفاء محتوى الحافظة</translation> <translation id="2532336938189706096">عرض الويب</translation> <translation id="2534155362429831547">تم حذف <ph name="NUMBER_OF_ITEMS" /> من العناصر</translation> -<translation id="2534582914273493287">يتم إرسال عناوين URL التي تزورها إلى Google</translation> <translation id="2536728043171574184">عرض نسخة بلا اتصال من هذه الصفحة</translation> <translation id="2546283357679194313">ملفات تعريف الارتباط وبيانات المواقع الإلكترونية </translation> @@ -373,7 +371,6 @@ <translation id="2996291259634659425">إنشاء عبارة المرور</translation> <translation id="2996809686854298943">عنوان URL المطلوب</translation> <translation id="2997081575621687554">عندما يطلب موقع إلكتروني مصمَّم في "مواقع Google" تحميل الروابط في صفحته مُسبقًا بخصوصية، سيشفِّر Chrome الصفحات ويحمّلها مُسبقًا من خلال خوادم Google بدون ملفات تعريف الارتباط. يؤدي هذا الإجراء إلى إخفاء هويتك عن الموقع الإلكتروني الذي يتم تحميله مُسبقًا.</translation> -<translation id="3003733539450769656">يتم التحذير من الأحداث الخطيرة قبل وقوعها.</translation> <translation id="3006881078666935414">لا تتوفر بيانات استخدام</translation> <translation id="301080557829842765">دليل الخصوصية</translation> <translation id="3016635187733453316">يُرجى التأكُّد من اتصال هذا الجهاز بالإنترنت.</translation> @@ -433,6 +430,7 @@ <translation id="3284510035090979597">المساعدة الاستباقية</translation> <translation id="3285080554353377245">فيديوهات حول كيفية استخدام Chrome</translation> <translation id="3288003805934695103">إعادة تحميل الصفحة</translation> +<translation id="3290249595466894471">يُرسِل هذا الوضع أيضًا عددًا قليلاً من الصفحات وعمليات التنزيل وأنشطة الإضافات ومعلومات النظام للمساعدة في اكتشاف التهديدات الجديدة.</translation> <translation id="3297344142967351106">المساعَدة الصوتية</translation> <translation id="3303414029551471755">هل ترغب في الاستمرار في تنزيل المحتوى؟</translation> <translation id="3334729583274622784">هل تريد تغيير امتداد الملف؟</translation> @@ -638,7 +636,6 @@ <translation id="4558311620361989323">اختصارات صفحة الويب</translation> <translation id="4561730552726921821">تم التسجيل بنجاح.</translation> <translation id="4561979708150884304">لا يتوفّر اتصال بالإنترنت</translation> -<translation id="4562008740775511591">يوفّر Chrome إعدادات تلقائية معقولة، إلا أنه يمكنك تخصيص هذه الإعدادات لتناسب تجربتك في التصفّح على أفضل وجه.</translation> <translation id="4565377596337484307">إخفاء كلمة المرور</translation> <translation id="4572422548854449519">تسجيل الدخول إلى الحساب المدار</translation> <translation id="4576892426230499203">تجربة خيار آخر لإثبات الهوية</translation> @@ -920,7 +917,6 @@ <translation id="604996488070107836">تعذّر تنزيل الملف <ph name="FILE_NAME" /> بسبب خطأ غير معلوم.</translation> <translation id="605721222689873409">العام</translation> <translation id="6059830886158432458">يمكنك التحكُّم بقصصك ونشاطك هنا.</translation> -<translation id="6069177176307973611">مراجعة إعدادات الخصوصية والأمان</translation> <translation id="6070730414166672373">جارٍ التواصل مع المصرف\u2026</translation> <translation id="6085886413119427067">تحديد طريقة الاتصال بمواقع إلكترونية من خلال اتصال آمن</translation> <translation id="6091413777268123602">باستخدام الإصدارات التجريبية من "مبادرة حماية الخصوصية"، يمكن للمواقع الإلكترونية تقديم تجربة التصفّح ذاتها باستخدام قدر أقل من بياناتك، ما يعني توفير المزيد من الخصوصية لك وتقليل التتبّع على المواقع الإلكترونية. وسنضيف إصدارات تجريبية جديدة عندما تصبح جاهزة للاختبار.</translation> @@ -1041,6 +1037,7 @@ <translation id="6641780377503683465">إزالة <ph name="INTEREST" /></translation> <translation id="6643016212128521049">محو</translation> <translation id="6645629752388991326">يمكنك التحكّم في الأجهزة التي يمكن تسجيل الدخول إلى حساب Google عليها باستخدام هذا الجهاز كمفتاح أمان.</translation> +<translation id="6647441008198474441">يتم إرسال عناوين URL التي تزورها إلى Google لتوقّع المواقع الإلكترونية التي ستزورها بعد ذلك.</translation> <translation id="6648459603387803038">يمكن لمشرفك تغيير إعداد المتصفِّح عن بُعد. وقد تتم أيضًا إدارة النشاط على هذا الجهاز خارج Chrome.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 وجهة اتصال إضافية واحدة <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}zero{<ph name="CONTACT_PREVIEW" />\u2026 و<ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> جهة اتصال إضافية}two{<ph name="CONTACT_PREVIEW" />\u2026 وجهتا اتصال إضافيتان (<ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />)}few{<ph name="CONTACT_PREVIEW" />\u2026 و<ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> جهات اتصال إضافية}many{<ph name="CONTACT_PREVIEW" />\u2026 و<ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> جهة اتصال إضافية}other{<ph name="CONTACT_PREVIEW" />\u2026 و<ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> جهة اتصال إضافية}}</translation> <translation id="6649642165559792194">معاينة صورة <ph name="BEGIN_NEW" />ميزة جديدة<ph name="END_NEW" /></translation> @@ -1048,7 +1045,6 @@ <translation id="6659594942844771486">علامة تبويب</translation> <translation id="666731172850799929">الفتح في <ph name="APP_NAME" /></translation> <translation id="6671495933530132209">نسخ الصورة</translation> -<translation id="6674044799624355221">يتم أيضًا إرسال عيّنة صغيرة من الصفحات وعمليات التنزيل ونشاط الإضافات ومعلومات النظام للمساعدة في رصد التهديدات الجديدة.</translation> <translation id="6674571176963658787">لبدء المزامنة، يجب إدخال عبارة المرور.</translation> <translation id="6676840375528380067">هل تريد محو بيانات Chrome من هذا الجهاز؟</translation> <translation id="6684809838922667136">تحسين أداء متصفِّح Chrome</translation> @@ -1070,7 +1066,6 @@ <translation id="6802555630140434547">سيتم إغلاق النافذة.</translation> <translation id="6811034713472274749">الصفحة جاهزة للعرض</translation> <translation id="6813446258015311409">تسجيل الدخول إلى Chrome، تم فتح البطاقة السفلية.</translation> -<translation id="6814033694018386318">المعلومات التي تتم مشاركتها مع Google</translation> <translation id="6817747507826986771">يتيح لك هذا الزر مشاركة هذه الصفحة بسرعة. ولتعديل هذا الاختصار، انقر مع الاستمرار.</translation> <translation id="6819199143469632133">للوصول إلى منتجات Google على جميع أجهزتك، ما عليك سوى تسجيل الدخول.</translation> <translation id="6820686453637990663">CVC</translation> @@ -1165,6 +1160,7 @@ <translation id="7352939065658542140">فيديو</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{مشاركة عنصر واحد محدد}zero{مشاركة # عنصر محدد}two{مشاركة عنصرين (#) محددين}few{مشاركة # عناصر محددة}many{مشاركة # عنصرًا محددًا}other{مشاركة # عنصر محدد}}</translation> <translation id="7359002509206457351">الوصول إلى طرق الدفع</translation> +<translation id="7363349185727752629">دليل خيارات الخصوصية</translation> <translation id="7375125077091615385">النوع:</translation> <translation id="7376560087009844242">من خلال تضمين المزيد من نص صفحة معيَّنة، يمكنك الحصول على نتائج أفضل عند استخدام ميزة "النقر للبحث". ويمكنك متى شئت الانتقال إلى <ph name="BEGIN_LINK" />الإعدادات<ph name="END_LINK" /> لتغيير هذا الإعداد.</translation> <translation id="7379900596734708416">يتوفّر المظهر الداكن للمواقع الإلكترونية</translation> @@ -1264,6 +1260,7 @@ <translation id="7876243839304621966">إزالة الكل</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{لديك صفحة واحدة (<ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" />) غير مقروءة}zero{لديك <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> صفحة غير مقروءة}two{لديك صفحتان (<ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" />) غير مقروءتَين}few{لديك <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> صفحات غير مقروءة}many{لديك <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> صفحة غير مقروءة}other{لديك <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> صفحة غير مقروءة}}</translation> <translation id="7886917304091689118">قيد التشغيل في Chrome</translation> +<translation id="7887174313503389866">يمكنك الاطّلاع على العناصر الرئيسية للتحكّم في الخصوصية والأمان. ولمزيد من الخيارات، انتقِل إلى الإعدادات الفردية.</translation> <translation id="7887334752153342268">تكرار</translation> <translation id="789763218334337857">كيفية استخدام Chrome</translation> <translation id="7903184275147100332">يُرجى الانتظار قليلًا</translation> @@ -1377,6 +1374,7 @@ <translation id="8445448999790540984">يتعذّر تصدير كلمات المرور</translation> <translation id="8446884382197647889">مزيد من المعلومات</translation> <translation id="8453310803815879010">تشغيل لعبة الديناصور</translation> +<translation id="8460448946170646641">مراجعة العناصر الرئيسية للتحكّم في الخصوصية والأمان</translation> <translation id="8461694314515752532">ترميز البيانات المتزامنة باستخدام عبارة مرور المزامنة الخاصة بك</translation> <translation id="8466613982764129868">يُرجى التأكُّد من اتصال الجهاز <ph name="TARGET_DEVICE_NAME" /> بالإنترنت.</translation> <translation id="8473863474539038330">العناوين والمزيد</translation> @@ -1422,6 +1420,7 @@ <translation id="8636825310635137004">للحصول على علامات التبويب من أجهزتك الأخرى، فعِّل المزامنة.</translation> <translation id="8641930654639604085">محاولة حظر المواقع الإلكترونية التي تتضمن محتوى للبالغين</translation> <translation id="864544049772947936">إدارة النوافذ (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">توقُّع الأحداث الخطيرة قبل حدوثها والتحذير منها</translation> <translation id="8646467750715887511">لا يتم تحميل الصفحات إلّا بعد أن تفتحها.</translation> <translation id="8655129584991699539">يمكنك محو البيانات في إعدادات Chrome.</translation> <translation id="8659579665266920523">كيفية البحث باستخدام Chrome</translation> @@ -1434,7 +1433,6 @@ <translation id="867767487203716855">التحديث التالي</translation> <translation id="8683039184091909753">صورة</translation> <translation id="8683081248374354009">إعادة تحديد المجموعة</translation> -<translation id="8683526617475118045">المزايا التي ستحصل عليها</translation> <translation id="869891660844655955">تاريخ انتهاء الصلاحية</translation> <translation id="8699120352855309748">عدم اقتراح ترجمة لهذه اللغات</translation> <translation id="8712637175834984815">تم</translation> @@ -1518,7 +1516,6 @@ <translation id="9148126808321036104">تسجيل الدخول مرة أخرى</translation> <translation id="9158770349521403363">مشاركة المحتوى فقط</translation> <translation id="9159716826369098114">استعادة مجموعة تضم <ph name="TAB_COUNT" /> علامة تبويب كمجموعة علامات تبويب جديدة في الخلفية</translation> -<translation id="916446198114569890">عناوين URL التي تنتقل إليها يتم حفظها في حسابك على Google.</translation> <translation id="9169507124922466868">سجلّ التنقل مفتوح جزئيًا</translation> <translation id="9187955620966010988">تم ضبط التفاعل.</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{تمّ إجراء عملية التحقُّق قبل دقيقة واحدة.}zero{تمّ إجراء عملية التحقُّق قبل # دقيقة.}two{تمّ إجراء عملية التحقُّق قبل دقيقتَين.}few{تمّ إجراء عملية التحقُّق قبل # دقائق.}many{تمّ إجراء عملية التحقُّق قبل # دقيقة.}other{تمّ إجراء عملية التحقُّق قبل # دقيقة.}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_as.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_as.xtb index cb6d2ec..06358da 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_as.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_as.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">এই ছাইটসমূহ অনুবাদ কৰাৰ সুবিধা প্ৰদান নকৰিব</translation> <translation id="1145536944570833626">পূর্বে থকা ডেটা মচক।</translation> <translation id="1146678959555564648">VR দিয়ক</translation> -<translation id="114825011539563458">একেঠাইতে আটাইতকৈ গুৰুত্বপূৰ্ণ গোপনীয়তা আৰু সুৰক্ষা সম্পৰ্কীয় নিয়ন্ত্ৰণ</translation> <translation id="1149401351239820326">ম্যাদ উকলা মাহ</translation> <translation id="1150263420752757504"><ph name="APP_NAME" /> Chromeত খুলিব। অব্যাহত ৰাখি আপুনি <ph name="BEGIN_LINK1" />Googleৰ সেৱাৰ চৰ্তাৱলী<ph name="END_LINK1" /> আৰু <ph name="BEGIN_LINK2" />Google Chrome আৰু ChromeOSৰ সেৱাৰ অতিৰিক্ত চৰ্তাৱলী<ph name="END_LINK2" />ত সন্মতি দিয়ে।</translation> <translation id="1154704303112745282">পৃষ্ঠাখন অফলাইনত উপলব্ধ নহয়: <ph name="VIOLATED_URL" /></translation> @@ -170,6 +169,7 @@ <translation id="189358972401248634">অন্য ভাষা</translation> <translation id="1894023287452300670">ইয়াত মূল্য ট্ৰেক কৰক</translation> <translation id="1900260903084164610">অব্যাহত ৰাখি, আপুনি <ph name="BEGIN_TOS_LINK" />সেৱাৰ চৰ্তাৱলী<ph name="END_TOS_LINK" />ত সন্মত হৈছে।</translation> +<translation id="1904580727789512086">আপুনি চোৱা URLসমূহ আপোনাৰ Google একাউণ্টত ছেভ কৰা হৈছে</translation> <translation id="1910950723001426294">শ্বেয়াৰ কৰাৰ বিকল্পৰ সূচীখন বন্ধ কৰা হৈছে।</translation> <translation id="1918175104945982129">Assistantৰ কণ্ঠধ্বনিৰদ্বাৰা সন্ধানৰ সন্মতিৰ ইউআই অৰ্ধ উচ্চতাত খোল খাইছে</translation> <translation id="1919130412786645364">Chromeত ছাইন ইন কৰিব দিয়ক</translation> @@ -194,7 +194,6 @@ <translation id="2000419248597011803">আপোনাৰ ডিফ’ল্ট সন্ধান ইঞ্জিনলৈ ঠিকনা বাৰ আৰু সন্ধান বাকছৰ পৰা কিছুমান কুকি আৰু সন্ধান পঠিয়ায়</translation> <translation id="200114059308480249">Googleত কৰা সন্ধানত আশে-পাশে থকা পাঠ ব্যৱহাৰ কৰিবনে?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{#টা ফাইল}one{#টা ফাইল}other{#টা ফাইল}}</translation> -<translation id="2020309681647789787">আপোনাৰ আটাইবোৰ ছিংক কৰা ডিভাইচত আপোনাৰ ইতিহাস থাকিব যাতে আপুনি যি কৰি আছিল সেয়া অব্যাহত ৰাখিব পাৰে</translation> <translation id="2021896219286479412">সম্পূর্ণ স্ক্ৰীণ ছাইটৰ নিয়ন্ত্ৰণ</translation> <translation id="2038563949887743358">ডেস্কটপ ছাইট অনুৰোধ কৰা সুবিধাটো অন কৰক</translation> <translation id="204321170514947529"><ph name="APP_NAME" />ও Chromeত ডেটা আছে</translation> @@ -280,7 +279,6 @@ <translation id="2527779675047087889">ক্লিপব'ৰ্ডৰ সমল লুকুৱাওক</translation> <translation id="2532336938189706096">ৱেব ভিউ</translation> <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> টা সমল মচা হ’ল</translation> -<translation id="2534582914273493287">আপুনি চোৱা URLসমূহ Googleলৈ পঠিওৱা হয়</translation> <translation id="2536728043171574184">এই পৃষ্ঠাটোৰ এটা অফলাইন প্ৰতিলিপি চাই আছে</translation> <translation id="2546283357679194313">কুকি আৰু ছাইট ডেটা</translation> <translation id="2549516196460093976">আপুনি এই কিউআৰ ক’ডটো প্ৰদৰ্শন কৰি থকা কম্পিউটাৰটোত ছাইন ইন কৰিবলৈ এই টেবলেটটো ব্যৱহাৰ কৰিব পাৰে।</translation> @@ -372,7 +370,6 @@ <translation id="2996291259634659425">পাছফ্ৰেজ সৃষ্টি কৰক</translation> <translation id="2996809686854298943">URL আৱশ্যক</translation> <translation id="2997081575621687554">Googleৰ কোনো ছাইটে নিজৰ পৃষ্ঠাত থকা লিংকসমূহ গোপনে আগতীয়াকৈ ল’ড কৰিবলৈ অনুৰোধ কৰিলে Chromeএ কুকি অবিহনে Google ছাৰ্ভাৰৰ জৰিয়তে পৃষ্ঠাসমূহ এনক্ৰিপ্ট কৰি আগতীয়াকৈ ল’ড কৰে। ই আগতীয়াকৈ ল’ড কৰা ছাইটৰ পৰা আপোনাৰ পৰিচয় লুকুৱায়।</translation> -<translation id="3003733539450769656">বিপজ্জনক ঘটনাবোৰ ঘটাৰ আগতে সেইসমূহৰ বিষয়ে আপোনাক সকীয়নি দিয়ে</translation> <translation id="3006881078666935414">ব্যৱহাৰৰ কোনো ডেটা নাই</translation> <translation id="301080557829842765">গোপনীয়তাৰ নিৰ্দেশনা</translation> <translation id="3016635187733453316">নিশ্চিত হৈ লওক যে এই ডিভাইচটো ইণ্টাৰনেটৰ সৈতে সংযুক্ত হৈ আছে</translation> @@ -432,6 +429,7 @@ <translation id="3284510035090979597">আগতীয়া সহায়</translation> <translation id="3285080554353377245">Chrome কেনেকৈ ব্যৱহাৰ কৰিব লাগে সেই সম্পৰ্কে ভিডিঅ'</translation> <translation id="3288003805934695103">এই পৃষ্ঠাটো পুনৰ ল’ড কৰি থকা হৈছে</translation> +<translation id="3290249595466894471">নতুন ভাবুকিবোৰ বিচাৰি পোৱাত সহায় কৰিবলৈ পৃষ্ঠা, ডাউনল’ড, এক্সটেনশ্বনৰ কাৰ্যকলাপ আৰু ছিষ্টেমৰ তথ্যৰ এটা সৰু নমুনাও পঠিয়ায়</translation> <translation id="3297344142967351106">ধ্বনিৰ সহায়ত ডিভাইচৰ ব্যৱহাৰ</translation> <translation id="3303414029551471755">সমলখিনি ডাউনল’ড কৰিবলৈ আগবাঢ়িবনে?</translation> <translation id="3334729583274622784">ফাইলটোৰ এক্সটেনশ্বন সলনি কৰিবনে?</translation> @@ -637,7 +635,6 @@ <translation id="4558311620361989323">ৱেবপৃষ্ঠাৰ শ্বৰ্টকাট</translation> <translation id="4561730552726921821">সফলভাৱে পঞ্জীয়ন কৰা হ’ল</translation> <translation id="4561979708150884304">ইণ্টাৰনেট নাই</translation> -<translation id="4562008740775511591">Chromeএ যুক্তিসংগত ডিফ’ল্টসমূহ প্ৰদান কৰে, কিন্তু আপুনি আপোনাৰ ব্ৰাউজিঙৰ অভ্যাসৰ সৈতে খাপ খোৱাকৈ ইয়াক আপুনি কাষ্টমাইজ কৰিব পাৰে</translation> <translation id="4565377596337484307">পাছৱৰ্ড লুকুৱাওক</translation> <translation id="4572422548854449519">পৰিচালিত একাউণ্টত ছাইন ইন কৰক</translation> <translation id="4576892426230499203">সত্যাপনৰ অন্য এটা বিকল্প ব্যৱহাৰ কৰি চাওক</translation> @@ -919,7 +916,6 @@ <translation id="604996488070107836">কোনো অজ্ঞাত আসোঁৱাহৰ কাৰণে <ph name="FILE_NAME" />ক ডাউনল’ড কৰিব পৰা নগ’ল৷</translation> <translation id="605721222689873409">YY</translation> <translation id="6059830886158432458">আপোনাৰ কাহিনীসমূহ আৰু কাৰ্যকলাপ ইয়াত নিয়ন্ত্ৰণ কৰক</translation> -<translation id="6069177176307973611">গোপনীয়তা আৰু সুৰক্ষাৰ ছেটিং পৰ্যালোচনা কৰক</translation> <translation id="6070730414166672373">আপোনাৰ বেংকৰ সৈতে যোগাযোগ কৰি থকা হৈছে\u2026</translation> <translation id="6085886413119427067">এটা সুৰক্ষিত সংযোগৰ জৰিয়তে কেনেকৈ ৱেবছাইটসমূহৰ সৈতে সংযোগ কৰিব লাগে সেয়া নির্ধাৰণ কৰে</translation> <translation id="6091413777268123602">প্ৰাইভেচি ছেণ্ডবক্স ট্ৰায়েলৰ জৰিয়তে ছাইটসমূহে আপোনাৰ ডেটা কমকৈ ব্যৱহাৰ কৰি একে ব্ৰাউজিঙৰ অভিজ্ঞতা দিবলৈ সক্ষম। ইয়াৰ অৰ্থ হৈছে, আপোনাৰ বাবে অধিক গোপনীয়তা আৰু কম ক্ৰছ-ছাইট ট্ৰেকিং। পৰীক্ষাৰ বাবে সাজু হ’লে আমি নতুন ট্ৰায়েল যোগ দিম।</translation> @@ -1040,6 +1036,7 @@ <translation id="6641780377503683465"><ph name="INTEREST" /> আঁতৰাওক</translation> <translation id="6643016212128521049">মচক</translation> <translation id="6645629752388991326">এই ডিভাইচটো এটা সুৰক্ষা সম্পৰ্কীয় চাবি হিচাপে ব্যৱহাৰ কৰি কোনটো ডিভাইচে ছাইন ইন কৰিব পাৰে সেয়া নিয়ন্ত্ৰণ কৰক।</translation> +<translation id="6647441008198474441">আপুনি ইয়াৰ পাছত কি ছাইট চাব সেয়া অনুমান কৰিবলৈ আপুনি চোৱা URLসমূহ Googleলৈ পঠিওৱা হয়</translation> <translation id="6648459603387803038">আপোনাৰ প্ৰশাসকে দূৰৰ পৰাই আপোনাৰ ব্ৰাউজাৰৰ ছেটআপ সলনি কৰিব পাৰে। এই ডিভাইচটোত কৰা কাৰ্যকলাপ Chromeৰ বাহিৰৰ পৰাও পৰিচালনা কৰা হ’ব পাৰে।</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 আৰু অন্য <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />টা}one{<ph name="CONTACT_PREVIEW" />\u2026 আৰু অন্য <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />টা}other{<ph name="CONTACT_PREVIEW" />\u2026 আৰু অন্য <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />টা}}</translation> <translation id="6649642165559792194">প্ৰতিচ্ছবি পূৰ্বদৰ্শন কৰক <ph name="BEGIN_NEW" />নতুন<ph name="END_NEW" /></translation> @@ -1047,7 +1044,6 @@ <translation id="6659594942844771486">ব্ৰাউজাৰ টেব</translation> <translation id="666731172850799929"><ph name="APP_NAME" />ত খোলক</translation> <translation id="6671495933530132209">প্ৰতিচ্ছবি প্ৰতিলিপি কৰক</translation> -<translation id="6674044799624355221">নতুন ভাবুকিবোৰ বিচাৰি পোৱাত সহায় কৰিবলৈ পৃষ্ঠা, ডাউনল’ড, এক্সটেনশ্বনৰ কাৰ্যকলাপ আৰু ছিষ্টেমৰ তথ্যৰ এটা সৰু নমুনা পঠিয়ায়</translation> <translation id="6674571176963658787">ছিংক আৰম্ভ কৰিবলৈ আপোনাৰ পাছফ্ৰেজ দিয়ক</translation> <translation id="6676840375528380067">এই ডিভাইচটোৰ পৰা Chrome ডেটা মচিবনে?</translation> <translation id="6684809838922667136">Chromeক উন্নত কৰক</translation> @@ -1069,7 +1065,6 @@ <translation id="6802555630140434547">ৱিণ্ড’খন বন্ধ কৰা হ’ব</translation> <translation id="6811034713472274749">পৃষ্ঠাটো চাবলৈ সাজু</translation> <translation id="6813446258015311409">Chromeত ছাইন ইন কৰা হ’ল, খোলা আছে।</translation> -<translation id="6814033694018386318">আপুনি Googleৰ সৈতে কি শ্বেয়াৰ কৰে</translation> <translation id="6817747507826986771">এই পৃষ্ঠাখন ক্ষিপ্ৰভাৱে শ্বেয়াৰ কৰক। এই শ্বৰ্টকাটটো সম্পাদনা কৰিবলৈ, স্পৰ্শ কৰি ধৰি ৰাখক।</translation> <translation id="6819199143469632133">সমগ্ৰ ডিভাইচত আপোনাৰ Googleৰ বস্তুবোৰ পাবলৈ ছাইন ইন কৰক</translation> <translation id="6820686453637990663">CVC</translation> @@ -1164,6 +1159,7 @@ <translation id="7352939065658542140">ভিডিঅ’</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{বাছনি কৰা ১টা বস্তু শ্বেয়াৰ কৰক}one{বাছনি কৰা #টা বস্তু শ্বেয়াৰ কৰক}other{বাছনি কৰা #টা বস্তু শ্বেয়াৰ কৰক}}</translation> <translation id="7359002509206457351">পৰিশোধৰ পদ্ধতি এক্সেছ কৰক</translation> +<translation id="7363349185727752629">আপোনাৰ গোপনীয়তাৰ বাছনিসমূহৰ এক নিৰ্দেশনা</translation> <translation id="7375125077091615385">ধৰণ:</translation> <translation id="7376560087009844242">কোনো পৃষ্ঠাৰ অধিক পাঠ অন্তৰ্ভুক্ত কৰি, সন্ধান কৰিবলৈ স্পৰ্শ কৰক সুবিধাটো ব্যৱহাৰ কৰোঁতে আপুনি হয়তো উন্নত ফলাফল দেখা পাব পাৰে। এইটো সলনি কৰিবলৈ আপুনি যিকোনো সময়তে <ph name="BEGIN_LINK" />ছেটিঙ<ph name="END_LINK" /> লৈ যাব পাৰে।</translation> <translation id="7379900596734708416">ছাইটৰ বাবে গাঢ় ৰঙৰ থীম উপলব্ধ</translation> @@ -1263,6 +1259,7 @@ <translation id="7876243839304621966">সকলো আঁতৰাওক</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{আপোনাৰ <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> খন নপঢ়া পৃষ্ঠা আছে}one{আপোনাৰ <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> খন নপঢ়া পৃষ্ঠা আছে}other{আপোনাৰ <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> খন নপঢ়া পৃষ্ঠা আছে}}</translation> <translation id="7886917304091689118">Chromeত চলি আছে</translation> +<translation id="7887174313503389866">গোপনীয়তা আৰু সুৰক্ষা সম্পৰ্কীয় মুখ্য নিয়ন্ত্ৰণসমূহৰ বিষয়ে এক ধাৰণা লওক। অধিক বিকল্পৰ বাবে, ব্যক্তিগত ছেটিঙলৈ যাওক।</translation> <translation id="7887334752153342268">নকল</translation> <translation id="789763218334337857">Chrome কেনেকৈ ব্যৱহাৰ কৰিব লাগে</translation> <translation id="7903184275147100332">এইটোৰ বাবে কিছু সময় লাগিব পাৰে</translation> @@ -1376,6 +1373,7 @@ <translation id="8445448999790540984">পাছৱর্ড ৰপ্তানি কৰিব নোৱাৰি</translation> <translation id="8446884382197647889">অধিক জানক</translation> <translation id="8453310803815879010">Dino গে’ম আৰম্ভ কৰক</translation> +<translation id="8460448946170646641">গোপনীয়তা আৰু সুৰক্ষা সম্পৰ্কীয় মুখ্য নিয়ন্ত্ৰণসমূহ পৰ্যালোচনা কৰক</translation> <translation id="8461694314515752532">আপোনাৰ নিজৰ ছিংক পাছফ্ৰেজৰ সৈতে ছিংক কৰা ডেটা এনক্ৰিপ্ট কৰক।</translation> <translation id="8466613982764129868">নিশ্চিত হৈ লওক যে <ph name="TARGET_DEVICE_NAME" /> ইণ্টাৰনেটৰ সৈতে সংযুক্ত হৈ আছে</translation> <translation id="8473863474539038330">ঠিকনা আৰু অধিক</translation> @@ -1421,6 +1419,7 @@ <translation id="8636825310635137004">আপোনাৰ অন্য ডিভাইচৰ টেবসমূহ পাবলৈ ছিংক অন কৰক।</translation> <translation id="8641930654639604085">প্ৰাপ্তবয়স্কসকলে চাব পৰা ছাইটসমূহ অৱৰোধ কৰিবলৈ চেষ্টা কৰে</translation> <translation id="864544049772947936">ৱিণ্ড’ পৰিচালনা কৰক (<ph name="INSTANCE_COUNTS" /> টা)</translation> +<translation id="8645920082661222035">বিপজ্জনক ঘটনাবোৰৰ সম্পর্কে অনুমান কৰে আৰু সেইবোৰ ঘটাৰ পূর্বে আপোনাক সকীয়নি দিয়ে</translation> <translation id="8646467750715887511">আপুনি পৃষ্ঠাসমূহ খোলাৰ পাছতহে সেইসমূহ ল’ড হয়।</translation> <translation id="8655129584991699539">আাপুনি Chrome ছেটিংসমূহত এই ডেটা মচিব পাৰে</translation> <translation id="8659579665266920523">Chromeৰ জৰিয়তে কেনেকৈ সন্ধান কৰিব লাগে</translation> @@ -1433,7 +1432,6 @@ <translation id="867767487203716855">পৰৱৰ্তী আপডে’ট</translation> <translation id="8683039184091909753">প্ৰতিচ্ছবি</translation> <translation id="8683081248374354009">গোটটো ৰিছেট কৰক</translation> -<translation id="8683526617475118045">আপোনাৰ লাভ</translation> <translation id="869891660844655955">ম্যাদ উকলাৰ তাৰিখ</translation> <translation id="8699120352855309748">এই ভাষাসমূহ অনুবাদ কৰাৰ সুবিধা প্ৰদান নকৰিব</translation> <translation id="8712637175834984815">বুজি পালোঁ</translation> @@ -1517,7 +1515,6 @@ <translation id="9148126808321036104">আকৌ ছাইন ইন কৰক</translation> <translation id="9158770349521403363">কেৱল সমল শ্বেয়াৰ কৰক</translation> <translation id="9159716826369098114"><ph name="TAB_COUNT" /> টা টেব থকা টেবৰ গোটক এটা নতুন নেপথ্যৰ টেবৰ গোট হিচাপে পুনৰুদ্ধাৰ কৰক।</translation> -<translation id="916446198114569890">আপুনি চোৱা URLসমূহ আপোনাৰ Google একাউণ্টত ছেভ কৰা হৈছে</translation> <translation id="9169507124922466868">নেভিগেশ্বন ইতিহাস আধা খোলা আছে</translation> <translation id="9187955620966010988">প্ৰতিক্ৰিয়া মিলোৱা হৈছে</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{১ মিনিটৰ আগত পৰীক্ষা কৰা হৈছে}one{# মিনিটৰ আগত পৰীক্ষা কৰা হৈছে}other{# মিনিটৰ আগত পৰীক্ষা কৰা হৈছে}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_az.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_az.xtb index 3b80abb..85fafce 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_az.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_az.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">Bu saytların tərcümə edilməsini təklif etməyin</translation> <translation id="1145536944570833626">Mövcud datanı silin.</translation> <translation id="1146678959555564648">VR daxil edin</translation> -<translation id="114825011539563458">Ən vacib məxfilik və təhlükəsizlik nizamlayıcılarını bir yerdə</translation> <translation id="1149401351239820326">Bitmə ayı</translation> <translation id="1150263420752757504"><ph name="APP_NAME" /> Chrome'da açılacaq. Davam etməklə, <ph name="BEGIN_LINK1" />Google Xidmət Şərtləri<ph name="END_LINK1" /> və <ph name="BEGIN_LINK2" />Google Chrome və ChromeOS Əlavə Xidmət Şərtləri<ph name="END_LINK2" /> ilə razılaşırsınız.</translation> <translation id="1154704303112745282">Səhifə oflayn əlçatan deyil: <ph name="VIOLATED_URL" /></translation> @@ -170,6 +169,7 @@ <translation id="189358972401248634">Digər dillərdə</translation> <translation id="1894023287452300670">Qiyməti burada izləyin</translation> <translation id="1900260903084164610">Davam etməklə, <ph name="BEGIN_TOS_LINK" />Xidmət Şərtləri<ph name="END_TOS_LINK" /> ilə razılaşırsınız.</translation> +<translation id="1904580727789512086">Ziyarət etdiyiniz keçidlər Google Hesabınızda saxlanılır</translation> <translation id="1910950723001426294">Paylaşım seçimlərinin siyahısı bağlıdır.</translation> <translation id="1918175104945982129">Assistentin səsli axtarış razılıq UI-si yarım hündürlükdə açılıb</translation> <translation id="1919130412786645364">Chrome girişinə icazə verin</translation> @@ -194,7 +194,6 @@ <translation id="2000419248597011803">Ünvan paneli və axtarış qutusundakı bəzi kuki və axtarışları defolt axtarış mühərrikinizə göndərin</translation> <translation id="200114059308480249">Google axtarışlarına ətrafdakı mətn daxil edilsin?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# Fayl}other{# Fayl}}</translation> -<translation id="2020309681647789787">Bütün sinxronlaşdırılmış cihazlarınızda tarixçəniz olacaq, beləliklə, gördüyünüz işə davam edə bilərsiniz</translation> <translation id="2021896219286479412">Tam ekran sayt nəzarətləri</translation> <translation id="2038563949887743358">Əsas Versiya Sorğusunu aktiv edin</translation> <translation id="204321170514947529">Həmçinin, <ph name="APP_NAME" /> tətbiqinin Chrome'da datası var</translation> @@ -280,7 +279,6 @@ <translation id="2527779675047087889">Mübadilə buferindəki kontenti gizlədin</translation> <translation id="2532336938189706096">Veb Görünüşü</translation> <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> element silindi</translation> -<translation id="2534582914273493287">Ziyarət etdiyiniz keçidlər Google'a göndərilir</translation> <translation id="2536728043171574184">Bu səhifənin oflayn nüsxəsinə baxılır</translation> <translation id="2546283357679194313">Kukilər və sayt datası</translation> <translation id="2549516196460093976">Bu QR kodunu göstərən kompüterə daxil olmaq üçün bu planşetdən istifadə edə bilərsiniz.</translation> @@ -372,7 +370,6 @@ <translation id="2996291259634659425">Parol söz yaradın</translation> <translation id="2996809686854298943">URL tələb olunur</translation> <translation id="2997081575621687554">Google saytı öz səhifəsindəki keçidləri məxfi olaraq əvvəlcədən yükləməyi tələb etdikdə, Chrome kukilər olmadan Google serverləri vasitəsilə səhifələri şifrələyir və əvvəlcədən yükləyir. Bu, kimliyinizi əvvəlcədən yüklənmiş saytdan gizlədir.</translation> -<translation id="3003733539450769656">Təhlükəli hadisələr baş verməzdən əvvəl bu barədə sizə xəbərdarlıq edir</translation> <translation id="3006881078666935414">Data istifadəsi yoxdur</translation> <translation id="301080557829842765">Məxfilik bələdçisi</translation> <translation id="3016635187733453316">Bu cihazın internetə qoşulduğuna əmin olun</translation> @@ -432,6 +429,7 @@ <translation id="3284510035090979597">Proaktiv Kömək</translation> <translation id="3285080554353377245">Chrome'dan istifadə haqqında videolar</translation> <translation id="3288003805934695103">Səhifə təkrar yüklənir</translation> +<translation id="3290249595466894471">Həmçinin yeni təhlükələri aşkarlamaqda kömək məqsədilə səhifə, endirmə, artırma fəaliyyətindən ibarət kiçik nümunə göndərir</translation> <translation id="3297344142967351106">Səsli yardım</translation> <translation id="3303414029551471755">Kontentin endirilməsinə davam etmək istəyirsiniz?</translation> <translation id="3334729583274622784">Fayl artırması dəyişdirilsin?</translation> @@ -637,7 +635,6 @@ <translation id="4558311620361989323">Veb səhifə qısayolları</translation> <translation id="4561730552726921821">Qeydiyyat uğurlu oldu</translation> <translation id="4561979708150884304">Bağlantı yoxdur</translation> -<translation id="4562008740775511591">Chrome ağlabatan defoltlar təmin edir, ancaq axtarış vərdişinizə uyğun olması üçün onu fərdiləşdirə bilərsiniz</translation> <translation id="4565377596337484307">Parolu gizlədin</translation> <translation id="4572422548854449519">İdarə olunan hesablara daxil olun</translation> <translation id="4576892426230499203">Digər doğrulama seçimini sınayın</translation> @@ -919,7 +916,6 @@ <translation id="604996488070107836">Naməlum xəta səbəbindən <ph name="FILE_NAME" /> faylı endirilmədi.</translation> <translation id="605721222689873409">İİ</translation> <translation id="6059830886158432458">Hekayələrinizi və fəaliyyətlərinizi burada idarə edin</translation> -<translation id="6069177176307973611">Məxfilik və təhlükəsizlik ayarlarını nəzərdən keçirin</translation> <translation id="6070730414166672373">Bankınız əlaqə saxlanılır\u2026</translation> <translation id="6085886413119427067">Güvənli bağlantı vasitəsilə vebsaytlara necə qoşulmağı müəyyən edir</translation> <translation id="6091413777268123602">Məxfilik Sendboksu sınaqları ilə saytlar datanızdan daha az istifadə etməklə eyni baxış təcrübəsi təqdim edə bilər. Bu, məxfiliyi artırır və saytlararası izləməni azaldır. Hazır olduqda yeni sınaqlar əlavə edəcəyik.</translation> @@ -1038,6 +1034,7 @@ <translation id="6641780377503683465"><ph name="INTEREST" /> silin</translation> <translation id="6643016212128521049">Silin</translation> <translation id="6645629752388991326">Bu cihazı təhlükəsizlik açarı kimi istifadə etməklə hansı cihazların daxil ola biləcəyinə nəzarət edin.</translation> +<translation id="6647441008198474441">Ziyarət etdiyiniz keçidlər növbəti dəfə hansı saytlara daxil ola biləcəyinizi proqnozlaşdırmaq üçün Google'a göndərilir</translation> <translation id="6648459603387803038">Administrator brauzer quraşdırmasını uzaqdan dəyişə bilər. Bu cihazdakı fəaliyyət Chrome'dan kənarda da idarə edilə bilər.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 və <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> digəri}other{<ph name="CONTACT_PREVIEW" />\u2026 və <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> digəri}}</translation> <translation id="6649642165559792194">Önizləmə şəkli <ph name="BEGIN_NEW" />Yeni<ph name="END_NEW" /></translation> @@ -1045,7 +1042,6 @@ <translation id="6659594942844771486">Səkmə</translation> <translation id="666731172850799929"><ph name="APP_NAME" /> tətbiqində açın</translation> <translation id="6671495933530132209">Şəkli kopyalayın</translation> -<translation id="6674044799624355221">Yeni təhlükələri aşkarlamaqda kömək məqsədilə səhifə, endirmə, artırma fəaliyyətindən ibarət kiçik nümunə göndərir</translation> <translation id="6674571176963658787">Sinxronizasiyanı başlatmaq üçün parol ifadənizi daxil edin</translation> <translation id="6676840375528380067">Chrome datası bu cihazdan silinsin?</translation> <translation id="6684809838922667136">Chrome'u yaxşılaşdırın</translation> @@ -1067,7 +1063,6 @@ <translation id="6802555630140434547">Bu pəncərə bağlanacaq</translation> <translation id="6811034713472274749">Səhifəyə baxa bilərsiniz</translation> <translation id="6813446258015311409">Chrome'a giriş açılıb.</translation> -<translation id="6814033694018386318">Google ilə paylaşdıqlarınız</translation> <translation id="6817747507826986771">Bu səhifəni cəld paylaşın. Bu qısayolu redaktə etmək üçün toxunub saxlayın.</translation> <translation id="6819199143469632133">Cihazlarınızda Google komponentlərini əldə etmək üçün daxil olun</translation> <translation id="6820686453637990663">CVC</translation> @@ -1162,6 +1157,7 @@ <translation id="7352939065658542140">VİDEO</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{Seçilmiş 1 elementi paylaşın}other{Seçilmiş # elementi paylaşın}}</translation> <translation id="7359002509206457351">Ödəniş üsullarına daxil olun</translation> +<translation id="7363349185727752629">Məxfilik seçimləriniz üçün bələdçi</translation> <translation id="7375125077091615385">Növ:</translation> <translation id="7376560087009844242">Digər səhifə mətnini daxil etməklə "Axtarmaq üçün toxunun" funksiyasından istifadə etdiyiniz zaman daha yaxşı nəticələr görə bilərsiniz Bunu istənilən vaxt <ph name="BEGIN_LINK" />ayarlarda<ph name="END_LINK" /> dəyişə bilərsiniz.</translation> <translation id="7379900596734708416">Saytlar üçün tünd tema əlçatandır</translation> @@ -1261,6 +1257,7 @@ <translation id="7876243839304621966">Hamısını silin</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{<ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> oxunmamış səhifəniz var}other{<ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> oxunmamış səhifəniz var}}</translation> <translation id="7886917304091689118">Chrome'da istifadə edilir</translation> +<translation id="7887174313503389866">Əsas məxfilik və təhlükəsizlik nəzarətlərinə bələdçi ilə baxış keçirin. Digər seçimlər üçün fərdi ayarlara keçin.</translation> <translation id="7887334752153342268">Dublikat yaradın</translation> <translation id="789763218334337857">Chrome'dan necə istifadə etməli</translation> <translation id="7903184275147100332">Bu, bir dəqiqə çəkə bilər</translation> @@ -1374,6 +1371,7 @@ <translation id="8445448999790540984">Parolları eksport etmək alınmadı</translation> <translation id="8446884382197647889">Ətraflı Məlumat</translation> <translation id="8453310803815879010">Dinozavr oyununu başladın</translation> +<translation id="8460448946170646641">Əsas məxfilik və təhlükəsizlik nəzarətlərini nəzərdən keçirin</translation> <translation id="8461694314515752532">Sinxronizasiya parolunuz ilə sinxronizasiya edilmiş datanı şifrələyin</translation> <translation id="8466613982764129868"><ph name="TARGET_DEVICE_NAME" /> cihazının internetə qoşulduğuna əmin olun</translation> <translation id="8473863474539038330">Ünvanlar və s.</translation> @@ -1419,6 +1417,7 @@ <translation id="8636825310635137004">Panelləri digər cihazlarınızdan əldə etmək üçün sinxronizasiyanı aktiv edin.</translation> <translation id="8641930654639604085">Böyüklər üçün olan saytları blok edin</translation> <translation id="864544049772947936">Pəncərələri idarə edin (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">Təhlükəli hadisələr baş vermədən əvvəl onları proqnozlaşdırır və sizə xəbərdarlıq edir</translation> <translation id="8646467750715887511">Səhifələr yalnız siz onları açdıqdan sonra yüklənir.</translation> <translation id="8655129584991699539">Datanı Chrome Ayarlarından silə bilərsiniz</translation> <translation id="8659579665266920523">Chrome ilə necə axtarış etməli</translation> @@ -1431,7 +1430,6 @@ <translation id="867767487203716855">Növbəti güncəlləmə</translation> <translation id="8683039184091909753">şəkil</translation> <translation id="8683081248374354009">Qrupu sıfırlayın</translation> -<translation id="8683526617475118045">Nə əldə edirsiniz</translation> <translation id="869891660844655955">Bitmə tarixi</translation> <translation id="8699120352855309748">Bu dillərin tərcümə edilməsini təklif etməyin</translation> <translation id="8712637175834984815">Anladım</translation> @@ -1515,7 +1513,6 @@ <translation id="9148126808321036104">Yenidən daxil olun</translation> <translation id="9158770349521403363">Yalnız məzmun paylaşın</translation> <translation id="9159716826369098114"><ph name="TAB_COUNT" /> tabdan ibarət tab qrupunu yeni arxa fon tab qrupu olaraq bərpa edin.</translation> -<translation id="916446198114569890">Ziyarət etdiyiniz keçidlər Google hesabınızda saxlanılır</translation> <translation id="9169507124922466868">Naviqasiya tarixçəsi yarı açıqdır</translation> <translation id="9187955620966010988">Reaksiya tənzimlənib</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{1 dəqiqə əvvəl yoxlanılıb}other{# dəqiqə əvvəl yoxlanılıb}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_be.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_be.xtb index 4c9a532..9cc6e68f 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_be.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_be.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">Не прапаноўваць перакладаць гэтыя сайты</translation> <translation id="1145536944570833626">Выдаліць існуючыя даныя.</translation> <translation id="1146678959555564648">Увайсці ў VR</translation> -<translation id="114825011539563458">Самая важная інфармацыя аб кіраванні прыватнасцю і бяспекай – на адной старонцы</translation> <translation id="1149401351239820326">Месяц заканчэння тэрміну дзеяння</translation> <translation id="1150263420752757504">Праграма "<ph name="APP_NAME" />" адкрыецца ў Chrome. Працягваючы, вы згаджаецеся з <ph name="BEGIN_LINK1" />Умовамі выкарыстання Google<ph name="END_LINK1" /> і <ph name="BEGIN_LINK2" />Дадатковымі ўмовамі выкарыстання Google Chrome і Chrome OS<ph name="END_LINK2" />.</translation> <translation id="1154704303112745282">Старонка недаступная па-за сеткай: <ph name="VIOLATED_URL" /></translation> @@ -108,6 +107,7 @@ <translation id="1488775391433859242">Вы можаце выкарыстоўваць гэты тэлефон, каб уваходзіць ва ўліковы запіс на камп'ютары, на якім паказваецца гэты QR-код.</translation> <translation id="1492417797159476138">Вы ўжо захавалі гэта імя карыстальніка для гэтага сайта</translation> <translation id="1493287004536771723">Вы падпісаны на сайт "<ph name="SITE_NAME" />"</translation> +<translation id="1502010315804028179">Каб кіраваць паролямі, абнавіце сэрвісы Google Play</translation> <translation id="1506061864768559482">Пошукавая сістэма</translation> <translation id="1513352483775369820">Закладкі і гісторыя вэб-пошуку</translation> <translation id="1513814250881909472">Каб укладкі з іншых прылад сталі даступнымі, уключыце сінхранізацыю</translation> @@ -169,6 +169,7 @@ <translation id="189358972401248634">Іншыя мовы</translation> <translation id="1894023287452300670">Вы можаце сачыць за цаной тут</translation> <translation id="1900260903084164610">Працягваючы, вы прымаеце <ph name="BEGIN_TOS_LINK" />Умовы выкарыстання<ph name="END_TOS_LINK" />.</translation> +<translation id="1904580727789512086">URL-адрасы, якія вы наведвалі, захоўваюцца ва Уліковы запіс Google</translation> <translation id="1910950723001426294">Спіс варыянтаў абагульвання закрыты.</translation> <translation id="1918175104945982129">Дыялогавае акно для дачы згоды на выкарыстанне Памочніка для галасавога пошуку адкрыта на палову экрана</translation> <translation id="1919130412786645364">Дазволіць уваход ва ўліковы запіс Chrome</translation> @@ -193,7 +194,6 @@ <translation id="2000419248597011803">Адпраўляе вашай стандартнай пошукавай сістэме некаторыя файлы cookie, а таксама пошукавыя запыты, уведзеныя ў адрасным радку і полі пошуку</translation> <translation id="200114059308480249">Дадаваць кантэкст у пошукавыя запыты Google?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# файл}one{# файл}few{# файлы}many{# файлаў}other{# файла}}</translation> -<translation id="2020309681647789787">Ваша гісторыя будзе захоўвацца на ўсіх сінхранізаваных прыладах, каб вы заўжды маглі працягнуць рабіць на любой з гэтых прылад тое, што перад гэтым рабілі на іншай.</translation> <translation id="2021896219286479412">Кіраванне сайтам на ўвесь экран</translation> <translation id="2038563949887743358">Уключыць запытванне версіі для настольнага камп'ютара</translation> <translation id="204321170514947529">Праграма "<ph name="APP_NAME" />" таксама мае змесціва ў Chrome</translation> @@ -279,7 +279,6 @@ <translation id="2527779675047087889">Схаваць змесціва буфера абмену</translation> <translation id="2532336938189706096">Прагляд вэб-змесціва</translation> <translation id="2534155362429831547">Выдалена элементаў: <ph name="NUMBER_OF_ITEMS" /></translation> -<translation id="2534582914273493287">URL-адрасы старонак, якія вы наведваеце, адпраўляюцца ў Google.</translation> <translation id="2536728043171574184">Вы праглядаеце пазасеткавую копію гэтай старонкі</translation> <translation id="2546283357679194313">Файлы сookie і даныя сайтаў</translation> <translation id="2549516196460093976">Вы можаце выкарыстоўваць гэты планшэт, каб уваходзіць ва ўліковы запіс на камп'ютары, на якім паказваецца гэты QR-код.</translation> @@ -371,7 +370,6 @@ <translation id="2996291259634659425">Стварыць фразу-пароль</translation> <translation id="2996809686854298943">Патрабуецца URL-адрас</translation> <translation id="2997081575621687554">Калі сайт Google па спасылках на ім запытвае перадзагрузку старонак у прыватным рэжыме, Chrome шыфруе і перадзагружае старонкі праз серверы Google, не выкарыстоўваючы файлы cookie. Дзякуючы гэтаму перадзагружаны сайт не атрымлівае звестак пра вашу асобу.</translation> -<translation id="3003733539450769656">Папярэджвае вас пра небяспечныя падзеі да таго, як яны здараюцца</translation> <translation id="3006881078666935414">Няма даных аб выкарыстанні</translation> <translation id="301080557829842765">Дапаможнік па прыватнасці</translation> <translation id="3016635187733453316">Праверце, ці падключана прылада да інтэрнэту</translation> @@ -431,6 +429,7 @@ <translation id="3284510035090979597">Актыўная дапамога</translation> <translation id="3285080554353377245">Відэа пра выкарыстанне Chrome</translation> <translation id="3288003805934695103">Перазагрузка старонкі</translation> +<translation id="3290249595466894471">Таксама адпраўляе невялікія прыклады старонак, спамповак, дзеянняў пашырэнняў і інфармацыі пра сістэму, каб дапамагчы выяўляць новыя пагрозы</translation> <translation id="3297344142967351106">Галасавая дапамога</translation> <translation id="3303414029551471755">Перайсці да спампоўкі змесціва?</translation> <translation id="3334729583274622784">Змяніць пашырэнне файла?</translation> @@ -636,7 +635,6 @@ <translation id="4558311620361989323">Ярлыкі вэб-старонак</translation> <translation id="4561730552726921821">Рэгістрацыя завершана</translation> <translation id="4561979708150884304">Няма падключэння</translation> -<translation id="4562008740775511591">У браўзера Chrome прадуманыя стандартныя налады, але гэтыя налады можна змяніць, каб браўзер яшчэ лепш падыходзіў для вашых звычайных дзеянняў у інтэрнэце</translation> <translation id="4565377596337484307">Схаваць пароль</translation> <translation id="4572422548854449519">Увайдзіце ва ўліковы запіс пад кіраваннем</translation> <translation id="4576892426230499203">Паспрабуйце іншы спосаб спраўджання</translation> @@ -918,7 +916,6 @@ <translation id="604996488070107836">Не ўдалося спампаваць файл "<ph name="FILE_NAME" />" з-за невядомай памылкі.</translation> <translation id="605721222689873409">ГГ</translation> <translation id="6059830886158432458">Кіруйце паказам артыкулаў і гісторыяй дзеянняў тут</translation> -<translation id="6069177176307973611">Праглядзець налады прыватнасці і бяспекі</translation> <translation id="6070730414166672373">Звяртаемся ў ваш банк\u2026</translation> <translation id="6085886413119427067">Вызначае, як устанаўліваць бяспечнае падключэнне да вэб-сайтаў</translation> <translation id="6091413777268123602">Пробныя функцыі Privacy Sandbox дазваляюць сайтам працаваць так, як і раней, але пры гэтым выкарыстоўваць менш вашых даных. Гэта азначае больш прыватнасці для вас і менш адсочвання паводзін на розных сайтах. Мы будзем дадаваць новыя пробныя функцыі па меры іх гатоўнасці да тэсціравання.</translation> @@ -1039,6 +1036,7 @@ <translation id="6641780377503683465">Выдаліць: <ph name="INTEREST" /></translation> <translation id="6643016212128521049">Ачысціць</translation> <translation id="6645629752388991326">Выкарыстоўвайце гэту прыладу ў якасці ключа бяспекі, каб кантраляваць, якім прыладам можна ўваходзіць ва ўліковы запіс.</translation> +<translation id="6647441008198474441">URL-адрасы старонак, якія вы наведваеце, адпраўляюцца ў Google, каб прадказваць, якія сайты вы можаце наведаць далей</translation> <translation id="6648459603387803038">Адміністратар можа аддалена змяняць налады браўзера. Сама прылада таксама можа знаходзіцца пад знешнім кіраваннем.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 і яшчэ <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}one{<ph name="CONTACT_PREVIEW" />\u2026 і яшчэ <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}few{<ph name="CONTACT_PREVIEW" />\u2026 і яшчэ <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}many{<ph name="CONTACT_PREVIEW" />\u2026 і яшчэ <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}other{<ph name="CONTACT_PREVIEW" />\u2026 і яшчэ <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}}</translation> <translation id="6649642165559792194">Перадпрагляд відарыса <ph name="BEGIN_NEW" />Навінка<ph name="END_NEW" /></translation> @@ -1046,7 +1044,6 @@ <translation id="6659594942844771486">Укладка</translation> <translation id="666731172850799929">Адкрыць у праграме <ph name="APP_NAME" /></translation> <translation id="6671495933530132209">Скапіраваць відарыс</translation> -<translation id="6674044799624355221">Адпраўляе невялікія прыклады старонак, спамповак, дзеянняў пашырэнняў і інфармацыі пра сістэму, каб дапамагчы выяўляць новыя пагрозы</translation> <translation id="6674571176963658787">Каб пачаць сінхранізацыю, увядзіце фразу-пароль</translation> <translation id="6676840375528380067">Выдаліць даныя Chrome з гэтай прылады?</translation> <translation id="6684809838922667136">Зрабіце браўзер Chrome лепшым</translation> @@ -1068,7 +1065,6 @@ <translation id="6802555630140434547">Акно будзе закрыта</translation> <translation id="6811034713472274749">Старонка гатовая да прагляду</translation> <translation id="6813446258015311409">Аркуш "Увайсці ў Chrome" адкрыты.</translation> -<translation id="6814033694018386318">Даныя, якія абагульваюцца з Google</translation> <translation id="6817747507826986771">Хуткае абагульванне гэтай старонкі. Каб змяніць функцыю гэтай кнопкі, націсніце на яе і ўтрымлівайце.</translation> <translation id="6819199143469632133">Увайдзіце ва ўліковы запіс, каб карыстацца прадуктамі Google на некалькіх прыладах</translation> <translation id="6820686453637990663">CVC</translation> @@ -1163,6 +1159,7 @@ <translation id="7352939065658542140">ВІДЭА</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{Абагуліць 1 выбраны элемент}one{Абагуліць # выбраны элемент}few{Абагуліць # выбраныя элементы}many{Абагуліць # выбраных элементаў}other{Абагуліць # выбранага элемента}}</translation> <translation id="7359002509206457351">Доступ да спосабаў аплаты</translation> +<translation id="7363349185727752629">Дапаможнік па параметрах прыватнасці</translation> <translation id="7375125077091615385">Тып:</translation> <translation id="7376560087009844242">Дадаючы больш тэксту са старонкі, пры выкарыстанні функцыі "Пошук дотыкам" можна атрымліваць лепшыя вынікі. Змяніць параметры заўсёды можна ў <ph name="BEGIN_LINK" />наладах<ph name="END_LINK" />.</translation> <translation id="7379900596734708416">Цёмная тэма для сайтаў даступная</translation> @@ -1262,6 +1259,7 @@ <translation id="7876243839304621966">Выдаліць усе</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{У вас <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> непрачытаная старонка}one{У вас <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> непрачытаная старонка}few{У вас <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> непрачытаныя старонкі}many{У вас <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> непрачытаных старонак}other{У вас <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> непрачытанай старонкі}}</translation> <translation id="7886917304091689118">Выконваецца ў браўзеры Chrome</translation> +<translation id="7887174313503389866">Даведайцеся пра ключавыя налады бяспекі і прыватнасці. Больш інфармацыі вы можаце атрымаць, знаёмячыся з кожнай наладай асобна.</translation> <translation id="7887334752153342268">Дубліраваць</translation> <translation id="789763218334337857">Як выкарыстоўваць Chrome</translation> <translation id="7903184275147100332">Пачакайце</translation> @@ -1375,6 +1373,7 @@ <translation id="8445448999790540984">Не ўдалося экспартаваць паролі</translation> <translation id="8446884382197647889">Даведацца больш</translation> <translation id="8453310803815879010">Пачаць гульню з дыназаўрам</translation> +<translation id="8460448946170646641">Праверка ключавых налад бяспекі і прыватнасці</translation> <translation id="8461694314515752532">Зашыфраваць сінхранізаваныя даныя з дапамогай фразы-пароля.</translation> <translation id="8466613982764129868">Праверце, ці прылада "<ph name="TARGET_DEVICE_NAME" />" падключана да інтэрнэту</translation> <translation id="8473863474539038330">Адрасы і іншае</translation> @@ -1420,6 +1419,7 @@ <translation id="8636825310635137004">Каб глядзець укладкі са сваіх іншых прылад, уключыце сінхранізацыю.</translation> <translation id="8641930654639604085">Спрабаваць блакіраваць сайты для дарослых</translation> <translation id="864544049772947936">Кіраваць вокнамі (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">Прадказвае небяспечныя падзеі і папярэджвае пра іх да таго, як яны здараюцца</translation> <translation id="8646467750715887511">Старонкі загружаюцца толькі пасля таго, як вы іх адкрыеце.</translation> <translation id="8655129584991699539">Даныя можна выдаліць у наладах Chrome</translation> <translation id="8659579665266920523">Як выконваць пошук праз Chrome</translation> @@ -1432,7 +1432,6 @@ <translation id="867767487203716855">Наступнае абнаўленне</translation> <translation id="8683039184091909753">відарыс</translation> <translation id="8683081248374354009">Скінуць параметры групы</translation> -<translation id="8683526617475118045">Якія перавагі дае гэта функцыя</translation> <translation id="869891660844655955">Тэрмін дзеяння</translation> <translation id="8699120352855309748">Не прапаноўваць перакладаць з гэтых моў</translation> <translation id="8712637175834984815">Зразумела</translation> @@ -1516,7 +1515,6 @@ <translation id="9148126808321036104">Увайсці зноў</translation> <translation id="9158770349521403363">Абагуліць толькі змесціва</translation> <translation id="9159716826369098114">Аднавіць групу з некалькіх (<ph name="TAB_COUNT" />) укладак як новую фонавую групу ўкладак.</translation> -<translation id="916446198114569890">URL-адрасы, якія вы наведвалі, захоўваюцца ў ваш Уліковы запіс Google.</translation> <translation id="9169507124922466868">Гісторыя навігацыі адкрыта напалову</translation> <translation id="9187955620966010988">Рэакцыя адкарэкціравана</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{Праверка праводзілася хвіліну таму}one{Праверка праводзілася # хвіліну таму}few{Праверка праводзілася # хвіліны таму}many{Праверка праводзілася # хвілін таму}other{Праверка праводзілася # хвіліны таму}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_bg.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_bg.xtb index e5abeca..2465b1d7 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_bg.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_bg.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">Да не се предлага превод на тези сайтове</translation> <translation id="1145536944570833626">Изтриване на съществуващите данни.</translation> <translation id="1146678959555564648">Вход във VR</translation> -<translation id="114825011539563458">Най-важните контроли за поверителност и сигурност на едно място</translation> <translation id="1149401351239820326">Месец на валидност</translation> <translation id="1150263420752757504"><ph name="APP_NAME" /> ще се отвори в Chrome. С продължаването си приемате <ph name="BEGIN_LINK1" />Общите условия на Google<ph name="END_LINK1" /> и <ph name="BEGIN_LINK2" />Допълнителните общи условия на Chrome и Chrome OS<ph name="END_LINK2" />.</translation> <translation id="1154704303112745282">Страницата не е достъпна офлайн: <ph name="VIOLATED_URL" /></translation> @@ -170,6 +169,7 @@ <translation id="189358972401248634">Други езици</translation> <translation id="1894023287452300670">Проследявайте цени оттук</translation> <translation id="1900260903084164610">Продължавайки, приемате <ph name="BEGIN_TOS_LINK" />Общите условия<ph name="END_TOS_LINK" />.</translation> +<translation id="1904580727789512086">URL адресите, които посещавате, се запазват в профила ви в Google</translation> <translation id="1910950723001426294">Списъкът с опции за споделяне е затворен.</translation> <translation id="1918175104945982129">Потребителският интерфейс за даване на съгласие за ползване на Асистент при гласови търсения е отворен на половината височина</translation> <translation id="1919130412786645364">Разрешаване на влизането в Chrome</translation> @@ -194,7 +194,6 @@ <translation id="2000419248597011803">Изпраща някои „бисквитки“ и заявките за търсене от адресната лента и полето за търсене до стандартната ви търсеща машина</translation> <translation id="200114059308480249">Да се включи ли съседният текст в търсенията с Google?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# файл}other{# файла}}</translation> -<translation id="2020309681647789787">Историята ви ще бъде достъпна на всичките ви синхронизирани устройства и ще можете да продължите това, което сте правили</translation> <translation id="2021896219286479412">Контроли за сайтове на цял екран</translation> <translation id="2038563949887743358">Включване на функцията за заявяване на настолни сайтове</translation> <translation id="204321170514947529"><ph name="APP_NAME" /> също има данни в Chrome</translation> @@ -280,7 +279,6 @@ <translation id="2527779675047087889">Скриване на съдържанието в буферната памет</translation> <translation id="2532336938189706096">Изглед в мрежата</translation> <translation id="2534155362429831547">Изтрихте <ph name="NUMBER_OF_ITEMS" /> елемента</translation> -<translation id="2534582914273493287">Посещаваните от вас URL адреси се изпращат до Google</translation> <translation id="2536728043171574184">Преглеждате офлайн копие на страницата</translation> <translation id="2546283357679194313">„Бисквитки“ и данни за сайтове</translation> <translation id="2549516196460093976">Можете да използвате този таблет, за да влезете в профила си на компютъра, на който се показва QR кодът.</translation> @@ -372,7 +370,6 @@ <translation id="2996291259634659425">Създаване на пропуск</translation> <translation id="2996809686854298943">Изисква се URL адрес</translation> <translation id="2997081575621687554">Когато сайт в Google поиска частно предварително зареждане на връзките в страницата си, Chrome шифрова и зарежда предварително съответните страници чрез сървърите ни, без да използва „бисквитки“. По този начин самоличността ви се скрива от заредения предварително сайт.</translation> -<translation id="3003733539450769656">Предупреждава ви за опасни събития, преди да настъпят</translation> <translation id="3006881078666935414">Няма данни за използването</translation> <translation id="301080557829842765">Ръководство за поверителност</translation> <translation id="3016635187733453316">Уверете се, че това устройство е свързано с интернет</translation> @@ -432,6 +429,7 @@ <translation id="3284510035090979597">Превантивна помощ</translation> <translation id="3285080554353377245">Видеоклипове за използването на Chrome</translation> <translation id="3288003805934695103">Презаредете страницата.</translation> +<translation id="3290249595466894471">Също така се изпраща малка извадка от страници, изтеглени файлове, активност на разширенията и системна информация, за да се подпомогне откриването на нови заплахи</translation> <translation id="3297344142967351106">Гласова помощ</translation> <translation id="3303414029551471755">Искате ли да продължите с изтеглянето на съдържанието?</translation> <translation id="3334729583274622784">Да се промени ли файловото разширение?</translation> @@ -637,7 +635,6 @@ <translation id="4558311620361989323">Комбинации за уеб страници</translation> <translation id="4561730552726921821">Регистрацията бе успешна</translation> <translation id="4561979708150884304">Няма връзка</translation> -<translation id="4562008740775511591">Chrome осигурява приемливи стандартни настройки. Mожете обаче да персонализирате браузъра си така, че да подхожда на стила ви на сърфиране</translation> <translation id="4565377596337484307">Скриване на паролата</translation> <translation id="4572422548854449519">Вход в управляван профил</translation> <translation id="4576892426230499203">Опитайте с друга опция за потвърждаване</translation> @@ -919,7 +916,6 @@ <translation id="604996488070107836">Изтеглянето на „<ph name="FILE_NAME" />“ не бе успешно поради неизвестна грешка.</translation> <translation id="605721222689873409">ГГ</translation> <translation id="6059830886158432458">Управлявайте материалите и активността си тук</translation> -<translation id="6069177176307973611">Преглед на настройките за поверителност и сигурност</translation> <translation id="6070730414166672373">Осъществява се връзка с банката ви\u2026</translation> <translation id="6085886413119427067">Определя начин за свързване с уебсайтовете през сигурна връзка</translation> <translation id="6091413777268123602">С експериментите на Privacy Sandbox сайтовете могат да осигуряват същата практическа работа при сърфиране, използвайки по-малко ваши данни. Това означава по-голяма поверителност за вас и по-малко проследяване в различни сайтове. Ще добавим нови експерименти, когато са готови за тестване.</translation> @@ -1040,6 +1036,7 @@ <translation id="6641780377503683465">Премахване на <ph name="INTEREST" /></translation> <translation id="6643016212128521049">Изчистване</translation> <translation id="6645629752388991326">Управлявайте това, кои устройства могат да влизат чрез използване на това устройство като ключ за сигурност.</translation> +<translation id="6647441008198474441">Посещаваните от вас URL адреси се изпращат до Google с цел предвиждане на следващите страници, които е възможно да посетите</translation> <translation id="6648459603387803038">Администраторът ви може отдалечено да променя настройките на браузъра. Възможно е активността на това устройство да се управлява и извън Chrome.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 и още <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}other{<ph name="CONTACT_PREVIEW" />\u2026 и още <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}}</translation> <translation id="6649642165559792194">Визуализация <ph name="BEGIN_NEW" />Ново<ph name="END_NEW" /></translation> @@ -1047,7 +1044,6 @@ <translation id="6659594942844771486">Раздел</translation> <translation id="666731172850799929">Отваряне в <ph name="APP_NAME" /></translation> <translation id="6671495933530132209">Копиране на изображението</translation> -<translation id="6674044799624355221">Изпраща малка извадка от страници, изтеглени файлове, активност на разширенията и системна информация, за да помага за откриването на нови заплахи</translation> <translation id="6674571176963658787">За да стартирате синхронизирането, въведете пропуска си</translation> <translation id="6676840375528380067">Искате ли данните ви в Chrome да бъдат изчистени от устройството?</translation> <translation id="6684809838922667136">Подобряване на Chrome</translation> @@ -1069,7 +1065,6 @@ <translation id="6802555630140434547">Прозорецът ще бъде затворен</translation> <translation id="6811034713472274749">Страницата е готова за преглед</translation> <translation id="6813446258015311409">Вход в Chrome – отворено.</translation> -<translation id="6814033694018386318">Какво споделяте с Google</translation> <translation id="6817747507826986771">Бързо споделяне на страницата. За да редактирате този пряк път, докоснете и задръжте.</translation> <translation id="6819199143469632133">За да получите достъп до нещата си в Google на всички устройства, влезте в профила си</translation> <translation id="6820686453637990663">Код за сигурност</translation> @@ -1164,6 +1159,7 @@ <translation id="7352939065658542140">ВИДЕОКЛИП</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{Споделяне на 1 избран елемент}other{Споделяне на # избрани елемента}}</translation> <translation id="7359002509206457351">Достъп до начините на плащане</translation> +<translation id="7363349185727752629">Ръководство за настройките ви за поверителност</translation> <translation id="7375125077091615385">Тип:</translation> <translation id="7376560087009844242">С включването на повече текст от страницата може да виждате по-добри резултати, когато използвате функцията за търсене чрез докосване. Винаги можете да отворите <ph name="BEGIN_LINK" />настройките<ph name="END_LINK" />, за да промените това.</translation> <translation id="7379900596734708416">Налице е тъмна тема за сайтовете</translation> @@ -1263,6 +1259,7 @@ <translation id="7876243839304621966">Премахване на всички</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{Имате <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> непрочетена страница}other{Имате <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> непрочетени страници}}</translation> <translation id="7886917304091689118">Изпълнява се в Chrome</translation> +<translation id="7887174313503389866">Направете обиколка с упътване на ключовите контроли за поверителност и сигурност. За още опции отворете отделните настройки.</translation> <translation id="7887334752153342268">Дублиране</translation> <translation id="789763218334337857">Начин на използване на Chrome</translation> <translation id="7903184275147100332">Това може да отнеме известно време</translation> @@ -1376,6 +1373,7 @@ <translation id="8445448999790540984">Паролите не могат да бъдат експортирани</translation> <translation id="8446884382197647889">Научете повече</translation> <translation id="8453310803815879010">Стартиране на играта с динозавъра</translation> +<translation id="8460448946170646641">Прегледайте ключовите контроли за поверителност и сигурност</translation> <translation id="8461694314515752532">Шифроване на синхронизираните данни със собствения ви пропуск за синхронизиране</translation> <translation id="8466613982764129868">Уверете се, че устройството <ph name="TARGET_DEVICE_NAME" /> е свързано с интернет</translation> <translation id="8473863474539038330">Адреси и др.</translation> @@ -1421,6 +1419,7 @@ <translation id="8636825310635137004">Включете синхронизирането, за да получите разделите си от другите си устройства.</translation> <translation id="8641930654639604085">Опит за блокиране на сайтовете за пълнолетни</translation> <translation id="864544049772947936">Управление на прозорците (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">Предвижда и ви предупреждава за опасни събития, преди да се случат</translation> <translation id="8646467750715887511">Страниците се зареждат само след като ги отворите.</translation> <translation id="8655129584991699539">Можете да изчистите данните в настройките на Chrome</translation> <translation id="8659579665266920523">Начини за търсене с Chrome</translation> @@ -1433,7 +1432,6 @@ <translation id="867767487203716855">Следваща актуализация</translation> <translation id="8683039184091909753">изображение</translation> <translation id="8683081248374354009">Повторно задаване на групата</translation> -<translation id="8683526617475118045">Какво получавате</translation> <translation id="869891660844655955">Дата на валидност</translation> <translation id="8699120352855309748">Да не се предлага превод от тези езици</translation> <translation id="8712637175834984815">Разбрах</translation> @@ -1517,7 +1515,6 @@ <translation id="9148126808321036104">Влезте отново</translation> <translation id="9158770349521403363">Споделяне само на съдържанието</translation> <translation id="9159716826369098114">Възстановяване на група раздели от <ph name="TAB_COUNT" /> раздела като нова група на заден план.</translation> -<translation id="916446198114569890">URL адресите, които посещавате, се запазват в профила ви в Google</translation> <translation id="9169507124922466868">Историята на навигацията е наполовина отворена</translation> <translation id="9187955620966010988">Реакцията бе коригирана</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{Проверено преди 1 минута}other{Проверено преди # минути}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_bn.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_bn.xtb index 1d960e3..0023dd1 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_bn.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_bn.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">এইসব সাইট অনুবাদ হবে না</translation> <translation id="1145536944570833626">বিদ্যমান ডেটা মুছুন।</translation> <translation id="1146678959555564648">(ভিআর)VR লিখুন</translation> -<translation id="114825011539563458">গোপনীয়তা এবং সুরক্ষার সবথেকে গুরুত্বপূর্ণ সেটিং, একই জায়গায়</translation> <translation id="1149401351239820326">মেয়াদ শেষের মাস</translation> <translation id="1150263420752757504"><ph name="APP_NAME" /> Chrome-এ খুলবে। চালিয়ে যাওয়ার মাধ্যমে, আপনি <ph name="BEGIN_LINK1" />Google-এর পরিষেবার শর্তাবলী<ph name="END_LINK1" /> এবং <ph name="BEGIN_LINK2" />Google Chrome ও ChromeOS-এর পরিষেবার অতিরিক্ত শর্তাবলী<ph name="END_LINK2" /> মেনে নিচ্ছেন।</translation> <translation id="1154704303112745282">পৃষ্ঠাটি অফলাইনে লোড করা যাবে না: <ph name="VIOLATED_URL" /></translation> @@ -170,6 +169,7 @@ <translation id="189358972401248634">অন্যান্য ভাষা</translation> <translation id="1894023287452300670">এখানে দাম ট্র্যাক করুন</translation> <translation id="1900260903084164610">চালিয়ে যাওয়ার অর্থ হল আপনি <ph name="BEGIN_TOS_LINK" />পরিষেবার শর্তাবলী<ph name="END_TOS_LINK" />তে সম্মতি দিচ্ছেন।</translation> +<translation id="1904580727789512086">আপনার ভিজিট করা URL আপনার Google অ্যাকাউন্টে সেভ করা হয়</translation> <translation id="1910950723001426294">শেয়ার করার বিকল্পের তালিকা বন্ধ আছে।</translation> <translation id="1918175104945982129">Assistant-এ ভয়েস সার্চ করার সম্মতি দেওয়ার UI অর্ধেক স্ক্রিন জুড়ে খুলেছে</translation> <translation id="1919130412786645364">Chrome-এ সাইন-ইন করতে দিন</translation> @@ -194,7 +194,6 @@ <translation id="2000419248597011803">অ্যাড্রেস বার এবং সার্চ বক্স থেকে সার্চের তথ্য এবং কিছু কুকি আপনার ডিফল্ট সার্চ ইঞ্জিনে পাঠায়</translation> <translation id="200114059308480249">Google searches-এ কোনও কিছু সার্চ করার সময় সার্চের সাথে মেলে এমন টেক্সট অন্তর্ভুক্ত করবেন?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{#টি ফাইল}one{#টি ফাইল}other{#টি ফাইল}}</translation> -<translation id="2020309681647789787">আপনার সিঙ্ক করা সব ডিভাইসে ইতিহাস সেভ হবে, যাতে আপনার আগের করা কাজ চালিয়ে যেতে পারেন</translation> <translation id="2021896219286479412">পূর্ণ স্ক্রিন সাইট নিয়ন্ত্রণ</translation> <translation id="2038563949887743358">ডেস্কটপ সাইটের অনুরোধ চালু করুন</translation> <translation id="204321170514947529"><ph name="APP_NAME" /> অ্যাপের ডেটা Chrome ব্রাউজারেও আছে</translation> @@ -280,7 +279,6 @@ <translation id="2527779675047087889">ক্লিপবোর্ডের কন্টেন্ট লুকান</translation> <translation id="2532336938189706096">ওয়েব দর্শন</translation> <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" />টি আইটেম মোছা হয়েছে</translation> -<translation id="2534582914273493287">আপনি যেসব URL দেখেন তা Google-এ পাঠানো হয়</translation> <translation id="2536728043171574184">এই পৃষ্ঠার একটি অফলাইন কপি দেখছেন</translation> <translation id="2546283357679194313">কুকিজ ও সাইট ডেটা</translation> <translation id="2549516196460093976">যে কম্পিউটারে এই QR কোড দেখানো হচ্ছে তাতে সাইন-ইন করার জন্য আপনি এই ট্যাবলেটটি ব্যবহার করতে পারবেন।</translation> @@ -372,7 +370,6 @@ <translation id="2996291259634659425">পাসফ্রেজ তৈরি করুন</translation> <translation id="2996809686854298943">URL প্রয়োজন</translation> <translation id="2997081575621687554">কোনও Google সাইট সেটির পৃষ্ঠার লিঙ্কগুলি ব্যক্তিগতভাবে প্রিলোড করা হোক বলে নির্দেশ দিলে, Google সার্ভারের মাধ্যমে Chrome কুকি ছাড়া পৃষ্ঠাগুলি এনক্রিপ্ট ও প্রিলোড করে। এর ফলে আপনার পরিচয় প্রিলোড করা সাইটের থেকে লুকানো থাকে।</translation> -<translation id="3003733539450769656">ক্ষতিকারক কিছু হতে পারে মনে হলে আপনাকে সতর্ক করে</translation> <translation id="3006881078666935414">কোনও ব্যবহারের ডেটা নেই</translation> <translation id="301080557829842765">গোপনীয়তা সংক্রান্ত গাইড</translation> <translation id="3016635187733453316">এই ডিভাইসটি ইন্টারনেটে কানেক্ট করা আছে কিনা দেখে নিন</translation> @@ -432,6 +429,7 @@ <translation id="3284510035090979597">আগেভাগে সহায়তা</translation> <translation id="3285080554353377245">Chrome কীভাবে ব্যবহার করবেন সেই সংক্রান্ত ভিডিও</translation> <translation id="3288003805934695103">পৃষ্ঠাটি আবার লোড করে দেখুন</translation> +<translation id="3290249595466894471">তাছাড়া, নতুন কোনও ঝুঁকি খুঁজে পেতে সাহায্য করার জন্য পৃষ্ঠার ছোট নমুনা, ডাউনলোড, এক্সটেনশন অ্যাক্টিভিটি এবং সিস্টেম সংক্রান্ত তথ্যও পাঠায়</translation> <translation id="3297344142967351106">ভয়েস সহায়তা</translation> <translation id="3303414029551471755">কন্টেন্ট ডাউনলোড করার জন্য এগোতে চান?</translation> <translation id="3334729583274622784">ফাইলের এক্সটেনশন পরিবর্তন করতে চান?</translation> @@ -639,7 +637,6 @@ <translation id="4558311620361989323">ওয়েবপৃষ্ঠার শর্টকাটগুলি</translation> <translation id="4561730552726921821">রেজিস্ট্রেশন হয়ে গেছে</translation> <translation id="4561979708150884304">কোনও কানেকশন নেই</translation> -<translation id="4562008740775511591">Chrome ন্যায্য ডিফল্ট উপলভ্য করায়। তবে, আপনি সেটিকে কাস্টমাইজ করতে পারেন, যাতে ব্রাউজিংয়ের হিসেবে কাজ করে</translation> <translation id="4565377596337484307">পাসওয়ার্ড লুকান</translation> <translation id="4572422548854449519">ম্যানেজ করা অ্যাকাউন্টে সাইন-ইন করুন</translation> <translation id="4576892426230499203">যাচাইকরণের অন্য একটি বিকল্প ব্যবহার করে দেখুন</translation> @@ -921,7 +918,6 @@ <translation id="604996488070107836">একটি অজানা ত্রুটির কারনে <ph name="FILE_NAME" /> ডাউনলোড করা যায়নি।</translation> <translation id="605721222689873409">YY</translation> <translation id="6059830886158432458">আপনার খবর ও গতিবিধি এখানে নিয়ন্ত্রণ করুন</translation> -<translation id="6069177176307973611">গোপনীয়তা এবং নিরাপত্তা সেটিংস পর্যালোচনা করুন</translation> <translation id="6070730414166672373">আপনার ব্যাঙ্কে যোগাযোগ করা হচ্ছে</translation> <translation id="6085886413119427067">কোনও সুরক্ষিত কানেকশনের মাধ্যমে ওয়েবসাইটগুলিতে কীভাবে কানেক্ট করবেন তা নির্ধারণ করে</translation> <translation id="6091413777268123602">প্রাইভেসি স্যান্ডবক্স ট্রায়ালের মাধ্যমে, সাইটগুলি আপনার কম ডেটা ব্যবহার করে একই ব্রাউজিং অভিজ্ঞতা প্রদান করতে পারে। এর অর্থ আপনার জন্য আরও গোপনীয়তা এবং কম ক্রস-সাইট ট্র্যাকিং। আমরা নতুন ট্রায়াল যোগ করব কারণ সেগুলি পরীক্ষার জন্য প্রস্তুত।</translation> @@ -1042,6 +1038,7 @@ <translation id="6641780377503683465"><ph name="INTEREST" /> সরিয়ে দিন</translation> <translation id="6643016212128521049">সাফ করুন</translation> <translation id="6645629752388991326">এই ডিভাইসটিকে নিরাপত্তা কী হিসেবে ব্যবহার করে কোন ডিভাইসে সাইন-ইন করা যাবে তা নিয়ন্ত্রণ করুন।</translation> +<translation id="6647441008198474441">আপনি পরে কোন কোন সাইট ভিজিট করতে পারেন তা অনুমান করার জন্য আপনি যেসব URL দেখেন তা Google-এ পাঠানো হয়</translation> <translation id="6648459603387803038">আপনার অ্যাডমিনিস্ট্রেটর রিমোট লোকেশন থেকে আপনার ব্রাউজারের সেটআপ পরিবর্তন করতে পারেন। এই ডিভাইসের অ্যাক্টিভিটি Chrome-এর বাইরে থেকেও ম্যানেজ করা যেতে পারে।</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 এবং <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> আরও অনেক}one{<ph name="CONTACT_PREVIEW" />\u2026 এবং <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> আরও অনেক}other{<ph name="CONTACT_PREVIEW" />\u2026 এবং <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> আরও অনেক}}</translation> <translation id="6649642165559792194"><ph name="BEGIN_NEW" />নতুন<ph name="END_NEW" /> ছবির প্রিভিউ দেখুন</translation> @@ -1049,7 +1046,6 @@ <translation id="6659594942844771486">ট্যাব</translation> <translation id="666731172850799929"><ph name="APP_NAME" /> এ খুলুন</translation> <translation id="6671495933530132209">ছবি কপি করুন</translation> -<translation id="6674044799624355221">তাছাড়া, নতুন কোনও ঝুঁকি খুঁজে পেতে সাহায্য করার জন্য পৃষ্ঠার ছোট নমুনা, ডাউনলোড, এক্সটেনশন অ্যাক্টিভিটি এবং সিস্টেম সংক্রান্ত তথ্যও পাঠায়</translation> <translation id="6674571176963658787">সিঙ্ক শুরু করতে, আপনার পাসফ্রেজ লিখুন</translation> <translation id="6676840375528380067">এই ডিভাইস থেকে Chrome ডেটা সরিয়ে ফেলবেন?</translation> <translation id="6684809838922667136">Chrome-এর ব্যবহার উন্নত করুন</translation> @@ -1071,7 +1067,6 @@ <translation id="6802555630140434547">উইন্ডো বন্ধ করা হবে</translation> <translation id="6811034713472274749">পৃষ্ঠাটি এখন দেখতে পাবেন</translation> <translation id="6813446258015311409">Chrome-এ সাইন-ইন করার পৃষ্ঠা খোলা আছে।</translation> -<translation id="6814033694018386318">আপনি Google-এ কী শেয়ার করেন</translation> <translation id="6817747507826986771">এই পৃষ্ঠা দ্রুত শেয়ার করুন। এই শর্টকার্ট এডিট করতে, টাচ করে ধরে থাকুন।</translation> <translation id="6819199143469632133">ডিভাইস জুড়ে আপনার Google পরিষেবা পাওয়ার জন্য, সাইন-ইন করুন</translation> <translation id="6820686453637990663">CVC</translation> @@ -1166,6 +1161,7 @@ <translation id="7352939065658542140">ভিডিও</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{১টি নির্বাচিত আইটেম শেয়ার করুন}one{#টি নির্বাচিত আইটেম শেয়ার করুন}other{#টি নির্বাচিত আইটেম শেয়ার করুন}}</translation> <translation id="7359002509206457351">পেমেন্টের পদ্ধতি অ্যাক্সেস করুন</translation> +<translation id="7363349185727752629">আপনার গোপনীয়তা পছন্দ গাইড</translation> <translation id="7375125077091615385">প্রকার:</translation> <translation id="7376560087009844242">কোনও পৃষ্ঠার টেক্সটে আরও শব্দ যোগ করলে, 'সার্চ করতে টাচ করুন' ফিচার ব্যবহার করার সময় আপনি হয়ত আরও ভাল ফলাফল দেখতে পারবেন। এটি পরিবর্তন করতে আপনি সব সময় <ph name="BEGIN_LINK" />সেটিংস<ph name="END_LINK" />-এ যেতে পারবেন।</translation> <translation id="7379900596734708416">সাইটের জন্য ডার্ক থিম উপলভ্য আছে</translation> @@ -1265,6 +1261,7 @@ <translation id="7876243839304621966">সকল সরান</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{আপনার কাছে <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" />টি পৃষ্ঠা আছে যা এখনও পড়েননি}one{আপনার কাছে <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" />টি পৃষ্ঠা আছে যা এখনও পড়েননি}other{আপনার কাছে <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" />টি পৃষ্ঠা আছে যা এখনও পড়েননি}}</translation> <translation id="7886917304091689118">Chrome এ চালানো হচ্ছে</translation> +<translation id="7887174313503389866">মূল গোপনীয়তা এবং নিরাপত্তা নিয়ন্ত্রণ সম্পর্কিত প্রোডাক্টটি ঘুরে দেখা বিকল্পে যান আরও বিকল্পের জন্য, আলাদা আলাদা সেটিংসে যান।</translation> <translation id="7887334752153342268">ডুপ্লিকেট</translation> <translation id="789763218334337857">Chrome কীভাবে ব্যবহার করবেন</translation> <translation id="7903184275147100332">এটি করতে এক মিনিট সময় লাগতে পারে</translation> @@ -1378,6 +1375,7 @@ <translation id="8445448999790540984">পাসওয়ার্ড এক্সপোর্ট করা যাচ্ছে না</translation> <translation id="8446884382197647889">আরও জানুন</translation> <translation id="8453310803815879010">Dino Game শুরু করুন</translation> +<translation id="8460448946170646641">মূল গোপনীয়তা এবং নিরাপত্তা নিয়ন্ত্রণ পর্যালোচনা করুন</translation> <translation id="8461694314515752532">আপনার নিজস্ব সিঙ্ক পাসফ্রেজ দিয়ে সিঙ্ক করা ডেটা এনক্রিপ্ট করুন</translation> <translation id="8466613982764129868"><ph name="TARGET_DEVICE_NAME" /> ডিভাইসটি ইন্টারনেটের সাথে কানেক্ট করা আছে কিনা দেখে নিন</translation> <translation id="8473863474539038330">ঠিকানা ও আরও অনেককিছু</translation> @@ -1423,6 +1421,7 @@ <translation id="8636825310635137004">আপনার অন্য ডিভাইসগুলি থেকে আপনার ট্যাবগুলি পেতে, সিঙ্ক চালু করুন।</translation> <translation id="8641930654639604085">প্রাপ্তবয়স্কদের সাইটগুলি অবরুদ্ধ করার চেষ্টা করুন</translation> <translation id="864544049772947936">উইন্ডো ম্যানেজ করুন (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">ক্ষতিকারক কিছু হতে পারে মনে হলে তা আগে থেকে অনুমান করে আপনাকে সতর্ক করে</translation> <translation id="8646467750715887511">আপনি কোনও পৃষ্ঠা খুললে তবেই সেটি লোড করা হয়।</translation> <translation id="8655129584991699539">Chrome সেটিংসে গিয়ে আপনি ডেটা মুছে ফেলতে পারেন</translation> <translation id="8659579665266920523">Chrome-এর সাহায্যে কীভাবে সার্চ করবেন</translation> @@ -1435,7 +1434,6 @@ <translation id="867767487203716855">পরবর্তী আপডেট</translation> <translation id="8683039184091909753">ছবি</translation> <translation id="8683081248374354009">গ্রুপ রিসেট করুন</translation> -<translation id="8683526617475118045">আপনি কী পাবেন</translation> <translation id="869891660844655955">মেয়াদকাল সমাপ্তির তারিখ</translation> <translation id="8699120352855309748">এইসব ভাষায় অনুবাদ হবে না</translation> <translation id="8712637175834984815">বুঝেছি</translation> @@ -1519,7 +1517,6 @@ <translation id="9148126808321036104">আবার সাইন-ইন করুন</translation> <translation id="9158770349521403363">শুধুমাত্র কন্টেন্ট শেয়ার করুন</translation> <translation id="9159716826369098114">নতুন ব্যাকগ্রাউন্ড ট্যাব গ্রুপ হিসেবে <ph name="TAB_COUNT" />টি ট্যাবের ট্যাব গ্রুপ ফিরিয়ে আনুন।</translation> -<translation id="916446198114569890">আপনি যেসব URL ভিজিট করেন তা আপনার Google অ্যাকাউন্টে সেভ করা হয়</translation> <translation id="9169507124922466868">নেভিগেশনের ইতিহাস অর্ধেক খোলা রয়েছে</translation> <translation id="9187955620966010988">প্রতিক্রিয়া অ্যাডজাস্ট করা হয়েছে</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{১ মিনিট আগে চেক করা হয়েছে}one{# মিনিট আগে চেক করা হয়েছে}other{# মিনিট আগে চেক করা হয়েছে}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_bs.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_bs.xtb index 9dfb24a..49e3cbb 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_bs.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_bs.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">Nemoj nuditi prevođenje ovih web lokacija</translation> <translation id="1145536944570833626">Brisanje postojećih podataka.</translation> <translation id="1146678959555564648">Uđi u VR</translation> -<translation id="114825011539563458">Najvažnije kontrole privatnosti i sigurnosti na jednom mjestu</translation> <translation id="1149401351239820326">Mjesec isteka</translation> <translation id="1150263420752757504"><ph name="APP_NAME" /> će se otvoriti u Chromeu. Ako nastavite, pristajete na <ph name="BEGIN_LINK1" />Googleove Uslove korištenja usluge<ph name="END_LINK1" /> i <ph name="BEGIN_LINK2" />dodatne Uslove korištenja usluge za Google Chrome i ChromeOS<ph name="END_LINK2" />.</translation> <translation id="1154704303112745282">Stranica je nedostupna van mreže: <ph name="VIOLATED_URL" /></translation> @@ -170,6 +169,7 @@ <translation id="189358972401248634">Drugi jezici</translation> <translation id="1894023287452300670">Pratite cijenu ovdje</translation> <translation id="1900260903084164610">Ako nastavite, pristajete na <ph name="BEGIN_TOS_LINK" />Uslove korištenja usluge<ph name="END_TOS_LINK" />.</translation> +<translation id="1904580727789512086">URL-ovi koje posjećujete pohranjuju se na vaš Google račun</translation> <translation id="1910950723001426294">Lista opcija dijeljenja je zatvorena.</translation> <translation id="1918175104945982129">Korisnički interfejs za pristanak na glasovno pretraživanje putem Asistenta je otvoren na pola ekrana</translation> <translation id="1919130412786645364">Omogući prijavu na Chrome</translation> @@ -194,7 +194,6 @@ <translation id="2000419248597011803">Šalje neke kolačiće i pretraživanja s trake za adresu i iz okvira za pretraživanje vašem zadanom pretraživaču</translation> <translation id="200114059308480249">Obuhvatiti okružujući tekst u pretraživanjima na Googleu?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# fajl}one{# fajl}few{# fajla}other{# fajlova}}</translation> -<translation id="2020309681647789787">Na svim vašim sinhroniziranim uređajima ćete imati historiju, pa možete nastaviti s onim što ste radili</translation> <translation id="2021896219286479412">Kontr. web lok. na cijelom ekr.</translation> <translation id="2038563949887743358">Uključivanje zahtjeva za verziju web lokacije za računar</translation> <translation id="204321170514947529"><ph name="APP_NAME" /> također ima podatke u Chromeu</translation> @@ -280,7 +279,6 @@ <translation id="2527779675047087889">Sakrijte sadržaj međumemorije</translation> <translation id="2532336938189706096">Web prikaz</translation> <translation id="2534155362429831547">Broj izbrisanih stavki: <ph name="NUMBER_OF_ITEMS" /></translation> -<translation id="2534582914273493287">URL-ovi koje posjetite šalju se Googleu</translation> <translation id="2536728043171574184">Gledate kopiju ove stranice van mreže</translation> <translation id="2546283357679194313">Kolačići i podaci web lokacije</translation> <translation id="2549516196460093976">Možete koristiti ovaj tablet da se prijavite na računar na kojem je prikazan ovaj QR kôd.</translation> @@ -372,7 +370,6 @@ <translation id="2996291259634659425">Kreirajte pristupni izraz</translation> <translation id="2996809686854298943">Potreban je URL</translation> <translation id="2997081575621687554">Kada Googleova web lokacija zatraži da privatno predučita linkove na svojim stranicama, Chrome će šifrirati i predučitati stranice putem Googleovih servera bez kolačića. Ovim se skriva vaš identitet na predučitanoj web lokaciji.</translation> -<translation id="3003733539450769656">Upozorava vas o opasnim događajima prije nego što se dogode</translation> <translation id="3006881078666935414">Nema podataka o korištenju</translation> <translation id="301080557829842765">Vodič za privatnost</translation> <translation id="3016635187733453316">Provjerite je li ovaj uređaj povezan na internet</translation> @@ -432,6 +429,7 @@ <translation id="3284510035090979597">Proaktivna pomoć</translation> <translation id="3285080554353377245">Videozapisi o načinu korištenja Chromea</translation> <translation id="3288003805934695103">Ponovno učitavanje stranice</translation> +<translation id="3290249595466894471">Također šalje mali uzorak stranica, preuzimanja, aktivnosti ekstenzija i informacija o sistemu radi lakšeg otkrivanja novih prijetnji</translation> <translation id="3297344142967351106">Glasovna pomoć</translation> <translation id="3303414029551471755">Nastaviti s preuzimanjem sadržaja?</translation> <translation id="3334729583274622784">Promijeniti ekstenziju fajla?</translation> @@ -637,7 +635,6 @@ <translation id="4558311620361989323">Prečice web stranice</translation> <translation id="4561730552726921821">Registracija je uspjela</translation> <translation id="4561979708150884304">Niste povezani na mrežu</translation> -<translation id="4562008740775511591">Chrome pruža razumne zadane postavke, ali ih možete prilagoditi da najbolje odgovaraju vašim navikama pretraživanja</translation> <translation id="4565377596337484307">Sakrij lozinku</translation> <translation id="4572422548854449519">Prijava na upravljani račun</translation> <translation id="4576892426230499203">Pokušajte s drugom opcijom za potvrdu</translation> @@ -919,7 +916,6 @@ <translation id="604996488070107836">Preuzimanje fajla <ph name="FILE_NAME" /> nije uspjelo zbog nepoznate greške.</translation> <translation id="605721222689873409">GG</translation> <translation id="6059830886158432458">Upravljajte pričama i aktivnostima ovdje</translation> -<translation id="6069177176307973611">Pregledajte postavke privatnosti i sigurnosti</translation> <translation id="6070730414166672373">Kontaktiranje banke\u2026</translation> <translation id="6085886413119427067">Određuje način povezivanja s web lokacijama putem sigurne veze</translation> <translation id="6091413777268123602">Koristeći probne verzije za Okruženje zaštićene privatnosti, web lokacije mogu pružiti isti doživljaj pregledanja koristeći manje vaših podataka. To znači više privatnosti za vas i manje unakrsnog praćenja web lokacija. Nove probne verzije ćemo dodavati kada budu spremne za testiranje.</translation> @@ -1040,6 +1036,7 @@ <translation id="6641780377503683465">Uklanjanje: <ph name="INTEREST" /></translation> <translation id="6643016212128521049">Obriši</translation> <translation id="6645629752388991326">Kontrolirajte koji uređaji se mogu prijaviti koristeći ovaj uređaj kao sigurnosni ključ.</translation> +<translation id="6647441008198474441">URL-ovi koje posjetite šalju se Googleu radi predviđanja koje web lokacije ćete možda posjetiti sljedeće</translation> <translation id="6648459603387803038">Vaš administrator može promijeniti postavke preglednika daljinskim putem. Aktivnostima na ovom uređaju se može upravljati i van Chromea.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 i još<ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}one{<ph name="CONTACT_PREVIEW" />\u2026 i još<ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}few{<ph name="CONTACT_PREVIEW" />\u2026 i još<ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}other{<ph name="CONTACT_PREVIEW" />\u2026 i još<ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}}</translation> <translation id="6649642165559792194">Pregled slike <ph name="BEGIN_NEW" />Novo<ph name="END_NEW" /></translation> @@ -1047,7 +1044,6 @@ <translation id="6659594942844771486">Kartica</translation> <translation id="666731172850799929">Otvori u aplikaciji <ph name="APP_NAME" /></translation> <translation id="6671495933530132209">Kopiraj sliku</translation> -<translation id="6674044799624355221">Šalje mali uzorak stranica, preuzimanja, aktivnosti ekstenzija i informacija o sistemu radi lakšeg otkrivanja novih prijetnji</translation> <translation id="6674571176963658787">Da pokrenete sinhronizaciju, unesite pristupni izraz</translation> <translation id="6676840375528380067">Obrisati Chrome podatke s ovog uređaja?</translation> <translation id="6684809838922667136">Poboljšajte Chrome</translation> @@ -1069,7 +1065,6 @@ <translation id="6802555630140434547">Prozor će se zatvoriti</translation> <translation id="6811034713472274749">Stranica je spremna za prikaz</translation> <translation id="6813446258015311409">Prijava na Chrome je otvorena.</translation> -<translation id="6814033694018386318">Šta dijelite s Googleom</translation> <translation id="6817747507826986771">Brzo dijelite ovu stranicu. Dodirnite i zadržite da uredite ovu prečicu.</translation> <translation id="6819199143469632133">Da imate sve Googleove proizvode koje koristite na svim uređajima, prijavite se</translation> <translation id="6820686453637990663">CVC</translation> @@ -1164,6 +1159,7 @@ <translation id="7352939065658542140">VIDEOZAPIS</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{Dijelite 1 odabranu stavku}one{Dijelite # odabranu stavku}few{Dijelite # odabrane stavke}other{Dijelite # odabranih stavki}}</translation> <translation id="7359002509206457351">Pristup načinima plaćanja</translation> +<translation id="7363349185727752629">Vodič za vaše odabire u vezi s privatnošću</translation> <translation id="7375125077091615385">Vrsta:</translation> <translation id="7376560087009844242">Ako obuhvatite više teksta stranice, možda ćete dobiti bolje rezultate prilikom korištenja Pretraživanja dodirom. Uvijek možete posjetiti <ph name="BEGIN_LINK" />postavke<ph name="END_LINK" /> da to promijenite.</translation> <translation id="7379900596734708416">Dostupna je tamna tema za web lokacije</translation> @@ -1263,6 +1259,7 @@ <translation id="7876243839304621966">Ukloni sve</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{Imate <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> nepročitanu stranicu}one{Imate <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> nepročitanu stranicu}few{Imate <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> nepročitane stranice}other{Imate <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> nepročitanih stranica}}</translation> <translation id="7886917304091689118">Pokrenuto je u Chromeu</translation> +<translation id="7887174313503389866">Pođite u obilazak s vodičem kroz ključne kontrole privatnosti i sigurnosti. Više opcija možete pronaći u pojedinačnim postavkama.</translation> <translation id="7887334752153342268">Dupliciraj</translation> <translation id="789763218334337857">Kako koristiti Chrome</translation> <translation id="7903184275147100332">Ovo može malo potrajati</translation> @@ -1376,6 +1373,7 @@ <translation id="8445448999790540984">Nije moguće izvesti lozinke</translation> <translation id="8446884382197647889">Saznajte više</translation> <translation id="8453310803815879010">Pokrenite Igru s dinosaurom</translation> +<translation id="8460448946170646641">Pregledajte ključne kontrole privatnosti i sigurnosti</translation> <translation id="8461694314515752532">Šifrirajte sinhronizirane podatke svojim pristupnim izrazom</translation> <translation id="8466613982764129868">Provjerite je li uređaj <ph name="TARGET_DEVICE_NAME" /> povezan na internet</translation> <translation id="8473863474539038330">Adrese i još mnogo toga</translation> @@ -1421,6 +1419,7 @@ <translation id="8636825310635137004">Da dobijete svoje kartice s drugih uređaja, uključite sinhronizaciju.</translation> <translation id="8641930654639604085">Pokušaj blokirati web lokacije sa sadržajem za odrasle</translation> <translation id="864544049772947936">Upravljajte prozorima (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">Predviđa opasne događaje i upozorava vas na njih prije nego što nastupe</translation> <translation id="8646467750715887511">Stranice se učitavaju samo nakon što ih otvorite.</translation> <translation id="8655129584991699539">Podatke možete obrisati u Postavkama Chromea</translation> <translation id="8659579665266920523">Kako pretraživati pomoću Chromea</translation> @@ -1433,7 +1432,6 @@ <translation id="867767487203716855">Sljedeće ažuriranje</translation> <translation id="8683039184091909753">slika</translation> <translation id="8683081248374354009">Poništi grupu</translation> -<translation id="8683526617475118045">Šta dobijate</translation> <translation id="869891660844655955">Datum isteka</translation> <translation id="8699120352855309748">Nemoj nuditi prevođenje ovih jezika</translation> <translation id="8712637175834984815">Razumijem</translation> @@ -1517,7 +1515,6 @@ <translation id="9148126808321036104">Prijavi se ponovo</translation> <translation id="9158770349521403363">Dijeli samo sadržaj</translation> <translation id="9159716826369098114">Vratite grupu kartica (broj kartica: <ph name="TAB_COUNT" />) kao novu pozadinsku grupu kartica.</translation> -<translation id="916446198114569890">URL-ovi koje posjećujete pohranjuju se na vaš Google račun</translation> <translation id="9169507124922466868">Historija navigacije je napola otvorena</translation> <translation id="9187955620966010988">Reakcija je podešena</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{Provjereno prije 1 minutu}one{Provjereno prije # minutu}few{Provjereno prije # minute}other{Provjereno prije # minuta}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_ca.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_ca.xtb index 41ca31e..0e4fa71 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_ca.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_ca.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">No proposis traduir aquests llocs web</translation> <translation id="1145536944570833626">Suprimeix les dades existents.</translation> <translation id="1146678959555564648">Activa el mode RV</translation> -<translation id="114825011539563458">Els controls de privadesa i seguretat més importants en un sol lloc</translation> <translation id="1149401351239820326">Mes de caducitat</translation> <translation id="1150263420752757504"><ph name="APP_NAME" /> s'obrirà a Chrome. En continuar, acceptes les <ph name="BEGIN_LINK1" />condicions del servei de Google<ph name="END_LINK1" /> i les <ph name="BEGIN_LINK2" />condicions del servei addicionals de Google Chrome i Chrome OS<ph name="END_LINK2" />.</translation> <translation id="1154704303112745282">Pàgina no disponible sense connexió: <ph name="VIOLATED_URL" /></translation> @@ -170,6 +169,7 @@ <translation id="189358972401248634">Altres idiomes</translation> <translation id="1894023287452300670">Fes un seguiment del preu aquí</translation> <translation id="1900260903084164610">En continuar, acceptes les <ph name="BEGIN_TOS_LINK" />condicions del servei<ph name="END_TOS_LINK" />.</translation> +<translation id="1904580727789512086">Els URL que visites es desen al teu Compte de Google</translation> <translation id="1910950723001426294">La llista d'opcions de compartició està tancada.</translation> <translation id="1918175104945982129">La IU de consentiment de la cerca per veu de l'Assistent s'ha obert a mitja alçada</translation> <translation id="1919130412786645364">Permet l'inici de sessió a Chrome</translation> @@ -194,7 +194,6 @@ <translation id="2000419248597011803">Envia al motor de cerca predeterminat algunes galetes i cerques de la barra d'adreces i del quadre de cerca</translation> <translation id="200114059308480249">Vols incloure el text del voltant a les cerques de Google?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# fitxer}other{# fitxers}}</translation> -<translation id="2020309681647789787">Tindràs l'historial en tots els dispositius sincronitzats perquè puguis continuar el que estaves fent</translation> <translation id="2021896219286479412">Controls de pantalla completa</translation> <translation id="2038563949887743358">Activa Mostra com a ordinador</translation> <translation id="204321170514947529"><ph name="APP_NAME" /> també té dades a Chrome</translation> @@ -280,7 +279,6 @@ <translation id="2527779675047087889">Amaga els continguts del porta-retalls</translation> <translation id="2532336938189706096">Visualització web</translation> <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> elements suprimits</translation> -<translation id="2534582914273493287">Els URL que visites s'envien a Google</translation> <translation id="2536728043171574184">S'està mostrant una còpia sense connexió d'aquesta pàgina</translation> <translation id="2546283357679194313">Dades de llocs web i galetes</translation> <translation id="2549516196460093976">Pots utilitzar aquesta tauleta per iniciar la sessió a l'ordinador que està mostrant el codi QR.</translation> @@ -340,7 +338,7 @@ <translation id="2860954141821109167">Comprova que hi hagi una aplicació de telèfon activada en aquest dispositiu</translation> <translation id="2861923151411510142">Algunes funcions de Chrome ja no estaran disponibles</translation> <translation id="2870560284913253234">Lloc web</translation> -<translation id="2871733351037274014">Precàrrega de les pàgines</translation> +<translation id="2871733351037274014">Precàrrega de pàgines</translation> <translation id="2886836735871983413">Aquí es mostrarà una llista de llocs web a mesura que naveguis pel web</translation> <translation id="2888126860611144412">Sobre Chrome</translation> <translation id="2891154217021530873">Atura la càrrega de la pàgina</translation> @@ -372,7 +370,6 @@ <translation id="2996291259634659425">Creeu una frase de contrasenya</translation> <translation id="2996809686854298943">Es necessita un URL</translation> <translation id="2997081575621687554">Quan un lloc web de Google demana precarregar de manera privada enllaços de la seva pàgina, Chrome encripta i precarrega les pàgines mitjançant servidors de Google sense galetes. Això amaga la teva identitat del lloc web precarregat.</translation> -<translation id="3003733539450769656">T'avisa d'esdeveniments perillosos abans que es produeixin</translation> <translation id="3006881078666935414">No hi ha dades d'ús</translation> <translation id="301080557829842765">Guia de privadesa</translation> <translation id="3016635187733453316">Comprova que el dispositiu estigui connectat a Internet</translation> @@ -432,6 +429,7 @@ <translation id="3284510035090979597">Ajuda proactiva</translation> <translation id="3285080554353377245">Vídeos sobre com s'utilitza Chrome</translation> <translation id="3288003805934695103">Torneu a carregar la pàgina</translation> +<translation id="3290249595466894471">També envia una petita mostra de pàgines, baixades, activitat d'extensions i informació del sistema per ajudar a detectar amenaces noves</translation> <translation id="3297344142967351106">Assistència per veu</translation> <translation id="3303414029551471755">Voleu baixar el contingut?</translation> <translation id="3334729583274622784">Vols canviar l'extensió del fitxer?</translation> @@ -637,7 +635,6 @@ <translation id="4558311620361989323">Dreceres per a pàgines web</translation> <translation id="4561730552726921821">S'ha registrat correctament</translation> <translation id="4561979708150884304">No hi ha connexió</translation> -<translation id="4562008740775511591">Chrome proporciona valors predeterminats raonables, però pots personalitzar-lo perquè s'adapti millor als teus hàbits de navegació</translation> <translation id="4565377596337484307">Oculta la contrasenya</translation> <translation id="4572422548854449519">Inicia la sessió al compte gestionat</translation> <translation id="4576892426230499203">Prova una altra opció de verificació</translation> @@ -919,7 +916,6 @@ <translation id="604996488070107836">No s'ha pogut baixar <ph name="FILE_NAME" /> a causa d'un error desconegut.</translation> <translation id="605721222689873409">AA</translation> <translation id="6059830886158432458">Controla les teves històries i la teva activitat aquí</translation> -<translation id="6069177176307973611">Revisa la configuració de privadesa i seguretat</translation> <translation id="6070730414166672373">S'està contactant amb el banc\u2026</translation> <translation id="6085886413119427067">Determina com es connecta a llocs web amb una connexió segura</translation> <translation id="6091413777268123602">Amb les proves de Privacy Sandbox, els llocs web poden oferir la mateixa experiència de navegació utilitzant menys dades teves. Això significa que tindràs més privadesa i que hi haurà menys seguiment entre llocs web. Afegirem noves proves a mesura que estiguin preparades per aplicar-les.</translation> @@ -1040,6 +1036,7 @@ <translation id="6641780377503683465">Suprimeix <ph name="INTEREST" /></translation> <translation id="6643016212128521049">Esborra</translation> <translation id="6645629752388991326">Controla quins dispositius poden iniciar la sessió utilitzant aquest dispositiu com a clau de seguretat.</translation> +<translation id="6647441008198474441">Els URL que visites s'envien a Google per preveure quins llocs web és possible que visitis a continuació</translation> <translation id="6648459603387803038">L'administrador pot modificar la configuració del navegador de manera remota. És possible que l'activitat d'aquest dispositiu també es gestioni fora de Chrome.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 i <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> més}other{<ph name="CONTACT_PREVIEW" />\u2026 i <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> més}}</translation> <translation id="6649642165559792194">Previsualitza la imatge <ph name="BEGIN_NEW" />Novetat<ph name="END_NEW" /></translation> @@ -1047,7 +1044,6 @@ <translation id="6659594942844771486">Pestanya</translation> <translation id="666731172850799929">Obre a <ph name="APP_NAME" /></translation> <translation id="6671495933530132209">Copia la imatge</translation> -<translation id="6674044799624355221">Envia una petita mostra de pàgines, baixades, activitat d'extensions i informació del sistema per ajudar a detectar amenaces noves</translation> <translation id="6674571176963658787">Per iniciar la sincronització, introdueix la frase de contrasenya</translation> <translation id="6676840375528380067">Vols esborrar les dades de Chrome del dispositiu?</translation> <translation id="6684809838922667136">Millora Chrome</translation> @@ -1069,7 +1065,6 @@ <translation id="6802555630140434547">Es tancarà la finestra</translation> <translation id="6811034713472274749">Ja es pot veure la pàgina</translation> <translation id="6813446258015311409">S'ha obert Inicia la sessió a Chrome.</translation> -<translation id="6814033694018386318">Què comparteixes amb Google</translation> <translation id="6817747507826986771">Comparteix ràpidament aquesta pàgina. Mantingues premuda aquesta drecera per editar-la.</translation> <translation id="6819199143469632133">Per accedir al teu contingut de Google en diferents dispositius, inicia la sessió</translation> <translation id="6820686453637990663">CVC</translation> @@ -1164,6 +1159,7 @@ <translation id="7352939065658542140">VÍDEO</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{Comparteix 1 element seleccionat}other{Comparteix # elements seleccionats}}</translation> <translation id="7359002509206457351">Accedeix a les formes de pagament</translation> +<translation id="7363349185727752629">Guia de les teves opcions de privadesa</translation> <translation id="7375125077091615385">Tipus:</translation> <translation id="7376560087009844242">Si inclous més text d'una pàgina, pots obtenir millors resultats quan utilitzis Toca per cercar. Pots visitar la <ph name="BEGIN_LINK" />configuració<ph name="END_LINK" /> en qualsevol moment per canviar-ho.</translation> <translation id="7379900596734708416">El tema fosc per als llocs web està disponible</translation> @@ -1263,6 +1259,7 @@ <translation id="7876243839304621966">Suprimeix-ho tot</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{Tens <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> pàgina no llegida}other{Tens <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> pàgines no llegides}}</translation> <translation id="7886917304091689118">S'està executant a Chrome</translation> +<translation id="7887174313503389866">Fes una visita guiada pels controls principals de privadesa i seguretat. Per veure més possibilitats, ves a cada opció de configuració.</translation> <translation id="7887334752153342268">Duplica</translation> <translation id="789763218334337857">Com s'utilitza Chrome</translation> <translation id="7903184275147100332">Aquest procés pot tardar una estona</translation> @@ -1376,6 +1373,7 @@ <translation id="8445448999790540984">No es poden exportar les contrasenyes</translation> <translation id="8446884382197647889">Més informació</translation> <translation id="8453310803815879010">Inicia el joc del dinosaure</translation> +<translation id="8460448946170646641">Revisa els controls principals de privadesa i seguretat</translation> <translation id="8461694314515752532">Encripta les dades sincronitzades amb la teva frase de contrasenya de sincronització</translation> <translation id="8466613982764129868">Comprova que el dispositiu <ph name="TARGET_DEVICE_NAME" /> estigui connectat a Internet</translation> <translation id="8473863474539038330">Adreces i més</translation> @@ -1421,6 +1419,7 @@ <translation id="8636825310635137004">Activa la sincronització per accedir a les pestanyes dels altres dispositius que tinguis.</translation> <translation id="8641930654639604085">Prova de bloquejar els llocs web per a adults</translation> <translation id="864544049772947936">Gestiona les finestres (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">Prediu esdeveniments perillosos abans que es produeixin i t'avisa</translation> <translation id="8646467750715887511">Les pàgines només es carreguen després d'obrir-les.</translation> <translation id="8655129584991699539">Pots esborrar les dades a la configuració de Chrome</translation> <translation id="8659579665266920523">Com es poden fer cerques amb Chrome</translation> @@ -1433,7 +1432,6 @@ <translation id="867767487203716855">Propera actualització</translation> <translation id="8683039184091909753">imatge</translation> <translation id="8683081248374354009">Restableix el grup</translation> -<translation id="8683526617475118045">Avantatges que obtens</translation> <translation id="869891660844655955">Data de caducitat</translation> <translation id="8699120352855309748">No proposis traduir aquests idiomes</translation> <translation id="8712637175834984815">Entesos</translation> @@ -1517,7 +1515,6 @@ <translation id="9148126808321036104">Torna a iniciar la sessió</translation> <translation id="9158770349521403363">Comparteix només el contingut</translation> <translation id="9159716826369098114">Restaura el grup de <ph name="TAB_COUNT" /> pestanyes com un nou grup de pestanyes en segon pla.</translation> -<translation id="916446198114569890">Els URL que visites es desen al teu Compte de Google</translation> <translation id="9169507124922466868">L'historial de navegació està obert fins a la meitat</translation> <translation id="9187955620966010988">Reacció ajustada</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{S'ha comprovat fa 1 minut}other{S'ha comprovat fa # minuts}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_cs.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_cs.xtb index 941a4fb..225d788 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_cs.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_cs.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">Nenabízet překlad těchto webů</translation> <translation id="1145536944570833626">Smazat existující data.</translation> <translation id="1146678959555564648">Zapnout VR</translation> -<translation id="114825011539563458">Nejdůležitější ovládací prvky ochrany soukromí a zabezpečení na jednom místě</translation> <translation id="1149401351239820326">Měsíc vypršení platnosti</translation> <translation id="1150263420752757504">Aplikace <ph name="APP_NAME" /> se otevře v Chromu. Pokračováním vyjadřujete souhlas se <ph name="BEGIN_LINK1" />smluvními podmínkami společnosti Google<ph name="END_LINK1" /> a <ph name="BEGIN_LINK2" />dodatečnými smluvními podmínkami prohlížeče Chrome a systému ChromeOS<ph name="END_LINK2" />.</translation> <translation id="1154704303112745282">Stránka je v režimu offline nedostupná: <ph name="VIOLATED_URL" /></translation> @@ -170,6 +169,7 @@ <translation id="189358972401248634">Ostatní jazyky</translation> <translation id="1894023287452300670">Tady můžete sledovat cenu</translation> <translation id="1900260903084164610">Pokračováním vyjadřujete souhlas se <ph name="BEGIN_TOS_LINK" />smluvními podmínkami<ph name="END_TOS_LINK" />.</translation> +<translation id="1904580727789512086">Navštívené adresy URL se ukládají do vašeho účtu Google</translation> <translation id="1910950723001426294">Seznam možností sdílení je zavřený.</translation> <translation id="1918175104945982129">Uživatelské rozhraní souhlasu s hlasovým vyhledáváním pomocí Asistenta otevřené do poloviny výšky</translation> <translation id="1919130412786645364">Povolit přihlášení do Chromu</translation> @@ -194,7 +194,6 @@ <translation id="2000419248597011803">Odesílá soubory cookie a vyhledávací dotazy z adresního řádku a vyhledávacího pole a několik souborů cookie vašemu výchozímu vyhledávači</translation> <translation id="200114059308480249">Zahrnovat při vyhledávání na Googlu okolní text?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# soubor}few{# soubory}many{# souboru}other{# souborů}}</translation> -<translation id="2020309681647789787">Ve všech synchronizovaných zařízeních budete mít historii, takže budete moci pokračovat v tom, co jste dělali</translation> <translation id="2021896219286479412">Ovládání webu na celé obrazovce</translation> <translation id="2038563949887743358">Zapnout funkci Verze webu pro PC</translation> <translation id="204321170514947529">Aplikace <ph name="APP_NAME" /> má také data v Chromu</translation> @@ -280,7 +279,6 @@ <translation id="2527779675047087889">Skrýt obsah schránky</translation> <translation id="2532336938189706096">Webové zobrazení</translation> <translation id="2534155362429831547">Byly smazány položky (celkem <ph name="NUMBER_OF_ITEMS" />)</translation> -<translation id="2534582914273493287">Do Googlu se odesílají adresy URL, které navštěvujete</translation> <translation id="2536728043171574184">Prohlížíte offline kopii stránky</translation> <translation id="2546283357679194313">Soubory cookie a data webových stránek</translation> <translation id="2549516196460093976">Tento tablet můžete použít k přihlášení na počítači, na kterém se zobrazuje tento QR kód.</translation> @@ -372,7 +370,6 @@ <translation id="2996291259634659425">Vytvoření heslové fráze</translation> <translation id="2996809686854298943">Je požadována adresa URL</translation> <translation id="2997081575621687554">Když web Google požádá o soukromé předběžné načtení odkazů na stránce, Chrome stránky zašifruje a předběžně načte prostřednictvím serverů Google bez souborů cookie. To před předběžně načítaným webem skryje vaši identitu.</translation> -<translation id="3003733539450769656">Varuje vás před nebezpečnými událostmi dříve, než k nim dojde</translation> <translation id="3006881078666935414">Žádné údaje o využití</translation> <translation id="301080557829842765">Průvodce ochranou osobních údajů</translation> <translation id="3016635187733453316">Zkontrolujte, zda je toto zařízení připojeno k internetu</translation> @@ -432,6 +429,7 @@ <translation id="3284510035090979597">Proaktivní nápověda</translation> <translation id="3285080554353377245">Výuková videa o používání Chromu</translation> <translation id="3288003805934695103">Načíst stránku znovu</translation> +<translation id="3290249595466894471">Odesílá také malý vzorek stránek, stažených souborů, rozšíření, aktivity a informací o systému a pomáhá tak odhalovat nové hrozby</translation> <translation id="3297344142967351106">Hlasová asistence</translation> <translation id="3303414029551471755">Chcete pokračovat ke stažení obsahu?</translation> <translation id="3334729583274622784">Změnit příponu souboru?</translation> @@ -637,7 +635,6 @@ <translation id="4558311620361989323">Zkratky webových stránek</translation> <translation id="4561730552726921821">Registrace proběhla úspěšně</translation> <translation id="4561979708150884304">Žádné připojení</translation> -<translation id="4562008740775511591">Chrome poskytuje rozumné výchozí nastavení. Můžete si ho však přizpůsobit podle svých zvyků při procházení</translation> <translation id="4565377596337484307">Skrýt heslo</translation> <translation id="4572422548854449519">Přihlaste se ke spravovanému účtu</translation> <translation id="4576892426230499203">Zkuste jiný způsob ověření</translation> @@ -919,7 +916,6 @@ <translation id="604996488070107836">Stažení souboru <ph name="FILE_NAME" /> se nezdařilo z důvodu neznámé chyby.</translation> <translation id="605721222689873409">RR</translation> <translation id="6059830886158432458">Zde můžete ovládat své příběhy a aktivity</translation> -<translation id="6069177176307973611">Kontrola nastavení ochrany soukromí a zabezpečení</translation> <translation id="6070730414166672373">Kontaktování banky\u2026</translation> <translation id="6085886413119427067">Určuje způsob připojení k webům přes zabezpečené připojení</translation> <translation id="6091413777268123602">Zkušební technologie Privacy Sandbox webům umožňují poskytovat stejné prostředí a využívat při tom méně vašich dat a údajů. To znamená, že vaše soukromí bude lépe chráněno a bude méně často docházet ke sledování napříč weby. Nové zkušební funkce přidáme hned, jak budou připravené k testování.</translation> @@ -1040,6 +1036,7 @@ <translation id="6641780377503683465">Odstranit zájem <ph name="INTEREST" /></translation> <translation id="6643016212128521049">Vymazat</translation> <translation id="6645629752388991326">Určete, která zařízení se mohou přihlásit s použitím tohoto zařízení jako bezpečnostního klíče.</translation> +<translation id="6647441008198474441">Navštívené adresy URL se odesílají do Googlu, aby mohl předvídat, které weby byste mohli navštívit jako další</translation> <translation id="6648459603387803038">Administrátor může nastavení prohlížeče vzdáleně změnit. Aktivita na tomto zařízení může být spravována také mimo Chrome.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" /> a <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> další}few{<ph name="CONTACT_PREVIEW" /> a <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> další}many{<ph name="CONTACT_PREVIEW" /> a <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> dalšího}other{<ph name="CONTACT_PREVIEW" /> a <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> dalších}}</translation> <translation id="6649642165559792194">Zobrazit náhled obrázku <ph name="BEGIN_NEW" />Nové<ph name="END_NEW" /></translation> @@ -1047,7 +1044,6 @@ <translation id="6659594942844771486">Karta</translation> <translation id="666731172850799929">Otevřít v aplikaci <ph name="APP_NAME" /></translation> <translation id="6671495933530132209">Zkopírovat obrázek</translation> -<translation id="6674044799624355221">Odesílá malý vzorek stránek, stažených souborů, rozšíření, aktivity a informací o systému a pomáhá tak odhalovat nové hrozby</translation> <translation id="6674571176963658787">Pokud chcete spustit synchronizaci, zadejte heslovou frázi</translation> <translation id="6676840375528380067">Vymazat z tohoto zařízení data prohlížeče Chrome?</translation> <translation id="6684809838922667136">Vylepšujeme Chrome</translation> @@ -1069,7 +1065,6 @@ <translation id="6802555630140434547">Okno se zavře</translation> <translation id="6811034713472274749">Stránka je připravená k zobrazení</translation> <translation id="6813446258015311409">Přihlášení do Chromu, otevřeno.</translation> -<translation id="6814033694018386318">Co sdílíte s Googlem</translation> <translation id="6817747507826986771">Rychle tuto stránku sdílet. Pokud tuto zkratku chcete upravit, podržte ji.</translation> <translation id="6819199143469632133">Pokud své věci ve službách Google chcete mít na všech zařízeních, přihlaste se</translation> <translation id="6820686453637990663">Bezpečnostní kód platební karty (CVC)</translation> @@ -1164,6 +1159,7 @@ <translation id="7352939065658542140">VIDEO</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{Sdílet 1 vybranou položku}few{Sdílet # vybrané položky}many{Sdílet # vybrané položky}other{Sdílet # vybraných položek}}</translation> <translation id="7359002509206457351">Poskytnout přístup k platební metodám</translation> +<translation id="7363349185727752629">Průvodce možnostmi ochrany soukromí</translation> <translation id="7375125077091615385">Typ:</translation> <translation id="7376560087009844242">Zahrnutím většího množství textu ze stránky můžete pomocí Vyhledání klepnutím získat lepší výsledky. Tuto možnost můžete v <ph name="BEGIN_LINK" />nastavení<ph name="END_LINK" /> kdykoliv změnit.</translation> <translation id="7379900596734708416">Pro weby je k dispozici tmavý motiv</translation> @@ -1263,6 +1259,7 @@ <translation id="7876243839304621966">Odstranit vše</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{Máte <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> nepřečtenou stránku}few{Máte <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> nepřečtené stránky}many{Máte <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> nepřečtené stránky}other{Máte <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> nepřečtených stránek}}</translation> <translation id="7886917304091689118">Spuštěno v Chromu</translation> +<translation id="7887174313503389866">Podívejte se na komentovanou prohlídku klíčových ovládacích prvků ochrany soukromí a zabezpečení. Pro další možnosti přejděte na jednotlivá nastavení.</translation> <translation id="7887334752153342268">Duplikovat</translation> <translation id="789763218334337857">Práce s prohlížečem Chrome</translation> <translation id="7903184275147100332">Může to chvíli trvat</translation> @@ -1376,6 +1373,7 @@ <translation id="8445448999790540984">Hesla se nepodařilo exportovat</translation> <translation id="8446884382197647889">Další informace</translation> <translation id="8453310803815879010">Spustit dinosauří hru</translation> +<translation id="8460448946170646641">Zkontrolujte klíčové ovládací prvky ochrany soukromí a zabezpečení</translation> <translation id="8461694314515752532">Šifrovat synchronizovaná data pomocí vlastní heslové fráze pro synchronizaci</translation> <translation id="8466613982764129868">Zkontrolujte, zda je zařízení <ph name="TARGET_DEVICE_NAME" /> připojené k internetu</translation> <translation id="8473863474539038330">Adresy a další</translation> @@ -1421,6 +1419,7 @@ <translation id="8636825310635137004">Chcete-li získat přístup ke kartám ze svých ostatních zařízení, zapněte synchronizaci.</translation> <translation id="8641930654639604085">Pokusit se blokovat weby pouze pro dospělé</translation> <translation id="864544049772947936">Spravovat okna (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">Předvídá nebezpečné události a upozorňuje vás na ně ještě předtím, než k nim dojde</translation> <translation id="8646467750715887511">Stránky se načítají až poté, co je otevřete.</translation> <translation id="8655129584991699539">Data můžete vymazat v nastavení Chromu</translation> <translation id="8659579665266920523">Vyhledávání v Chromu</translation> @@ -1433,7 +1432,6 @@ <translation id="867767487203716855">Další aktualizace</translation> <translation id="8683039184091909753">obrázek</translation> <translation id="8683081248374354009">Resetovat skupinu</translation> -<translation id="8683526617475118045">Co získáte</translation> <translation id="869891660844655955">Datum vypršení platnosti</translation> <translation id="8699120352855309748">Nenabízet překlad do těchto jazyků</translation> <translation id="8712637175834984815">Hotovo</translation> @@ -1517,7 +1515,6 @@ <translation id="9148126808321036104">Znovu přihlásit</translation> <translation id="9158770349521403363">Sdílet pouze obsah</translation> <translation id="9159716826369098114">Obnovit skupinu <ph name="TAB_COUNT" /> karet jako novou skupinu karet na pozadí.</translation> -<translation id="916446198114569890">Navštívené adresy URL se ukládají do vašeho účtu Google</translation> <translation id="9169507124922466868">Historie navigace je otevřená na půlce</translation> <translation id="9187955620966010988">Reakce byla upravena</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{Zkontrolováno před 1 minutou}few{Zkontrolováno před # minutami}many{Zkontrolováno před # minuty}other{Aktualizováno před # minutami}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_cy.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_cy.xtb index be6e3c0..39e0a5a2 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_cy.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_cy.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">Peidiwch â chynnig cyfieithu'r gwefannau hyn</translation> <translation id="1145536944570833626">Dileu'r data presennol.</translation> <translation id="1146678959555564648">Dechrau VR</translation> -<translation id="114825011539563458">Y rheoliadau preifatrwydd a diogelwch pwysicaf mewn un lle</translation> <translation id="1149401351239820326">Mis darfod</translation> <translation id="1150263420752757504">Bydd <ph name="APP_NAME" /> yn agor yn Chrome. Drwy barhau, rydych yn cytuno i <ph name="BEGIN_LINK1" />Delerau Gwasanaeth Google<ph name="END_LINK1" />, a <ph name="BEGIN_LINK2" />Thelerau Gwasanaeth Ychwanegol Google Chrome a ChromeOS<ph name="END_LINK2" />.</translation> <translation id="1154704303112745282">Nid yw'r dudalen ar gael all-lein: <ph name="VIOLATED_URL" /></translation> @@ -170,6 +169,7 @@ <translation id="189358972401248634">Ieithoedd eraill</translation> <translation id="1894023287452300670">Dilyn y pris yma</translation> <translation id="1900260903084164610">Drwy barhau, rydych yn cytuno i'r <ph name="BEGIN_TOS_LINK" />Telerau Gwasanaeth<ph name="END_TOS_LINK" />.</translation> +<translation id="1904580727789512086">Mae'r cyfeiriadau URL rydych yn ymweld â nhw wedi'u cadw i'ch Cyfrif Google</translation> <translation id="1910950723001426294">Mae'r rhestr o ddewisiadau rhannu ar gau.</translation> <translation id="1918175104945982129">Agorwyd UI cydsyniad chwilio â llais Assistant ar hanner uchder</translation> <translation id="1919130412786645364">Caniatáu mewngofnodi i Chrome</translation> @@ -194,7 +194,6 @@ <translation id="2000419248597011803">Yn anfon rhai cwcis a chwiliadau o'r bar cyfeiriadau a'r blwch chwilio i'ch peiriant chwilio diofyn</translation> <translation id="200114059308480249">Cynnwys testun o'i amgylch mewn chwiliadau Google?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# Ffeil}zero{# Ffeil}two{# Ffeil}few{# Ffeil}many{# Ffeil}other{# Ffeil}}</translation> -<translation id="2020309681647789787">Bydd gennych eich hanes ar eich holl ddyfeisiau sydd wedi'u cysoni, felly gallwch barhau â'r hyn yr oeddech yn ei wneud</translation> <translation id="2021896219286479412">Rheolyddion gwefan sgrîn lawn</translation> <translation id="2038563949887743358">Troi Gofyn am wefan bwrdd gwaith ymlaen</translation> <translation id="204321170514947529">Mae gan <ph name="APP_NAME" /> ddata yn Chrome hefyd</translation> @@ -280,7 +279,6 @@ <translation id="2527779675047087889">Cuddio cynnwys y clipfwrdd</translation> <translation id="2532336938189706096">Gwedd We</translation> <translation id="2534155362429831547">Cafodd <ph name="NUMBER_OF_ITEMS" /> eitem eu dileu</translation> -<translation id="2534582914273493287">Anfonir cyfeiriadau URL rydych yn ymweld â nhw at Google</translation> <translation id="2536728043171574184">Wrthi'n edrych ar gopi all-lein o'r dudalen hon</translation> <translation id="2546283357679194313">Cwcis a data gwefan</translation> <translation id="2549516196460093976">Gallwch ddefnyddio'r llechen hon i fewngofnodi ar y cyfrifiadur sy'n dangos y cod QR hwn.</translation> @@ -372,7 +370,6 @@ <translation id="2996291259634659425">Crëwch gyfrinymadrodd</translation> <translation id="2996809686854298943">Angen URL</translation> <translation id="2997081575621687554">Pan fydd gwefan Google yn gofyn i raglwytho dolenni ar eu tudalen yn breifat, mae Chrome yn amgryptio ac yn rhaglwytho tudalennau drwy weinyddion Google heb gwcis. Mae hyn yn cuddio'ch hunaniaeth o'r wefan sydd wedi'i rhaglwytho.</translation> -<translation id="3003733539450769656">Yn eich rhybuddio am ddigwyddiadau peryglus cyn iddynt ddigwydd</translation> <translation id="3006881078666935414">Dim data defnydd</translation> <translation id="301080557829842765">Canllaw preifatrwydd</translation> <translation id="3016635187733453316">Gwnewch yn siŵr bod y ddyfais hon wedi'i chysylltu â'r rhyngrwyd</translation> @@ -432,6 +429,7 @@ <translation id="3284510035090979597">Cymorth Rhagweithiol</translation> <translation id="3285080554353377245">Fideos am sut i ddefnyddio Chrome</translation> <translation id="3288003805934695103">Wrthi'n ail-lwytho'r dudalen</translation> +<translation id="3290249595466894471">Hefyd yn anfon sampl fach o dudalennau, lawrlwythiadau, gweithgarwch estyniadau, a gwybodaeth system i helpu i ddarganfod bygythiadau newydd</translation> <translation id="3297344142967351106">Cymorth llais</translation> <translation id="3303414029551471755">Parhau i lawrlwytho'r cynnwys?</translation> <translation id="3334729583274622784">Newid estyniad y ffeil?</translation> @@ -637,7 +635,6 @@ <translation id="4558311620361989323">Llwybrau byr tudalen we</translation> <translation id="4561730552726921821">Wedi cofrestru'n llwyddiannus</translation> <translation id="4561979708150884304">Dim cysylltiad</translation> -<translation id="4562008740775511591">Mae Chrome yn darparu gosodiadau diofyn rhesymol, ond gallwch ei bersonoleiddio i weddu orau i'ch arfer pori</translation> <translation id="4565377596337484307">Cuddio'r cyfrinair</translation> <translation id="4572422548854449519">Mewngofnodi i gyfrif a reolir</translation> <translation id="4576892426230499203">Rhowch gynnig ar opsiwn dilysu arall</translation> @@ -919,7 +916,6 @@ <translation id="604996488070107836">Wedi methu â lawrlwytho <ph name="FILE_NAME" /> oherwydd gwall anhysbys.</translation> <translation id="605721222689873409">BB</translation> <translation id="6059830886158432458">Rheoli eich straeon a'ch gweithgarwch yma</translation> -<translation id="6069177176307973611">Adolygu gosodiadau diogelwch a phreifatrwydd</translation> <translation id="6070730414166672373">Wrthi'n cysylltu â'ch banc\u2026</translation> <translation id="6085886413119427067">Yn pennu sut i gysylltu â gwefannau dros gysylltiad diogel</translation> <translation id="6091413777268123602">Gyda phrofion Privacy Sandbox, gall gwefannau gyflawni'r un profiad pori gan ddefnyddio llai o'ch data. Mae hynny'n golygu mwy preifatrwydd i chi a llai o olrhain traws-wefan. Byddwn yn ychwanegu profion newydd pan fyddant yn barod i'w profi.</translation> @@ -1040,6 +1036,7 @@ <translation id="6641780377503683465">Tynnu <ph name="INTEREST" /></translation> <translation id="6643016212128521049">Clirio</translation> <translation id="6645629752388991326">Rheoli pa ddyfeisiau all fewngofnodi drwy ddefnyddio'r ddyfais hon fel allwedd ddiogelwch.</translation> +<translation id="6647441008198474441">Anfonir cyfeiriadau URL rydych yn ymweld â nhw at Google i ragfynegi pa wefannau y mae'n bosib y byddwch yn ymweld â nhw nesaf</translation> <translation id="6648459603387803038">Gall eich gweinyddwr newid gosodiadau eich porwr o bell. Gellir rheoli gweithgarwch ar y ddyfais hon y tu allan i Chrome hefyd.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 ac <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> arall}zero{<ph name="CONTACT_PREVIEW" />\u2026 a <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> arall}two{<ph name="CONTACT_PREVIEW" />\u2026 a <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> arall}few{<ph name="CONTACT_PREVIEW" />\u2026 a <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> arall}many{<ph name="CONTACT_PREVIEW" />\u2026 a <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> arall}other{<ph name="CONTACT_PREVIEW" />\u2026 a <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> arall}}</translation> <translation id="6649642165559792194">Rhagweld y ddelwedd <ph name="BEGIN_NEW" />Newydd<ph name="END_NEW" /></translation> @@ -1047,7 +1044,6 @@ <translation id="6659594942844771486">Tab</translation> <translation id="666731172850799929">Agor yn <ph name="APP_NAME" /></translation> <translation id="6671495933530132209">Copïo’r llun</translation> -<translation id="6674044799624355221">Yn anfon sampl fach o dudalennau, lawrlwythiadau, gweithgarwch estyniadau, a gwybodaeth system i helpu i ddarganfod bygythiadau newydd</translation> <translation id="6674571176963658787">I ddechrau cysoni, rhowch eich cyfrinymadrodd</translation> <translation id="6676840375528380067">Clirio'ch data Chrome o'r ddyfais hon?</translation> <translation id="6684809838922667136">Gwella Chrome</translation> @@ -1069,7 +1065,6 @@ <translation id="6802555630140434547">Bydd y ffenestr yn cael ei chau</translation> <translation id="6811034713472274749">Mae'r dudalen yn barod i'w gweld</translation> <translation id="6813446258015311409">Mewngofnodi i Chrome, wedi'i agor.</translation> -<translation id="6814033694018386318">Yr hyn rydych yn ei rannu gyda Google</translation> <translation id="6817747507826986771">Rhannu'r dudalen hon yn gyflym. I olygu'r llwybr byr hwn, cyffwrddwch a daliwch.</translation> <translation id="6819199143469632133">I gael pethau Google ar draws dyfeisiau, mewngofnodwch</translation> <translation id="6820686453637990663">CVC</translation> @@ -1164,6 +1159,7 @@ <translation id="7352939065658542140">FIDEO</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{Rhannu 1 eitem a ddewisir}zero{Rhannu # eitem a ddewisir}two{Rhannu # eitem a ddewisir}few{Rhannu # eitem a ddewisir}many{Rhannu # eitem a ddewisir}other{Rhannu # eitem a ddewisir}}</translation> <translation id="7359002509206457351">Cael mynediad at ddulliau talu</translation> +<translation id="7363349185727752629">Canllaw o'ch dewisiadau preifatrwydd</translation> <translation id="7375125077091615385">Math:</translation> <translation id="7376560087009844242">Drwy gynnwys mwy o destun tudalen, gallech weld canlyniadau gwell wrth ddefnyddio Cyffwrdd i Chwilio. I newid hyn, gallwch bob amser fynd i'r <ph name="BEGIN_LINK" />gosodiadau<ph name="END_LINK" />.</translation> <translation id="7379900596734708416">Mae'r thema dywyll ar gyfer gwefannau ar gael</translation> @@ -1263,6 +1259,7 @@ <translation id="7876243839304621966">Tynnu pob un</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{Mae gennych <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> dudalen sydd heb ei darllen}zero{Mae gennych <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> tudalen sydd heb eu darllen}two{Mae gennych <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> dudalen sydd heb eu darllen}few{Mae gennych <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> tudalen sydd heb eu darllen}many{Mae gennych <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> thudalen sydd heb eu darllen}other{Mae gennych <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> tudalen sydd heb eu darllen}}</translation> <translation id="7886917304091689118">Yn Rhedeg yn Chrome</translation> +<translation id="7887174313503389866">Cymerwch daith dywysedig o reolyddion diogelwch a phreifatrwydd allweddol. Am ragor o opsiynau, ewch i osodiadau unigol.</translation> <translation id="7887334752153342268">Dyblygu</translation> <translation id="789763218334337857">Sut i ddefnyddio Chrome</translation> <translation id="7903184275147100332">Gall hyn gymryd munud</translation> @@ -1376,6 +1373,7 @@ <translation id="8445448999790540984">Methu ag allforio cyfrineiriau</translation> <translation id="8446884382197647889">Dysgu rhagor</translation> <translation id="8453310803815879010">Dechrau'r Gêm Dino</translation> +<translation id="8460448946170646641">Adolygu rheolyddion diogelwch a phreifatrwydd allweddol</translation> <translation id="8461694314515752532">Amgryptio data sydd wedi'u cysoni gyda'ch cyfrinymadrodd cysoni eich hun</translation> <translation id="8466613982764129868">Gwnewch yn siŵr bod <ph name="TARGET_DEVICE_NAME" /> wedi'i gysylltu â'r rhyngrwyd</translation> <translation id="8473863474539038330">Cyfeiriadau a rhagor</translation> @@ -1421,6 +1419,7 @@ <translation id="8636825310635137004">I gael eich tabiau o'ch dyfeisiau eraill, trowch gysoni ymlaen.</translation> <translation id="8641930654639604085">Ceisiwch rwystro gwefannau oedolion</translation> <translation id="864544049772947936">Rheoli ffenestri (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">Yn rhagweld ac yn eich rhybuddio am ddigwyddiadau peryglus cyn iddynt ddigwydd</translation> <translation id="8646467750715887511">Dim ond ar ôl i chi eu hagor y mae tudalennau'n llwytho.</translation> <translation id="8655129584991699539">Gallwch glirio'r data yn Gosodiadau Chrome</translation> <translation id="8659579665266920523">Sut i chwilio gyda Chrome</translation> @@ -1433,7 +1432,6 @@ <translation id="867767487203716855">Diweddariad nesaf</translation> <translation id="8683039184091909753">llun</translation> <translation id="8683081248374354009">Ailosod grŵp</translation> -<translation id="8683526617475118045">Beth gewch chi</translation> <translation id="869891660844655955">Dyddiad darfod</translation> <translation id="8699120352855309748">Peidiwch â chynnig cyfieithu'r ieithoedd hyn</translation> <translation id="8712637175834984815">Iawn</translation> @@ -1517,7 +1515,6 @@ <translation id="9148126808321036104">Mewngofnodwch eto</translation> <translation id="9158770349521403363">Rhannu cynnwys yn unig</translation> <translation id="9159716826369098114">Adfer grŵp tabiau o <ph name="TAB_COUNT" /> o dabiau fel grŵp tabiau cefndirol newydd.</translation> -<translation id="916446198114569890">Mae'r cyfeiriadau URL rydych yn ymweld â nhw wedi'u cadw i'ch cyfrif Google</translation> <translation id="9169507124922466868">Mae hanes llywio wedi'i hanner agor</translation> <translation id="9187955620966010988">Wedi addasu ymateb</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{Gwiriwyd 1 funud yn ôl}zero{Gwiriwyd # munud yn ôl}two{Gwiriwyd # funud yn ôl}few{Gwiriwyd # munud yn ôl}many{Gwiriwyd # munud yn ôl}other{Gwiriwyd # munud yn ôl}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_da.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_da.xtb index 7ac33efe..5ba0e38 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_da.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_da.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">Tilbyd ikke at oversætte disse websites</translation> <translation id="1145536944570833626">Slet eksisterende data.</translation> <translation id="1146678959555564648">Angiv VR</translation> -<translation id="114825011539563458">De vigtigste privatlivs- og sikkerhedsindstillinger samlet på ét sted</translation> <translation id="1149401351239820326">Udløbsmåned</translation> <translation id="1150263420752757504"><ph name="APP_NAME" /> åbnes i Chrome. Når du fortsætter, accepterer du <ph name="BEGIN_LINK1" />Googles servicevilkår<ph name="END_LINK1" /> og de <ph name="BEGIN_LINK2" />yderligere servicevilkår for Google Chrome og Chrome OS<ph name="END_LINK2" />.</translation> <translation id="1154704303112745282">Siden er ikke tilgængelig offline: <ph name="VIOLATED_URL" /></translation> @@ -170,6 +169,7 @@ <translation id="189358972401248634">Andre sprog</translation> <translation id="1894023287452300670">Hold øje med prisen her</translation> <translation id="1900260903084164610">Ved at fortsætte accepterer du <ph name="BEGIN_TOS_LINK" />servicevilkårene<ph name="END_TOS_LINK" />.</translation> +<translation id="1904580727789512086">De webadresser, du besøger, gemmes på din Google-konto</translation> <translation id="1910950723001426294">Listen over delingsindstillinger er lukket.</translation> <translation id="1918175104945982129">Brugerfladen for samtykke i forbindelse med stemmesøgning i Assistent er åbnet i halv højde</translation> <translation id="1919130412786645364">Tillad login i Chrome</translation> @@ -194,7 +194,6 @@ <translation id="2000419248597011803">Sender visse cookies og søgninger fra adresselinjen og søgefeltet til din standardsøgemaskine</translation> <translation id="200114059308480249">Vil du medtage omgivende tekst i Google-søgninger?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# fil}one{# fil}other{# filer}}</translation> -<translation id="2020309681647789787">Din historik er på alle synkroniserede enheder, så du kan fortsætte med det, du var i gang med</translation> <translation id="2021896219286479412">Kontrolelementer på website i fuld skærm</translation> <translation id="2038563949887743358">Slå computerversionen af websitet til</translation> <translation id="204321170514947529"><ph name="APP_NAME" /> har også data i Chrome</translation> @@ -280,7 +279,6 @@ <translation id="2527779675047087889">Skjul indhold i udklipsholderen</translation> <translation id="2532336938189706096">Webvisning</translation> <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> elementer blev slettet</translation> -<translation id="2534582914273493287">Webadresser, du besøger, sendes til Google</translation> <translation id="2536728043171574184">Du ser en offlinekopi af denne side</translation> <translation id="2546283357679194313">Cookies og websitedata</translation> <translation id="2549516196460093976">Du kan bruge denne tablet til at logge ind på den computer, der viser QR-koden.</translation> @@ -372,7 +370,6 @@ <translation id="2996291259634659425">Opret adgangssætning</translation> <translation id="2996809686854298943">En webadresse er påkrævet</translation> <translation id="2997081575621687554">Når et Google-website anmoder om at forudindlæse links privat på det pågældende website, krypterer og forudindlæser Chrome sider via Googles servere uden cookies. På denne måde skjules din identitet fra det forudindlæste website.</translation> -<translation id="3003733539450769656">Advarer dig om skadelige hændelser, før de opstår</translation> <translation id="3006881078666935414">Ingen brugsdata</translation> <translation id="301080557829842765">Guide til privatlivsindstillinger</translation> <translation id="3016635187733453316">Sørg for, at din enhed har forbindelse til internettet</translation> @@ -432,6 +429,7 @@ <translation id="3284510035090979597">Proaktiv hjælp</translation> <translation id="3285080554353377245">Videoer om, hvordan du bruger Chrome</translation> <translation id="3288003805934695103">Genindlæse siden</translation> +<translation id="3290249595466894471">Der sendes også et mindre antal sider, downloads, udvidelsesaktivitet og systemoplysninger for at identificere nye trusler</translation> <translation id="3297344142967351106">Stemmesøgning</translation> <translation id="3303414029551471755">Vil du fortsætte og downloade indholdet?</translation> <translation id="3334729583274622784">Vil du ændre filtypen?</translation> @@ -637,7 +635,6 @@ <translation id="4558311620361989323">Genveje på websider</translation> <translation id="4561730552726921821">Tilmeldingen blev fuldført</translation> <translation id="4561979708150884304">Der er ingen forbindelse</translation> -<translation id="4562008740775511591">Chrome har nyttige standardindstillinger, men du kan tilpasse dem, så de passer til dine browserbehov</translation> <translation id="4565377596337484307">Skjul adgangskode</translation> <translation id="4572422548854449519">Log ind på managerstyret konto</translation> <translation id="4576892426230499203">Prøv en anden bekræftelsesmulighed</translation> @@ -919,7 +916,6 @@ <translation id="604996488070107836"><ph name="FILE_NAME" /> kunne ikke downloades, da der opstod en ukendt fejl.</translation> <translation id="605721222689873409">ÅÅ</translation> <translation id="6059830886158432458">Administrer dine historier og din aktivitet her</translation> -<translation id="6069177176307973611">Gennemgå privatlivs- og sikkerhedsindstillinger</translation> <translation id="6070730414166672373">Kontakter din bank\u2026</translation> <translation id="6085886413119427067">Bestemmer, hvordan der skal oprettes forbindelse til websites via en sikker forbindelse</translation> <translation id="6091413777268123602">Takket være Privacy Sandbox-prøveperioder kan websites levere den samme browseroplevelse uden at bruge så mange af dine data. Det vil sige, at dine personlige oplysninger beskyttes bedre, og at du spores mindre på tværs af websites. Vi tilføjer nye prøveperioder, når de er klar til at blive testet.</translation> @@ -1040,6 +1036,7 @@ <translation id="6641780377503683465">Fjern <ph name="INTEREST" /></translation> <translation id="6643016212128521049">Ryd</translation> <translation id="6645629752388991326">Styr, hvilke enheder der kan logge ind, ved at bruge denne enhed som en sikkerhedsnøgle.</translation> +<translation id="6647441008198474441">De websites, du besøger, sendes til Google for at forudsige, hvilke websites du kunne have lyst til at besøge som det næste</translation> <translation id="6648459603387803038">Din administrator kan ændre konfigurationen af din browser via fjernadgang. Aktivitet på denne enhed administreres muligvis også uden for Chrome.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 og <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> mere}one{<ph name="CONTACT_PREVIEW" />\u2026 og <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> mere}other{<ph name="CONTACT_PREVIEW" />\u2026 og <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> mere}}</translation> <translation id="6649642165559792194">Se forhåndsvisning af <ph name="BEGIN_NEW" />Ny<ph name="END_NEW" /></translation> @@ -1047,7 +1044,6 @@ <translation id="6659594942844771486">Fane</translation> <translation id="666731172850799929">Åbn i <ph name="APP_NAME" /></translation> <translation id="6671495933530132209">Kopiér billede</translation> -<translation id="6674044799624355221">Der sendes et mindre antal sider, downloads, udvidelsesaktivitet og systemoplysninger for at identificere nye trusler</translation> <translation id="6674571176963658787">Angiv din adgangssætning for at starte synkroniseringen</translation> <translation id="6676840375528380067">Vil du rydde dine Chrome-data på denne enhed?</translation> <translation id="6684809838922667136">Gør Chrome bedre</translation> @@ -1069,7 +1065,6 @@ <translation id="6802555630140434547">Vinduet lukkes</translation> <translation id="6811034713472274749">Siden kan nu ses</translation> <translation id="6813446258015311409">Log ind i Chrome, åben.</translation> -<translation id="6814033694018386318">Det deler du med Google</translation> <translation id="6817747507826986771">Del hurtigt denne side. Hold fingeren nede for at redigere denne genvej.</translation> <translation id="6819199143469632133">Log ind for at få adgang til dine Google-ting på alle enheder</translation> <translation id="6820686453637990663">CVC</translation> @@ -1164,6 +1159,7 @@ <translation id="7352939065658542140">VIDEO</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{Del 1 valgt element}one{Del # valgt element}other{Del # valgte elementer}}</translation> <translation id="7359002509206457351">Adgang til betalingsmetoder</translation> +<translation id="7363349185727752629">En guide til dine privatlivsindstillinger</translation> <translation id="7375125077091615385">Type:</translation> <translation id="7376560087009844242">Medtag mere af sideteksten for at se bedre resultater, når du bruger Tryk for at søge. Du kan altid gå til <ph name="BEGIN_LINK" />indstillingerne<ph name="END_LINK" /> for at ændre dette.</translation> <translation id="7379900596734708416">Mørkt tema på websites er tilgængeligt</translation> @@ -1263,6 +1259,7 @@ <translation id="7876243839304621966">Fjern alt</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{Du har <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> ulæst side}one{Du har <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> ulæst side}other{Du har <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> ulæste sider}}</translation> <translation id="7886917304091689118">Kører i Chrome</translation> +<translation id="7887174313503389866">Få en rundvisning i vigtige privatlivs- og sikkerhedsindstillinger. Gå til de individuelle indstillinger for at se flere valgmuligheder.</translation> <translation id="7887334752153342268">Dupliker</translation> <translation id="789763218334337857">Sådan bruger du Chrome</translation> <translation id="7903184275147100332">Dette kan tage et par minutter</translation> @@ -1376,6 +1373,7 @@ <translation id="8445448999790540984">Der kan ikke eksporteres adgangskoder</translation> <translation id="8446884382197647889">Få flere oplysninger</translation> <translation id="8453310803815879010">Start Dino-spillet</translation> +<translation id="8460448946170646641">Gennemgå vigtige privatlivs- og sikkerhedsindstillinger</translation> <translation id="8461694314515752532">Kryptér synkroniserede data med din egen adgangssætning til synkronisering</translation> <translation id="8466613982764129868">Sørg for, at <ph name="TARGET_DEVICE_NAME" /> har forbindelse til internettet</translation> <translation id="8473863474539038330">Adresser m.m.</translation> @@ -1421,6 +1419,7 @@ <translation id="8636825310635137004">Aktivér synkronisering for at få adgang til dine faner på dine andre enheder.</translation> <translation id="8641930654639604085">Prøv at blokere websites med indhold for voksne</translation> <translation id="864544049772947936">Administrer vinduer (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">Forudser og advarer dig om skadelige hændelser, før de opstår</translation> <translation id="8646467750715887511">Sider indlæses først, efter du har åbnet dem.</translation> <translation id="8655129584991699539">Du kan rydde dataene i Chrome-indstillingerne</translation> <translation id="8659579665266920523">Sådan søger du i Chrome</translation> @@ -1433,7 +1432,6 @@ <translation id="867767487203716855">Næste opdatering</translation> <translation id="8683039184091909753">billede</translation> <translation id="8683081248374354009">Nulstil gruppe</translation> -<translation id="8683526617475118045">Det får du</translation> <translation id="869891660844655955">Udløbsdato</translation> <translation id="8699120352855309748">Tilbyd ikke at oversætte disse sprog</translation> <translation id="8712637175834984815">Forstået</translation> @@ -1517,7 +1515,6 @@ <translation id="9148126808321036104">Log ind igen</translation> <translation id="9158770349521403363">Del kun indhold</translation> <translation id="9159716826369098114">Gendan fanegruppen med <ph name="TAB_COUNT" /> faner som en ny fanegruppe i baggrunden.</translation> -<translation id="916446198114569890">De webadresser, du besøger, gemmes på din Google-konto</translation> <translation id="9169507124922466868">Navigationshistorikken er åbnet halvt</translation> <translation id="9187955620966010988">Reaktionen blev justeret</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{Tjekket for 1 minut siden}one{Tjekket for # minut siden}other{Tjekket for # minutter siden}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_de.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_de.xtb index 38e4b206..578eb45 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_de.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_de.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">Übersetzen dieser Websites nicht anbieten</translation> <translation id="1145536944570833626">Vorhandene Daten löschen</translation> <translation id="1146678959555564648">VR aktivieren</translation> -<translation id="114825011539563458">Die wichtigsten Datenschutz- und Sicherheitseinstellungen an einem Ort</translation> <translation id="1149401351239820326">Ablaufmonat</translation> <translation id="1150263420752757504"><ph name="APP_NAME" /> wird in Chrome geöffnet. Wenn du fortfährst, stimmst du den <ph name="BEGIN_LINK1" />Nutzungsbedingungen von Google<ph name="END_LINK1" /> und den <ph name="BEGIN_LINK2" />zusätzlichen Nutzungsbedingungen für Google Chrome und Chrome OS<ph name="END_LINK2" /> zu.</translation> <translation id="1154704303112745282">Seite offline nicht verfügbar: <ph name="VIOLATED_URL" /></translation> @@ -108,6 +107,7 @@ <translation id="1488775391433859242">Du kannst dich über dieses Smartphone auf dem Computer anmelden, auf dem dieser QR-Code angezeigt wird.</translation> <translation id="1492417797159476138">Du hast diesen Nutzernamen für diese Website bereits gespeichert</translation> <translation id="1493287004536771723">Du folgst „<ph name="SITE_NAME" />“</translation> +<translation id="1502010315804028179">Damit du deine Passwörter verwalten kannst, musst du die Google Play-Dienste aktualisieren</translation> <translation id="1506061864768559482">Suchmaschine</translation> <translation id="1513352483775369820">Lesezeichen und Webprotokoll</translation> <translation id="1513814250881909472">Synchronisieren, um deine Tabs von anderen Geräten abzurufen</translation> @@ -169,6 +169,7 @@ <translation id="189358972401248634">Sonstige Sprachen</translation> <translation id="1894023287452300670">Hier den Preis beobachten</translation> <translation id="1900260903084164610">Wenn du fortfährst, akzeptierst du damit die <ph name="BEGIN_TOS_LINK" />Nutzungsbedingungen<ph name="END_TOS_LINK" />.</translation> +<translation id="1904580727789512086">Die von dir besuchten URLs werden in deinem Google-Konto gespeichert</translation> <translation id="1910950723001426294">Die Liste der Freigabeoptionen ist geschlossen.</translation> <translation id="1918175104945982129">Benutzeroberfläche für die Einwilligung in die Sprachsuche von Assistant halb geöffnet</translation> <translation id="1919130412786645364">Anmeldung in Chrome zulassen</translation> @@ -193,7 +194,6 @@ <translation id="2000419248597011803">Suchanfragen, die in die Adressleiste und das Suchfeld eingegeben wurden, sowie einige Cookies werden an deine Standardsuchmaschine gesendet</translation> <translation id="200114059308480249">Umgebenden Text in Google-Suchanfragen einschließen?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# Datei}other{# Dateien}}</translation> -<translation id="2020309681647789787">Du siehst deinen Verlauf auf allen synchronisierten Geräten und kannst dort weitermachen, wo du vorher aufgehört hast</translation> <translation id="2021896219286479412">Vollbild-Steuerelemente</translation> <translation id="2038563949887743358">"Desktopversion ansehen" aktivieren</translation> <translation id="204321170514947529"><ph name="APP_NAME" /> hat auch Daten in Chrome</translation> @@ -279,7 +279,6 @@ <translation id="2527779675047087889">Inhalte der Zwischenablage ausblenden</translation> <translation id="2532336938189706096">Web-Ansicht</translation> <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> Einträge gelöscht</translation> -<translation id="2534582914273493287">URLs von Websites, die du besuchst, werden an Google gesendet</translation> <translation id="2536728043171574184">Eine Offline-Kopie dieser Seite wird angezeigt.</translation> <translation id="2546283357679194313">Cookies und Websitedaten</translation> <translation id="2549516196460093976">Du kannst dich über dieses Tablet auf dem Computer anmelden, auf dem dieser QR-Code angezeigt wird.</translation> @@ -371,7 +370,6 @@ <translation id="2996291259634659425">Passphrase erstellen</translation> <translation id="2996809686854298943">URL erforderlich</translation> <translation id="2997081575621687554">Wenn eine Google Sites-Website anfordert, Links auf einer ihrer Seiten privat vorab zu laden, verschlüsselt Chrome die verlinkten Seiten und lädt sie ohne Cookies über Google-Server vorab. Damit wird deine Identität vor der vorab geladenen Website verborgen.</translation> -<translation id="3003733539450769656">Erkennt schädliche Ereignisse im Voraus und warnt dich, bevor diese eintreten</translation> <translation id="3006881078666935414">Keine Nutzungsdaten</translation> <translation id="301080557829842765">Datenschutz-Leitfaden</translation> <translation id="3016635187733453316">Prüfe, ob das Gerät mit dem Internet verbunden ist</translation> @@ -431,6 +429,7 @@ <translation id="3284510035090979597">Proaktive Hilfe</translation> <translation id="3285080554353377245">Videos über die Verwendung von Chrome</translation> <translation id="3288003805934695103">Seite aktualisieren</translation> +<translation id="3290249595466894471">Sendet außerdem eine kleine Auswahl von Seiten, Downloads, Erweiterungsaktivitäten und Systeminformationen, um die Erkennung neuer Bedrohungen zu verbessern</translation> <translation id="3297344142967351106">Sprachassistent</translation> <translation id="3303414029551471755">Inhalt herunterladen?</translation> <translation id="3334729583274622784">Dateiendung ändern?</translation> @@ -636,7 +635,6 @@ <translation id="4558311620361989323">Tastenkombinationen für Webseiten</translation> <translation id="4561730552726921821">Registrierung abgeschlossen</translation> <translation id="4561979708150884304">Keine Verbindung</translation> -<translation id="4562008740775511591">Chrome bietet sinnvolle Standardeinstellungen, du kannst sie aber optimal an deine Surfgewohnheiten anpassen</translation> <translation id="4565377596337484307">Passwort ausblenden</translation> <translation id="4572422548854449519">In verwaltetem Konto anmelden</translation> <translation id="4576892426230499203">Versuche es mit einer anderen Bestätigungsoption</translation> @@ -918,7 +916,6 @@ <translation id="604996488070107836"><ph name="FILE_NAME" /> konnte aufgrund eines unbekannten Fehlers nicht heruntergeladen werden.</translation> <translation id="605721222689873409">JJ</translation> <translation id="6059830886158432458">Hier kannst du festlegen, welche Meldungen und Aktivitäten dir angezeigt werden</translation> -<translation id="6069177176307973611">Datenschutz- und Sicherheitseinstellungen ansehen</translation> <translation id="6070730414166672373">Bank wird kontaktiert\u2026</translation> <translation id="6085886413119427067">Legt fest, wie Websites über eine sichere Verbindung aufgerufen werden</translation> <translation id="6091413777268123602">Mit Privacy Sandbox-Tests können Websites beim Surfen die gewohnte Nutzererfahrung bieten, verwenden dabei aber weniger Nutzerdaten. Das bedeutet mehr Datenschutz für dich und weniger websiteübergreifendes Tracking. Sobald neue Tests verfügbar sind, werden wir sie hinzufügen.</translation> @@ -1039,6 +1036,7 @@ <translation id="6641780377503683465"><ph name="INTEREST" /> entfernen</translation> <translation id="6643016212128521049">Löschen</translation> <translation id="6645629752388991326">Du kannst festlegen, welche Geräte dieses Gerät als Sicherheitsschlüssel für die Anmeldung verwenden können.</translation> +<translation id="6647441008198474441">URLs von Websites, die du besuchst, werden an Google gesendet, um Prognosen zu erstellen, welche Websites du voraussichtlich als Nächstes besuchen wirst</translation> <translation id="6648459603387803038">Dein Administrator kann die Browsereinstellungen per Remotezugriff ändern. Aktivitäten auf diesem Gerät können auch außerhalb von Chrome verwaltet werden.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 und <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> weitere}other{<ph name="CONTACT_PREVIEW" />\u2026 und <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> weitere}}</translation> <translation id="6649642165559792194">Bildvorschau <ph name="BEGIN_NEW" />Neu<ph name="END_NEW" /></translation> @@ -1046,7 +1044,6 @@ <translation id="6659594942844771486">Tab</translation> <translation id="666731172850799929">In <ph name="APP_NAME" /> öffnen</translation> <translation id="6671495933530132209">Bild kopieren</translation> -<translation id="6674044799624355221">Sendet eine kleine Auswahl von Seiten, Downloads, Erweiterungsaktivitäten und Systeminformationen, um die Erkennung neuer Bedrohungen zu verbessern</translation> <translation id="6674571176963658787">Gib deine Passphrase ein, um die Synchronisierung zu starten</translation> <translation id="6676840375528380067">Deine Chrome-Daten vom Gerät löschen?</translation> <translation id="6684809838922667136">Chrome verbessern</translation> @@ -1068,7 +1065,6 @@ <translation id="6802555630140434547">Das Fenster wird geschlossen</translation> <translation id="6811034713472274749">Seitenansicht bereit</translation> <translation id="6813446258015311409">In Chrome anmelden, geöffnet.</translation> -<translation id="6814033694018386318">Folgendes wird mit Google geteilt</translation> <translation id="6817747507826986771">Diese Seite schnell teilen. Zum Ändern Schaltfläche gedrückt halten.</translation> <translation id="6819199143469632133">Melde dich an, um auf deine Inhalte bei Google zuzugreifen</translation> <translation id="6820686453637990663">CVC</translation> @@ -1163,6 +1159,7 @@ <translation id="7352939065658542140">VIDEO</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{1 ausgewähltes Element teilen}other{# ausgewählte Elemente teilen}}</translation> <translation id="7359002509206457351">Auf Zahlungsmethoden zugreifen</translation> +<translation id="7363349185727752629">Übersicht über deine Datenschutzeinstellungen</translation> <translation id="7375125077091615385">Typ:</translation> <translation id="7376560087009844242">Wenn du mehr Text einer Seite einschließt, kannst du beim Verwenden von „Zum Suchen antippen“ bessere Ergebnisse erhalten. In den <ph name="BEGIN_LINK" />Einstellungen<ph name="END_LINK" /> kannst du das jederzeit ändern.</translation> <translation id="7379900596734708416">Dunkles Design für Websites verfügbar</translation> @@ -1262,6 +1259,7 @@ <translation id="7876243839304621966">Alle entfernen</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{Du hast <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> ungelesene Seite}other{Du hast <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> ungelesene Seiten}}</translation> <translation id="7886917304091689118">Wird in Chrome ausgeführt</translation> +<translation id="7887174313503389866">Sieh dir eine Demo der wichtigsten Datenschutz- und Sicherheitseinstellungen an. Weitere Optionen findest du in den jeweiligen Einstellungen.</translation> <translation id="7887334752153342268">Duplizieren</translation> <translation id="789763218334337857">Chrome verwenden</translation> <translation id="7903184275147100332">Dies kann einen Moment dauern</translation> @@ -1375,6 +1373,7 @@ <translation id="8445448999790540984">Passwörter können nicht exportiert werden</translation> <translation id="8446884382197647889">Weitere Informationen</translation> <translation id="8453310803815879010">Dino-Spiel starten</translation> +<translation id="8460448946170646641">Die wichtigsten Datenschutz- und Sicherheitseinstellungen überprüfen</translation> <translation id="8461694314515752532">Synchronisierte Daten mit eigener Synchronisierungspassphrase verschlüsseln</translation> <translation id="8466613982764129868">Prüfe, ob <ph name="TARGET_DEVICE_NAME" /> mit dem Internet verbunden ist</translation> <translation id="8473863474539038330">Adressen</translation> @@ -1420,6 +1419,7 @@ <translation id="8636825310635137004">Aktiviere die Synchronisierung, um Tabs von deinen anderen Geräten abzurufen.</translation> <translation id="8641930654639604085">Versuchen, nicht jugendfreie Websites zu blockieren</translation> <translation id="864544049772947936">Fenster verwalten (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">Erkennt schädliche Ereignisse im Voraus und warnt dich, bevor sie eintreten</translation> <translation id="8646467750715887511">Seiten werden nur geladen, wenn du sie tatsächlich öffnest.</translation> <translation id="8655129584991699539">Du kannst die Daten in den Chrome-Einstellungen löschen</translation> <translation id="8659579665266920523">Mit Chrome suchen</translation> @@ -1432,7 +1432,6 @@ <translation id="867767487203716855">Nächste Aktualisierung</translation> <translation id="8683039184091909753">Bild</translation> <translation id="8683081248374354009">Gruppe zurücksetzen</translation> -<translation id="8683526617475118045">Vorteile</translation> <translation id="869891660844655955">Ablaufdatum</translation> <translation id="8699120352855309748">Übersetzen dieser Sprachen nicht anbieten</translation> <translation id="8712637175834984815">Alles klar</translation> @@ -1516,7 +1515,6 @@ <translation id="9148126808321036104">Erneut anmelden</translation> <translation id="9158770349521403363">Nur Inhalt teilen</translation> <translation id="9159716826369098114">Tabgruppe mit <ph name="TAB_COUNT" /> Tabs als neue Tabgruppe im Hintergrund wiederherstellen.</translation> -<translation id="916446198114569890">Die von dir besuchten URLs werden in deinem Google-Konto gespeichert</translation> <translation id="9169507124922466868">Navigationsverlauf ist halb geöffnet</translation> <translation id="9187955620966010988">Reaktion angepasst</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{Zuletzt geprüft: vor 1 Minute}other{Zuletzt geprüft: vor # Minuten}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_el.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_el.xtb index 49207dc..91685e3 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_el.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_el.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">Να μην παρέχεται δυνατότητα μετάφρασης αυτών των ιστοτόπων</translation> <translation id="1145536944570833626">Διαγραφή υπαρχόντων δεδομένων.</translation> <translation id="1146678959555564648">Εισαγωγή VR</translation> -<translation id="114825011539563458">Τα σημαντικότερα στοιχεία ελέγχου για το απόρρητο και την ασφάλεια σε μία τοποθεσία</translation> <translation id="1149401351239820326">Μήνας λήξης</translation> <translation id="1150263420752757504">Η εφαρμογή <ph name="APP_NAME" /> θα ανοίξει στο Chrome. Εάν συνεχίσετε, συμφωνείτε με τους <ph name="BEGIN_LINK1" />Όρους Παροχής Υπηρεσιών της Google<ph name="END_LINK1" /> και τους <ph name="BEGIN_LINK2" />Πρόσθετους Όρους Παροχής Υπηρεσιών του Google Chrome και του Chrome OS<ph name="END_LINK2" />.</translation> <translation id="1154704303112745282">Η σελίδα δεν είναι διαθέσιμη εκτός σύνδεσης: <ph name="VIOLATED_URL" /></translation> @@ -170,6 +169,7 @@ <translation id="189358972401248634">Άλλες γλώσσες</translation> <translation id="1894023287452300670">Παρακολούθηση τιμής εδώ</translation> <translation id="1900260903084164610">Αν συνεχίσετε, συμφωνείτε με τους <ph name="BEGIN_TOS_LINK" />Όρους Παροχής Υπηρεσιών<ph name="END_TOS_LINK" />.</translation> +<translation id="1904580727789512086">Τα URL που επισκέπτεστε αποθηκεύονται στον Λογαριασμό σας Google.</translation> <translation id="1910950723001426294">Η λίστα επιλογών κοινοποίησης είναι κλειστή.</translation> <translation id="1918175104945982129">Διεπαφή χρήστη για παροχή συναίνεσης σχετικά με τη φωνητική αναζήτηση μέσω του Βοηθού, ανοιχτή σε μισό ύψος</translation> <translation id="1919130412786645364">Να επιτρέπεται η σύνδεση στο Chrome</translation> @@ -194,7 +194,6 @@ <translation id="2000419248597011803">Στέλνει ορισμένα cookie και αναζητήσεις από τη γραμμή διευθύνσεων και το πλαίσιο αναζήτησης στην προεπιλεγμένη μηχανή αναζήτησης</translation> <translation id="200114059308480249">Συμπερίληψη περιβάλλοντος κειμένου στις αναζητήσεις Google;</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# Αρχείο}other{# Αρχεία}}</translation> -<translation id="2020309681647789787">Το ιστορικό σας θα εμφανίζεται σε όλες τις συγχρονισμένες συσκευές, ώστε να μπορείτε να συνεχίζετε ό,τι κάνετε</translation> <translation id="2021896219286479412">Στοιχ. ελέγ. σε πλήρη οθόνη</translation> <translation id="2038563949887743358">Ενεργοποίηση αιτήματος ιστότοπου για υπολογιστές</translation> <translation id="204321170514947529">Η εφαρμογή <ph name="APP_NAME" /> έχει επίσης δεδομένα στο Chrome</translation> @@ -280,7 +279,6 @@ <translation id="2527779675047087889">Απόκρυψη περιεχομένων πρόχειρου</translation> <translation id="2532336938189706096">Προβολή ιστού</translation> <translation id="2534155362429831547">Διαγράφηκαν <ph name="NUMBER_OF_ITEMS" /> στοιχεία</translation> -<translation id="2534582914273493287">Τα URL που επισκέπτεστε αποστέλλονται στην Google</translation> <translation id="2536728043171574184">Προβολή ενός αντιγράφου αυτής της σελίδας εκτός σύνδεσης</translation> <translation id="2546283357679194313">Cookie και δεδομένα ιστότοπου</translation> <translation id="2549516196460093976">Μπορείτε να χρησιμοποιήσετε αυτό το tablet για να συνδεθείτε στον υπολογιστή όπου εμφανίζεται αυτός ο κωδικός QR.</translation> @@ -372,7 +370,6 @@ <translation id="2996291259634659425">Δημιουργία φράσης πρόσβασης</translation> <translation id="2996809686854298943">Απαιτείται διεύθυνση URL</translation> <translation id="2997081575621687554">Όταν ένας ιστότοπος της Google ζητήσει να προφορτώσει ιδιωτικά συνδέσμους στη σελίδα του, το Chrome κρυπτογραφεί και προφορτώνει τις σελίδες μέσω των διακομιστών της Google χωρίς cookie. Με αυτόν τον τρόπο, αποκρύπτεται η ταυτότητά σας από τον προφορτωμένο ιστότοπο.</translation> -<translation id="3003733539450769656">Σας προειδοποιεί για επικίνδυνα συμβάντα προτού αυτά συμβούν.</translation> <translation id="3006881078666935414">Δεν υπάρχουν δεδομένα χρήσης</translation> <translation id="301080557829842765">Οδηγός απορρήτου</translation> <translation id="3016635187733453316">Βεβαιωθείτε ότι η συσκευή είναι συνδεδεμένη στο διαδίκτυο.</translation> @@ -432,6 +429,7 @@ <translation id="3284510035090979597">Προληπτική βοήθεια</translation> <translation id="3285080554353377245">Βίντεο σχετικά με τον τρόπο χρήσης του Chrome</translation> <translation id="3288003805934695103">Επαναλάβετε τη φόρτωση της σελίδας</translation> +<translation id="3290249595466894471">Στέλνει επίσης ένα μικρό δείγμα σελίδων, λήψεων, δραστηριοτήτων επέκτασης και πληροφοριών συστήματος, για να βοηθήσει στην ανακάλυψη νέων απειλών</translation> <translation id="3297344142967351106">Φωνητική βοήθεια</translation> <translation id="3303414029551471755">Συνέχεια για λήψη του περιεχομένου;</translation> <translation id="3334729583274622784">Θέλετε να αλλάξετε την επέκταση αρχείου;</translation> @@ -637,7 +635,6 @@ <translation id="4558311620361989323">Συντομεύσεις ιστοσελίδας</translation> <translation id="4561730552726921821">Η εγγραφή ήταν επιτυχής</translation> <translation id="4561979708150884304">Δεν υπάρχει σύνδεση</translation> -<translation id="4562008740775511591">Το Chrome παρέχει εύλογες προεπιλογές, αλλά μπορείτε να το προσαρμόσετε σύμφωνα με τον τρόπο με τον οποίο περιηγείστε.</translation> <translation id="4565377596337484307">Απόκρυψη κωδικού πρόσβασης</translation> <translation id="4572422548854449519">Συνδεθείτε στον διαχειριζόμενο λογαριασμό</translation> <translation id="4576892426230499203">Δοκιμάστε μια διαφορετική επιλογή επαλήθευσης</translation> @@ -919,7 +916,6 @@ <translation id="604996488070107836">Η λήψη του αρχείου <ph name="FILE_NAME" /> απέτυχε λόγω άγνωστου σφάλματος.</translation> <translation id="605721222689873409">ΕΕ</translation> <translation id="6059830886158432458">Ελέγξτε τις ειδήσεις και τη δραστηριότητά σας εδώ</translation> -<translation id="6069177176307973611">Έλεγχος ρυθμίσεων απορρήτου και ασφαλείας</translation> <translation id="6070730414166672373">Πραγματοποιείται επικοινωνία με την τράπεζά σας\u2026</translation> <translation id="6085886413119427067">Καθορίζει τον τρόπο σύνδεσης σε ιστοτόπους μέσω μιας ασφαλούς σύνδεσης.</translation> <translation id="6091413777268123602">Με τις δοκιμές του Πλαισίου ιδιωτικότητας, οι ιστότοποι μπορούν να προσφέρουν την ίδια εμπειρία περιήγησης χρησιμοποιώντας λιγότερα από τα δεδομένα σας. Αυτό σημαίνει υψηλότερο επίπεδο απορρήτου για εσάς και λιγότερη παρακολούθηση μεταξύ ιστοτόπων. Θα προσθέτουμε νέες δοκιμές όταν είναι έτοιμες για έλεγχο.</translation> @@ -1040,6 +1036,7 @@ <translation id="6641780377503683465">Κατάργηση ενδιαφέροντος <ph name="INTEREST" /></translation> <translation id="6643016212128521049">Διαγραφή</translation> <translation id="6645629752388991326">Ελέγξτε ποιες συσκευές μπορούν να συνδέονται χρησιμοποιώντας αυτήν τη συσκευή ως κλειδί ασφαλείας.</translation> +<translation id="6647441008198474441">Τα URL που επισκέπτεστε αποστέλλονται στο Google για την πρόβλεψη των ιστοτόπων που ενδέχεται να επισκεφτείτε στη συνέχεια.</translation> <translation id="6648459603387803038">Ο διαχειριστής σας μπορεί να αλλάξει τη ρύθμιση του προγράμματος περιήγησής σας απομακρυσμένα. Η διαχείριση της δραστηριότητας σε αυτήν τη συσκευή μπορεί επίσης να πραγματοποιηθεί εκτός Chrome.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 και <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> ακόμη}other{<ph name="CONTACT_PREVIEW" />\u2026 και <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> ακόμη}}</translation> <translation id="6649642165559792194">Προεπισκόπηση εικόνας <ph name="BEGIN_NEW" />Νέο<ph name="END_NEW" /></translation> @@ -1047,7 +1044,6 @@ <translation id="6659594942844771486">Καρτέλα</translation> <translation id="666731172850799929">Άνοιγμα σε <ph name="APP_NAME" /></translation> <translation id="6671495933530132209">Αντιγραφή εικόνας</translation> -<translation id="6674044799624355221">Στέλνει ένα μικρό δείγμα σελίδων, λήψεων, δραστηριοτήτων επεκτάσεων και πληροφοριών συστήματος για να βοηθήσει στην ανακάλυψη νέων απειλών.</translation> <translation id="6674571176963658787">Για να ξεκινήσετε τον συγχρονισμό, εισαγάγετε τη φράση πρόσβασης.</translation> <translation id="6676840375528380067">Να διαγραφούν τα δεδομένα Chrome από τη συσκευή;</translation> <translation id="6684809838922667136">Βελτίωση του Chrome</translation> @@ -1069,7 +1065,6 @@ <translation id="6802555630140434547">Το παράθυρο θα κλείσει</translation> <translation id="6811034713472274749">Σελίδα έτοιμη για προβολή</translation> <translation id="6813446258015311409">Σύνδεση στο Chrome, έγινε άνοιγμα.</translation> -<translation id="6814033694018386318">Τι μοιράζεστε με την Google</translation> <translation id="6817747507826986771">Κοινοποιήστε γρήγορα αυτήν τη σελίδα. Για να επεξεργαστείτε αυτήν τη συντόμευση, αγγίξτε παρατεταμένα.</translation> <translation id="6819199143469632133">Για να μεταφέρετε το περιεχόμενό σας Google μεταξύ συσκευών, συνδεθείτε</translation> <translation id="6820686453637990663">CVC</translation> @@ -1164,6 +1159,7 @@ <translation id="7352939065658542140">ΒΙΝΤΕΟ</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{Κοινοποίηση 1 επιλεγμένου στοιχείου}other{Κοινοποίηση # επιλεγμένων στοιχείων}}</translation> <translation id="7359002509206457351">Πρόσβαση σε τρόπους πληρωμής</translation> +<translation id="7363349185727752629">Ένας οδηγός για τις επιλογές απορρήτου σας</translation> <translation id="7375125077091615385">Τύπος:</translation> <translation id="7376560087009844242">Συμπεριλαμβάνοντας μεγαλύτερο μέρος από το κείμενο μιας σελίδας, ενδέχεται να βλέπετε καλύτερα αποτελέσματα όταν χρησιμοποιείτε τη λειτουργία Αγγίξτε για αναζήτηση. Μπορείτε να επισκεφτείτε ανά πάσα στιγμή τις <ph name="BEGIN_LINK" />ρυθμίσεις<ph name="END_LINK" /> για να αλλάξετε αυτήν την επιλογή.</translation> <translation id="7379900596734708416">Διατίθεται σκούρο θέμα για ιστοτόπους</translation> @@ -1263,6 +1259,7 @@ <translation id="7876243839304621966">Κατάργηση όλων</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{Έχετε <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> μη αναγνωσμένη σελίδα}other{Έχετε <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> μη αναγνωσμένες σελίδες}}</translation> <translation id="7886917304091689118">Εκτέλεση στο Chrome</translation> +<translation id="7887174313503389866">Δείτε μια ξενάγηση για σημαντικά στοιχεία ελέγχου για το απόρρητο και την ασφάλεια. Για περισσότερες επιλογές, μεταβείτε σε μεμονωμένες ρυθμίσεις.</translation> <translation id="7887334752153342268">Αντιγραφή</translation> <translation id="789763218334337857">Τρόπος χρήσης του Chrome</translation> <translation id="7903184275147100332">Μπορεί να χρειαστεί λίγα λεπτά</translation> @@ -1376,6 +1373,7 @@ <translation id="8445448999790540984">Δεν είναι δυνατή η εξαγωγή κωδικών πρόσβασης</translation> <translation id="8446884382197647889">Μάθετε περισσότερα</translation> <translation id="8453310803815879010">Εκκίνηση παιχνιδιού Dino</translation> +<translation id="8460448946170646641">Έλεγχος σημαντικών στοιχείων ελέγχου για το απόρρητο και την ασφάλεια</translation> <translation id="8461694314515752532">Κρυπτογράφηση συγχρονισμένων δεδομένων με τη δική σας φράση πρόσβασης συγχρονισμού</translation> <translation id="8466613982764129868">Βεβαιωθείτε ότι η συσκευή <ph name="TARGET_DEVICE_NAME" /> είναι συνδεδεμένη στο διαδίκτυο.</translation> <translation id="8473863474539038330">Διευθύνσεις και άλλα</translation> @@ -1421,6 +1419,7 @@ <translation id="8636825310635137004">Για να εμφανίζονται οι καρτέλες από τις άλλες συσκευές σας, ενεργοποιήστε τον συγχρονισμό.</translation> <translation id="8641930654639604085">Δοκιμάστε να αποκλείσετε τους ιστοτόπους με περιεχόμενο για ενηλίκους</translation> <translation id="864544049772947936">Διαχείριση παραθύρων (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">Προβλέπει και σας προειδοποιεί για επικίνδυνα συμβάντα προτού αυτά συμβούν.</translation> <translation id="8646467750715887511">Οι σελίδες φορτώνουν μόνο όταν τις ανοίγετε.</translation> <translation id="8655129584991699539">Μπορείτε να διαγράψετε τα δεδομένα στις ρυθμίσεις του Chrome</translation> <translation id="8659579665266920523">Πώς γίνεται η αναζήτηση με το Chrome</translation> @@ -1433,7 +1432,6 @@ <translation id="867767487203716855">Επόμενη ενημέρωση</translation> <translation id="8683039184091909753">εικόνα</translation> <translation id="8683081248374354009">Επαναφορά ομάδας</translation> -<translation id="8683526617475118045">Οφέλη</translation> <translation id="869891660844655955">Ημερομηνία λήξης</translation> <translation id="8699120352855309748">Να μην παρέχεται δυνατότητα μετάφρασης αυτών των γλωσσών</translation> <translation id="8712637175834984815">Κατάλαβα!</translation> @@ -1517,7 +1515,6 @@ <translation id="9148126808321036104">Συνδεθείτε ξανά</translation> <translation id="9158770349521403363">Κοινοποίηση μόνο περιεχομένου</translation> <translation id="9159716826369098114">Επαναφέρετε την ομάδα καρτελών με τις <ph name="TAB_COUNT" /> καρτέλες ως νέα ομάδα καρτελών στο παρασκήνιο.</translation> -<translation id="916446198114569890">Τα URL που επισκέπτεστε αποθηκεύονται στον Λογαριασμό σας Google</translation> <translation id="9169507124922466868">Το ιστορικό πλοήγησης έχει ανοίξει κατά το ήμισυ</translation> <translation id="9187955620966010988">Η αντίδραση προσαρμόστηκε</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{Ελέγχθηκε πριν από ένα λεπτό}other{Ελέγχθηκε πριν από # λεπτά}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_en-GB.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_en-GB.xtb index 25b496d..5c02fb5 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_en-GB.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_en-GB.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">Don’t offer to translate these sites</translation> <translation id="1145536944570833626">Delete existing data.</translation> <translation id="1146678959555564648">Enter VR</translation> -<translation id="114825011539563458">The most important privacy and security controls in one place</translation> <translation id="1149401351239820326">Expiry month</translation> <translation id="1150263420752757504"><ph name="APP_NAME" /> will open in Chrome. By continuing, you agree to the <ph name="BEGIN_LINK1" />Google Terms of Service<ph name="END_LINK1" />, and the <ph name="BEGIN_LINK2" />Google Chrome and Chrome OS additional Terms of Service<ph name="END_LINK2" />.</translation> <translation id="1154704303112745282">Page unavailable offline: <ph name="VIOLATED_URL" /></translation> @@ -170,6 +169,7 @@ <translation id="189358972401248634">Other languages</translation> <translation id="1894023287452300670">Track price here</translation> <translation id="1900260903084164610">By continuing, you agree to the <ph name="BEGIN_TOS_LINK" />Terms of Service<ph name="END_TOS_LINK" />.</translation> +<translation id="1904580727789512086">The URLs that you visit are saved to your Google Account</translation> <translation id="1910950723001426294">List of sharing options is closed.</translation> <translation id="1918175104945982129">Assistant voice search consent UI opened at half height</translation> <translation id="1919130412786645364">Allow Chrome sign-in</translation> @@ -194,7 +194,6 @@ <translation id="2000419248597011803">Sends some cookies and searches from the address bar and search box to your default search engine</translation> <translation id="200114059308480249">Include surrounding text in Google searches?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# File}other{# Files}}</translation> -<translation id="2020309681647789787">You’ll have your history on all your synced devices, so you can continue what you were doing</translation> <translation id="2021896219286479412">Full screen site controls</translation> <translation id="2038563949887743358">Turn on Request desktop site</translation> <translation id="204321170514947529"><ph name="APP_NAME" /> also has data in Chrome</translation> @@ -280,7 +279,6 @@ <translation id="2527779675047087889">Hide clipboard contents</translation> <translation id="2532336938189706096">Web View</translation> <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> items deleted</translation> -<translation id="2534582914273493287">URLs that you visit are sent to Google</translation> <translation id="2536728043171574184">Viewing an offline copy of this page</translation> <translation id="2546283357679194313">Cookies and site data</translation> <translation id="2549516196460093976">You can use this tablet to sign in on the computer that’s displaying this QR code.</translation> @@ -372,7 +370,6 @@ <translation id="2996291259634659425">Create passphrase</translation> <translation id="2996809686854298943">URL required</translation> <translation id="2997081575621687554">When a Google site asks to privately preload links on their page, Chrome encrypts and preloads pages through Google servers without cookies. This hides your identity from the preloaded site.</translation> -<translation id="3003733539450769656">Warns you about dangerous events before they happen</translation> <translation id="3006881078666935414">No usage data</translation> <translation id="301080557829842765">Privacy guide</translation> <translation id="3016635187733453316">Make sure that this device is connected to the Internet</translation> @@ -432,6 +429,7 @@ <translation id="3284510035090979597">Proactive help</translation> <translation id="3285080554353377245">Videos about how to use Chrome</translation> <translation id="3288003805934695103">Reloading the page</translation> +<translation id="3290249595466894471">Also sends a small sample of pages, downloads, extension activity and system information to help discover new threats</translation> <translation id="3297344142967351106">Voice assistance</translation> <translation id="3303414029551471755">Proceed to download the content?</translation> <translation id="3334729583274622784">Change file extension?</translation> @@ -637,7 +635,6 @@ <translation id="4558311620361989323">Web page shortcuts</translation> <translation id="4561730552726921821">Registration succeeded</translation> <translation id="4561979708150884304">No connection</translation> -<translation id="4562008740775511591">Chrome provides reasonable defaults, but you can customise it to best fit your browsing habit</translation> <translation id="4565377596337484307">Hide password</translation> <translation id="4572422548854449519">Sign in to managed account</translation> <translation id="4576892426230499203">Try another verification option</translation> @@ -919,7 +916,6 @@ <translation id="604996488070107836"><ph name="FILE_NAME" /> download failed due to an unknown error.</translation> <translation id="605721222689873409">YY</translation> <translation id="6059830886158432458">Control your stories and activity here</translation> -<translation id="6069177176307973611">Review privacy and security settings</translation> <translation id="6070730414166672373">Contacting your bank\u2026</translation> <translation id="6085886413119427067">Determines how to connect to websites over a secure connection</translation> <translation id="6091413777268123602">With Privacy Sandbox trials, sites can deliver the same browsing experience using less of your data. That means more privacy for you and less cross-site tracking. We’ll add new trials as they’re ready to test.</translation> @@ -1040,6 +1036,7 @@ <translation id="6641780377503683465">Remove <ph name="INTEREST" /></translation> <translation id="6643016212128521049">Clear</translation> <translation id="6645629752388991326">Control which devices can sign in by using this device as a security key.</translation> +<translation id="6647441008198474441">URLs that you visit are sent to Google to predict what sites you might visit next</translation> <translation id="6648459603387803038">Your administrator can change your browser setup remotely. Activity on this device may also be managed outside of Chrome.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 and <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> more}other{<ph name="CONTACT_PREVIEW" />\u2026 and <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> more}}</translation> <translation id="6649642165559792194">Preview image <ph name="BEGIN_NEW" />New<ph name="END_NEW" /></translation> @@ -1047,7 +1044,6 @@ <translation id="6659594942844771486">Tab</translation> <translation id="666731172850799929">Open in <ph name="APP_NAME" /></translation> <translation id="6671495933530132209">Copy image</translation> -<translation id="6674044799624355221">Sends a small sample of pages, downloads, extension activity and system information to help discover new threats</translation> <translation id="6674571176963658787">To start sync, enter your passphrase</translation> <translation id="6676840375528380067">Clear your Chrome data from this device?</translation> <translation id="6684809838922667136">Make Chrome better</translation> @@ -1069,7 +1065,6 @@ <translation id="6802555630140434547">The window will be closed</translation> <translation id="6811034713472274749">Page is ready to view</translation> <translation id="6813446258015311409">Sign in to Chrome, opened.</translation> -<translation id="6814033694018386318">What you share with Google</translation> <translation id="6817747507826986771">Quickly share this page. To edit this shortcut, touch and hold.</translation> <translation id="6819199143469632133">To get your Google stuff across devices, sign in</translation> <translation id="6820686453637990663">CVC</translation> @@ -1164,6 +1159,7 @@ <translation id="7352939065658542140">VIDEO</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{Share 1 selected item}other{Share # selected items}}</translation> <translation id="7359002509206457351">Access payment methods</translation> +<translation id="7363349185727752629">A guide of your privacy choices</translation> <translation id="7375125077091615385">Type:</translation> <translation id="7376560087009844242">By including more of a page’s text, you might see better results when using Touch to Search. You can always visit <ph name="BEGIN_LINK" />settings<ph name="END_LINK" /> to change this.</translation> <translation id="7379900596734708416">Dark theme for sites is available</translation> @@ -1263,6 +1259,7 @@ <translation id="7876243839304621966">Remove all</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{You have <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> unread page}other{You have <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> unread pages}}</translation> <translation id="7886917304091689118">Running in Chrome</translation> +<translation id="7887174313503389866">Take a guided tour of key privacy and security controls. For more options, go to individual settings.</translation> <translation id="7887334752153342268">Duplicate</translation> <translation id="789763218334337857">How to use Chrome</translation> <translation id="7903184275147100332">This may take a minute</translation> @@ -1376,6 +1373,7 @@ <translation id="8445448999790540984">Can’t export passwords</translation> <translation id="8446884382197647889">Learn More</translation> <translation id="8453310803815879010">Start Dino game</translation> +<translation id="8460448946170646641">Review key privacy and security controls</translation> <translation id="8461694314515752532">Encrypt synced data with your own sync passphrase</translation> <translation id="8466613982764129868">Make sure that <ph name="TARGET_DEVICE_NAME" /> is connected to the Internet</translation> <translation id="8473863474539038330">Addresses and more</translation> @@ -1421,6 +1419,7 @@ <translation id="8636825310635137004">To get your tabs from your other devices, turn on sync.</translation> <translation id="8641930654639604085">Try to block mature sites</translation> <translation id="864544049772947936">Manage windows (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">Predicts and warns you about dangerous events before they happen</translation> <translation id="8646467750715887511">Pages load only after you open them.</translation> <translation id="8655129584991699539">You can clear the data in Chrome Settings</translation> <translation id="8659579665266920523">How to search with Chrome</translation> @@ -1433,7 +1432,6 @@ <translation id="867767487203716855">Next update</translation> <translation id="8683039184091909753">image</translation> <translation id="8683081248374354009">Reset group</translation> -<translation id="8683526617475118045">What you get</translation> <translation id="869891660844655955">Expiry date</translation> <translation id="8699120352855309748">Don’t offer to translate these languages</translation> <translation id="8712637175834984815">Got it</translation> @@ -1517,7 +1515,6 @@ <translation id="9148126808321036104">Sign in again</translation> <translation id="9158770349521403363">Share content only</translation> <translation id="9159716826369098114">Restore tab group of <ph name="TAB_COUNT" /> tabs as a new background tab group.</translation> -<translation id="916446198114569890">The URLs that you visit are saved to your Google Account</translation> <translation id="9169507124922466868">Navigation history is half-opened</translation> <translation id="9187955620966010988">Reaction adjusted</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{Checked 1 minute ago}other{Checked # minutes ago}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_es-419.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_es-419.xtb index b23f3bb..1c50462 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_es-419.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_es-419.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">No ofrecer traducir estos sitios</translation> <translation id="1145536944570833626">Borra los datos existentes.</translation> <translation id="1146678959555564648">Entrar al modo RV</translation> -<translation id="114825011539563458">Los controles de seguridad y privacidad más importantes en un solo lugar</translation> <translation id="1149401351239820326">Mes de vencimiento</translation> <translation id="1150263420752757504">Se abrirá <ph name="APP_NAME" /> en Chrome. Si continúas, aceptas las <ph name="BEGIN_LINK1" />Condiciones del Servicio de Google<ph name="END_LINK1" /> y las <ph name="BEGIN_LINK2" />Condiciones del Servicio Adicionales de Google Chrome y Chrome OS<ph name="END_LINK2" />.</translation> <translation id="1154704303112745282">Página no disponible sin conexión: <ph name="VIOLATED_URL" /></translation> @@ -108,6 +107,7 @@ <translation id="1488775391433859242">Puedes usar este teléfono para acceder en la computadora que muestra este código QR.</translation> <translation id="1492417797159476138">Ya guardaste este nombre de usuario en este sitio</translation> <translation id="1493287004536771723">Sigues a <ph name="SITE_NAME" /></translation> +<translation id="1502010315804028179">Para administrar tus contraseñas, actualiza los Servicios de Google Play.</translation> <translation id="1506061864768559482">Motor de búsqueda</translation> <translation id="1513352483775369820">Favoritos e historial web</translation> <translation id="1513814250881909472">Utiliza la función de sincronización para acceder a tus pestañas desde otros dispositivos</translation> @@ -169,6 +169,7 @@ <translation id="189358972401248634">Otros idiomas</translation> <translation id="1894023287452300670">Seguir precio aquí</translation> <translation id="1900260903084164610">Si continúas, aceptas las <ph name="BEGIN_TOS_LINK" />Condiciones del Servicio<ph name="END_TOS_LINK" />.</translation> +<translation id="1904580727789512086">Las URL que visitas se guardan en tu Cuenta de Google</translation> <translation id="1910950723001426294">La lista de opciones para compartir está cerrada.</translation> <translation id="1918175104945982129">La IU de consentimiento de la búsqueda por voz de Asistente está abierta en la mitad inferior</translation> <translation id="1919130412786645364">Permitir el acceso a Chrome</translation> @@ -193,7 +194,6 @@ <translation id="2000419248597011803">Envía algunas cookies y búsquedas de la barra de direcciones y del cuadro de búsqueda a tu motor de búsqueda predeterminado</translation> <translation id="200114059308480249">¿Quieres incluir el texto adyacente en las búsquedas de Google?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# archivo}other{# archivos}}</translation> -<translation id="2020309681647789787">Verás tu historial en todos los dispositivos sincronizados, por lo que podrás continuar con tus tareas desde donde sea.</translation> <translation id="2021896219286479412">Controles en pantalla completa</translation> <translation id="2038563949887743358">Activar la opción para solicitar versión de escritorio</translation> <translation id="204321170514947529"><ph name="APP_NAME" /> también tiene datos en Chrome</translation> @@ -279,7 +279,6 @@ <translation id="2527779675047087889">Oculta el contenido del portapapeles</translation> <translation id="2532336938189706096">Vista web</translation> <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> elementos borrados</translation> -<translation id="2534582914273493287">Se enviarán a Google las URL que visites.</translation> <translation id="2536728043171574184">Visualizando una copia sin conexión de la página</translation> <translation id="2546283357679194313">Datos de sitios y cookies</translation> <translation id="2549516196460093976">Puedes usar esta tablet para acceder en la computadora que muestra este código QR.</translation> @@ -371,7 +370,6 @@ <translation id="2996291259634659425">Crear frase de contraseña</translation> <translation id="2996809686854298943">URL obligatoria</translation> <translation id="2997081575621687554">Cuando un sitio de Google te pregunta si quieres precargar de forma privada los vínculos de su página, Chrome encripta y precarga las páginas por medio de los servidores de Google sin cookies. De esta forma, se oculta tu identidad del sitio precargado.</translation> -<translation id="3003733539450769656">Te advierte sobre eventos peligrosos antes de que ocurran.</translation> <translation id="3006881078666935414">No hay datos de uso</translation> <translation id="301080557829842765">Guía sobre privacidad</translation> <translation id="3016635187733453316">Comprueba que este dispositivo tenga conexión a Internet</translation> @@ -431,6 +429,7 @@ <translation id="3284510035090979597">Ayuda proactiva</translation> <translation id="3285080554353377245">Videos sobre cómo usar Chrome</translation> <translation id="3288003805934695103">Volver a cargar la página.</translation> +<translation id="3290249595466894471">También envía una pequeña muestra de páginas, descargas, información del sistema y actividad de extensiones para ayudar a descubrir nuevas amenazas.</translation> <translation id="3297344142967351106">Asistencia de voz</translation> <translation id="3303414029551471755">¿Deseas descargar el contenido?</translation> <translation id="3334729583274622784">¿Quieres cambiar la extensión del archivo?</translation> @@ -636,7 +635,6 @@ <translation id="4558311620361989323">Accesos directos a páginas web</translation> <translation id="4561730552726921821">Se completó correctamente el registro.</translation> <translation id="4561979708150884304">Sin conexión</translation> -<translation id="4562008740775511591">Chrome brinda una configuración predeterminada razonable, pero puedes personalizar los parámetros según tus hábitos de navegación</translation> <translation id="4565377596337484307">Ocultar contraseña</translation> <translation id="4572422548854449519">Acceder a una cuenta administrada</translation> <translation id="4576892426230499203">Prueba otra opción de verificación.</translation> @@ -918,7 +916,6 @@ <translation id="604996488070107836"><ph name="FILE_NAME" /> no se pudo descargar debido a un error desconocido.</translation> <translation id="605721222689873409">AA</translation> <translation id="6059830886158432458">Controla tus noticias y actividad aquí</translation> -<translation id="6069177176307973611">Revisa la configuración de privacidad y seguridad.</translation> <translation id="6070730414166672373">Nos estamos comunicando con el banco…</translation> <translation id="6085886413119427067">Determina cómo conectarse a sitios web mediante una conexión segura</translation> <translation id="6091413777268123602">Con las pruebas de Privacy Sandbox, los sitios pueden ofrecer la misma experiencia de navegación usando menos información personal. Eso implica más privacidad para ti y menos seguimiento entre sitios web. Agregaremos más pruebas cuando estén listas.</translation> @@ -1039,6 +1036,7 @@ <translation id="6641780377503683465">Quitar <ph name="INTEREST" /></translation> <translation id="6643016212128521049">Borrar</translation> <translation id="6645629752388991326">Controla los dispositivos que pueden acceder usando este dispositivo como llave de seguridad.</translation> +<translation id="6647441008198474441">Se enviarán a Google las URL que visites para predecir los sitios que posiblemente vayas a visitar</translation> <translation id="6648459603387803038">El administrador puede cambiar la configuración de tu navegador de forma remota. Es posible que la actividad en este dispositivo también se administre fuera de Chrome.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" /> y <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> más}other{<ph name="CONTACT_PREVIEW" /> y <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> más}}</translation> <translation id="6649642165559792194">Vista previa de imagen <ph name="BEGIN_NEW" />Nueva<ph name="END_NEW" /></translation> @@ -1046,7 +1044,6 @@ <translation id="6659594942844771486">Pestaña</translation> <translation id="666731172850799929">Abrir en <ph name="APP_NAME" /></translation> <translation id="6671495933530132209">Copiar imagen</translation> -<translation id="6674044799624355221">Envía una pequeña muestra de páginas, descargas, información del sistema y actividad de extensiones para ayudar a descubrir nuevas amenazas.</translation> <translation id="6674571176963658787">Para iniciar la sincronización, ingresa tu frase de contraseña.</translation> <translation id="6676840375528380067">¿Quieres borrar tus datos de Chrome de este dispositivo?</translation> <translation id="6684809838922667136">Mejora Chrome</translation> @@ -1068,7 +1065,6 @@ <translation id="6802555630140434547">Se cerrará la ventana</translation> <translation id="6811034713472274749">Ya puedes ver la página</translation> <translation id="6813446258015311409">Acceder a Chrome, abierto.</translation> -<translation id="6814033694018386318">Lo que compartes con Google</translation> <translation id="6817747507826986771">Comparte esta página de forma rápida. Para editar este atajo, mantenlo presionado.</translation> <translation id="6819199143469632133">Accede para ver tu contenido de Google en distintos dispositivos</translation> <translation id="6820686453637990663">CVC</translation> @@ -1163,6 +1159,7 @@ <translation id="7352939065658542140">VIDEO</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{Comparte 1 elemento seleccionado}other{Comparte # elementos seleccionados}}</translation> <translation id="7359002509206457351">Acceder a formas de pago</translation> +<translation id="7363349185727752629">Una guía de las opciones de privacidad</translation> <translation id="7375125077091615385">Tipo:</translation> <translation id="7376560087009844242">Si incluyes más texto de la página, obtendrás mejores resultados cuando uses la función Tocar para buscar. Puedes cambiar esta opción en la <ph name="BEGIN_LINK" />configuración<ph name="END_LINK" /> en cualquier momento.</translation> <translation id="7379900596734708416">El Tema oscuro está disponible para los sitios</translation> @@ -1262,6 +1259,7 @@ <translation id="7876243839304621966">Eliminar todo</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{Tienes <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> página sin leer}other{Tienes <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> páginas sin leer}}</translation> <translation id="7886917304091689118">Se está ejecutando en Chrome</translation> +<translation id="7887174313503389866">Realiza una visita guiada de los controles de seguridad y privacidad más importantes. Para ver más opciones, ve a la configuración individual.</translation> <translation id="7887334752153342268">Duplicar</translation> <translation id="789763218334337857">Cómo usar Chrome</translation> <translation id="7903184275147100332">Esto puede tardar un minuto.</translation> @@ -1375,6 +1373,7 @@ <translation id="8445448999790540984">No se pueden exportar las contraseñas</translation> <translation id="8446884382197647889">Más información</translation> <translation id="8453310803815879010">Comenzar el juego del dinosaurio</translation> +<translation id="8460448946170646641">Revisa los controles de seguridad y privacidad más importantes</translation> <translation id="8461694314515752532">Encriptar los datos sincronizados con tu propia frase de contraseña de sincronización</translation> <translation id="8466613982764129868">Comprueba que <ph name="TARGET_DEVICE_NAME" /> tenga conexión a Internet</translation> <translation id="8473863474539038330">Direcciones y más</translation> @@ -1420,6 +1419,7 @@ <translation id="8636825310635137004">Activa la sincronización para obtener las pestañas de tus otros dispositivos.</translation> <translation id="8641930654639604085">Tratar de bloquear los sitios para adultos</translation> <translation id="864544049772947936">Administrar ventanas (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">Predice y te advierte sobre eventos peligrosos antes de que ocurran.</translation> <translation id="8646467750715887511">Las páginas se cargan una vez que las abres.</translation> <translation id="8655129584991699539">Puedes borrar los datos en la Configuración de Chrome</translation> <translation id="8659579665266920523">Cómo realizar búsquedas en Chrome</translation> @@ -1432,7 +1432,6 @@ <translation id="867767487203716855">Próxima actualización</translation> <translation id="8683039184091909753">imagen</translation> <translation id="8683081248374354009">Restablecer grupo</translation> -<translation id="8683526617475118045">Beneficios</translation> <translation id="869891660844655955">Fecha de vencimiento</translation> <translation id="8699120352855309748">No ofrecer la traducción de estos idiomas</translation> <translation id="8712637175834984815">Entendido</translation> @@ -1516,7 +1515,6 @@ <translation id="9148126808321036104">Accede nuevamente</translation> <translation id="9158770349521403363">Compartir solo el contenido</translation> <translation id="9159716826369098114">Restablece un grupo de pestañas de <ph name="TAB_COUNT" /> pestañas como nuevo grupo de pestañas en segundo plano.</translation> -<translation id="916446198114569890">Las URL que visitas se guardan en tu Cuenta de Google</translation> <translation id="9169507124922466868">El historial de navegación está abierto a la mitad</translation> <translation id="9187955620966010988">Se ajustó la reacción</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{Se verificó hace 1 minuto}other{Se verificó hace # minutos}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_es.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_es.xtb index 2a4ad2a..e1fc3ac 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_es.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_es.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">No ofrecer que se traduzcan estos sitios</translation> <translation id="1145536944570833626">Elimina los datos actuales.</translation> <translation id="1146678959555564648">Iniciar RV</translation> -<translation id="114825011539563458">Los controles de privacidad y seguridad más importantes en un mismo lugar</translation> <translation id="1149401351239820326">Mes de caducidad</translation> <translation id="1150263420752757504"><ph name="APP_NAME" /> se abrirá en Chrome. Al continuar, aceptas los <ph name="BEGIN_LINK1" />Términos del Servicio de Google<ph name="END_LINK1" /> y los <ph name="BEGIN_LINK2" />Términos del Servicio Adicionales de Google Chrome y ChromeOS<ph name="END_LINK2" />.</translation> <translation id="1154704303112745282">Página no disponible sin conexión: <ph name="VIOLATED_URL" /></translation> @@ -108,6 +107,7 @@ <translation id="1488775391433859242">Puedes usar este teléfono para iniciar sesión en el ordenador donde se muestra este código QR.</translation> <translation id="1492417797159476138">Ya has guardado ese nombre de usuario en este sitio web</translation> <translation id="1493287004536771723">Estás siguiendo a <ph name="SITE_NAME" /></translation> +<translation id="1502010315804028179">Para gestionar tus contraseñas, actualiza Servicios de Google Play</translation> <translation id="1506061864768559482">Buscador</translation> <translation id="1513352483775369820">Historial web y marcadores</translation> <translation id="1513814250881909472">Sincroniza para recibir las pestañas de tus demás dispositivos</translation> @@ -169,6 +169,7 @@ <translation id="189358972401248634">Otros idiomas</translation> <translation id="1894023287452300670">Sigue el precio aquí</translation> <translation id="1900260903084164610">Si continúas, confirmas que aceptas los <ph name="BEGIN_TOS_LINK" />Términos del Servicio<ph name="END_TOS_LINK" />.</translation> +<translation id="1904580727789512086">Las URLs que visitas se guardan en tu cuenta de Google</translation> <translation id="1910950723001426294">La lista de opciones para compartir está cerrada.</translation> <translation id="1918175104945982129">Interfaz de consentimiento de la búsqueda por voz del Asistente abierta a media altura</translation> <translation id="1919130412786645364">Permitir el inicio de sesión en Chrome</translation> @@ -193,7 +194,6 @@ <translation id="2000419248597011803">Envía algunas cookies y búsquedas desde la barra de direcciones y el cuadro de búsqueda a tu buscador predeterminado</translation> <translation id="200114059308480249">¿Incluir texto cercano en las búsquedas de Google?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# archivo}other{# archivos}}</translation> -<translation id="2020309681647789787">Tendrás tu historial en todos tus dispositivos sincronizados y podrás continuar con lo que estabas haciendo</translation> <translation id="2021896219286479412">Controles de pantalla completa</translation> <translation id="2038563949887743358">Activar opción para ver como ordenador</translation> <translation id="204321170514947529"><ph name="APP_NAME" /> también tiene datos en Chrome</translation> @@ -279,7 +279,6 @@ <translation id="2527779675047087889">Oculta el contenido del portapapeles</translation> <translation id="2532336938189706096">Vista web</translation> <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> elementos eliminados</translation> -<translation id="2534582914273493287">Las URLs que visites se enviarán a Google.</translation> <translation id="2536728043171574184">Viendo una copia sin conexión de esta página</translation> <translation id="2546283357679194313">Cookies y datos de sitios</translation> <translation id="2549516196460093976">Puedes usar este tablet para iniciar sesión en el ordenador donde se muestra este código QR.</translation> @@ -371,7 +370,6 @@ <translation id="2996291259634659425">Crear frase de contraseña</translation> <translation id="2996809686854298943">URL necesaria</translation> <translation id="2997081575621687554">Cuando un sitio de Google te pide precargar de forma privada los enlaces de su página, Chrome cifra y precarga las páginas a través de los servidores de Google sin cookies. De esta manera, se oculta tu identidad en el sitio precargado.</translation> -<translation id="3003733539450769656">Te advierte de eventos peligrosos antes de que se produzcan</translation> <translation id="3006881078666935414">No hay datos de uso</translation> <translation id="301080557829842765">Guía de privacidad</translation> <translation id="3016635187733453316">Comprueba que este dispositivo esté conectado a Internet.</translation> @@ -431,6 +429,7 @@ <translation id="3284510035090979597">Ayuda proactiva</translation> <translation id="3285080554353377245">Vídeos sobre cómo usar Chrome</translation> <translation id="3288003805934695103">Volver a cargar la página</translation> +<translation id="3290249595466894471">También envía una pequeña muestra de páginas, descargas, actividad de extensiones e información del sistema para ayudar a detectar nuevas amenazas.</translation> <translation id="3297344142967351106">Asistente de voz</translation> <translation id="3303414029551471755">¿Quieres continuar para descargar el contenido?</translation> <translation id="3334729583274622784">¿Cambiar la extensión del archivo?</translation> @@ -636,7 +635,6 @@ <translation id="4558311620361989323">Combinaciones de teclas en páginas web</translation> <translation id="4561730552726921821">Se ha registrado correctamente</translation> <translation id="4561979708150884304">No hay conexión</translation> -<translation id="4562008740775511591">Chrome incluye ajustes predeterminados razonables, pero puedes personalizarlos para adaptarlos a tus hábitos de navegación</translation> <translation id="4565377596337484307">Ocultar contraseña</translation> <translation id="4572422548854449519">Inicia sesión en la cuenta gestionada</translation> <translation id="4576892426230499203">Prueba con otra opción de verificación</translation> @@ -918,7 +916,6 @@ <translation id="604996488070107836">No ha sido posible descargar el archivo <ph name="FILE_NAME" /> debido a un error desconocido.</translation> <translation id="605721222689873409">AA</translation> <translation id="6059830886158432458">Controla tus noticias y tu actividad aquí</translation> -<translation id="6069177176307973611">Revisa la configuración de privacidad y seguridad</translation> <translation id="6070730414166672373">Contactando con tu banco\u2026</translation> <translation id="6085886413119427067">Determina cómo conectarse a sitios web mediante una conexión segura</translation> <translation id="6091413777268123602">Con las pruebas de Privacy Sandbox, los sitios pueden ofrecer la misma experiencia de navegación usando menos datos tuyos. Así, disfrutarás de más privacidad y el seguimiento entre sitios se reducirá. Añadiremos nuevas pruebas cuando estén listas.</translation> @@ -1039,6 +1036,7 @@ <translation id="6641780377503683465">Quitar <ph name="INTEREST" /></translation> <translation id="6643016212128521049">Borrar</translation> <translation id="6645629752388991326">Controla qué dispositivos pueden iniciar sesión usando este dispositivo como llave de seguridad.</translation> +<translation id="6647441008198474441">Las URLs que visitas se envian a Google para predecir qué sitios podrías visitar después</translation> <translation id="6648459603387803038">El administrador puede cambiar la configuración del navegador de forma remota. Es posible que la actividad de este dispositivo también se administre fuera de Chrome.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 y <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> más}other{<ph name="CONTACT_PREVIEW" />\u2026 y <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> más}}</translation> <translation id="6649642165559792194">Revisar imagen <ph name="BEGIN_NEW" />Nuevo<ph name="END_NEW" /></translation> @@ -1046,7 +1044,6 @@ <translation id="6659594942844771486">Pestaña</translation> <translation id="666731172850799929">Abrir en <ph name="APP_NAME" /></translation> <translation id="6671495933530132209">Copiar imagen</translation> -<translation id="6674044799624355221">Envía una pequeña muestra de páginas, descargas, actividad de extensiones e información del sistema para ayudar a detectar nuevas amenazas</translation> <translation id="6674571176963658787">Para iniciar la sincronización, escribe tu frase de contraseña</translation> <translation id="6676840375528380067">¿Quieres borrar tus datos de Chrome en este dispositivo?</translation> <translation id="6684809838922667136">Mejorar Chrome</translation> @@ -1068,7 +1065,6 @@ <translation id="6802555630140434547">Se cerrará la ventana</translation> <translation id="6811034713472274749">Ya se puede ver la página</translation> <translation id="6813446258015311409">Inicia sesión en Chrome, abierto.</translation> -<translation id="6814033694018386318">Lo que compartes con Google</translation> <translation id="6817747507826986771">Comparte esta página rápidamente. Para editar este acceso directo, mantenlo pulsado.</translation> <translation id="6819199143469632133">Para acceder a tus cosas de Google en diferentes dispositivos, inicia sesión</translation> <translation id="6820686453637990663">CVC</translation> @@ -1163,6 +1159,7 @@ <translation id="7352939065658542140">VÍDEO</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{Compartir 1 elemento seleccionado}other{Compartir # elementos seleccionados}}</translation> <translation id="7359002509206457351">Acceder a métodos de pago</translation> +<translation id="7363349185727752629">Una guía de tus opciones de privacidad</translation> <translation id="7375125077091615385">Tipo:</translation> <translation id="7376560087009844242">Al incluir más texto de una página, es posible que obtengas mejores resultados cuando uses Tocar para buscar. Puedes cambiar esta opción en los <ph name="BEGIN_LINK" />ajustes<ph name="END_LINK" /> en cualquier momento.</translation> <translation id="7379900596734708416">El tema oscuro para sitios está disponible</translation> @@ -1262,6 +1259,7 @@ <translation id="7876243839304621966">Quitar todo</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{Te queda <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> página sin leer.}other{Te quedan <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> páginas sin leer.}}</translation> <translation id="7886917304091689118">Se está ejecutando en Chrome</translation> +<translation id="7887174313503389866">Haz una visita guiada de los controles principales de privacidad y seguridad. Para acceder a más opciones, ve a ajustes específicos.</translation> <translation id="7887334752153342268">Duplicar</translation> <translation id="789763218334337857">Cómo usar Chrome</translation> <translation id="7903184275147100332">Podría tardar un minuto</translation> @@ -1375,6 +1373,7 @@ <translation id="8445448999790540984">No se pueden exportar las contraseñas</translation> <translation id="8446884382197647889">Más información</translation> <translation id="8453310803815879010">Iniciar juego del dinosaurio</translation> +<translation id="8460448946170646641">Revisa los controles principales de privacidad y seguridad</translation> <translation id="8461694314515752532">Cifrar datos sincronizados con tu propia frase de contraseña de sincronización</translation> <translation id="8466613982764129868">Comprueba que tu <ph name="TARGET_DEVICE_NAME" /> esté conectado a Internet</translation> <translation id="8473863474539038330">Direcciones y más</translation> @@ -1420,6 +1419,7 @@ <translation id="8636825310635137004">Activa la sincronización para ver las pestañas de tus otros dispositivos.</translation> <translation id="8641930654639604085">Intentar bloquear sitios para adultos</translation> <translation id="864544049772947936">Gestionar ventanas (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">Predice y te advierte de eventos peligrosos antes de que se produzcan</translation> <translation id="8646467750715887511">Las páginas se cargan solo después de que las abras.</translation> <translation id="8655129584991699539">Puedes borrar los datos en la configuración de Chrome</translation> <translation id="8659579665266920523">Cómo buscar con Chrome</translation> @@ -1432,7 +1432,6 @@ <translation id="867767487203716855">Próxima actualización</translation> <translation id="8683039184091909753">imagen</translation> <translation id="8683081248374354009">Restablecer grupo</translation> -<translation id="8683526617475118045">Lo que obtienes</translation> <translation id="869891660844655955">Fecha de caducidad</translation> <translation id="8699120352855309748">No ofrecer que se traduzcan estos idiomas</translation> <translation id="8712637175834984815">Entendido</translation> @@ -1516,7 +1515,6 @@ <translation id="9148126808321036104">Volver a iniciar sesión</translation> <translation id="9158770349521403363">Compartir solo contenido</translation> <translation id="9159716826369098114">Restaurar grupo de <ph name="TAB_COUNT" /> pestañas como nuevo grupo de pestañas en segundo plano.</translation> -<translation id="916446198114569890">Las URLs que visitas se guardan en tu cuenta de Google</translation> <translation id="9169507124922466868">El historial de navegación está medio abierto</translation> <translation id="9187955620966010988">Reacción ajustada</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{Comprobado hace 1 minuto}other{Comprobado hace # minutos}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_et.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_et.xtb index 29b6ace..a79a55c 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_et.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_et.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">Ära paku nende saitide tõlkimist</translation> <translation id="1145536944570833626">Kustutage olemasolevad andmed.</translation> <translation id="1146678959555564648">Ava VR</translation> -<translation id="114825011539563458">Kõige olulisemad privaatsus- ja turvaseaded ühes kohas</translation> <translation id="1149401351239820326">Aegumiskuu</translation> <translation id="1150263420752757504"><ph name="APP_NAME" /> avaneb Chrome'is. Jätkates nõustute <ph name="BEGIN_LINK1" />Google'i teenusetingimustega<ph name="END_LINK1" /> ning <ph name="BEGIN_LINK2" />Google Chrome'i ja Chrome OS-i lisateenusetingimustega<ph name="END_LINK2" />.</translation> <translation id="1154704303112745282">Leht pole võrguühenduseta saadaval: <ph name="VIOLATED_URL" /></translation> @@ -170,6 +169,7 @@ <translation id="189358972401248634">Teised keeled</translation> <translation id="1894023287452300670">Siin saate hinda jälgida</translation> <translation id="1900260903084164610">Jätkates kinnitate, et nõustute <ph name="BEGIN_TOS_LINK" />teenusetingimustega<ph name="END_TOS_LINK" />.</translation> +<translation id="1904580727789512086">Teie külastatavad URL-id salvestatakse teie Google'i kontole</translation> <translation id="1910950723001426294">Jagamisvalikute loend on suletud.</translation> <translation id="1918175104945982129">Assistendi häälotsingu sisu kasutajaliides on avatud poolel kõrgusel</translation> <translation id="1919130412786645364">Luba Chrome'i sisselogimine</translation> @@ -194,7 +194,6 @@ <translation id="2000419248597011803">Saadab teie vaikeotsingumootorile mõned küpsisefailid ja otsingud teie aadressiribalt ning otsingukastist</translation> <translation id="200114059308480249">Kas kaasata ümbritsev tekst Google'i otsingutesse?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# fail}other{# faili}}</translation> -<translation id="2020309681647789787">Teie ajalugu on saadaval kõigis sünkroonitud seadmetes, et saaksite pooleli jäänud toiminguid jätkata</translation> <translation id="2021896219286479412">Saidi juhtelemendid täisekraanil</translation> <translation id="2038563949887743358">Valiku Taotle arvutisaiti sisselülitamine</translation> <translation id="204321170514947529">Rakendusel <ph name="APP_NAME" /> on samuti Chrome’i andmeid</translation> @@ -280,7 +279,6 @@ <translation id="2527779675047087889">Peida lõikelaua sisu</translation> <translation id="2532336938189706096">Veebi kuva</translation> <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> üksust kustutati</translation> -<translation id="2534582914273493287">Teie külastatavad URL-id saadetakse Google'ile</translation> <translation id="2536728043171574184">Kuvatakse on lehe võrguühenduseta koopia</translation> <translation id="2546283357679194313">Küpsised ja saidiandmed</translation> <translation id="2549516196460093976">Võite kasutada tahvelarvutit selles arvutis sisselogimiseks, milles QR-koodi kuvatakse.</translation> @@ -372,7 +370,6 @@ <translation id="2996291259634659425">Parooli loomine</translation> <translation id="2996809686854298943">Vaja on URL-i</translation> <translation id="2997081575621687554">Kui Google'i sait palub lehel olevad lingid privaatselt eellaadida, krüpteerib Chrome need lehed ja laadib need Google'i serverite kaudu ilma küpsisefailideta. See peidab teie identiteedi eellaaditud saidi eest.</translation> -<translation id="3003733539450769656">Hoiatab teid ohtlike sündmuste eest enne, kui need juhtuvad</translation> <translation id="3006881078666935414">Kasutusandmed puuduvad</translation> <translation id="301080557829842765">Privaatsusjuhis</translation> <translation id="3016635187733453316">Veenduge, et seadmel oleks internetiühendus</translation> @@ -432,6 +429,7 @@ <translation id="3284510035090979597">Ennetav abi</translation> <translation id="3285080554353377245">Videod Chrome'i kasutamise kohta</translation> <translation id="3288003805934695103">Laadige leht uuesti</translation> +<translation id="3290249595466894471">Saadab ka lehtede, allalaadimiste, laienduste tegevuse ja süsteemiteabe näidiseid, et aidata uusi ohte tuvastada.</translation> <translation id="3297344142967351106">Häälabi</translation> <translation id="3303414029551471755">Kas soovite jätkata sisu allalaadimist?</translation> <translation id="3334729583274622784">Kas muuta faililaiendit?</translation> @@ -637,7 +635,6 @@ <translation id="4558311620361989323">Veebilehe otseteed</translation> <translation id="4561730552726921821">Registreerumine õnnestus</translation> <translation id="4561979708150884304">Ühendus puudub</translation> -<translation id="4562008740775511591">Chrome pakub mõistlikke vaikevalikuid, kuid võite neid oma sirvimisharjumuste jaoks mugavamaks kohandada</translation> <translation id="4565377596337484307">Peida parool</translation> <translation id="4572422548854449519">Logige hallatud kontole sisse</translation> <translation id="4576892426230499203">Proovige mõnda teist kinnitusvõimalust</translation> @@ -919,7 +916,6 @@ <translation id="604996488070107836">Faili <ph name="FILE_NAME" /> allalaadimine ebaõnnestus tundmatu vea tõttu.</translation> <translation id="605721222689873409">aa</translation> <translation id="6059830886158432458">Hallake oma lugusid ja tegevusi siin</translation> -<translation id="6069177176307973611">Vaadake üle privaatsuse ja turvalisuse seaded</translation> <translation id="6070730414166672373">Pangaga ühenduse võtmine \u2026</translation> <translation id="6085886413119427067">Määrab, kuidas veebisaitidega turvaline ühendus luua</translation> <translation id="6091413777268123602">Privaatsuse liivakasti prooviversioonide puhul saavad saidid pakkuda samasugust sirvimiskogemust, kasutades väiksemat andmemahtu. See suurendab teie privaatsust ja vähendab saitidevahelist jälgimist. Lisame uued prooviversioonid, kui need on testimiseks valmis.</translation> @@ -1040,6 +1036,7 @@ <translation id="6641780377503683465">Eemalda <ph name="INTEREST" /></translation> <translation id="6643016212128521049">Tühjenda</translation> <translation id="6645629752388991326">Hallake, millised seadmed saavad seda seadet turvavõtmena kasutades sisse logida.</translation> +<translation id="6647441008198474441">Teie külastatavad URL-id saadetakse Google'ile, et prognoosida, milliseid saite võiksite järgmisena külastada</translation> <translation id="6648459603387803038">Teie administraator saab brauseri seadistust kaugühenduse kaudu muuta. Selle seadme tegevusi võidakse hallata ka väljaspool Chrome'i.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 ja veel <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}other{<ph name="CONTACT_PREVIEW" />\u2026 ja veel <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}}</translation> <translation id="6649642165559792194">Kujutise eelvaade <ph name="BEGIN_NEW" />Uus<ph name="END_NEW" /></translation> @@ -1047,7 +1044,6 @@ <translation id="6659594942844771486">Vaheleht</translation> <translation id="666731172850799929">Ava rakenduses <ph name="APP_NAME" /></translation> <translation id="6671495933530132209">Kopeeri kujutis</translation> -<translation id="6674044799624355221">Saadab lehtede, allalaadimiste, laienduste tegevuse ja süsteemiteabe näidiseid, et aidata uusi ohte tuvastada</translation> <translation id="6674571176963658787">Sünkroonimise alustamiseks sisestage oma parool</translation> <translation id="6676840375528380067">Kas kustutada sellest seadmest Chrome'i andmed?</translation> <translation id="6684809838922667136">Chrome'i täiustamine</translation> @@ -1069,7 +1065,6 @@ <translation id="6802555630140434547">Aken suletakse</translation> <translation id="6811034713472274749">Leht on vaatamiseks valmis</translation> <translation id="6813446258015311409">Chrome'i sisselogimine, avatud.</translation> -<translation id="6814033694018386318">Mida te Google'iga jagate?</translation> <translation id="6817747507826986771">Jagage kiirelt seda lehte. Selle otsetee muutmiseks puudutage pikalt.</translation> <translation id="6819199143469632133">Selleks et oma Google'i sisule eri seadmetes juurde pääseda, logige sisse</translation> <translation id="6820686453637990663">CVC</translation> @@ -1164,6 +1159,7 @@ <translation id="7352939065658542140">VIDEO</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{Jaga 1 valitud üksust}other{Jaga # valitud üksust}}</translation> <translation id="7359002509206457351">Makseviisidele juurdepääsemine</translation> +<translation id="7363349185727752629">Teie privaatsusvalikute juhend</translation> <translation id="7375125077091615385">Tüüp:</translation> <translation id="7376560087009844242">Kaasates rohkem lehe teksti võite näha paremaid tulemusi, kui kasutate otsimiseks puudutamist. Selle muutmiseks võite alati avada <ph name="BEGIN_LINK" />seaded<ph name="END_LINK" />.</translation> <translation id="7379900596734708416">Saitide tume teema on saadaval</translation> @@ -1263,6 +1259,7 @@ <translation id="7876243839304621966">Eemalda kõik</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{Teil on <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> lugemata leht}other{Teil on <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> lugemata lehte}}</translation> <translation id="7886917304091689118">Töötab Chrome'is</translation> +<translation id="7887174313503389866">Vaadake peamiste privaatsus- ja turvaseadete tutvustust. Lisavalikute nägemiseks avage individuaalsed seaded.</translation> <translation id="7887334752153342268">Tee koopia</translation> <translation id="789763218334337857">Chrome'i kasutamine</translation> <translation id="7903184275147100332">See võib võtta minuti</translation> @@ -1376,6 +1373,7 @@ <translation id="8445448999790540984">Paroole ei saa eksportida</translation> <translation id="8446884382197647889">Lisateave</translation> <translation id="8453310803815879010">Dinosaurusemängu alustamine</translation> +<translation id="8460448946170646641">Vaadake üle peamised privaatsus- ja turvaseaded</translation> <translation id="8461694314515752532">Krüpteeri sünkroonitud andmed sünkroonimisparooliga</translation> <translation id="8466613982764129868">Veenduge, et seadmel <ph name="TARGET_DEVICE_NAME" /> oleks internetiühendus</translation> <translation id="8473863474539038330">Aadressid ja muu</translation> @@ -1421,6 +1419,7 @@ <translation id="8636825310635137004">Vahelehtede hankimiseks oma teistest seadmetest lülitage sünkroonimine sisse.</translation> <translation id="8641930654639604085">Proovi blokeerida täiskasvanutele mõeldud saidid</translation> <translation id="864544049772947936">Akende haldamine (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">Ennustab ohtlikke sündmusi ja hoiatab teid</translation> <translation id="8646467750715887511">Lehed laaditakse alles pärast nende avamist.</translation> <translation id="8655129584991699539">Andmeid saab kustutada Chrome’i seadetes.</translation> <translation id="8659579665266920523">Kuidas Chrome'iga otsida?</translation> @@ -1433,7 +1432,6 @@ <translation id="867767487203716855">Järgmine värskendus</translation> <translation id="8683039184091909753">pilt</translation> <translation id="8683081248374354009">Lähtesta grupp</translation> -<translation id="8683526617475118045">Mida see teile annab?</translation> <translation id="869891660844655955">Aegumiskuupäev</translation> <translation id="8699120352855309748">Ära paku nende keelte tõlkimist</translation> <translation id="8712637175834984815">Selge</translation> @@ -1517,7 +1515,6 @@ <translation id="9148126808321036104">Logige uuesti sisse</translation> <translation id="9158770349521403363">Jagatakse vaid sisu</translation> <translation id="9159716826369098114"><ph name="TAB_COUNT" /> vahelehega vahelehegrupi taastamine uue taustal oleva vahelehegrupina.</translation> -<translation id="916446198114569890">Teie külastatavad URL-id salvestatakse teie Google'i kontole</translation> <translation id="9169507124922466868">Navigeerimisajalugu on pooleldi avatud</translation> <translation id="9187955620966010988">Reaktsiooni kohandati</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{Kontrolliti 1 minut tagasi}other{Kontrolliti # minutit tagasi}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_eu.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_eu.xtb index 330c1c5..55365ebd 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_eu.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_eu.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">Ez eskaini webgune hauek itzultzea</translation> <translation id="1145536944570833626">Ezabatu lehendik dauden datuak.</translation> <translation id="1146678959555564648">Sartu EB moduan</translation> -<translation id="114825011539563458">Berrikusi pribatutasuna eta segurtasuna kontrolatzeko aukera garrantzitsuenak toki bakarrean</translation> <translation id="1149401351239820326">Iraungitze-hilabetea</translation> <translation id="1150263420752757504">Chrome-n irekiko da <ph name="APP_NAME" />. Aurrera egiten baduzu, onartu egingo dituzu <ph name="BEGIN_LINK1" />Google-ren Zerbitzu-baldintzak<ph name="END_LINK1" /> eta <ph name="BEGIN_LINK2" />Google Chrome-ren eta Chrome OS-ren Zerbitzu-baldintza gehigarriak<ph name="END_LINK2" />.</translation> <translation id="1154704303112745282">Orria ez dago erabilgarri konexiorik gabe: <ph name="VIOLATED_URL" /></translation> @@ -170,6 +169,7 @@ <translation id="189358972401248634">Beste hizkuntzak</translation> <translation id="1894023287452300670">Egin prezioaren jarraipena hemen</translation> <translation id="1900260903084164610">Aurrera egiten baduzu, onartu egingo dituzu <ph name="BEGIN_TOS_LINK" />Zerbitzu-baldintzak<ph name="END_TOS_LINK" />.</translation> +<translation id="1904580727789512086">Bisitatzen dituzun URLak Google-ko kontuan gordetzen dira</translation> <translation id="1910950723001426294">Partekatze-aukeren zerrenda itxita dago.</translation> <translation id="1918175104945982129">Ahozko bilaketa egite aldera Laguntzailea zerbitzuari baimena emateko erabiltzaile-interfazea altuera erdian irekita dago</translation> <translation id="1919130412786645364">Baimendu Chrome-n saioa hastea</translation> @@ -194,7 +194,6 @@ <translation id="2000419248597011803">Helbide-barrako zein bilaketa-koadroko bilaketak eta cookie batzuk bidaltzen ditu bilatzaile lehenetsira</translation> <translation id="200114059308480249">Barne hartu nahi al duzu inguruko testua Google-ko bilaketetan?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# fitxategi}other{# fitxategi}}</translation> -<translation id="2020309681647789787">Sinkronizatutako gailu guztietan ikusi ahalko duzu historia, egiten ari zinenari berrekiteko</translation> <translation id="2021896219286479412">Webgunearen pantaila osoko aukerak</translation> <translation id="2038563949887743358">Aktibatu ordenagailuetarako webgunea eskatzeko aukera</translation> <translation id="204321170514947529"><ph name="APP_NAME" /> aplikazioak ere baditu datuak Chrome-n</translation> @@ -280,7 +279,6 @@ <translation id="2527779675047087889">Ezkutatu arbeleko edukia</translation> <translation id="2532336938189706096">Web-ikuspegia</translation> <translation id="2534155362429831547">Ezabatu dira <ph name="NUMBER_OF_ITEMS" /> elementu</translation> -<translation id="2534582914273493287">Bisitatzen dituzun URLak Google-ri bidaltzen zaizkio</translation> <translation id="2536728043171574184">Orriaren konexiorik gabeko kopia ikusten ari zara</translation> <translation id="2546283357679194313">Cookieak eta webguneetako datuak</translation> <translation id="2549516196460093976">Tableta hau erabil dezakezu QR kode hau erakusten ari den ordenagailuan saioa hasteko.</translation> @@ -372,7 +370,6 @@ <translation id="2996291259634659425">Sortu pasaesaldia</translation> <translation id="2996809686854298943">URLa derrigorrezkoa da</translation> <translation id="2997081575621687554">Google-ren webgune batek orriko estekak modu pribatuan aurrez kargatzeko eskatzen duenean, Chrome-k Google-ren zerbitzarien bidez enkriptatzen eta aurrez kargatzen ditu orri horiek, cookierik gabe. Horrela, zure identitatea ezkutatzen zaio aurrez kargatutako webguneari.</translation> -<translation id="3003733539450769656">Gertaera arriskutsuen berri ematen dizu gertatu aurretik</translation> <translation id="3006881078666935414">Ez dago erabilerari buruzko daturik</translation> <translation id="301080557829842765">Pribatutasun-gida</translation> <translation id="3016635187733453316">Ziurtatu gailua Internetera konektatuta dagoela</translation> @@ -432,6 +429,7 @@ <translation id="3284510035090979597">Laguntza proaktiboa</translation> <translation id="3285080554353377245">Chrome erabiltzeko argibideei buruzko bideoak</translation> <translation id="3288003805934695103">Orria berriro kargatu.</translation> +<translation id="3290249595466894471">Gainera, orrien, deskargen, luzapenen jardueren eta sistemaren informazioaren lagin txikiak bidaltzen ditu mehatxu berriak aurkitu ahal izateko.</translation> <translation id="3297344142967351106">Ahozko laguntza</translation> <translation id="3303414029551471755">Aurrera egin eta edukia deskargatu nahi duzu?</translation> <translation id="3334729583274622784">Fitxategi-luzapena aldatu nahi duzu?</translation> @@ -637,7 +635,6 @@ <translation id="4558311620361989323">Web-orrietarako lasterbideak</translation> <translation id="4561730552726921821">Erregistratu da</translation> <translation id="4561979708150884304">Ez zaude konektatuta Internetera</translation> -<translation id="4562008740775511591">Chrome-k arrazoizko balio lehenetsiak eskaintzen ditu, baina pertsonalizatu egin ditzakezu arakatzeko duzun modura egokitzearren</translation> <translation id="4565377596337484307">Ezkutatu pasahitza</translation> <translation id="4572422548854449519">Hasi saioa kontu kudeatuan</translation> <translation id="4576892426230499203">Probatu beste egiaztapen-aukera bat</translation> @@ -919,7 +916,6 @@ <translation id="604996488070107836">Ezin izan da deskargatu <ph name="FILE_NAME" /> errore ezezagun bat gertatu delako.</translation> <translation id="605721222689873409">UU</translation> <translation id="6059830886158432458">Kontrolatu istorioak eta jarduerak hemen</translation> -<translation id="6069177176307973611">Berrikusi pribatutasun- eta segurtasun-ezarpenak</translation> <translation id="6070730414166672373">Bankuarekin harremanetan jartzen\u2026</translation> <translation id="6085886413119427067">Webguneetara konexio seguru baten bidez nola konektatu zehazten du</translation> <translation id="6091413777268123602">Privacy Sandbox-aren probei esker, berdin arakatu ahalko dituzu webguneak datu gutxiago erabilita. Pribatutasun handiagoa izango duzula eta webguneen arteko jarraipena mugatuko dela esan nahi du horrek. Proba berriak gehituko ditugu kaleratzeko prest egon ahala.</translation> @@ -1040,6 +1036,7 @@ <translation id="6641780377503683465">Kendu <ph name="INTEREST" /></translation> <translation id="6643016212128521049">Garbitu</translation> <translation id="6645629752388991326">Kontrolatu zein beste gailuk has dezakeen saioa gailu hau segurtasun giltza gisa erabilita.</translation> +<translation id="6647441008198474441">Bisitatzen dituzun URLak Google-ri bidaltzen zaizkio etorkizunean zein webgune bisitatuko dituzun aurreikusteko</translation> <translation id="6648459603387803038">Administratzaileak urrunetik alda dezake arakatzailearen konfigurazioa. Baliteke gailu honetako jarduerak Chrome-tik kanpo ere kudeatzea.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" /> eta beste <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}other{<ph name="CONTACT_PREVIEW" /> eta beste <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}}</translation> <translation id="6649642165559792194">Aurreikusi irudia <ph name="BEGIN_NEW" />Berria<ph name="END_NEW" /></translation> @@ -1047,7 +1044,6 @@ <translation id="6659594942844771486">Fitxa</translation> <translation id="666731172850799929">Ireki <ph name="APP_NAME" /> aplikazioan</translation> <translation id="6671495933530132209">Kopiatu irudia</translation> -<translation id="6674044799624355221">Orrien, deskargen, luzapenetako jardueren eta sistemaren informazioaren lagin txikiak bidaltzen ditu mehatxu berriak aurkitzen laguntzeko.</translation> <translation id="6674571176963658787">Sinkronizatzen hasteko, idatzi pasaesaldia</translation> <translation id="6676840375528380067">Gailu honetan dituzun Chrome-ko datuak garbitu nahi dituzu?</translation> <translation id="6684809838922667136">Hobetu Chrome</translation> @@ -1069,7 +1065,6 @@ <translation id="6802555630140434547">Leihoa itxi egingo da</translation> <translation id="6811034713472274749">Orria ikusteko prest dago</translation> <translation id="6813446258015311409">Hasi saioa Chrome-n, irekita.</translation> -<translation id="6814033694018386318">Zer partekatuko duzu Google-rekin?</translation> <translation id="6817747507826986771">Partekatu orria bizkor. Lasterbidea editatzeko, eduki ezazu sakatuta.</translation> <translation id="6819199143469632133">Google-ko gauzak gailuetan edukitzeko, hasi saioa</translation> <translation id="6820686453637990663">CVC</translation> @@ -1164,6 +1159,7 @@ <translation id="7352939065658542140">BIDEOA</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{Partekatu hautatutako elementua}other{Partekatu hautatutako # elementuak}}</translation> <translation id="7359002509206457351">Atzitu ordainketa-metodoak</translation> +<translation id="7363349185727752629">Zure pribatutasun-aukeren gida bat</translation> <translation id="7375125077091615385">Mota:</translation> <translation id="7376560087009844242">Orriko testu gehiago barne hartuz gero, agian emaitza hobeak ikusiko dituzu Sakatu bilatzeko erabiltzean. Aukera hori aldatzeko, joan <ph name="BEGIN_LINK" />ezarpenetara<ph name="END_LINK" />.</translation> <translation id="7379900596734708416">Webguneetarako gai iluna erabilgarri dago</translation> @@ -1263,6 +1259,7 @@ <translation id="7876243839304621966">Kendu guztiak</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{<ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> orri duzu irakurri gabe}other{<ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> orri dituzu irakurri gabe}}</translation> <translation id="7886917304091689118">Chrome-n abian da</translation> +<translation id="7887174313503389866">Egin pribatutasuna eta segurtasuna kontrolatzeko aukera garrantzitsuenei buruzko txango gidatu bat. Aukera gehiago ikusteko, joan ezarpen bakoitzera.</translation> <translation id="7887334752153342268">Bikoiztu</translation> <translation id="789763218334337857">Chrome erabiltzeko argibideak</translation> <translation id="7903184275147100332">Minutu bat beharko da</translation> @@ -1376,6 +1373,7 @@ <translation id="8445448999790540984">Ezin dira esportatu pasahitzak</translation> <translation id="8446884382197647889">Lortu informazio gehiago</translation> <translation id="8453310803815879010">Abiarazi Dino jokoa</translation> +<translation id="8460448946170646641">Berrikusi pribatutasuna eta segurtasuna kontrolatzeko aukera garrantzitsuenak</translation> <translation id="8461694314515752532">Enkriptatu sinkronizatutako datuak sinkronizazio-pasaesaldiarekin</translation> <translation id="8466613982764129868">Ziurtatu <ph name="TARGET_DEVICE_NAME" /> Internetera konektatuta dagoela</translation> <translation id="8473863474539038330">Helbideak eta beste</translation> @@ -1421,6 +1419,7 @@ <translation id="8636825310635137004">Beste gailuetako fitxak eskura izateko, aktibatu sinkronizazioa.</translation> <translation id="8641930654639604085">Blokeatu helduentzako webguneak</translation> <translation id="864544049772947936">Kudeatu leihoak (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">Gertaera arriskutsuak iragartzen ditu eta haien berri ematen dizu gertatu aurretik.</translation> <translation id="8646467750715887511">Irekiz gero soilik kargatzen dira orriak.</translation> <translation id="8655129584991699539">Chrome ezarpenetan garbi ditzakezu datuak</translation> <translation id="8659579665266920523">Chrome-rekin bilatzeko argibideak</translation> @@ -1433,7 +1432,6 @@ <translation id="867767487203716855">Hurrengo eguneratzea</translation> <translation id="8683039184091909753">irudia</translation> <translation id="8683081248374354009">Berrezarri taldea</translation> -<translation id="8683526617475118045">Zer lortuko duzu?</translation> <translation id="869891660844655955">Iraungitze-data</translation> <translation id="8699120352855309748">Ez eskaini hizkuntza hauek itzultzea</translation> <translation id="8712637175834984815">Ados</translation> @@ -1517,7 +1515,6 @@ <translation id="9148126808321036104">Hasi saioa berriro</translation> <translation id="9158770349521403363">Partekatu edukia soilik</translation> <translation id="9159716826369098114">Leheneratu <ph name="TAB_COUNT" /> fitxako taldea atzeko planoko fitxa talde berri gisa.</translation> -<translation id="916446198114569890">Bisitatzen dituzun URLak Google-ko kontuan gordetzen dira</translation> <translation id="9169507124922466868">Nabigazio-historia erdi irekita dago</translation> <translation id="9187955620966010988">Doitu da erreakzioa</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{Duela 1 minutu egiaztatu du}other{Duela # minutu egiaztatu du}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_fa.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_fa.xtb index c73612b..b5d244e3 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_fa.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_fa.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">ترجمه این سایتها پیشنهاد نشود</translation> <translation id="1145536944570833626">حذف دادههای موجود.</translation> <translation id="1146678959555564648">VR را وارد کنید</translation> -<translation id="114825011539563458">مهمترین کنترلهای امنیتی و حریم خصوصی در یکجا گردآوری شدهاند</translation> <translation id="1149401351239820326">ماه انقضا</translation> <translation id="1150263420752757504"><ph name="APP_NAME" /> در Chrome باز میشود. درصورت ادامه دادن، با <ph name="BEGIN_LINK1" />شرایط خدمات Google<ph name="END_LINK1" /> و <ph name="BEGIN_LINK2" />شرایط خدمات تکمیلی Google Chrome و ChromeOS<ph name="END_LINK2" /> موافقت میکنید.</translation> <translation id="1154704303112745282">صفحه <ph name="VIOLATED_URL" /> بهصورت آفلاین دردسترس نیست</translation> @@ -170,6 +169,7 @@ <translation id="189358972401248634">زبانهای دیگر</translation> <translation id="1894023287452300670">قیمت را در اینجا پیگیری کنید</translation> <translation id="1900260903084164610">درصورت ادامه دادن، موافقتتان را با <ph name="BEGIN_TOS_LINK" />شرایط خدمات<ph name="END_TOS_LINK" /> اعلام میکنید.</translation> +<translation id="1904580727789512086">نشانیهای وبی که بازدید میکنید در «حساب Google» شما ذخیره میشوند</translation> <translation id="1910950723001426294">فهرست گزینههای همرسانی بسته است.</translation> <translation id="1918175104945982129">واسط کاربر رضایت برای جستجوی گفتاری «دستیار» تا نیمه باز شد</translation> <translation id="1919130412786645364">مجاز کردن ورود به سیستم Chrome</translation> @@ -194,7 +194,6 @@ <translation id="2000419248597011803">برخی کوکیها و جستجوها را از نوار نشانی و جعبه جستجو به موتور جستجوی پیشفرض ارسال میکند</translation> <translation id="200114059308480249">نوشتار اطراف در جستجوهای Google لحاظ شوند؟</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# فایل}one{# فایل}other{# فایل}}</translation> -<translation id="2020309681647789787">سابقه ذخیرهشده در همه دستگاههای همگامسازیشده را دراختیار خواهید داشت تا بتوانید آنچه را انجام میدادید ادامه دهید</translation> <translation id="2021896219286479412">کنترلهای سایت تمامصفحه</translation> <translation id="2038563949887743358">روشن کردن درخواست سایت رایانهای</translation> <translation id="204321170514947529"><ph name="APP_NAME" /> دادههایی در Chrome نیز دارد</translation> @@ -280,7 +279,6 @@ <translation id="2527779675047087889">پنهان کردن محتوای بریدهدان</translation> <translation id="2532336938189706096">نمای وب</translation> <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> مورد حذف شد</translation> -<translation id="2534582914273493287">نشانیهای وبی که بازدید میکنید به Google ارسال میشوند</translation> <translation id="2536728043171574184">مشاهده یک کپی آفلاین از این صفحه</translation> <translation id="2546283357679194313">کوکیها و دادههای سایت</translation> <translation id="2549516196460093976">بااستفاده از این رایانه لوحی میتوانید در رایانهای که این رمزینه پاسخسریع را نمایش میدهد به سیستم وارد شوید.</translation> @@ -372,7 +370,6 @@ <translation id="2996291259634659425">ایجاد گذرعبارت</translation> <translation id="2996809686854298943">نشانی وب لازم است</translation> <translation id="2997081575621687554">وقتی یک سایت Google برای پیشبارگیری خصوصی پیوندها در صفحهاش درخواست میکند، Chrome صفحات را بدون کوکیها ازطریق سرورهای Google رمزگذاری و پیشبارگیری میکند. با این کار هویتتان از سایت پیشبارگیریشده پنهان میشود.</translation> -<translation id="3003733539450769656">پیشاز اینکه رویدادهای خطرناک اتفاق بیفتد درباره آنها به شما هشدار میدهد</translation> <translation id="3006881078666935414">هیچ داده مصرفی وجود ندارد</translation> <translation id="301080557829842765">راهنمای حریم خصوصی</translation> <translation id="3016635187733453316">مطمئن شوید این دستگاه به اینترنت متصل باشد</translation> @@ -432,6 +429,7 @@ <translation id="3284510035090979597">کمک کنشگرایانه</translation> <translation id="3285080554353377245">ویدیوهایی درباره نحوه استفاده از Chrome</translation> <translation id="3288003805934695103">تازهسازی صفحه</translation> +<translation id="3290249595466894471">نمونه کوچکی از صفحات، بارگیریها، فعالیت افزونه، و اطلاعات سیستم را هم ارسال میکند تا به کشف تهدیدهای جدید کمک کند</translation> <translation id="3297344142967351106">دستیار صوتی</translation> <translation id="3303414029551471755">ادامه میدهید و محتوا را بارگیری میکنید؟</translation> <translation id="3334729583274622784">پسوند فایل تغییر کند؟</translation> @@ -637,7 +635,6 @@ <translation id="4558311620361989323">میانبرهای صفحه وب</translation> <translation id="4561730552726921821">ثبت انجام شد</translation> <translation id="4561979708150884304">اتصال برقرار نیست</translation> -<translation id="4562008740775511591">Chrome پیشفرضهایی منطقی ارائه میدهد، اما میتوانید آن را سفارشی کنید تا بهبهترین شکل با عادات مرورتان هماهنگ شود</translation> <translation id="4565377596337484307">عدم نمایش گذرواژه</translation> <translation id="4572422548854449519">به حساب مدیریتشده وارد شوید</translation> <translation id="4576892426230499203">امتحان کردن گزینه تأیید دیگر</translation> @@ -919,7 +916,6 @@ <translation id="604996488070107836">بهدلیل خطایی ناشناس، بارگیری <ph name="FILE_NAME" /> انجام نشد.</translation> <translation id="605721222689873409">سال</translation> <translation id="6059830886158432458">داستانها و فعالیت خود را اینجا کنترل کنید</translation> -<translation id="6069177176307973611">مرور تنظیمات حریم خصوصی و امنیت</translation> <translation id="6070730414166672373">درحال تماس با بانک\u2026</translation> <translation id="6085886413119427067">تعیین چگونگی اتصال به وبسایتها ازطریق اتصالی ایمن</translation> <translation id="6091413777268123602">با دورههای آزمایشی «جعبه ایمنی حریم خصوصی»، سایتها میتوانند تجربه مرور یکسانی را با مصرف دادههای شخصی کمتر ارائه دهند. یعنی حریم خصوصی شما افزایش و ردیابی بینسایتی کاهش پیدا میکند. هروقت دورههای آزمایشی جدیدی برای آزمایش کردن آماده شد، آنها را اضافه میکنیم.</translation> @@ -1040,6 +1036,7 @@ <translation id="6641780377503683465">برداشتن <ph name="INTEREST" /></translation> <translation id="6643016212128521049">پاک کردن</translation> <translation id="6645629752388991326">کنترل کنید کدام دستگاهها میتوانند بااستفاده از این دستگاه بهعنوان کلید امنیتی به سیستم وارد شوند.</translation> +<translation id="6647441008198474441">نشانیهای وبی که بازدید میکنید به Google ارسال میشود تا پیشبینی شود ممکن است بعداً از چه سایتهایی بازدید کنید</translation> <translation id="6648459603387803038">سرپرستتان میتواند تنظیم مرورگرتان را ازراهدور تغییر دهد. فعالیت انجامشده در این دستگاه میتواند از خارج از Chrome هم مدیریت شود.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 و <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> گزینه تماس دیگر}one{<ph name="CONTACT_PREVIEW" />\u2026 و <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> گزینه تماس دیگر}other{<ph name="CONTACT_PREVIEW" />\u2026 و <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> گزینه تماس دیگر}}</translation> <translation id="6649642165559792194">پیشنمایش تصویر <ph name="BEGIN_NEW" />جدید<ph name="END_NEW" /></translation> @@ -1047,7 +1044,6 @@ <translation id="6659594942844771486">برگه</translation> <translation id="666731172850799929">باز کردن در <ph name="APP_NAME" /></translation> <translation id="6671495933530132209">کپی تصویر</translation> -<translation id="6674044799624355221">نمونه کوچکی از صفحهها، بارگیریها، فعالیت افزونه، و اطلاعات سیستم را ارسال میکند تا به کشف تهدیدهای جدید کمک کند</translation> <translation id="6674571176963658787">برای شروع همگامسازی، گذرعبارت را وارد کنید</translation> <translation id="6676840375528380067">دادههای Chrome شما از این دستگاه پاک شود؟</translation> <translation id="6684809838922667136">بهتر کردن Chrome</translation> @@ -1069,7 +1065,6 @@ <translation id="6802555630140434547">این پنجره بسته خواهد شد</translation> <translation id="6811034713472274749">صفحه آماده مشاهده است</translation> <translation id="6813446258015311409">ورود به سیستم Chrome، باز شد.</translation> -<translation id="6814033694018386318">آنچه با Google همرسانی میکنید</translation> <translation id="6817747507826986771">بهسرعت این صفحه را همرسانی کنید. برای ویرایش این میانبر، لمس کنید و نگه دارید.</translation> <translation id="6819199143469632133">برای دریافت موارد مربوط به Google در دستگاهها، به سیستم وارد شوید</translation> <translation id="6820686453637990663">CVC</translation> @@ -1164,6 +1159,7 @@ <translation id="7352939065658542140">ویدیو</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{اشتراکگذاری ۱ مورد انتخابشده}one{اشتراکگذاری # مورد انتخابشده}other{اشتراکگذاری # مورد انتخابشده}}</translation> <translation id="7359002509206457351">دسترسی به روشهای پرداخت</translation> +<translation id="7363349185727752629">راهنمای گزینههای حریم خصوصی</translation> <translation id="7375125077091615385">نوع:</translation> <translation id="7376560087009844242">با لحاظ کردن بخش بیشتری از نوشتار صفحه، ممکن هنگام استفاده از «لمس کردن برای جستجو» نتایج بهتری دریافت کنید. همواره میتوانید با رفتن به <ph name="BEGIN_LINK" />تنظیمات<ph name="END_LINK" /> این مورد را تغییر دهید.</translation> <translation id="7379900596734708416">زمینه تیره برای سایتها دردسترس است</translation> @@ -1263,6 +1259,7 @@ <translation id="7876243839304621966">حذف همه</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{<ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> صفحه خواندهنشده دارید}one{<ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> صفحه خواندهنشده دارید}other{<ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> صفحه خواندهنشده دارید}}</translation> <translation id="7886917304091689118">درحال اجرا در Chrome</translation> +<translation id="7887174313503389866">در گشت با راهنمای مربوط به کنترلهای اصلی امنیت و حریم خصوصی شرکت کنید. برای گزینههای بیشتر، بهطور جداگانه به هر تنظیم بروید.</translation> <translation id="7887334752153342268">کپیبرداری</translation> <translation id="789763218334337857">نحوه استفاده از Chrome</translation> <translation id="7903184275147100332">ممکن است یک دقیقه طول بکشد</translation> @@ -1376,6 +1373,7 @@ <translation id="8445448999790540984">گذرواژهها صادر نشدند</translation> <translation id="8446884382197647889">بیشتر بدانید</translation> <translation id="8453310803815879010">شروع بازی داینو</translation> +<translation id="8460448946170646641">مرور کنترلهای اصلی امنیت و حریم خصوصی</translation> <translation id="8461694314515752532">رمزگذاری دادههای همگامسازیشده با گذرعبارت همگامسازی خودتان</translation> <translation id="8466613982764129868">مطمئن شوید <ph name="TARGET_DEVICE_NAME" /> به اینترنت متصل باشد</translation> <translation id="8473863474539038330">نشانیها و سایر موارد</translation> @@ -1421,6 +1419,7 @@ <translation id="8636825310635137004">برای دسترسی به برگههایتان در دستگاههای دیگر، همگامسازی را روشن کنید.</translation> <translation id="8641930654639604085">سایتهای مخصوص بزرگسالان مسدود شوند</translation> <translation id="864544049772947936">مدیریت پنجرهها (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">رویدادهای خطرناک را پیش از اینکه اتفاق بیفتند پیشبینی میکند و درباره آنها به شما هشدار میدهد</translation> <translation id="8646467750715887511">صفحات فقط بعداز باز شدن بارگیری میشوند.</translation> <translation id="8655129584991699539">میتوانید دادهها را در تنظیمات Chrome پاک کنید</translation> <translation id="8659579665266920523">نحوه جستجو با Chrome</translation> @@ -1433,7 +1432,6 @@ <translation id="867767487203716855">بهروزرسانی بعدی</translation> <translation id="8683039184091909753">تصویر</translation> <translation id="8683081248374354009">بازنشانی گروه</translation> -<translation id="8683526617475118045">مزایایی که دریافت میکنید</translation> <translation id="869891660844655955">تاریخ انقضا</translation> <translation id="8699120352855309748">ترجمه این زبانها پیشنهاد نشود</translation> <translation id="8712637175834984815">متوجه شدم</translation> @@ -1517,7 +1515,6 @@ <translation id="9148126808321036104">ورود مجدد به سیستم</translation> <translation id="9158770349521403363">فقط همرسانی محتوا</translation> <translation id="9159716826369098114">بازیابی گروه برگه <ph name="TAB_COUNT" /> برگهای بهعنوان گروه برگه جدید پسزمینه.</translation> -<translation id="916446198114569890">نشانیهای وبی که بازدید میکنید در حساب Google شما ذخیره میشود</translation> <translation id="9169507124922466868">سابقه «پیمایش» نیمهباز است</translation> <translation id="9187955620966010988">واکنش تنظیم شد</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{آخرین بررسی: ۱ دقیقه قبل}one{آخرین بررسی: # دقیقه قبل}other{آخرین بررسی: # دقیقه قبل}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_fi.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_fi.xtb index 93bf611..a6dc43a 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_fi.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_fi.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">Älä ehdota näiden sivustojen kääntämistä</translation> <translation id="1145536944570833626">Poistaa olemassa olevat tiedot.</translation> <translation id="1146678959555564648">Siirry VR-tilaan</translation> -<translation id="114825011539563458">Löydät tärkeimmät yksityisyys- ja suojausasetukset yhdestä paikasta</translation> <translation id="1149401351239820326">Viimeinen voimassaolokuukausi</translation> <translation id="1150263420752757504"><ph name="APP_NAME" /> avautuu Chromessa. Jatkamalla hyväksyt <ph name="BEGIN_LINK1" />Googlen käyttöehdot<ph name="END_LINK1" /> ja <ph name="BEGIN_LINK2" />Google Chromen ja Chrome-käyttöjärjestelmän lisäkäyttöehdot<ph name="END_LINK2" />.</translation> <translation id="1154704303112745282">Sivu ei saatavilla offline-tilassa: <ph name="VIOLATED_URL" /></translation> @@ -108,6 +107,7 @@ <translation id="1488775391433859242">Voit kirjautua sisään tämän QR-koodin näyttävälle tietokoneelle tämän puhelimen avulla.</translation> <translation id="1492417797159476138">Tallensit jo tämän käyttäjänimen sivustolle</translation> <translation id="1493287004536771723">Seuraat tätä: <ph name="SITE_NAME" /></translation> +<translation id="1502010315804028179">Päivitä Google Play Palvelut, jotta voit ylläpitää salasanoja</translation> <translation id="1506061864768559482">Hakukone</translation> <translation id="1513352483775369820">Kirjanmerkit ja verkkohistoria</translation> <translation id="1513814250881909472">Synkronoi välilehdet muilta laitteilta</translation> @@ -169,6 +169,7 @@ <translation id="189358972401248634">Muut kielet</translation> <translation id="1894023287452300670">Seuraa hintaa täältä</translation> <translation id="1900260903084164610">Jatkamalla hyväksyt <ph name="BEGIN_TOS_LINK" />käyttöehdot<ph name="END_TOS_LINK" />.</translation> +<translation id="1904580727789512086">Avaamasi URL-osoitteet tallennetaan Google-tilillesi</translation> <translation id="1910950723001426294">Jakamisvaihtoehtojen lista on suljettu.</translation> <translation id="1918175104945982129">Assistantin puhehaun suostumus-UI avattu puolen näytön kokoisena</translation> <translation id="1919130412786645364">Salli Chrome-kirjautuminen</translation> @@ -193,7 +194,6 @@ <translation id="2000419248597011803">Lähettää joitakin osoitekentän ja hakukentän kautta tehtyjä hakuja sekä joitakin evästeitä oletushakukoneellesi</translation> <translation id="200114059308480249">Sisällytetäänkö ympäröivä teksti Google-hakuihin?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# tiedosto}other{# tiedostoa}}</translation> -<translation id="2020309681647789787">Historia löytyy kaikilta synkronoiduilta laitteilta, joten voit jatkaa samasta kohdasta</translation> <translation id="2021896219286479412">Ohjaimet koko näytön tilassa</translation> <translation id="2038563949887743358">Ota käyttöön Käytä tietokoneversiota</translation> <translation id="204321170514947529"><ph name="APP_NAME" /> sisältää dataa myös Chromessa</translation> @@ -279,7 +279,6 @@ <translation id="2527779675047087889">Piilota leikepöydän sisältö</translation> <translation id="2532336938189706096">Verkkonäkymä</translation> <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> kohdetta poistettu</translation> -<translation id="2534582914273493287">Avaamasi URL-osoitteet lähetetään Googlelle</translation> <translation id="2536728043171574184">Näkyvissä on sivun offline-versio.</translation> <translation id="2546283357679194313">Evästeet ja sivustotiedot</translation> <translation id="2549516196460093976">Voit kirjautua sisään QR-koodin näyttävälle tietokoneelle tämän tabletin avulla.</translation> @@ -371,7 +370,6 @@ <translation id="2996291259634659425">Luo tunnuslause</translation> <translation id="2996809686854298943">URL-osoite vaaditaan</translation> <translation id="2997081575621687554">Kun Googlen sivusto pyytää lupaa esiladata sen sivulla olevia linkkejä yksityisesti, Chrome salaa ja esilataa sivut Googlen palvelimien kautta ilman evästeitä. Henkilöllisyytesi piilotetaan esiladatulta sivustolta.</translation> -<translation id="3003733539450769656">Varoittaa vaarallisista tapahtumista etukäteen</translation> <translation id="3006881078666935414">Ei käyttötietoja</translation> <translation id="301080557829842765">Tietosuojaopas</translation> <translation id="3016635187733453316">Varmista, että laite on yhteydessä internetiin</translation> @@ -431,6 +429,7 @@ <translation id="3284510035090979597">Proaktiivinen avustus</translation> <translation id="3285080554353377245">Video-ohjeita Chromen käyttöön</translation> <translation id="3288003805934695103">Lataa sivu uudelleen.</translation> +<translation id="3290249595466894471">Lähettää myös pienen näytteen sivuista, latauksista, laajennustoiminnasta ja järjestelmätiedoista auttaakseen löytämään uusia uhkia</translation> <translation id="3297344142967351106">Ääniapu</translation> <translation id="3303414029551471755">Jatketaanko sisällön lataamiseen?</translation> <translation id="3334729583274622784">Vaihdetaanko tiedostotunniste?</translation> @@ -636,7 +635,6 @@ <translation id="4558311620361989323">Verkkosivun pikanäppäimet</translation> <translation id="4561730552726921821">Rekisteröinti onnistui</translation> <translation id="4561979708150884304">Ei yhteyttä</translation> -<translation id="4562008740775511591">Chromessa on hyvät oletusasetukset, mutta voit muokata asetuksia vastaamaan selaustapojasi paremmin</translation> <translation id="4565377596337484307">Piilota salasana</translation> <translation id="4572422548854449519">Kirjaudu hallinnoidulle tilille</translation> <translation id="4576892426230499203">Kokeile toista vahvistustapaa</translation> @@ -918,7 +916,6 @@ <translation id="604996488070107836">Tiedoston <ph name="FILE_NAME" /> lataus epäonnistui tuntemattoman virheen vuoksi.</translation> <translation id="605721222689873409">VV</translation> <translation id="6059830886158432458">Muuta tarinoiden ja toiminnan asetuksia täällä</translation> -<translation id="6069177176307973611">Tarkista tietosuoja- ja turvallisuusasetukset</translation> <translation id="6070730414166672373">Otetaan yhteyttä pankkiisi\u2026</translation> <translation id="6085886413119427067">Määrittää, miten verkkosivustoihin yhdistetään suojatun yhteyden kautta</translation> <translation id="6091413777268123602">Privacy Sandbox ‑kokeiluilla sivustot käyttävät vähemmän dataasi, mutta voivat silti tarjota saman selauskokemuksen. Tämä tarkoittaa parempaa yksityisyyttä ja vähemmän sivustojen välistä seurantaa. Lisäämme uusia kokeiluja sitä mukaa kun ne ovat valmiina testattaviksi.</translation> @@ -1039,6 +1036,7 @@ <translation id="6641780377503683465">Poista <ph name="INTEREST" /></translation> <translation id="6643016212128521049">Tyhjennä</translation> <translation id="6645629752388991326">Hallitse, mitkä laitteet voivat kirjautua sisään käyttämällä tätä laitetta suojausavaimena.</translation> +<translation id="6647441008198474441">Avaamasi URL-osoitteet lähetetään Googlelle, jotta seuraavaksi mahdollisesti avaamasi sivustot voidaan ennakoida</translation> <translation id="6648459603387803038">Järjestelmänvalvoja voi muuttaa selaimen määrityksiä etäyhteydellä. Toimintaa tällä laitteella saatetaan ylläpitää myös Chromen ulkopuolelta.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 ja <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> muu}other{<ph name="CONTACT_PREVIEW" />\u2026 ja <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> muuta}}</translation> <translation id="6649642165559792194">Esikatsele kuva <ph name="BEGIN_NEW" />Uusi<ph name="END_NEW" /></translation> @@ -1046,7 +1044,6 @@ <translation id="6659594942844771486">Välilehti</translation> <translation id="666731172850799929">Avaa sovelluksessa <ph name="APP_NAME" /></translation> <translation id="6671495933530132209">Kopioi kuva</translation> -<translation id="6674044799624355221">Lähettää pienen näytteen sivuista, latauksista, laajennustoiminnasta ja järjestelmätiedoista auttaakseen löytämään uusia uhkia</translation> <translation id="6674571176963658787">Aloita synkronointi lisäämällä tunnuslause</translation> <translation id="6676840375528380067">Poistetaanko Chrome-data tältä laitteelta?</translation> <translation id="6684809838922667136">Entistä parempi Chrome</translation> @@ -1068,7 +1065,6 @@ <translation id="6802555630140434547">Ikkuna suljetaan</translation> <translation id="6811034713472274749">Sivu on valmis näytettäväksi</translation> <translation id="6813446258015311409">Kirjaudu Chromeen, avattu.</translation> -<translation id="6814033694018386318">Mitä jaat Googlen kanssa</translation> <translation id="6817747507826986771">Jaa sivu nopeasti. Kosketa pikakuvaketta pitkään, niin voit muokata sitä.</translation> <translation id="6819199143469632133">Kirjaudu sisään, jos haluat nähdä Google-sisältösi eri laitteilla</translation> <translation id="6820686453637990663">CVC</translation> @@ -1163,6 +1159,7 @@ <translation id="7352939065658542140">VIDEO</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{Jaa 1 valittu kohde}other{Jaa # valittua kohdetta}}</translation> <translation id="7359002509206457351">Pääsy maksutapoihin</translation> +<translation id="7363349185727752629">Ohje yksityisyysvalintoihin</translation> <translation id="7375125077091615385">Tyyppi:</translation> <translation id="7376560087009844242">Voit saada parempia tuloksia käyttäessäsi Koskettamalla hakemista, jos sisällytät enemmän tekstiä sivulta. Voit muuttaa tätä milloin tahansa <ph name="BEGIN_LINK" />asetuksista<ph name="END_LINK" />.</translation> <translation id="7379900596734708416">Sivustojen tumma teema on saatavilla</translation> @@ -1262,6 +1259,7 @@ <translation id="7876243839304621966">Poista kaikki</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{Sinulla on <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> lukematon sivu}other{Sinulla on <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> lukematonta sivua}}</translation> <translation id="7886917304091689118">Käynnissä Chromessa</translation> +<translation id="7887174313503389866">Osallistu tärkeimpien yksityisyys‑ ja turvallisuusasetusten esittelyyn. Lisää vaihtoehtoja yksittäisissä asetuksissa.</translation> <translation id="7887334752153342268">Monista</translation> <translation id="789763218334337857">Miten Chromea käytetään</translation> <translation id="7903184275147100332">Tämä voi kestää hetken</translation> @@ -1375,6 +1373,7 @@ <translation id="8445448999790540984">Salasanojen vienti epäonnistui</translation> <translation id="8446884382197647889">Lisätietoja</translation> <translation id="8453310803815879010">Aloita Dino-peli</translation> +<translation id="8460448946170646641">Tarkista tärkeimmät yksityisyys‑ ja turvallisuusasetukset</translation> <translation id="8461694314515752532">Salaa synkronoidut tiedot oman synkronoinnin tunnuslauseesi avulla</translation> <translation id="8466613982764129868">Varmista, että <ph name="TARGET_DEVICE_NAME" /> on yhteydessä internetiin</translation> <translation id="8473863474539038330">Osoitteet ja muita tietoja</translation> @@ -1420,6 +1419,7 @@ <translation id="8636825310635137004">Ota synkronointi käyttöön, niin voit käyttää välilehtiäsi kaikilla laitteilla.</translation> <translation id="8641930654639604085">Pyri estämään aikuisille tarkoitetut sivustot</translation> <translation id="864544049772947936">Ylläpidä ikkunoita (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">Ennustaa vaarallisia tapahtumia ja varoittaa niistä etukäteen</translation> <translation id="8646467750715887511">Sivut latautuvat vasta, kun avaat ne.</translation> <translation id="8655129584991699539">Voit tyhjentää datan Chromen asetuksissa</translation> <translation id="8659579665266920523">Miten haet Chromella</translation> @@ -1432,7 +1432,6 @@ <translation id="867767487203716855">Seuraava päivitys</translation> <translation id="8683039184091909753">kuva</translation> <translation id="8683081248374354009">Nollaa ryhmä</translation> -<translation id="8683526617475118045">Mitä saat käyttöösi</translation> <translation id="869891660844655955">Vanhenemispäivämäärä</translation> <translation id="8699120352855309748">Älä ehdota näiden kielten kääntämistä</translation> <translation id="8712637175834984815">Ymmärretty</translation> @@ -1516,7 +1515,6 @@ <translation id="9148126808321036104">Kirjaudu sisään uudelleen</translation> <translation id="9158770349521403363">Jaa vain sisältö</translation> <translation id="9159716826369098114">Palauta <ph name="TAB_COUNT" /> välilehden välilehtiryhmä uutena taustavälilehtiryhmänä.</translation> -<translation id="916446198114569890">Avaamasi URL-osoitteet tallennetaan Google-tilillesi</translation> <translation id="9169507124922466868">Navigointihistoria on puoliksi auki</translation> <translation id="9187955620966010988">Reaktiota muutettu</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{Tarkistettu 1 minuutti sitten}other{Tarkistettu # minuuttia sitten}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_fil.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_fil.xtb index 6ac4191c..1a967422 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_fil.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_fil.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">Huwag mag-alok na isalin ang mga site na ito</translation> <translation id="1145536944570833626">I-delete ang kasalukuyang data.</translation> <translation id="1146678959555564648">Pumasok sa VR</translation> -<translation id="114825011539563458">Ang pinakamahahalagang kontrol sa privacy at seguridad sa iisang lugar</translation> <translation id="1149401351239820326">Buwan ng pag-expire</translation> <translation id="1150263420752757504">Bubukas ang <ph name="APP_NAME" /> sa Chrome. Sa pamamagitan ng pagpapatuloy, sumasang-ayon ka sa <ph name="BEGIN_LINK1" />Mga Tuntunin ng Serbisyo ng Google<ph name="END_LINK1" />, at sa <ph name="BEGIN_LINK2" />Mga Karagdagang Tuntunin ng Serbisyo ng Google Chrome at ChromeOS<ph name="END_LINK2" />.</translation> <translation id="1154704303112745282">Hindi available ang page kapag offline: <ph name="VIOLATED_URL" /></translation> @@ -170,6 +169,7 @@ <translation id="189358972401248634">Iba pang mga wika</translation> <translation id="1894023287452300670">Subaybayan ang presyo rito</translation> <translation id="1900260903084164610">Sa pamamagitan ng pagpapatuloy, sumasang-ayon ka sa <ph name="BEGIN_TOS_LINK" />Mga Tuntunin ng Serbisyo<ph name="END_TOS_LINK" />.</translation> +<translation id="1904580727789512086">Naka-save sa iyong Google Account ang mga URL na iyong binibisita</translation> <translation id="1910950723001426294">Nakasara ang listahan ng mga opsyon sa pagbabahagi.</translation> <translation id="1918175104945982129">Nakabukas ang ui ng pahintulot ng paghahanap gamit ang boses ng Assistant nang kalahati ang taas</translation> <translation id="1919130412786645364">Pagayan ang pag-sign in sa Chrome</translation> @@ -194,7 +194,6 @@ <translation id="2000419248597011803">Nagpapadala ng ilang cookies at paghahanap mula sa address bar at box para sa paghahanap sa iyong default na search engine</translation> <translation id="200114059308480249">Isama ang katabing text sa mga paghahanap sa Google?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# File}one{# File}other{# na File}}</translation> -<translation id="2020309681647789787">Makikita mo ang iyong history sa lahat ng naka-sync mong device, para maipagpatuloy mo ang iyong ginagawa</translation> <translation id="2021896219286479412">Control ng full screen sa site</translation> <translation id="2038563949887743358">I-on ang Hilingin ang site sa desktop</translation> <translation id="204321170514947529">May data rin ang <ph name="APP_NAME" /> sa Chrome</translation> @@ -280,7 +279,6 @@ <translation id="2527779675047087889">Itago ang mga content ng clipboard</translation> <translation id="2532336938189706096">View ng Web</translation> <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> (na) item ang na-delete</translation> -<translation id="2534582914273493287">Ipinapadala sa Google ang mga URL na binibisita mo</translation> <translation id="2536728043171574184">Tinitingnan ang isang offline na kopya ng page na ito</translation> <translation id="2546283357679194313">Cookies at data ng site</translation> <translation id="2549516196460093976">Puwede mong gamitin ang tablet na ito para mag-sign in sa computer na nagpapakita sa QR code na ito.</translation> @@ -372,7 +370,6 @@ <translation id="2996291259634659425">Gumawa ng passphrase</translation> <translation id="2996809686854298943">Kinakailangan ang URL</translation> <translation id="2997081575621687554">Kapag humiling ang isang site ng Google na pribadong mag-preload ng mga link sa page nito, mag-e-encrypt at magpi-preload ng mga page ang Chrome sa pamamagitan ng mga server ng Google nang walang cookies. Maitatago nito ang iyong pagkakakilanlan sa na-preload na site.</translation> -<translation id="3003733539450769656">Binabalaan ka tungkol sa mapapanganib na event bago mangyari ang mga ito</translation> <translation id="3006881078666935414">Walang data ng paggamit</translation> <translation id="301080557829842765">Gabay sa privacy</translation> <translation id="3016635187733453316">Siguraduhing nakakonekta ang device sa internet</translation> @@ -432,6 +429,7 @@ <translation id="3284510035090979597">Proactive na Tulong</translation> <translation id="3285080554353377245">Mga video tungkol sa kung paano gamitin ang Chrome</translation> <translation id="3288003805934695103">I-reload ang page</translation> +<translation id="3290249595466894471">Nagpapadala rin ng maliit na sample ng mga page, download, aktibidad ng extension, at impormasyon ng system para makatulong na tumuklas ng mga bagong banta</translation> <translation id="3297344142967351106">Tulong sa pamamagitan ng boses</translation> <translation id="3303414029551471755">Magpatuloy na i-download ang content?</translation> <translation id="3334729583274622784">Baguhin ang file extension?</translation> @@ -637,7 +635,6 @@ <translation id="4558311620361989323">Mga shortcut ng webpage</translation> <translation id="4561730552726921821">Nagtagumpay ang pagpaparehistro</translation> <translation id="4561979708150884304">Walang koneksyon</translation> -<translation id="4562008740775511591">Nagbibigay ang Chrome ng mga makatuwirang default, pero mako-customize mo ito para pinakamahusay na maiangkop sa iyong kagawian sa pag-browse</translation> <translation id="4565377596337484307">Itago ang password</translation> <translation id="4572422548854449519">Mag-sign in sa pinamamahalaang account</translation> <translation id="4576892426230499203">Sumubok ng ibang opsyon para sa pag-verify</translation> @@ -919,7 +916,6 @@ <translation id="604996488070107836">Hindi na-download ang <ph name="FILE_NAME" /> dahil sa isang hindi alam na error.</translation> <translation id="605721222689873409">YY</translation> <translation id="6059830886158432458">Kontrolin ang iyong mga kuwento at aktibidad dito</translation> -<translation id="6069177176307973611">Suriin ang mga setting ng privacy at seguridad</translation> <translation id="6070730414166672373">Nakikipag-ugnayan sa iyong bangko</translation> <translation id="6085886413119427067">Tinutukoy kung paano kumonekta sa mga website sa secure na koneksyon</translation> <translation id="6091413777268123602">Sa mga trial ng Privacy Sandbox, puwedeng ihatid ng mga site ang parehong karanasan sa pag-browse nang hindi gaanong gumagamit ng iyong data. Nangangahulugan iyon ng higit na privacy para sa iyo at mas kaunting cross-site na pagsubaybay. Magdadagdag kami ng mga bagong trial dahil handa nang subukan ang mga ito.</translation> @@ -1040,6 +1036,7 @@ <translation id="6641780377503683465">Alisin ang <ph name="INTEREST" /></translation> <translation id="6643016212128521049">I-clear</translation> <translation id="6645629752388991326">Kontrolin kung aling mga device ang puwedeng mag-sign in sa pamamagitan ng paggamit sa device na ito bilang security key.</translation> +<translation id="6647441008198474441">Ipinapadala sa Google ang mga URL na binibisita mo para mahulaan kung anong mga site ang posibleng susunod mong bibisitahin</translation> <translation id="6648459603387803038">Puwedeng baguhin ng iyong administrator ang setup ng browser mo sa remote na paraan. Puwede ring pamahalaan sa labas ng Chrome ang aktibidad sa device na ito.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 at <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> iba pa}one{<ph name="CONTACT_PREVIEW" />\u2026 at <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> iba pa}other{<ph name="CONTACT_PREVIEW" />\u2026 at <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> na iba pa}}</translation> <translation id="6649642165559792194">I-preview ang larawang <ph name="BEGIN_NEW" />Bago<ph name="END_NEW" /></translation> @@ -1047,7 +1044,6 @@ <translation id="6659594942844771486">Tab</translation> <translation id="666731172850799929">Buksan sa <ph name="APP_NAME" /></translation> <translation id="6671495933530132209">Kopyahin ang larawan</translation> -<translation id="6674044799624355221">Nagpapadala ng maliit na sample ng mga page, download, aktibidad ng extension, at impormasyon ng system para makatulong na tumuklas ng mga bagong banta</translation> <translation id="6674571176963658787">Para simulan ang pag-sync, ilagay ang iyong passphrase</translation> <translation id="6676840375528380067">I-clear ang iyong data sa Chrome sa device na ito?</translation> <translation id="6684809838922667136">Pahusayin ang Chrome</translation> @@ -1069,7 +1065,6 @@ <translation id="6802555630140434547">Isasara ang window</translation> <translation id="6811034713472274749">Maaari nang tingnan ang page</translation> <translation id="6813446258015311409">Nakabukas ang pag-sign in sa Chrome.</translation> -<translation id="6814033694018386318">Ang binabahagi mo sa Google</translation> <translation id="6817747507826986771">Mabilis na ibahagi ang page na ito. Para i-edit ang shortcut na ito, pindutin ito nang matagal.</translation> <translation id="6819199143469632133">Mag-sign in para ma-sync sa lahat ng device ang iyong content ng Google</translation> <translation id="6820686453637990663">CVC</translation> @@ -1164,6 +1159,7 @@ <translation id="7352939065658542140">VIDEO</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{Ibahagi ang 1 piniling item}one{Ibahagi ang # piniling item}other{Ibahagi ang # na piniling item}}</translation> <translation id="7359002509206457351">I-access ang mga paraan ng pagbabayad</translation> +<translation id="7363349185727752629">Isang gabay tungkol sa iyong mga opsyon sa privacy</translation> <translation id="7375125077091615385">Uri:</translation> <translation id="7376560087009844242">Kapag nagsama ka ng mas maraming text ng isang page, posibleng makakita ka ng mas magagandang resulta kapag ginagamit mo ang Pindutin para Maghanap. Puwede mong bisitahin ang <ph name="BEGIN_LINK" />mga setting<ph name="END_LINK" /> anumang oras para baguhin ito.</translation> <translation id="7379900596734708416">Available ang Madilim na tema para sa mga site</translation> @@ -1263,6 +1259,7 @@ <translation id="7876243839304621966">Alisin lahat</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{Mayroon kang <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> page na hindi pa nababasa}one{Mayroon kang <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> page na hindi pa nababasa}other{Mayroon kang <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> na page na hindi pa nababasa}}</translation> <translation id="7886917304091689118">Gumagana sa Chrome</translation> +<translation id="7887174313503389866">Magsagawa ng guided tour tungkol sa mga pangunahing kontrol sa privacy at seguridad. Para sa higit pang opsyon, pumunta sa mga indibidwal na setting.</translation> <translation id="7887334752153342268">Doblehin</translation> <translation id="789763218334337857">Paano gamitin ang Chrome</translation> <translation id="7903184275147100332">Puwede itong abutin nang ilang sandali</translation> @@ -1376,6 +1373,7 @@ <translation id="8445448999790540984">Hindi ma-export ang mga password</translation> <translation id="8446884382197647889">Matuto Pa</translation> <translation id="8453310803815879010">Simulan ang Dino Game</translation> +<translation id="8460448946170646641">Suriin ang mga pangunahing kontrol sa privacy at seguridad</translation> <translation id="8461694314515752532">I-encrypt ang naka-sync na data gamit ang iyong sariling passphrase sa pag-sync</translation> <translation id="8466613982764129868">Tiyaking nakakonekta ang <ph name="TARGET_DEVICE_NAME" /> sa internet</translation> <translation id="8473863474539038330">Mga address at higit pa</translation> @@ -1421,6 +1419,7 @@ <translation id="8636825310635137004">Upang makuha ang iyong mga tab mula sa iba mo pang mga device, i-on ang pag-sync.</translation> <translation id="8641930654639604085">Subukang i-block ang mga site na para sa mga nasa hustong gulang</translation> <translation id="864544049772947936">Pamahalaan ang mga window (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">Hinuhulaan ang mga mapanganib na event at binabalaan ka tungkol sa mga ito bago mangyari ang mga ito</translation> <translation id="8646467750715887511">Maglo-load lang ang mga page pagkatapos mong buksan ang mga ito.</translation> <translation id="8655129584991699539">Maaari mong i-clear ang data sa Mga Setting ng Chrome</translation> <translation id="8659579665266920523">Paano maghanap gamit ang Chrome</translation> @@ -1433,7 +1432,6 @@ <translation id="867767487203716855">Susunod na update</translation> <translation id="8683039184091909753">larawan</translation> <translation id="8683081248374354009">I-reset ang grupo</translation> -<translation id="8683526617475118045">Ang makukuha mo</translation> <translation id="869891660844655955">Expiration date</translation> <translation id="8699120352855309748">Huwag mag-alok na isalin ang mga wikang ito</translation> <translation id="8712637175834984815">Nakuha ko</translation> @@ -1517,7 +1515,6 @@ <translation id="9148126808321036104">Muling mag-sign in</translation> <translation id="9158770349521403363">Ibahagi lang ang content</translation> <translation id="9159716826369098114">I-restore ang grupo ng tab na <ph name="TAB_COUNT" /> (na) tab bilang bagong background na grupo ng tab.</translation> -<translation id="916446198114569890">Naka-save sa iyong Google account ang mga URL na binibisita mo</translation> <translation id="9169507124922466868">Nakabukas nang kalahati ang history ng pag-navigate</translation> <translation id="9187955620966010988">Naisaayos ang reaksyon</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{Nagsuri 1 minuto ang nakalipas}one{Nagsuri # minuto ang nakalipas}other{Nagsuri # na minuto ang nakalipas}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_fr-CA.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_fr-CA.xtb index c60c8b75..48b3b9e2 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_fr-CA.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_fr-CA.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">Ne pas proposer de traduire ces sites</translation> <translation id="1145536944570833626">Supprimer toutes les données existantes.</translation> <translation id="1146678959555564648">Activer la réalité virtuelle</translation> -<translation id="114825011539563458">Passer en revue les plus importants contrôles de confidentialité et de sécurité, tous regroupés au même endroit</translation> <translation id="1149401351239820326">Mois d'expiration</translation> <translation id="1150263420752757504"><ph name="APP_NAME" /> s'ouvrira dans Chrome. En continuant, vous acceptez les <ph name="BEGIN_LINK1" />conditions d'utilisation de Google<ph name="END_LINK1" /> et les <ph name="BEGIN_LINK2" />conditions d'utilisation supplémentaires de Google Chrome et de Chrome OS<ph name="END_LINK2" />.</translation> <translation id="1154704303112745282">Cette page n'est pas accessible hors ligne : <ph name="VIOLATED_URL" /></translation> @@ -108,6 +107,7 @@ <translation id="1488775391433859242">Vous pouvez utiliser ce téléphone pour vous connecter à l'ordinateur qui affiche ce code QR.</translation> <translation id="1492417797159476138">Vous avez déjà enregistré ce nom d'utilisateur pour ce site</translation> <translation id="1493287004536771723">Vous suivez <ph name="SITE_NAME" /></translation> +<translation id="1502010315804028179">Mettez à jour les services Google Play pour gérer vos mots de passe</translation> <translation id="1506061864768559482">Moteur de recherche</translation> <translation id="1513352483775369820">Favoris et historique Web</translation> <translation id="1513814250881909472">Synchronisez vos données pour ajouter vos onglets de vos autres appareils</translation> @@ -169,6 +169,7 @@ <translation id="189358972401248634">Autres langues</translation> <translation id="1894023287452300670">Suivez le prix ici</translation> <translation id="1900260903084164610">En continuant, vous acceptez les <ph name="BEGIN_TOS_LINK" />conditions d'utilisation<ph name="END_TOS_LINK" />.</translation> +<translation id="1904580727789512086">Les adresses URL que vous visitez sont enregistrées dans votre compte Google</translation> <translation id="1910950723001426294">La liste d'options de partage est fermée.</translation> <translation id="1918175104945982129">Fenêtre d'IU de consentement pour la recherche vocale avec l'Assistant, ouverte à mi-hauteur</translation> <translation id="1919130412786645364">Autoriser la connexion à Google Chrome</translation> @@ -193,7 +194,6 @@ <translation id="2000419248597011803">Envoie des témoins et des recherches à partir de la barre d'adresse et du champ de recherche à votre moteur de recherche par défaut</translation> <translation id="200114059308480249">Inclure le texte à proximité dans les recherches Google?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# fichier}one{# fichier}other{# fichiers}}</translation> -<translation id="2020309681647789787">Votre historique s'affichera sur tous vos appareils synchronisés, vous pourrez donc reprendre le cours de vos activités</translation> <translation id="2021896219286479412">Contrôles du site en plein écran</translation> <translation id="2038563949887743358">Activer l’option Demander site pour ordinateurs de bureau</translation> <translation id="204321170514947529"><ph name="APP_NAME" /> a aussi des données dans Chrome</translation> @@ -279,7 +279,6 @@ <translation id="2527779675047087889">Masquer le contenu du presse-papier</translation> <translation id="2532336938189706096">Affichage Web</translation> <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> éléments supprimés</translation> -<translation id="2534582914273493287">Les URL des pages que vous visitez sont envoyées à Google</translation> <translation id="2536728043171574184">Affichage d’une copie hors ligne de cette page en cours</translation> <translation id="2546283357679194313">Témoins et données de site</translation> <translation id="2549516196460093976">Vous pouvez utiliser cette tablette pour vous connecter à l'ordinateur qui affiche ce code QR.</translation> @@ -371,7 +370,6 @@ <translation id="2996291259634659425">Créer une phrase de passe</translation> <translation id="2996809686854298943">URL requise</translation> <translation id="2997081575621687554">Lorsqu'un site Google propose de précharger en privé des liens sur sa page, Chrome chiffre et précharge les pages par les serveurs de Google sans témoins. Cette opération permet de masquer votre identité sur le site préchargé.</translation> -<translation id="3003733539450769656">Vous avertit des événements dangereux avant qu'ils ne surviennent</translation> <translation id="3006881078666935414">Aucune donnée d'utilisation</translation> <translation id="301080557829842765">Guide relatif à la confidentialité</translation> <translation id="3016635187733453316">Assurez-vous que cet appareil est connecté à Internet</translation> @@ -431,6 +429,7 @@ <translation id="3284510035090979597">Aide proactive</translation> <translation id="3285080554353377245">Vidéos sur l'utilisation de Chrome</translation> <translation id="3288003805934695103">D'actualiser la page</translation> +<translation id="3290249595466894471">Il transmet également un petit échantillon de pages, de téléchargements, de l'activité des extensions et de données système afin de cerner les nouvelles menaces</translation> <translation id="3297344142967351106">Assistance vocale</translation> <translation id="3303414029551471755">Lancer le téléchargement du contenu?</translation> <translation id="3334729583274622784">Modifier l'extension du fichier?</translation> @@ -636,7 +635,6 @@ <translation id="4558311620361989323">Raccourcis relatifs à la page Web</translation> <translation id="4561730552726921821">Inscription réussie</translation> <translation id="4561979708150884304">Aucune connexion</translation> -<translation id="4562008740775511591">Chrome propose des valeurs par défaut raisonnables, mais vous pouvez les personnaliser pour les adapter à vos habitudes de navigation</translation> <translation id="4565377596337484307">Masquer le mot de passe</translation> <translation id="4572422548854449519">Connectez-vous à un compte géré</translation> <translation id="4576892426230499203">Essayez avec une autre option de vérification</translation> @@ -918,7 +916,6 @@ <translation id="604996488070107836">Le téléchargement de <ph name="FILE_NAME" /> a échoué en raison d'une erreur inconnue.</translation> <translation id="605721222689873409">AA</translation> <translation id="6059830886158432458">Gérez vos histoires et votre activité ici</translation> -<translation id="6069177176307973611">Examinez les paramètres de confidentialité et de sécurité</translation> <translation id="6070730414166672373">Communication avec votre banque en cours\u2026</translation> <translation id="6085886413119427067">Détermine la manière de communiquer avec des sites Web par connexion sécurisée</translation> <translation id="6091413777268123602">Grâce aux essais du Bac à sable de confidentialité, les sites peuvent offrir la même expérience de navigation tout en recourant dans une moindre mesure à vos données. Vous profitez ainsi d'une confidentialité accrue et faites l'objet de moins de suivis intersites. Nous ajouterons de nouveaux essais dès qu'ils seront prêts à être testés.</translation> @@ -1039,6 +1036,7 @@ <translation id="6641780377503683465">Retirez <ph name="INTEREST" /></translation> <translation id="6643016212128521049">Effacer</translation> <translation id="6645629752388991326">Contrôlez les appareils qui peuvent se connecter en utilisant cet appareil en tant que clé de sécurité.</translation> +<translation id="6647441008198474441">Les URL des pages que vous visitez sont envoyées à Google aux fins de prédiction des sites que vous êtes susceptible de visiter ultérieurement</translation> <translation id="6648459603387803038">Votre administrateur peut modifier la configuration de votre navigateur à distance. L'activité sur cet appareil peut aussi être gérée à l'extérieur de Chrome.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 et <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> autre contact}one{<ph name="CONTACT_PREVIEW" />\u2026 et <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> autre contact}other{<ph name="CONTACT_PREVIEW" />\u2026 et <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> autres contacts}}</translation> <translation id="6649642165559792194">Prévisualiser l'image <ph name="BEGIN_NEW" />Nouveau<ph name="END_NEW" /></translation> @@ -1046,7 +1044,6 @@ <translation id="6659594942844771486">Onglet</translation> <translation id="666731172850799929">Ouvrir dans <ph name="APP_NAME" /></translation> <translation id="6671495933530132209">Copier l'image</translation> -<translation id="6674044799624355221">Transmet un petit échantillon de pages, de téléchargements, de l'activité des extensions et de données système pour améliorer la détection de nouvelles menaces</translation> <translation id="6674571176963658787">Pour lancer la synchronisation, entrez votre phrase de passe</translation> <translation id="6676840375528380067">Effacer vos données Chrome de cet appareil?</translation> <translation id="6684809838922667136">Améliorer Chrome</translation> @@ -1068,7 +1065,6 @@ <translation id="6802555630140434547">La fenêtre sera fermée</translation> <translation id="6811034713472274749">La page est prête pour consultation</translation> <translation id="6813446258015311409">Se connecter à Chrome, ouvert.</translation> -<translation id="6814033694018386318">Ce que vous partagez avec Google</translation> <translation id="6817747507826986771">Partagez rapidement cette page. Pour modifier ce raccourci, maintenez le doigt sur celui-ci.</translation> <translation id="6819199143469632133">Pour diffuser vos données Google sur tous les appareils, connectez-vous</translation> <translation id="6820686453637990663">CVC</translation> @@ -1163,6 +1159,7 @@ <translation id="7352939065658542140">VIDÉO</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{Partager 1 élément sélectionné}one{Partager # élément sélectionné}other{Partager # éléments sélectionnés}}</translation> <translation id="7359002509206457351">Accéder aux modes de paiement</translation> +<translation id="7363349185727752629">Un guide de vos choix en matière de confidentialité</translation> <translation id="7375125077091615385">Type :</translation> <translation id="7376560087009844242">En ajoutant plus de texte d'une page, vous pourriez obtenir de meilleurs résultats lorsque vous utilisez la fonctionnalité Toucher pour rechercher. Vous pouvez toujours accéder aux <ph name="BEGIN_LINK" />paramètres<ph name="END_LINK" /> pour modifier cette option.</translation> <translation id="7379900596734708416">Le thème sombre pour les sites est accessible</translation> @@ -1262,6 +1259,7 @@ <translation id="7876243839304621966">Tout supprimer</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{Vous avez <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> page non lue}one{Vous avez <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> page non lue}other{Vous avez <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> pages non lues}}</translation> <translation id="7886917304091689118">S'exécute dans Chrome</translation> +<translation id="7887174313503389866">Suivez une visite guidée des principaux paramètres de confidentialité et de sécurité. Pour plus d'options, accédez aux paramètres individuels.</translation> <translation id="7887334752153342268">Dupliquer</translation> <translation id="789763218334337857">Comment utiliser Chrome</translation> <translation id="7903184275147100332">Cette opération peut prendre une minute</translation> @@ -1375,6 +1373,7 @@ <translation id="8445448999790540984">Impossible d'exporter les mots de passe</translation> <translation id="8446884382197647889">En savoir plus</translation> <translation id="8453310803815879010">Commencer le jeu du dinosaure</translation> +<translation id="8460448946170646641">Passer en revue les principaux paramètres de confidentialité et de sécurité</translation> <translation id="8461694314515752532">Chiffrer vos données synchronisées avec votre propre phrase de passe de synchronisation</translation> <translation id="8466613982764129868">Assurez-vous que <ph name="TARGET_DEVICE_NAME" /> est connecté à Internet</translation> <translation id="8473863474539038330">Adresses et plus</translation> @@ -1420,6 +1419,7 @@ <translation id="8636825310635137004">Pour synchroniser vos onglets sur vos autres appareils, activez la synchronisation.</translation> <translation id="8641930654639604085">Essayer de bloquer les sites pour adultes</translation> <translation id="864544049772947936">Gérer les fenêtres (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">Il prédit les événements dangereux et vous en informe avant qu'ils ne surviennent</translation> <translation id="8646467750715887511">Les pages se chargent uniquement lorsque vous les ouvrez.</translation> <translation id="8655129584991699539">Vous pouvez effacer les données dans les paramètres de Chrome</translation> <translation id="8659579665266920523">Effectuer une recherche avec Chrome</translation> @@ -1432,7 +1432,6 @@ <translation id="867767487203716855">Prochaine mise à jour</translation> <translation id="8683039184091909753">image</translation> <translation id="8683081248374354009">Réinitialiser le groupe</translation> -<translation id="8683526617475118045">Ce que vous obtenez</translation> <translation id="869891660844655955">Date d'expiration</translation> <translation id="8699120352855309748">Ne pas proposer de traduire ces langues</translation> <translation id="8712637175834984815">OK</translation> @@ -1516,7 +1515,6 @@ <translation id="9148126808321036104">Connectez-vous de nouveau</translation> <translation id="9158770349521403363">Partager le contenu uniquement</translation> <translation id="9159716826369098114">Restaurez le groupe d'onglets de <ph name="TAB_COUNT" /> onglets en tant que nouveau groupe d'onglets en arrière-plan.</translation> -<translation id="916446198114569890">Les adresses URL que vous visitez sont enregistrées dans votre compte Google</translation> <translation id="9169507124922466868">L'historique de navigation est ouvert à moitié</translation> <translation id="9187955620966010988">Réaction ajustée</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{Dernière vérification : il y a 1 minute}one{Dernière vérification : il y a # minute}other{Dernière vérification : il y a # minutes}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_fr.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_fr.xtb index 49c96b7..af2fc80 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_fr.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_fr.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">Ne pas proposer de traduire ces sites</translation> <translation id="1145536944570833626">Supprimer les données existantes</translation> <translation id="1146678959555564648">Activer la réalité virtuelle</translation> -<translation id="114825011539563458">Les paramètres de confidentialité et de sécurité essentiels au même endroit</translation> <translation id="1149401351239820326">Mois d'expiration</translation> <translation id="1150263420752757504"><ph name="APP_NAME" /> va s'ouvrir dans Chrome. En continuant, vous acceptez les <ph name="BEGIN_LINK1" />Conditions d'utilisation de Google<ph name="END_LINK1" /> et les <ph name="BEGIN_LINK2" />Conditions d'utilisation supplémentaires de Google Chrome et Chrome OS<ph name="END_LINK2" />.</translation> <translation id="1154704303112745282">Page non disponible hors connexion : <ph name="VIOLATED_URL" /></translation> @@ -170,6 +169,7 @@ <translation id="189358972401248634">Autres langues</translation> <translation id="1894023287452300670">Effectuez le suivi du prix ici</translation> <translation id="1900260903084164610">En continuant, vous acceptez les <ph name="BEGIN_TOS_LINK" />Conditions d'utilisation<ph name="END_TOS_LINK" />.</translation> +<translation id="1904580727789512086">Les URL que vous consultez sont enregistrées dans votre compte Google</translation> <translation id="1910950723001426294">La liste des options de partage est fermée.</translation> <translation id="1918175104945982129">Interface d'autorisation pour la recherche vocale de l'Assistant ouverte à mi-hauteur</translation> <translation id="1919130412786645364">Autoriser la connexion à Chrome</translation> @@ -194,7 +194,6 @@ <translation id="2000419248597011803">Envoie des cookies et des recherches effectuées à partir de la barre d'adresse et du champ de recherche à votre moteur de recherche par défaut</translation> <translation id="200114059308480249">Inclure le texte à proximité dans les recherches Google ?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# fichier}one{# fichier}other{# fichiers}}</translation> -<translation id="2020309681647789787">Comme vous aurez votre historique sur tous vos appareils synchronisés, vous pourrez continuer vos activités</translation> <translation id="2021896219286479412">Commandes du site en plein écran</translation> <translation id="2038563949887743358">Activer "Voir version ordinateur"</translation> <translation id="204321170514947529"><ph name="APP_NAME" /> a également des données dans Chrome</translation> @@ -280,7 +279,6 @@ <translation id="2527779675047087889">Masquer le contenu du presse-papiers</translation> <translation id="2532336938189706096">Vue Web</translation> <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> éléments supprimés</translation> -<translation id="2534582914273493287">Les URL que vous consultez sont envoyées à Google</translation> <translation id="2536728043171574184">Affichage d'une copie hors connexion de la page</translation> <translation id="2546283357679194313">Cookies et données des sites</translation> <translation id="2549516196460093976">Vous pouvez utiliser cette tablette pour vous connecter sur l'ordinateur qui affiche le code QR.</translation> @@ -372,7 +370,6 @@ <translation id="2996291259634659425">Créer une phrase secrète</translation> <translation id="2996809686854298943">Veuillez saisir une URL.</translation> <translation id="2997081575621687554">Quand un site Google demande de précharger en mode privé des liens sur sa page, Chrome chiffre et précharge les pages via les serveurs de Google sans cookies. Le site préchargé ne sait alors rien de votre identité.</translation> -<translation id="3003733539450769656">Vous avertit des événements dangereux avant qu'ils ne surviennent</translation> <translation id="3006881078666935414">Aucune donnée sur l'utilisation</translation> <translation id="301080557829842765">Guide sur la confidentialité</translation> <translation id="3016635187733453316">Assurez-vous que cet appareil est bien connecté à Internet</translation> @@ -432,6 +429,7 @@ <translation id="3284510035090979597">Aide proactive</translation> <translation id="3285080554353377245">Vidéos sur l'utilisation de Chrome</translation> <translation id="3288003805934695103">Recharger la page</translation> +<translation id="3290249595466894471">Un petit échantillon de pages, de téléchargements, d'informations système et d'activité des extensions est aussi envoyé afin d'identifier de nouvelles menaces</translation> <translation id="3297344142967351106">Assistance vocale</translation> <translation id="3303414029551471755">Poursuivre et télécharger le contenu ?</translation> <translation id="3334729583274622784">Modifier l'extension du fichier ?</translation> @@ -637,7 +635,6 @@ <translation id="4558311620361989323">Raccourcis de pages Web</translation> <translation id="4561730552726921821">Enregistrement réussi</translation> <translation id="4561979708150884304">Aucune connexion</translation> -<translation id="4562008740775511591">Les valeurs par défaut de Chrome conviennent dans la plupart des cas, mais vous pouvez les personnaliser selon vos habitudes de navigation</translation> <translation id="4565377596337484307">Masquer le mot de passe</translation> <translation id="4572422548854449519">Se connecter à un compte géré</translation> <translation id="4576892426230499203">Essayez une autre option de validation</translation> @@ -919,7 +916,6 @@ <translation id="604996488070107836">Échec du téléchargement du fichier "<ph name="FILE_NAME" />" en raison d'une erreur inconnue.</translation> <translation id="605721222689873409">AA</translation> <translation id="6059830886158432458">Contrôlez vos articles et votre activité via ce menu</translation> -<translation id="6069177176307973611">Consulter les paramètres de confidentialité et de sécurité</translation> <translation id="6070730414166672373">Nous contactons votre banque…</translation> <translation id="6085886413119427067">Détermine comment se connecter aux sites Web via une connexion sécurisée</translation> <translation id="6091413777268123602">Avec les essais Privacy Sandbox, les sites peuvent offrir la même expérience de navigation en utilisant moins de données personnelles. Cela signifie plus de confidentialité pour vous et moins de suivi intersites. Nous ajouterons des essais dès qu'ils seront prêts à être testés.</translation> @@ -1040,6 +1036,7 @@ <translation id="6641780377503683465">Supprimer <ph name="INTEREST" /></translation> <translation id="6643016212128521049">Effacer</translation> <translation id="6645629752388991326">Contrôlez les appareils qui peuvent se connecter en utilisant ce téléphone comme clé de sécurité.</translation> +<translation id="6647441008198474441">Les URL que vous consultez sont envoyées à Google pour prédire les sites que vous êtes susceptible de visiter plus tard</translation> <translation id="6648459603387803038">Votre administrateur peut modifier à distance la configuration de votre navigateur. Il se peut que l'activité sur cet appareil soit gérée en dehors de Chrome.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 et <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> de plus}one{<ph name="CONTACT_PREVIEW" />\u2026 et <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> de plus}other{<ph name="CONTACT_PREVIEW" />\u2026 et <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> de plus}}</translation> <translation id="6649642165559792194">Prévisualiser l'image <ph name="BEGIN_NEW" />Nouveau<ph name="END_NEW" /></translation> @@ -1047,7 +1044,6 @@ <translation id="6659594942844771486">Onglet</translation> <translation id="666731172850799929">Ouvrir dans <ph name="APP_NAME" /></translation> <translation id="6671495933530132209">Copier l'image</translation> -<translation id="6674044799624355221">Un petit échantillon de pages, de téléchargements, d'informations système et d'activité des extensions est envoyé afin d'identifier de nouvelles menaces</translation> <translation id="6674571176963658787">Pour lancer la synchronisation, saisissez votre phrase secrète</translation> <translation id="6676840375528380067">Supprimer vos données Chrome sur cet appareil ?</translation> <translation id="6684809838922667136">Améliorer Chrome</translation> @@ -1069,7 +1065,6 @@ <translation id="6802555630140434547">La fenêtre sera fermée</translation> <translation id="6811034713472274749">La page est prête à être affichée</translation> <translation id="6813446258015311409">Se connecter à Chrome, ouvert.</translation> -<translation id="6814033694018386318">Ce que vous partagez avec Google</translation> <translation id="6817747507826986771">Partagez rapidement cette page. Pour modifier ce raccourci, appuyez dessus de manière prolongée.</translation> <translation id="6819199143469632133">Pour récupérer vos contenus Google sur tous les appareils, connectez-vous</translation> <translation id="6820686453637990663">Code CVC :</translation> @@ -1164,6 +1159,7 @@ <translation id="7352939065658542140">VIDÉO</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{Partager 1 élément sélectionné}one{Partager # élément sélectionné}other{Partager # éléments sélectionnés}}</translation> <translation id="7359002509206457351">Accéder aux modes de paiement</translation> +<translation id="7363349185727752629">Guide de vos paramètres de confidentialité</translation> <translation id="7375125077091615385">Type :</translation> <translation id="7376560087009844242">En incluant plus de texte d'une page, vous pourriez avoir de meilleurs résultats quand vous utilisez Appuyer pour rechercher. Vous pouvez toujours changer cela dans les <ph name="BEGIN_LINK" />paramètres<ph name="END_LINK" />.</translation> <translation id="7379900596734708416">Le thème sombre pour les sites est disponible</translation> @@ -1263,6 +1259,7 @@ <translation id="7876243839304621966">Tout supprimer</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{Vous avez <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> page non lue}one{Vous avez <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> page non lue}other{Vous avez <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> pages non lues}}</translation> <translation id="7886917304091689118">En cours d'exécution dans Chrome</translation> +<translation id="7887174313503389866">Visite guidée des paramètres clés de confidentialité et de sécurité. Accédez à chaque paramètre pour obtenir plus d'options.</translation> <translation id="7887334752153342268">Dupliquer</translation> <translation id="789763218334337857">Comment utiliser Google Chrome</translation> <translation id="7903184275147100332">Cela peut prendre une minute</translation> @@ -1376,6 +1373,7 @@ <translation id="8445448999790540984">Impossible d'exporter les mots de passe</translation> <translation id="8446884382197647889">En savoir plus</translation> <translation id="8453310803815879010">Jouer au jeu du dino</translation> +<translation id="8460448946170646641">Examinez les paramètres clés de confidentialité et de sécurité</translation> <translation id="8461694314515752532">Chiffrer les données synchronisées avec votre propre phrase secrète de synchronisation</translation> <translation id="8466613982764129868">Assurez-vous que l'appareil <ph name="TARGET_DEVICE_NAME" /> est connecté à Internet</translation> <translation id="8473863474539038330">Adresses et autres</translation> @@ -1421,6 +1419,7 @@ <translation id="8636825310635137004">Activez la synchronisation pour accéder à vos onglets sur vos autres appareils.</translation> <translation id="8641930654639604085">Essayer de bloquer les sites réservés aux adultes</translation> <translation id="864544049772947936">Gérer les fenêtres (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">Prédit les événements dangereux et vous en informe avant qu'ils ne surviennent</translation> <translation id="8646467750715887511">Les pages ne se chargent qu'une fois que vous les avez ouvertes.</translation> <translation id="8655129584991699539">Vous pouvez effacer les données dans les paramètres Chrome</translation> <translation id="8659579665266920523">Comment effectuer une recherche avec Chrome</translation> @@ -1433,7 +1432,6 @@ <translation id="867767487203716855">Prochaine mise à jour</translation> <translation id="8683039184091909753">image</translation> <translation id="8683081248374354009">Réinitialiser le groupe</translation> -<translation id="8683526617475118045">Avantages</translation> <translation id="869891660844655955">Date d'expiration</translation> <translation id="8699120352855309748">Ne pas proposer de traduire ces langues</translation> <translation id="8712637175834984815">OK</translation> @@ -1517,7 +1515,6 @@ <translation id="9148126808321036104">Nouvelle connexion</translation> <translation id="9158770349521403363">Partager uniquement le contenu</translation> <translation id="9159716826369098114">Restaurer le groupe d'onglets de <ph name="TAB_COUNT" /> onglets en tant que nouveau groupe d'onglets en arrière-plan.</translation> -<translation id="916446198114569890">Les URL que vous consultez sont enregistrées dans votre compte Google</translation> <translation id="9169507124922466868">L'historique de navigation est ouvert à moitié</translation> <translation id="9187955620966010988">Réaction ajustée</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{Vérification effectuée il y a 1 minute}one{Vérification effectuée il y a # minute}other{Vérification effectuée il y a # minutes}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_gl.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_gl.xtb index dd5f3d5..d1534fc 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_gl.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_gl.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">Non ofrecer a opción de traducir estes sitios</translation> <translation id="1145536944570833626">Elimina os datos existentes.</translation> <translation id="1146678959555564648">Entrar en RV</translation> -<translation id="114825011539563458">Os controis de privacidade e seguranza máis importantes, nun único lugar</translation> <translation id="1149401351239820326">Mes de caducidade</translation> <translation id="1150263420752757504"><ph name="APP_NAME" /> abrirase en Chrome. Ao continuar, aceptas as <ph name="BEGIN_LINK1" />Condicións de servizo de Google<ph name="END_LINK1" />, así como as <ph name="BEGIN_LINK2" />Condicións de servizo adicionais de Google Chrome e Chrome OS<ph name="END_LINK2" />.</translation> <translation id="1154704303112745282">Páxina non dispoñible sen conexión: <ph name="VIOLATED_URL" /></translation> @@ -170,6 +169,7 @@ <translation id="189358972401248634">Outros idiomas</translation> <translation id="1894023287452300670">Fai un seguimento do prezo aquí</translation> <translation id="1900260903084164610">Ao continuar, aceptas as <ph name="BEGIN_TOS_LINK" />Condicións de servizo<ph name="END_TOS_LINK" />.</translation> +<translation id="1904580727789512086">Os URL que visitas gárdanse na túa Conta de Google</translation> <translation id="1910950723001426294">A lista de opcións para compartir está pechada.</translation> <translation id="1918175104945982129">A interface de consentimento para a busca por voz a través do Asistente está aberta ata a metade da pantalla</translation> <translation id="1919130412786645364">Permitir inicio de sesión en Chrome</translation> @@ -194,7 +194,6 @@ <translation id="2000419248597011803">Envía buscas e cookies da barra de enderezos e da caixa de busca ao motor de busca predeterminado</translation> <translation id="200114059308480249">Queres incluír o texto circundante nas buscas de Google?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# ficheiro}other{# ficheiros}}</translation> -<translation id="2020309681647789787">Terás o teu historial en todos os dispositivos sincronizados, de tal xeito que poidas continuar co que estabas facendo</translation> <translation id="2021896219286479412">Controis de pantalla completa</translation> <translation id="2038563949887743358">Activa a opción Ver como ordenador</translation> <translation id="204321170514947529"><ph name="APP_NAME" /> tamén ten datos en Chrome</translation> @@ -280,7 +279,6 @@ <translation id="2527779675047087889">Ocultar contido do portapapeis</translation> <translation id="2532336938189706096">Vista web</translation> <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> elementos eliminados</translation> -<translation id="2534582914273493287">Os URL que visitas envíanselle a Google</translation> <translation id="2536728043171574184">Visualización dunha copia sen conexión desta páxina</translation> <translation id="2546283357679194313">Cookies e datos dos sitios</translation> <translation id="2549516196460093976">Podes utilizar esta tableta para iniciar sesión no ordenador no que se mostra este código QR.</translation> @@ -372,7 +370,6 @@ <translation id="2996291259634659425">Crear contrasinal</translation> <translation id="2996809686854298943">O URL é obrigatorio</translation> <translation id="2997081575621687554">Cando un sitio de Google solicita precargar ligazóns da súa páxina de forma privada, Chrome encripta e precarga as páxinas correspondentes a través dos nosos servidores sen cookies. Deste xeito, ocúltaselle a túa identidade ao sitio precargado.</translation> -<translation id="3003733539450769656">Avísate sobre eventos perigosos antes de que se produzan</translation> <translation id="3006881078666935414">Non hai datos de uso</translation> <translation id="301080557829842765">Guía de privacidade</translation> <translation id="3016635187733453316">Asegúrate de que este dispositivo estea conectado a Internet</translation> @@ -432,6 +429,7 @@ <translation id="3284510035090979597">Axuda proactiva</translation> <translation id="3285080554353377245">Vídeos sobre como usar Chrome</translation> <translation id="3288003805934695103">Volver cargar a páxina</translation> +<translation id="3290249595466894471">Tamén envía unha pequena mostra da información do sistema, da actividade das extensións, das páxinas e das descargas para axudar a descubrir novas ameazas</translation> <translation id="3297344142967351106">Asistencia de voz</translation> <translation id="3303414029551471755">Queres continuar coa descarga do contido?</translation> <translation id="3334729583274622784">Queres cambiar a extensión do ficheiro?</translation> @@ -637,7 +635,6 @@ <translation id="4558311620361989323">Atallos da páxina web</translation> <translation id="4561730552726921821">Realizouse o rexistro</translation> <translation id="4561979708150884304">Sen conexión</translation> -<translation id="4562008740775511591">Chrome ofréceche unha proposta de configuración predeterminada razoable, pero podes personalizar as distintas opcións para adaptar a experiencia de navegación aos teus costumes</translation> <translation id="4565377596337484307">Ocultar contrasinal</translation> <translation id="4572422548854449519">Inicia sesión nunha conta xestionada</translation> <translation id="4576892426230499203">Proba con outra opción de verificación</translation> @@ -919,7 +916,6 @@ <translation id="604996488070107836">Produciuse un problema coa descarga de <ph name="FILE_NAME" /> debido a un erro descoñecido.</translation> <translation id="605721222689873409">AA</translation> <translation id="6059830886158432458">Controla as túas historias e a túa actividade aquí</translation> -<translation id="6069177176307973611">Revisa a configuración de privacidade e seguranza</translation> <translation id="6070730414166672373">Contactando co teu banco\u2026</translation> <translation id="6085886413119427067">Determina como conectarse a sitios web mediante una conexión segura</translation> <translation id="6091413777268123602">Coas probas de Privacy Sandbox, os sitios poden ofrecer a mesma experiencia de navegación usando menos datos teus. Deste xeito, podes gozar de máis privacidade e menos seguimento en varios sitios. Engadiremos probas novas cando estean preparadas.</translation> @@ -1040,6 +1036,7 @@ <translation id="6641780377503683465">Quitar <ph name="INTEREST" /></translation> <translation id="6643016212128521049">Borrar</translation> <translation id="6645629752388991326">Controla os dispositivos nos que se pode iniciar sesión utilizando este aparello como chave de seguranza.</translation> +<translation id="6647441008198474441">Os URL que visitas envíanse a Google para predicir os sitios que probablemente visites a continuación</translation> <translation id="6648459603387803038">O teu administrador pode cambiar a configuración do navegador de forma remota. A actividade deste dispositivo tamén se pode xestionar fóra de Chrome.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 e <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> máis}other{<ph name="CONTACT_PREVIEW" />\u2026 e <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> máis}}</translation> <translation id="6649642165559792194">Vista previa: imaxe <ph name="BEGIN_NEW" />Novidade<ph name="END_NEW" /></translation> @@ -1047,7 +1044,6 @@ <translation id="6659594942844771486">Pestana</translation> <translation id="666731172850799929">Abrir en <ph name="APP_NAME" /></translation> <translation id="6671495933530132209">Copiar imaxe</translation> -<translation id="6674044799624355221">Envía unha pequena mostra da información do sistema, da actividade das extensións, das páxinas e das descargas para axudar a descubrir novas ameazas</translation> <translation id="6674571176963658787">Para comezar a sincronizar datos, escribe a túa frase de acceso</translation> <translation id="6676840375528380067">Queres borrar os teus datos de Chrome deste dispositivo?</translation> <translation id="6684809838922667136">Mellora Chrome</translation> @@ -1069,7 +1065,6 @@ <translation id="6802555630140434547">Pecharase a ventá</translation> <translation id="6811034713472274749">A páxina está lista para vela</translation> <translation id="6813446258015311409">Panel Iniciar sesión en Chrome (aberto).</translation> -<translation id="6814033694018386318">Que compartes con Google?</translation> <translation id="6817747507826986771">Compartir rapidamente esta páxina. Para editar este atallo, mantén premido o botón.</translation> <translation id="6819199143469632133">Para acceder aos teus servizos de Google desde calquera dispositivo, inicia sesión</translation> <translation id="6820686453637990663">CVC</translation> @@ -1164,6 +1159,7 @@ <translation id="7352939065658542140">VÍDEO</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{Compartir 1 elemento seleccionado}other{Compartir # elementos seleccionados}}</translation> <translation id="7359002509206457351">Acceso a métodos de pago</translation> +<translation id="7363349185727752629">Unha guía das túas opcións de privacidade</translation> <translation id="7375125077091615385">Tipo:</translation> <translation id="7376560087009844242">Se inclúes máis texto dunha páxina cando utilizas a función Tocar para buscar, poderías obter mellores resultados. Sempre podes ir á <ph name="BEGIN_LINK" />configuración<ph name="END_LINK" /> para cambiar esta preferencia.</translation> <translation id="7379900596734708416">Xa está dispoñible o tema escuro para os sitios</translation> @@ -1263,6 +1259,7 @@ <translation id="7876243839304621966">Eliminar todo</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{Tes <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> páxina sen ler}other{Tes <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> páxinas sen ler}}</translation> <translation id="7886917304091689118">A páxina estase executando en Chrome</translation> +<translation id="7887174313503389866">Realiza un percorrido guiado polos controis clave de privacidade e seguranza. Para obter máis opcións, vai á configuración individual.</translation> <translation id="7887334752153342268">Duplicar</translation> <translation id="789763218334337857">Como usar Chrome?</translation> <translation id="7903184275147100332">Esta acción pode tardar un minuto</translation> @@ -1376,6 +1373,7 @@ <translation id="8445448999790540984">Non se puideron exportar os contrasinais</translation> <translation id="8446884382197647889">Máis información</translation> <translation id="8453310803815879010">Inicia o xogo do dinosauro</translation> +<translation id="8460448946170646641">Revisa os controis clave de privacidade e seguranza</translation> <translation id="8461694314515752532">Encriptar os datos sincronizados coa túa propia frase de acceso de sincronización</translation> <translation id="8466613982764129868">Asegúrate de que o dispositivo <ph name="TARGET_DEVICE_NAME" /> estea conectado a Internet</translation> <translation id="8473863474539038330">Enderezos e moito máis</translation> @@ -1421,6 +1419,7 @@ <translation id="8636825310635137004">Activa a sincronización para sincronizar as pestanas dos demais dispositivos.</translation> <translation id="8641930654639604085">Tentar bloquear sitios con contido para adultos</translation> <translation id="864544049772947936">Xestionar ventás (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">Predí eventos perigosos antes de que se produzan e móstrache unha advertencia</translation> <translation id="8646467750715887511">As páxinas só se cargarán unha vez que as abras.</translation> <translation id="8655129584991699539">Podes borrar os datos na configuración de Chrome</translation> <translation id="8659579665266920523">Como facer buscas con Chrome?</translation> @@ -1433,7 +1432,6 @@ <translation id="867767487203716855">Seguinte actualización</translation> <translation id="8683039184091909753">imaxe</translation> <translation id="8683081248374354009">Restablecer grupo</translation> -<translation id="8683526617475118045">Que consegues?</translation> <translation id="869891660844655955">Data de vencemento</translation> <translation id="8699120352855309748">Non ofrecer a opción de traducir texto escrito nestes idiomas</translation> <translation id="8712637175834984815">De acordo</translation> @@ -1517,7 +1515,6 @@ <translation id="9148126808321036104">Iniciar sesión de novo</translation> <translation id="9158770349521403363">Compartir só contido</translation> <translation id="9159716826369098114">Restablecer grupo de <ph name="TAB_COUNT" /> pestanas como un novo grupo de pestanas en segundo plano.</translation> -<translation id="916446198114569890">Os URL que visitas gárdanse na túa conta de Google</translation> <translation id="9169507124922466868">O historial de navegación abriuse ata a metade</translation> <translation id="9187955620966010988">Reacción axustada</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{A comprobación realizouse hai 1 minuto}other{A comprobación realizouse hai # minutos}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_gu.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_gu.xtb index 97f96dc..3042072d 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_gu.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_gu.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">આ સાઇટનો અનુવાદ કરવાનું ઑફર કરશો નહીં</translation> <translation id="1145536944570833626">અસ્તિત્વમાંના ડેટાને ડિલીટ કરો.</translation> <translation id="1146678959555564648">VR માં દાખલ થાઓ</translation> -<translation id="114825011539563458">એક જ જગ્યાએ પ્રાઇવસી અને સુરક્ષાના સૌથી મહત્ત્વપૂર્ણ નિયંત્રણો</translation> <translation id="1149401351239820326">સમય સમાપ્તિ મહિનો</translation> <translation id="1150263420752757504"><ph name="APP_NAME" /> Chromeમાં ખુલશે. આગળ વધીને, તમે <ph name="BEGIN_LINK1" />Googleની સેવાની શરતો<ph name="END_LINK1" /> અને <ph name="BEGIN_LINK2" />Google Chrome તથા ChromeOSની વધારાની સેવાની શરતો<ph name="END_LINK2" /> સાથે સંમત થાઓ છો.</translation> <translation id="1154704303112745282">પેજ ઑફલાઇન ઉપલબ્ધ નથી: <ph name="VIOLATED_URL" /></translation> @@ -170,6 +169,7 @@ <translation id="189358972401248634">અન્ય ભાષાઓ</translation> <translation id="1894023287452300670">અહીં કિંમત ટ્રૅક કરો</translation> <translation id="1900260903084164610">આગળ વધીને, તમે <ph name="BEGIN_TOS_LINK" />સેવાની શરતો<ph name="END_TOS_LINK" /> સાથે સંમત થાઓ છો.</translation> +<translation id="1904580727789512086">તમે મુલાકાત લો છો તે URLsને તમારા Google એકાઉન્ટમાં સાચવવામાં આવે છે</translation> <translation id="1910950723001426294">શેરિંગના વિકલ્પોની સૂચિ બંધ છે.</translation> <translation id="1918175104945982129">Assistant વૉઇસ શોધની સંમતિ માટેનું UI અડધી ઊંચાઈએ ખોલ્યું</translation> <translation id="1919130412786645364">Chromeમાં સાઇન-ઇનની મંજૂરી આપો</translation> @@ -194,7 +194,6 @@ <translation id="2000419248597011803">ઍડ્રેસ બાર અને શોધ બૉક્સમાંથી કેટલીક કુકી અને શોધને તમારા ડિફૉલ્ટ શોધ એન્જિન પર મોકલે છે</translation> <translation id="200114059308480249">શું Google Searchમાં શોધવા માટે આજુબાજુની ટેક્સ્ટ શામેલ કરીએ?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# ફાઇલ}one{# ફાઇલ}other{# ફાઇલ}}</translation> -<translation id="2020309681647789787">તમને તમારા સિંક કરેલા તમામ ડિવાઇસ પર તમારો ઇતિહાસ મળશે, જેથી તમે જે કરતા હતા તે ચાલુ રાખી શકો</translation> <translation id="2021896219286479412">પૂર્ણ સ્ક્રીન સાઇટ નિયંત્રણો</translation> <translation id="2038563949887743358">વિનંતી ડેસ્કટૉપ સાઇટ ચાલુ કરો</translation> <translation id="204321170514947529"><ph name="APP_NAME" /> નો ડેટા Chromeમાં પણ છે</translation> @@ -280,7 +279,6 @@ <translation id="2527779675047087889">ક્લિપબોર્ડ પરના કન્ટેન્ટ છુપાવો</translation> <translation id="2532336938189706096">વેબ દૃશ્ય</translation> <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> આઇટમ કાઢી નાખી</translation> -<translation id="2534582914273493287">તમે જેની મુલાકાત લો તે URLs Googleને મોકલવામાં આવે છે</translation> <translation id="2536728043171574184">આ પેજની ઓફલાઇન કૉપિ જોઈ રહ્યા છે</translation> <translation id="2546283357679194313">કૂકીઝ અને સાઇટ ડેટા</translation> <translation id="2549516196460093976">આ QR કોડ બતાવતા હોય એવા કમ્પ્યુટર પર સાઇન ઇન કરવા માટે તમે આ ટૅબ્લેટનો ઉપયોગ કરી શકો છો.</translation> @@ -372,7 +370,6 @@ <translation id="2996291259634659425">પાસફ્રેઝ બનાવો</translation> <translation id="2996809686854298943">URL આવશ્યક છે</translation> <translation id="2997081575621687554">જ્યારે Google site દ્વારા તેમના પેજ પર લિંકને ખાનગી રીતે પહેલેથી લોડ કરવાનું કહેવામાં આવે, ત્યારે Chrome, કુકી વિના Googleના સર્વર મારફતે પેજને એન્ક્રિપ્ટ અને પહેલેથી લોડ કરે છે. આ પહેલેથી લોડ કરેલી સાઇટથી તમારી ઓળખ છુપાવે છે.</translation> -<translation id="3003733539450769656">જોખમી ઘટનાઓ ઘટે તે પહેલાં તમને ચેતવણી આપે છે</translation> <translation id="3006881078666935414">કોઈ વપરાશ ડેટા નથી</translation> <translation id="301080557829842765">પ્રાઇવસી સંબંધિત માર્ગદર્શિકા</translation> <translation id="3016635187733453316">ખાતરી કરો કે આ ડિવાઇસ ઇન્ટરનેટ સાથે કનેક્ટ કરેલું છે</translation> @@ -432,6 +429,7 @@ <translation id="3284510035090979597">સક્રિય સહાય</translation> <translation id="3285080554353377245">Chromeનો ઉપયોગ કેવી રીતે કરવો તે વિશેના વીડિયો</translation> <translation id="3288003805934695103">પેજ ફરીથી લોડ કરીને</translation> +<translation id="3290249595466894471">નવા જોખમો શોધવામાં સહાય કરવા માટે પેજનો નાનો નમૂનો, ડાઉનલોડ, એક્સ્ટેન્શનની પ્રવૃત્તિ અને સિસ્ટમની માહિતી પણ મોકલે છે</translation> <translation id="3297344142967351106">વૉઇસ સહાયતા</translation> <translation id="3303414029551471755">કન્ટેન્ટ ડાઉનલોડ કરવા માટે આગળ વધીએ?</translation> <translation id="3334729583274622784">ફાઇલનું એક્સ્ટેંશન બદલવું છે?</translation> @@ -637,7 +635,6 @@ <translation id="4558311620361989323">વેબ પેજના શૉર્ટકટ</translation> <translation id="4561730552726921821">નોંધણી કરવામાં સફળ રહ્યાં</translation> <translation id="4561979708150884304">કોઈ કનેક્શન નથી</translation> -<translation id="4562008740775511591">આમ તો Chrome તમને વાજબી ડિફૉલ્ટ સેટિંગ આપે છે, છતાં તમે બ્રાઉઝ કરવાની તમારી આદત મુજબ શ્રેષ્ઠ વપરાશ માટે તેમને કસ્ટમાઇઝ કરી શકો છો</translation> <translation id="4565377596337484307">પાસવર્ડ છુપાવો</translation> <translation id="4572422548854449519">મેનેજ એકાઉન્ટમાં સાઇન ઇન કરો</translation> <translation id="4576892426230499203">ચકાસણી માટે બીજો કોઈ વિકલ્પ અજમાવો</translation> @@ -919,7 +916,6 @@ <translation id="604996488070107836">કોઇ અજાણી ભૂલને કારણે <ph name="FILE_NAME" /> ડાઉનલોડ નિષ્ફળ થયું.</translation> <translation id="605721222689873409">YY</translation> <translation id="6059830886158432458">તમારી સ્ટોરી અને પ્રવૃત્તિને અહીં નિયંત્રિત કરો</translation> -<translation id="6069177176307973611">પ્રાઇવસી અને સુરક્ષા માટેના સેટિંગનો રિવ્યૂ કરો</translation> <translation id="6070730414166672373">તમારી બેંકનો સંપર્ક કરી રહ્યાં છીએ</translation> <translation id="6085886413119427067">સુરક્ષિત કનેક્શન પર વેબસાઇટ સાથે કેવી રીતે કનેક્ટ કરવું તે નક્કી કરે છે</translation> <translation id="6091413777268123602">પ્રાઇવસી સૅન્ડબૉક્સ અજમાયશો વડે, સાઇટ ઓછા ડેટાનો ઉપયોગ કરીને બ્રાઉઝિંગનો એવો જ અનુભવ પ્રદાન કરી શકે છે. આનો અર્થ છે તમારા માટે વધુ પ્રાઇવસી અને સાઇટ દ્વારા પરસ્પરનું ઓછું ટ્રૅકિંગ. અમે નવી અજમાયશો ઉમેરીશું કારણ કે તે પરીક્ષણ માટે તૈયાર છે.</translation> @@ -1040,6 +1036,7 @@ <translation id="6641780377503683465"><ph name="INTEREST" />ને કાઢી નાખો</translation> <translation id="6643016212128521049">સાફ કરો</translation> <translation id="6645629752388991326">કયા ડિવાઇસ સિક્યુરિટી કી તરીકે આ ડિવાઇસનો ઉપયોગ કરીને સાઇન ઇન કરી શકે તે નિયંત્રિત કરો.</translation> +<translation id="6647441008198474441">હવે તમે આના પછી કઈ સાઇટની મુલાકાત લેશો તેનું પૂર્વાનુમાન લગાવવા માટે, તમે જેની મુલાકાત લો છો તે URLs Googleને મોકલવામાં આવે છે</translation> <translation id="6648459603387803038">તમારા વ્યવસ્થાપક તમારા બ્રાઉઝર સેટઅપને રિમોટલી બદલી શકે છે. આ ડિવાઇસ પરની પ્રવૃત્તિ Chromeની બહારથી પણ મેનેજ કરી શકાય છે.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 અને વધુ <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}one{<ph name="CONTACT_PREVIEW" />\u2026 અને વધુ <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}other{<ph name="CONTACT_PREVIEW" />\u2026 અને વધુ <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}}</translation> <translation id="6649642165559792194">છબીને પ્રીવ્યૂ કરો <ph name="BEGIN_NEW" />નવું<ph name="END_NEW" /></translation> @@ -1047,7 +1044,6 @@ <translation id="6659594942844771486">બ્રાઉઝર ટૅબ</translation> <translation id="666731172850799929"><ph name="APP_NAME" /> માં ખોલો</translation> <translation id="6671495933530132209">છબી કૉપિ કરો</translation> -<translation id="6674044799624355221">નવા જોખમો શોધવામાં સહાય કરવા માટે પેજનો નાનો નમૂનો, ડાઉનલોડ, એક્સ્ટેન્શનની પ્રવૃત્તિ અને સિસ્ટમની માહિતી મોકલે છે</translation> <translation id="6674571176963658787">સિંક કરવાનું શરૂ કરવા માટે, તમારો પાસફ્રેઝ દાખલ કરો</translation> <translation id="6676840375528380067">આ ડિવાઇસમાંથી તમારા Chrome ડેટાને સાફ કરીએ?</translation> <translation id="6684809838922667136">Chromeને બહેતર બનાવો</translation> @@ -1069,7 +1065,6 @@ <translation id="6802555630140434547">વિન્ડો બંધ કરવામાં આવશે</translation> <translation id="6811034713472274749">પેજ જોવા માટે તૈયાર છે</translation> <translation id="6813446258015311409">Chromeમાં સાઇન ઇન કરવાની શીટ ખોલવામાં આવી.</translation> -<translation id="6814033694018386318">તમે Google સાથે આ શેર કરો છો</translation> <translation id="6817747507826986771">આ પેજ ઝડપથી શેર કરો. આ શૉર્ટકટમાં ફેરફાર કરવા માટે, ટચ કરીને થોડીવાર દબાવી રાખો.</translation> <translation id="6819199143469632133">બધા ડિવાઇસ પર તમારી Google સામગ્રી મેળવવા માટે, સાઇન ઇન કરો</translation> <translation id="6820686453637990663">CVC</translation> @@ -1164,6 +1159,7 @@ <translation id="7352939065658542140">વીડિયો</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{પસંદ કરેલ 1 આઇટમ શેર કરો}one{પસંદ કરેલ # આઇટમ શેર કરો}other{પસંદ કરેલ # આઇટમ શેર કરો}}</translation> <translation id="7359002509206457351">ચુકવણી પદ્ધતિઓને ઍક્સેસ કરો</translation> +<translation id="7363349185727752629">તમારી પ્રાઇવસીની પસંદગીઓની માર્ગદર્શિકા</translation> <translation id="7375125077091615385">પ્રકાર:</translation> <translation id="7376560087009844242">પેજની વધુ ટેક્સ્ટને શામેલ કરીને, 'શોધવા માટે ટચ કરો'માં તમે કદાચ બહેતર પરિણામો જોઈ શકશો. આમાં ફેરફાર કરવા માટે, તમે કોઈપણ સમયે <ph name="BEGIN_LINK" />સેટિંગ<ph name="END_LINK" />ની મુલાકાત લઈ શકો છો.</translation> <translation id="7379900596734708416">સાઇટ માટેની ઘેરી થીમ ઉપલબ્ધ છે</translation> @@ -1263,6 +1259,7 @@ <translation id="7876243839304621966">બધું દૂર કરો</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{તમે વાંચ્યા વગરનું <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> પેજ ધરાવો છો}one{તમે વાંચ્યા વગરનું <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> પેજ ધરાવો છો}other{તમે વાંચ્યા વગરના <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> પેજ ધરાવો છો}}</translation> <translation id="7886917304091689118">Chromeમાં ચાલી રહ્યું છે</translation> +<translation id="7887174313503389866">પ્રાઇવસી અને સુરક્ષા સંબંધિત મુખ્ય નિયંત્રણોની મુલાકાત લો. વધુ વિકલ્પો માટે, વ્યક્તિગત સેટિંગ પર જાઓ.</translation> <translation id="7887334752153342268">ડુપ્લિકેટ</translation> <translation id="789763218334337857">Chromeનો ઉપયોગ કેવી રીતે કરવો</translation> <translation id="7903184275147100332">આમાં એક મિનિટ લાગી શકે છે</translation> @@ -1376,6 +1373,7 @@ <translation id="8445448999790540984">બધા પાસવર્ડ નિકાસ કરી શકાતાં નથી</translation> <translation id="8446884382197647889">વધુ જાણો</translation> <translation id="8453310803815879010">Dino ગેમ શરૂ કરો</translation> +<translation id="8460448946170646641">પ્રાઇવસી અને સુરક્ષા સંબંધિત મુખ્ય નિયંત્રણોનો રિવ્યૂ કરો</translation> <translation id="8461694314515752532">તમારા પોતાના સિંક પાસફ્રેઝ સાથે સિંક કરેલા ડેટાને એન્ક્રિપ્ટ કરો</translation> <translation id="8466613982764129868">ખાતરી કરો કે <ph name="TARGET_DEVICE_NAME" />ને ઇન્ટરનેટ સાથે કનેક્ટ કરેલું છે</translation> <translation id="8473863474539038330">સરનામા અને વધુ</translation> @@ -1421,6 +1419,7 @@ <translation id="8636825310635137004">તમારા અન્ય ઉપકરણો પરથી તમારા ટૅબ્સ મેળવવા માટે, સમન્વયન ચાલુ કરો.</translation> <translation id="8641930654639604085">વયસ્ક સાઇટને બ્લૉક કરવાનો પ્રયાસ કરો</translation> <translation id="864544049772947936">વિન્ડો મેનેજ કરો (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">જોખમકારક ઇવેન્ટ થાય તે પહેલાં તેનું અનુમાન લગાવીને તેના વિશે તમને ચેતવણી આપે છે</translation> <translation id="8646467750715887511">તમે પેજને ખોલો, પછી જ તે લોડ થાય છે.</translation> <translation id="8655129584991699539">Chrome સેટિંગમાં તમે ડેટા સાફ કરી શકો છો</translation> <translation id="8659579665266920523">Chrome વડે કેવી રીતે શોધવું</translation> @@ -1433,7 +1432,6 @@ <translation id="867767487203716855">આગલી અપડેટ</translation> <translation id="8683039184091909753">છબી</translation> <translation id="8683081248374354009">ગ્રૂપને રીસેટ કરો</translation> -<translation id="8683526617475118045">તમને થતો લાભ</translation> <translation id="869891660844655955">સમાપ્તિ તારીખ</translation> <translation id="8699120352855309748">આ ભાષાઓનો અનુવાદ કરવાનું ઑફર કરશો નહીં</translation> <translation id="8712637175834984815">સમજાઈ ગયું</translation> @@ -1517,7 +1515,6 @@ <translation id="9148126808321036104">ફરીથી સાઇન ઇન કરો </translation> <translation id="9158770349521403363">માત્ર કન્ટેન્ટ શેર કરો</translation> <translation id="9159716826369098114"><ph name="TAB_COUNT" /> ટૅબવાળા ટૅબના ગ્રૂપને નવા બૅકગ્રાઉન્ડ ટૅબના ગ્રૂપ તરીકે રિસ્ટોર કરો.</translation> -<translation id="916446198114569890">તમે મુલાકાત લો છો તે URLsને તમારા Google એકાઉન્ટમાં સાચવવામાં આવે છે</translation> <translation id="9169507124922466868">નૅવિગેશન ઇતિહાસ અડધા ભાગમાં ખુલ્લો છે</translation> <translation id="9187955620966010988">પ્રતિક્રિયાની ગોઠવણી કરી</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{1 મિનિટ પહેલાં ચેક કર્યું}one{# મિનિટ પહેલાં ચેક કર્યું}other{# મિનિટ પહેલાં ચેક કર્યું}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_hi.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_hi.xtb index 33d78990..527c83c00 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_hi.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_hi.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">इन साइटों का अनुवाद करने की सुविधा न दें</translation> <translation id="1145536944570833626">मौजूदा डेटा मिटाएं.</translation> <translation id="1146678959555564648">VR डालें</translation> -<translation id="114825011539563458">निजता और सुरक्षा की सबसे अहम सेटिंग, एक जगह पर</translation> <translation id="1149401351239820326">समाप्ति माह</translation> <translation id="1150263420752757504"><ph name="APP_NAME" />, Chrome में खुलेगा. जारी रखने का मतलब है कि आप <ph name="BEGIN_LINK1" />Google की सेवा की शर्तों<ph name="END_LINK1" /> के साथ-साथ <ph name="BEGIN_LINK2" />Google Chrome और ChromeOS की सेवा की अन्य शर्तों<ph name="END_LINK2" /> से सहमत हैं.</translation> <translation id="1154704303112745282">यह पेज ऑफ़लाइन उपलब्ध नहीं है: <ph name="VIOLATED_URL" /></translation> @@ -170,6 +169,7 @@ <translation id="189358972401248634">अन्य भाषाएं</translation> <translation id="1894023287452300670">कीमत यहां ट्रैक करें</translation> <translation id="1900260903084164610">जारी रखने का मतलब है कि आप Chrome की <ph name="BEGIN_TOS_LINK" />सेवा की शर्तों<ph name="END_TOS_LINK" /> से सहमत हैं.</translation> +<translation id="1904580727789512086">आप जिन यूआरएल पर जाते हैं वे आपके Google खाते में सेव कर दिए जाते हैं</translation> <translation id="1910950723001426294">शेयर करने के विकल्पों की सूची बंद है.</translation> <translation id="1918175104945982129">यूज़र इंटरफ़ेस (यूआई) पर वॉइस सर्च के लिए, Assistant का इस्तेमाल करने की सहमति आधी स्क्रीन में खुली हुई है</translation> <translation id="1919130412786645364">Chrome में साइन-इन करने दें</translation> @@ -194,7 +194,6 @@ <translation id="2000419248597011803">'पता बार' और 'खोज बॉक्स' की कुछ कुकी और खोजों को आपके डिफ़ॉल्ट खोज इंजन पर भेजा जाता है</translation> <translation id="200114059308480249">क्या आप Google पर कुछ खोजते समय, खोज से जुड़े मिलते-जुलते शब्द भी शामिल करना चाहते हैं?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# फ़ाइल}one{# फ़ाइलें}other{# फ़ाइलें}}</translation> -<translation id="2020309681647789787">सिंक किए हुए सभी डिवाइसों पर आपका इतिहास सेव होगा, ताकि आप अपने पिछले काम को जारी रख सकें</translation> <translation id="2021896219286479412">पूरी स्क्रीन के साइट नियंत्रण</translation> <translation id="2038563949887743358">अनुरोध डेस्कटॉप साइट चालू करें</translation> <translation id="204321170514947529">Chrome में <ph name="APP_NAME" /> का डेटा भी है</translation> @@ -280,7 +279,6 @@ <translation id="2527779675047087889">क्लिपबोर्ड का कॉन्टेंट छिपाएं</translation> <translation id="2532336938189706096">वेब व्यू</translation> <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> आइटम मिटाए गए</translation> -<translation id="2534582914273493287">आपके देखे गए पेजों के यूआरएल, Google को भेजे जाते हैं</translation> <translation id="2536728043171574184">इस पृष्ठ की ऑफ़लाइन कॉपी देख रहे हैं</translation> <translation id="2546283357679194313">कुकी और साइट डेटा</translation> <translation id="2549516196460093976">इस टैबलेट का इस्तेमाल उस कंप्यूटर पर साइन इन करने के लिए किया जा सकता है जिस पर यह क्यूआर कोड दिख रहा है.</translation> @@ -372,7 +370,6 @@ <translation id="2996291259634659425">'पासफ़्रेज़' बनाएं</translation> <translation id="2996809686854298943">URL ज़रूरी है</translation> <translation id="2997081575621687554">जब कोई Google साइट अपने पेज पर, लिंक को निजी तौर पर पहले से लोड करने के लिए कहती है, तो Chrome, Google के सर्वर की मदद से पेजों को एन्क्रिप्ट करके पहले से लोड कर देता है. इसके लिए, Chrome कुकी का इस्तेमाल नहीं करता है. इससे, पहले से लोड की गई साइट से आपकी पहचान को छिपाया जा सकता है.</translation> -<translation id="3003733539450769656">यह सुविधा, नुकसान पहुंचाने वाले इवेंट का पहले से अंदाज़ा लगाकर, उनके बारे में आपको चेतावनी देती है</translation> <translation id="3006881078666935414">कोई उपयोग डेटा नहीं</translation> <translation id="301080557829842765">निजता गाइड</translation> <translation id="3016635187733453316">पक्का करें कि इस डिवाइस को इंटरनेट से कनेक्ट किया गया है</translation> @@ -432,6 +429,7 @@ <translation id="3284510035090979597">बिन मांगे मदद</translation> <translation id="3285080554353377245">Chrome को इस्तेमाल करने का तरीका बताने वाला वीडियो</translation> <translation id="3288003805934695103">पेज को पुनः लोड करें</translation> +<translation id="3290249595466894471">नए खतरों का पता लगाने के लिए, पेज के नमूने, डाउनलोड, एक्सटेंशन की गतिविधि, और सिस्टम की जानकारी भी भेजी जाती है</translation> <translation id="3297344142967351106">आवाज़ से डिवाइस का इस्तेमाल करना</translation> <translation id="3303414029551471755">सामग्री डाउनलोड करने के लिए आगे बढ़ें?</translation> <translation id="3334729583274622784">फ़ाइल एक्सटेंशन बदलना चाहते हैं?</translation> @@ -637,7 +635,6 @@ <translation id="4558311620361989323">वेबपेज शॉर्टकट</translation> <translation id="4561730552726921821">रजिस्ट्रेशन हो गया</translation> <translation id="4561979708150884304">कोई कनेक्शन नहीं</translation> -<translation id="4562008740775511591">Chrome, उचित डिफ़ॉल्ट उपलब्ध कराता है. हालांकि, आप इन्हें पसंद के मुताबिक बना सकते हैं, ताकि ये आपकी ब्राउज़िंग के हिसाब से काम करें</translation> <translation id="4565377596337484307">पासवर्ड छिपाएं</translation> <translation id="4572422548854449519">प्रबंधित खाते में साइन इन करें</translation> <translation id="4576892426230499203">पुष्टि करने के लिए कोई दूसरा तरीका आज़माएं</translation> @@ -919,7 +916,6 @@ <translation id="604996488070107836">किसी अज्ञात गड़बड़ी के कारण <ph name="FILE_NAME" /> का डाउनलोड विफल रहा.</translation> <translation id="605721222689873409">YY</translation> <translation id="6059830886158432458">अपनी खबरों और गतिविधि को यहां नियंत्रित करें</translation> -<translation id="6069177176307973611">निजता और सुरक्षा सेटिंग की समीक्षा करें</translation> <translation id="6070730414166672373">आपके बैंक से संपर्क किया जा रहा है</translation> <translation id="6085886413119427067">वेबसाइटों से सुरक्षित कनेक्शन की मदद से जुड़ने का तरीका तय करें</translation> <translation id="6091413777268123602">प्राइवसी सैंडबॉक्स के इस ट्रायल के तहत, साइटें आपके डेटा का कम से कम इस्तेमाल करके, ब्राउज़िंग का पहले जैसा अनुभव दे पाएंगी. इसका मतलब है कि क्रॉस-साइट ट्रैकिंग की रोकथाम के साथ-साथ, निजता से जुड़े बेहतर अनुभव मिलेंगे. जब नई सुविधाएं प्रयोग के लिए तैयार हो जाएंगी, तो उन्हें ट्रायल के लिए जोड़ दिया जाएगा.</translation> @@ -1040,6 +1036,7 @@ <translation id="6641780377503683465"><ph name="INTEREST" /> हटाएं</translation> <translation id="6643016212128521049">साफ़ करें</translation> <translation id="6645629752388991326">कंट्रोल करें कि सुरक्षा कुंजी के तौर पर इस फ़ोन का इस्तेमाल करके किन डिवाइसों पर साइन इन किया जा सकता है.</translation> +<translation id="6647441008198474441">इस बात का अंदाज़ा लगाने के लिए कि आपको कौन-कौनसी साइटें पसंद हैं, Google को आपके देखे गए पेजों के यूआरएल भेजे जाते हैं</translation> <translation id="6648459603387803038">आपका एडमिन किसी दूसरे डिवाइस से आपके ब्राउज़र का सेट अप बदल सकता है. इस डिवाइस की गतिविधि को Chrome से बाहर भी प्रबंधित किया जा सकता है.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 और <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> अन्य}one{<ph name="CONTACT_PREVIEW" />\u2026 और <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> अन्य}other{<ph name="CONTACT_PREVIEW" />\u2026 और <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> अन्य}}</translation> <translation id="6649642165559792194">इमेज की झलक देखें <ph name="BEGIN_NEW" />नई<ph name="END_NEW" /></translation> @@ -1047,7 +1044,6 @@ <translation id="6659594942844771486">ब्राउज़र टैब</translation> <translation id="666731172850799929"><ph name="APP_NAME" /> में खोलें</translation> <translation id="6671495933530132209">चित्र की कॉपी बनाएं</translation> -<translation id="6674044799624355221">नए खतरों का पता लगाने के लिए, पेज के नमूने, डाउनलोड, एक्सटेंशन की गतिविधि, और सिस्टम की जानकारी भेजी जाती है</translation> <translation id="6674571176963658787">इसे चालू करने के लिए, अपना लंबा पासवर्ड डालें</translation> <translation id="6676840375528380067">इस डिवाइस से अपना Chrome डेटा हटाएं?</translation> <translation id="6684809838922667136">Chrome को बेहतर बनाएं</translation> @@ -1069,7 +1065,6 @@ <translation id="6802555630140434547">विंडो बंद हो जाएगी</translation> <translation id="6811034713472274749">पेज देखने के लिए तैयार है</translation> <translation id="6813446258015311409">'Chrome में साइन इन करें' पेज खोला गया.</translation> -<translation id="6814033694018386318">आप Google के साथ क्या शेयर करते हैं</translation> <translation id="6817747507826986771">इस पेज को तेज़ी से शेयर करें. इस शॉर्टकट में बदलाव करने के लिए, दबाकर रखें.</translation> <translation id="6819199143469632133">Google की सेवाएं अपने सभी डिवाइसों पर ऐक्सेस करने के लिए, Chrome में साइन इन करें</translation> <translation id="6820686453637990663">CVC</translation> @@ -1164,6 +1159,7 @@ <translation id="7352939065658542140">वीडियो</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{1 चयनित आइटम शेयर करें}one{# चयनित आइटम शेयर करें}other{# चयनित आइटम शेयर करें}}</translation> <translation id="7359002509206457351">भुगतान के तरीकों को ऐक्सेस करें</translation> +<translation id="7363349185727752629">आपकी निजता के विकल्पों की गाइड</translation> <translation id="7375125077091615385">प्रकार:</translation> <translation id="7376560087009844242">खोजने के लिए टैप करने की सुविधा इस्तेमाल करते समय, किसी पेज के ज़्यादा शब्द शामिल करने पर, आपको बेहतर नतीजे दिख सकते हैं. इसमें बदलाव करने के लिए, आप जब चाहें <ph name="BEGIN_LINK" />सेटिंग<ph name="END_LINK" /> पर जा सकते हैं.</translation> <translation id="7379900596734708416">साइटों के लिए गहरे रंग वाली थीम</translation> @@ -1263,6 +1259,7 @@ <translation id="7876243839304621966">सभी को निकालें</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{आपने <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> पेज नहीं पढ़ा है}one{आपने <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> पेज नहीं पढ़ा है}other{आपने <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> पेज नहीं पढ़े हैं}}</translation> <translation id="7886917304091689118">Chrome में चल रहा है</translation> +<translation id="7887174313503389866">गाइड की मदद से, निजता और सुरक्षा से जुड़े मुख्य कंट्रोल के बारे में जानकारी पाएं. ज़्यादा विकल्पों के लिए, हर एक सेटिंग पर जाएं.</translation> <translation id="7887334752153342268">डुप्लीकेट</translation> <translation id="789763218334337857">Chrome को इस्तेमाल करने का तरीका</translation> <translation id="7903184275147100332">इसमें एक मिनट लग सकता है</translation> @@ -1376,6 +1373,7 @@ <translation id="8445448999790540984">पासवर्ड निर्यात नहीं कर सकते</translation> <translation id="8446884382197647889">ज़्यादा जानें</translation> <translation id="8453310803815879010">डायनो गेम शुरू करें</translation> +<translation id="8460448946170646641">निजता और सुरक्षा से जुड़े मुख्य कंट्रोल देखें</translation> <translation id="8461694314515752532">सिंक किए गए डेटा को अपने खुद के सिंक लंबे पासवर्ड से सुरक्षित करें</translation> <translation id="8466613982764129868">पक्का करें कि <ph name="TARGET_DEVICE_NAME" /> को इंटरनेट से कनेक्ट किया गया है</translation> <translation id="8473863474539038330">पते वगैरह</translation> @@ -1421,6 +1419,7 @@ <translation id="8636825310635137004">अपने अन्य डिवाइस से अपने टैब पाने के लिए, सिंक करना चालू करें.</translation> <translation id="8641930654639604085">वयस्क साइटें ब्लॉक करने की कोशिश करें</translation> <translation id="864544049772947936">विंडो (<ph name="INSTANCE_COUNTS" />) मैनेज करें</translation> +<translation id="8645920082661222035">यह सुविधा, नुकसान पहुंचाने वाली घटनाओं का पहले से अंदाज़ा लगाती है और उनके बारे में आपको चेतावनी देती है</translation> <translation id="8646467750715887511">पेज, खोले जाने के बाद ही लोड होंगे.</translation> <translation id="8655129584991699539">आप 'Chrome सेटिंग' में डेटा हटा सकते हैं</translation> <translation id="8659579665266920523">Chrome की मदद से खोजने का तरीका</translation> @@ -1433,7 +1432,6 @@ <translation id="867767487203716855">अगला अपडेट</translation> <translation id="8683039184091909753">इमेज</translation> <translation id="8683081248374354009">ग्रुप को रीसेट करें</translation> -<translation id="8683526617475118045">आपको क्या मिलेगा</translation> <translation id="869891660844655955">समय समाप्ति तारीख</translation> <translation id="8699120352855309748">इन भाषाओं का अनुवाद करने की सुविधा न दें</translation> <translation id="8712637175834984815">समझ लिया</translation> @@ -1517,7 +1515,6 @@ <translation id="9148126808321036104">फिर से साइन इन करें</translation> <translation id="9158770349521403363">सिर्फ़ कॉन्टेंट शेयर करें</translation> <translation id="9159716826369098114"><ph name="TAB_COUNT" /> टैब के टैब ग्रुप को, नए बैकग्राउंड वाले टैब ग्रुप की तरह पहले जैसा करें.</translation> -<translation id="916446198114569890">आप जिन यूआरएल पर जाते हैं वे आपके Google खाते में सेव हो जाते हैं</translation> <translation id="9169507124922466868">नेविगेशन का इतिहास आधी स्क्रीन में खुला हुआ है</translation> <translation id="9187955620966010988">प्रतिक्रिया में बदलाव किया गया</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{जांच 1 मिनट पहले की गई}one{जांच # मिनट पहले की गई}other{जांच # मिनट पहले की गई}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_hr.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_hr.xtb index b5da48d..934fb1f 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_hr.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_hr.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">Nemoj nuditi prevođenje ovih web-lokacija</translation> <translation id="1145536944570833626">Brisanje postojećih podataka.</translation> <translation id="1146678959555564648">Pokreni VR</translation> -<translation id="114825011539563458">Najvažnije kontrole privatnosti i sigurnosti na jednom mjestu</translation> <translation id="1149401351239820326">Mjesec isteka</translation> <translation id="1150263420752757504">Aplikacija <ph name="APP_NAME" /> otvorit će se u Chromeu. Nastavljanjem prihvaćate <ph name="BEGIN_LINK1" />Googleove uvjete pružanja usluge<ph name="END_LINK1" /> i <ph name="BEGIN_LINK2" />dodatne uvjete pružanja usluge za Google Chrome i Chrome OS<ph name="END_LINK2" />.</translation> <translation id="1154704303112745282">Stranica nije dostupna offline: <ph name="VIOLATED_URL" /></translation> @@ -170,6 +169,7 @@ <translation id="189358972401248634">Drugi jezici</translation> <translation id="1894023287452300670">Prati cijenu ovdje</translation> <translation id="1900260903084164610">Nastavkom upotrebe prihvaćate <ph name="BEGIN_TOS_LINK" />uvjete pružanja usluge<ph name="END_TOS_LINK" />.</translation> +<translation id="1904580727789512086">URL-ovi koje posjećujete spremaju se na vaš Google račun</translation> <translation id="1910950723001426294">Popis opcija za dijeljenje je zatvoren.</translation> <translation id="1918175104945982129">Korisničko sučelje pristanka za glasovno pretraživanje putem Asistenta otvoreno je na pola visine</translation> <translation id="1919130412786645364">Dopusti prijavu u Chrome</translation> @@ -194,7 +194,6 @@ <translation id="2000419248597011803">Zadanoj tražilici šalje neke kolačiće i pretraživanja iz adresne trake i okvira za pretraživanje</translation> <translation id="200114059308480249">Želite li uključiti okolni tekst u Google pretraživanja?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# datoteka}one{# datoteka}few{# datoteke}other{# datoteka}}</translation> -<translation id="2020309681647789787">Vaša će povijest biti na svim vašim sinkroniziranim uređajima kako biste mogli nastaviti ono što radite</translation> <translation id="2021896219286479412">Kontrole web-lokacije na cijelom zaslonu</translation> <translation id="2038563949887743358">Uključivanje zahtjeva za prikaz klasične web-lokacije</translation> <translation id="204321170514947529"><ph name="APP_NAME" /> ima podatke i u Chromeu</translation> @@ -280,7 +279,6 @@ <translation id="2527779675047087889">Sakrij sadržaj međuspremnika</translation> <translation id="2532336938189706096">Web-prikaz</translation> <translation id="2534155362429831547">Broj izbrisanih stavki: <ph name="NUMBER_OF_ITEMS" /></translation> -<translation id="2534582914273493287">URL-ovi koje posjećujete šalju se Googleu</translation> <translation id="2536728043171574184">Prikaz izvanmrežne kopije stranice</translation> <translation id="2546283357679194313">Kolačići i podaci o web-lokacijama</translation> <translation id="2549516196460093976">Pomoću ovog tableta možete se prijaviti na računalu na kojem se prikazuje ovaj QR kôd.</translation> @@ -372,7 +370,6 @@ <translation id="2996291259634659425">Stvaranje zaporke</translation> <translation id="2996809686854298943">Potreban URL</translation> <translation id="2997081575621687554">Kad Googleova web-lokacija zatraži privatno predučitavanje veza na stranici, Chrome šifrira i predučitava stranice putem Googleovih poslužitelja bez kolačića. Na taj se način vaš identitet sakriva od predučitane web-lokacije.</translation> -<translation id="3003733539450769656">Upozorava vas na opasne događaje prije nego što se dogode</translation> <translation id="3006881078666935414">Nema podataka o potrošnji</translation> <translation id="301080557829842765">Vodič za privatnost</translation> <translation id="3016635187733453316">Provjerite je li uređaj povezan s internetom</translation> @@ -432,6 +429,7 @@ <translation id="3284510035090979597">Proaktivna pomoć</translation> <translation id="3285080554353377245">Videozapisi o upotrebi Chromea</translation> <translation id="3288003805934695103">ponovo učitajte stranicu</translation> +<translation id="3290249595466894471">Šalje i mali uzorak stranica, preuzimanja, aktivnosti proširenja i informacija o sustavu radi lakšeg otkrivanja novih prijetnji</translation> <translation id="3297344142967351106">Glasovna pomoć</translation> <translation id="3303414029551471755">Želite li nastaviti s preuzimanjem sadržaja?</translation> <translation id="3334729583274622784">Promijeniti datotečni nastavak?</translation> @@ -637,7 +635,6 @@ <translation id="4558311620361989323">Prečaci web-stranice</translation> <translation id="4561730552726921821">Registracija uspješna</translation> <translation id="4561979708150884304">Niste povezani</translation> -<translation id="4562008740775511591">Chrome pruža razumne zadane postavke, no možete ga prilagoditi svojim navikama pregledavanja</translation> <translation id="4565377596337484307">Sakrij zaporku</translation> <translation id="4572422548854449519">Prijava na upravljani račun</translation> <translation id="4576892426230499203">Pokušajte s drugom opcijom potvrde</translation> @@ -919,7 +916,6 @@ <translation id="604996488070107836">Preuzimanje datoteke <ph name="FILE_NAME" /> nije uspjelo zbog nepoznate pogreške.</translation> <translation id="605721222689873409">GG</translation> <translation id="6059830886158432458">Svojim pričama i aktivnostima upravljajte ovdje</translation> -<translation id="6069177176307973611">Pregled postavki privatnosti i sigurnosti</translation> <translation id="6070730414166672373">Kontaktiranje banke\u2026</translation> <translation id="6085886413119427067">Određuje kako se povezati na web-lokacije sigurnom vezom</translation> <translation id="6091413777268123602">U probama Privacy Sandboxa web-lokacije mogu pružiti isti doživljaj pregledavanja koristeći manju količinu vaših podataka. To znači više privatnosti za vas i manje praćenja na različitim web-lokacijama. Nove probe dodat ćemo kad budu spremne za testiranje.</translation> @@ -1040,6 +1036,7 @@ <translation id="6641780377503683465">Ukloni <ph name="INTEREST" /></translation> <translation id="6643016212128521049">Izbriši</translation> <translation id="6645629752388991326">Kontrolirajte koji se uređaji mogu prijaviti koristeći ovaj uređaj kao sigurnosni ključ.</translation> +<translation id="6647441008198474441">URL-ovi koje posjećujete šalju se Googleu kako bi se predvidjelo koje biste web-lokacije mogli posjetiti sljedeće</translation> <translation id="6648459603387803038">Vaš administrator može daljinski promijeniti postavke preglednika. Aktivnostima na ovom uređaju može se upravljati i izvan Chromea.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 i još <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}one{<ph name="CONTACT_PREVIEW" />\u2026 i još <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}few{<ph name="CONTACT_PREVIEW" />\u2026 i još <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}other{<ph name="CONTACT_PREVIEW" />\u2026 i još <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}}</translation> <translation id="6649642165559792194">Pregled slike <ph name="BEGIN_NEW" />Novo<ph name="END_NEW" /></translation> @@ -1047,7 +1044,6 @@ <translation id="6659594942844771486">Kartica</translation> <translation id="666731172850799929">Otvori u aplikaciji <ph name="APP_NAME" /></translation> <translation id="6671495933530132209">Kopiraj sliku</translation> -<translation id="6674044799624355221">Šalje mali uzorak stranica, preuzimanja, aktivnosti proširenja i informacija o sustavu radi lakšeg otkrivanja novih prijetnji</translation> <translation id="6674571176963658787">Za pokretanje sinkronizacije unesite šifru</translation> <translation id="6676840375528380067">Želite li izbrisati svoje podatke iz Chromea s ovog uređaja?</translation> <translation id="6684809838922667136">Poboljšavanje Chromea</translation> @@ -1069,7 +1065,6 @@ <translation id="6802555630140434547">Prozor će se zatvoriti</translation> <translation id="6811034713472274749">Stranica je spremna za prikaz</translation> <translation id="6813446258015311409">Prijava u Chrome; otvoreno.</translation> -<translation id="6814033694018386318">Što dijelite s Googleom</translation> <translation id="6817747507826986771">Brzo podijelite ovu stranicu. Da biste uredili taj prečac, dodirnite ga i zadržite pritisak.</translation> <translation id="6819199143469632133">Prijavite se da biste imali pristup Googleovim stvarima na svim uređajima</translation> <translation id="6820686453637990663">CVC</translation> @@ -1164,6 +1159,7 @@ <translation id="7352939065658542140">VIDEOZAPIS</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{Dijeljenje 1 odabrane stavke}one{Dijeljenje # odabrane stavke}few{Dijeljenje # odabrane stavke}other{Dijeljenje # odabranih stavki}}</translation> <translation id="7359002509206457351">Pristup načinima plaćanja</translation> +<translation id="7363349185727752629">Vodič za vaše odabire u vezi s privatnošću</translation> <translation id="7375125077091615385">Vrsta:</translation> <translation id="7376560087009844242">Ako uključite više teksta sa stranice, možda ćete dobiti bolje rezultate kad koristite značajku Dodirnite za pretraživanje. To uvijek možete promijeniti u <ph name="BEGIN_LINK" />postavkama<ph name="END_LINK" />.</translation> <translation id="7379900596734708416">Dostupna je tamna tema za web-lokacije</translation> @@ -1263,6 +1259,7 @@ <translation id="7876243839304621966">Ukloni sve</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{Imate <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> nepročitanu stranicu}one{Imate <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> nepročitanu stranicu}few{Imate <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> nepročitane stranice}other{Imate <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> nepročitanih stranica}}</translation> <translation id="7886917304091689118">Pokrenuto u Chromeu</translation> +<translation id="7887174313503389866">Krenite u vođeni obilazak ključnih kontrola privatnosti i sigurnosti. Za više opcija pogledajte pojedinačne postavke.</translation> <translation id="7887334752153342268">Udvostruči</translation> <translation id="789763218334337857">Kako upotrebljavati Chrome</translation> <translation id="7903184275147100332">To može malo potrajati</translation> @@ -1376,6 +1373,7 @@ <translation id="8445448999790540984">Izvoz zaporki nije moguć</translation> <translation id="8446884382197647889">Saznajte više</translation> <translation id="8453310803815879010">Pokrenite igru s dinosaurom</translation> +<translation id="8460448946170646641">Pregledajte ključne kontrole privatnosti i sigurnosti</translation> <translation id="8461694314515752532">Šifriraj sinkronizirane podatke vlastitom šifrom za sinkronizaciju</translation> <translation id="8466613982764129868">Provjerite je li <ph name="TARGET_DEVICE_NAME" /> povezan s internetom</translation> <translation id="8473863474539038330">Adrese i više</translation> @@ -1421,6 +1419,7 @@ <translation id="8636825310635137004">Da bi se prikazale kartice s vaših ostalih uređaja, uključite sinkronizaciju.</translation> <translation id="8641930654639604085">Pokušaj blokirati web-lokacije za odrasle</translation> <translation id="864544049772947936">Upravljanje prozorima (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">Predviđa opasne događaje i upozorava vas na njih prije nego što se dogode</translation> <translation id="8646467750715887511">Stranice se učitavaju samo nakon što ih otvorite.</translation> <translation id="8655129584991699539">Podatke možete izbrisati u postavkama Chromea</translation> <translation id="8659579665266920523">Kako pretraživati u Chromeu</translation> @@ -1433,7 +1432,6 @@ <translation id="867767487203716855">Sljedeće ažuriranje</translation> <translation id="8683039184091909753">slika</translation> <translation id="8683081248374354009">Poništi grupu</translation> -<translation id="8683526617475118045">Što dobivate</translation> <translation id="869891660844655955">Datum isteka</translation> <translation id="8699120352855309748">Nemoj nuditi prevođenje ovih jezika</translation> <translation id="8712637175834984815">Shvaćam</translation> @@ -1517,7 +1515,6 @@ <translation id="9148126808321036104">Prijavite se ponovno</translation> <translation id="9158770349521403363">Podijeli samo sadržaj</translation> <translation id="9159716826369098114">Vratite grupu od <ph name="TAB_COUNT" /> kartica kao novu pozadinsku grupu kartica.</translation> -<translation id="916446198114569890">URL-ovi koje posjećujete spremaju se na vaš Google račun</translation> <translation id="9169507124922466868">Povijest navigacije je poluotvorena</translation> <translation id="9187955620966010988">Reakcija je prilagođena</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{Provjera je izvršena prije 1 minute}one{Provjera je izvršena prije # minute}few{Provjera je izvršena prije # minute}other{Provjera je izvršena prije # minuta}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_hu.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_hu.xtb index 7ae93adf..3c374f3c 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_hu.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_hu.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">Ne ajánlja fel ezeknek a webhelyeknek a fordítását</translation> <translation id="1145536944570833626">Meglévő adatok törlése.</translation> <translation id="1146678959555564648">Virtuális valóság – belépés</translation> -<translation id="114825011539563458">A legfontosabb adatvédelmi és biztonsági vezérlők egyetlen helyen</translation> <translation id="1149401351239820326">Lejárat hónapja</translation> <translation id="1150263420752757504">A(z) <ph name="APP_NAME" /> a Chrome-ban fog megnyílni. A továbblépéssel Ön elfogadja a <ph name="BEGIN_LINK1" />Google Általános Szerződési Feltételeket<ph name="END_LINK1" />, valamint <ph name="BEGIN_LINK2" />A Google Chrome és a ChromeOS Kiegészítő Általános Szerződési Feltételeit<ph name="END_LINK2" />.</translation> <translation id="1154704303112745282">Az oldal nem áll rendelkezésre offline módban: <ph name="VIOLATED_URL" /></translation> @@ -170,6 +169,7 @@ <translation id="189358972401248634">Más nyelvek</translation> <translation id="1894023287452300670">Itt követheti nyomon az árat</translation> <translation id="1900260903084164610">A folytatással Ön elfogadja az <ph name="BEGIN_TOS_LINK" />Általános Szerződési Feltételeket<ph name="END_TOS_LINK" />.</translation> +<translation id="1904580727789512086">A felkeresett URL-eket a Google-fiókba menti a rendszer</translation> <translation id="1910950723001426294">A megosztási lehetőségek listája össze van csukva.</translation> <translation id="1918175104945982129">A Segéd hangalapú kereséssel kapcsolatos hozzájárulási kezelőfelülete félmagasságban megnyitva</translation> <translation id="1919130412786645364">Chrome-bejelentkezés engedélyezése</translation> @@ -194,7 +194,6 @@ <translation id="2000419248597011803">Bizonyos cookie-kat és kereséseket küld a címsávból és a keresőmezőből az alapértelmezett keresőmotornak</translation> <translation id="200114059308480249">Használni szeretné a környező szöveget is a Google Kereső használatakor?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# fájl}other{# fájl}}</translation> -<translation id="2020309681647789787">Előzményeihez az összes szinkronizált eszközén hozzáférhet, így ott folytathatja a böngészést, ahol abbahagyta.</translation> <translation id="2021896219286479412">Teljes képernyős oldal vezérlői</translation> <translation id="2038563949887743358">Kapcsolja be az Asztali webhely kérése funkciót</translation> <translation id="204321170514947529">A(z) <ph name="APP_NAME" /> a Chrome-ban is rendelkezik adatokkal</translation> @@ -280,7 +279,6 @@ <translation id="2527779675047087889">Vágólap tartalmának elrejtése</translation> <translation id="2532336938189706096">Internetes megtekintés</translation> <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> elem törölve</translation> -<translation id="2534582914273493287">Az Ön által felkeresett URL-ek el lesznek küldve a Google-nak.</translation> <translation id="2536728043171574184">Az oldal offline példányának megtekintése</translation> <translation id="2546283357679194313">Cookie-k és webhelyadatok</translation> <translation id="2549516196460093976">Ezzel a táblagéppel bejelentkezhet a QR-kódot megjelenítő számítógépen.</translation> @@ -372,7 +370,6 @@ <translation id="2996291259634659425">Összetett jelszó létrehozása</translation> <translation id="2996809686854298943">URL szükséges</translation> <translation id="2997081575621687554">Ha valamely Google-webhely a linkek privát módon való előtöltését kéri az oldalán, a Chrome cookie-k nélkül titkosítja és tölti be előre az oldalakat a Google szerverein keresztül. Ez a művelet elrejti az Ön személyazonosságát az előre betöltött webhely előtt.</translation> -<translation id="3003733539450769656">Bekövetkezésük előtt figyelmezteti Önt a veszélyes eseményekre</translation> <translation id="3006881078666935414">Nincsenek használati adatok</translation> <translation id="301080557829842765">Adatvédelmi útmutató</translation> <translation id="3016635187733453316">Ellenőrizze, hogy az eszköz csatlakozik-e az internethez</translation> @@ -432,6 +429,7 @@ <translation id="3284510035090979597">Proaktív segítség</translation> <translation id="3285080554353377245">Videók a Chrome használatával kapcsolatban</translation> <translation id="3288003805934695103">Az oldal frissítése</translation> +<translation id="3290249595466894471">Elküldi továbbá az oldalakkal, letöltésekkel, bővítményekkel és rendszerrel kapcsolatos adatok egy kisebb mintáját annak érdekében, hogy a jövőben könnyebben felismerhessük az új fenyegetéseket.</translation> <translation id="3297344142967351106">Hangalapú segítség</translation> <translation id="3303414029551471755">Biztosan letölti a tartalmat?</translation> <translation id="3334729583274622784">Módosítja a fájl kiterjesztését?</translation> @@ -637,7 +635,6 @@ <translation id="4558311620361989323">Weboldalakkal kapcsolatos billentyűparancsok</translation> <translation id="4561730552726921821">Sikeres regisztráció</translation> <translation id="4561979708150884304">Nincs kapcsolat</translation> -<translation id="4562008740775511591">A Chrome észszerű alapértelmezett beállításokat biztosít, de lehetősége van személyre szabni őket, hogy minél inkább illeszkedjenek az Ön böngészési szokásaihoz</translation> <translation id="4565377596337484307">Jelszó elrejtése</translation> <translation id="4572422548854449519">Bejelentkezés a kezelt fiókba</translation> <translation id="4576892426230499203">Próbálkozzon másik ellenőrzési módszerrel</translation> @@ -919,7 +916,6 @@ <translation id="604996488070107836">A következő fájl letöltése ismeretlen hiba miatt nem sikerült: <ph name="FILE_NAME" />.</translation> <translation id="605721222689873409">ÉÉ</translation> <translation id="6059830886158432458">Itt kezelheti a híreket és a tevékenységeket</translation> -<translation id="6069177176307973611">Az adatvédelmi és biztonsági beállítások áttekintése</translation> <translation id="6070730414166672373">Kapcsolatfelvétel a bankjával</translation> <translation id="6085886413119427067">Meghatározza, hogyan lehet csatlakozni webhelyekhez biztonságos kapcsolat használatával</translation> <translation id="6091413777268123602">A Privacy Sandbox próbaidőszakai alatt a webhelyek ugyanazt a böngészési élményt biztosítják, de ehhez kevesebb személyes adatot használnak fel. Ez nagyobb fokú adatvédelmet és kevesebb webhelyeken átnyúló nyomon követést jelent az Ön számára. Amint készen állnak a tesztelésre, rendelkezésre bocsájtjuk az új próbaidőszakokat.</translation> @@ -1040,6 +1036,7 @@ <translation id="6641780377503683465"><ph name="INTEREST" /> eltávolítása</translation> <translation id="6643016212128521049">Törlés</translation> <translation id="6645629752388991326">Ön szabályozhatja, hogy melyik eszközök jelentkezhetnek be úgy, hogy ezt az eszközt használják biztonsági kulcsként.</translation> +<translation id="6647441008198474441">Az Ön által felkeresett URL-ek el lesznek küldve a Google-nak, hogy előrejelezzük, mely webhelyeket fogja esetleg legközelebb felkeresni.</translation> <translation id="6648459603387803038">A rendszergazda távolról módosítani tudja a böngészőbeállításokat. Az is lehetséges, hogy az eszközön végzett tevékenységeket a Chrome-on kívülről felügyelik.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 és további <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}other{<ph name="CONTACT_PREVIEW" />\u2026 és további <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}}</translation> <translation id="6649642165559792194">Kép előnézete <ph name="BEGIN_NEW" />Új<ph name="END_NEW" /></translation> @@ -1047,7 +1044,6 @@ <translation id="6659594942844771486">Lap</translation> <translation id="666731172850799929">Megnyitás itt: <ph name="APP_NAME" /></translation> <translation id="6671495933530132209">Kép másolása</translation> -<translation id="6674044799624355221">Elküldi az oldalakkal, letöltésekkel, bővítményekkel és rendszerrel kapcsolatos adatok egy kisebb mintáját annak érdekében, hogy a jövőben könnyebben felismerhessük az új fenyegetéseket.</translation> <translation id="6674571176963658787">A szinkronizálás megkezdéséhez adja meg összetett jelszavát.</translation> <translation id="6676840375528380067">Törli Chrome-adatait az eszközről?</translation> <translation id="6684809838922667136">A Chrome fejlesztése</translation> @@ -1069,7 +1065,6 @@ <translation id="6802555630140434547">Az ablak be lesz zárva</translation> <translation id="6811034713472274749">Az oldal megtekinthető</translation> <translation id="6813446258015311409">Bejelentkezés a Chrome-ba, megnyitva.</translation> -<translation id="6814033694018386318">Mik lesznek megosztva a Google-lal?</translation> <translation id="6817747507826986771">Az oldal gyors megosztása. A gyorsparancs szerkesztéséhez tartsa lenyomva.</translation> <translation id="6819199143469632133">Ha szeretné átvinni eszközei között Google-tartalmait, jelentkezzen be</translation> <translation id="6820686453637990663">CVC</translation> @@ -1164,6 +1159,7 @@ <translation id="7352939065658542140">VIDEÓ</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{1 kijelölt elem megosztása}other{# kijelölt elem megosztása}}</translation> <translation id="7359002509206457351">Hozzáférés a fizetési módokhoz</translation> +<translation id="7363349185727752629">Az adatvédelmi lehetőségek bemutatója</translation> <translation id="7375125077091615385">Típus:</translation> <translation id="7376560087009844242">Hasznosabb találatokat kaphat az Érintéssel keresés funkció használatakor, ha nagyobb részt jelöl ki az oldal szövegéből. Bármikor módosíthatja ezt a <ph name="BEGIN_LINK" />Beállításokban<ph name="END_LINK" />.</translation> <translation id="7379900596734708416">A sötét téma rendelkezésre áll a webhelyeknél</translation> @@ -1263,6 +1259,7 @@ <translation id="7876243839304621966">Összes eltávolítása</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{<ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> olvasatlan oldala van.}other{<ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> olvasatlan oldala van.}}</translation> <translation id="7886917304091689118">Fut a Chrome-ban</translation> +<translation id="7887174313503389866">Tekintse meg a legfontosabb adatvédelmi és biztonsági beállítások bemutatóját. További lehetőségekért lépjen az egyes beállításokhoz.</translation> <translation id="7887334752153342268">Másodpéldány</translation> <translation id="789763218334337857">A Chrome használata</translation> <translation id="7903184275147100332">Ez eltarthat néhány percig</translation> @@ -1376,6 +1373,7 @@ <translation id="8445448999790540984">Nem sikerült a jelszavak exportálása</translation> <translation id="8446884382197647889">További információ</translation> <translation id="8453310803815879010">Dinós játék indítása</translation> +<translation id="8460448946170646641">A legfontosabb adatvédelmi és biztonsági beállítások áttekintése</translation> <translation id="8461694314515752532">A szinkronizált adatok titkosítása saját összetett szinkronizálási jelszóval</translation> <translation id="8466613982764129868">Győződjön meg arról, hogy a(z) <ph name="TARGET_DEVICE_NAME" /> eszköz csatlakozik az internethez</translation> <translation id="8473863474539038330">Címek és egyebek</translation> @@ -1421,6 +1419,7 @@ <translation id="8636825310635137004">Ha a többi eszközén is szeretné elérni lapjait, kapcsolja be a szinkronizálást</translation> <translation id="8641930654639604085">Felnőtteknek szóló webhelyek letiltásának megkísérlése</translation> <translation id="864544049772947936">Ablakok kezelése (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">Előrejelzi a veszélyes eseményeket, és figyelmezteti Önt róluk még a bekövetkezésük előtt.</translation> <translation id="8646467750715887511">Az oldalak csak a megnyitásuk után töltődnek be.</translation> <translation id="8655129584991699539">Az adatokat a Chrome beállításaiban módosíthatja</translation> <translation id="8659579665266920523">Keresés a Chrome segítségével</translation> @@ -1433,7 +1432,6 @@ <translation id="867767487203716855">Következő frissítés</translation> <translation id="8683039184091909753">kép</translation> <translation id="8683081248374354009">Csoport visszaállítása</translation> -<translation id="8683526617475118045">Előnyök</translation> <translation id="869891660844655955">Lejárati dátum</translation> <translation id="8699120352855309748">Ne ajánlja fel a fordítást ezekről a nyelvekről</translation> <translation id="8712637175834984815">Sikerült</translation> @@ -1517,7 +1515,6 @@ <translation id="9148126808321036104">Jelentkezzen be újra</translation> <translation id="9158770349521403363">Csak tartalom megosztása</translation> <translation id="9159716826369098114"><ph name="TAB_COUNT" /> lapból álló lapcsoport visszaállítása új háttérbeli lapcsoportként.</translation> -<translation id="916446198114569890">A felkeresett URL-eket a Google-fiókba menti a rendszer.</translation> <translation id="9169507124922466868">Félmagasságban megnyitott navigációs előzmények</translation> <translation id="9187955620966010988">Reakció korrigálva</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{1 perce ellenőrizve}other{# perce ellenőrizve}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_hy.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_hy.xtb index 8ca40d4..3fa4cd04 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_hy.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_hy.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">Չառաջարկել թարգմանել այս կայքերը</translation> <translation id="1145536944570833626">Առկա տվյալների ջնջում։</translation> <translation id="1146678959555564648">Մուտքագրել VR-ը</translation> -<translation id="114825011539563458">Գաղտնիության և անվտանգության ամենակարևոր կառավարման տարրերը՝ մեկ էջում</translation> <translation id="1149401351239820326">Ժամկետի սպառման ամիսը</translation> <translation id="1150263420752757504"><ph name="APP_NAME" /> հավելվածը կբացվի Chrome-ում։ Շարունակելով՝ դուք ընդունում եք <ph name="BEGIN_LINK1" />Google-ի օգտագործման պայմանները<ph name="END_LINK1" /> և <ph name="BEGIN_LINK2" />Google Chrome-ի և ChromeOS-ի օգտագործման լրացուցիչ պայմանները<ph name="END_LINK2" />։</translation> <translation id="1154704303112745282">Էջն անցանց ռեժիմում հասանելի չէ՝ <ph name="VIOLATED_URL" /></translation> @@ -170,6 +169,7 @@ <translation id="189358972401248634">Այլ լեզուներ</translation> <translation id="1894023287452300670">Հետևեք գներին այստեղ</translation> <translation id="1900260903084164610">Շարունակելով՝ դուք ընդունում եք <ph name="BEGIN_TOS_LINK" />Օգտագործման պայմանները<ph name="END_TOS_LINK" />։</translation> +<translation id="1904580727789512086">Ձեր այցելած կայքերի հղումները պահվում են ձեր Google հաշվում</translation> <translation id="1910950723001426294">Կիսվելու տարբերակների ցանկը փակված է։</translation> <translation id="1918175104945982129">Օգնականի միջոցով ձայնային որոնման միջերեսը բացվում է կես բարձրությամբ</translation> <translation id="1919130412786645364">Թույլատրել մուտքը Chrome-ում</translation> @@ -194,7 +194,6 @@ <translation id="2000419248597011803">Ձեր կանխադրված որոնիչին է ուղարկում հասցեագոտու և որոնման դաշտի հարցումները, ինչպես նաև որոշ քուքիներ</translation> <translation id="200114059308480249">Ներառե՞լ շրջապատող տեքստը Google-ի որոնման հարցումներում</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# ֆայլ}one{# ֆայլ}other{# ֆայլ}}</translation> -<translation id="2020309681647789787">Ձեր գործողությունների պատմությունը հասանելի կլինի բոլոր համաժամացված սարքերում, և դուք կկարողանաք շարունակել այն, ինչ անում էիք</translation> <translation id="2021896219286479412">Լիաէկրան ռեժիմի կարգավորումներ</translation> <translation id="2038563949887743358">Միացնել կայքի ամբողջական տարբերակը</translation> <translation id="204321170514947529"><ph name="APP_NAME" /> հավելվածը նաև ունի տվյալներ Chrome-ում</translation> @@ -280,7 +279,6 @@ <translation id="2527779675047087889">Թաքցնել սեղմատախտակի բովանդակությունը</translation> <translation id="2532336938189706096">Վեբ տարբերակ</translation> <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> տարր ջնջվեց</translation> -<translation id="2534582914273493287">Ձեր այցելած էջերի URL-ներն ուղարկվում են Google-ին</translation> <translation id="2536728043171574184">Դուք դիտում եք տվյալ էջի անցանց պատճենը</translation> <translation id="2546283357679194313">Cookie ֆայլեր և կայքի տվյալներ</translation> <translation id="2549516196460093976">Դուք կարող եք օգտագործել այս պլանշետը՝ հաշիվ մուտք գործելու համակարգչում, որում ցուցադրված է այս QR կոդը։</translation> @@ -372,7 +370,6 @@ <translation id="2996291259634659425">Անցաբառի ստեղծում</translation> <translation id="2996809686854298943">Պահանջվում է URL-ը</translation> <translation id="2997081575621687554">Երբ Google-ի որևէ կայք հայցում է էջերի անանուն նախաբեռնում իր էջում առկա հղումների միջոցով, Chrome-ը գաղտնագրում և նախապես բեռնում է էջերը Google-ի սերվերների միջոցով առանց քուքիների։ Այդպիսով ձեր անձնական տվյալները չեն փոխանցվում։</translation> -<translation id="3003733539450769656">Զգուշացնում է սպասվող վտանգավոր իրադարձությունների մասին</translation> <translation id="3006881078666935414">Օգտագործման տվյալներ չկան</translation> <translation id="301080557829842765">Տվյալների պաշտպանության ուղեցույց</translation> <translation id="3016635187733453316">Համոզվեք, որ սարքը միացած է ինտերնետին</translation> @@ -432,6 +429,7 @@ <translation id="3284510035090979597">Օգնություն՝ անհրաժեշտ պահին</translation> <translation id="3285080554353377245">Տեսանյութեր Chrome-ի օգտագործման մասին</translation> <translation id="3288003805934695103">Վերաբեռնել էջը</translation> +<translation id="3290249595466894471">Նաև ուղարկում է էջերի, ներբեռնված ֆայլերի, ընդլայնումների գործողությունների և համակարգի մասին տեղեկություններից որոշ հատվածներ, որոնք օգնում են հայտնաբերել օգտատերերին սպառնացող նոր վտանգներ։</translation> <translation id="3297344142967351106">Ձայնային հուշումներ</translation> <translation id="3303414029551471755">Ներբեռնե՞լ բովանդակությունը:</translation> <translation id="3334729583274622784">Փոխե՞լ ֆայլի ընդլայնումը</translation> @@ -637,7 +635,6 @@ <translation id="4558311620361989323">Վեբէջերի դյուրանցումներ</translation> <translation id="4561730552726921821">Գրանցումը կատարվեց</translation> <translation id="4561979708150884304">Կապ չկա</translation> -<translation id="4562008740775511591">Մենք Chrome-ում սահմանել ենք հարմար կանխադրված արժեքներ, սակայն դուք կարող եք անհատականացնել դրանք՝ ելնելով ձեր դիտարկման սովորություններից։</translation> <translation id="4565377596337484307">Թաքցնել գաղտնաբառը</translation> <translation id="4572422548854449519">Մուտք գործեք կառավարվող հաշիվ</translation> <translation id="4576892426230499203">Ընտրեք հաստատման այլ տարբերակ</translation> @@ -919,7 +916,6 @@ <translation id="604996488070107836"><ph name="FILE_NAME" /> ֆայլի ներբեռնումը ձախողվեց՝ անհայտ սխալի պատճառով:</translation> <translation id="605721222689873409">տարի</translation> <translation id="6059830886158432458">Կառավարեք ձեր պատմություններն ու գործողություններն այստեղ</translation> -<translation id="6069177176307973611">Ստուգել գաղտնիության և անվտանգության կարգավորումները</translation> <translation id="6070730414166672373">Կապ բանկի հետ\u2026</translation> <translation id="6085886413119427067">Սահմանում է, թե ինչպես միանալ կայքերին ապահով կապի միջոցով</translation> <translation id="6091413777268123602">Privacy Sandbox-ի փորձնական տարբերակների շնորհիվ դուք կարող եք նաև օգտվել կայքերից՝ ձեր մասին ավելի քիչ տվյալներ բացահայտելով։ Դա նշանակում է գաղտնիության ավելի բարձր մակարդակ ձեզ համար և օգտատերերի գործողությունների ավելի քիչ միջկայքային հետագծում։ Մենք կավելացնենք նոր փորձնական տարբերակներ, երբ դրանք հասանելի լինեն փորձարկման համար։</translation> @@ -1040,6 +1036,7 @@ <translation id="6641780377503683465">Հեռացնել «<ph name="INTEREST" />» հետաքրքրությունը</translation> <translation id="6643016212128521049">Մաքրել</translation> <translation id="6645629752388991326">Ընտրեք, թե որ սարքերում կարող եք հաշիվ մտնել՝ այս սարքը որպես անվտանգության բանալի օգտագործելու միջոցով։</translation> +<translation id="6647441008198474441">Ձեր այցելած էջերի URL-ներն ուղարկվում են Google-ին՝ կանխատեսելու, թե հաջորդիվ ինչ կայքեր կարող եք այցելել։</translation> <translation id="6648459603387803038">Ձեր ադմինիստրատորը կարող է հեռակա փոխել ձեր դիտարկիչի կարգավորումները։ Սարքում արվող գործողությունները նույնպես կարող են կառավարվել Chrome-ից դուրս։</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 ու ևս <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> կոնտակտ}one{<ph name="CONTACT_PREVIEW" />\u2026 ու ևս <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> կոնտակտ}other{<ph name="CONTACT_PREVIEW" />\u2026 ու ևս <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> կոնտակտ}}</translation> <translation id="6649642165559792194">Նախադիտել պատկերը <ph name="BEGIN_NEW" />Նոր<ph name="END_NEW" /></translation> @@ -1047,7 +1044,6 @@ <translation id="6659594942844771486">Ներդիր</translation> <translation id="666731172850799929">Բացել <ph name="APP_NAME" /> հավելվածում</translation> <translation id="6671495933530132209">Պատճենել պատկերը</translation> -<translation id="6674044799624355221">Ուղարկվում են էջերի, ներբեռնված ֆայլերի, ընդլայնումների գործողությունների և համակարգի մասին տեղեկություններից որոշ հատվածներ, որոնք օգնում են հայտնաբերել օգտատերերին սպառնացող նոր վտանգներ։</translation> <translation id="6674571176963658787">Համաժամացումը սկսելու համար մուտքագրեք ձեր անցաբառը</translation> <translation id="6676840375528380067">Հեռացնե՞լ Chrome-ի տվյալները այս սարքից</translation> <translation id="6684809838922667136">Օգնեք բարելավել Chrome-ի աշխատանքը</translation> @@ -1069,7 +1065,6 @@ <translation id="6802555630140434547">Պատուհանը կփակվի</translation> <translation id="6811034713472274749">Էջը պատրաստ է</translation> <translation id="6813446258015311409">Մուտք գործել Chrome, բացված է։</translation> -<translation id="6814033694018386318">Ինչ տեղեկություններ են փոխանցվում Google-ին</translation> <translation id="6817747507826986771">Արագ կիսվեք այս էջով։ Այս դյուրանցումը փոփոխելու համար հպեք դրան և պահեք։</translation> <translation id="6819199143469632133">Google-ի ծառայություններից մի քանի սարքերում օգտվելու համար մուտք գործեք հաշիվ</translation> <translation id="6820686453637990663">CVC</translation> @@ -1164,6 +1159,7 @@ <translation id="7352939065658542140">ՏԵՍԱՆՅՈՒԹ</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{Հրապարակել ընտրված 1 տարրը}one{Հրապարակել ընտրված # տարրը}other{Հրապարակել ընտրված # տարրերը}}</translation> <translation id="7359002509206457351">Վճարման եղանակների հասանելիություն</translation> +<translation id="7363349185727752629">Գաղտնիության կարգավորումների ուղեցույց</translation> <translation id="7375125077091615385">Տեսակ`</translation> <translation id="7376560087009844242">Ներառելով ավելի շատ տեքստ էջից՝ դուք կարող եք ավելի լավ արդյունքներ ստանալ «Հպումով որոնում» գործառույթից օգտվելիս։ Այս պարամետրը կարող եք ցանկացած ժամանակ փոխել <ph name="BEGIN_LINK" />կարգավորումներում<ph name="END_LINK" />։</translation> <translation id="7379900596734708416">Կայքերի համար մուգ թեման հասանելի է</translation> @@ -1263,6 +1259,7 @@ <translation id="7876243839304621966">Հեռացնել բոլորը</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{Դուք ունեք <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> չկարդացված էջ}one{Դուք ունեք <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> չկարդացված էջ}other{Դուք ունեք <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> չկարդացված էջ}}</translation> <translation id="7886917304091689118">Այս էջն արդեն բացված է Chrome-ում</translation> +<translation id="7887174313503389866">Դիտեք գաղտնիության և անվտանգության հիմնական կառավարման տարրերը։ Լրացուցիչ պարամետրերի համար բացեք առանձին կարգավորումները։</translation> <translation id="7887334752153342268">Կրկնօրինակել</translation> <translation id="789763218334337857">Ինչպես օգտագործել Chrome-ը</translation> <translation id="7903184275147100332">Սա կարող է մեկ րոպե տևել</translation> @@ -1376,6 +1373,7 @@ <translation id="8445448999790540984">Չհաջողվեց արտահանել գաղտնաբառերը</translation> <translation id="8446884382197647889">Մանրամասն</translation> <translation id="8453310803815879010">Սկսել Dino խաղը</translation> +<translation id="8460448946170646641">Դիտեք գաղտնիության և անվտանգության հիմնական կառավարման տարրերը</translation> <translation id="8461694314515752532">Գաղտնագրել համաժամացված տվյալները սեփական համաժամացման անցաբառով</translation> <translation id="8466613982764129868">Համոզվեք, որ <ph name="TARGET_DEVICE_NAME" /> սարքը միացված է ինտերնետին</translation> <translation id="8473863474539038330">Հասցեներ և այլ տեղեկություններ</translation> @@ -1421,6 +1419,7 @@ <translation id="8636825310635137004">Ձեր մյուս սարքերում եղած ներդիրներն օգտագործելու համար միացրեք համաժամացումը:</translation> <translation id="8641930654639604085">Արգելափակել մեծահասակների համար նախատեսված կայքերը</translation> <translation id="864544049772947936">Կառավարել պատուհանները (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">Հայտնաբերում է վտանգավոր իրադարձություններն ու զգուշացնում դրանց մասին</translation> <translation id="8646467750715887511">Էջերը բեռնվում են միայն, եթե բացում եք դրանք։</translation> <translation id="8655129584991699539">Տվյալները կարող եք ջնջել Chrome-ի կարգավորումներում</translation> <translation id="8659579665266920523">Ինչպես որոնել Chrome-ի միջոցով</translation> @@ -1433,7 +1432,6 @@ <translation id="867767487203716855">Հաջորդ թարմացումը</translation> <translation id="8683039184091909753">պատկեր</translation> <translation id="8683081248374354009">Զրոյացնել խմբի կարգավորումները</translation> -<translation id="8683526617475118045">Գործառույթի առավելությունները</translation> <translation id="869891660844655955">Սպառման ժամկետ</translation> <translation id="8699120352855309748">Չառաջարկել թարգմանել այս լեզուները</translation> <translation id="8712637175834984815">Պատրաստ է</translation> @@ -1517,7 +1515,6 @@ <translation id="9148126808321036104">Նորից մուտք գործել</translation> <translation id="9158770349521403363">Կիսվել միայն բովանդակությամբ</translation> <translation id="9159716826369098114">Վերականգնել <ph name="TAB_COUNT" /> ներդիրից բաղկացած խումբը որպես ներդիրների նոր ֆոնային խումբ։</translation> -<translation id="916446198114569890">Ձեր այցելած կայքերի URL-ները պահվում են ձեր Google հաշվում</translation> <translation id="9169507124922466868">Նավիգացիայի պատմության թերթը կիսաբացված է</translation> <translation id="9187955620966010988">Արձագանքը ճշգրտվեց</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{Ստուգվել է 1 րոպե առաջ}one{Ստուգվել է # րոպե առաջ}other{Ստուգվել է # րոպե առաջ}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_id.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_id.xtb index 6ea0f9f..b1bf6ae2 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_id.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_id.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">Jangan tawarkan penerjemahan situs ini</translation> <translation id="1145536944570833626">Hapus data yang sudah ada.</translation> <translation id="1146678959555564648">Masuki VR</translation> -<translation id="114825011539563458">Kontrol privasi dan keamanan paling penting di satu tempat</translation> <translation id="1149401351239820326">Bulan akhir masa berlaku</translation> <translation id="1150263420752757504"><ph name="APP_NAME" /> akan dibuka di Chrome. Dengan melanjutkan, Anda menyetujui <ph name="BEGIN_LINK1" />Persyaratan Layanan Google<ph name="END_LINK1" /> serta <ph name="BEGIN_LINK2" />Persyaratan Layanan Tambahan Google Chrome dan ChromeOS<ph name="END_LINK2" />.</translation> <translation id="1154704303112745282">Halaman tidak tersedia saat offline: <ph name="VIOLATED_URL" /></translation> @@ -170,6 +169,7 @@ <translation id="189358972401248634">Bahasa lain</translation> <translation id="1894023287452300670">Pantau harga di sini</translation> <translation id="1900260903084164610">Dengan melanjutkan, Anda menyetujui <ph name="BEGIN_TOS_LINK" />Persyaratan Layanan<ph name="END_TOS_LINK" />.</translation> +<translation id="1904580727789512086">URL yang Anda buka disimpan ke Akun Google Anda</translation> <translation id="1910950723001426294">Daftar opsi berbagi ditutup.</translation> <translation id="1918175104945982129">UI izin penelusuran suara Asisten terbuka setengah</translation> <translation id="1919130412786645364">Izinkan login Chrome</translation> @@ -194,7 +194,6 @@ <translation id="2000419248597011803">Mengirimkan beberapa cookie dan penelusuran dari kolom URL dan kotak penelusuran ke mesin telusur default</translation> <translation id="200114059308480249">Sertakan teks di sekitar dalam penelusuran Google?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# File}other{# File}}</translation> -<translation id="2020309681647789787">Histori Anda akan tersedia di semua perangkat yang disinkronkan, sehingga Anda dapat melanjutkan kegiatan Anda</translation> <translation id="2021896219286479412">Kontrol situs layar penuh</translation> <translation id="2038563949887743358">Aktifkan Ubah situs desktop</translation> <translation id="204321170514947529"><ph name="APP_NAME" /> juga memiliki data di Chrome</translation> @@ -280,7 +279,6 @@ <translation id="2527779675047087889">Sembunyikan konten papan klip</translation> <translation id="2532336938189706096">Tampilan Web</translation> <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> item dihapus</translation> -<translation id="2534582914273493287">URL yang Anda buka akan dikirim ke Google</translation> <translation id="2536728043171574184">Melihat salinan offline halaman ini</translation> <translation id="2546283357679194313">Cookie dan data situs</translation> <translation id="2549516196460093976">Anda dapat menggunakan tablet ini untuk login di komputer yang menampilkan kode QR ini.</translation> @@ -372,7 +370,6 @@ <translation id="2996291259634659425">Buat frasa sandi</translation> <translation id="2996809686854298943">Perlu URL</translation> <translation id="2997081575621687554">Saat sebuah situs Google meminta untuk melakukan pramuat link yang ada di halamannya secara pribadi, Chrome akan mengenkripsi dan melakukan pramuat halaman melalui server Google tanpa cookie. Hal ini akan menyembunyikan identitas Anda dari situs yang dipramuat.</translation> -<translation id="3003733539450769656">Memberikan peringatan terkait peristiwa berbahaya sebelum terjadi</translation> <translation id="3006881078666935414">Tidak ada data penggunaan</translation> <translation id="301080557829842765">Panduan privasi</translation> <translation id="3016635187733453316">Pastikan perangkat ini terhubung ke internet</translation> @@ -432,6 +429,7 @@ <translation id="3284510035090979597">Bantuan Proaktif</translation> <translation id="3285080554353377245">Video tentang cara menggunakan Chrome</translation> <translation id="3288003805934695103">Memuat ulang halaman</translation> +<translation id="3290249595466894471">Juga mengirimkan sedikit contoh halaman, download, aktivitas ekstensi, dan informasi sistem untuk membantu menemukan ancaman baru</translation> <translation id="3297344142967351106">Bantuan suara</translation> <translation id="3303414029551471755">Lanjutkan untuk mendownload konten?</translation> <translation id="3334729583274622784">Ubah ekstensi file?</translation> @@ -637,7 +635,6 @@ <translation id="4558311620361989323">Pintasan halaman web</translation> <translation id="4561730552726921821">Pendaftaran berhasil</translation> <translation id="4561979708150884304">Tidak ada koneksi</translation> -<translation id="4562008740775511591">Chrome memberikan setelan default yang wajar, tetapi Anda dapat menyesuaikannya agar cocok dengan kebiasan penjelajahan Anda</translation> <translation id="4565377596337484307">Sembunyikan sandi</translation> <translation id="4572422548854449519">Login ke akun terkelola</translation> <translation id="4576892426230499203">Coba opsi verifikasi lain</translation> @@ -919,7 +916,6 @@ <translation id="604996488070107836">Download <ph name="FILE_NAME" /> gagal karena kesalahan tak dikenal.</translation> <translation id="605721222689873409">TT</translation> <translation id="6059830886158432458">Kontrol artikel dan aktivitas Anda di sini</translation> -<translation id="6069177176307973611">Meninjau setelan privasi dan keamanan</translation> <translation id="6070730414166672373">Menghubungi bank Anda \u2026</translation> <translation id="6085886413119427067">Menentukan cara terhubung ke situs melalui koneksi yang aman</translation> <translation id="6091413777268123602">Dengan uji coba Privacy Sandbox, situs dapat memberikan pengalaman penjelajahan yang sama tetapi menggunakan lebih sedikit info pribadi Anda. Artinya, lebih banyak privasi untuk Anda dan lebih sedikit pelacakan lintas situs. Kami akan menambahkan uji coba baru saat siap untuk diuji.</translation> @@ -1040,6 +1036,7 @@ <translation id="6641780377503683465">Hapus <ph name="INTEREST" /></translation> <translation id="6643016212128521049">Hapus</translation> <translation id="6645629752388991326">Kontrol perangkat mana yang dapat login dengan menggunakan perangkat ini sebagai kunci keamanan.</translation> +<translation id="6647441008198474441">URL yang Anda buka akan dikirim ke Google untuk memprediksi situs yang mungkin Anda buka berikutnya</translation> <translation id="6648459603387803038">Administrator dapat mengubah penyiapan browser Anda dari jarak jauh. Aktivitas di perangkat ini juga dapat dikelola di luar Chrome.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 dan <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> lainnya}other{<ph name="CONTACT_PREVIEW" />\u2026 dan <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> lainnya}}</translation> <translation id="6649642165559792194">Lihat pratinjau gambar <ph name="BEGIN_NEW" />Baru<ph name="END_NEW" /></translation> @@ -1047,7 +1044,6 @@ <translation id="6659594942844771486">Tab</translation> <translation id="666731172850799929">Buka di <ph name="APP_NAME" /></translation> <translation id="6671495933530132209">Salin gambar</translation> -<translation id="6674044799624355221">Mengirimkan sedikit sampel halaman, download, aktivitas ekstensi, dan informasi sistem untuk membantu menemukan ancaman baru</translation> <translation id="6674571176963658787">Untuk memulai sinkronisasi, masukkan frasa sandi</translation> <translation id="6676840375528380067">Hapus data Chrome Anda dari perangkat ini?</translation> <translation id="6684809838922667136">Buat Chrome menjadi lebih baik</translation> @@ -1069,7 +1065,6 @@ <translation id="6802555630140434547">Jendela akan ditutup</translation> <translation id="6811034713472274749">Halaman siap ditampilkan</translation> <translation id="6813446258015311409">Login ke Chrome, dibuka.</translation> -<translation id="6814033694018386318">Yang Anda bagikan kepada Google</translation> <translation id="6817747507826986771">Bagikan halaman ini dengan cepat. Sentuh lama untuk mengedit pintasan ini.</translation> <translation id="6819199143469632133">Login untuk mendapatkan produk dan layanan Google di seluruh perangkat</translation> <translation id="6820686453637990663">CVC</translation> @@ -1164,6 +1159,7 @@ <translation id="7352939065658542140">VIDEO</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{Bagikan 1 item yang dipilih}other{Bagikan # item yang dipilih}}</translation> <translation id="7359002509206457351">Akses metode pembayaran</translation> +<translation id="7363349185727752629">Panduan terkait pilihan privasi Anda</translation> <translation id="7375125077091615385">Jenis:</translation> <translation id="7376560087009844242">Dengan menyertakan lebih banyak teks halaman, Anda dapat melihat hasil yang lebih baik saat menggunakan fitur Sentuh untuk Menelusuri. Anda dapat membuka <ph name="BEGIN_LINK" />setelan<ph name="END_LINK" /> kapan saja untuk mengubahnya.</translation> <translation id="7379900596734708416">Tema gelap untuk situs tersedia</translation> @@ -1263,6 +1259,7 @@ <translation id="7876243839304621966">Hapus semua</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{Anda memiliki <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> halaman yang belum dibaca}other{Anda memiliki <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> halaman yang belum dibaca}}</translation> <translation id="7886917304091689118">Berjalan di Chrome</translation> +<translation id="7887174313503389866">Lihat tur terpandu tentang kontrol privasi dan keamanan utama. Untuk opsi lainnya, buka masing-masing setelan.</translation> <translation id="7887334752153342268">Duplikasikan</translation> <translation id="789763218334337857">Cara menggunakan Chrome</translation> <translation id="7903184275147100332">Mungkin perlu waktu beberapa saat</translation> @@ -1376,6 +1373,7 @@ <translation id="8445448999790540984">Tidak dapat mengekspor sandi</translation> <translation id="8446884382197647889">Pelajari Lebih Lanjut</translation> <translation id="8453310803815879010">Mulai Game Dino</translation> +<translation id="8460448946170646641">Tinjau kontrol privasi dan keamanan utama</translation> <translation id="8461694314515752532">Enkripsikan data yang disinkronkan dengan frasa sandi sinkronisasi Anda sendiri</translation> <translation id="8466613982764129868">Pastikan <ph name="TARGET_DEVICE_NAME" /> terhubung ke internet</translation> <translation id="8473863474539038330">Alamat dan lain-lain</translation> @@ -1421,6 +1419,7 @@ <translation id="8636825310635137004">Untuk mengakses tab Anda dari perangkat lainnya, aktifkan sinkronisasi.</translation> <translation id="8641930654639604085">Coba blokir situs dewasa</translation> <translation id="864544049772947936">Kelola jendela (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">Memperkirakan dan memberikan peringatan terkait peristiwa berbahaya sebelum terjadi</translation> <translation id="8646467750715887511">Halaman dimuat hanya setelah Anda membukanya.</translation> <translation id="8655129584991699539">Anda dapat menghapus data di Setelan Chrome</translation> <translation id="8659579665266920523">Cara menelusuri dengan Chrome</translation> @@ -1433,7 +1432,6 @@ <translation id="867767487203716855">Update berikutnya</translation> <translation id="8683039184091909753">gambar</translation> <translation id="8683081248374354009">Reset grup</translation> -<translation id="8683526617475118045">Yang Anda dapatkan</translation> <translation id="869891660844655955">Masa berlaku</translation> <translation id="8699120352855309748">Jangan tawarkan penerjemahan bahasa ini</translation> <translation id="8712637175834984815">Mengerti</translation> @@ -1517,7 +1515,6 @@ <translation id="9148126808321036104">Login sekali lagi</translation> <translation id="9158770349521403363">Hanya bagikan konten</translation> <translation id="9159716826369098114">Pulihkan grup tab sebanyak <ph name="TAB_COUNT" /> tab sebagai grup tab latar belakang baru.</translation> -<translation id="916446198114569890">URL yang Anda buka disimpan ke akun Google Anda</translation> <translation id="9169507124922466868">Histori navigasi terbuka setengah</translation> <translation id="9187955620966010988">Reaksi disesuaikan</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{Diperiksa 1 menit yang lalu}other{Diperiksa # menit yang lalu}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_is.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_is.xtb index 37ab452f..946de85 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_is.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_is.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">Ekki bjóða upp á að þýða þessi vefsvæði</translation> <translation id="1145536944570833626">Eyða fyrirliggjandi gögnum.</translation> <translation id="1146678959555564648">Hefja sýndarveruleika</translation> -<translation id="114825011539563458">Mikilvægustu persónuverndar- og öryggisstýringarnar á einum stað</translation> <translation id="1149401351239820326">Fyrningarmánuður</translation> <translation id="1150263420752757504"><ph name="APP_NAME" /> opnast í Chrome. Með því að halda áfram samþykkirðu <ph name="BEGIN_LINK1" />þjónustuskilmála Google<ph name="END_LINK1" /> og <ph name="BEGIN_LINK2" />viðbótarþjónustuskilmála Google Chrome og ChromeOS<ph name="END_LINK2" />.</translation> <translation id="1154704303112745282">Síða ekki í boði án nettengingar: <ph name="VIOLATED_URL" /></translation> @@ -108,6 +107,7 @@ <translation id="1488775391433859242">Þú getur notað þennan síma til að skrá þig inn í tölvunni sem birtir þennan QR-kóða.</translation> <translation id="1492417797159476138">Þú varst þegar búin(n) að vista þetta notandanafn fyrir vefsvæðið</translation> <translation id="1493287004536771723">Þú fylgist með <ph name="SITE_NAME" /></translation> +<translation id="1502010315804028179">Uppfærðu þjónustu Google Play til að stjórna aðgangsorðunum þínum</translation> <translation id="1506061864768559482">Leitarvél</translation> <translation id="1513352483775369820">Bókamerki og vefferill</translation> <translation id="1513814250881909472">Samstilltu til að sækja flipana þína úr öðrum tækjum</translation> @@ -169,6 +169,7 @@ <translation id="189358972401248634">Önnur tungumál</translation> <translation id="1894023287452300670">Vakta verð hér</translation> <translation id="1900260903084164610">Með því að halda áfram samþykkirðu <ph name="BEGIN_TOS_LINK" />þjónustuskilmálana<ph name="END_TOS_LINK" /></translation> +<translation id="1904580727789512086">Vefslóðirnar sem þú opnar eru vistaðar á Google reikningnum þínum</translation> <translation id="1910950723001426294">Listi yfir deilingarvalkosti er lokaður.</translation> <translation id="1918175104945982129">Samþykkisviðmót raddleitar Hjálpara opið á hálfum skjánum</translation> <translation id="1919130412786645364">Leyfa innskráningu í Chrome</translation> @@ -193,7 +194,6 @@ <translation id="2000419248597011803">Sendir sum fótspor og sumar leitir úr veffangastikunni og leitarreitnum í sjálfgefnu leitarvélina þína</translation> <translation id="200114059308480249">Taka með texta umhverfis í Google leitum?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# skrá}one{# skrá}other{# skrár}}</translation> -<translation id="2020309681647789787">Ferilinn þinn verður í öllum samstilltum tækjum svo að þú getir haldið áfram þar sem frá var horfið</translation> <translation id="2021896219286479412">Stýringar vefsvæðis á öllum skjá</translation> <translation id="2038563949887743358">Kveikja á beiðni um vefsvæði fyrir tölvur</translation> <translation id="204321170514947529"><ph name="APP_NAME" /> er einnig með gögn í Chrome</translation> @@ -279,7 +279,6 @@ <translation id="2527779675047087889">Fela innihald klippiborðs</translation> <translation id="2532336938189706096">Vefyfirlit</translation> <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> atriðum eytt</translation> -<translation id="2534582914273493287">Vefslóðir sem þú opnar eru sendar til Google</translation> <translation id="2536728043171574184">Skoðar ótengt afrit af þessari síðu</translation> <translation id="2546283357679194313">Fótspor og gögn vefsvæða</translation> <translation id="2549516196460093976">Þú getur notað þessa spjaldtölvu til að skrá þig inn í tölvunni sem birtir þennan QR-kóða.</translation> @@ -371,7 +370,6 @@ <translation id="2996291259634659425">Búa til aðgangsorð</translation> <translation id="2996809686854298943">Vefslóð nauðsynleg</translation> <translation id="2997081575621687554">Þegar Google vefsvæði biður um að forhlaða tenglum á lokaðan hátt á síðu hjá sér dulkóðar Chrome og forhleður síðum í gegnum þjóna Google án fótspora. Þetta kemur í veg fyrir að forhlaðna vefsvæðið geti auðkennt þig.</translation> -<translation id="3003733539450769656">Varar þig við hættulegum atvikum áður en þau eiga sér stað</translation> <translation id="3006881078666935414">Engin notkunargögn</translation> <translation id="301080557829842765">Leiðbeiningar um persónuvernd</translation> <translation id="3016635187733453316">Gakktu úr skugga um að tækið sé tengt við internetið</translation> @@ -431,6 +429,7 @@ <translation id="3284510035090979597">Hjálp að fyrra bragði</translation> <translation id="3285080554353377245">Myndskeið um hvernig á að nota Chrome</translation> <translation id="3288003805934695103">Endurhlaða síðuna</translation> +<translation id="3290249595466894471">Sendir einnig lítið brot af síðum, niðurhali, virkni viðbóta og kerfisupplýsingar til að auðvelda leit að nýjum ógnum</translation> <translation id="3297344142967351106">Raddaðstoð</translation> <translation id="3303414029551471755">Viltu halda áfram og sækja efnið?</translation> <translation id="3334729583274622784">Breyta skráarendingu?</translation> @@ -636,7 +635,6 @@ <translation id="4558311620361989323">Flýtilyklar vefsíðu</translation> <translation id="4561730552726921821">Skráning tókst</translation> <translation id="4561979708150884304">Engin tenging</translation> -<translation id="4562008740775511591">Sjálfgefnar stillingar Chrome eru nytsamlegar en þú getur sérsniðið stillingarnar svo að þær henti þinni vafranotkun</translation> <translation id="4565377596337484307">Fela aðgangsorð</translation> <translation id="4572422548854449519">Innskráning á stýrðan reikning</translation> <translation id="4576892426230499203">Prófaðu aðra staðfestingaraðferð</translation> @@ -918,7 +916,6 @@ <translation id="604996488070107836">Niðurhal á <ph name="FILE_NAME" /> mistókst vegna óþekktrar villu.</translation> <translation id="605721222689873409">ÁÁ</translation> <translation id="6059830886158432458">Stjórnaðu sögunum þínum og virkni hér</translation> -<translation id="6069177176307973611">Yfirfarðu stillingar fyrir persónuvernd og öryggi</translation> <translation id="6070730414166672373">Hefur samband við bankann</translation> <translation id="6085886413119427067">Ákvarðar hvernig á að tengjast vefsvæðum um örugga tengingu</translation> <translation id="6091413777268123602">Með prufuútgáfum Privacy Sandbox þurfa vefsvæði minna af gögnum frá þér til að skila sömu vafraupplifun. Þetta skilar sér í aukinni persónuvernd fyrir þig og minni rakningu á milli vefsvæða. Við bætum við nýjum prufuútgáfum um leið og þær eru tilbúnar til prófunar.</translation> @@ -1039,6 +1036,7 @@ <translation id="6641780377503683465">Fjarlægja <ph name="INTEREST" /></translation> <translation id="6643016212128521049">Hreinsa</translation> <translation id="6645629752388991326">Stjórnaðu því hvaða tæki geta skráð sig inn með því að nota þetta tæki sem öryggislykil.</translation> +<translation id="6647441008198474441">Vefslóðir sem þú opnar eru sendar til Google til að spá fyrir um hvaða vefsvæði þú kannt að opna næst</translation> <translation id="6648459603387803038">Kerfisstjórinn þinn getur breytt uppsetningu vafrans með fjartengingu. Virkni þinni í þessu tæki er einnig hægt að stjórna utan Chrome.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 og <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> í viðbót}one{<ph name="CONTACT_PREVIEW" />\u2026 og <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> í viðbót}other{<ph name="CONTACT_PREVIEW" />\u2026 og <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> í viðbót}}</translation> <translation id="6649642165559792194">Forskoða mynd <ph name="BEGIN_NEW" />Nýtt<ph name="END_NEW" /></translation> @@ -1046,7 +1044,6 @@ <translation id="6659594942844771486">Flipi</translation> <translation id="666731172850799929">Opna í <ph name="APP_NAME" /></translation> <translation id="6671495933530132209">Afrita mynd</translation> -<translation id="6674044799624355221">Sendir lítið brot af síðum, niðurhali, virkni viðbóta og kerfisupplýsingar til að auðvelda leit að nýjum ógnum</translation> <translation id="6674571176963658787">Sláðu inn aðgangsorðið þitt til að hefja samstillingu</translation> <translation id="6676840375528380067">Viltu hreinsa Chrome gögnin úr þessu tæki?</translation> <translation id="6684809838922667136">Bættu Chrome</translation> @@ -1068,7 +1065,6 @@ <translation id="6802555630140434547">Glugganum verður lokað</translation> <translation id="6811034713472274749">Hægt er að skoða síðuna</translation> <translation id="6813446258015311409">Skrá inn á Chrome, opnað.</translation> -<translation id="6814033694018386318">Eftirfarandi deilir þú með Google</translation> <translation id="6817747507826986771">Deildu þessari síðu á skjótan hátt. Haltu fingri á þessari flýtileið til að breyta henni.</translation> <translation id="6819199143469632133">Skráðu þig inn til að fá aðgang að Google efninu þínu í öllum tækjum</translation> <translation id="6820686453637990663">CVC</translation> @@ -1163,6 +1159,7 @@ <translation id="7352939065658542140">MYNDSKEIÐ</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{Deila 1 völdu atriði}one{Deila # völdu atriði}other{Deila # völdum atriðum}}</translation> <translation id="7359002509206457351">Fá aðgang að greiðslumátum</translation> +<translation id="7363349185727752629">Leiðarvísir persónuverndarstillinga</translation> <translation id="7375125077091615385">Gerð:</translation> <translation id="7376560087009844242">Þú gætir fengið betri niðurstöður ef þú setur inn meira af texta síðunnar þegar þú notar snertileit. Þú getur alltaf opnað <ph name="BEGIN_LINK" />stillingar<ph name="END_LINK" /> til að breyta þessu.</translation> <translation id="7379900596734708416">Dökkt þema fyrir vefsvæði er í boði</translation> @@ -1262,6 +1259,7 @@ <translation id="7876243839304621966">Fjarlægja allt</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{<ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> síða er ólesin}one{<ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> síða er ólesin}other{<ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> síður eru ólesnar}}</translation> <translation id="7886917304091689118">Keyrir í Chrome</translation> +<translation id="7887174313503389866">Fáðu kynningu með leiðsögn um helstu öryggis- og persónuverndarstýringar Opnaðu hverja stillingu fyrir sig til að fá að sjá fleiri valkosti.</translation> <translation id="7887334752153342268">Afrita</translation> <translation id="789763218334337857">Svona notarðu Chrome</translation> <translation id="7903184275147100332">Þetta gæti tekið smástund</translation> @@ -1375,6 +1373,7 @@ <translation id="8445448999790540984">Ekki er hægt að flytja út aðgangsorð</translation> <translation id="8446884382197647889">Frekari upplýsingar</translation> <translation id="8453310803815879010">Hefja risaeðluleikinn</translation> +<translation id="8460448946170646641">Fara yfir helstu öryggis- og persónuverndarstýringar</translation> <translation id="8461694314515752532">Dulkóða samstillt gögn með eigin aðgangsorði samstillingar</translation> <translation id="8466613982764129868">Gakktu úr skugga um að <ph name="TARGET_DEVICE_NAME" /> sé tengt við internetið</translation> <translation id="8473863474539038330">Heimilisföng og fleira</translation> @@ -1420,6 +1419,7 @@ <translation id="8636825310635137004">Kveiktu á samstillingu til að fá aðgang að flipunum þínum í öðrum tækjum.</translation> <translation id="8641930654639604085">Reyna að setja vefsvæði fyrir fullorðna á bannlista</translation> <translation id="864544049772947936">Stjórna gluggum (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">Spáir fyrir um og varar þig við hættulegum atvikum áður en þau eiga sér stað</translation> <translation id="8646467750715887511">Síður hlaðast eingöngu eftir að þú opnar þær.</translation> <translation id="8655129584991699539">Þú getur hreinsað gögnin í stillingum Chrome</translation> <translation id="8659579665266920523">Svona leitarðu með Chrome</translation> @@ -1432,7 +1432,6 @@ <translation id="867767487203716855">Næsta uppfærsla</translation> <translation id="8683039184091909753">mynd</translation> <translation id="8683081248374354009">Endurstilla hóp</translation> -<translation id="8683526617475118045">Þetta færðu</translation> <translation id="869891660844655955">Lokadagsetning</translation> <translation id="8699120352855309748">Ekki bjóða upp á að þýða þessi tungumál</translation> <translation id="8712637175834984815">Ég skil</translation> @@ -1516,7 +1515,6 @@ <translation id="9148126808321036104">Skrá inn aftur</translation> <translation id="9158770349521403363">Aðeins deila efni</translation> <translation id="9159716826369098114">Endurheimta flipahóp með <ph name="TAB_COUNT" /> flipum sem nýjan flipahóp í bakgrunni.</translation> -<translation id="916446198114569890">Vefslóðirnar sem þú opnar eru vistaðar á Google reikningnum þínum</translation> <translation id="9169507124922466868">Ferill er hálfopinn</translation> <translation id="9187955620966010988">Viðbrögðum breytt</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{Athugað fyrir 1 mínútu}one{Athugað fyrir # mínútu}other{Athugað fyrir # mínútum}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_it.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_it.xtb index 9182165..f311d2a2 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_it.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_it.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">Non proporre di tradurre questi siti</translation> <translation id="1145536944570833626">Elimina i dati esistenti.</translation> <translation id="1146678959555564648">Entra nella VR</translation> -<translation id="114825011539563458">I controlli per la privacy e la sicurezza più importanti in un unico posto</translation> <translation id="1149401351239820326">Mese di scadenza</translation> <translation id="1150263420752757504"><ph name="APP_NAME" /> si aprirà in Chrome. Se continui, accetti i <ph name="BEGIN_LINK1" />Termini di servizio di Google<ph name="END_LINK1" /> e i <ph name="BEGIN_LINK2" />Termini di servizio aggiuntivi di Google Chrome e Chrome OS<ph name="END_LINK2" />.</translation> <translation id="1154704303112745282">Pagina non disponibile offline: <ph name="VIOLATED_URL" /></translation> @@ -108,6 +107,7 @@ <translation id="1488775391433859242">Puoi utilizzare questo telefono per accedere sul computer che mostra questo codice QR.</translation> <translation id="1492417797159476138">Hai già salvato questo nome utente per questo sito</translation> <translation id="1493287004536771723">Stai seguendo <ph name="SITE_NAME" /></translation> +<translation id="1502010315804028179">Per gestire le tue password, aggiorna Google Play Services</translation> <translation id="1506061864768559482">Motore di ricerca</translation> <translation id="1513352483775369820">Preferiti e cronologia web</translation> <translation id="1513814250881909472">Attiva la sincronizzazione per recuperare le schede dagli altri tuoi dispositivi</translation> @@ -169,6 +169,7 @@ <translation id="189358972401248634">Altre lingue</translation> <translation id="1894023287452300670">Monitora qui il prezzo</translation> <translation id="1900260903084164610">Se continui, accetti i <ph name="BEGIN_TOS_LINK" />Termini di servizio<ph name="END_TOS_LINK" />.</translation> +<translation id="1904580727789512086">Gli URL che visiti vengono salvati nel tuo Account Google</translation> <translation id="1910950723001426294">L'elenco di opzioni di condivisione è chiuso.</translation> <translation id="1918175104945982129">Interfaccia utente per il consenso all'utilizzo dell'assistente per la ricerca vocale aperta nella parte inferiore dello schermo</translation> <translation id="1919130412786645364">Consenti l'accesso a Chrome</translation> @@ -193,7 +194,6 @@ <translation id="2000419248597011803">Invia al tuo motore di ricerca predefinito alcune ricerche dalla barra degli indirizzi e dalla casella di ricerca, nonché alcuni cookie</translation> <translation id="200114059308480249">Vuoi includere il testo circostante nelle ricerche Google?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# file}other{# file}}</translation> -<translation id="2020309681647789787">La tua cronologia sarà disponibile su tutti i dispositivi sincronizzati, quindi potrai continuare ciò che stavi facendo</translation> <translation id="2021896219286479412">Controlli sito a schermo intero</translation> <translation id="2038563949887743358">Attiva Richiedi sito desktop</translation> <translation id="204321170514947529">Anche <ph name="APP_NAME" /> presenta dati in Chrome</translation> @@ -279,7 +279,6 @@ <translation id="2527779675047087889">Nascondi contenuti degli appunti</translation> <translation id="2532336938189706096">Visualizzazione web</translation> <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> elementi eliminati</translation> -<translation id="2534582914273493287">Gli URL che visiti vengono inviati a Google</translation> <translation id="2536728043171574184">È visualizzata una copia offline della pagina</translation> <translation id="2546283357679194313">Cookie e dati dei siti</translation> <translation id="2549516196460093976">Puoi utilizzare questo tablet per accedere sul computer che mostra questo codice QR.</translation> @@ -371,7 +370,6 @@ <translation id="2996291259634659425">Crea passphrase</translation> <translation id="2996809686854298943">URL obbligatorio</translation> <translation id="2997081575621687554">Quando un sito Google richiede di precaricare privatamente i link sulle sue pagine, Chrome cripta e precarica le pagine tramite i server di Google senza usare cookie. In questo modo la tua identità rimane nascosta ai siti precaricati.</translation> -<translation id="3003733539450769656">Ti avvisa quando stanno per verificarsi eventi pericolosi</translation> <translation id="3006881078666935414">Nessun dato sull'utilizzo</translation> <translation id="301080557829842765">Guida alla privacy</translation> <translation id="3016635187733453316">Assicurati che questo dispositivo sia connesso a Internet</translation> @@ -431,6 +429,7 @@ <translation id="3284510035090979597">Assistenza tempestiva</translation> <translation id="3285080554353377245">Video relativi all'utilizzo di Chrome</translation> <translation id="3288003805934695103">Ricaricare la pagina</translation> +<translation id="3290249595466894471">Invia anche un numero ridotto di pagine, download, attività delle estensioni e informazioni di sistema per contribuire al rilevamento di nuove minacce</translation> <translation id="3297344142967351106">Assistenza vocale</translation> <translation id="3303414029551471755">Procedere al download dei contenuti?</translation> <translation id="3334729583274622784">Vuoi cambiare l'estensione del file?</translation> @@ -636,7 +635,6 @@ <translation id="4558311620361989323">Scorciatoie delle pagine web</translation> <translation id="4561730552726921821">Registrazione effettuata</translation> <translation id="4561979708150884304">Nessuna connessione</translation> -<translation id="4562008740775511591">Chrome fornisce impostazioni predefinite adeguate, ma puoi personalizzarle per adattarle meglio alle tue abitudini di navigazione</translation> <translation id="4565377596337484307">Nascondi password</translation> <translation id="4572422548854449519">Accedi all'account gestito</translation> <translation id="4576892426230499203">Prova con un'altra opzione di verifica</translation> @@ -918,7 +916,6 @@ <translation id="604996488070107836">Download del file <ph name="FILE_NAME" /> non riuscito a causa di un errore sconosciuto.</translation> <translation id="605721222689873409">AA</translation> <translation id="6059830886158432458">Controlla notizie e attività qui</translation> -<translation id="6069177176307973611">Rivedi le impostazioni Privacy e sicurezza</translation> <translation id="6070730414166672373">Contatto la tua banca…</translation> <translation id="6085886413119427067">Consente di stabilire come connettersi ai siti web tramite una connessione sicura</translation> <translation id="6091413777268123602">Con le prove di Privacy Sandbox, i siti possono offrire la stessa esperienza di navigazione utilizzando meno dati personali. Ciò significa più privacy per te e meno tracciamento tra siti. Aggiungeremo nuove prove quando saranno pronte per i test.</translation> @@ -1039,6 +1036,7 @@ <translation id="6641780377503683465">Rimuovi <ph name="INTEREST" /></translation> <translation id="6643016212128521049">Cancella</translation> <translation id="6645629752388991326">Controlla quali dispositivi possono eseguire l'accesso usando questo dispositivo come token di sicurezza.</translation> +<translation id="6647441008198474441">Gli URL che visiti vengono inviati a Google per prevedere quali siti potresti visitare in futuro</translation> <translation id="6648459603387803038">L'amministratore può modificare da remoto la configurazione del browser. L'attività svolta su questo dispositivo potrebbe essere gestita anche al di fuori di Chrome.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 e altri <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}other{<ph name="CONTACT_PREVIEW" />\u2026 e altri <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}}</translation> <translation id="6649642165559792194">Anteprima immagine <ph name="BEGIN_NEW" />Novità<ph name="END_NEW" /></translation> @@ -1046,7 +1044,6 @@ <translation id="6659594942844771486">Scheda</translation> <translation id="666731172850799929">Apri in <ph name="APP_NAME" /></translation> <translation id="6671495933530132209">Copia immagine</translation> -<translation id="6674044799624355221">Invia un numero ridotto di pagine, download, attività delle estensioni e informazioni di sistema per contribuire al rilevamento di nuove minacce</translation> <translation id="6674571176963658787">Per avviare la sincronizzazione devi inserire la tua passphrase</translation> <translation id="6676840375528380067">Eliminare i dati di Chrome dal dispositivo?</translation> <translation id="6684809838922667136">Migliora Chrome</translation> @@ -1068,7 +1065,6 @@ <translation id="6802555630140434547">La finestra verrà chiusa</translation> <translation id="6811034713472274749">La pagina è pronta per essere visualizzata</translation> <translation id="6813446258015311409">Accedi a Chrome, foglio aperto.</translation> -<translation id="6814033694018386318">Cosa condividi con Google</translation> <translation id="6817747507826986771">Condividi rapidamente questa pagina. Tocca e tieni premuto per modificare questa scorciatoia.</translation> <translation id="6819199143469632133">Accedi per poter usufruire dei tuoi dati Google sui vari dispositivi</translation> <translation id="6820686453637990663">CVC</translation> @@ -1163,6 +1159,7 @@ <translation id="7352939065658542140">VIDEO</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{Condividi 1 elemento selezionato}other{Condividi # elementi selezionati}}</translation> <translation id="7359002509206457351">Accedi ai metodi di pagamento</translation> +<translation id="7363349185727752629">Una guida alle scelte relative alla tua privacy</translation> <translation id="7375125077091615385">Tipo:</translation> <translation id="7376560087009844242">Se includi più testo di una pagina, potresti vedere risultati migliori quando utilizzi Tocca per cercare. Puoi andare alle <ph name="BEGIN_LINK" />impostazioni<ph name="END_LINK" /> per modificare questa scelta in qualsiasi momento.</translation> <translation id="7379900596734708416">Il tema scuro per i siti è disponibile</translation> @@ -1262,6 +1259,7 @@ <translation id="7876243839304621966">Rimuovi tutto</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{Hai <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> pagina da leggere}other{Hai <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> pagine da leggere}}</translation> <translation id="7886917304091689118">In esecuzione in Chrome</translation> +<translation id="7887174313503389866">Fai un tour guidato dei controlli per la privacy e la sicurezza più importanti. Per altre opzioni, vai alle impostazioni individuali.</translation> <translation id="7887334752153342268">Duplica</translation> <translation id="789763218334337857">Come usare Chrome</translation> <translation id="7903184275147100332">L'operazione potrebbe richiedere un minuto</translation> @@ -1375,6 +1373,7 @@ <translation id="8445448999790540984">Impossibile esportare le password</translation> <translation id="8446884382197647889">Ulteriori informazioni</translation> <translation id="8453310803815879010">Inizia il gioco Dino</translation> +<translation id="8460448946170646641">Esamina i controlli per la privacy e la sicurezza più importanti</translation> <translation id="8461694314515752532">Cripta i dati sincronizzati con la tua passphrase di sincronizzazione</translation> <translation id="8466613982764129868">Assicurati che il dispositivo <ph name="TARGET_DEVICE_NAME" /> sia connesso a Internet</translation> <translation id="8473863474539038330">Indirizzi e altro</translation> @@ -1420,6 +1419,7 @@ <translation id="8636825310635137004">Attiva la sincronizzazione per trovare le tue schede degli altri dispositivi.</translation> <translation id="8641930654639604085">Prova a bloccare siti per adulti</translation> <translation id="864544049772947936">Gestisci finestre (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">Prevede eventi pericolosi e ti avvisa prima che si verifichino</translation> <translation id="8646467750715887511">Le pagine si caricano solo una volta aperte.</translation> <translation id="8655129584991699539">Puoi cancellare i dati nelle Impostazioni di Chrome</translation> <translation id="8659579665266920523">Come eseguire ricerche con Chrome</translation> @@ -1432,7 +1432,6 @@ <translation id="867767487203716855">Prossimo aggiornamento</translation> <translation id="8683039184091909753">immagine</translation> <translation id="8683081248374354009">Reimposta gruppo</translation> -<translation id="8683526617475118045">I tuoi vantaggi</translation> <translation id="869891660844655955">Data di scadenza</translation> <translation id="8699120352855309748">Non proporre di tradurre queste lingue</translation> <translation id="8712637175834984815">Fatto</translation> @@ -1516,7 +1515,6 @@ <translation id="9148126808321036104">Esegui di nuovo l'accesso</translation> <translation id="9158770349521403363">Condividi solo contenuti</translation> <translation id="9159716826369098114">Ripristina il gruppo di <ph name="TAB_COUNT" /> schede come nuovo gruppo di schede in background.</translation> -<translation id="916446198114569890">Gli URL che visiti vengono salvati nel tuo Account Google</translation> <translation id="9169507124922466868">La cronologia di navigazione è aperta fino a metà</translation> <translation id="9187955620966010988">Reazione modificata</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{Eseguito 1 minuto fa}other{Eseguito # minuti fa}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_iw.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_iw.xtb index b4eaef36..7393fb8 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_iw.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_iw.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">אין להציג את ההצעה לתרגם את האתרים האלה</translation> <translation id="1145536944570833626">מחיקת נתונים קיימים.</translation> <translation id="1146678959555564648">כניסה למצב VR</translation> -<translation id="114825011539563458">אמצעי הבקרה החשובים ביותר על פרטיות ואבטחה מרוכזים במקום אחד</translation> <translation id="1149401351239820326">חודש פקיעת התוקף</translation> <translation id="1150263420752757504">האפליקציה <ph name="APP_NAME" /> תיפתח ב-Chrome. המשך הפעולה מבטא הסכמה <ph name="BEGIN_LINK1" />לתנאים ולהגבלות של Google<ph name="END_LINK1" /> ו<ph name="BEGIN_LINK2" />לתנאים ולהגבלות הנוספים של Google Chrome ו-ChromeOS<ph name="END_LINK2" />.</translation> <translation id="1154704303112745282">הדף הזה לא זמין ללא חיבור לאינטרנט: <ph name="VIOLATED_URL" /></translation> @@ -170,6 +169,7 @@ <translation id="189358972401248634">שפות אחרות</translation> <translation id="1894023287452300670">כאן ניתן לעקוב אחר המחיר</translation> <translation id="1900260903084164610">לחיצה על המשך תתפרש כהסכמה ל<ph name="BEGIN_TOS_LINK" />תנאים ולהגבלות<ph name="END_TOS_LINK" /></translation> +<translation id="1904580727789512086">כתובות ה-URL שנכנסת אליהן נשמרות בחשבון Google</translation> <translation id="1910950723001426294">רשימת אפשרויות השיתוף סגורה.</translation> <translation id="1918175104945982129">ההסכמה לחיפוש קולי של Assistant בממשק משתמש נפתחה בחצי גובה</translation> <translation id="1919130412786645364">התרת כניסה אל Chrome</translation> @@ -194,7 +194,6 @@ <translation id="2000419248597011803">שליחה של חלק מקובצי ה-Cookie והחיפושים משורת כתובת האתר ומתיבת החיפוש אל מנוע החיפוש שהוגדר כברירת מחדל</translation> <translation id="200114059308480249">לכלול את הטקסט שמסביב בחיפושים ב-Google?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{קובץ אחד (#)}two{# קבצים}many{# קבצים}other{# קבצים}}</translation> -<translation id="2020309681647789787">תהיה לך גישה להיסטוריה שלך בכל המכשירים המסונכרנים, כך שתהיה לך אפשרות להמשיך מהמקום שבו הפסקת.</translation> <translation id="2021896219286479412">פקדי אתר במסך מלא</translation> <translation id="2038563949887743358">הפעלה של 'בקשת אתר עבור מחשב שולחני'</translation> <translation id="204321170514947529">ל-<ph name="APP_NAME" /> יש נתונים גם ב-Chrome</translation> @@ -280,7 +279,6 @@ <translation id="2527779675047087889">הסתרת התוכן שבלוח</translation> <translation id="2532336938189706096">תצוגת אינטרנט</translation> <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> פריטים נמחקו</translation> -<translation id="2534582914273493287">כתובות URL שבהן ביקרת יישלחו אל Google</translation> <translation id="2536728043171574184">מוצג העתק לא מקוון של עמוד זה</translation> <translation id="2546283357679194313">נתוני אתר וקובצי Cookie</translation> <translation id="2549516196460093976">יש לך אפשרות להשתמש בטאבלט הזה כדי להיכנס לחשבון במחשב שמוצג בו קוד ה-QR הזה.</translation> @@ -372,7 +370,6 @@ <translation id="2996291259634659425">יצירת ביטוי סיסמה</translation> <translation id="2996809686854298943">דרושה כתובת אתר</translation> <translation id="2997081575621687554">כשאתר שנוצר באמצעות Google Sites מבקש לטעון מראש קישורים בדף שלו באופן פרטי, מערכת Chrome מצפינה וטוענת מראש את הדפים באמצעות השרתים של Google ללא קובצי cookie. כך מוסתרת הזהות שלך מהאתר שנטען מראש.</translation> -<translation id="3003733539450769656">המערכת מזהירה אותך מפני אירועים מסוכנים לפני שהם מתרחשים</translation> <translation id="3006881078666935414">אין נתוני שימוש</translation> <translation id="301080557829842765">מדריך בנושא פרטיות</translation> <translation id="3016635187733453316">יש לוודא שהמכשיר הזה מחובר לאינטרנט</translation> @@ -432,6 +429,7 @@ <translation id="3284510035090979597">עזרה פרואקטיבית</translation> <translation id="3285080554353377245">סרטוני הסבר על השימוש ב-Chrome</translation> <translation id="3288003805934695103">הדף נטען מחדש</translation> +<translation id="3290249595466894471">בנוסף, נשלחת דגימה קטנה שכוללת דפים, הורדות, פעילות של תוספים ופרטי מערכת כדי לאתר איומים חדשים</translation> <translation id="3297344142967351106">האסיסטנט</translation> <translation id="3303414029551471755">האם להוריד את התוכן?</translation> <translation id="3334729583274622784">לשנות את סיומת הקובץ?</translation> @@ -637,7 +635,6 @@ <translation id="4558311620361989323">קיצורי דרך בדפי אינטרנט</translation> <translation id="4561730552726921821">הרישום בוצע בהצלחה</translation> <translation id="4561979708150884304">אין חיבור</translation> -<translation id="4562008740775511591">יש ב-Chrome הגדרות סבירות בברירת מחדל, אבל אפשר להתאים אותן אישית כדי שיתאימו היטב להרגלי הגלישה שלך</translation> <translation id="4565377596337484307">הסתרת סיסמה</translation> <translation id="4572422548854449519">כניסה אל חשבון מנוהל</translation> <translation id="4576892426230499203">יש לנסות אפשרות אחרת לאימות</translation> @@ -919,7 +916,6 @@ <translation id="604996488070107836">הורדת <ph name="FILE_NAME" /> נכשלה עקב שגיאה לא ידועה.</translation> <translation id="605721222689873409">YY</translation> <translation id="6059830886158432458">כאן אפשר לנהל את הסטוריז והפעילות שלך</translation> -<translation id="6069177176307973611">עיון בהגדרות הפרטיות והאבטחה</translation> <translation id="6070730414166672373">בתהליך יצירת קשר עם הבנק שלך\u2026</translation> <translation id="6085886413119427067">קביעת אופן ההתחברות לאתרים באמצעות קישור מאובטח</translation> <translation id="6091413777268123602">באמצעות תקופות הניסיון של ארגז החול לפרטיות, אתרים יכולים לספק את אותה חוויית גלישה תוך שימוש בפחות נתונים אישיים שלך. כלומר, יותר פרטיות עבורך ופחות מעקב בין אתרים. נוסיף תקופות ניסיון חדשות ברגע שיהיו מוכנות לבדיקה.</translation> @@ -1040,6 +1036,7 @@ <translation id="6641780377503683465">הסרה של תחום העניין '<ph name="INTEREST" />'</translation> <translation id="6643016212128521049">ניקוי</translation> <translation id="6645629752388991326">שליטה במכשירים שיקבלו הרשאה לכניסה לחשבון, תוך שימוש בטלפון הזה כמפתח אבטחה.</translation> +<translation id="6647441008198474441">כתובות URL שבהן ביקרת יישלחו אל Google כדי לחזות את האתרים הבאים שאליהם תתבצע כניסה על ידך</translation> <translation id="6648459603387803038">מנהל המערכת יכול לשנות את הגדרת הדפדפן שלך מרחוק. בנוסף, ניתן לנהל את הפעילות במכשיר הזה מחוץ ל-Chrome.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 ו-<ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> נוסף}two{<ph name="CONTACT_PREVIEW" />\u2026 ו-<ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> נוספים}many{<ph name="CONTACT_PREVIEW" />\u2026 ו-<ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> נוספים}other{<ph name="CONTACT_PREVIEW" />\u2026 ו-<ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> נוספים}}</translation> <translation id="6649642165559792194">הצגת התמונה בתצוגה מקדימה <ph name="BEGIN_NEW" />חדש<ph name="END_NEW" /></translation> @@ -1047,7 +1044,6 @@ <translation id="6659594942844771486">כרטיסייה</translation> <translation id="666731172850799929">פתיחה ב-<ph name="APP_NAME" /></translation> <translation id="6671495933530132209">העתקת התמונה</translation> -<translation id="6674044799624355221">המערכת שולחת דוגמית קטנה הכוללת דפים, הורדות, פעילות של תוספים ופרטי מערכת במטרה לאתר איומים חדשים</translation> <translation id="6674571176963658787">כדי להתחיל לסנכרן צריך להזין את ביטוי הסיסמה</translation> <translation id="6676840375528380067">למחוק את נתוני Chrome שלך מהמכשיר הזה?</translation> <translation id="6684809838922667136">משפרים את Chrome</translation> @@ -1069,7 +1065,6 @@ <translation id="6802555630140434547">החלון הזה ייסגר</translation> <translation id="6811034713472274749">הדף מוכן להצגה</translation> <translation id="6813446258015311409">כניסה ל-Chrome, פתוח.</translation> -<translation id="6814033694018386318">מה משתפים עם Google</translation> <translation id="6817747507826986771">שיתוף הדף הזה במהירות. ניתן לערוך את קיצור הדרך הזה בלחיצה ארוכה.</translation> <translation id="6819199143469632133">כדי לגשת לדברים שלך ב-Google מכל מיני מכשירים, עליך להיכנס לחשבון</translation> <translation id="6820686453637990663">CVC</translation> @@ -1164,6 +1159,7 @@ <translation id="7352939065658542140">סרטון</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{שיתוף פריט אחד שנבחר}two{שיתוף # פריטים שנבחרו}many{שיתוף # פריטים שנבחרו}other{שיתוף # פריטים שנבחרו}}</translation> <translation id="7359002509206457351">גישה לאמצעי תשלום</translation> +<translation id="7363349185727752629">מדריך לבחירות שלך בנושא פרטיות</translation> <translation id="7375125077091615385">סוג:</translation> <translation id="7376560087009844242">אם כוללים כמה שיותר מהטקסט שמופיע בדף, יכול להיות שיתקבלו תוצאות טובות יותר כשמשתמשים בחיפוש בהקשה. יש לך אפשרות לשנות זאת בכל שלב ב<ph name="BEGIN_LINK" />הגדרות<ph name="END_LINK" />.</translation> <translation id="7379900596734708416">העיצוב הכהה זמין לאתרים</translation> @@ -1263,6 +1259,7 @@ <translation id="7876243839304621966">הסרת הכול</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{יש לך דף אחד (<ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" />) שלא נקרא}two{יש לך <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> דפים שלא נקראו}many{יש לך <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> דפים שלא נקראו}other{יש לך <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> דפים שלא נקראו}}</translation> <translation id="7886917304091689118">פועל ב-Chrome</translation> +<translation id="7887174313503389866">סיור מודרך באמצעי הבקרה החשובים ביותר על פרטיות ואבטחה. לאפשרויות נוספות, יש לעבור להגדרות ספציפיות.</translation> <translation id="7887334752153342268">שכפול</translation> <translation id="789763218334337857">איך להשתמש ב-Chrome</translation> <translation id="7903184275147100332">הפעולה עשויה להימשך כמה רגעים</translation> @@ -1376,6 +1373,7 @@ <translation id="8445448999790540984">אי אפשר לייצא סיסמאות</translation> <translation id="8446884382197647889">למידע נוסף</translation> <translation id="8453310803815879010">הפעלת המשחק Dino</translation> +<translation id="8460448946170646641">בדיקה של אמצעי הבקרה החשובים ביותר על פרטיות ואבטחה</translation> <translation id="8461694314515752532">הצפנת נתונים מסונכרנים בעזרת ביטוי סיסמה אישי לסנכרון</translation> <translation id="8466613982764129868">יש לוודא ש-<ph name="TARGET_DEVICE_NAME" /> מחובר לאינטרנט</translation> <translation id="8473863474539038330">כתובות ועוד</translation> @@ -1421,6 +1419,7 @@ <translation id="8636825310635137004">כדי לקבל את הכרטיסיות מהמכשירים האחרים שלך, יש להפעיל את הסנכרון.</translation> <translation id="8641930654639604085">יש לנסות לחסום אתרים שמכילים תוכן למבוגרים</translation> <translation id="864544049772947936">ניהול החלונות (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">המערכת חוזה אירועים מסוכנים ומזהירה אותך לגביהם לפני שהם מתרחשים</translation> <translation id="8646467750715887511">הדפים ייטענו רק אחרי פתיחתם.</translation> <translation id="8655129584991699539">אפשר לנקות את הנתונים דרך הגדרות Chrome.</translation> <translation id="8659579665266920523">איך לחפש באמצעות Chrome</translation> @@ -1433,7 +1432,6 @@ <translation id="867767487203716855">העדכון הבא</translation> <translation id="8683039184091909753">תמונה</translation> <translation id="8683081248374354009">איפוס הקבוצה</translation> -<translation id="8683526617475118045">מה מקבלים</translation> <translation id="869891660844655955">תאריך תפוגה</translation> <translation id="8699120352855309748">אין להציג את ההצעה לתרגם את השפות האלה</translation> <translation id="8712637175834984815">הבנתי</translation> @@ -1517,7 +1515,6 @@ <translation id="9148126808321036104">כניסה חוזרת</translation> <translation id="9158770349521403363">שיתוף התוכן בלבד</translation> <translation id="9159716826369098114">שחזור של קבוצת כרטיסיות שמכילה <ph name="TAB_COUNT" /> כרטיסיות כקבוצת כרטיסיות חדשה ברקע.</translation> -<translation id="916446198114569890">כתובות ה-URL שעברת אליהן נשמרות בחשבון Google שלך.</translation> <translation id="9169507124922466868">היסטוריית הניווט פתוחה למחצה</translation> <translation id="9187955620966010988">התגובה נערכה</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{התבצעה בדיקה לפני דקה אחת}two{התבצעה בדיקה לפני # דקות}many{התבצעה בדיקה לפני # דקות}other{התבצעה בדיקה לפני # דקות}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_ja.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_ja.xtb index 1363df6..b91d4db 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_ja.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_ja.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">これらのサイトを翻訳するか尋ねない</translation> <translation id="1145536944570833626">既存のデータを削除します。</translation> <translation id="1146678959555564648">VR を入力</translation> -<translation id="114825011539563458">プライバシーとセキュリティに関する最も重要な設定を 1 か所で確認</translation> <translation id="1149401351239820326">有効期限(月)</translation> <translation id="1150263420752757504">Chrome で <ph name="APP_NAME" /> を開きます。続行すると、<ph name="BEGIN_LINK1" />Google 利用規約<ph name="END_LINK1" />と <ph name="BEGIN_LINK2" />Google Chrome および Chrome OS 追加利用規約<ph name="END_LINK2" />に同意したものと見なされます。</translation> <translation id="1154704303112745282">オフラインで使用できないページ: <ph name="VIOLATED_URL" /></translation> @@ -170,6 +169,7 @@ <translation id="189358972401248634">その他の言語</translation> <translation id="1894023287452300670">ここで価格をトラッキングできます</translation> <translation id="1900260903084164610">続行すると、<ph name="BEGIN_TOS_LINK" />利用規約<ph name="END_TOS_LINK" />に同意したことになります。</translation> +<translation id="1904580727789512086">アクセスした URL は Google アカウントに保存されます</translation> <translation id="1910950723001426294">共有オプションのリストが閉じられました。</translation> <translation id="1918175104945982129">アシスタントの音声検索の同意ダイアログが画面の下半分に表示されています</translation> <translation id="1919130412786645364">Chrome へのログインを許可する</translation> @@ -194,7 +194,6 @@ <translation id="2000419248597011803">Cookie と、アドレスバーや検索ボックスに入力した検索語句を既定の検索エンジンに送信します</translation> <translation id="200114059308480249">Google 検索に周辺のテキストを含めますか?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# 件のファイル}other{# 件のファイル}}</translation> -<translation id="2020309681647789787">同期しているすべてのデバイスから履歴にアクセスして、作業の続きを行うことができます</translation> <translation id="2021896219286479412">全画面表示時のサイトの操作項目</translation> <translation id="2038563949887743358">[PC 版サイトを見る] をオンにします</translation> <translation id="204321170514947529">Chrome にも <ph name="APP_NAME" /> のデータがあります</translation> @@ -280,7 +279,6 @@ <translation id="2527779675047087889">クリップボードの内容を非表示</translation> <translation id="2532336938189706096">ウェブ表示</translation> <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" />件の項目を削除しました</translation> -<translation id="2534582914273493287">アクセスした URL が Google に送信されます</translation> <translation id="2536728043171574184">このページのオフライン コピーを表示しています</translation> <translation id="2546283357679194313">Cookie とサイトデータ</translation> <translation id="2549516196460093976">この QR コードが表示されているパソコンに、このタブレットを使用してログインできます。</translation> @@ -372,7 +370,6 @@ <translation id="2996291259634659425">パスフレーズの作成</translation> <translation id="2996809686854298943">URLが必要です</translation> <translation id="2997081575621687554">ページのリンクを非公開でプリロードするように求めるメッセージが Google サイトに表示された場合、Chrome は Cookie を使用せずに Google サーバーを経由してページを暗号化し、プリロードします。その結果、プリロードされたサイトでユーザーの ID が非表示になります。</translation> -<translation id="3003733539450769656">危険なイベントの発生を事前に警告します</translation> <translation id="3006881078666935414">使用状況データはありません</translation> <translation id="301080557829842765">プライバシー ガイド</translation> <translation id="3016635187733453316">このデバイスがインターネットに接続していることを確認してください</translation> @@ -432,6 +429,7 @@ <translation id="3284510035090979597">アクティブ サポート</translation> <translation id="3285080554353377245">Chrome の使い方に関する動画</translation> <translation id="3288003805934695103">ページを再読み込みする</translation> +<translation id="3290249595466894471">また、新たな脅威を発見するため、ページ、ダウンロード、拡張機能のアクティビティ、システム情報の一部のサンプルも送信します</translation> <translation id="3297344142967351106">音声アシスタント</translation> <translation id="3303414029551471755">コンテンツのダウンロードに進みますか?</translation> <translation id="3334729583274622784">ファイル拡張子を変更しますか?</translation> @@ -637,7 +635,6 @@ <translation id="4558311620361989323">ウェブページのショートカット</translation> <translation id="4561730552726921821">登録が完了しました</translation> <translation id="4561979708150884304">接続されていません</translation> -<translation id="4562008740775511591">Chrome の設定はデフォルトで問題なく使用できますが、普段の使い方に合わせてカスタマイズすることもできます</translation> <translation id="4565377596337484307">パスワードを表示しない</translation> <translation id="4572422548854449519">管理対象アカウントにログイン</translation> <translation id="4576892426230499203">別の確認オプションをお試しください</translation> @@ -919,7 +916,6 @@ <translation id="604996488070107836">不明なエラーが発生したため、<ph name="FILE_NAME" /> をダウンロードできませんでした。</translation> <translation id="605721222689873409">YY</translation> <translation id="6059830886158432458">ここで記事やアクティビティを管理します</translation> -<translation id="6069177176307973611">プライバシーとセキュリティの設定を確認します</translation> <translation id="6070730414166672373">カード発行会社に問い合わせています…</translation> <translation id="6085886413119427067">ウェブサイトに安全に接続する方法を決定します</translation> <translation id="6091413777268123602">プライバシー サンドボックスの試用版を使うと、使用されるユーザーデータの量を抑えつつ、同じようにサイトをブラウジングできる可能性があります。それにより、ユーザーのプライバシーが向上し、クロスサイト トラッキングが減少します。テストの準備が整ったら、新しい試用版を追加します。</translation> @@ -1040,6 +1036,7 @@ <translation id="6641780377503683465"><ph name="INTEREST" /> を削除</translation> <translation id="6643016212128521049">削除</translation> <translation id="6645629752388991326">このデバイスをセキュリティ キーとして使用してログインできるデバイスを管理します。</translation> +<translation id="6647441008198474441">アクセスした URL が Google に送信され、次にアクセスするサイトの予測が行われます</translation> <translation id="6648459603387803038">管理者はブラウザの設定をリモートで変更できます。このデバイスでのアクティビティは、Chrome 以外でも管理されている可能性があります。</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 他 <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> 件}other{<ph name="CONTACT_PREVIEW" />\u2026 他 <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> 件}}</translation> <translation id="6649642165559792194">画像をプレビュー <ph name="BEGIN_NEW" />New<ph name="END_NEW" /></translation> @@ -1047,7 +1044,6 @@ <translation id="6659594942844771486">タブ</translation> <translation id="666731172850799929"><ph name="APP_NAME" />で開く</translation> <translation id="6671495933530132209">画像をコピー</translation> -<translation id="6674044799624355221">新たな脅威を発見するため、ページ、ダウンロード、拡張機能のアクティビティ、システム情報の一部のサンプルを送信します</translation> <translation id="6674571176963658787">同期を開始するには、パスフレーズを入力してください</translation> <translation id="6676840375528380067">Chrome データをこのデバイスから削除しますか?</translation> <translation id="6684809838922667136">Chrome の品質を向上</translation> @@ -1069,7 +1065,6 @@ <translation id="6802555630140434547">ウィンドウが閉じられます</translation> <translation id="6811034713472274749">ページを表示できます</translation> <translation id="6813446258015311409">Chrome にログイン、の画面が開きました。</translation> -<translation id="6814033694018386318">Google と共有される情報</translation> <translation id="6817747507826986771">このページをすばやく共有します。このショートカットを編集するには、長押ししてください。</translation> <translation id="6819199143469632133">お使いの複数のデバイスで Google の設定やデータを同期するには、ログインします</translation> <translation id="6820686453637990663">CVC</translation> @@ -1164,6 +1159,7 @@ <translation id="7352939065658542140">動画</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{1 件の選択されたアイテムを共有します}other{# 件の選択されたアイテムを共有します}}</translation> <translation id="7359002509206457351">お支払い方法へのアクセス</translation> +<translation id="7363349185727752629">プライバシー設定のガイド</translation> <translation id="7375125077091615385">タイプ:</translation> <translation id="7376560087009844242">検索に含めるページのテキストを増やすと、「タップして検索」使用時により正確な結果が得られる可能性があります。<ph name="BEGIN_LINK" />設定<ph name="END_LINK" />からいつでも変更できます。</translation> <translation id="7379900596734708416">このサイトでダークモードを使用できます</translation> @@ -1263,6 +1259,7 @@ <translation id="7876243839304621966">すべて削除</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{未読ページが <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> 件あります}other{未読ページが <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> 件あります}}</translation> <translation id="7886917304091689118">Chrome で実行中です</translation> +<translation id="7887174313503389866">ガイドに沿って、プライバシーとセキュリティに関する重要な設定を確認します。その他のオプションについては、それぞれの設定で行います。</translation> <translation id="7887334752153342268">タブを複製</translation> <translation id="789763218334337857">Chrome の使い方</translation> <translation id="7903184275147100332">1 分ほどかかる場合があります</translation> @@ -1376,6 +1373,7 @@ <translation id="8445448999790540984">パスワードをエクスポートできません</translation> <translation id="8446884382197647889">詳細</translation> <translation id="8453310803815879010">Dino ゲームを開始</translation> +<translation id="8460448946170646641">プライバシーとセキュリティに関する重要な設定を確認する</translation> <translation id="8461694314515752532">同期データを同期パスフレーズで暗号化する</translation> <translation id="8466613982764129868"><ph name="TARGET_DEVICE_NAME" /> がインターネットに接続していることを確認してください</translation> <translation id="8473863474539038330">住所やその他の情報</translation> @@ -1421,6 +1419,7 @@ <translation id="8636825310635137004">他のデバイスと同じタブを使用するには、同期を有効にします。</translation> <translation id="8641930654639604085">成人向けのサイトを可能な限りブロックする</translation> <translation id="864544049772947936">ウィンドウ(<ph name="INSTANCE_COUNTS" /> 個)を管理</translation> +<translation id="8645920082661222035">危険なイベントの発生を予測して警告します</translation> <translation id="8646467750715887511">ページは、ページを開くまでプリロードされません。</translation> <translation id="8655129584991699539">Chrome の設定でデータを削除できます</translation> <translation id="8659579665266920523">Chrome で検索するには</translation> @@ -1433,7 +1432,6 @@ <translation id="867767487203716855">次の更新</translation> <translation id="8683039184091909753">画像</translation> <translation id="8683081248374354009">グループをリセット</translation> -<translation id="8683526617475118045">メリット</translation> <translation id="869891660844655955">有効期限</translation> <translation id="8699120352855309748">これらの言語を翻訳するか尋ねない</translation> <translation id="8712637175834984815">閉じる</translation> @@ -1517,7 +1515,6 @@ <translation id="9148126808321036104">もう一度ログインする</translation> <translation id="9158770349521403363">コンテンツのみ共有</translation> <translation id="9159716826369098114"><ph name="TAB_COUNT" /> 個のタブのタブグループを新しいバックグラウンドのタブグループとして復元します。</translation> -<translation id="916446198114569890">アクセスした URL は Google アカウントに保存されます</translation> <translation id="9169507124922466868">ナビゲーション履歴が半分開いています</translation> <translation id="9187955620966010988">リアクションを調整しました</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{前回の確認: 1 分前}other{前回の確認: # 分前}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_ka.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_ka.xtb index 3fd5bd08..f2aec127 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_ka.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_ka.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">ამ საიტების თარგმნის შემოთავაზების აკრძალვა</translation> <translation id="1145536944570833626">არსებული მონაცემების წაშლა.</translation> <translation id="1146678959555564648">VR-ში შესვლა</translation> -<translation id="114825011539563458">კონფიდენციალურობისა და უსაფრთხოების მართვის ყველაზე მნიშვნელოვანი საშუალებები ერთ სივრცეში</translation> <translation id="1149401351239820326">ვადის გასვლის თვე</translation> <translation id="1150263420752757504"><ph name="APP_NAME" /> გაიხსნება Chrome-ში. გაგრძელებით ეთანხმებით <ph name="BEGIN_LINK1" />Google-ის მომსახურების პირობებს<ph name="END_LINK1" />, ასევე, <ph name="BEGIN_LINK2" />Google Chrome-ისა და ChromeOS-ის მომსახურების დამატებით პირობებს<ph name="END_LINK2" />.</translation> <translation id="1154704303112745282">გვერდი მიუწვდომელია ხაზგარეშე რეჟიმში: <ph name="VIOLATED_URL" /></translation> @@ -170,6 +169,7 @@ <translation id="189358972401248634">სხვა ენები</translation> <translation id="1894023287452300670">აქ შეგიძლიათ თვალი მიადევნოთ ფასს</translation> <translation id="1900260903084164610">გაგრძელებით თქვენ ეთანხმებით <ph name="BEGIN_TOS_LINK" />მომსახურების პირობებს<ph name="END_TOS_LINK" />.</translation> +<translation id="1904580727789512086">თქვენ მიერ მონახულებული URL-ები ინახება თქვენს Google ანგარიშში</translation> <translation id="1910950723001426294">გაზიარების ვარიანტების სია დახურულია</translation> <translation id="1918175104945982129">ასისტენტში ხმოვან ძიებაზე თანხმობის სამომხმარებლო ინტერფეისი გახსნილია ნახევარ სიმაღლეზე</translation> <translation id="1919130412786645364">Chrome-ში შესვლის დაშვება</translation> @@ -194,7 +194,6 @@ <translation id="2000419248597011803">თქვენს ნაგულისხმევ საძიებო სისტემას უგზავნის ზოგიერთ ქუქი-ჩანაწერს და საძიებო მოთხოვნებს მისამართთა ზოლიდან ან საძიებო ველიდან</translation> <translation id="200114059308480249">გსურთ, დაურთოთ გარშემო ტექსტი Google ძიებებს?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# ფაილი}other{# ფაილი}}</translation> -<translation id="2020309681647789787">ისტორია თქვენს ყველა სინქრონიზებულ მოწყობილობაზე გაქვთ ჩართული, ამიტომ შეგიძლიათ გააგრძელოთ ის, რასაც აკეთებდით</translation> <translation id="2021896219286479412">სრულეკრანიანი რეჟიმის მართვა</translation> <translation id="2038563949887743358">საიტის დესკტოპის ვერსიის მოთხოვნის ჩართვა</translation> <translation id="204321170514947529"><ph name="APP_NAME" />-ს Chrome-შიც აქვს მონაცემები</translation> @@ -280,7 +279,6 @@ <translation id="2527779675047087889">გაცვლის ბუფერის შიგთავსის დამალვა</translation> <translation id="2532336938189706096">ვებ-ხედი</translation> <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> ერთეული წაიშალა</translation> -<translation id="2534582914273493287">თქვენ მიერ მონახულებული URL-ები ეგზავნება Google-ს</translation> <translation id="2536728043171574184">თქვენ ამ გვერდის ხაზგარეშე ასლს ნახულობთ</translation> <translation id="2546283357679194313">ქუქი-ფაილები და საიტის მონაცემები</translation> <translation id="2549516196460093976">ამ ტაბლეტის მეშვეობით შეგიძლიათ შეხვიდეთ კომპიუტერში, რომელზეც ნაჩვენებია ეს QR კოდი.</translation> @@ -372,7 +370,6 @@ <translation id="2996291259634659425">საიდუმლო ფრაზის შექმნა</translation> <translation id="2996809686854298943">საჭიროა URL</translation> <translation id="2997081575621687554">როცა Google საიტი გთხოვთ, უფლება მისცეთ, კონფიდენციალურად ჩატვირთოს თავის გვერდზე არსებული ბმულები, Chrome დაშიფრავს და წინასწარ ჩატვირთავს გვერდებს Google-ის სერვერების მეშვეობით, ქუქი-ჩანაწერების გარეშე. აღნიშნული დამალავს თქვენს ვინაობას წინასწარ ჩატვირთული საიტისგან.</translation> -<translation id="3003733539450769656">წინასწარ გაგაფრთხილებთ სახიფათო მოვლენების შესახებ</translation> <translation id="3006881078666935414">გამოყენების შესახებ მონაცემები არ არის</translation> <translation id="301080557829842765">კონფიდენციალურობის სახელმძღვანელო</translation> <translation id="3016635187733453316">დარწმუნდით, რომ ეს მოწყობილობა დაკავშირებულია ინტერნეტთან</translation> @@ -432,6 +429,7 @@ <translation id="3284510035090979597">პროაქტიული დახმარება</translation> <translation id="3285080554353377245">ვიდეოები Chrome-ის გამოყენების წესის შესახებ</translation> <translation id="3288003805934695103">გვერდის გადატვირთვა</translation> +<translation id="3290249595466894471">ახალი საფრთხეების აღმოჩენის ხელშეწყობის მიზნით, გაიგზავნება გვერდების, ჩამოტვირთვების, გაფართოებათა აქტივობისა და სისტემის ინფორმაციის მცირე ნიმუშებიც</translation> <translation id="3297344142967351106">ხმოვანი დახმარება</translation> <translation id="3303414029551471755">გაგრძელდეს შინაარსის ჩამოტვირთვა?</translation> <translation id="3334729583274622784">გსურთ ფაილის გაფართოების შეცვლა?</translation> @@ -637,7 +635,6 @@ <translation id="4558311620361989323">ვებგვერდის მალსახმობები</translation> <translation id="4561730552726921821">რეგისტრაცია წარმატებით შესრულდა</translation> <translation id="4561979708150884304">კავშირი არ არის</translation> -<translation id="4562008740775511591">Chrome-ს გააჩნია გონიერი ნაგულისხმევი პარამეტრები, მაგრამ შეგიძლიათ, ისინი დათვალიერების თქვენეული წესის მიხედვით დააყენოთ</translation> <translation id="4565377596337484307">პაროლის დამალვა</translation> <translation id="4572422548854449519">მართულ ანგარიშში შესვლა</translation> <translation id="4576892426230499203">ცადეთ დადასტურების სხვა ვარიანტი</translation> @@ -919,7 +916,6 @@ <translation id="604996488070107836"><ph name="FILE_NAME" /> ვერ ჩამოიტვირთა უცნობი შეცდომის გამო.</translation> <translation id="605721222689873409">წწ</translation> <translation id="6059830886158432458">აქ შეგიძლიათ მართოთ ამბები და აქტივობა</translation> -<translation id="6069177176307973611">გაეცანით კონფიდენციალურობისა და უსაფრთხოების პარამეტრებს</translation> <translation id="6070730414166672373">მიმდინარეობს თქვენს ბანკთან დაკავშირება\u2026</translation> <translation id="6085886413119427067">განსაზღვრავს დაცული კავშირით ვებსაიტებთან დაკავშირების ხერხს</translation> <translation id="6091413777268123602">Privacy Sandbox-თან დაკავშირებული ცდების ფარგლებში, საიტები ვების დათვალიერებისას იმავე ფუნქციებს შემოგთავაზებენ, თუმცა ნაკლებად გამოიყენებენ თქვენს მონაცემებს. ეს ნიშნავს, რომ თქვენი კონფიდენციალურობა მეტად დაცული იქნება, ხოლო საიტებს შორის თვალის მიდევნების მექანიზმები შეიზღუდება. ჩვენ პერიოდულად დავამატებთ ახალ ცდებს, როცა ისინი ტესტირებისთვის მზად იქნება.</translation> @@ -1040,6 +1036,7 @@ <translation id="6641780377503683465">წაიშალოს <ph name="INTEREST" /></translation> <translation id="6643016212128521049">გასუფთავება</translation> <translation id="6645629752388991326">გააკონტროლეთ, რომელ მოწყობილობას შეუძლია სისტემაში შესვლა ამ მოწყობილობის უსაფრთხოების გასაღების სახით გამოყენების მეშვეობით.</translation> +<translation id="6647441008198474441">თქვენ მიერ მონახულებული URL-ები ეგზავნება Google-ს იმის პროგნოზირებისთვის, თუ რომელი საიტების მონახულებას მოისურვებთ შემდგომში</translation> <translation id="6648459603387803038">თქვენს ადმინისტრატორს დისტანციურად შეუძლია ბრაუზერში დაყენებული პარამეტრების შეცვლა. ამ მოწყობილობაზე აქტივობა შეიძლება იმართებოდეს Chrome-ს მიღმაც.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 და <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> სხვა}other{<ph name="CONTACT_PREVIEW" />\u2026 და <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> სხვა}}</translation> <translation id="6649642165559792194">სურათის გადახედვა <ph name="BEGIN_NEW" />სიახლე<ph name="END_NEW" /></translation> @@ -1047,7 +1044,6 @@ <translation id="6659594942844771486">ჩანართი</translation> <translation id="666731172850799929">გახსნა <ph name="APP_NAME" />-ში</translation> <translation id="6671495933530132209">გამოსახულების კოპირება</translation> -<translation id="6674044799624355221">ახალი საფრთხეების აღმოჩენის ხელშეწყობის მიზნით, აგზავნის გვერდების, ჩამოტვირთვების, გაფართოებათა აქტივობისა და სისტემის ინფორმაციის მცირე ნიმუშებს</translation> <translation id="6674571176963658787">სინქრონიზაციის დასაწყებად შეიყვანეთ თქვენი საიდუმლო ფრაზა</translation> <translation id="6676840375528380067">გასუფთავდეს თქვენი Chrome მონაცემები ამ მოწყობილობიდან?</translation> <translation id="6684809838922667136">გააუმჯობესეთ Chrome</translation> @@ -1069,7 +1065,6 @@ <translation id="6802555630140434547">ფანჯარა დაიხურება</translation> <translation id="6811034713472274749">გვერდი მზად არის სანახავად</translation> <translation id="6813446258015311409">Chrome-ში შესვლა, გახსნილია.</translation> -<translation id="6814033694018386318">თქვენ მიერ Google-თან გაზიარებული კონტენტი</translation> <translation id="6817747507826986771">სწრაფად გააზიარეთ ეს გვერდი. ამ მალსახმობის რედაქტირებისთვის შეეხეთ ხანგრძლივად.</translation> <translation id="6819199143469632133">თქვენი Google კონტენტით თქვენს ყველა მოწყობილობაზე რომ ისარგებლოთ, შედით სისტემაში</translation> <translation id="6820686453637990663">CVC</translation> @@ -1164,6 +1159,7 @@ <translation id="7352939065658542140">ვიდეო</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{1 არჩეული ერთეულის გაზიარება}other{# არჩეული ერთეულის გაზიარება}}</translation> <translation id="7359002509206457351">გადახდის მეთოდებზე წვდომა</translation> +<translation id="7363349185727752629">კონფიდენციალურობასთან დაკავშირებული არჩევანის სახელმძღვანელო</translation> <translation id="7375125077091615385">ტიპი:</translation> <translation id="7376560087009844242">გვერდზე არსებული მეტი ტექსტის დართვის შემთხვევაში, შესაძლოა, უკეთესი შედეგები იხილოთ „ძიებისთვის შეხებით“ სარგებლობისას. ამ ფუნქციის შეცვლა ნებისმიერ დროს შეგიძლიათ <ph name="BEGIN_LINK" />პარამეტრებიდან<ph name="END_LINK" />.</translation> <translation id="7379900596734708416">ხელმისაწვდომია მუქი თემა საიტებისთვის</translation> @@ -1263,6 +1259,7 @@ <translation id="7876243839304621966">ყველაფრის წაშლა</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{<ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> წაუკითხავი გვერდი გაქვთ}other{<ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> წაუკითხავი გვერდი გაქვთ}}</translation> <translation id="7886917304091689118">გაშვებულია Chrome-ში</translation> +<translation id="7887174313503389866">გაიარეთ ინტერაქტიური ტური კონფიდენციალურობისა და უსაფრთხოების მართვის საკვანძო საშუალებების თემაზე. სხვა ვარიანტებისთვის გადადით ცალკეულ პარამეტრებზე.</translation> <translation id="7887334752153342268">დუბლირება</translation> <translation id="789763218334337857">Chrome-ის გამოყენების წესი</translation> <translation id="7903184275147100332">ამას შეიძლება ერთი წუთი დასჭირდეს</translation> @@ -1376,6 +1373,7 @@ <translation id="8445448999790540984">პაროლების ექსპორტი ვერ მოხერხდა</translation> <translation id="8446884382197647889">შეიტყვეთ მეტი</translation> <translation id="8453310803815879010">დინოზავრთა თამაშის დაწყება</translation> +<translation id="8460448946170646641">გადახედეთ კონფიდენციალურობისა და უსაფრთხოების მართვის საკვანძო საშუალებებს</translation> <translation id="8461694314515752532">სინქრონიზებული მონაცემების დაშიფვრა თქვენი საკუთარი საიდუმლო ფრაზით</translation> <translation id="8466613982764129868">დარწმუნდით, რომ <ph name="TARGET_DEVICE_NAME" /> დაკავშირებულია ინტერნეტთან</translation> <translation id="8473863474539038330">მისამართები და სხვა</translation> @@ -1421,6 +1419,7 @@ <translation id="8636825310635137004">თქვენს სხვა მოწყობილობებზე არსებულ ჩანართებზე წვდომის მისაღებად, ჩართეთ სინქრონიზაცია.</translation> <translation id="8641930654639604085">შეძლებისდაგვარად, უფროსებისთვის განკუთვნილი საიტების დაბლოკვა</translation> <translation id="864544049772947936">ფანჯრების მართვა (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">პროგნოზირებს სახიფათო მოვლენებს და გაგაფრთხილებთ მათ შესახებ</translation> <translation id="8646467750715887511">გვერდები ჩაიტვირთება მხოლოდ მას შემდეგ, რაც მათ გახსნით.</translation> <translation id="8655129584991699539">მონაცემების გასუფთავება შეგიძლიათ Chrome-ის პარამეტრებიდან</translation> <translation id="8659579665266920523">Chrome-ით ძიების წესი</translation> @@ -1433,7 +1432,6 @@ <translation id="867767487203716855">შემდეგი განახლება</translation> <translation id="8683039184091909753">სურათი</translation> <translation id="8683081248374354009">ჯგუფის გადაყენება</translation> -<translation id="8683526617475118045">თქვენი უპირატესობები</translation> <translation id="869891660844655955">ვადის გასვლის თარიღი</translation> <translation id="8699120352855309748">ამ ენების თარგმნის შემოთავაზების აკრძალვა</translation> <translation id="8712637175834984815">კარგი</translation> @@ -1517,7 +1515,6 @@ <translation id="9148126808321036104">ხელახლა შედით</translation> <translation id="9158770349521403363">მხოლოდ კონტენტის გაზიარება</translation> <translation id="9159716826369098114">ჩანართების ჯგუფის (<ph name="TAB_COUNT" />), როგორც ფონური რეჟიმის ჩანართების ახალი ჯგუფის აღდგენა.</translation> -<translation id="916446198114569890">თქვენ მიერ მონახულებული URL-ები ინახება თქვენს Google ანგარიშში</translation> <translation id="9169507124922466868">ნავიგაციის ისტორია ნახევრადგახსნილია</translation> <translation id="9187955620966010988">რეაქცია კორექტირებულია</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{შემოწმდა 1 წუთის წინ}other{შემოწმდა # წუთის წინ}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_kk.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_kk.xtb index 4957584..cff9f51 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_kk.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_kk.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">Бұл сайттарды аударуды ұсынбау</translation> <translation id="1145536944570833626">Бар деректерді жойыңыз.</translation> <translation id="1146678959555564648">VR режиміне өту</translation> -<translation id="114825011539563458">Ең маңызды құпиялылық пен қауіпсіздікті басқару элементтері бір жерде</translation> <translation id="1149401351239820326">Жарамдылық мерзімі бітетін ай</translation> <translation id="1150263420752757504"><ph name="APP_NAME" /> қолданбасы Chrome браузерінде ашылады. Жалғастыру арқылы <ph name="BEGIN_LINK1" />Google Қызмет көрсету шарттарына<ph name="END_LINK1" />, <ph name="BEGIN_LINK2" />Google Chrome және ChromeOS Қосымша қызмет көрсету шарттарына<ph name="END_LINK2" /> келісесіз.</translation> <translation id="1154704303112745282">Бет офлайн режимде қолжетімді емес: <ph name="VIOLATED_URL" /></translation> @@ -108,6 +107,7 @@ <translation id="1488775391433859242">Бұл телефонды осы QR кодын көрсетіп тұрған компьютерге кіру үшін пайдалана аласыз.</translation> <translation id="1492417797159476138">Бұл сайт үшін осы пайдаланушы аты сақтап қойылған.</translation> <translation id="1493287004536771723">Сіз <ph name="SITE_NAME" /> сайтына жазылғансыз</translation> +<translation id="1502010315804028179">Құпия сөздеріңізді басқару үшін Google Play қызметтерін жаңартыңыз.</translation> <translation id="1506061864768559482">Іздеу жүйесі</translation> <translation id="1513352483775369820">Бетбелгілер мен веб-журнал</translation> <translation id="1513814250881909472">Басқа құрылғылардағы қойындыларды алу үшін синхрондаңыз.</translation> @@ -169,6 +169,7 @@ <translation id="189358972401248634">Басқа тілдер</translation> <translation id="1894023287452300670">Бағаны осы жерден бақылайсыз.</translation> <translation id="1900260903084164610">Жалғастыру арқылы <ph name="BEGIN_TOS_LINK" />Қызмет көрсету шарттарына<ph name="END_TOS_LINK" /> келісесіз.</translation> +<translation id="1904580727789512086">Кірген URL мекенжайларыңыз Google аккаунтыңызға сақталады.</translation> <translation id="1910950723001426294">Бөлісу опцияларының тізімі жабық.</translation> <translation id="1918175104945982129">Assistant-ті дауыспен іздеуге пайдалану туралы келісім терезесі жартылай ашылған.</translation> <translation id="1919130412786645364">Chrome браузеріне кіруге рұқсат ету</translation> @@ -193,7 +194,6 @@ <translation id="2000419248597011803">Мекенжай жолағына және іздеу өрісіне енгізілген сұрауларды, сонымен қатар кейбір cookie файлдарын әдепкі іздеу жүйесіне жібереді</translation> <translation id="200114059308480249">Google іздеу сұрауларында көбірек мәтін қамтылсын ба?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# файл}other{# файл}}</translation> -<translation id="2020309681647789787">Синхрондалған құрылғыларыңыздың барлығында жеке тарихыңыз болады, сондықтан істеген ісіңізді жалғастыра аласыз.</translation> <translation id="2021896219286479412">Толық экран режимін басқару</translation> <translation id="2038563949887743358">Жұмыс үстелі сайтын сұрау: қосу</translation> <translation id="204321170514947529"><ph name="APP_NAME" /> қолданбасының да Chrome браузерінде деректері бар</translation> @@ -279,7 +279,6 @@ <translation id="2527779675047087889">Буфердің мазмұндарын жасыру</translation> <translation id="2532336938189706096">Веб-көрініс</translation> <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> элемент жойылды.</translation> -<translation id="2534582914273493287">Сіз кірген URL мекенжайлары Google-ға жіберіледі.</translation> <translation id="2536728043171574184">Бұл беттің желіден тыс күйдегі көшірмесі көрсетілуде</translation> <translation id="2546283357679194313">Cookie файлдары және торап деректері</translation> <translation id="2549516196460093976">Бұл планшетті осы QR кодын көрсетіп тұрған компьютерге кіру үшін пайдалана аласыз.</translation> @@ -371,7 +370,6 @@ <translation id="2996291259634659425">Құпия фразаны жасау</translation> <translation id="2996809686854298943">URL қажет</translation> <translation id="2997081575621687554">Google платформасындағы сайт беттегі сілтемелерді құпия түрде алдын ала жүктеуді сұрағанда, Chrome беттерді шифрлап, оларды Google серверлері арқылы cookie файлдарынсыз алдын ала жүктейді. Осылайша сіздің жеке деректеріңіз алдын ала жүктелетін сайттан жасырылады.</translation> -<translation id="3003733539450769656">Қауіпті оқиғалар болмай тұрып, олар туралы хабарлайды.</translation> <translation id="3006881078666935414">Пайдалану деректері жоқ</translation> <translation id="301080557829842765">Құпиялылық нұсқаулығы</translation> <translation id="3016635187733453316">Бұл құрылғы интернетке қосулы екенін тексеріңіз.</translation> @@ -431,6 +429,7 @@ <translation id="3284510035090979597">Қажетті көмек</translation> <translation id="3285080554353377245">Chrome браузерін қалай қолдану керегі туралы бейнелер</translation> <translation id="3288003805934695103">Бетті қайта жүктеу</translation> +<translation id="3290249595466894471">Сонымен қатар жаңа қауіптерді анықтауға көмектесу үшін беттердің, жүктеп алынған файлдардың, кеңейтімдерді пайдаланудың шағын үлгісін және жүйе туралы ақпаратты жібереді.</translation> <translation id="3297344142967351106">Дауыстық көмек</translation> <translation id="3303414029551471755">Мазмұн жүктеуді жалғастырасыз ба?</translation> <translation id="3334729583274622784">Файл кеңейтімін өзгертесіз бе?</translation> @@ -636,7 +635,6 @@ <translation id="4558311620361989323">Веббет пернелер тіркесімдері</translation> <translation id="4561730552726921821">Тіркелдіңіз</translation> <translation id="4561979708150884304">Байланыс жоқ</translation> -<translation id="4562008740775511591">Chrome әдепкі параметрлерді ұсынады, бірақ оларды өз ыңғайыңызға қарай реттей аласыз.</translation> <translation id="4565377596337484307">Құпия сөзді жасыру</translation> <translation id="4572422548854449519">Басқарылатын аккаунтқа кіру</translation> <translation id="4576892426230499203">Басқа растау опциясын пайдаланып көріңіз.</translation> @@ -918,7 +916,6 @@ <translation id="604996488070107836">Белгісіз қате себебінен <ph name="FILE_NAME" /> жүктелмеді.</translation> <translation id="605721222689873409">ЖЖ</translation> <translation id="6059830886158432458">Жаңалықтар мен әрекеттерді осы жерде басқарыңыз.</translation> -<translation id="6069177176307973611">Пікір құпиялылығы және қауіпсіздік параметрлері</translation> <translation id="6070730414166672373">Банкпен байланыс орнатылуда\u2026</translation> <translation id="6085886413119427067">Қорғалған байланыс арқылы веб-сайттарға қосылу әдісін анықтайды.</translation> <translation id="6091413777268123602">Privacy Sandbox сынақ нұсқаларының көмегімен сайттар аз деректі пайдалана отырып, интернетті бұрынғыдай шолу мүмкіндігін береді. Яғни құпиялылықты сақтаудың деңгейі артып, сайтаралық бақылау деңгейі төмендейді. Дайын болғанда, жаңа сынақ нұсқаларын да қосамыз.</translation> @@ -1039,6 +1036,7 @@ <translation id="6641780377503683465"><ph name="INTEREST" /> өшіру</translation> <translation id="6643016212128521049">Тазалау</translation> <translation id="6645629752388991326">Қандай құрылғылар осы құрылғыны қауіпсіздік кілті ретінде пайдаланып кіре алатынын басқарыңыз.</translation> +<translation id="6647441008198474441">Сіз кірген URL мекенжайлары Google-ға жіберіледі. Осылайша Google келесіде қандай сайтқа кіруіңіз мүмкін екендігін болжай алады.</translation> <translation id="6648459603387803038">Браузер параметрін әкімші қашықтан өзгерте алады. Сонымен қатар құрылғыдағы әрекеттерді Chrome браузерінен тыс басқаруға болады.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 және тағы <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}other{<ph name="CONTACT_PREVIEW" />\u2026 және тағы <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}}</translation> <translation id="6649642165559792194">Кескінді алдын ала қарау <ph name="BEGIN_NEW" />Жаңа<ph name="END_NEW" /></translation> @@ -1046,7 +1044,6 @@ <translation id="6659594942844771486">Қойынды</translation> <translation id="666731172850799929"><ph name="APP_NAME" /> арқылы ашу</translation> <translation id="6671495933530132209">Кескінді көшіру</translation> -<translation id="6674044799624355221">Жаңа қауіптерді анықтауға көмектесу үшін беттердің, жүктеп алынған файлдардың, кеңейтімдерді пайдаланудың шағын үлгісін және жүйе туралы ақпаратты жібереді.</translation> <translation id="6674571176963658787">Синхрондауды бастау үшін құпия фразаны енгізіңіз.</translation> <translation id="6676840375528380067">Chrome деректері осы құрылғыдан жойылсын ба?</translation> <translation id="6684809838922667136">Chrome-ды жақсартуға үлес қосыңыз</translation> @@ -1068,7 +1065,6 @@ <translation id="6802555630140434547">Терезе жабылады.</translation> <translation id="6811034713472274749">Бетті көре беруге болады.</translation> <translation id="6813446258015311409">Chrome-ға кіру, ашық.</translation> -<translation id="6814033694018386318">Google-ға қандай ақпарат жіберіледі</translation> <translation id="6817747507826986771">Осы бетті жылдам бөлісу. Бұл жылдам пәрменді өзгерту үшін оны басып тұрыңыз.</translation> <translation id="6819199143469632133">Google-дағы материалдарды әртүрлі құрылғыдан пайдалану үшін аккаунтқа кіріңіз.</translation> <translation id="6820686453637990663">CVC коды</translation> @@ -1163,6 +1159,7 @@ <translation id="7352939065658542140">БЕЙНЕ</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{Таңдалған 1 элементті бөлісу}other{Таңдалған # элементті бөлісу}}</translation> <translation id="7359002509206457351">Төлеу әдістерін көру</translation> +<translation id="7363349185727752629">Құпиялылыққа қатысты таңдауларыңыз бойынша нұсқаулық</translation> <translation id="7375125077091615385">Түрі:</translation> <translation id="7376560087009844242">Түртіп іздеу функциясын пайдалану кезінде беттегі мәтінді көбірек қамту арқылы дәлірек нәтижелер көресіз. Мұны кез келген уақытта <ph name="BEGIN_LINK" />параметрлерден<ph name="END_LINK" /> өзгертуге болады.</translation> <translation id="7379900596734708416">Сайттар үшін қараңғы режим қолжетімді</translation> @@ -1262,6 +1259,7 @@ <translation id="7876243839304621966">Барлығын алып тастау</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{Оқылмаған <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> бет бар.}other{Оқылмаған <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> бет бар.}}</translation> <translation id="7886917304091689118">Chrome браузерінде ашылған</translation> +<translation id="7887174313503389866">Құпиялылық пен қауіпсіздікті басқарудың маңызды құралдары туралы қысқаша презентацияны қарап шығыңыз. Басқа опцияларды көру үшін әр параметрге жеке-жеке өтіңіз.</translation> <translation id="7887334752153342268">Көшірме</translation> <translation id="789763218334337857">Chrome браузерін пайдалану тәсілі</translation> <translation id="7903184275147100332">Бұл бір минут алуы мүмкін.</translation> @@ -1375,6 +1373,7 @@ <translation id="8445448999790540984">Құпия сөздерді экспорттау мүмкін емес</translation> <translation id="8446884382197647889">Толығырақ</translation> <translation id="8453310803815879010">Динозавр ойынын бастау</translation> +<translation id="8460448946170646641">Құпиялылық пен қауіпсіздікті басқарудың маңызды құралдарын қарап шығыңыз.</translation> <translation id="8461694314515752532">Синхрондалған деректерді өзіңіздің синхрондау құпия фразаңызбен шифрлау</translation> <translation id="8466613982764129868"><ph name="TARGET_DEVICE_NAME" /> құрылғысы интернетке қосулы екенін тексеріңіз.</translation> <translation id="8473863474539038330">Мекенжайлар және басқа ақпарат</translation> @@ -1420,6 +1419,7 @@ <translation id="8636825310635137004">Басқа құрылғылардағы қойындыларды алу үшін, синхрондауды қосыңыз</translation> <translation id="8641930654639604085">Ересектерге арналған сайттарды бөгеу</translation> <translation id="864544049772947936">Терезелерді басқару (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">Қауіпті іс-шараларды алдын ала болжайды және олар туралы хабарлайды.</translation> <translation id="8646467750715887511">Беттер ашылған кезде ғана жүктеледі.</translation> <translation id="8655129584991699539">Деректерді Chrome параметрлерінде өшіруге болады.</translation> <translation id="8659579665266920523">Chrome браузерімен қалай іздеуге болады?</translation> @@ -1432,7 +1432,6 @@ <translation id="867767487203716855">Келесі жаңарту</translation> <translation id="8683039184091909753">сурет</translation> <translation id="8683081248374354009">Топ параметрлерін бастапқы күйге қайтару</translation> -<translation id="8683526617475118045">Функцияның артықшылықтары</translation> <translation id="869891660844655955">Аяқталу мерзімі</translation> <translation id="8699120352855309748">Бұл тілдерді аударуды ұсынбау</translation> <translation id="8712637175834984815">Түсінікті</translation> @@ -1516,7 +1515,6 @@ <translation id="9148126808321036104">Қайта кіру</translation> <translation id="9158770349521403363">Тек мазмұн бөлісу</translation> <translation id="9159716826369098114"><ph name="TAB_COUNT" /> қойынды тобын жаңа фондық қойындылар тобы ретінде қалпына келтіру.</translation> -<translation id="916446198114569890">Кірген URL мекенжайларыңыз Google аккаунтыңызға сақталады.</translation> <translation id="9169507124922466868">Навигация тарихы жартылай ашық.</translation> <translation id="9187955620966010988">Эмоция реттелді.</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{1 минут бұрын тексерілді.}other{# минут бұрын тексерілді.}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_km.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_km.xtb index f3f230e..bf49bda2 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_km.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_km.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">មិនផ្ដល់ការបកប្រែគេហទំព័រទាំងនេះទេ</translation> <translation id="1145536944570833626">លុបទិន្នន័យដែលមានស្រាប់។</translation> <translation id="1146678959555564648">បញ្ចូល VR</translation> -<translation id="114825011539563458">ការគ្រប់គ្រងសុវត្ថិភាព និងឯកជនភាពសំខាន់បំផុតនៅកន្លែងតែមួយ</translation> <translation id="1149401351239820326">ខែផុតកំណត់</translation> <translation id="1150263420752757504"><ph name="APP_NAME" /> នឹងបើកនៅក្នុង Chrome។ ប្រសិនបើបន្ត មានន័យថាអ្នកយល់ព្រមតាម<ph name="BEGIN_LINK1" />លក្ខខណ្ឌប្រើប្រាស់ Google<ph name="END_LINK1" /> និង<ph name="BEGIN_LINK2" />លក្ខខណ្ឌប្រើប្រាស់បន្ថែមរបស់ Google Chrome និង ChromeOS<ph name="END_LINK2" />។</translation> <translation id="1154704303112745282">មិនអាចប្រើទំព័រពេលគ្មានអ៊ីនធឺណិតបានទេ៖ <ph name="VIOLATED_URL" /></translation> @@ -170,6 +169,7 @@ <translation id="189358972401248634">ភាសាផ្សេងទៀត</translation> <translation id="1894023287452300670">តាមដានតម្លៃនៅទីនេះ</translation> <translation id="1900260903084164610">ប្រសិនបើបន្ត មានន័យថាអ្នកយល់ព្រមតាម<ph name="BEGIN_TOS_LINK" />លក្ខខណ្ឌប្រើប្រាស់<ph name="END_TOS_LINK" />។</translation> +<translation id="1904580727789512086">URL ដែលអ្នកចូលមើលត្រូវបានរក្សាទុកក្នុងគណនី Google របស់អ្នក</translation> <translation id="1910950723001426294">បញ្ជីជម្រើសចែករំលែកត្រូវបានបិទ។</translation> <translation id="1918175104945982129">បានបើកពាក់កណ្ដាលអេក្រង់នូវ ui នៃការយល់ព្រមឱ្យប្រើជំនួយការសម្រាប់ការស្វែងរកតាមសំឡេង</translation> <translation id="1919130412786645364">អនុញ្ញាតការចូល Chrome</translation> @@ -194,7 +194,6 @@ <translation id="2000419248597011803">បញ្ជូនការស្វែងរក និងខូគីមួយចំនួនពីរបារអាសយដ្ឋាន និងប្រអប់ស្វែងរកទៅម៉ាស៊ីនស្វែងរកលំនាំដើមរបស់អ្នក</translation> <translation id="200114059308480249">រួមបញ្ចូលអក្សរដែលនៅជុំវិញនៅក្នុងការស្វែងរកនៅលើ Google ឬ?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{ឯកសារ #}other{ឯកសារ #}}</translation> -<translation id="2020309681647789787">អ្នកនឹងមានប្រវត្តិរបស់អ្នកនៅលើឧបករណ៍ដែលបានធ្វើសមកាលកម្មទាំងអស់របស់អ្នក ដើម្បីអាចឱ្យអ្នកបន្តអ្វីដែលអ្នកកំពុងបានធ្វើ</translation> <translation id="2021896219286479412">ការគ្រប់គ្រងទំព័រពេញអេក្រង់</translation> <translation id="2038563949887743358">បើកសំណើគេហទំព័រសម្រាប់កុំព្យូទ័រ</translation> <translation id="204321170514947529"><ph name="APP_NAME" /> ក៏មានទិន្នន័យនៅក្នុង Chrome ផងដែរ</translation> @@ -280,7 +279,6 @@ <translation id="2527779675047087889">លាក់ខ្លឹមសារឃ្លីបបត</translation> <translation id="2532336938189706096">មើលគេហទំព័រ</translation> <translation id="2534155362429831547">បានលុបធាតុ <ph name="NUMBER_OF_ITEMS" /></translation> -<translation id="2534582914273493287">URL ដែលអ្នកចូលមើលត្រូវបានបញ្ជូនទៅ Google</translation> <translation id="2536728043171574184">កំពុងមើលច្បាប់ចម្លងនៃទំព័រនេះនៅក្រៅបណ្តាញ</translation> <translation id="2546283357679194313">ខុកឃី និងទិន្នន័យគេហទំព័រ</translation> <translation id="2549516196460093976">អ្នកអាចប្រើថេប្លេតនេះ ដើម្បីចូលគណនីនៅលើកុំព្យូទ័រ ដែលកំពុងបង្ហាញកូដ QR នេះ។</translation> @@ -372,7 +370,6 @@ <translation id="2996291259634659425">បង្កើតឃ្លាសម្ងាត់</translation> <translation id="2996809686854298943">តម្រូវឲ្យមាន URL</translation> <translation id="2997081575621687554">នៅពេលគេហទំព័រ Google ស្នើសុំផ្ទុកតំណជាមុនជាលក្ខណៈឯកជននៅលើទំព័ររបស់វា Chrome អ៊ីនគ្រីប និងផ្ទុកទំព័រជាមុនតាមរយៈម៉ាស៊ីនមេ Google ដោយគ្មានខូគី។ ការធ្វើបែបនេះលាក់អត្តសញ្ញាណរបស់អ្នកពីគេហទំព័រដែលបានផ្ទុកជាមុន។</translation> -<translation id="3003733539450769656">ព្រមានអ្នកអំពីព្រឹត្តិការណ៍គ្រោះថ្នាក់ មុនពេលព្រឹត្តិការណ៍ទាំងនោះកើតឡើង</translation> <translation id="3006881078666935414">គ្មានទិន្នន័យប្រើប្រាស់ទេ</translation> <translation id="301080557829842765">ការណែនាំអំពីឯកជនភាព</translation> <translation id="3016635187733453316">ត្រូវប្រាកដថា ឧបករណ៍នេះមានការតភ្ជាប់អ៊ីនធឺណិត</translation> @@ -432,6 +429,7 @@ <translation id="3284510035090979597">ជំនួយបរិសកម្ម</translation> <translation id="3285080554353377245">វីដេអូអំពីរបៀបប្រើប្រាស់ Chrome</translation> <translation id="3288003805934695103">ដំណើរការទំព័រឡើងវិញ</translation> +<translation id="3290249595466894471">ក៏បញ្ជូនគំរូមួយចំនួនតូចនៃទំព័រ ការទាញយក សកម្មភាពកម្មវិធីបន្ថែម និងព័ត៌មានប្រព័ន្ធ ដើម្បីជួយរកមើលការគំរាមកំហែងថ្មីផងដែរ</translation> <translation id="3297344142967351106">ជំនួយជាសំឡេង</translation> <translation id="3303414029551471755">បន្តដើម្បីទាញយកមាតិកានេះ?</translation> <translation id="3334729583274622784">ប្ដូរកន្ទុយឯកសារឬ?</translation> @@ -637,7 +635,6 @@ <translation id="4558311620361989323">ផ្លូវកាត់គេហទំព័រ</translation> <translation id="4561730552726921821">បានចុះឈ្មោះដោយជោគជ័យ</translation> <translation id="4561979708150884304">មិនមានការតភ្ជាប់</translation> -<translation id="4562008740775511591">Chrome ផ្ដល់លំនាំដើមសមស្រប ប៉ុន្តែអ្នកអាចប្ដូរលំនាំដើមនេះតាមបំណងឱ្យត្រូវនឹងទម្លាប់រុករករបស់អ្នកបំផុត</translation> <translation id="4565377596337484307">លាក់ពាក្យសម្ងាត់</translation> <translation id="4572422548854449519">ចូលទៅគណនីដែលបានគ្រប់គ្រង</translation> <translation id="4576892426230499203">សាកល្បងប្រើជម្រើសផ្ទៀងផ្ទាត់ផ្សេងទៀត</translation> @@ -919,7 +916,6 @@ <translation id="604996488070107836">ការដោនឡូត <ph name="FILE_NAME" /> បានបរាជ័យដោយសារមានកំហុសមិនស្គាល់។</translation> <translation id="605721222689873409">ឆ្នាំ</translation> <translation id="6059830886158432458">គ្រប់គ្រងអត្ថបទ និងសកម្មភាពរបស់អ្នកនៅទីនេះ</translation> -<translation id="6069177176307973611">ពិនិត្យមើលការកំណត់សុវត្ថិភាព និងឯកជនភាព</translation> <translation id="6070730414166672373">កំពុងទាក់ទងធនាគាររបស់អ្នក\u2026</translation> <translation id="6085886413119427067">កំណត់របៀបភ្ជាប់គេហទំព័រតាមរយៈការតភ្ជាប់ដែលមានសុវត្ថិភាព</translation> <translation id="6091413777268123602">តាមរយៈការសាកល្បងប្រើ Privacy Sandbox គេហទំព័រអាចផ្ដល់បទពិសោធន៍នៃការរុករកដូចគ្នា ដោយប្រើទិន្នន័យរបស់អ្នកកាន់តែតិច។ មានន័យថា កាន់តែមានឯកជនភាពសម្រាប់អ្នក និងការប្រមូលទិន្នន័យរុករកនៅលើគេហទំព័រនានាកាន់តែតិច។ យើងនឹងបញ្ចូលការសាកល្បងថ្មីៗ នៅពេលដែលអាចធ្វើតេស្តការសាកល្បងទាំងនោះបាន។</translation> @@ -1040,6 +1036,7 @@ <translation id="6641780377503683465">ដក <ph name="INTEREST" /> ចេញ</translation> <translation id="6643016212128521049">ជម្រះ</translation> <translation id="6645629752388991326">គ្រប់គ្រងថាតើឧបករណ៍ណាខ្លះអាចចូលគណនីដោយប្រើឧបករណ៍នេះជាសោសុវត្ថិភាពបាន។</translation> +<translation id="6647441008198474441">URL ដែលអ្នកចូលមើលត្រូវបានផ្ញើទៅ Google ដើម្បីព្យាករគេហទំព័រដែលអ្នកប្រហែលជាចូលមើលបន្ទាប់</translation> <translation id="6648459603387803038">អ្នកគ្រប់គ្រងរបស់អ្នកអាចប្ដូរការរៀបចំកម្មវិធីរុករកតាមអ៊ីនធឺណិតរបស់អ្នកពីចម្ងាយបាន។ សកម្មភាពនៅលើឧបករណ៍នេះក៏អាចត្រូវបានគ្រប់គ្រងនៅក្រៅ Chrome ផងដែរ។</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 និង <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> ទៀត}other{<ph name="CONTACT_PREVIEW" />\u2026 និង <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> ទៀត}}</translation> <translation id="6649642165559792194">មើលរូបភាពសាកល្បង <ph name="BEGIN_NEW" />ថ្មី<ph name="END_NEW" /></translation> @@ -1047,7 +1044,6 @@ <translation id="6659594942844771486">ផ្ទាំង</translation> <translation id="666731172850799929">បើកក្នុង <ph name="APP_NAME" /></translation> <translation id="6671495933530132209">ចម្លងរូបភាព</translation> -<translation id="6674044799624355221">បញ្ជូនគំរូមួយចំនួនតូចនៃទំព័រ ការទាញយក សកម្មភាពកម្មវិធីបន្ថែម និងព័ត៌មានប្រព័ន្ធ ដើម្បីជួយរកមើលការគំរាមកំហែងថ្មីៗ</translation> <translation id="6674571176963658787">ដើម្បីចាប់ផ្ដើមសមកាលកម្ម សូមបញ្ចូលឃ្លាសម្ងាត់របស់អ្នក</translation> <translation id="6676840375528380067">សម្អាតទិន្នន័យ Chrome របស់អ្នកពីឧបករណ៍នេះមែនទេ?</translation> <translation id="6684809838922667136">ធ្វើឱ្យ Chrome ប្រសើរឡើង</translation> @@ -1069,7 +1065,6 @@ <translation id="6802555630140434547">វិនដូនឹងត្រូវបានបិទ</translation> <translation id="6811034713472274749">ទំព័រអាចមើលបានហើយ</translation> <translation id="6813446258015311409">ចូល Chrome, បានបើក។</translation> -<translation id="6814033694018386318">អ្វីដែលអ្នកចែករំលែកជាមួយ Google</translation> <translation id="6817747507826986771">ចែករំលែកទំព័រនេះបានយ៉ាងរហ័ស។ ដើម្បីកែផ្លូវកាត់នេះ សូមចុចឱ្យជាប់។</translation> <translation id="6819199143469632133">ដើម្បីទទួលបានអ្វីៗនៅក្នុង Google របស់អ្នកនៅលើឧបករណ៍នានា សូមចូល</translation> <translation id="6820686453637990663">CVC</translation> @@ -1164,6 +1159,7 @@ <translation id="7352939065658542140">វីដេអូ</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{ចែករំលែកធាតុដែលបានជ្រើសរើស 1}other{ចែករំលែកធាតុដែលបានជ្រើសរើស #}}</translation> <translation id="7359002509206457351">ចូលប្រើវិធីបង់ប្រាក់</translation> +<translation id="7363349185727752629">ការណែនាំអំពីជម្រើសឯកជនភាពរបស់អ្នក</translation> <translation id="7375125077091615385">ប្រភេទ៖</translation> <translation id="7376560087009844242">តាមរយៈការរួមបញ្ចូលអត្ថបទរបស់ទំព័របន្ថែម អ្នកអាចមើលឃើញលទ្ធផលប្រសើរជាងមុន នៅពេលប្រើមុខងារចុចដើម្បីស្វែងរក។ អ្នកអាចចូលទៅកាន់<ph name="BEGIN_LINK" />ការកំណត់<ph name="END_LINK" /> ដើម្បីផ្លាស់ប្ដូរជម្រើសនេះបានជានិច្ច។</translation> <translation id="7379900596734708416">អាចប្រើរចនាប័ទ្មងងឹតសម្រាប់គេហទំព័របាន</translation> @@ -1263,6 +1259,7 @@ <translation id="7876243839304621966">ដកចេញទាំងអស់</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{អ្នកមានទំព័រមិនទាន់អានចំនួន <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" />}other{អ្នកមានទំព័រមិនទាន់អានចំនួន <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" />}}</translation> <translation id="7886917304091689118">កំពុងដំណើរការនៅក្នុង Chrome</translation> +<translation id="7887174313503389866">ធ្វើទស្សនកិច្ចស្វែងយល់អំពីការគ្រប់គ្រងសុវត្ថិភាព និងឯកជនភាពសំខាន់ៗ។ សម្រាប់ជម្រើសច្រើនទៀត សូមចូលទៅកាន់ការកំណត់នីមួយៗ។</translation> <translation id="7887334752153342268">ចម្លង</translation> <translation id="789763218334337857">របៀបប្រើ Chrome</translation> <translation id="7903184275147100332">អាចចំណាយពេលមួយនាទី</translation> @@ -1376,6 +1373,7 @@ <translation id="8445448999790540984">មិនអាចនាំពាក្យសម្ងាត់ចេញបានទេ</translation> <translation id="8446884382197647889">ស្វែងយល់បន្ថែម</translation> <translation id="8453310803815879010">ចាប់ផ្ដើមហ្គេមដាយណូស័រ</translation> +<translation id="8460448946170646641">ពិនិត្យមើលការគ្រប់គ្រងសុវត្ថិភាព និងឯកជនភាពសំខាន់ៗ</translation> <translation id="8461694314515752532">អ៊ីនគ្រីបទិន្នន័យដែលបានធ្វើសមកាលកម្ម ដោយប្រើឃ្លាសម្ងាត់សមកាលកម្មផ្ទាល់ខ្លួនរបស់អ្នក</translation> <translation id="8466613982764129868">ត្រូវប្រាកដថា <ph name="TARGET_DEVICE_NAME" /> មានការតភ្ជាប់អ៊ីនធឺណិត</translation> <translation id="8473863474539038330">អាសយដ្ឋាន និងច្រើនទៀត</translation> @@ -1421,6 +1419,7 @@ <translation id="8636825310635137004">ដើម្បីទទួលបានផ្ទាំងរបស់អ្នកពីឧបករណ៍ផ្សេងទៀតរបស់អ្នក សូមបើកការធ្វើសមកាលកម្ម</translation> <translation id="8641930654639604085">ព្យាយាមរារាំងទំព័រសម្រាប់មនុស្សធំ</translation> <translation id="864544049772947936">គ្រប់គ្រងវិនដូ (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">ព្យាករ និងព្រមានអ្នកអំពីព្រឹត្តិការណ៍គ្រោះថ្នាក់ មុនពេលព្រឹត្តិការណ៍ទាំងនោះកើតឡើង</translation> <translation id="8646467750715887511">ទំព័រផ្ទុក បន្ទាប់ពីអ្នកបើកទំព័រទាំងនោះតែប៉ុណ្ណោះ។</translation> <translation id="8655129584991699539">អ្នកអាចសម្អាតទិន្នន័យនៅក្នុងការកំណត់ Chrome</translation> <translation id="8659579665266920523">របៀបស្វែងរកដោយប្រើ Chrome</translation> @@ -1433,7 +1432,6 @@ <translation id="867767487203716855">ការដំឡើងកំណែបន្ទាប់</translation> <translation id="8683039184091909753">រូបភាព</translation> <translation id="8683081248374354009">កំណត់ក្រុមឡើងវិញ</translation> -<translation id="8683526617475118045">អ្វីដែលអ្នកទទួលបាន</translation> <translation id="869891660844655955">កាលបរិច្ឆេទការផុតកំណត់</translation> <translation id="8699120352855309748">មិនផ្ដល់ការបកប្រែភាសាទាំងនេះទេ</translation> <translation id="8712637175834984815">យល់ហើយ</translation> @@ -1517,7 +1515,6 @@ <translation id="9148126808321036104">ចូលម្តងទៀត</translation> <translation id="9158770349521403363">ចែករំលែកខ្លឹមសារតែប៉ុណ្ណោះ</translation> <translation id="9159716826369098114">ស្ដារក្រុមផ្ទាំងនៃផ្ទាំង <ph name="TAB_COUNT" /> ជាក្រុមផ្ទាំងផ្ទៃខាងក្រោយថ្មី។</translation> -<translation id="916446198114569890">URL ដែលអ្នកចូលមើលត្រូវបានរក្សាទុកក្នុងគណនី Google របស់អ្នក</translation> <translation id="9169507124922466868">ប្រវត្តិរុករកត្រូវបានបើកពាក់កណ្ដាល</translation> <translation id="9187955620966010988">បានកែតម្រូវប្រតិកម្ម</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{បានពិនិត្យមើលកាលពី 1 នាទីមុន}other{បានពិនិត្យមើលកាលពី # នាទីមុន}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_kn.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_kn.xtb index 513073e4..dfbbf25 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_kn.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_kn.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">ಈ ಸೈಟ್ಗಳನ್ನು ಅನುವಾದಿಸುವ ಪ್ರಸ್ತಾಪ ಮಾಡಬೇಡಿ</translation> <translation id="1145536944570833626">ಪ್ರಸ್ತುತ ಡೇಟಾ ಅಳಿಸಿ.</translation> <translation id="1146678959555564648">VR ನಮೂದಿಸಿ</translation> -<translation id="114825011539563458">ಒಂದೇ ಸ್ಥಳದಲ್ಲಿ ಲಭ್ಯವಿರುವ ಪ್ರಮುಖ ಗೌಪ್ಯತೆ ಮತ್ತು ಸುರಕ್ಷತಾ ನಿಯಂತ್ರಣಗಳು</translation> <translation id="1149401351239820326">ಮುಕ್ತಾಯದ ತಿಂಗಳು</translation> <translation id="1150263420752757504"><ph name="APP_NAME" />, Chrome ನಲ್ಲಿ ತೆರೆಯುತ್ತದೆ. ಮುಂದುವರಿಯುವ ಮೂಲಕ, ನೀವು <ph name="BEGIN_LINK1" />Google ಸೇವಾ ನಿಯಮಗಳು<ph name="END_LINK1" />, ಹಾಗೂ <ph name="BEGIN_LINK2" />Google Chrome ಮತ್ತು ChromeOS ಹೆಚ್ಚುವರಿ ಸೇವಾ ನಿಯಮಗಳಿಗೆ<ph name="END_LINK2" /> ಸಮ್ಮತಿಸುತ್ತೀರಿ.</translation> <translation id="1154704303112745282">ಪುಟ ಆಫ್ಲೈನ್ನಲ್ಲಿ ಲಭ್ಯವಿಲ್ಲ: <ph name="VIOLATED_URL" /></translation> @@ -170,6 +169,7 @@ <translation id="189358972401248634">ಇತರೆ ಭಾಷೆಗಳು</translation> <translation id="1894023287452300670">ಬೆಲೆಯನ್ನು ಇಲ್ಲಿ ಟ್ರ್ಯಾಕ್ ಮಾಡಿ</translation> <translation id="1900260903084164610">ಮುಂದುವರಿಯುವ ಮೂಲಕ, ನೀವು <ph name="BEGIN_TOS_LINK" />ಸೇವಾ ನಿಯಮಗಳಿಗೆ<ph name="END_TOS_LINK" /> ಸಮ್ಮತಿಸುತ್ತೀರಿ.</translation> +<translation id="1904580727789512086">ನೀವು ಭೇಟಿ ನೀಡುವ URL ಗಳನ್ನು ನಿಮ್ಮ Google ಖಾತೆಯಲ್ಲಿ ಉಳಿಸಲಾಗುತ್ತದೆ</translation> <translation id="1910950723001426294">ಹಂಚಿಕೊಳ್ಳುವ ಆಯ್ಕೆಗಳ ಪಟ್ಟಿಯನ್ನು ಮುಚ್ಚಲಾಗಿದೆ.</translation> <translation id="1918175104945982129">Assistant ಧ್ವನಿ ಹುಡುಕಾಟ ಸಮ್ಮತಿಯ UI ಅನ್ನು ಅರ್ಧ ಎತ್ತರದಲ್ಲಿ ತೆರೆಯಲಾಗಿದೆ</translation> <translation id="1919130412786645364">Chrome ಸೈನ್-ಇನ್ ಅನ್ನು ಅನುಮತಿಸಿ</translation> @@ -194,7 +194,6 @@ <translation id="2000419248597011803">ಕೆಲವು ಕುಕೀಗಳನ್ನು ಹಾಗೂ ವಿಳಾಸ ಪಟ್ಟಿ ಮತ್ತು ಹುಡುಕಾಟ ಬಾಕ್ಸ್ನಿಂದ ಹುಡುಕಾಟಗಳನ್ನು, ನಿಮ್ಮ ಡಿಫಾಲ್ಟ್ ಹುಡುಕಾಟದ ಎಂಜಿನ್ಗೆ ಕಳುಹಿಸುತ್ತದೆ</translation> <translation id="200114059308480249">Google ಹುಡುಕಾಟಗಳಲ್ಲಿ ಸುತ್ತಮುತ್ತಲಿನ ಪಠ್ಯವನ್ನು ಸೇರಿಸಬೇಕೇ?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# ಫೈಲ್}one{# ಫೈಲ್ಗಳು}other{# ಫೈಲ್ಗಳು}}</translation> -<translation id="2020309681647789787">ನಿಮ್ಮ ಎಲ್ಲಾ ಸಿಂಕ್ ಮಾಡಿದ ಸಾಧನಗಳಲ್ಲಿ ನಿಮ್ಮ ಇತಿಹಾಸ ಲಭ್ಯವಿರುತ್ತದೆ, ಇದರಿಂದ ನೀವು ಮಾಡುತ್ತಿದ್ದ ಕೆಲಸವನ್ನು ನೀವು ಮುಂದುವರಿಸಬಹುದು</translation> <translation id="2021896219286479412">ಪೂರ್ಣ ಪರದೆ ಸೈಟ್ ನಿಯಂತ್ರಣಗಳು</translation> <translation id="2038563949887743358">ಡೆಸ್ಕ್ಟಾಪ್ ಸೈಟ್ ವಿನಂತಿಯನ್ನು ಆನ್ ಮಾಡಿ</translation> <translation id="204321170514947529"><ph name="APP_NAME" />ಆ್ಯಪ್ನ ಡೇಟಾವು Chrome ನಲ್ಲಿಯೂ ಇದೆ</translation> @@ -280,7 +279,6 @@ <translation id="2527779675047087889">ಕ್ಲಿಪ್ಬೋರ್ಡ್ ವಿಷಯಗಳನ್ನು ಮರೆಮಾಡಿ</translation> <translation id="2532336938189706096">ವೆಬ್ ವೀಕ್ಷಣೆ</translation> <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> ಐಟಂಗಳನ್ನು ಅಳಿಸಲಾಗಿದೆ</translation> -<translation id="2534582914273493287">ನೀವು ಭೇಟಿ ನೀಡುವ URL ಗಳನ್ನು Google ಗೆ ಕಳುಹಿಸಲಾಗುತ್ತದೆ</translation> <translation id="2536728043171574184">ಈ ಪುಟದ ಆಫ್ಲೈನ್ ನಕಲನ್ನು ವೀಕ್ಷಿಸಲಾಗುತ್ತಿದೆ</translation> <translation id="2546283357679194313">ಕುಕೀಗಳು ಮತ್ತು ಸೈಟ್ ಡೇಟಾ</translation> <translation id="2549516196460093976">ಈ QR ಕೋಡ್ ಅನ್ನು ಪ್ರದರ್ಶಿಸುವ ಕಂಪ್ಯೂಟರ್ನಲ್ಲಿ ಸೈನ್ ಇನ್ ಮಾಡಲು ನೀವು ಈ ಟ್ಯಾಬ್ಲೆಟ್ ಅನ್ನು ಬಳಸಬಹುದು.</translation> @@ -372,7 +370,6 @@ <translation id="2996291259634659425">ಪಾಸ್ಫ್ರೇಸ್ ರಚಿಸಿ</translation> <translation id="2996809686854298943">URL ಅಗತ್ಯವಿದೆ</translation> <translation id="2997081575621687554">ತಮ್ಮ ಪುಟದಲ್ಲಿನ ಲಿಂಕ್ಗಳನ್ನು ಖಾಸಗಿಯಾಗಿ, ಮುಂಚಿತವಾಗಿ ಲೋಡ್ ಮಾಡಲು Google ಸೈಟ್ ವಿನಂತಿಸಿದಾಗ, ಕುಕೀಗಳನ್ನು ಬಳಸದೆ Google ಸರ್ವರ್ಗಳ ಮೂಲಕ Chrome, ಪುಟಗಳನ್ನು ಎನ್ಕ್ರಿಪ್ಟ್ ಮಾಡುತ್ತದೆ ಮತ್ತು ಮುಂಚಿತವಾಗಿ ಲೋಡ್ ಮಾಡುತ್ತದೆ. ಮುಂಚಿತವಾಗಿ ಲೋಡ್ ಮಾಡಲಾದ ಸೈಟ್ನಿಂದ ಇದು ನಿಮ್ಮ ಗುರುತನ್ನು ಮರೆಮಾಡುತ್ತದೆ.</translation> -<translation id="3003733539450769656">ಅಪಾಯಕಾರಿ ಘಟನೆಗಳು ಸಂಭವಿಸುವ ಮೊದಲು ನಿಮಗೆ ಎಚ್ಚರಿಕೆ ನೀಡುತ್ತದೆ</translation> <translation id="3006881078666935414">ಯಾವುದೇ ಬಳಕೆ ಡೇಟಾ ಇಲ್ಲ</translation> <translation id="301080557829842765">ಗೌಪ್ಯತೆ ಗೈಡ್</translation> <translation id="3016635187733453316">ಈ ಸಾಧನವು ಇಂಟರ್ನೆಟ್ಗೆ ಸಂಪರ್ಕಗೊಂಡಿರುವುದನ್ನು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಿ</translation> @@ -432,6 +429,7 @@ <translation id="3284510035090979597">ಪೂರ್ವಭಾವಿ ಸಹಾಯ</translation> <translation id="3285080554353377245">Chrome ಬಳಸುವ ಕುರಿತು ವೀಡಿಯೊಗಳು</translation> <translation id="3288003805934695103">ಪುಟ ಮರುಲೋಡ್ ಮಾಡಲಾಗುತ್ತಿದೆ</translation> +<translation id="3290249595466894471">ಹೊಸ ಬೆದರಿಕೆಗಳನ್ನು ಕಂಡುಹಿಡಿಯಲು ನೆರವಾಗುವುದಕ್ಕಾಗಿ, ಪುಟಗಳು, ಡೌನ್ಲೋಡ್ಗಳು, ವಿಸ್ತರಣೆಯ ಚಟುವಟಿಕೆ ಮತ್ತು ಸಿಸ್ಟಂ ಮಾಹಿತಿಯ ಸಣ್ಣ ಮಾದರಿಯನ್ನು ಸಹ ಕಳುಹಿಸುತ್ತದೆ</translation> <translation id="3297344142967351106">ಧ್ವನಿ ಸಹಾಯಕ</translation> <translation id="3303414029551471755">ವಿಷಯವನ್ನು ಡೌನ್ಲೊಡ್ ಮಾಡಲು ಮುಂದುವರಿಯುವುದೇ?</translation> <translation id="3334729583274622784">ಫೈಲ್ ವಿಸ್ತರಣೆಯನ್ನು ಬದಲಿಸುವುದೇ?</translation> @@ -636,7 +634,6 @@ <translation id="4558311620361989323">ವೆಬ್ಪುಟ ಶಾರ್ಟ್ಕಟ್ಗಳು</translation> <translation id="4561730552726921821">ನೋಂದಣಿ ಯಶಸ್ವಿಯಾಗಿದೆ</translation> <translation id="4561979708150884304">ಯಾವುದೇ ಸಂಪರ್ಕವಿಲ್ಲ</translation> -<translation id="4562008740775511591">ಕ್ರೋಮ್ ನಿಮಗೆ ಸಮಂಜಸವಾದ ಡೀಫಾಲ್ಟ್ ಸೆಟ್ಟಿಂಗ್ ಅನ್ನು ನೀಡುತ್ತದೆಯಾದರೂ, ನಿಮ್ಮ ಬ್ರೌಸಿಂಗ್ ಅಭ್ಯಾಸಗಳಿಗೆ ಅನುಗುಣವಾಗಿ ನೀವು ಅವುಗಳನ್ನು ಉತ್ತಮ ಬಳಕೆಗಾಗಿ ಕಸ್ಟಮೈಸ್ ಮಾಡಬಹುದು</translation> <translation id="4565377596337484307">ಪಾಸ್ವರ್ಡ್ ಮರೆಮಾಡಿ</translation> <translation id="4572422548854449519">ನಿರ್ವಹಿಸಲ್ಪಟ್ಟ ಖಾತೆಗೆ ಸೈನ್ ಇನ್ ಮಾಡಿ</translation> <translation id="4576892426230499203">ಬೇರೊಂದು ಪರಿಶೀಲನೆ ಆಯ್ಕೆಯನ್ನು ಪ್ರಯತ್ನಿಸಿ</translation> @@ -918,7 +915,6 @@ <translation id="604996488070107836">ಅಪರಿಚಿತ ದೋಷದ ಕಾರಣದಿಂದ <ph name="FILE_NAME" /> ಡೌನ್ಲೋಡ್ ವಿಫಲವಾಗಿದೆ.</translation> <translation id="605721222689873409">YY</translation> <translation id="6059830886158432458">ನಿಮ್ಮ ಕತೆಗಳು ಮತ್ತು ಚಟುವಟಿಕೆಯನ್ನು ಇಲ್ಲಿ ನಿರ್ವಹಿಸಿ</translation> -<translation id="6069177176307973611">ಗೌಪ್ಯತೆ ಮತ್ತು ಭದ್ರತಾ ಸೆಟ್ಟಿಂಗ್ಗಳನ್ನು ಪರಿಶೀಲಿಸಿ</translation> <translation id="6070730414166672373">ನಿಮ್ಮ ಬ್ಯಾಂಕ್ ಅನ್ನು ಸಂಪರ್ಕಿಸಲಾಗುತ್ತಿದೆ\u2026</translation> <translation id="6085886413119427067">ಸುರಕ್ಷಿತ ಕನೆಕ್ಷನ್ನ ಮೂಲಕ ವೆಬ್ಸೈಟ್ಗಳಿಗೆ ಕನೆಕ್ಟ್ ಮಾಡುವುದು ಹೇಗೆ ಎಂಬುದನ್ನು ನಿರ್ಣಯಿಸುತ್ತದೆ</translation> <translation id="6091413777268123602">ಪ್ರೈವೆಸಿ ಸ್ಯಾಂಡ್ಬಾಕ್ಸ್ ಪ್ರಯೋಗಗಳ ಮೂಲಕ, ಸೈಟ್ಗಳು ನಿಮ್ಮ ಡೇಟಾವನ್ನು ಕಡಿಮೆ ಬಳಸಿಕೊಂಡು ಅದೇ ಬ್ರೌಸಿಂಗ್ ಅನುಭವವನ್ನು ಒದಗಿಸಬಹುದು. ಅದರರ್ಥ ನಿಮಗಾಗಿ ಹೆಚ್ಚು ಗೌಪ್ಯತೆ ಮತ್ತು ಕಡಿಮೆ ಕ್ರಾಸ್-ಸೈಟ್ ಟ್ರ್ಯಾಕಿಂಗ್. ಹೊಸ ಪ್ರಯೋಗಗಳು ಪರೀಕ್ಷೆಗೆ ಸಿದ್ಧವಾಗುತ್ತಿದ್ದಂತೆ ಅವುಗಳನ್ನು ನಾವು ಸೇರಿಸುತ್ತೇವೆ.</translation> @@ -1039,6 +1035,7 @@ <translation id="6641780377503683465"><ph name="INTEREST" /> ಅನ್ನು ತೆಗೆದುಹಾಕಿ</translation> <translation id="6643016212128521049">ತೆರವುಗೊಳಿಸಿ</translation> <translation id="6645629752388991326">ಯಾವ ಸಾಧನಗಳು ಸೈನ್ ಇನ್ ಮಾಡಬಹುದು ಎಂಬುದನ್ನು ನಿಯಂತ್ರಿಸಲು ಈ ಸಾಧನವನ್ನು ಭದ್ರತಾ ಕೀಯಾಗಿ ಬಳಸಿ.</translation> +<translation id="6647441008198474441">ನೀವು ಮುಂದೆ ಯಾವ ಸೈಟ್ಗಳಿಗೆ ಭೇಟಿ ನೀಡಬಹುದು ಎಂಬುದನ್ನು ಊಹಿಸಲು ನೀವು ಭೇಟಿ ನೀಡುವ URL ಗಳನ್ನು Google ಗೆ ಕಳುಹಿಸಲಾಗುತ್ತದೆ</translation> <translation id="6648459603387803038">ನಿಮ್ಮ ನಿರ್ವಾಹಕರು ನಿಮ್ಮ ಬ್ರೌಸರ್ ಸೆಟ್ಟಿಂಗ್ಗಳನ್ನು ದೂರದಿಂದಲೇ ಬದಲಾಯಿಸಬಹುದು. ಈ ಸಾಧನದಲ್ಲಿನ ಚಟುವಟಿಕೆಯನ್ನು Chrome ನ ಹೊರಗೆ ಸಹ ನಿರ್ವಹಿಸಬಹುದು.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 ಮತ್ತು ಇನ್ನೂ <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}one{<ph name="CONTACT_PREVIEW" />\u2026 ಮತ್ತು ಇನ್ನೂ <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}other{<ph name="CONTACT_PREVIEW" />\u2026 ಮತ್ತು ಇನ್ನೂ <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}}</translation> <translation id="6649642165559792194">ಚಿತ್ರವನ್ನು ಪೂರ್ವವೀಕ್ಷಿಸಿ <ph name="BEGIN_NEW" />ಹೊಸದು<ph name="END_NEW" /></translation> @@ -1046,7 +1043,6 @@ <translation id="6659594942844771486">ಬ್ರೌಸರ್ ಟ್ಯಾಬ್</translation> <translation id="666731172850799929"><ph name="APP_NAME" /> ರಲ್ಲಿ ತೆರೆಯಿರಿ</translation> <translation id="6671495933530132209">ಚಿತ್ರವನ್ನು ನಕಲಿಸಿ</translation> -<translation id="6674044799624355221">ಹೊಸ ಬೆದರಿಕೆಗಳನ್ನು ಕಂಡುಹಿಡಿಯಲು ನೆರವಾಗುವುದಕ್ಕಾಗಿ, ಪುಟಗಳು, ಡೌನ್ಲೋಡ್ಗಳು, ವಿಸ್ತರಣೆಯ ಚಟುವಟಿಕೆ ಮತ್ತು ಸಿಸ್ಟಂ ಮಾಹಿತಿಯ ಸಣ್ಣ ಮಾದರಿಯನ್ನು ಸಹ ಕಳುಹಿಸುತ್ತದೆ</translation> <translation id="6674571176963658787">ಸಿಂಕ್ ಪ್ರಾರಂಭಿಸಲು, ನಿಮ್ಮ ಪಾಸ್ಫ್ರೇಸ್ ಅನ್ನು ನಮೂದಿಸಿ</translation> <translation id="6676840375528380067">ಈ ಸಾಧನದಿಂದ ನಿಮ್ಮ Chrome ಡೇಟಾವನ್ನು ತೆರವುಗೊಳಿಸುವುದೇ?</translation> <translation id="6684809838922667136">Chrome ಅನ್ನು ಉತ್ತಮವಾಗಿಸಿ</translation> @@ -1068,7 +1064,6 @@ <translation id="6802555630140434547">ವಿಂಡೋವನ್ನು ಮುಚ್ಚಲಾಗುವುದು</translation> <translation id="6811034713472274749">ವೀಕ್ಷಿಸಲು ಪುಟ ಸಿದ್ಧವಾಗಿದೆ</translation> <translation id="6813446258015311409">Chrome ಗೆ ಸೈನ್ ಇನ್ ಮಾಡಿ, ತೆರೆಯಲಾಗಿದೆ.</translation> -<translation id="6814033694018386318">ನೀವು Google ಜೊತೆಗೆ ಏನನ್ನು ಹಂಚಿಕೊಳ್ಳುತ್ತೀರಿ</translation> <translation id="6817747507826986771">ಈ ಪುಟವನ್ನು ತ್ವರಿತವಾಗಿ ಹಂಚಿಕೊಳ್ಳಿ. ಈ ಶಾರ್ಟ್ಕಟ್ ಅನ್ನು ಎಡಿಟ್ ಮಾಡಲು ಸ್ಪರ್ಶಿಸಿ ಮತ್ತು ಒತ್ತಿ ಹಿಡಿಯಿರಿ.</translation> <translation id="6819199143469632133">ಸಾಧನಗಳಾದ್ಯಂತ ನಿಮ್ಮ Google ವಿಷಯವನ್ನು ಪಡೆಯಲು, ಸೈನ್ ಇನ್ ಮಾಡಿ</translation> <translation id="6820686453637990663">CVC</translation> @@ -1163,6 +1158,7 @@ <translation id="7352939065658542140">ವೀಡಿಯೊ</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{ಆಯ್ಕೆಮಾಡಲಾದ 1 ಐಟಂ ಹಂಚಿಕೊಳ್ಳಿ}one{ಆಯ್ಕೆಮಾಡಲಾದ # ಐಟಂಗಳನ್ನು ಹಂಚಿಕೊಳ್ಳಿ}other{ಆಯ್ಕೆಮಾಡಲಾದ # ಐಟಂಗಳನ್ನು ಹಂಚಿಕೊಳ್ಳಿ}}</translation> <translation id="7359002509206457351">ಪಾವತಿ ವಿಧಾನಗಳನ್ನು ಪ್ರವೇಶಿಸಿ</translation> +<translation id="7363349185727752629">ನಿಮ್ಮ ಗೌಪ್ಯತೆಯ ಆಯ್ಕೆಗಳ ಮಾರ್ಗದರ್ಶಿ</translation> <translation id="7375125077091615385">ಪ್ರಕಾರ:</translation> <translation id="7376560087009844242">ಪುಟದಲ್ಲಿರುವ ಇನ್ನಷ್ಟು ಪಠ್ಯವನ್ನು ಸೇರಿಸುವ ಮೂಲಕ, ಹುಡುಕಲು ಸ್ಪರ್ಶಿಸಿ ಎಂಬುದನ್ನು ಬಳಸುವಾಗ ನೀವು ಉತ್ತಮ ಫಲಿತಾಂಶಗಳನ್ನು ನೋಡಬಹುದು. ಇದನ್ನು ಬದಲಾಯಿಸಲು ನೀವು ಯಾವಾಗ ಬೇಕಾದರೂ <ph name="BEGIN_LINK" />ಸೆಟ್ಟಿಂಗ್ಗಳಿಗೆ<ph name="END_LINK" /> ಭೇಟಿ ನೀಡಬಹುದು.</translation> <translation id="7379900596734708416">ಸೈಟ್ಗಳ ಡಾರ್ಕ್ ಥೀಮ್ ಲಭ್ಯವಿದೆ</translation> @@ -1262,6 +1258,7 @@ <translation id="7876243839304621966">ಎಲ್ಲವನ್ನೂ ತೆಗೆದುಹಾಕಿ</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{ನೀವು ಓದದಿರುವ <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> ಪುಟವನ್ನು ಹೊಂದಿದ್ದೀರಿ}one{ನೀವು ಓದದಿರುವ <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> ಪುಟಗಳನ್ನು ಹೊಂದಿದ್ದೀರಿ}other{ನೀವು ಓದದಿರುವ <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> ಪುಟಗಳನ್ನು ಹೊಂದಿದ್ದೀರಿ}}</translation> <translation id="7886917304091689118">Chrome ನಲ್ಲಿ ಚಾಲನೆಯಾಗುತ್ತಿದೆ</translation> +<translation id="7887174313503389866">ಪ್ರಮುಖ ಗೌಪ್ಯತೆ ಮತ್ತು ಭದ್ರತಾ ನಿಯಂತ್ರಣಗಳ ಮಾರ್ಗದರ್ಶಿಯನ್ನು ಪರಿಶೀಲಿಸಿ. ಹೆಚ್ಚಿನ ಆಯ್ಕೆಗಳಿಗಾಗಿ, ವೈಯಕ್ತಿಕ ಸೆಟ್ಟಿಂಗ್ಗಳಿಗೆ ಹೋಗಿ.</translation> <translation id="7887334752153342268">ನಕಲು</translation> <translation id="789763218334337857">Chrome ಬಳಸುವುದು ಹೇಗೆ</translation> <translation id="7903184275147100332">ಇದಕ್ಕೆ ಒಂದು ನಿಮಿಷ ಕಾಲಾವಕಾಶ ಬೇಕಾಗಬಹುದು</translation> @@ -1375,6 +1372,7 @@ <translation id="8445448999790540984">ಪಾಸ್ವರ್ಡ್ಗಳನ್ನು ಎಕ್ಸ್ಪೋರ್ಟ್ ಮಾಡಲು ಸಾಧ್ಯವಿಲ್ಲ</translation> <translation id="8446884382197647889">ಇನ್ನಷ್ಟು ತಿಳಿಯಿರಿ</translation> <translation id="8453310803815879010">Dino ಗೇಮ್ ಪ್ರಾರಂಭಿಸಿ</translation> +<translation id="8460448946170646641">ಪ್ರಮುಖ ಗೌಪ್ಯತೆ ಮತ್ತು ಭದ್ರತಾ ನಿಯಂತ್ರಣಗಳನ್ನು ಪರಿಶೀಲಿಸಿ</translation> <translation id="8461694314515752532">ನಿಮ್ಮ ಸ್ವಂತ ಸಿಂಕ್ ಪಾಸ್ಫ್ರೇಸ್ ಬಳಸಿಕೊಂಡು ಸಿಂಕ್ ಮಾಡಿದ ಡೇಟಾವನ್ನು ಎನ್ಕ್ರಿಪ್ಟ್ ಮಾಡಿ</translation> <translation id="8466613982764129868"><ph name="TARGET_DEVICE_NAME" /> ಸಾಧನವು ಇಂಟರ್ನೆಟ್ಗೆ ಸಂಪರ್ಕಗೊಂಡಿರುವುದನ್ನು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಿ</translation> <translation id="8473863474539038330">ವಿಳಾಸಗಳು ಮತ್ತು ಇನ್ನಷ್ಟು</translation> @@ -1420,6 +1418,7 @@ <translation id="8636825310635137004">ನಿಮ್ಮ ಇತರ ಸಾಧನಗಳಿಂದ ನಿಮ್ಮ ಟ್ಯಾಬ್ಗಳನ್ನು ಪಡೆದುಕೊಳ್ಳಲು, ಸಿಂಕ್ ಆನ್ ಮಾಡಿ.</translation> <translation id="8641930654639604085">ವಯಸ್ಕರ ಸೈಟ್ಗಳನ್ನು ನಿರ್ಬಂಧಿಸಲು ಪ್ರಯತ್ನಿಸಿ</translation> <translation id="864544049772947936">ವಿಂಡೋಗಳನ್ನು ನಿರ್ವಹಿಸಿ (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">ಅಪಾಯಕಾರಿ ಘಟನೆಗಳು ಸಂಭವಿಸುವ ಮೊದಲೇ, ಅವುಗಳನ್ನು ಪತ್ತೆಹಚ್ಚುತ್ತದೆ ಮತ್ತು ನಿಮಗೆ ಎಚ್ಚರಿಕೆ ನೀಡುತ್ತದೆ</translation> <translation id="8646467750715887511">ನೀವು ಪುಟಗಳನ್ನು ತೆರೆದ ಬಳಿಕವಷ್ಟೇ ಅವು ಲೋಡ್ ಆಗುತ್ತವೆ.</translation> <translation id="8655129584991699539">ನೀವು ಡೇಟಾವನ್ನು Chrome ಸೆಟ್ಟಿಂಗ್ಗಳಲ್ಲಿ ತೆರವುಗೊಳಿಸಬಹುದು</translation> <translation id="8659579665266920523">Chrome ಮೂಲಕ ಹುಡುಕಾಟ ಮಾಡುವುದು ಹೇಗೆ</translation> @@ -1432,7 +1431,6 @@ <translation id="867767487203716855">ಮುಂದಿನ ಅಪ್ಡೇಟ್</translation> <translation id="8683039184091909753">ಚಿತ್ರ</translation> <translation id="8683081248374354009">ಗುಂಪನ್ನು ರೀಸೆಟ್ ಮಾಡಿ</translation> -<translation id="8683526617475118045">ನಿಮಗೇನು ಸಿಗುತ್ತದೆ</translation> <translation id="869891660844655955">ಅವಧಿ ಮುಗಿಯುವ ದಿನಾಂಕ</translation> <translation id="8699120352855309748">ಈ ಭಾಷೆಗಳನ್ನು ಅನುವಾದಿಸುವ ಪ್ರಸ್ತಾಪ ಮಾಡಬೇಡಿ</translation> <translation id="8712637175834984815">ಅರ್ಥವಾಯಿತು</translation> @@ -1516,7 +1514,6 @@ <translation id="9148126808321036104">ಪುನಃ ಸೈನ್ ಇನ್ ಆಗಿ</translation> <translation id="9158770349521403363">ವಿಷಯವನ್ನು ಮಾತ್ರ ಹಂಚಿಕೊಳ್ಳಿ</translation> <translation id="9159716826369098114">ಹೊಸ ಹಿನ್ನೆಲೆ ಟ್ಯಾಬ್ ಗುಂಪಿನ ರೀತಿ <ph name="TAB_COUNT" /> ಟ್ಯಾಬ್ಗಳೊಂದಿಗೆ ಟ್ಯಾಬ್ ಗುಂಪನ್ನು ಮರುಸ್ಥಾಪಿಸಿ.</translation> -<translation id="916446198114569890">ನೀವು ಭೇಟಿ ನೀಡುವ URL ಗಳನ್ನು ನಿಮ್ಮ Google ಖಾತೆಯಲ್ಲಿ ಉಳಿಸಲಾಗುತ್ತದೆ</translation> <translation id="9169507124922466868">ನ್ಯಾವಿಗೇಷನ್ ಇತಿಹಾಸವು ಅರ್ಧ-ತೆರೆದಿದೆ</translation> <translation id="9187955620966010988">ಪ್ರತಿಕ್ರಿಯೆಯನ್ನು ಹೊಂದಿಸಲಾಗಿದೆ</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{1 ನಿಮಿಷದ ಹಿಂದೆ ಪರಿಶೀಲಿಸಲಾಗಿದೆ}one{# ನಿಮಿಷಗಳ ಹಿಂದೆ ಪರಿಶೀಲಿಸಲಾಗಿದೆ}other{# ನಿಮಿಷಗಳ ಹಿಂದೆ ಪರಿಶೀಲಿಸಲಾಗಿದೆ}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_ko.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_ko.xtb index e5cf9ce..9b983c8f 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_ko.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_ko.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">이 사이트 번역 옵션 제공 안 함</translation> <translation id="1145536944570833626">기존 데이터 삭제</translation> <translation id="1146678959555564648">VR 시작</translation> -<translation id="114825011539563458">가장 중요한 개인 정보 보호 및 보안 제어 기능을 한곳에서 설정</translation> <translation id="1149401351239820326">유효기간 월</translation> <translation id="1150263420752757504"><ph name="APP_NAME" /> 앱이 Chrome에서 열립니다. 계속하면 <ph name="BEGIN_LINK1" />Google 서비스 약관<ph name="END_LINK1" /> 및 <ph name="BEGIN_LINK2" />Chrome 및 ChromeOS 추가 서비스 약관<ph name="END_LINK2" />에 동의하는 것으로 간주됩니다.</translation> <translation id="1154704303112745282">오프라인에서 사용할 수 없는 페이지: <ph name="VIOLATED_URL" /></translation> @@ -170,6 +169,7 @@ <translation id="189358972401248634">다른 언어</translation> <translation id="1894023287452300670">여기에서 가격을 추적하세요.</translation> <translation id="1900260903084164610">계속하면 <ph name="BEGIN_TOS_LINK" />서비스 약관<ph name="END_TOS_LINK" />에 동의하는 것으로 간주됩니다.</translation> +<translation id="1904580727789512086">내가 방문한 URL이 Google 계정에 저장됩니다.</translation> <translation id="1910950723001426294">공유 옵션 목록이 닫혔습니다.</translation> <translation id="1918175104945982129">어시스턴트 음성 검색 동의 UI가 절반 높이로 열림</translation> <translation id="1919130412786645364">Chrome 로그인 허용</translation> @@ -194,7 +194,6 @@ <translation id="2000419248597011803">검색주소창 및 검색창의 검색어 및 일부 쿠키를 기본 검색엔진에 전송</translation> <translation id="200114059308480249">Google 검색어에 주변 텍스트를 포함하시겠습니까?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{파일 #개}other{파일 #개}}</translation> -<translation id="2020309681647789787">동기화된 모든 기기에 방문 기록이 유지되므로 하던 작업을 이어서 할 수 있습니다.</translation> <translation id="2021896219286479412">전체화면 사이트 컨트롤</translation> <translation id="2038563949887743358">데스크톱 버전으로 보기 사용 설정</translation> <translation id="204321170514947529"><ph name="APP_NAME" />도 Chrome에서 데이터를 보유하고 있습니다</translation> @@ -280,7 +279,6 @@ <translation id="2527779675047087889">클립보드 내용 숨기기</translation> <translation id="2532336938189706096">웹 보기</translation> <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" />개 항목 삭제함</translation> -<translation id="2534582914273493287">내가 방문한 URL이 Google에 전송됩니다.</translation> <translation id="2536728043171574184">이 페이지의 오프라인 사본 보는 중</translation> <translation id="2546283357679194313">쿠키 및 사이트 데이터</translation> <translation id="2549516196460093976">이 태블릿을 사용하여 이 QR 코드를 표시하는 컴퓨터에 로그인할 수 있습니다.</translation> @@ -372,7 +370,6 @@ <translation id="2996291259634659425">암호 만들기</translation> <translation id="2996809686854298943">URL이 필요합니다.</translation> <translation id="2997081575621687554">Google 사이트에서 페이지에 있는 링크를 비공개로 미리 로드해 달라고 요청하면 Chrome은 페이지를 암호화한 다음 쿠키를 사용하지 않고 Google 서버를 통해 미리 로드합니다. 이렇게 하면 미리 로드된 사이트에서 사용자의 신원을 숨길 수 있습니다.</translation> -<translation id="3003733539450769656">위험한 이벤트 징후를 감지하여 미리 경고합니다.</translation> <translation id="3006881078666935414">사용 데이터 없음</translation> <translation id="301080557829842765">개인 정보 보호 가이드</translation> <translation id="3016635187733453316">이 기기가 인터넷에 연결되어 있는지 확인하세요.</translation> @@ -432,6 +429,7 @@ <translation id="3284510035090979597">능동적 지원</translation> <translation id="3285080554353377245">Chrome 사용 방법에 관한 동영상</translation> <translation id="3288003805934695103">페이지 새로고침</translation> +<translation id="3290249595466894471">또한 페이지, 다운로드 항목, 확장 프로그램 활동, 시스템 정보의 표본을 일부 전송하여 새로운 위협을 발견하는 데 도움을 줍니다.</translation> <translation id="3297344142967351106">음성 지원</translation> <translation id="3303414029551471755">콘텐츠를 다운로드하시겠습니까?</translation> <translation id="3334729583274622784">파일 확장자를 변경하시겠습니까?</translation> @@ -637,7 +635,6 @@ <translation id="4558311620361989323">웹페이지 단축키</translation> <translation id="4561730552726921821">등록 성공</translation> <translation id="4561979708150884304">연결되지 않음</translation> -<translation id="4562008740775511591">Chrome에서는 합당한 기본값을 제공하나 사용자는 본인의 인터넷 사용 습관에 맞게 맞춤설정할 수 있습니다.</translation> <translation id="4565377596337484307">비밀번호 숨김</translation> <translation id="4572422548854449519">관리 계정에 로그인</translation> <translation id="4576892426230499203">다른 인증 수단을 사용해 보세요.</translation> @@ -919,7 +916,6 @@ <translation id="604996488070107836">알 수 없는 오류로 인해 <ph name="FILE_NAME" /> 다운로드에 실패했습니다.</translation> <translation id="605721222689873409">YY</translation> <translation id="6059830886158432458">여기에서 스토리 및 활동을 관리하세요.</translation> -<translation id="6069177176307973611">개인 정보 보호 및 보안 설정 검토</translation> <translation id="6070730414166672373">은행 연결 중\u2026</translation> <translation id="6085886413119427067">보안 연결을 통해 웹사이트에 연결하는 방법을 지정합니다.</translation> <translation id="6091413777268123602">개인 정보 보호 샌드박스 무료 체험 기간 동안에는 사이트에서 사용자의 데이터를 더 적게 사용하면서도 동일한 탐색 환경을 제공할 수 있습니다. 즉, 사용자의 개인 정보가 보다 안전하게 보호되며 크로스 사이트 추적도 줄어듭니다. 테스트 준비를 마친 사이트가 늘어나면 새로운 체험 프로그램이 추가될 예정입니다.</translation> @@ -1040,6 +1036,7 @@ <translation id="6641780377503683465"><ph name="INTEREST" /> 삭제</translation> <translation id="6643016212128521049">삭제</translation> <translation id="6645629752388991326">이 기기를 보안 키로 사용하여 로그인할 수 있는 기기를 제어합니다.</translation> +<translation id="6647441008198474441">다음에 방문할 사이트를 예측하기 위해 내가 방문한 URL이 Google에 전송됩니다.</translation> <translation id="6648459603387803038">관리자가 원격으로 브라우저 설정을 변경할 수 있습니다. 이 기기의 활동은 Chrome 외부에서도 관리할 수 있습니다.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" /> 외 <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />개}other{<ph name="CONTACT_PREVIEW" /> 외 <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />개}}</translation> <translation id="6649642165559792194">이미지 미리보기 표시 <ph name="BEGIN_NEW" />새로운 기능<ph name="END_NEW" /></translation> @@ -1047,7 +1044,6 @@ <translation id="6659594942844771486">탭</translation> <translation id="666731172850799929"><ph name="APP_NAME" />에서 열기</translation> <translation id="6671495933530132209">이미지 복사</translation> -<translation id="6674044799624355221">페이지, 다운로드 항목, 확장 프로그램 활동, 시스템 정보의 표본을 일부 전송하여 새로운 위협을 발견하는 데 도움을 줍니다.</translation> <translation id="6674571176963658787">동기화를 시작하려면 암호를 입력하세요.</translation> <translation id="6676840375528380067">기기에서 Chrome 데이터를 삭제하시겠습니까?</translation> <translation id="6684809838922667136">Chrome 개선에 참여</translation> @@ -1069,7 +1065,6 @@ <translation id="6802555630140434547">창이 닫힙니다.</translation> <translation id="6811034713472274749">페이지를 볼 수 있음</translation> <translation id="6813446258015311409">Chrome에 로그인, 계정 선택 도구가 열렸습니다.</translation> -<translation id="6814033694018386318">Google과 공유되는 정보</translation> <translation id="6817747507826986771">이 페이지를 빠르게 공유합니다. 바로가기를 수정하려면 길게 터치하세요.</translation> <translation id="6819199143469632133">여러 기기에서 Google 서비스를 사용하려면 로그인하세요.</translation> <translation id="6820686453637990663">CVC</translation> @@ -1164,6 +1159,7 @@ <translation id="7352939065658542140">동영상</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{선택한 1개 항목 공유}other{선택한 #개 항목 공유}}</translation> <translation id="7359002509206457351">결제 수단 액세스</translation> +<translation id="7363349185727752629">개인 정보 보호 선택 가이드</translation> <translation id="7375125077091615385">유형:</translation> <translation id="7376560087009844242">페이지 텍스트를 더 많이 포함하면 터치하여 검색 기능을 사용할 때 더 나은 검색결과를 확인할 수 있습니다. 이를 변경하려면 언제든지 <ph name="BEGIN_LINK" />설정<ph name="END_LINK" />을 방문하세요.</translation> <translation id="7379900596734708416">사이트에 어두운 테마 적용 가능</translation> @@ -1263,6 +1259,7 @@ <translation id="7876243839304621966">모두 삭제</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{읽지 않은 페이지가 <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" />개 있습니다.}other{읽지 않은 페이지가 <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" />개 있습니다.}}</translation> <translation id="7886917304091689118">Chrome에서 실행 중</translation> +<translation id="7887174313503389866">주요 개인 정보 보호 및 보안 제어 기능을 둘러보세요. 추가 옵션을 알아보려면 개별 설정으로 이동합니다</translation> <translation id="7887334752153342268">새 탭에서 보기</translation> <translation id="789763218334337857">Chrome 사용 방법</translation> <translation id="7903184275147100332">시간이 다소 걸릴 수 있습니다.</translation> @@ -1376,6 +1373,7 @@ <translation id="8445448999790540984">비밀번호를 내보낼 수 없음</translation> <translation id="8446884382197647889">자세히 알아보기</translation> <translation id="8453310803815879010">공룡 게임 시작</translation> +<translation id="8460448946170646641">주요 개인 정보 보호 및 보안 제어 기능 검토</translation> <translation id="8461694314515752532">나만의 동기화 암호로 동기화된 데이터 암호화</translation> <translation id="8466613982764129868"><ph name="TARGET_DEVICE_NAME" />이(가) 인터넷에 연결되어 있는지 확인하세요.</translation> <translation id="8473863474539038330">주소 및 기타</translation> @@ -1421,6 +1419,7 @@ <translation id="8636825310635137004">다른 기기에서 탭을 가져오려면 동기화를 사용 설정하세요.</translation> <translation id="8641930654639604085">성인용 사이트 차단 시도</translation> <translation id="864544049772947936">창 관리(<ph name="INSTANCE_COUNTS" />개)</translation> +<translation id="8645920082661222035">위험한 이벤트가 발생하기 전에 이를 예측하여 알립니다.</translation> <translation id="8646467750715887511">사용자가 페이지를 열어야 페이지가 로드됩니다.</translation> <translation id="8655129584991699539">Chrome 설정에서 데이터를 삭제할 수 있습니다.</translation> <translation id="8659579665266920523">Chrome으로 검색하는 방법</translation> @@ -1433,7 +1432,6 @@ <translation id="867767487203716855">다음 업데이트</translation> <translation id="8683039184091909753">이미지</translation> <translation id="8683081248374354009">그룹 재설정</translation> -<translation id="8683526617475118045">사용 설정했을 때의 이점</translation> <translation id="869891660844655955">유효기간</translation> <translation id="8699120352855309748">번역할지 묻지 않을 언어</translation> <translation id="8712637175834984815">확인</translation> @@ -1517,7 +1515,6 @@ <translation id="9148126808321036104">다시 로그인</translation> <translation id="9158770349521403363">콘텐츠만 공유</translation> <translation id="9159716826369098114">탭 <ph name="TAB_COUNT" />개의 탭 그룹을 새 백그라운드 탭 그룹으로 복원합니다.</translation> -<translation id="916446198114569890">방문한 URL이 Google 계정에 저장됩니다.</translation> <translation id="9169507124922466868">탐색 기록이 절반 높이로 열림</translation> <translation id="9187955620966010988">반응 조정됨</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{1분 전에 확인됨}other{#분 전에 확인됨}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_ky.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_ky.xtb index 62f2b05d..7578e38 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_ky.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_ky.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">Төмөнкү сайттарды которуу сунушталбасын</translation> <translation id="1145536944570833626">Учурдагы дайындарды жок кылуу.</translation> <translation id="1146678959555564648">VR режимине кирүү</translation> -<translation id="114825011539563458">Эң маанилүү купуялык жана коопсуздукту көзөмөлдөө каражаттары бир жерде</translation> <translation id="1149401351239820326">Колдонуу мөөнөтү аяктаган ай</translation> <translation id="1150263420752757504"><ph name="APP_NAME" /> Chrome'до ачылат. Улантуу менен, <ph name="BEGIN_LINK1" />Google'дун Тейлөө шарттарына<ph name="END_LINK1" /> жана <ph name="BEGIN_LINK2" />Google Chrome менен ChromeOS'тун Кошумча Тейлөө шарттарына<ph name="END_LINK2" /> макулдугуңузду билдиресиз.</translation> <translation id="1154704303112745282">Барак оффлайнда жеткиликсиз: <ph name="VIOLATED_URL" /></translation> @@ -170,6 +169,7 @@ <translation id="189358972401248634">Башка тилдер</translation> <translation id="1894023287452300670">Баасына бул жерден көз сала аласыз</translation> <translation id="1900260903084164610">Улантуу менен, <ph name="BEGIN_TOS_LINK" />Тейлөө шарттарына<ph name="END_TOS_LINK" /> макулдугуңузду билдиресиз.</translation> +<translation id="1904580727789512086">Сиз кирген URL даректери Google аккаунтуңузга сакталат</translation> <translation id="1910950723001426294">Бөлүшүү параметрлеринин тизмеси жабылды.</translation> <translation id="1918175104945982129">Жардамчыга айтып издөөгө уруксат берүү интерфейсинин жарымы ачылды</translation> <translation id="1919130412786645364">Chrome'го кирүүгө уруксат берүү</translation> @@ -194,7 +194,6 @@ <translation id="2000419248597011803">Дарек тилкесиндеги жана издөө кутучасындагы издөөлөрдү жана айрым cookie файлдарын демейки издөө тутумуна жөнөтөт</translation> <translation id="200114059308480249">Google'да издегенде көбүрөөк текст камтылсынбы?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# файл}other{# файл}}</translation> -<translation id="2020309681647789787">Бардык шайкештирилген түзмөктөрүңүздө таржымал күйгүзүлөт, андыктан ишиңизди токтогон жериңизден уланта аласыз</translation> <translation id="2021896219286479412">Сайтты толук экран режиминде көзөмөлдөө</translation> <translation id="2038563949887743358">Иш тактасынын сайтындагы суроо-талапты күйгүзүү</translation> <translation id="204321170514947529"><ph name="APP_NAME" /> колдонмосунун дайындары Chrome'до дагы бар</translation> @@ -280,7 +279,6 @@ <translation id="2527779675047087889">Алмашуу буфериндеги мазмундарды жашыруу</translation> <translation id="2532336938189706096">Желе көрүнүшү</translation> <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> нерсе өчүрүлдү</translation> -<translation id="2534582914273493287">Сиз баш баккан URL даректери Google'га жөнөтүлүп турат</translation> <translation id="2536728043171574184">Бул барактын оффлайндагы көчүрмөсү көрсөтүлүүдө</translation> <translation id="2546283357679194313">Кукилер жана сайттын дайындары</translation> <translation id="2549516196460093976">Бул планшет менен ушул QR коду көрүнүп турган компьютерге кире аласыз.</translation> @@ -372,7 +370,6 @@ <translation id="2996291259634659425">Купуя сөз айкашын түзүү</translation> <translation id="2996809686854298943">URL талап кылынат</translation> <translation id="2997081575621687554">Google сайты барактагы шилтемелерди алдын ала жүктөөнү суранса, Chrome барактарды шифрлеп, Google'дун серверлери аркылуу алдын ала жүктөйт (cookie файлдарысыз). Ушуну менен өздүгүңүз тууралуу маалымат алдын ала жүктөлгөн сайттан жашырылат.</translation> -<translation id="3003733539450769656">Кооптуу нерселер орун алганга чейин сизге кабарлап турат</translation> <translation id="3006881078666935414">Колдонуу дайындары жок</translation> <translation id="301080557829842765">Купуялык жетектемеси</translation> <translation id="3016635187733453316">Бул түзмөк интернетке туташып турганын текшериңиз</translation> @@ -432,6 +429,7 @@ <translation id="3284510035090979597">Керектүү учурда жардам алуу</translation> <translation id="3285080554353377245">Chrome'ду кантип колдонуу жөнүндө видеолор</translation> <translation id="3288003805934695103">Баракты кайра жүктөп көрүңүз</translation> +<translation id="3290249595466894471">Барактардын чакан үлгүлөрүн, жүктөлүп алынган файлдарды, кеңейтүүлөрдүн колдонулушу тууралуу маалыматты жана тутум маалыматын жөнөтүп, жаңы коркунучтарды аныктоого жардам берет</translation> <translation id="3297344142967351106">Үн жардамчысы</translation> <translation id="3303414029551471755">Мазмун жүктөлүп алына берсинби?</translation> <translation id="3334729583274622784">Файлдын кеңейтүүсү өчүрүлсүнбү?</translation> @@ -637,7 +635,6 @@ <translation id="4558311620361989323">Веб баракчасынын кыска жолдору</translation> <translation id="4561730552726921821">Ийгиликтүү катталды</translation> <translation id="4561979708150884304">Интернет жок</translation> -<translation id="4562008740775511591">Chrome'дун демейки жөндөөлөрү ыңгайлуу, бирок аны мындан да ыңгайлаштырып алсаңыз болот</translation> <translation id="4565377596337484307">Сырсөздү жашыруу</translation> <translation id="4572422548854449519">Башкарылган аккаунтка кириңиз</translation> <translation id="4576892426230499203">Башка текшерүү жолун колдонуп көрүңүз</translation> @@ -919,7 +916,6 @@ <translation id="604996488070107836">Белгисиз катадан улам <ph name="FILE_NAME" /> жүктөлүп алынбай калды.</translation> <translation id="605721222689873409">ЖЖ</translation> <translation id="6059830886158432458">Окуяларыңызды жана аракеттериңизди бул жерден көзөмөлдөңүз</translation> -<translation id="6069177176307973611">Купуялык жана коопсуздук жөндөөлөрүн карап чыгуу</translation> <translation id="6070730414166672373">Банк менен байланыш түзүлүүдө\u2026</translation> <translation id="6085886413119427067">Вебсайттарга кантип коопсуз туташуу керек экенин аныктайт</translation> <translation id="6091413777268123602">Privacy Sandbox'тун сыноо мезгилдери аркылуу сайттар азыраак маалыматыңызды колдонуп, бирдей карап чыгуу мүмкүнчүлүгүн бере алат. Анын жардамы менен купуялыгыңыз жакшыраак корголуп, башка сайттар азыраак көз салышат. Сыноого даяр болгон жаңы версияларды кошуп турабыз.</translation> @@ -1040,6 +1036,7 @@ <translation id="6641780377503683465"><ph name="INTEREST" /> өчүрүү</translation> <translation id="6643016212128521049">Тазалоо</translation> <translation id="6645629752388991326">Бул түзмөктү коопсуздук ачкычы катары колдонуп, аккаунтка кайсы түзмөктөр кире аларын көзөмөлдөңүз.</translation> +<translation id="6647441008198474441">Кийин кайсы сайттарга кирериңизди болжолдоо үчүн сиз баш баккан URL даректери Google'га жөнөтүлүп турат</translation> <translation id="6648459603387803038">Администраторуңуз серепчини алыстан жөндөй алат. Бул түзмөктө аткарылган аракеттер Chrome'дон тышкары да башкарылышы мүмкүн.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 жана дагы <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}other{<ph name="CONTACT_PREVIEW" />\u2026 жана дагы <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}}</translation> <translation id="6649642165559792194">Сүрөттү алдын ала көрүү <ph name="BEGIN_NEW" />Жаңы<ph name="END_NEW" /></translation> @@ -1047,7 +1044,6 @@ <translation id="6659594942844771486">Өтмөк</translation> <translation id="666731172850799929">Төмөнкүдө ачуу <ph name="APP_NAME" /></translation> <translation id="6671495933530132209">Сүрөттү көчүрүү</translation> -<translation id="6674044799624355221">Барактардын чакан үлгүлөрүн, жүктөлүп алынган файлдарды, кеңейтүүлөрдүн аракеттерин жана тутум маалыматын жөнөтүп, жаңы коркунучтарды аныктоого жардам берет</translation> <translation id="6674571176963658787">Шайкештирүүнү баштоо үчүн сыр сүйлөмүңүздү киргизиңиз</translation> <translation id="6676840375528380067">Chrome'догу дайын-даректериңиз бул түзмөктөн өчүрүлсүнбү?</translation> <translation id="6684809838922667136">Chrome'ду жакшыртууга жардам бериңиз</translation> @@ -1069,7 +1065,6 @@ <translation id="6802555630140434547">Терезе жабылат</translation> <translation id="6811034713472274749">Барак карап чыгууга даяр</translation> <translation id="6813446258015311409">Chrome'го кириңиз. Ачылды.</translation> -<translation id="6814033694018386318">Google менен эмнелерди бөлүшөсүз</translation> <translation id="6817747507826986771">Бул баракты ыкчам бөлүшүү. Бул ыкчам баскычты түзөтүү үчүн коё бербей басып туруңуз.</translation> <translation id="6819199143469632133">Google'дагы нерселерди бардык түзмөктөрүңүздө колдонуу үчүн аккаунтуңузга кириңиз</translation> <translation id="6820686453637990663">CVC</translation> @@ -1164,6 +1159,7 @@ <translation id="7352939065658542140">ВИДЕО</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{Тандалган 1 нерсени бөлүшүү}other{Тандалган # нерсени бөлүшүү}}</translation> <translation id="7359002509206457351">Төлөм ыкмаларын көрүү</translation> +<translation id="7363349185727752629">Купуялык тандоолору боюнча жетектеме</translation> <translation id="7375125077091615385">Түрү:</translation> <translation id="7376560087009844242">Барактагы көбүрөөк текст камтылса, тийип издегенде жакшыраак натыйжалар көрсөтүлүшү мүмкүн. Муну <ph name="BEGIN_LINK" />жөндөөлөрдөн<ph name="END_LINK" /> каалаган убакта өзгөртө аласыз.</translation> <translation id="7379900596734708416">Сайттар үчүн Караңгы тема жеткиликтүү</translation> @@ -1263,6 +1259,7 @@ <translation id="7876243839304621966">Баарын алып салуу</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{<ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> барак окула элек}other{<ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> барак окула элек}}</translation> <translation id="7886917304091689118">Chrome'до иштеп жатат</translation> +<translation id="7887174313503389866">Негизги купуялык жана коопсуздукту көзөмөлдөө каражаттары тууралуу коштомо. Кошумча параметрлерди көрүү үчүн жеке жөндөөлөргө өтүңүз.</translation> <translation id="7887334752153342268">Көчүрмөлөө</translation> <translation id="789763218334337857">Chrome'ду кантип колдонуу керек</translation> <translation id="7903184275147100332">Бир аз убакыт талап кылынышы мүмкүн</translation> @@ -1376,6 +1373,7 @@ <translation id="8445448999790540984">Сырсөздөр экспорттолбой жатат</translation> <translation id="8446884382197647889">Көбүрөөк билүү</translation> <translation id="8453310803815879010">Динозавр оюнун ойноп баштоо</translation> +<translation id="8460448946170646641">Негизги купуялык жана коопсуздукту көзөмөлдөө каражаттарын карап көрүңүз</translation> <translation id="8461694314515752532">Шайкештирилген дайындарды өзүңүздүн шайкештирүүчү купуя сөз айкашыңыз менен шифрлеңиз</translation> <translation id="8466613982764129868"><ph name="TARGET_DEVICE_NAME" /> интернетке туташып турганын текшериңиз</translation> <translation id="8473863474539038330">Даректер жана башкалар</translation> @@ -1421,6 +1419,7 @@ <translation id="8636825310635137004">Өтмөктөрүңүздү башка түзмөктөрүңүздөн алуу үчүн шайкештирүүнү күйгүзүңүз.</translation> <translation id="8641930654639604085">Чоң кишилерге ылайыктуу сайттарга кирүүгө бөгөт коюуга аракет кылуу</translation> <translation id="864544049772947936">Терезелерди башкаруу (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">Кооптуу нерселерди божомолдоп, алар орун алганга чейин сизге кабарлап турат</translation> <translation id="8646467750715887511">Барактар ачылгандан кийин гана жүктөлөт.</translation> <translation id="8655129584991699539">Бул дайындарды Chrome'дун жөндөөлөрүнөн тазаласаңыз болот</translation> <translation id="8659579665266920523">Chrome менен кантип издөө керек</translation> @@ -1433,7 +1432,6 @@ <translation id="867767487203716855">Кийинки жаңыртуу</translation> <translation id="8683039184091909753">сүрөт</translation> <translation id="8683081248374354009">Топту баштапкы абалга келтирүү</translation> -<translation id="8683526617475118045">Кандай артыкчылыктарга ээ болосуз</translation> <translation id="869891660844655955">Мөөнөтү аяктай турган күн</translation> <translation id="8699120352855309748">Төмөнкү тилдерди которуу сунушталбасын</translation> <translation id="8712637175834984815">Түшүндүм</translation> @@ -1517,7 +1515,6 @@ <translation id="9148126808321036104">Кайра кириңиз</translation> <translation id="9158770349521403363">Мазмунду гана бөлүшүү</translation> <translation id="9159716826369098114"><ph name="TAB_COUNT" /> өтмөктүн өтмөктөр тобун фондогу жаңы өтмөктөр тобу катары калыбына келтирүү.</translation> -<translation id="916446198114569890">Сиз кирген URL даректери Google аккаунтуңузга сакталат</translation> <translation id="9169507124922466868">Чабыттоо таржымалынын жарымы жабык</translation> <translation id="9187955620966010988">Реакция туураланды</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{1 мүнөт мурда текшерилди}other{# мүнөт мурда текшерилди}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_lo.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_lo.xtb index 2468f2d..037eca45 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_lo.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_lo.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">ບໍ່ສະເໜີແປເວັບໄຊເຫຼົ່ານີ້</translation> <translation id="1145536944570833626">ລຶບຂໍ້ມູນທີ່ມີຢູ່.</translation> <translation id="1146678959555564648">ປ້ອນ VR</translation> -<translation id="114825011539563458">ການຄວບຄຸມຄວາມເປັນສ່ວນຕົວ ແລະ ຄວາມປອດໄພທີ່ສຳຄັນທີ່ສຸດໃນບ່ອນດຽວ</translation> <translation id="1149401351239820326">ເດືອນໝົດອາຍຸ</translation> <translation id="1150263420752757504"><ph name="APP_NAME" /> ຈະເປີດໃນ Chrome. ໂດຍການສືບຕໍ່, ແມ່ນຖືວ່າທ່ານຍອມຮັບ <ph name="BEGIN_LINK1" />ຂໍ້ກຳນົດບໍລິການ Google<ph name="END_LINK1" /> ແລະ <ph name="BEGIN_LINK2" />ຂໍ້ກຳນົດບໍລິການເພີ່ມເຕີມ Google Chrome ແລະ ChromeOS<ph name="END_LINK2" />.</translation> <translation id="1154704303112745282">ໜ້າບໍ່ມີໃຫ້ແບບອອບລາຍ: <ph name="VIOLATED_URL" /></translation> @@ -108,6 +107,7 @@ <translation id="1488775391433859242">ທ່ານສາມາດໃຊ້ໂທລະສັບນີ້ເພື່ອເຂົ້າສູ່ລະບົບຢູ່ຄອມພິວເຕີທີ່ສະແດງລະຫັດ QR ນີ້ໄດ້.</translation> <translation id="1492417797159476138">ທ່ານໄດ້ບັນທຶກຊື່ຜູ້ໃຊ້ນີ້ສຳລັບເວັບໄຊນີ້ຢູ່ກ່ອນແລ້ວ</translation> <translation id="1493287004536771723">ທ່ານກຳລັງຕິດຕາມ <ph name="SITE_NAME" /> ຢູ່</translation> +<translation id="1502010315804028179">ເພື່ອຈັດການລະຫັດຜ່ານຂອງທ່ານ, ໃຫ້ອັບເດດບໍລິການ Google Play</translation> <translation id="1506061864768559482">ເຄື່ອງຈັກຄົ້ນຫາ</translation> <translation id="1513352483775369820">ບຸກມາກສ໌ ແລະປະຫວັດເວັບ</translation> <translation id="1513814250881909472">ຊິ້ງຂໍ້ມູນເພື່ອໃຊ້ແຖບຂອງທ່ານຈາກອຸປະກອນອື່ນຂອງທ່ານ</translation> @@ -169,6 +169,7 @@ <translation id="189358972401248634">ພາສາອື່ນໆ</translation> <translation id="1894023287452300670">ຕິດຕາມລາຄາຢູ່ບ່ອນນີ້</translation> <translation id="1900260903084164610">ໂດຍການດຳເນີນການຕໍ່, ແມ່ນຖືວ່າທ່ານຍອມຮັບ <ph name="BEGIN_TOS_LINK" />ຂໍ້ກຳນົດບໍລິການ<ph name="END_TOS_LINK" />.</translation> +<translation id="1904580727789512086">URL ທີ່ທ່ານເຂົ້ານັ້ນຖືກບັນທຶກໄປໃສ່ບັນຊີ Google ທ່ານແລ້ວ</translation> <translation id="1910950723001426294">ປິດລາຍຊື່ຂອງຕົວເລືອກການແບ່ງປັນແລ້ວ.</translation> <translation id="1918175104945982129">ສ່ວນຕິດຕໍ່ຜູ້ໃຊ້ສຳລັບຄຳຍິນຍອມການຊອກຫາດ້ວຍສຽງຂອງຜູ້ຊ່ວຍທີ່ເປີດຢູ່ທີ່ຄວາມສູງເຄິ່ງຈໍ.</translation> <translation id="1919130412786645364">ອະນຸຍາດການເຂົ້າສູ່ລະບົບ Chrome</translation> @@ -193,7 +194,6 @@ <translation id="2000419248597011803">ສົ່ງບາງຄຸກກີ້ ແລະ ການຊອກຫາຈາກແຖບທີ່ຢູ່ ແລະ ກ່ອງຊອກຫາໄປໃຫ້ໂປຣແກຣມຊອກຫາເລີ່ມຕົ້ນຂອງທ່ານ</translation> <translation id="200114059308480249">ຮວມຂໍ້ຄວາມທີ່ຢູ່ອ້ອມຂ້າງໃນການຊອກຫາ Google ບໍ?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# ໄຟລ໌}other{# ໄຟລ໌}}</translation> -<translation id="2020309681647789787">ທ່ານຈະສາມາດໃຊ້ປະຫວັດຂອງທ່ານໄດ້ຢູ່ອຸປະກອນທີ່ຊິ້ງຂໍ້ມູນແລ້ວທັງໝົດຂອງທ່ານ, ເພື່ອໃຫ້ທ່ານສາມາດສືບຕໍ່ສິ່ງທີ່ທ່ານກຳລັງເຮັດໄດ້</translation> <translation id="2021896219286479412">ການຄວບຄຸມເວັບໄຊແບບເຕັມຈໍ</translation> <translation id="2038563949887743358">ເປີດຂໍເວັບໄຊທ໌ເດັສທັອບ</translation> <translation id="204321170514947529"><ph name="APP_NAME" />ຍັງມີຂໍ້ມູນໃນ Chrome ນຳ</translation> @@ -279,7 +279,6 @@ <translation id="2527779675047087889">ເຊື່ອງເນື້ອຫາຄລິບບອດ</translation> <translation id="2532336938189706096">ມຸມມອງເວັບ</translation> <translation id="2534155362429831547">ລຶບ <ph name="NUMBER_OF_ITEMS" /> ລາຍການແລ້ວ</translation> -<translation id="2534582914273493287">URL ທີ່ທ່ານເຂົ້າຈະຖືກສົ່ງໄປໃຫ້ Google</translation> <translation id="2536728043171574184">ກຳລັງເຂົ້າເບິ່ງສຳເນົາອັອບລາຍຂອງໜ້ານີ້</translation> <translation id="2546283357679194313">ຄຸກກີ້ ແລະຂໍ້ມູນເວັບໄຊທ໌...</translation> <translation id="2549516196460093976">ທ່ານສາມາດໃຊ້ແທັບເລັດນີ້ເພື່ອເຂົ້າສູ່ລະບົບຢູ່ຄອມພິວເຕີທີ່ສະແດງລະຫັດ QR ນີ້ໄດ້.</translation> @@ -371,7 +370,6 @@ <translation id="2996291259634659425">ສ້າງວະລີຜ່ານ</translation> <translation id="2996809686854298943">ຕ້ອງມີ URL.</translation> <translation id="2997081575621687554">ເມື່ອ Google ຂໍໃຫ້ໂຫຼດລິ້ງຕ່າງໆຢູ່ໜ້າຂອງພວກມັນລ່ວງໜ້າເປັນການສ່ວນຕົວ, Chrome ຈະເຂົ້າລະຫັດ ແລະ ໂຫຼດໜ້າຕ່າງໆກ່ອນລ່ວງໜ້າຜ່ານເຊີບເວີ Google ໂດຍບໍ່ມີຄຸກກີ້. ນີ້ຈະເຊື່ອງຕົວຕົນຂອງທ່ານຈາກເວັບໄຊທີ່ມີການໂຫຼດກ່ອນລ່ວງໜ້າ.</translation> -<translation id="3003733539450769656">ເຕືອນທ່ານກ່ຽວກັບເຫດການອັນຕະລາຍກ່ອນທີ່ພວກມັນຈະເກີດຂຶ້ນ</translation> <translation id="3006881078666935414">ບໍ່ມີຂໍ້ມູນການໃຊ້</translation> <translation id="301080557829842765">ຂໍ້ແນະນຳຄວາມເປັນສ່ວນຕົວ</translation> <translation id="3016635187733453316">ຮັບປະກັນວ່າອຸປະກອນນີ້ເຊື່ອມຕໍ່ກັບອິນເຕີເນັດ</translation> @@ -431,6 +429,7 @@ <translation id="3284510035090979597">ຄວາມຊ່ວຍເຫຼືອແບບບໍ່ຕ້ອງຮ້ອງຂໍ</translation> <translation id="3285080554353377245">ວິດີໂອກ່ຽວກັບວິທີໃຊ້ Chrome</translation> <translation id="3288003805934695103">ກຳລັງໂຫຼດໜ້າຄືນໃໝ່</translation> +<translation id="3290249595466894471">ນອກຈາກນັ້ນ, ຍັງສົ່ງຕົວຢ່າງບາງສ່ວນຂອງໜ້າ, ການດາວໂຫຼດ, ການເຄື່ອນໄຫວສ່ວນຂະຫຍາຍ ແລະ ຂໍ້ມູນລະບົບເພື່ອຊ່ວຍຄົ້ນພົບໄພຄຸກຄາມໃໝ່ໆນຳ.</translation> <translation id="3297344142967351106">ການຊ່ວຍເຫຼືອທາງສຽງ</translation> <translation id="3303414029551471755">ສືບຕໍ່ໄປດາວໂຫຼດເນື້ອໃນບໍ?</translation> <translation id="3334729583274622784">ປ່ຽນນາມສະກຸນໄຟລ໌ບໍ?</translation> @@ -636,7 +635,6 @@ <translation id="4558311620361989323">ທາງລັດໜ້າເວັບ</translation> <translation id="4561730552726921821">ລົງທະບຽນສຳເລັດແລ້ວ</translation> <translation id="4561979708150884304">ບໍ່ມີການເຊື່ອມຕໍ່</translation> -<translation id="4562008740775511591">Chrome ສະໜອງຄ່າເລີ່ມຕົ້ນທີ່ສົມເຫດສົມຜົນ, ແຕ່ທ່ານສາມາດປັບແຕ່ງມັນໃຫ້ເໝາະສົມກັບຄວາມລຶ້ງເຄີຍໃນການທ່ອງເວັບຂອງທ່ານໄດ້ຫຼາຍທີ່ສຸດ</translation> <translation id="4565377596337484307">ເຊື່ອງລະຫັດຜ່ານ</translation> <translation id="4572422548854449519">ເຂົ້າສູ່ລະບົບບັນຊີທີ່ມີການຈັດການ</translation> <translation id="4576892426230499203">ກະລຸນາລອງໃຊ້ຕົວເລືອກການຢັ້ງຢືນອື່ນໆ</translation> @@ -918,7 +916,6 @@ <translation id="604996488070107836">ການດາວໂຫຼດ <ph name="FILE_NAME" /> ບໍ່ສຳເລັດເນື່ອງຈາກເກີດຄວາມຜິດພາດທີ່ບໍ່ຮູ້ຈັກ.</translation> <translation id="605721222689873409">ປປ</translation> <translation id="6059830886158432458">ຄວບຄຸມເລື່ອງລາວ ແລະ ການເຄື່ອນໄຫວຢູ່ບ່ອນນີ້</translation> -<translation id="6069177176307973611">ກວດສອບການຕັ້ງຄ່າຄວາມເປັນສ່ວນຕົວ ແລະ ຄວາມປອດໄພ</translation> <translation id="6070730414166672373">ກຳລັງຕິດຕໍ່ຫາທະນາຄານຂອງທ່ານ\u2026</translation> <translation id="6085886413119427067">ກຳນົດວິທີເຊື່ອມຕໍ່ກັບເວັບໄຊຜ່ານການເຊື່ອມຕໍ່ທີ່ປອດໄພ</translation> <translation id="6091413777268123602">ດ້ວຍການທົດລອງໃຊ້ Privacy Sandbox, ເວັບໄຊຕ່າງໆຈະສາມາດມອບປະສົບການການທ່ອງເວັບແບບດຽວກັນໂດຍໃຊ້ຂໍ້ມູນຂອງທ່ານໜ້ອຍລົງ. ນັ້ນໝາຍຄວາມວ່າຈະມີຄວາມເປັນສ່ວນຕົວຫຼາຍຂຶ້ນສຳລັບທ່ານ ແລະ ມີການຕິດຕາມຂ້າມເວັບໄຊໜ້ອຍລົງ. ພວກເຮົາຈະເພີ່ມການທົດລອງໃຊ້ໃໝ່ເມື່ອພວກມັນພ້ອມໃຫ້ທົດສອບແລ້ວ.</translation> @@ -1039,6 +1036,7 @@ <translation id="6641780377503683465">ລຶບ <ph name="INTEREST" /> ອອກ</translation> <translation id="6643016212128521049">ລຶບ</translation> <translation id="6645629752388991326">ຄວບຄຸມວ່າອຸປະກອນໃດສາມາດເຂົ້າສູ່ລະບົບໄດ້ໂດຍການໃຊ້ອຸປະກອນນີ້ເປັນກະແຈຄວາມປອດໄພ.</translation> +<translation id="6647441008198474441">URL ທີ່ທ່ານເຂົ້າເບິ່ງຈະຖືກສົ່ງໄປໃຫ້ Google ເພື່ອຄາດເດົາເວັບໄຊທີ່ທ່ານອາດຈະເຂົ້າເບິ່ງເປັນລຳດັບຕໍ່ໄປ</translation> <translation id="6648459603387803038">ຜູ້ເບິ່ງແຍງລະບົບຂອງທ່ານສາມາດປ່ຽນການຕັ້ງຄ່າໂປຣແກຣມທ່ອງເວັບຂອງທ່ານຈາກທາງໄກໄດ້. ການເຄື່ອນໄຫວໃນອຸປະກອນນີ້ອາດຈະຖືກຈັດການຢູ່ນອກ Chrome ໄດ້ເຊັ່ນກັນ.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 ແລະ ອີກ <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> ລາຍຊື່ຜູ້ຕິດຕໍ່}other{<ph name="CONTACT_PREVIEW" />\u2026 ແລະ ອີກ <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> ລາຍຊື່ຜູ້ຕິດຕໍ່}}</translation> <translation id="6649642165559792194">ເບິ່ງຕົວຢ່າງຮູບ <ph name="BEGIN_NEW" />ໃໝ່<ph name="END_NEW" /></translation> @@ -1046,7 +1044,6 @@ <translation id="6659594942844771486">ແຖບ</translation> <translation id="666731172850799929">ເປີດຢູ່ໃນ <ph name="APP_NAME" /></translation> <translation id="6671495933530132209">ກັອບປີ້ຮູບ</translation> -<translation id="6674044799624355221">ສົ່ງຕົວຢ່າງນ້ອຍໆຂອງໜ້າເວັບ, ການດາວໂຫຼດ, ການເຄື່ອນໄຫວຂອງສ່ວນຂະຫຍາຍ ແລະ ຂໍ້ມູນລະບົບເພື່ອຊ່ວຍຄົ້ນພົບໄພຄຸກຄາມໃໝ່ໆ</translation> <translation id="6674571176963658787">ເພື່ອເລີ່ມຊິ້ງຂໍ້ມູນ, ໃຫ້ໃສ່ລະຫັດຜ່ານຂອງທ່ານ</translation> <translation id="6676840375528380067">ລຶບລ້າງຂໍ້ມູນ Chrome ຂອງທ່ານຈາກອຸປະກອນນີ້?</translation> <translation id="6684809838922667136">ເຮັດໃຫ້ Chrome ດີຂຶ້ນ</translation> @@ -1068,7 +1065,6 @@ <translation id="6802555630140434547">ໜ້າຈໍຈະຖືກປິດ</translation> <translation id="6811034713472274749">ໜ້າພ້ອມໃຫ້ເບິ່ງແລ້ວ</translation> <translation id="6813446258015311409">ເຂົ້າສູ່ລະບົບ Chrome, ເປີດແລ້ວ.</translation> -<translation id="6814033694018386318">ສິ່ງທີ່ທ່ານແບ່ງປັນກັບ Google</translation> <translation id="6817747507826986771">ແບ່ງປັນໜ້ານີ້ແບບໄວໆ. ເພື່ອແກ້ໄຂທາງລັດນີ້, ໃຫ້ແຕະຄ້າງໄວ້.</translation> <translation id="6819199143469632133">ເພື່ອໃຊ້ຂໍ້ມູນ Google ຂອງທ່ານໃນອຸປະກອນຕ່າງໆ, ກະລຸນາເຂົ້າສູ່ລະບົບ</translation> <translation id="6820686453637990663">CVC</translation> @@ -1163,6 +1159,7 @@ <translation id="7352939065658542140">ວິດີໂອ</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{ແບ່ງປັນ 1 ລາຍການທີ່ເລືອກ}other{ແບ່ງປັນ # ລາຍການທີ່ເລືອກ}}</translation> <translation id="7359002509206457351">ເຂົ້າເຖິງວິທີການຈ່າຍເງິນ</translation> +<translation id="7363349185727752629">ຄຳແນະນຳຕົວເລືອກຄວາມເປັນສ່ວນຕົວຂອງທ່ານ</translation> <translation id="7375125077091615385">ປະເພດ:</translation> <translation id="7376560087009844242">ໂດຍການຮວມຂໍ້ຄວາມຂອງໜ້າເພີ່ມເຕີມ, ທ່ານອາດເຫັນຜົນການຊອກຫາທີ່ດີຂຶ້ນໃນເວລາໃຊ້ການແຕະເພື່ອຊອກຫາ. ທ່ານສາມາດເຂົ້າເບິ່ງ <ph name="BEGIN_LINK" />ການຕັ້ງຄ່າ<ph name="END_LINK" /> ໄດ້ຕະຫຼອດເວລາເພື່ອປ່ຽນສິ່ງນີ້.</translation> <translation id="7379900596734708416">ສາມາດໃຊ້ຮູບແບບສີສັນມືດກັບເວັບໄຊນີ້ໄດ້</translation> @@ -1262,6 +1259,7 @@ <translation id="7876243839304621966">ເອົາອອກທັງຫມົດ</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{ທ່ານມີໜ້າຍັງບໍ່ໄດ້ອ່ານ <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> ໜ້າ}other{ທ່ານມີໜ້າຍັງບໍ່ໄດ້ອ່ານ <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> ໜ້າ}}</translation> <translation id="7886917304091689118">ກຳລັງເປີດຢູ່ໃນ Chrome</translation> +<translation id="7887174313503389866">ເປີດການແນະນຳການໃຊ້ການຄວບຄຸມຄວາມເປັນສ່ວນຕົວ ແລະ ຄວາມປອດໄພຫຼັກ. ສຳລັບຕົວເລືອກເພີ່ມເຕີມ, ໃຫ້ເຂົ້າໄປການຕັ້ງຄ່າແຕ່ລະອັນ.</translation> <translation id="7887334752153342268">ຈໍາລອງ</translation> <translation id="789763218334337857">ວິທີໃຊ້ Chrome</translation> <translation id="7903184275147100332">ອັນນີ້ອາດຈະໃຊ້ເວລາເປັນນາທີ</translation> @@ -1375,6 +1373,7 @@ <translation id="8445448999790540984">ບໍ່ສາມາດສົ່ງລະຫັດຜ່ານອອກໄດ້</translation> <translation id="8446884382197647889">ຮຽນຮູ້ເພີ່ມເຕີມ</translation> <translation id="8453310803815879010">ເລີ່ມກມ Dino</translation> +<translation id="8460448946170646641">ກວດສອບການຄວບຄຸມຄວາມເປັນສ່ວນຕົວ ແລະ ຄວາມປອດໄພຫຼັກ</translation> <translation id="8461694314515752532">ເຂົ້າລະຫັດຂໍ້ມູນທີ່ຊິ້ງດ້ວຍລະຫັດຜ່ານການຊິ້ງຂໍ້ມູນຂອງທ່ານເອງ</translation> <translation id="8466613982764129868">ກວດໃຫ້ແນ່ໃຈວ່າ <ph name="TARGET_DEVICE_NAME" /> ເຊື່ອມຕໍ່ກັບອິນເຕີເນັດ</translation> <translation id="8473863474539038330">ທີ່ຢູ່ ແລະ ອື່ນໆອີກ</translation> @@ -1420,6 +1419,7 @@ <translation id="8636825310635137004">ເພື່ອໂຫຼດແຖບຂອງທ່ານຈາກອຸປະກອນອື່ນ, ໃຫ້ເປີດການຊິ້ງຂໍ້ມູນກ່ອນ.</translation> <translation id="8641930654639604085">ພະຍາຍາມບລັອກເວັບໄຊສຳລັບຜູ້ໃຫຍ່</translation> <translation id="864544049772947936">ຈັດການໜ້າຈໍ (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">ຄາດເດົາ ແລະ ເຕືອນທ່ານກ່ຽວກັບເຫດການອັນຕະລາຍກ່ອນທີ່ພວກມັນຈະເກີດຂຶ້ນ</translation> <translation id="8646467750715887511">ໜ້າຈະໂຫຼດຫຼັງຈາກທີ່ທ່ານເປີດພວກມັນເທົ່ານັ້ນ.</translation> <translation id="8655129584991699539">ທ່ານສາມາດລຶບລ້າງຂໍ້ມູນໄດ້ໃນການຕັ້ງຄ່າ Chrome</translation> <translation id="8659579665266920523">ວິທີຊອກຫາດ້ວຍ Chrome</translation> @@ -1432,7 +1432,6 @@ <translation id="867767487203716855">ອັບເດດຕໍ່ໄປ</translation> <translation id="8683039184091909753">ຮູບ</translation> <translation id="8683081248374354009">ຣີເຊັດກຸ່ມ</translation> -<translation id="8683526617475118045">ສິ່ງທີ່ທ່ານໄດ້ຮັບ</translation> <translation id="869891660844655955">ວັນຫມົດອາຍຸ</translation> <translation id="8699120352855309748">ບໍ່ສະເໜີແປພາສາເຫຼົ່ານີ້</translation> <translation id="8712637175834984815">ເຂົ້າໃຈແລ້ວ</translation> @@ -1516,7 +1515,6 @@ <translation id="9148126808321036104">ລົງຊື່ເຂົ້າໃຊ້ອີກ</translation> <translation id="9158770349521403363">ແບ່ງປັນເນື້ອຫາເທົ່ານັ້ນ</translation> <translation id="9159716826369098114">ກູ້ຄືນກຸ່ມແຖບຂອງ <ph name="TAB_COUNT" /> ແຖບເປັນກຸ່ມແຖບໃນພື້ນຫຼັງໃໝ່.</translation> -<translation id="916446198114569890">URL ທີ່ທ່ານເຂົ້ານັ້ນຖືກບັນທຶກໄປໃສ່ບັນຊີ Google ທ່ານແລ້ວ</translation> <translation id="9169507124922466868">ປະຫວັດການນຳທາງເປີດຢູ່ເຄິ່ງໜຶ່ງ</translation> <translation id="9187955620966010988">ປັບແກ້ຣີແອັກຊັນແລ້ວ</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{ກວດແລ້ວເມື່ອ 1 ນາທີກ່ອນ}other{ກວດແລ້ວເມື່ອ # ນາທີກ່ອນ}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_lt.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_lt.xtb index a308df3..06b6695 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_lt.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_lt.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">Nesiūlyti versti šių svetainių</translation> <translation id="1145536944570833626">Ištrinti esamus duomenis.</translation> <translation id="1146678959555564648">Įgalinti VR</translation> -<translation id="114825011539563458">Svarbiausi privatumo ir saugos valdikliai vienoje vietoje</translation> <translation id="1149401351239820326">Galiojimo laiko pabaigos mėnuo</translation> <translation id="1150263420752757504">„<ph name="APP_NAME" />“ bus atidaryta naršyklėje „Chrome“. Tęsdami sutinkate su <ph name="BEGIN_LINK1" />„Google“ paslaugų teikimo sąlygomis<ph name="END_LINK1" /> ir <ph name="BEGIN_LINK2" />„Google Chrome“ bei „Chrome“ OS papildomomis paslaugų teikimo sąlygomis<ph name="END_LINK2" />.</translation> <translation id="1154704303112745282">Puslapis nepasiekiamas neprisijungus: <ph name="VIOLATED_URL" /></translation> @@ -170,6 +169,7 @@ <translation id="189358972401248634">Kitos kalbos</translation> <translation id="1894023287452300670">Čia stebėkite kainą</translation> <translation id="1900260903084164610">Tęsdami sutinkate su <ph name="BEGIN_TOS_LINK" />paslaugų teikimo sąlygomis<ph name="END_TOS_LINK" />.</translation> +<translation id="1904580727789512086">URL, kuriais lankotės, išsaugomi jūsų „Google“ paskyroje</translation> <translation id="1910950723001426294">Bendrinimo parinkčių sąrašas uždarytas.</translation> <translation id="1918175104945982129">Sutikimo atlikti paiešką balsu naudojant Padėjėją NS atidaryta iki pusės aukščio</translation> <translation id="1919130412786645364">Leisti „Chrome“ prisijungti</translation> @@ -194,7 +194,6 @@ <translation id="2000419248597011803">Numatytajam paieškos varikliui siunčiami kai kurie slapukai ir į adreso juostą bei paieškos laukelį įvestos paieškos</translation> <translation id="200114059308480249">Įtraukti aplinkinį tekstą į „Google“ paieškas?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# failas}one{# failas}few{# failai}many{# failo}other{# failų}}</translation> -<translation id="2020309681647789787">Istorija bus rodoma visuose sinchronizuojamuose įrenginiuose, todėl galėsite tęsti tai, ką darėte</translation> <translation id="2021896219286479412">Viso ekrano svetainės valdikliai</translation> <translation id="2038563949887743358">Įjungti stalinio kompiuterio svetainės užklausą</translation> <translation id="204321170514947529">„<ph name="APP_NAME" />“ duomenų taip pat yra naršyklėje „Chrome“</translation> @@ -280,7 +279,6 @@ <translation id="2527779675047087889">Slėpti iškarpinės turinį</translation> <translation id="2532336938189706096">Žiniatinklio rodinys</translation> <translation id="2534155362429831547">Ištrinta elementų: <ph name="NUMBER_OF_ITEMS" /></translation> -<translation id="2534582914273493287">URL, kuriais lankotės, siunčiami „Google“</translation> <translation id="2536728043171574184">Žiūrima neprisijungus naudojama šio puslapio kopija</translation> <translation id="2546283357679194313">Slapukai ir svetainės duomenys</translation> <translation id="2549516196460093976">Naudodami šį planšetinį kompiuterį galite prisijungti prie kompiuterio, kuriame rodomas šis QR kodas.</translation> @@ -372,7 +370,6 @@ <translation id="2996291259634659425">Kurkite slaptafrazę</translation> <translation id="2996809686854298943">Reikalingas URL</translation> <translation id="2997081575621687554">Kai „Google“ svetainė paprašo privačiai iš anksto įkelti nuorodas savo puslapyje, „Chrome“ šifruoja ir iš anksto įkelia puslapius per „Google“ serverius be slapukų. Taip slepiama jūsų tapatybė nuo iš anksto įkeltos svetainės.</translation> -<translation id="3003733539450769656">Įspėja jus apie pavojingus įvykius, prieš jiems įvykstant</translation> <translation id="3006881078666935414">Nėra naudojimo duomenų</translation> <translation id="301080557829842765">Privatumo vadovas</translation> <translation id="3016635187733453316">Įsitikinkite, kad šis įrenginys prijungtas prie interneto</translation> @@ -432,6 +429,7 @@ <translation id="3284510035090979597">Aktyvi pagalba</translation> <translation id="3285080554353377245">Vaizdo įrašai apie „Chrome“ naudojimą</translation> <translation id="3288003805934695103">Iš naujo įkelti puslapį</translation> +<translation id="3290249595466894471">Taip pat siunčia nedaug puslapių, atsisiuntimų, plėtinių veiklos ir sistemos informacijos, kad padėtų aptikti naujas grėsmes</translation> <translation id="3297344142967351106">Pagalba balsu</translation> <translation id="3303414029551471755">Tęsti turinio atsisiuntimo procesą?</translation> <translation id="3334729583274622784">Pakeisti failo plėtinį?</translation> @@ -637,7 +635,6 @@ <translation id="4558311620361989323">Tinklalapių spartieji klavišai</translation> <translation id="4561730552726921821">Registracija sėkminga</translation> <translation id="4561979708150884304">Nėra ryšio</translation> -<translation id="4562008740775511591">„Chrome“ teikia gerai apgalvotus numatytuosius nustatymus, tačiau galite juos tinkinti taip, kad dar geriau atitiktų jūsų naršymo įpročius</translation> <translation id="4565377596337484307">Slėpti slaptažodį</translation> <translation id="4572422548854449519">Prisijungimas prie tvarkomos paskyros</translation> <translation id="4576892426230499203">Bandykite naudoti kitą patvirtinimo parinktį</translation> @@ -919,7 +916,6 @@ <translation id="604996488070107836">Nepavyko atsisiųsti „<ph name="FILE_NAME" />“ dėl nežinomos klaidos.</translation> <translation id="605721222689873409">MM</translation> <translation id="6059830886158432458">Čia galite valdyti savo pasakojimus ir veiklą</translation> -<translation id="6069177176307973611">Peržiūrėkite privatumo ir saugos nustatymus</translation> <translation id="6070730414166672373">Susisiekiama su banku\u2026</translation> <translation id="6085886413119427067">Nustatoma, kaip prisijungti prie svetainių saugiu ryšiu</translation> <translation id="6091413777268123602">Per privatumo „sandbox“ (smėlio dėžės) bandomuosius laikotarpius svetainėse bus teikiama tokia pati naršymo patirtis, tik naudojama mažiau jūsų duomenų. Tai reiškia daugiau privatumo jums ir mažiau veiklos skirtingose svetainėse stebėjimo. Pridėsime naujų bandomųjų laikotarpių, kai bus paruošta bandyti.</translation> @@ -1040,6 +1036,7 @@ <translation id="6641780377503683465">Pašalinti „<ph name="INTEREST" />“</translation> <translation id="6643016212128521049">Išvalyti</translation> <translation id="6645629752388991326">Kontroliuokite, kurie įrenginiai gali prisijungti naudodami šį įrenginį kaip saugos raktą.</translation> +<translation id="6647441008198474441">URL, kuriais lankotės, siunčiami „Google“, kad numatytų, kokiose svetainėse galite vėliau apsilankyti</translation> <translation id="6648459603387803038">Administratorius gali nuotoliniu būdu keisti naršyklės sąranką. Veiklą šiame įrenginyje taip pat galima tvarkyti ne naršyklėje „Chrome“.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 ir dar <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}one{<ph name="CONTACT_PREVIEW" />\u2026 ir dar <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}few{<ph name="CONTACT_PREVIEW" />\u2026 ir dar <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}many{<ph name="CONTACT_PREVIEW" />\u2026 ir dar <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}other{<ph name="CONTACT_PREVIEW" />\u2026 ir dar <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}}</translation> <translation id="6649642165559792194">Peržiūrėti vaizdą <ph name="BEGIN_NEW" />Naujas<ph name="END_NEW" /></translation> @@ -1047,7 +1044,6 @@ <translation id="6659594942844771486">Skirtukas</translation> <translation id="666731172850799929">Atidaryti naudojant „<ph name="APP_NAME" />“</translation> <translation id="6671495933530132209">Kopijuoti vaizdą</translation> -<translation id="6674044799624355221">Siunčia nedaug puslapių, atsisiuntimų, plėtinių veiklos ir sistemos informacijos, kad padėtų aptikti naujas grėsmes</translation> <translation id="6674571176963658787">Jei norite pradėti sinchronizuoti, įveskite slaptafrazę</translation> <translation id="6676840375528380067">Išvalyti jūsų „Chrome“ duomenis iš šio įrenginio?</translation> <translation id="6684809838922667136">„Chrome“ tobulinimas</translation> @@ -1069,7 +1065,6 @@ <translation id="6802555630140434547">Langas bus uždarytas</translation> <translation id="6811034713472274749">Puslapis paruoštas peržiūrėti</translation> <translation id="6813446258015311409">Prisijungimo prie „Chrome“ puslapis atidarytas.</translation> -<translation id="6814033694018386318">Ką bendrinate su „Google“</translation> <translation id="6817747507826986771">Sparčiai bendrinkite šį puslapį. Jei norite redaguoti šį spartųjį klavišą, palieskite ir palaikykite.</translation> <translation id="6819199143469632133">Jei norite pasiekti savo „Google“ duomenis skirtinguose įrenginiuose, prisijunkite</translation> <translation id="6820686453637990663">CVC</translation> @@ -1164,6 +1159,7 @@ <translation id="7352939065658542140">VAIZDO ĮRAŠAS</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{Bendrinti 1 pasirinktą elementą}one{Bendrinti # pasirinktą elementą}few{Bendrinti # pasirinktus elementus}many{Bendrinti # pasirinkto elemento}other{Bendrinti # pasirinktų elementų}}</translation> <translation id="7359002509206457351">Prieiga prie mokėjimo metodų</translation> +<translation id="7363349185727752629">Privatumo pasirinkimų vadovas</translation> <translation id="7375125077091615385">Tipas:</translation> <translation id="7376560087009844242">Įtraukus daugiau puslapio teksto, gali būti rodomi geresni rezultatai, naudojant Paiešką palietus. Galite bet kada apsilankyti <ph name="BEGIN_LINK" />„Nustatymų“<ph name="END_LINK" /> skiltyje ir tai pakeisti.</translation> <translation id="7379900596734708416">Svetainėse pasiekiama tamsioji tema</translation> @@ -1263,6 +1259,7 @@ <translation id="7876243839304621966">Pašalinti viską</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{Turite <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> neskaitytą puslapį}one{Turite <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> neskaitytą puslapį}few{Turite <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> neskaitytus puslapius}many{Turite <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> neskaityto puslapio}other{Turite <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> neskaitytų puslapių}}</translation> <translation id="7886917304091689118">Paleista naršyklėje „Chrome“</translation> +<translation id="7887174313503389866">Žr. pagrindinių privatumo ir saugos valdiklių apžvalgą su nurodymais. Jei reikia daugiau parinkčių, žr. atskirus nustatymus.</translation> <translation id="7887334752153342268">Dubliuoti</translation> <translation id="789763218334337857">Kaip naudoti „Chrome“</translation> <translation id="7903184275147100332">Tai gali šiek tiek užtrukti</translation> @@ -1376,6 +1373,7 @@ <translation id="8445448999790540984">Nepavyksta eksportuoti slaptažodžių</translation> <translation id="8446884382197647889">Sužinokite daugiau</translation> <translation id="8453310803815879010">Paleisti dinozauro žaidimą</translation> +<translation id="8460448946170646641">Peržiūrėkite pagrindinius privatumo ir saugos valdiklius</translation> <translation id="8461694314515752532">Šifruokite sinchronizuojamus duomenis taikydami savo sinchronizavimo slaptafrazę</translation> <translation id="8466613982764129868">Įsitikinkite, kad įrenginys „<ph name="TARGET_DEVICE_NAME" />“ prijungtas prie interneto</translation> <translation id="8473863474539038330">Adresai ir dar daugiau</translation> @@ -1421,6 +1419,7 @@ <translation id="8636825310635137004">Jei norite pasiekti skirtukus iš kitų įrenginių, įjunkite sinchronizavimą.</translation> <translation id="8641930654639604085">Bandyti užblokuoti suaugusiesiems skirtas svetaines</translation> <translation id="864544049772947936">Tvarkyti langus (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">Numato ir įspėja jus apie pavojingus įvykius, prieš jiems nutinkant</translation> <translation id="8646467750715887511">Puslapiai įkeliami tik juos atidarius.</translation> <translation id="8655129584991699539">Duomenis galite išvalyti „Chrome“ nustatymų“ skiltyje</translation> <translation id="8659579665266920523">Kaip ieškoti naudojant „Chrome“</translation> @@ -1433,7 +1432,6 @@ <translation id="867767487203716855">Kitas naujinys</translation> <translation id="8683039184091909753">vaizdas</translation> <translation id="8683081248374354009">Iš naujo nustatyti grupę</translation> -<translation id="8683526617475118045">Ką gaunate</translation> <translation id="869891660844655955">Galiojimo data</translation> <translation id="8699120352855309748">Nesiūlyti versti šių kalbų</translation> <translation id="8712637175834984815">Supratau</translation> @@ -1517,7 +1515,6 @@ <translation id="9148126808321036104">Prisijungti dar kartą</translation> <translation id="9158770349521403363">Bendrinti tik turinį</translation> <translation id="9159716826369098114">Atkurkite skirtukų grupę, kurioje yra tiek skirtukų: <ph name="TAB_COUNT" />, kaip naują foninę skirtukų grupę.</translation> -<translation id="916446198114569890">URL, kuriais lankotės, išsaugomi jūsų „Google“ paskyroje</translation> <translation id="9169507124922466868">Naršymo istorija atidaryta puse aukščio</translation> <translation id="9187955620966010988">Reakcija pakoreguota</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{Tikrinta prieš 1 minutę}one{Tikrinta prieš # minutę}few{Tikrinta prieš # minutes}many{Tikrinta prieš # minutės}other{Tikrinta prieš # minučių}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_lv.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_lv.xtb index c711546d..2111fbf 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_lv.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_lv.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">Nepiedāvāt tulkot šīs vietnes</translation> <translation id="1145536944570833626">Dzēst esošos datus.</translation> <translation id="1146678959555564648">Ieiet virtuālajā realitātē</translation> -<translation id="114825011539563458">Svarīgākās konfidencialitātes un drošības vadīklas vienuviet</translation> <translation id="1149401351239820326">Derīguma termiņa mēnesis</translation> <translation id="1150263420752757504">Lietotne <ph name="APP_NAME" /> tiks atvērta pārlūkā Chrome. Turpinot jūs piekrītat <ph name="BEGIN_LINK1" />Google pakalpojumu sniegšanas noteikumiem<ph name="END_LINK1" />, kā arī <ph name="BEGIN_LINK2" />Google Chrome un Chrome OS pakalpojumu sniegšanas papildu noteikumiem<ph name="END_LINK2" />.</translation> <translation id="1154704303112745282">Šī lapa nav pieejama bezsaistē: <ph name="VIOLATED_URL" /></translation> @@ -170,6 +169,7 @@ <translation id="189358972401248634">Citas valodas</translation> <translation id="1894023287452300670">Šeit varat izsekot cenu</translation> <translation id="1900260903084164610">Turpinot jūs piekrītat <ph name="BEGIN_TOS_LINK" />pakalpojumu sniegšanas noteikumiem<ph name="END_TOS_LINK" />.</translation> +<translation id="1904580727789512086">Jūsu apmeklētie URL tiek saglabāti Google kontā</translation> <translation id="1910950723001426294">Kopīgošanas opciju saraksts ir aizvērts.</translation> <translation id="1918175104945982129">Piekrišanas lietotāja saskarne Asistenta izmantošanai meklēšanā ar balsi (atvērta pusekrāna augstumā)</translation> <translation id="1919130412786645364">Atļaut pierakstīties pārlūkā Chrome</translation> @@ -194,7 +194,6 @@ <translation id="2000419248597011803">Nosūta dažus sīkfailus un meklēšanas vaicājumus no adreses joslas un meklēšanas lodziņa uz jūsu noklusējuma meklētājprogrammu.</translation> <translation id="200114059308480249">Vai iekļaut apkārtējo tekstu Google meklēšanā?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# fails}zero{# faili}one{# fails}other{# faili}}</translation> -<translation id="2020309681647789787">Jūsu vēsture būs pieejama visās sinhronizētajās ierīcēs, tāpēc varēsiet turpināt iesākto</translation> <translation id="2021896219286479412">Pilnekrāna vietnes vadīklas</translation> <translation id="2038563949887743358">Ieslēgt iestatījumu “Pieprasīt datora vietni”</translation> <translation id="204321170514947529">Pārlūkā Chrome ir arī “<ph name="APP_NAME" />” dati</translation> @@ -280,7 +279,6 @@ <translation id="2527779675047087889">Slēpt starpliktuves saturu</translation> <translation id="2532336938189706096">Tīmekļa skatījums</translation> <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> vienumi tika izdzēsti</translation> -<translation id="2534582914273493287">Uzņēmumam Google tiek sūtīti jūsu apmeklētie vietrāži URL.</translation> <translation id="2536728043171574184">Skata šīs lapas kopiju bezsaistē</translation> <translation id="2546283357679194313">Sīkfaili un vietņu dati</translation> <translation id="2549516196460093976">Izmantojot šo planšetdatoru, varat pierakstīties datorā, kurā tiek rādīts šis kvadrātkods.</translation> @@ -372,7 +370,6 @@ <translation id="2996291259634659425">Ieejas frāzes izveide</translation> <translation id="2996809686854298943">URL ir jānorāda obligāti.</translation> <translation id="2997081575621687554">Kad Google vietnē tiek piedāvāts privāti iepriekš ielādēt saites vietnes lapā, Chrome šifrē un iepriekš ielādē lapas, izmantojot Google serverus, bez sīkfailiem. Tādējādi jūsu identitāte tiek slēpta no iepriekš ielādētās lapas īpašniekiem.</translation> -<translation id="3003733539450769656">Jūs jau iepriekš saņemsiet brīdinājumus par bīstamiem notikumiem.</translation> <translation id="3006881078666935414">Nav lietojuma datu</translation> <translation id="301080557829842765">Konfidencialitātes ceļvedis</translation> <translation id="3016635187733453316">Pārbaudiet, vai šajā ierīcē ir izveidots interneta savienojums</translation> @@ -432,6 +429,7 @@ <translation id="3284510035090979597">Aktīva palīdzība</translation> <translation id="3285080554353377245">Video pamācības par Chrome lietošanu</translation> <translation id="3288003805934695103">Atkārtoti ielādējiet lapu.</translation> +<translation id="3290249595466894471">Lai palīdzētu atklāt jaunus draudus, tiek nosūtīti arī nelieli datu paraugi, kas ietver lapas, lejupielādes, paplašinājumu aktivitāti un sistēmas informāciju.</translation> <translation id="3297344142967351106">Balss palīgs</translation> <translation id="3303414029551471755">Vai turpināt ar satura lejupielādi?</translation> <translation id="3334729583274622784">Vai mainīt faila paplašinājumu?</translation> @@ -637,7 +635,6 @@ <translation id="4558311620361989323">Tīmekļa lapu īsinājumtaustiņi</translation> <translation id="4561730552726921821">Reģistrēšanās sekmīga</translation> <translation id="4561979708150884304">Nav savienojuma</translation> -<translation id="4562008740775511591">Pārlūkā Chrome ir iestatītas pārdomātas noklusējuma vērtības, taču varat tās pielāgot atbilstoši saviem pārlūkošanas paradumiem.</translation> <translation id="4565377596337484307">Slēpt paroli</translation> <translation id="4572422548854449519">Pierakstīšanās pārvaldītā kontā</translation> <translation id="4576892426230499203">Izmēģiniet citu verifikācijas opciju</translation> @@ -919,7 +916,6 @@ <translation id="604996488070107836">Neizdevās lejupielādēt failu <ph name="FILE_NAME" />, jo radās nezināma kļūda.</translation> <translation id="605721222689873409">GG</translation> <translation id="6059830886158432458">Šeit varat kontrolēt jums rādītos rakstus un darbības.</translation> -<translation id="6069177176307973611">Pārskatiet konfidencialitātes un drošības iestatījumus</translation> <translation id="6070730414166672373">Notiek saziņa ar jūsu banku\u2026</translation> <translation id="6085886413119427067">Nosaka, kā izveidot drošu savienojumu ar vietnēm.</translation> <translation id="6091413777268123602">Izmantojot Konfidencialitātes smilškastes izmēģinājuma versijas, vietnēs var nodrošināt tādas pašas pārlūkošanas iespējas, izmantojot mazāk personas datu. Tādējādi tiek uzlabota jūsu konfidencialitāte un ierobežota starpvietņu izsekošana. Pievienosim jaunas izmēģinājuma versijas, kad tās būs gatavas testēšanai.</translation> @@ -1040,6 +1036,7 @@ <translation id="6641780377503683465">Noņemt interesi “<ph name="INTEREST" />”</translation> <translation id="6643016212128521049">Notīrīt</translation> <translation id="6645629752388991326">Pārvaldiet, kurās ierīcēs var veikt pierakstīšanos, izmantojot šo ierīci kā drošības atslēgu.</translation> +<translation id="6647441008198474441">Uzņēmumam Google tiek sūtīti jūsu apmeklētie vietrāži URL, lai prognozētu, kuras vietnes jūs varētu apmeklēt turpmāk.</translation> <translation id="6648459603387803038">Jūsu administrators var attālināti mainīt jūsu pārlūka iestatījumus. Darbību šajā ierīcē var pārvaldīt arī ārpus Chrome.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />… un vēl <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}zero{<ph name="CONTACT_PREVIEW" />… un vēl <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}one{<ph name="CONTACT_PREVIEW" />… un vēl <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}other{<ph name="CONTACT_PREVIEW" />… un vēl <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}}</translation> <translation id="6649642165559792194">Priekšskatīt attēlu <ph name="BEGIN_NEW" />Jauns<ph name="END_NEW" /></translation> @@ -1047,7 +1044,6 @@ <translation id="6659594942844771486">Cilne</translation> <translation id="666731172850799929">Atvērt lietotnē <ph name="APP_NAME" /></translation> <translation id="6671495933530132209">Kopēt attēlu</translation> -<translation id="6674044799624355221">Lai palīdzētu atklāt jaunus draudus, tiek nosūtīti nelieli datu paraugi, kas ietver lapas, lejupielādes, paplašinājumu aktivitāti un sistēmas informāciju.</translation> <translation id="6674571176963658787">Lai sāktu sinhronizāciju, ievadiet savu ieejas frāzi</translation> <translation id="6676840375528380067">Vai dzēst jūsu Chrome datus no šīs ierīces?</translation> <translation id="6684809838922667136">Uzlabojiet Chrome</translation> @@ -1069,7 +1065,6 @@ <translation id="6802555630140434547">Logs tiks aizvērts.</translation> <translation id="6811034713472274749">Lapu var skatīt</translation> <translation id="6813446258015311409">Lapa “Pierakstīšanās pārlūkā Chrome”, atvērta.</translation> -<translation id="6814033694018386318">Saturs, kas tiek kopīgots ar Google</translation> <translation id="6817747507826986771">Ātra lapas kopīgošana. Lai rediģētu šo īsinājumtaustiņu, pieskarieties un turiet.</translation> <translation id="6819199143469632133">Pierakstieties, lai izmantotu savu Google saturu vairākās ierīcēs.</translation> <translation id="6820686453637990663">CVC</translation> @@ -1164,6 +1159,7 @@ <translation id="7352939065658542140">VIDEOKLIPS</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{Kopīgot 1 atlasīto vienumu}zero{Kopīgot # atlasītos vienumus}one{Kopīgot # atlasīto vienumu}other{Kopīgot # atlasītos vienumus}}</translation> <translation id="7359002509206457351">Piekļuve maksājumu veidiem</translation> +<translation id="7363349185727752629">Konfidencialitātes iestatījumu ceļvedis</translation> <translation id="7375125077091615385">Veids:</translation> <translation id="7376560087009844242">Iekļaujot vairāk lapas teksta, varat iegūt labākus rezultātus, kad izmantojat funkciju “Meklēt pieskaroties”. <ph name="BEGIN_LINK" />Iestatījumos<ph name="END_LINK" /> varat jebkurā laikā mainīt šo opciju.</translation> <translation id="7379900596734708416">Ir pieejams tumšais motīvs vietnēm</translation> @@ -1263,6 +1259,7 @@ <translation id="7876243839304621966">Noņemt visu</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{Jums ir <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> nelasīta lapa.}zero{Jums ir <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> nelasītas lapas.}one{Jums ir <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> nelasīta lapa.}other{Jums ir <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> nelasītas lapas.}}</translation> <translation id="7886917304091689118">Atvērta pārlūkā Chrome</translation> +<translation id="7887174313503389866">Izmantojiet svarīgāko konfidencialitātes un drošības vadīklu ceļvedi. Papildu opcijas skatiet atsevišķos iestatījumos.</translation> <translation id="7887334752153342268">Izveidot dublikātu</translation> <translation id="789763218334337857">Padomi par Chrome lietošanu</translation> <translation id="7903184275147100332">Tas var ilgt kādu brīdi</translation> @@ -1376,6 +1373,7 @@ <translation id="8445448999790540984">Nevar eksportēt paroles</translation> <translation id="8446884382197647889">Uzziniet vairāk</translation> <translation id="8453310803815879010">Sākt dinozaura spēli</translation> +<translation id="8460448946170646641">Pārskatiet galvenās konfidencialitātes un drošības vadīklas.</translation> <translation id="8461694314515752532">Šifrējiet sinhronizētos datus, izmantojot savu sinhronizācijas ieejas frāzi</translation> <translation id="8466613982764129868">Ierīcē <ph name="TARGET_DEVICE_NAME" /> ir jābūt izveidotam interneta savienojumam</translation> <translation id="8473863474539038330">Adreses un citus datus</translation> @@ -1421,6 +1419,7 @@ <translation id="8636825310635137004">Ieslēdziet sinhronizāciju, lai būtu pieejamas cilnes no citām jūsu ierīcēm.</translation> <translation id="8641930654639604085">Pēc iespējas bloķēt vietnes ar pieaugušajiem paredzētu saturu</translation> <translation id="864544049772947936">Pārvaldīt logus (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">Tiek prognozēti bīstami notikumi, un jau iepriekš tiek parādīti brīdinājumi.</translation> <translation id="8646467750715887511">Lapas tiek ielādētas tikai pēc to atvēršanas.</translation> <translation id="8655129584991699539">Varat notīrīt datus Chrome iestatījumos</translation> <translation id="8659579665266920523">Meklēšana pārlūkā Chrome</translation> @@ -1433,7 +1432,6 @@ <translation id="867767487203716855">Nākamais atjauninājums</translation> <translation id="8683039184091909753">attēls</translation> <translation id="8683081248374354009">Atiestatīt grupu</translation> -<translation id="8683526617475118045">Ieguvumi</translation> <translation id="869891660844655955">Derīguma termiņš</translation> <translation id="8699120352855309748">Nepiedāvāt tulkot no šīm valodām</translation> <translation id="8712637175834984815">Sapratu!</translation> @@ -1517,7 +1515,6 @@ <translation id="9148126808321036104">Pierakstieties vēlreiz</translation> <translation id="9158770349521403363">Kopīgot tikai saturu</translation> <translation id="9159716826369098114">Atjaunot ciļņu grupu kā jaunu fona ciļņu grupu. Ciļņu skaits šajā grupā ir <ph name="TAB_COUNT" />.</translation> -<translation id="916446198114569890">Jūsu apmeklētie URL vietrāži tiek saglabāti Google kontā</translation> <translation id="9169507124922466868">Navigācijas vēsture ir atvērta līdz pusei.</translation> <translation id="9187955620966010988">Reakcija ir pielāgota</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{Pārbaudīts: pirms 1 minūtes}zero{Pārbaudīts: pirms # minūtēm}one{Pārbaudīts: pirms # minūtes}other{Pārbaudīts: pirms # minūtēm}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_mk.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_mk.xtb index 3acbfa79..7b5de6d 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_mk.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_mk.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">Не нуди превод за овие сајтови</translation> <translation id="1145536944570833626">Избришете ги постоечките податоци.</translation> <translation id="1146678959555564648">Влези во VR</translation> -<translation id="114825011539563458">Најважните контроли за приватност и безбедност на едно место</translation> <translation id="1149401351239820326">Месец на истекување</translation> <translation id="1150263420752757504"><ph name="APP_NAME" /> ќе се отвори во Chrome. Ако продолжите, се согласувате со <ph name="BEGIN_LINK1" />Условите за користење на Google<ph name="END_LINK1" /> и <ph name="BEGIN_LINK2" />Дополнителните услови за користење на Google Chrome и Chrome OS<ph name="END_LINK2" />.</translation> <translation id="1154704303112745282">Страницата е недостапна офлајн: <ph name="VIOLATED_URL" /></translation> @@ -170,6 +169,7 @@ <translation id="189358972401248634">Други јазици</translation> <translation id="1894023287452300670">Следете ја цената тука</translation> <translation id="1900260903084164610">Ако продолжите, се согласувате со <ph name="BEGIN_TOS_LINK" />Условите за користење<ph name="END_TOS_LINK" />.</translation> +<translation id="1904580727789512086">URL-адресите што ги посетувате се зачувуваат во вашата сметка на Google</translation> <translation id="1910950723001426294">Списокот со опции за споделување е затворен.</translation> <translation id="1918175104945982129">Корисничкиот интерфејс за согласност за гласовно пребарување со „Помошникот“ е отворен на половина екран</translation> <translation id="1919130412786645364">Дозволете најавување на Chrome</translation> @@ -194,7 +194,6 @@ <translation id="2000419248597011803">Испраќа колачиња и пребарувања од лентата за адреси и полето за пребарување во вашиот стандарден пребарувач</translation> <translation id="200114059308480249">Да се вклучи околниот текст во пребарувањата на Google?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# датотека}one{# датотека}other{# датотеки}}</translation> -<translation id="2020309681647789787">Ќе ја задржите историјата на сите ваши синхронизирани уреди за да може да продолжите со активностите</translation> <translation id="2021896219286479412">Контроли на сајтот на цел екран</translation> <translation id="2038563949887743358">Вклучи „Барај локација на работна површина“</translation> <translation id="204321170514947529"><ph name="APP_NAME" /> има податоци и во Chrome</translation> @@ -280,7 +279,6 @@ <translation id="2527779675047087889">Сокриј содржини од привремената меморија</translation> <translation id="2532336938189706096">Преглед на веб</translation> <translation id="2534155362429831547">Избришани се <ph name="NUMBER_OF_ITEMS" /> ставки</translation> -<translation id="2534582914273493287">URL-адресите што ги посетувате се испраќаат во Google</translation> <translation id="2536728043171574184">Се прикажува офлајн копија на страницата</translation> <translation id="2546283357679194313">Колачиња и податоци од сајтот</translation> <translation id="2549516196460093976">Може да го користите таблетов за да се најавите на компјутерот што го прикажува QR-кодов.</translation> @@ -372,7 +370,6 @@ <translation id="2996291259634659425">Создајте лозинка</translation> <translation id="2996809686854298943">Потребен е URL</translation> <translation id="2997081575621687554">Кога одреден сајт на Google ќе побара приватно вчитување однапред на линковите на неговата страница, Chrome ги шифрира и однапред ги вчитува страниците преку серверите на Google без колачиња. Вака се сокрива вашиот идентитет од однапред вчитаниот сајт.</translation> -<translation id="3003733539450769656">Ве предупредува за опасни настани пред да се случат</translation> <translation id="3006881078666935414">Нема податоци за користење</translation> <translation id="301080557829842765">Водич за приватност</translation> <translation id="3016635187733453316">Проверете дали уредов е поврзан на интернет</translation> @@ -432,6 +429,7 @@ <translation id="3284510035090979597">Проактивна помош</translation> <translation id="3285080554353377245">Видеа за користењето на Chrome</translation> <translation id="3288003805934695103">Повторно да ја вчитате страницата</translation> +<translation id="3290249595466894471">Испраќа и мал примерок од страници, преземања, активност на екстензиите и податоци за системот за да помогне да се откријат нови закани</translation> <translation id="3297344142967351106">Гласовна помош</translation> <translation id="3303414029551471755">Продолжете со преземање на содржината?</translation> <translation id="3334729583274622784">Дали да се промени наставката на датотеката?</translation> @@ -637,7 +635,6 @@ <translation id="4558311620361989323">Кратенки на веб-страница</translation> <translation id="4561730552726921821">Успешна регистрација</translation> <translation id="4561979708150884304">Нема интернет-врска</translation> -<translation id="4562008740775511591">Chrome овозможува разумни стандардни поставки, но може да ги проспособите за да одговараат најдобро на начинот на кој сте навикнати да пребарувате</translation> <translation id="4565377596337484307">Сокриј ја лозинката</translation> <translation id="4572422548854449519">Најавете се на управувана сметка</translation> <translation id="4576892426230499203">Обидете се со друга опција за потврда</translation> @@ -919,7 +916,6 @@ <translation id="604996488070107836">Преземањето на <ph name="FILE_NAME" /> не успеа поради непозната грешка.</translation> <translation id="605721222689873409">ГГ</translation> <translation id="6059830886158432458">Контролирајте ги сториите и активноста тука</translation> -<translation id="6069177176307973611">Прегледајте ги поставките за приватност и безбедност</translation> <translation id="6070730414166672373">Се контактира со банката\u2026</translation> <translation id="6085886413119427067">Определува како да се поврзуваат веб-сајтовите преку безбедна врска</translation> <translation id="6091413777268123602">Со пробните периоди на Privacy Sandbox, сајтовите може да го испорачаат истото доживување при прелистувањето со користење помалку ваши податоци. Тоа значи поголема приватност за вас и помалку следење меѓу сајтовите. Ќе додадеме нови пробни периоди кога ќе бидат подготвени за тестирање.</translation> @@ -1040,6 +1036,7 @@ <translation id="6641780377503683465">Отстранете <ph name="INTEREST" /></translation> <translation id="6643016212128521049">Исчисти</translation> <translation id="6645629752388991326">Контролирајте кои уреди можат да се најават користејќи го уредов како безбедносен клуч.</translation> +<translation id="6647441008198474441">URL-адресите што ги посетувате се испраќаат во Google за да се предвидат сајтовите што можеби ќе ги посетите следно</translation> <translation id="6648459603387803038">Администраторот може далечински да го менува поставувањето на прелистувачот. Со активноста на уредов може да се управува и надвор од Chrome.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />… и уште <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}one{<ph name="CONTACT_PREVIEW" />… и уште <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}other{<ph name="CONTACT_PREVIEW" />… и уште <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}}</translation> <translation id="6649642165559792194">Прегледајте ја сликата <ph name="BEGIN_NEW" />Ново<ph name="END_NEW" /></translation> @@ -1047,7 +1044,6 @@ <translation id="6659594942844771486">Картичка</translation> <translation id="666731172850799929">Отвори во <ph name="APP_NAME" /></translation> <translation id="6671495933530132209">Копирај слика</translation> -<translation id="6674044799624355221">Испраќа мал примерок од страници, преземања, активност на екстензиите и информации за системот за да помогне да се откријат нови закани</translation> <translation id="6674571176963658787">За да започне синхронизацијата, внесете ја лозинката</translation> <translation id="6676840375528380067">Да се избришат податоците на Chrome од уредов?</translation> <translation id="6684809838922667136">Подобрете го Chrome</translation> @@ -1069,7 +1065,6 @@ <translation id="6802555630140434547">Прозорецот ќе се затвори</translation> <translation id="6811034713472274749">Страницата е спремна за прикажување</translation> <translation id="6813446258015311409">Најавете се на Chrome, отворено.</translation> -<translation id="6814033694018386318">Што споделувате со Google</translation> <translation id="6817747507826986771">Брзо споделете ја страницава. За да ја измените сликава од екранот, допрете и задржете.</translation> <translation id="6819199143469632133">Најавете се за да ги пренесете вашите работи на Google на повеќе уреди</translation> <translation id="6820686453637990663">CVC</translation> @@ -1164,6 +1159,7 @@ <translation id="7352939065658542140">ВИДЕО</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{Споделете 1 избрана ставка}one{Споделете # избрана ставка}other{Споделете # избрани ставки}}</translation> <translation id="7359002509206457351">Пристап до начините на плаќање</translation> +<translation id="7363349185727752629">Упатство за вашите опции за приватноста</translation> <translation id="7375125077091615385">Тип:</translation> <translation id="7376560087009844242">Ако вклучите повеќе текст од страницата, можеби ќе гледате подобри резултати кога ќе користите „Допрете за пребарување“ Може да одите во <ph name="BEGIN_LINK" />поставки<ph name="END_LINK" /> во секое време за да го промените ова.</translation> <translation id="7379900596734708416">Темната тема за сајтови е достапна</translation> @@ -1263,6 +1259,7 @@ <translation id="7876243839304621966">Отстрани ги сите</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{Имате <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> непрочитана страница}one{Имате <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> непрочитана страница}other{Имате <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> непрочитани страници}}</translation> <translation id="7886917304091689118">Се извршува во Chrome</translation> +<translation id="7887174313503389866">Разгледајте го упатството што ќе ве води низ клучните контроли за приватноста и безбедноста. За повеќе опции, одете на поединечните поставки.</translation> <translation id="7887334752153342268">Направи дупликат</translation> <translation id="789763218334337857">Како да го користите Chrome</translation> <translation id="7903184275147100332">Ова може да потрае малку</translation> @@ -1376,6 +1373,7 @@ <translation id="8445448999790540984">Не може да се извезат лозинките</translation> <translation id="8446884382197647889">Дознај повеќе</translation> <translation id="8453310803815879010">Стартувајте ја играта со диносаурус</translation> +<translation id="8460448946170646641">Прегледајте ги клучните контроли за приватноста и безбедноста</translation> <translation id="8461694314515752532">Шифрирајте ги синхронизираните податоци со сопствената лозинка за синхронизација</translation> <translation id="8466613982764129868">Проверете дали <ph name="TARGET_DEVICE_NAME" /> е поврзан на интернет</translation> <translation id="8473863474539038330">Адреси и друго</translation> @@ -1421,6 +1419,7 @@ <translation id="8636825310635137004">За да ги добиете картичките од другите уреди, вклучете ја синхронизацијата.</translation> <translation id="8641930654639604085">Обиди се да ги блокираш сајтовите за возрасни</translation> <translation id="864544049772947936">Управувајте со прозорци (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">Предвидува опасни настани и ве предупредува пред да се случат</translation> <translation id="8646467750715887511">Страниците се вчитуваат само откако ќе ги отворите.</translation> <translation id="8655129584991699539">Податоците може да ги избришете во „Поставки за Chrome“</translation> <translation id="8659579665266920523">Како да пребарувате со Chrome</translation> @@ -1433,7 +1432,6 @@ <translation id="867767487203716855">Следно ажурирање</translation> <translation id="8683039184091909753">слика</translation> <translation id="8683081248374354009">Ресетирај група</translation> -<translation id="8683526617475118045">Што ќе добиете</translation> <translation id="869891660844655955">Рок на важност</translation> <translation id="8699120352855309748">Не нуди превод за овие јазици</translation> <translation id="8712637175834984815">Сфатив</translation> @@ -1517,7 +1515,6 @@ <translation id="9148126808321036104">Најави се повторно</translation> <translation id="9158770349521403363">Сподели само содржини</translation> <translation id="9159716826369098114">Врати ја групата картички од <ph name="TAB_COUNT" /> картички како нова заднинска група картички.</translation> -<translation id="916446198114569890">URL-адресите што ги посетувате се зачувуваат во вашата сметка на Google</translation> <translation id="9169507124922466868">Историјата на навигација е отворена до половина екран</translation> <translation id="9187955620966010988">Реакцијата е приспособена</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{Проверено пред 1 минута}one{Проверено пред # минута}other{Проверено пред # минути}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_ml.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_ml.xtb index e325b64..2019822e 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_ml.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_ml.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">ഈ സൈറ്റുകൾ വിവർത്തനം ചെയ്യേണ്ട</translation> <translation id="1145536944570833626">നിലവിലുള്ള വിവരങ്ങൾ ഇല്ലാതാക്കുക.</translation> <translation id="1146678959555564648">VR-ൽ പ്രവേശിക്കുക</translation> -<translation id="114825011539563458">ഏറ്റവും പ്രധാനപ്പെട്ട സ്വകാര്യതാ, സുരക്ഷാ നിയന്ത്രണങ്ങൾ ഒരിടത്ത്</translation> <translation id="1149401351239820326">കാലാവധി കഴിയുന്ന മാസം</translation> <translation id="1150263420752757504"><ph name="APP_NAME" />, Chrome-ൽ തുറക്കും. തുടരുന്നതിലൂടെ, നിങ്ങൾ <ph name="BEGIN_LINK1" />Google സേവന നിബന്ധനകളും<ph name="END_LINK1" /> <ph name="BEGIN_LINK2" />Google Chrome, ChromeOS അധിക സേവന നിബന്ധനകളും<ph name="END_LINK2" /> അംഗീകരിക്കുന്നു.</translation> <translation id="1154704303112745282">ഓഫ്ലൈനിൽ പേജ് ലഭ്യമല്ല: <ph name="VIOLATED_URL" /></translation> @@ -170,6 +169,7 @@ <translation id="189358972401248634">മറ്റ് ഭാഷകൾ</translation> <translation id="1894023287452300670">ഇവിടെ നിരക്ക് ട്രാക്ക് ചെയ്യുക</translation> <translation id="1900260903084164610">തുടരുന്നതിലൂടെ, നിങ്ങൾ <ph name="BEGIN_TOS_LINK" />സേവന നിബന്ധനകൾ<ph name="END_TOS_LINK" /> അംഗീകരിക്കുന്നു.</translation> +<translation id="1904580727789512086">നിങ്ങൾ സന്ദർശിക്കുന്ന URL-കൾ നിങ്ങളുടെ Google അക്കൗണ്ടിൽ സംരക്ഷിക്കുന്നു</translation> <translation id="1910950723001426294">പങ്കിടൽ ഓപ്ഷനുകളുടെ ലിസ്റ്റ് അടച്ചു.</translation> <translation id="1918175104945982129">Assistant ശബ്ദ തിരയൽ സമ്മത UI പകുതി ഉയരത്തിൽ തുറന്നിരിക്കുന്നു</translation> <translation id="1919130412786645364">Chrome-ലേക്ക് സൈൻ ഇൻ ചെയ്യാൻ അനുവദിക്കുക</translation> @@ -194,7 +194,6 @@ <translation id="2000419248597011803">നിങ്ങളുടെ ഡിഫോൾട്ട് തിരയൽ എഞ്ചിനിലേക്ക് വിലാസ ബാറിൽ നിന്നും തിരയൽ ബോക്സിൽ നിന്നുമുള്ള തിരയലുകളും കുറച്ച് കുക്കികളും അയയ്ക്കുന്നു</translation> <translation id="200114059308480249">Google തിരയലുകളിൽ ചുറ്റുമുള്ള ടെക്സ്റ്റ് ഉൾപ്പെടുത്തണോ?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# ഫയല്}other{# ഫയലുകൾ}}</translation> -<translation id="2020309681647789787">സമന്വയിപ്പിച്ച എല്ലാ ഉപകരണങ്ങളിലും നിങ്ങളുടെ ചരിത്രം ഉണ്ടാകുമെന്നതിനാൽ, നിങ്ങൾ ചെയ്തുകൊണ്ടിരുന്ന കാര്യങ്ങൾ തുടർന്നും ചെയ്യാനാകും</translation> <translation id="2021896219286479412">പൂർണ്ണ സ്ക്രീൻ സൈറ്റ് നിയന്ത്രണങ്ങൾ</translation> <translation id="2038563949887743358">'ഡെസ്ക്ടോപ്പ് സൈറ്റ് അഭ്യർത്ഥിക്കുക' ഓണാക്കുക</translation> <translation id="204321170514947529"><ph name="APP_NAME" /> എന്നതിനും Chrome-ൽ ഡാറ്റയുണ്ടായിരുന്നു</translation> @@ -280,7 +279,6 @@ <translation id="2527779675047087889">ക്ലിപ്പ്ബോർഡിലെ ഉള്ളടക്കങ്ങൾ മറയ്ക്കുക</translation> <translation id="2532336938189706096">വെബ് കാഴ്ച</translation> <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> ഇനങ്ങൾ ഇല്ലാതാക്കി</translation> -<translation id="2534582914273493287">നിങ്ങൾ സന്ദർശിക്കുന്ന URL-കൾ Google-ന് അയയ്ക്കുന്നു</translation> <translation id="2536728043171574184">ഈ പേജിന്റെ ഒരു ഓഫ്ലൈൻ പതിപ്പ് കാണുന്നു</translation> <translation id="2546283357679194313">കുക്കികളും സൈറ്റ് ഡാറ്റയും</translation> <translation id="2549516196460093976">ഈ QR കോഡ് ദൃശ്യമാക്കുന്ന കമ്പ്യൂട്ടറിൽ സൈൻ ഇൻ ചെയ്യാൻ നിങ്ങൾക്ക് ഈ ടാബ്ലെറ്റ് ഉപയോഗിക്കാം.</translation> @@ -372,7 +370,6 @@ <translation id="2996291259634659425">പാസ്ഫ്രെയ്സ് സൃഷ്ടിക്കുക</translation> <translation id="2996809686854298943">URL ആവശ്യമാണ്</translation> <translation id="2997081575621687554">ഒരു Google സൈറ്റ് അവരുടെ പേജിലെ ലിങ്കുകൾ സ്വകാര്യമായി മുൻകൂട്ടി ലോഡ് ചെയ്യാൻ ആവശ്യപ്പെടുമ്പോൾ, കുക്കികളില്ലാതെ Google സെർവറുകൾ മുഖേന പേജുകൾ Chrome എൻക്രിപ്റ്റും മുൻകൂട്ടി ലോഡും ചെയ്യുന്നു. മുൻകൂട്ടി ലോഡ് ചെയ്ത സൈറ്റിൽ നിന്ന് ഇത് നിങ്ങളുടെ ഐഡന്റിറ്റി മറയ്ക്കുന്നു.</translation> -<translation id="3003733539450769656">അപകടകരമായ ഇവന്റുകൾ നടക്കുന്നതിന് മുമ്പ് നിങ്ങൾക്ക് മുന്നറിയിപ്പ് നൽകുന്നു</translation> <translation id="3006881078666935414">ഉപയോഗ ഡാറ്റ ഇല്ല</translation> <translation id="301080557829842765">സ്വകാര്യതാ ഗൈഡ്</translation> <translation id="3016635187733453316">ഈ ഉപകരണം ഇന്റർനെറ്റിലേക്ക് കണക്റ്റ് ചെയ്തിട്ടുണ്ടെന്ന് ഉറപ്പാക്കുക</translation> @@ -432,6 +429,7 @@ <translation id="3284510035090979597">സമയോചിത സഹായം</translation> <translation id="3285080554353377245">Chrome എങ്ങനെ ഉപയോഗിക്കാം എന്നതിനെക്കുറിച്ചുള്ള വീഡിയോകൾ</translation> <translation id="3288003805934695103">പേജ് റീലോഡുചെയ്യുന്നു</translation> +<translation id="3290249595466894471">പുതിയ ഭീഷണികൾ കണ്ടെത്താൻ സഹായിക്കുന്നതിന് പേജുകൾ, ഡൗൺലോഡുകൾ, വിപുലീകരണ ആക്റ്റിവിറ്റി, സിസ്റ്റം വിവരങ്ങൾ എന്നിവയുടെ ഒരു ചെറിയ സാമ്പിളും അയയ്ക്കുന്നു</translation> <translation id="3297344142967351106">ശബ്ദ സഹായം</translation> <translation id="3303414029551471755">ഉള്ളടക്കം ഡൗൺലോഡ് ചെയ്യുന്നതിലേക്ക് തുടരണോ?</translation> <translation id="3334729583274622784">ഫയൽ എക്സ്റ്റൻഷൻ മാറ്റണോ?</translation> @@ -637,7 +635,6 @@ <translation id="4558311620361989323">വെബ്പേജ് കുറുക്കുവഴികൾ</translation> <translation id="4561730552726921821">രജിസ്റ്റർ ചെയ്തു</translation> <translation id="4561979708150884304">കണക്ഷൻ ഇല്ല</translation> -<translation id="4562008740775511591">ഉചിതമായ ഡിഫോൾട്ട് ക്രമീകരണങ്ങൾ Chrome നൽകുന്നു, എന്നാൽ നിങ്ങളുടെ ബ്രൗസിംഗ് ശീലത്തിന് ഏറ്റവും അനുയോജ്യമായ തരത്തിൽ നിങ്ങൾക്ക് അത് ഇഷ്ടാനുസൃതമാക്കാം</translation> <translation id="4565377596337484307">പാസ്വേഡ് മറയ്ക്കുക</translation> <translation id="4572422548854449519">മാനേജ് ചെയ്ത അക്കൗണ്ടിലേക്ക് സൈൻ ഇൻ ചെയ്യുക</translation> <translation id="4576892426230499203">മറ്റൊരു പരിശോധിച്ചുറപ്പിക്കൽ ഓപ്ഷൻ പരീക്ഷിക്കുക</translation> @@ -919,7 +916,6 @@ <translation id="604996488070107836">ഒരു അജ്ഞാതമായ പിശക് കാരണം <ph name="FILE_NAME" /> ഡൗൺലോഡ് ചെയ്യാനായില്ല.</translation> <translation id="605721222689873409">YY</translation> <translation id="6059830886158432458">നിങ്ങളുടെ സ്റ്റോറികളും ആക്റ്റിവിറ്റികളും ഇവിടെ നിയന്ത്രിക്കുക</translation> -<translation id="6069177176307973611">സ്വകാര്യതാ, സുരക്ഷാ ക്രമീകരണങ്ങൾ അവലോകനം ചെയ്യുക</translation> <translation id="6070730414166672373">നിങ്ങളുടെ ബാങ്കിനെ ബന്ധപ്പെടുന്നു</translation> <translation id="6085886413119427067">സുരക്ഷിത കണക്ഷനിലൂടെ വെബ്സൈറ്റുകളിലേക്ക് എങ്ങനെ കണക്റ്റ് ചെയ്യാമെന്ന് നിർണ്ണയിക്കുന്നു</translation> <translation id="6091413777268123602">സ്വകാര്യതാ സാൻഡ്ബോക്സ് ട്രയലുകളിലൂടെ നിങ്ങളുടെ കുറച്ച് ഡാറ്റ മാത്രം ഉപയോഗിച്ച്, സമാന ബ്രൗസിംഗ് അനുഭവം നൽകാൻ സൈറ്റുകൾക്ക് കഴിയും. നിങ്ങൾക്ക് കൂടുതൽ സ്വകാര്യത ലഭിക്കുകയും ക്രോസ് സൈറ്റ് ട്രാക്കിംഗ് കുറയുകയും ചെയ്യും എന്നാണ് ഇതിനർത്ഥം. ട്രയലുകൾ ടെസ്റ്റ് ചെയ്യാൻ തയ്യാറാകുമ്പോൾ ഞങ്ങൾ പുതിയവ ചേർക്കും.</translation> @@ -1040,6 +1036,7 @@ <translation id="6641780377503683465"><ph name="INTEREST" /> നീക്കം ചെയ്യുക</translation> <translation id="6643016212128521049">മായ്ക്കുക</translation> <translation id="6645629752388991326">ഈ ഉപകരണം സുരക്ഷാ കീയായി ഉപയോഗിച്ച് കൊണ്ട് സൈൻ ഇൻ ചെയ്യാവുന്ന ഉപകരണങ്ങൾ നിയന്ത്രിക്കുക.</translation> +<translation id="6647441008198474441">നിങ്ങൾ അടുത്തതായി ഏതൊക്കെ സൈറ്റുകളായിരിക്കും സന്ദർശിക്കുകയെന്ന് പ്രവചിക്കാൻ, നിങ്ങൾ സന്ദർശിക്കുന്ന URL-കൾ Google-ലേക്ക് അയയ്ക്കുന്നു</translation> <translation id="6648459603387803038">നിങ്ങളുടെ അഡ്മിന് വിദൂരമായി ബ്രൗസർ സജ്ജീകരണം മാറ്റാനാകും. ഈ ഉപകരണത്തിലെ ആക്റ്റിവിറ്റി Chrome-ന് പുറത്തും മാനേജ് ചെയ്തേക്കാം.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 എന്നതും മറ്റ് <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> പേയ്മെന്റ് രീതികളും}other{<ph name="CONTACT_PREVIEW" />\u2026 എന്നതും മറ്റ് <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> പേയ്മെന്റ് രീതികളും}}</translation> <translation id="6649642165559792194"><ph name="BEGIN_NEW" />പുതിയ<ph name="END_NEW" /> ചിത്രം പ്രിവ്യൂ ചെയ്യുക</translation> @@ -1047,7 +1044,6 @@ <translation id="6659594942844771486">ബ്രൗസർ ടാബ്</translation> <translation id="666731172850799929"><ph name="APP_NAME" />-ൽ തുറക്കുക</translation> <translation id="6671495933530132209">ചിത്രം പകർത്തുക</translation> -<translation id="6674044799624355221">പുതിയ ഭീഷണികൾ കണ്ടെത്താൻ സഹായിക്കുന്നതിന് പേജുകൾ, ഡൗൺലോഡുകൾ, വിപുലീകരണ ആക്റ്റിവിറ്റി, സിസ്റ്റം വിവരങ്ങൾ എന്നിവയുടെ ഒരു ചെറിയ സാമ്പിൾ അയയ്ക്കുന്നു</translation> <translation id="6674571176963658787">സമന്വയിപ്പിക്കാൻ തുടങ്ങുന്നതിന്, നിങ്ങളുടെ പാസ്ഫ്രെയ്സ് നൽകുക</translation> <translation id="6676840375528380067">ഉപകരണത്തില് നിന്ന് Chrome ഡാറ്റ മായ്ക്കണോ?</translation> <translation id="6684809838922667136">Chrome മെച്ചപ്പെടുത്തുക</translation> @@ -1069,7 +1065,6 @@ <translation id="6802555630140434547">വിൻഡോ അടയ്ക്കും</translation> <translation id="6811034713472274749">പേജ്, കാണാൻ തയ്യാറാണ്</translation> <translation id="6813446258015311409">Chrome-ലേക്ക് സെെൻ ഇൻ ചെയ്യുക, തുറന്നു.</translation> -<translation id="6814033694018386318">Google-മായി നിങ്ങൾ പങ്കിടുന്നത്</translation> <translation id="6817747507826986771">ഈ പേജ് വേഗത്തിൽ പങ്കിടുക. ഈ കുറുക്കുവഴി എഡിറ്റ് ചെയ്യാൻ, സ്പർശിച്ചുപിടിക്കുക.</translation> <translation id="6819199143469632133">Google-ലുള്ള നിങ്ങളുടെ കാര്യങ്ങളെല്ലാം ഉപകരണങ്ങളിൽ ഉടനീളം ലഭ്യമാകാൻ സൈൻ ഇൻ ചെയ്യുക</translation> <translation id="6820686453637990663">CVC</translation> @@ -1164,6 +1159,7 @@ <translation id="7352939065658542140">വീഡിയോ</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{തിരഞ്ഞെടുത്ത ഒരു ഇനം പങ്കിടുക}other{തിരഞ്ഞെടുത്ത # ഇനങ്ങൾ പങ്കിടുക}}</translation> <translation id="7359002509206457351">പേയ്മെന്റ് രീതികൾ ആക്സസ് ചെയ്യുക</translation> +<translation id="7363349185727752629">നിങ്ങളുടെ സ്വകാര്യതാ ചോയ്സുകളെ കുറിച്ചുള്ള ഗൈഡ്</translation> <translation id="7375125077091615385">തരം:</translation> <translation id="7376560087009844242">പേജിലുള്ള കൂടുതൽ ടെക്സ്റ്റ് ഉൾപ്പെടുത്തുന്നതിലൂടെ, 'തിരയാൻ സ്പർശിക്കുക' ഉപയോഗിക്കുമ്പോൾ നിങ്ങൾക്ക് മെച്ചപ്പെട്ട ഫലങ്ങൾ ലഭിച്ചേക്കാം. ഇത് മാറ്റാൻ നിങ്ങൾക്ക് എപ്പോൾ വേണമെങ്കിലും <ph name="BEGIN_LINK" />ക്രമീകരണം<ph name="END_LINK" /> സന്ദർശിക്കാം.</translation> <translation id="7379900596734708416">സൈറ്റുകൾക്കുള്ള ഡാർക്ക് തീം ലഭ്യമാണ്</translation> @@ -1263,6 +1259,7 @@ <translation id="7876243839304621966">എല്ലാം നീക്കംചെയ്യുക</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{നിങ്ങൾക്ക് വായിക്കാത്ത <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> പേജ് ഉണ്ട്}other{നിങ്ങൾക്ക് വായിക്കാത്ത <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> പേജുകൾ ഉണ്ട്}}</translation> <translation id="7886917304091689118">Chrome-ൽ റൺ ചെയ്യുന്നു</translation> +<translation id="7887174313503389866">പ്രധാന സ്വകാര്യതാ, സുരക്ഷാ നിയന്ത്രണങ്ങളെ കുറിച്ചുള്ള മാർഗ്ഗനിർദ്ദേശങ്ങൾ അവലോകനം ചെയ്യൂ. കൂടുതൽ ഓപ്ഷനുകൾക്ക്, വ്യക്തിഗത ക്രമീകരണത്തിലേക്ക് പോകുക.</translation> <translation id="7887334752153342268">തനിപ്പകര്പ്പ്</translation> <translation id="789763218334337857">Chrome എങ്ങനെ ഉപയോഗിക്കാം</translation> <translation id="7903184275147100332">ഇതിന് ഒരു മിനിറ്റ് എടുത്തേക്കാം</translation> @@ -1376,6 +1373,7 @@ <translation id="8445448999790540984">പാസ്വേഡുകൾ എക്സ്പോർട്ട് ചെയ്യാനാവുന്നില്ല</translation> <translation id="8446884382197647889">കൂടുതലറിയുക</translation> <translation id="8453310803815879010">ദിനോസർ ഗെയിം ആരംഭിക്കുക</translation> +<translation id="8460448946170646641">പ്രധാന സ്വകാര്യതാ, സുരക്ഷാ നിയന്ത്രണങ്ങൾ അവലോകനം ചെയ്യുക</translation> <translation id="8461694314515752532">നിങ്ങളുടെ സമന്വയ പാസ്ഫ്രെയ്സ് ഉപയോഗിച്ച്, സമന്വയിപ്പിച്ച ഡാറ്റ എൻക്രിപ്റ്റ് ചെയ്യുക</translation> <translation id="8466613982764129868"><ph name="TARGET_DEVICE_NAME" /> ഉപകരണം ഇന്റർനെറ്റിലേക്ക് കണക്റ്റ് ചെയ്തിട്ടുണ്ടെന്ന് ഉറപ്പാക്കുക</translation> <translation id="8473863474539038330">വിലാസങ്ങളും മറ്റും</translation> @@ -1421,6 +1419,7 @@ <translation id="8636825310635137004">നിങ്ങളുടെ മറ്റ് ഉപകരണങ്ങളിൽ നിന്നുള്ള ടാബുകൾ ലഭിക്കാൻ, സമന്വയിപ്പിക്കൽ ഓണാക്കുക.</translation> <translation id="8641930654639604085">മുതിർന്നവർക്കുള്ള സൈറ്റുകൾ ബ്ലോക്കുചെയ്യുന്നത് പരീക്ഷിച്ചുനോക്കൂ</translation> <translation id="864544049772947936">വിൻഡോകൾ മാനേജ് ചെയ്യുക (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">അപകടകരമായ ഇവന്റുകൾ നടക്കുന്നതിന് മുമ്പ് അവ പ്രവചിക്കുകയും നിങ്ങൾക്ക് മുന്നറിയിപ്പ് നൽകുകയും ചെയ്യുന്നു</translation> <translation id="8646467750715887511">നിങ്ങൾ പേജുകൾ തുറന്നതിന് ശേഷം മാത്രമേ അവ ലോഡ് ചെയ്യൂ.</translation> <translation id="8655129584991699539">Chrome ക്രമീകരണത്തിൽ നിങ്ങൾക്ക് ഈ ഡാറ്റ മായ്ക്കാം</translation> <translation id="8659579665266920523">Chrome ഉപയോഗിച്ച് എങ്ങനെ തിരയാം</translation> @@ -1433,7 +1432,6 @@ <translation id="867767487203716855">അടുത്ത അപ്ഡേറ്റ്</translation> <translation id="8683039184091909753">ചിത്രം</translation> <translation id="8683081248374354009">ഗ്രൂപ്പ് റീസെറ്റ് ചെയ്യുക</translation> -<translation id="8683526617475118045">നിങ്ങൾക്ക് ലഭിക്കുന്ന കാര്യങ്ങൾ</translation> <translation id="869891660844655955">കാലഹരണപ്പെടല് തീയതി</translation> <translation id="8699120352855309748">ഈ ഭാഷകൾ വിവർത്തനം ചെയ്യേണ്ട</translation> <translation id="8712637175834984815">മനസ്സിലായി</translation> @@ -1517,7 +1515,6 @@ <translation id="9148126808321036104">വീണ്ടും പ്രവേശിക്കുക</translation> <translation id="9158770349521403363">ഉള്ളടക്കം മാത്രം പങ്കിടുക</translation> <translation id="9159716826369098114">പുതിയ പശ്ചാത്തല ടാബ് ഗ്രൂപ്പായി <ph name="TAB_COUNT" /> ടാബുകളുള്ള ടാബ് ഗ്രൂപ്പ് പുനഃസ്ഥാപിക്കുക.</translation> -<translation id="916446198114569890">നിങ്ങൾ സന്ദർശിക്കുന്ന URL-കൾ നിങ്ങളുടെ Google അക്കൗണ്ടിൽ സംരക്ഷിക്കുന്നു</translation> <translation id="9169507124922466868">നാവിഗേഷൻ ചരിത്രം പകുതിയായി തുറന്നിരിക്കുന്നു</translation> <translation id="9187955620966010988">പ്രതികരണം ക്രമീകരിച്ചു</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{ഒരു മിനിറ്റ് മുമ്പ് പരിശോധിച്ചു}other{# മിനിറ്റ് മുമ്പ് പരിശോധിച്ചു}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_mn.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_mn.xtb index 45191780..9749edf 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_mn.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_mn.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">Эдгээр сайтыг орчуулахыг бүү санал болго</translation> <translation id="1145536944570833626">Одоо байгаа өгөгдлийг устгана уу.</translation> <translation id="1146678959555564648">VR-г оруулна уу</translation> -<translation id="114825011539563458">Нууцлал болон аюулгүй байдлын хамгийн чухал хяналтууд нэг дор</translation> <translation id="1149401351239820326">Хугацаа дуусах сар</translation> <translation id="1150263420752757504"><ph name="APP_NAME" />-г Chrome-д нээнэ. Үргэлжлүүлснээр та <ph name="BEGIN_LINK1" />Google-н үйлчилгээний нөхцөл<ph name="END_LINK1" /> болон <ph name="BEGIN_LINK2" />Google Chrome, ChromeOS-н үйлчилгээний нэмэлт нөхцөлийг<ph name="END_LINK2" /> зөвшөөрч байна.</translation> <translation id="1154704303112745282">Хуудас офлайн үед боломжгүй: <ph name="VIOLATED_URL" /></translation> @@ -170,6 +169,7 @@ <translation id="189358972401248634">Бусад хэлнүүд</translation> <translation id="1894023287452300670">Эндээс үнэ хянаарай</translation> <translation id="1900260903084164610">Үргэлжлүүлснээр та <ph name="BEGIN_TOS_LINK" />Үйлчилгээний нөхцөлийг<ph name="END_TOS_LINK" /> зөвшөөрч байна.</translation> +<translation id="1904580727789512086">Таны зочилсон URL-уудыг Google Бүртгэлд тань хадгалсан.</translation> <translation id="1910950723001426294">Хуваалцах сонголтын жагсаалтыг хаасан.</translation> <translation id="1918175104945982129">Туслахын дуут хайлтын зөвшөөрлийн ui-г хагас өндрөөр нээсэн</translation> <translation id="1919130412786645364">Chromium-д нэвтрэхийг зөвшөөрөх</translation> @@ -194,7 +194,6 @@ <translation id="2000419248597011803">Таны өгөгдмөл хайлтын системд хаяг оруулах хэсэг, хайх хэсгийн зарим күүки болон хайлтыг илгээдэг</translation> <translation id="200114059308480249">Google-н хайлтуудад эргэн тойрны текстийг оруулах уу?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# Файл}other{# Файл}}</translation> -<translation id="2020309681647789787">Таны бүх синк хийсэн төхөөрөмж дээр таны түүхийг хадгална. Ингэснээр та хийж байсан зүйлээ үргэлжлүүлэх боломжтой</translation> <translation id="2021896219286479412">Бүтэн дэлгэцийн сайтын хяналт</translation> <translation id="2038563949887743358">Сайтыг компьютерийн горимоор харах хүсэлтийг асаах</translation> <translation id="204321170514947529">Мөн Chrome-д <ph name="APP_NAME" />-н өгөгдөл байна</translation> @@ -280,7 +279,6 @@ <translation id="2527779675047087889">Түр санах ойн контентыг нуух</translation> <translation id="2532336938189706096">Веб харах</translation> <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> зүйлийг устгасан</translation> -<translation id="2534582914273493287">Таны зочилсон URL-г Google-д илгээдэг</translation> <translation id="2536728043171574184">Энэ хуудсын офлайн хуулбарыг харж байна</translation> <translation id="2546283357679194313">Cookies болон сайтын дата</translation> <translation id="2549516196460093976">Та энэ QR кодыг үзүүлж буй компьютерт нэвтрэхийн тулд энэ таблетыг ашиглах боломжтой.</translation> @@ -372,7 +370,6 @@ <translation id="2996291259634659425">Нэвтрэх үг үүсгэх</translation> <translation id="2996809686854298943">URL шаардлагатай</translation> <translation id="2997081575621687554">Google-н сайт өөрийн хуудсан дээр холбооснуудыг нууцлалтайгаар урьдчилан ачаалахыг хүсэх үед Chrome нь хуудаснуудыг күүкигүйгээр Google-н серверүүдээр шифрлэж, урьдчилан ачаална. Энэ нь таны таниулбарыг урьдчилан ачаалсан сайтаас нууна.</translation> -<translation id="3003733539450769656">Аюултай үйл явдал тохиолдохоос өмнө танд анхааруулна</translation> <translation id="3006881078666935414">Хэрэглээний дата алга</translation> <translation id="301080557829842765">Нууцлалын хөтөч</translation> <translation id="3016635187733453316">Энэ төхөөрөмж интернэтэд холбогдсон эсэхийг шалгана уу</translation> @@ -432,6 +429,7 @@ <translation id="3284510035090979597">Идэвхтэй тусламж</translation> <translation id="3285080554353377245">Chrome-г хэрхэн ашиглах тухай видео</translation> <translation id="3288003805934695103">Хуудсыг дахин ачаалж байна</translation> +<translation id="3290249595466894471">Шинэ аюул заналыг олж илрүүлэхэд туслахын тулд хуудас, татаж авсан файл, өргөтгөлийн үйл ажиллагаа болон системийн мэдээллийн багахан хэсгийг мөн илгээнэ.</translation> <translation id="3297344142967351106">Дуут тусламж</translation> <translation id="3303414029551471755">Контентыг татаж авах үйлдлийг эхлүүлэх үү?</translation> <translation id="3334729583274622784">Файлын өргөтгөлийг өөрчлөх үү?</translation> @@ -637,7 +635,6 @@ <translation id="4558311620361989323">Веб хуудaсны товчлол</translation> <translation id="4561730552726921821">Бүртгэл амжилттай</translation> <translation id="4561979708150884304">Холболт алга</translation> -<translation id="4562008740775511591">Chrome боломжийн өгөгдмөл тохиргоо өгдөг хэдий ч та үүнийг үзэх зуршилдаа хамгийн тохиромжтойгоор тааруулан өөрчлөх боломжтой</translation> <translation id="4565377596337484307">Нууц үгийг нуух</translation> <translation id="4572422548854449519">Удирдсан бүртгэл рүү нэвтэрнэ үү</translation> <translation id="4576892426230499203">Баталгаажуулалтын өөр сонголтыг туршиж үзнэ үү</translation> @@ -918,7 +915,6 @@ <translation id="604996488070107836">Үл мэдэгдэх алдааны улмаас <ph name="FILE_NAME" />-г татаж чадсангүй.</translation> <translation id="605721222689873409">YY</translation> <translation id="6059830886158432458">Мэдээ, нийтлэл болон үйл ажиллагаагаа энд хянана уу</translation> -<translation id="6069177176307973611">Нууцлал болон аюулгүй байдлын тохиргоог шалгана уу</translation> <translation id="6070730414166672373">Таны банктай холбогдож байна\u2026</translation> <translation id="6085886413119427067">Веб сайтуудтай аюулгүй холболтоор хэрхэн холбогдохыг шийддэг</translation> <translation id="6091413777268123602">Privacy Sandbox-н туршилтын хугацаагаар сайтууд таны өгөгдлийг бага хэмжээгээр ашиглан ижил үзэх туршлагыг хүргэх боломжтой. Энэ нь та илүү нууцлалтай байх бөгөөд сайт хооронд хяналт бага байна гэсэн үг юм. Бид эдгээрийг туршихад бэлэн болоход шинэ туршилтын хугацаа нэмнэ.</translation> @@ -1039,6 +1035,7 @@ <translation id="6641780377503683465"><ph name="INTEREST" />-г хасах</translation> <translation id="6643016212128521049">Цэвэрлэх</translation> <translation id="6645629752388991326">Энэ төхөөрөмжийг ямар төхөөрөмжүүд аюулгүй байдлын түлхүүрээр ашиглан нэвтэрч болохыг хянана уу.</translation> +<translation id="6647441008198474441">Таны зочилсон URL-г Google рүү илгээж, дараа нь ямар сайтад зочилж болохыг таамаглах болно</translation> <translation id="6648459603387803038">Танай администратор хөтчийн тань тохируулгыг алсаас өөрчлөх боломжтой. Энэ төхөөрөмж дээрх үйл ажиллагааг мөн Chrome-с гадуур удирддаг байж болно.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 болон бусад <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}other{<ph name="CONTACT_PREVIEW" />\u2026 болон бусад <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}}</translation> <translation id="6649642165559792194">Зургийг урьдчилан үзэх <ph name="BEGIN_NEW" />Шинэ<ph name="END_NEW" /></translation> @@ -1046,7 +1043,6 @@ <translation id="6659594942844771486">Таб</translation> <translation id="666731172850799929"><ph name="APP_NAME" /> дотор нээ</translation> <translation id="6671495933530132209">Зургийг хуулах</translation> -<translation id="6674044799624355221">Шинэ аюул заналыг олж илрүүлэхэд туслахын тулд хуудас, татаж авсан файл, өргөтгөлийн үйл ажиллагаа болон системийн мэдээллийн багахан хэсгийг илгээнэ.</translation> <translation id="6674571176963658787">Синк хийж эхлэхийн тулд нэвтрэх үгээ оруулна уу</translation> <translation id="6676840375528380067">Энэ төхөөрөмжөөс Chrome-н өгөгдлөө устгах уу?</translation> <translation id="6684809838922667136">Chrome-г сайжруулаарай</translation> @@ -1068,7 +1064,6 @@ <translation id="6802555630140434547">Цонхыг хаана</translation> <translation id="6811034713472274749">Хуудсыг харахад бэлэн байна</translation> <translation id="6813446258015311409">Chrome-д нэвтэрнэ үү, нээсэн.</translation> -<translation id="6814033694018386318">Таны Google-тэй хуваалцдаг зүйл</translation> <translation id="6817747507826986771">Энэ хуудсыг шуурхай хуваалцаарай. Энэ товчлолыг засахын тулд хүрээд удаан дарна уу.</translation> <translation id="6819199143469632133">Google-н зүйлээ төхөөрөмжөөр авахын тулд нэвтэрнэ үү</translation> <translation id="6820686453637990663">CVC</translation> @@ -1163,6 +1158,7 @@ <translation id="7352939065658542140">ВИДЕО</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{Сонгосон 1 зүйлийг хуваалцах}other{Сонгосон # зүйлийг хуваалцах }}</translation> <translation id="7359002509206457351">Төлбөрийн хэрэгсэлд хандах</translation> +<translation id="7363349185727752629">Таны нууцлалын сонголтуудын гарын авлага</translation> <translation id="7375125077091615385">Бичих:</translation> <translation id="7376560087009844242">Хайхын тулд хүрэхийг ашиглаж байхдаа хуудасны текстээс илүү ихийг багтааснаар та илүү сайн илэрцүүд харж магадгүй. Та үүнийг өөрчлөхийн тулд хүссэн үедээ <ph name="BEGIN_LINK" />тохиргоонд<ph name="END_LINK" /> зочлох боломжтой.</translation> <translation id="7379900596734708416">Сайтуудад зориулсан Бараан загвар боломжтой байна</translation> @@ -1262,6 +1258,7 @@ <translation id="7876243839304621966">Бүгдийг устгах</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{Танд уншаагүй <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> хуудас байна}other{Танд уншаагүй <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> хуудас байна}}</translation> <translation id="7886917304091689118">Chrome-д ажиллаж байна</translation> +<translation id="7887174313503389866">Нууцлал болон аюулгүй байдлын үндсэн хяналтын талаар хөтөчтэй аялалд хамрагдаарай. Нэмэлт сонголтуудыг харахын тулд хувийн тохиргоо руу очно уу.</translation> <translation id="7887334752153342268">Хувилах</translation> <translation id="789763218334337857">Chrome-г хэрхэн ашиглах вэ</translation> <translation id="7903184275147100332">Үүнд нэг минут шаардаж магадгүй</translation> @@ -1375,6 +1372,7 @@ <translation id="8445448999790540984">Нууц үгийг экспорт хийх боломжгүй</translation> <translation id="8446884382197647889">Дэлгэрэнгүй мэдээлэл</translation> <translation id="8453310803815879010">Дино тоглоом эхлүүлэх</translation> +<translation id="8460448946170646641">Нууцлал болон аюулгүй байдлын үндсэн хяналтуудыг шалгана уу</translation> <translation id="8461694314515752532">Синк хийсэн өгөгдлийг синкийн нэвтрэх үгээрээ шифрлэх</translation> <translation id="8466613982764129868"><ph name="TARGET_DEVICE_NAME" /> интернэтэд холбогдсон эсэхийг шалгана уу</translation> <translation id="8473863474539038330">Хаяг болон бусад</translation> @@ -1420,6 +1418,7 @@ <translation id="8636825310635137004">Бусад төхөөрөмжөөс чихтэй хуудсаа авахын тулд синкийг асаана уу.</translation> <translation id="8641930654639604085">Насанд хүрэгчдэд зориулсан сайтыг блоклох</translation> <translation id="864544049772947936">Цонхнуудыг удирдах (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">Аюултай үйл явдлын тухай урьдчилан таамаглаж, тохиолдохоос нь өмнө танд анхааруулга өгдөг</translation> <translation id="8646467750715887511">Таныг зөвхөн хуудаснуудыг нээсний дараа тэдгээрийг ачаална.</translation> <translation id="8655129584991699539">Та өгөгдлийг Chrome тохиргоонд устгаж болно</translation> <translation id="8659579665266920523">Chrome-р хэрхэн хайх вэ</translation> @@ -1432,7 +1431,6 @@ <translation id="867767487203716855">Дараагийн шинэчлэлт</translation> <translation id="8683039184091909753">зураг</translation> <translation id="8683081248374354009">Бүлгийг шинэчлэх</translation> -<translation id="8683526617475118045">Таны эдлэх үр өгөөж</translation> <translation id="869891660844655955">Дуусах хугацаа</translation> <translation id="8699120352855309748">Эдгээр хэлийг орчуулахыг бүү санал болго</translation> <translation id="8712637175834984815">Ойлголоо</translation> @@ -1516,7 +1514,6 @@ <translation id="9148126808321036104">Дансандаа дахин нэвтрэх</translation> <translation id="9158770349521403363">Зөвхөн контент хуваалцана уу</translation> <translation id="9159716826369098114"><ph name="TAB_COUNT" /> табтай табын бүлгийг шинэ дэвсгэр табын бүлгээр сэргээнэ үү.</translation> -<translation id="916446198114569890">Таны зочилсон URL-уудыг таны Google Бүртгэлд хадгалсан</translation> <translation id="9169507124922466868">Навигацын түүхийг хагас нээлээ</translation> <translation id="9187955620966010988">Хариу үйлдлийг тохируулсан</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{1 минутын өмнө шалгасан}other{# минутын өмнө шалгасан}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_mr.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_mr.xtb index 8443930..d175d5d 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_mr.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_mr.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">या साइटचे भाषांतर करणे ऑफर करू नका</translation> <translation id="1145536944570833626">विद्यमान डेटा हटवा.</translation> <translation id="1146678959555564648">VR एंटर करा</translation> -<translation id="114825011539563458">सर्वात महत्त्वाची गोपनीयता आणि सुरक्षा नियंत्रणे एकाच ठिकाणी</translation> <translation id="1149401351239820326">कालबाह्य होण्याचा महिना:</translation> <translation id="1150263420752757504"><ph name="APP_NAME" /> हे Chrome मध्ये उघडेल. पुढे सुरू ठेवून, तुम्ही <ph name="BEGIN_LINK1" />Google सेवा अटी<ph name="END_LINK1" /> आणि <ph name="BEGIN_LINK2" />Google Chrome व ChromeOS च्या अतिरिक्त सेवा अटी<ph name="END_LINK2" /> यांना सहमती दर्शवता.</translation> <translation id="1154704303112745282">पेज ऑफलाइन उपलब्ध नाही: <ph name="VIOLATED_URL" /></translation> @@ -170,6 +169,7 @@ <translation id="189358972401248634">इतर भाषा</translation> <translation id="1894023287452300670">येथे किमतीचा माग ठेवा</translation> <translation id="1900260903084164610">पुढे सुरू ठेवून, तुम्ही <ph name="BEGIN_TOS_LINK" />सेवा अटी<ph name="END_TOS_LINK" /> यांना सहमती दर्शवता.</translation> +<translation id="1904580727789512086">तुम्ही भेट दिलेल्या URL तुमच्या Google खाते मध्ये सेव्ह केल्या जातात</translation> <translation id="1910950723001426294">शेअरिंग पर्यांयाची सूची बंद आहे.</translation> <translation id="1918175104945982129">Assistant च्या व्हॉइस शोध संमतीशी संबंधित UI स्क्रीनवर अर्ध्या उंचीपर्यंत उघडले</translation> <translation id="1919130412786645364">Chrome मध्ये साइन इन करण्यासाठी अनुमती द्या</translation> @@ -194,7 +194,6 @@ <translation id="2000419248597011803">ॲड्रेस बार आणि सर्च बॉक्समधून तुमच्या डीफॉल्ट शोध इंजिनला काही कुकीज आणि शोध पाठवते</translation> <translation id="200114059308480249">Google वर शोधताना आसपासच्या मजकुराचा समावेश करायचा आहे का?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# फाइल}other{# फाइल}}</translation> -<translation id="2020309681647789787">तुमच्याकडे तुमच्या सर्व डिव्हाइसवर सिंक केलेला इतिहास असेल, जेणेकरून तुम्ही जे करत होता ते पुढे सुरू ठेवू शकता</translation> <translation id="2021896219286479412">फुल स्क्रीन साइट नियंत्रणे</translation> <translation id="2038563949887743358">डेस्कटॉप साइट विनंती सुरू करा</translation> <translation id="204321170514947529"><ph name="APP_NAME" />चा Chrome मध्ये देखील डेटा आहे</translation> @@ -280,7 +279,6 @@ <translation id="2527779675047087889">क्लिपबोर्डवरील आशय लपवा</translation> <translation id="2532336938189706096">वेब दृश्य</translation> <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> आयटम हटवले</translation> -<translation id="2534582914273493287">Google ला तुम्ही भेट दिलेल्या URLs पाठवल्या जातात</translation> <translation id="2536728043171574184">या पेजची ऑफलाइन प्रत पाहत आहे</translation> <translation id="2546283357679194313">कुकीज आणि साइट डेटा</translation> <translation id="2549516196460093976">तुम्ही हा QR कोड प्रदर्शित करणाऱ्या कॉंप्युटरवर साइन इन करण्यासाठी हा टॅबलेट वापरू शकता.</translation> @@ -372,7 +370,6 @@ <translation id="2996291259634659425">सांकेतिक पासफ्रेझ तयार करा</translation> <translation id="2996809686854298943">URL आवश्यक आहे</translation> <translation id="2997081575621687554">Google साइटने त्यांच्या पेजवरील लिंक खाजगीरीत्या प्रीलोड करण्यास सांगितल्यास, Chrome हे कुकीशिवाय Google सर्व्हरद्वारे पेज एंक्रिप्ट आणि प्रीलोड करते. हे प्रीलोड केलेल्या साइटपासून तुमची ओळख लपवते.</translation> -<translation id="3003733539450769656">धोकादायक घटना घडण्याआधी तुम्हाला चेतावणी देते</translation> <translation id="3006881078666935414">वापराचा कोणताही डेटा नाही</translation> <translation id="301080557829842765">गोपनीयता मार्गदर्शक</translation> <translation id="3016635187733453316">हे डिव्हाइस इंटरनेटशी कनेक्ट केले असल्याची खात्री करा</translation> @@ -432,6 +429,7 @@ <translation id="3284510035090979597">प्रोअॅक्टिव्ह मदत</translation> <translation id="3285080554353377245">Chrome कसे वापरावे याबद्दल व्हिडिओ</translation> <translation id="3288003805934695103">पृष्ठ रीलोड करणे</translation> +<translation id="3290249595466894471">तसेच नवीन धोके शोधण्यात मदत करण्यासाठी पेज, डाउनलोड, एक्स्टेंशन अॅक्टिव्हिटी आणि सिस्टीम माहिती यांचे लहान नमुने पाठवते</translation> <translation id="3297344142967351106">व्हॉइस साहाय्य</translation> <translation id="3303414029551471755">आशय डाउनलोड करणे सुरू ठेवायचे?</translation> <translation id="3334729583274622784">फाइल एक्स्टेंशन बदलायचे आहे का?</translation> @@ -637,7 +635,6 @@ <translation id="4558311620361989323">वेबपेज शॉर्टकट</translation> <translation id="4561730552726921821">नोंदणी यशस्वीरीत्या पूर्ण केली</translation> <translation id="4561979708150884304">कनेक्शन नाही</translation> -<translation id="4562008740775511591">Chrome वाजवी डीफॉल्ट पुरवते, पण तुमच्या ब्राउझ करण्याच्या सवयीला अनुसरून तुम्ही ते कस्टमाइझ करू शकता</translation> <translation id="4565377596337484307">पासवर्ड लपवा</translation> <translation id="4572422548854449519">व्यवस्थापित केलेल्या खात्यामध्ये साइन इन करा</translation> <translation id="4576892426230499203">पडताळणी करण्याचा दुसरा पर्याय वापरून पहा</translation> @@ -919,7 +916,6 @@ <translation id="604996488070107836">अज्ञात एररमुळे <ph name="FILE_NAME" /> डाउनलोड करणे अयशस्वी झाले.</translation> <translation id="605721222689873409">YY</translation> <translation id="6059830886158432458">तुमच्या स्टोरी आणि अॅक्टिव्हिटी येथे नियंत्रित करा</translation> -<translation id="6069177176307973611">गोपनीयता आणि सुरक्षा सेटिंग्जचे पुनरावलोकन करा</translation> <translation id="6070730414166672373">तुमच्या बँकशी संपर्क करत आहे\u2026</translation> <translation id="6085886413119427067">वेबसाइटशी सुरक्षित कनेक्शनवरून कसे कनेक्ट करावे ते निर्धारित करते</translation> <translation id="6091413777268123602">प्रायव्हसी सॅंडबाॅक्स चाचण्या वापरून, साइट तुमचा कमी डेटा वापरून समान ब्राउझिंग अनुभव डिलिव्हर करू शकतात. त्याचा अर्थ असा, की तुमच्यासाठी आणखी गोपनीयता आणि कमी क्रॉस-साइट ट्रॅकिंग आहे. आम्ही नवीन चाचण्या जोडू, कारण त्या चाचणीसाठी तयार आहेत.</translation> @@ -1040,6 +1036,7 @@ <translation id="6641780377503683465"><ph name="INTEREST" /> काढून टाका</translation> <translation id="6643016212128521049">साफ करा</translation> <translation id="6645629752388991326">सिक्युरिटी की म्हणून हे डिव्हाइस वापरून कोणती डिव्हाइस साइन इन करू शकतात ते नियंत्रित करा.</translation> +<translation id="6647441008198474441">तुम्ही भेट देता त्या URLs तुम्ही पुढे कोणत्या साइटला भेट देऊ शकता याचा अंदाज घेण्यासाठी Google ला पाठवल्या जातात</translation> <translation id="6648459603387803038">तुमचा अॅडमिनिस्ट्रेटर तुमच्या ब्राउझरचा सेटअप रिमोट पद्धतीने बदलू शकतो. या डिव्हाइसवरील अॅक्टिव्हिटी कदाचित Chrome च्या बाहेर व्यवस्थापित केलेली असू शकते.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 आणि <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> अधिक}other{<ph name="CONTACT_PREVIEW" />\u2026 आणि <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> अधिक}}</translation> <translation id="6649642165559792194">इमेज <ph name="BEGIN_NEW" />नवीन<ph name="END_NEW" /> चे पूर्वावलोकन करा</translation> @@ -1047,7 +1044,6 @@ <translation id="6659594942844771486">ब्राउझर टॅब</translation> <translation id="666731172850799929"><ph name="APP_NAME" /> मध्ये उघडा</translation> <translation id="6671495933530132209">इमेज कॉपी करा</translation> -<translation id="6674044799624355221">नवीन धोके शोधण्यात मदत करण्यासाठी पेज, डाउनलोड, एक्स्टेंशन अॅक्टिव्हिटी आणि सिस्टीम माहिती यांचे लहान नमुने पाठवते</translation> <translation id="6674571176963658787">सिंक सुरू करण्यासाठी तुमचा पासफ्रेझ एंटर करा</translation> <translation id="6676840375528380067">या डिव्हाइसवरून तुमचा Chrom डेटा साफ करायचा?</translation> <translation id="6684809838922667136">Chrome मध्ये सुधारणा करा</translation> @@ -1069,7 +1065,6 @@ <translation id="6802555630140434547">विंडो बंद केली जाईल</translation> <translation id="6811034713472274749">पेज पाहाण्यासाठी तयार आहे</translation> <translation id="6813446258015311409">Chrome मध्ये साइन इन करा, उघडले.</translation> -<translation id="6814033694018386318">तुम्ही Google सोबत काय शेअर करता</translation> <translation id="6817747507826986771">हे पेज झटपट शेअर करा. हा शॉर्टकट संपादित करण्यासाठी, स्पर्श करा आणि धरून ठेवा.</translation> <translation id="6819199143469632133">सर्व डिव्हाइसवर तुमच्या Google संबंधित गोष्टी मिळवण्यासाठी, साइन इन करा</translation> <translation id="6820686453637990663">CVC</translation> @@ -1164,6 +1159,7 @@ <translation id="7352939065658542140">व्हिडिओ</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{1 निवडलेला आयटम शेअर करा}other{# निवडलेले आयटम शेअर करा}}</translation> <translation id="7359002509206457351">पेमेंट पद्धती अॅक्सेस करा</translation> +<translation id="7363349185727752629">तुमच्या गोपनीयता निवडींचे मार्गदर्शक</translation> <translation id="7375125077091615385">प्रकार:</translation> <translation id="7376560087009844242">एखाद्या पेजवरील जास्त मजकुराचा समावेश केल्याने, शोधण्यासाठी स्पर्श करा हे वापरताना तुम्हाला आणखी चांगले परिणाम दिसू शकतात. हे बदलण्यासाठी तुम्ही <ph name="BEGIN_LINK" />सेटिंग्ज<ph name="END_LINK" /> ना कधीही भेट देऊ शकता.</translation> <translation id="7379900596734708416">साइटसाठी गडद थीम उपलब्ध आहेत</translation> @@ -1263,6 +1259,7 @@ <translation id="7876243839304621966">सर्व काढून टाका</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{तुमच्याकडे <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> न वाचलेले पेज आहे}other{तुमच्याकडे <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> न वाचलेली पेज आहेत}}</translation> <translation id="7886917304091689118">Chrome मध्ये चालत आहे</translation> +<translation id="7887174313503389866">महत्त्वाच्या गोपनीयता आणि सुरक्षा नियंत्रणांचा डेमो पहा. अधिक पर्यायांसाठी, वैयक्तिक सेटिंग्जवर जा.</translation> <translation id="7887334752153342268">डुप्लिकेट</translation> <translation id="789763218334337857">Chrome कसे वापरावे</translation> <translation id="7903184275147100332">यासाठी एक मिनिट लागू शकतो</translation> @@ -1376,6 +1373,7 @@ <translation id="8445448999790540984">पासवर्ड एक्सपोर्ट करू शकत नाही</translation> <translation id="8446884382197647889">अधिक जाणून घ्या</translation> <translation id="8453310803815879010">Dino गेम सुरू करा</translation> +<translation id="8460448946170646641">महत्त्वाच्या गोपनीयता आणि सुरक्षा नियंत्रणांचे पुनरावलोकन करा</translation> <translation id="8461694314515752532">तुमच्या स्वतःच्या सिंक पासफ्रेजसह सिंक केलेला डेटा एंक्रिप्ट करा</translation> <translation id="8466613982764129868"><ph name="TARGET_DEVICE_NAME" /> इंटरनेटशी कनेक्ट केले असल्याची खात्री करा</translation> <translation id="8473863474539038330">पत्ते आणि बरेच काही</translation> @@ -1421,6 +1419,7 @@ <translation id="8636825310635137004">आपल्या इतर डिव्हाइसेस मधून तुमचे टॅब प्राप्त करण्यासाठी, सिंक सुरू करा</translation> <translation id="8641930654639604085">प्रौढ आशय असलेल्या साइटना ब्लॉक करण्याचा प्रयत्न करा</translation> <translation id="864544049772947936">विंडो व्यवस्थापित करा (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">धोकादायक घटना घडण्याआधी त्यांचे पूर्वानुमान करते आणि त्यांबद्दल तुम्हाला चेतावणी देते</translation> <translation id="8646467750715887511">तुम्ही पेज उघडल्यानंतरच ती लोड होतात.</translation> <translation id="8655129584991699539">तुम्ही Chrome सेटिंग्जमध्ये डेटा साफ करू शकता</translation> <translation id="8659579665266920523">Chrome सह कसे शोधावे</translation> @@ -1433,7 +1432,6 @@ <translation id="867767487203716855">पुढील अपडेट</translation> <translation id="8683039184091909753">इमेज</translation> <translation id="8683081248374354009">गट रीसेट करा</translation> -<translation id="8683526617475118045">तुम्हाला काय मिळते</translation> <translation id="869891660844655955">कालावधी समाप्ती तारीख</translation> <translation id="8699120352855309748">या भाषांचे भाषांतर करणे ऑफर करू नका</translation> <translation id="8712637175834984815">समजले</translation> @@ -1517,7 +1515,6 @@ <translation id="9148126808321036104">पुन्हा साइन इन करा </translation> <translation id="9158770349521403363">फक्त आशय शेअर करा</translation> <translation id="9159716826369098114">नवीन बॅकग्राउंड टॅब गट म्हणून <ph name="TAB_COUNT" /> टॅबचा टॅब गट रिस्टोअर करा.</translation> -<translation id="916446198114569890">तुम्ही भेट देता त्या URL तुमच्या Google खात्यामध्ये सेव्ह केल्या जातात</translation> <translation id="9169507124922466868">नेव्हिगेशन इतिहास अर्धा उघडा आहे</translation> <translation id="9187955620966010988">प्रतिक्रिया अॅडजस्ट केली आहे</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{एका मिनिटापूर्वी तपासले}other{# मिनिटांपूर्वी तपासले}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_ms.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_ms.xtb index 8711d11..8b68827 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_ms.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_ms.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">Jangan tawarkan untuk menterjemahkan tapak ini</translation> <translation id="1145536944570833626">Padam data sedia ada.</translation> <translation id="1146678959555564648">Masukkan VR</translation> -<translation id="114825011539563458">Kawalan privasi dan keselamatan yang paling penting di satu tempat</translation> <translation id="1149401351239820326">Bulan tamat tempoh</translation> <translation id="1150263420752757504"><ph name="APP_NAME" /> akan dibuka dalam Chrome. Dengan meneruskan penggunaan, anda bersetuju menerima <ph name="BEGIN_LINK1" />Syarat Perkhidmatan Google<ph name="END_LINK1" /> dan <ph name="BEGIN_LINK2" />Syarat Perkhidmatan Tambahan Google Chrome dan Chrome OS<ph name="END_LINK2" />.</translation> <translation id="1154704303112745282">Halaman tidak tersedia di luar talian: <ph name="VIOLATED_URL" /></translation> @@ -170,6 +169,7 @@ <translation id="189358972401248634">Bahasa lain</translation> <translation id="1894023287452300670">Jejaki harga di sini</translation> <translation id="1900260903084164610">Dengan meneruskan penggunaan, anda bersetuju menerima <ph name="BEGIN_TOS_LINK" />Syarat Perkhidmatan<ph name="END_TOS_LINK" />.</translation> +<translation id="1904580727789512086">URL yang anda lawati disimpan pada Google Account anda</translation> <translation id="1910950723001426294">Senarai pilihan perkongsian ditutup.</translation> <translation id="1918175104945982129">UI persetujuan carian suara Assistant dibuka pada ketinggian separuh</translation> <translation id="1919130412786645364">Benarkan log masuk Chrome</translation> @@ -194,7 +194,6 @@ <translation id="2000419248597011803">Menghantar beberapa kuki dan carian daripada bar alamat dan kotak carian ke enjin carian lalai anda</translation> <translation id="200114059308480249">Sertakan teks sekitar dalam carian Google?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# Fail}other{# Fail}}</translation> -<translation id="2020309681647789787">Sejarah anda boleh didapati pada semua peranti tersegerak anda, jadi anda boleh meneruskan perkara yang sedang anda lakukan</translation> <translation id="2021896219286479412">Kawalan tapak skrin penuh</translation> <translation id="2038563949887743358">Hidupkan Minta tapak desktop</translation> <translation id="204321170514947529"><ph name="APP_NAME" /> juga mempunyai data dalam Chrome</translation> @@ -280,7 +279,6 @@ <translation id="2527779675047087889">Sembunyikan kandungan papan keratan</translation> <translation id="2532336938189706096">Paparan Web</translation> <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> item dipadamkan</translation> -<translation id="2534582914273493287">URL yang anda lawati dihantar kepada Google</translation> <translation id="2536728043171574184">Melihat salinan luar talian halaman ini</translation> <translation id="2546283357679194313">Kuki dan data tapak</translation> <translation id="2549516196460093976">Anda boleh menggunakan tablet ini untuk log masuk pada komputer yang memaparkan kod QR ini.</translation> @@ -372,7 +370,6 @@ <translation id="2996291259634659425">Buat ungkapan laluan</translation> <translation id="2996809686854298943">URL yang diperlukan</translation> <translation id="2997081575621687554">Apabila laman Google meminta pramuat pautan secara peribadi pada halaman mereka, Chrome menyulitkan dan mempramuat halaman melalui pelayan Google tanpa kuki. Tindakan ini akan menyembunyikan identiti anda daripada laman yang dipramuat.</translation> -<translation id="3003733539450769656">Memberi anda amaran tentang peristiwa berbahaya sebelum peristiwa itu berlaku</translation> <translation id="3006881078666935414">Tiada data penggunaan</translation> <translation id="301080557829842765">Panduan privasi</translation> <translation id="3016635187733453316">Pastikan peranti ini disambungkan ke Internet</translation> @@ -432,6 +429,7 @@ <translation id="3284510035090979597">Bantuan Proaktif</translation> <translation id="3285080554353377245">Video tentang cara menggunakan Chrome</translation> <translation id="3288003805934695103">Memuatkan semula halaman</translation> +<translation id="3290249595466894471">Turut menghantar sedikit sampel halaman, muat turun, aktiviti sambungan dan maklumat sistem untuk membantu penemuan ancaman baharu</translation> <translation id="3297344142967351106">Bantuan suara</translation> <translation id="3303414029551471755">Teruskan memuat turun kandungan?</translation> <translation id="3334729583274622784">Tukar sambungan fail?</translation> @@ -637,7 +635,6 @@ <translation id="4558311620361989323">Pintasan halaman web</translation> <translation id="4561730552726921821">Pendaftaran berjaya</translation> <translation id="4561979708150884304">Tiada sambungan</translation> -<translation id="4562008740775511591">Chrome memberikan tetapan lalai yang munasabah, tetapi anda boleh menyesuaikan tetapan tersebut agar sesuai dengan tabiat menyemak imbas anda</translation> <translation id="4565377596337484307">Sembunyikan kata laluan</translation> <translation id="4572422548854449519">Log masuk ke akaun terurus</translation> <translation id="4576892426230499203">Cuba pilihan pengesahan lain</translation> @@ -919,7 +916,6 @@ <translation id="604996488070107836">Muat turun <ph name="FILE_NAME" /> gagal disebabkan oleh ralat yang tidak diketahui.</translation> <translation id="605721222689873409">TT</translation> <translation id="6059830886158432458">Kawal cerita dan aktiviti anda di sini</translation> -<translation id="6069177176307973611">Semak tetapan privasi dan keselamatan</translation> <translation id="6070730414166672373">Menghubungi bank anda\u2026</translation> <translation id="6085886413119427067">Menentukan cara menyambung kepada laman web melalui sambungan selamat</translation> <translation id="6091413777268123602">Dengan percubaan Kotak Pasir Privasi, laman boleh menyampaikan pengalaman penyemakan imbas yang sama menggunakan kurang data anda. Itu bermakna lebih privasi untuk anda dan kurang penjejakan rentas laman. Kami akan menambah percubaan baharu apabila percubaan baharu sedia untuk diuji kelak.</translation> @@ -1040,6 +1036,7 @@ <translation id="6641780377503683465">Alih keluar <ph name="INTEREST" /></translation> <translation id="6643016212128521049">Kosongkan</translation> <translation id="6645629752388991326">Kawal peranti yang boleh log masuk dengan menggunakan peranti ini sebagai kunci keselamatan.</translation> +<translation id="6647441008198474441">URL yang anda lawati dihantar kepada Google untuk meramal laman yang mungkin anda lawati seterusnya</translation> <translation id="6648459603387803038">Pentadbir anda boleh menukar persediaan penyemak imbas anda dari jauh. Aktiviti pada peranti ini mungkin turut diurus di luar Chrome.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 dan <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> lagi}other{<ph name="CONTACT_PREVIEW" />\u2026 dan <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> lagi}}</translation> <translation id="6649642165559792194">Pratonton imej <ph name="BEGIN_NEW" />Baharu<ph name="END_NEW" /></translation> @@ -1047,7 +1044,6 @@ <translation id="6659594942844771486">Tab</translation> <translation id="666731172850799929">Buka dalam <ph name="APP_NAME" /></translation> <translation id="6671495933530132209">Salin imej</translation> -<translation id="6674044799624355221">Menghantar sedikit contoh halaman, muat turun, aktiviti sambungan dan maklumat sistem untuk membantu penemuan ancaman baharu</translation> <translation id="6674571176963658787">Untuk memulakan penyegerakan, masukkan ungkapan laluan anda</translation> <translation id="6676840375528380067">Kosongkan data Chrome anda daripada peranti ini?</translation> <translation id="6684809838922667136">Jadikan Chrome lebih baik</translation> @@ -1069,7 +1065,6 @@ <translation id="6802555630140434547">Tetingkap akan ditutup</translation> <translation id="6811034713472274749">Halaman sedia untuk dipaparkan</translation> <translation id="6813446258015311409">Log masuk ke Chrome, dibuka.</translation> -<translation id="6814033694018386318">Perkara yang anda kongsi dengan Google</translation> <translation id="6817747507826986771">Kongsi halaman ini dengan pantas. Untuk mengedit pintasan ini, sentuh dan tahan.</translation> <translation id="6819199143469632133">Untuk mendapatkan data Google anda pada berbilang peranti, log masuk</translation> <translation id="6820686453637990663">CVC</translation> @@ -1164,6 +1159,7 @@ <translation id="7352939065658542140">VIDEO</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{Kongsi 1 item yang dipilih}other{Kongsi # item yang dipilih}}</translation> <translation id="7359002509206457351">Akses kaedah pembayaran</translation> +<translation id="7363349185727752629">Panduan pilihan privasi anda</translation> <translation id="7375125077091615385">Jenis:</translation> <translation id="7376560087009844242">Dengan menyertakan lebih banyak teks halaman, anda mungkin melihat hasil yang lebih baik apabila menggunakan Sentuh untuk Cari. Anda boleh melawati <ph name="BEGIN_LINK" />tetapan<ph name="END_LINK" /> pada bila-bila masa untuk menukar tetapan ini.</translation> <translation id="7379900596734708416">Tema gelap untuk laman tersedia</translation> @@ -1263,6 +1259,7 @@ <translation id="7876243839304621966">Buangkan semua</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{Anda mempunyai <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> halaman belum dibaca}other{Anda mempunyai <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> halaman belum dibaca}}</translation> <translation id="7886917304091689118">Sedang berjalan dalam Chrome</translation> +<translation id="7887174313503389866">Ikuti lawatan berpandu privasi dan kawalan keselamatan utama. Untuk mendapatkan lagi pilihan, pergi ke tetapan individu.</translation> <translation id="7887334752153342268">Pendua</translation> <translation id="789763218334337857">Cara menggunakan Chrome</translation> <translation id="7903184275147100332">Proses ini mungkin mengambil masa seketika</translation> @@ -1376,6 +1373,7 @@ <translation id="8445448999790540984">Tidak dapat mengeskport kata laluan</translation> <translation id="8446884382197647889">Ketahui Lebih Lanjut</translation> <translation id="8453310803815879010">Mulakan Permainan Dino</translation> +<translation id="8460448946170646641">Semak privasi dan kawalan keselamatan utama</translation> <translation id="8461694314515752532">Sulitkan data yang disegerakkan dengan ungkapan laluan penyegerakan anda sendiri</translation> <translation id="8466613982764129868">Pastikan <ph name="TARGET_DEVICE_NAME" /> disambungkan ke Internet</translation> <translation id="8473863474539038330">Alamat dan pelbagai lagi</translation> @@ -1421,6 +1419,7 @@ <translation id="8636825310635137004">Hidupkan penyegerakan untuk mendapatkan tab daripada peranti anda yang lain.</translation> <translation id="8641930654639604085">Cuba menyekat tapak dewasa</translation> <translation id="864544049772947936">Urus tetingkap (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">Meramalkan dan memberi anda amaran tentang peristiwa berbahaya sebelum peristiwa itu berlaku</translation> <translation id="8646467750715887511">Halaman dimuatkan hanya selepas anda membukanya.</translation> <translation id="8655129584991699539">Anda boleh mengosongkan data dalam Tetapan Chrome</translation> <translation id="8659579665266920523">Cara mencari menggunakan Chrome</translation> @@ -1433,7 +1432,6 @@ <translation id="867767487203716855">Kemas kini seterusnya</translation> <translation id="8683039184091909753">imej</translation> <translation id="8683081248374354009">Tetapkan semula kumpulan</translation> -<translation id="8683526617475118045">Perkara yang anda dapat</translation> <translation id="869891660844655955">Tarikh tamat tempoh</translation> <translation id="8699120352855309748">Jangan tawarkan untuk menterjemahkan bahasa ini</translation> <translation id="8712637175834984815">Faham</translation> @@ -1517,7 +1515,6 @@ <translation id="9148126808321036104">Log masuk semula</translation> <translation id="9158770349521403363">Kongsi kandungan sahaja</translation> <translation id="9159716826369098114">Pulihkan kumpulan tab <ph name="TAB_COUNT" /> tab sebagai kumpulan tab latar baharu.</translation> -<translation id="916446198114569890">URL yang anda lawati disimpan pada akaun Google anda</translation> <translation id="9169507124922466868">Sejarah navigasi separa terbuka</translation> <translation id="9187955620966010988">Reaksi dilaraskan</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{Disemak 1 minit yang lalu}other{Disemak # minit yang lalu}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_my.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_my.xtb index 454972c..a449585 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_my.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_my.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">ဤဝဘ်ဆိုက်များကို ပြန်ဆိုရန် မကမ်းလှမ်းပါနှင့်</translation> <translation id="1145536944570833626">လက်ရှိဒေတာများကို ဖျက်ပါ</translation> <translation id="1146678959555564648">VR သို့ ဝင်ပါ</translation> -<translation id="114825011539563458">အရေးကြီးဆုံး ကိုယ်ရေးအချက်အလက်နှင့် လုံခြုံရေး ထိန်းချုပ်မှုများကို တစ်နေရာတည်းတွင်ရရှိခြင်း</translation> <translation id="1149401351239820326">သက်တမ်းကုန်ဆုံးမည့်လ</translation> <translation id="1150263420752757504"><ph name="APP_NAME" /> ကို Chrome တွင် ဖွင့်ပါမည်။ ရှေ့ဆက်ခြင်းဖြင့် သင်သည် <ph name="BEGIN_LINK1" />Google ဝန်ဆောင်မှုစည်းမျဉ်းများ<ph name="END_LINK1" /> နှင့် <ph name="BEGIN_LINK2" />Google Chrome နှင့် ChromeOS ထပ်တိုး ဝန်ဆောင်မှုစည်းမျဉ်းများ<ph name="END_LINK2" /> ကို သဘောတူရာရောက်သည်။</translation> <translation id="1154704303112745282">အော့ဖ်လိုင်းတွင် စာမျက်နှာကိုမရနိုင်ပါ - <ph name="VIOLATED_URL" /></translation> @@ -170,6 +169,7 @@ <translation id="189358972401248634">အခြား ဘာသာစကားများ</translation> <translation id="1894023287452300670">ဤနေရာတွင် ဈေးနှုန်းစောင့်ကြည့်ရန်</translation> <translation id="1900260903084164610">ရှေ့ဆက်ခြင်းဖြင့် သင်သည် <ph name="BEGIN_TOS_LINK" />ဝန်ဆောင်မှုစည်းမျဉ်းများ<ph name="END_TOS_LINK" /> ကို သဘောတူရာရောက်သည်။</translation> +<translation id="1904580727789512086">သင်ဝင်ကြည့်သည့် URL များကို သင့် Google Account တွင်သိမ်းထားသည်</translation> <translation id="1910950723001426294">မျှဝေရန် ရွေးချယ်စရာစာရင်းကို ပိတ်ထားသည်။</translation> <translation id="1918175104945982129">Assistant အသံဖြင့်ရှာဖွေခြင်း သဘောတူညီချက် ui ကို မြင်ကွင်းတစ်ဝက်ဖွင့်ထားသည်</translation> <translation id="1919130412786645364">Chrome သို့ လက်မှတ်ထိုးဝင်ခွင့် ပေးပါ</translation> @@ -194,7 +194,6 @@ <translation id="2000419248597011803">လိပ်စာဘားနှင့် ရှာဖွေမှုအကွက်ထဲရှိ အချို့သော ကွတ်ကီးများနှင့် ရှာဖွေမှုများကို သင်၏မူရင်းရှာဖွေမှုအင်ဂျင်သို့ ပို့သည်</translation> <translation id="200114059308480249">Google ရှာဖွေမှုများတွင် ဝန်းကျင်ရှိစာသားကို ထည့်သွင်းမလား။</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# ဖိုင်}other{# ဖိုင်}}</translation> -<translation id="2020309681647789787">စင့်ခ်လုပ်ထားသော စက်အားလုံးတွင် သင်၏မှတ်တမ်း ရရှိမည်ဖြစ်သဖြင့် သင်လုပ်ဆောင်နေသည်များကို ရှေ့ဆက်နိုင်သည်</translation> <translation id="2021896219286479412">မျက်နှာပြင်အပြည့် ထိန်းချုပ်မှု</translation> <translation id="2038563949887743358">ဆိုဒ်ကြီး တောင်းဆိုမှု ဖွင့်မည်</translation> <translation id="204321170514947529"><ph name="APP_NAME" /> သည် Chrome တွင်လည်း ဒေတာများရှိသည်</translation> @@ -280,7 +279,6 @@ <translation id="2527779675047087889">ကလစ်ဘုတ်အကြောင်းအရာများကို ဖျောက်ရန်</translation> <translation id="2532336938189706096">ဝဘ် မြင်ကွင်း</translation> <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> ခုဖျက်ပြီးပြီ</translation> -<translation id="2534582914273493287">သင်ဝင်ကြည့်သော URL များကို Google သို့ ပို့သည်</translation> <translation id="2536728043171574184">ဤစာမျက်နှာ၏ အော့ဖ်လိုင်း မိတ္တူကို ကြည့်ရှုနေ</translation> <translation id="2546283357679194313">ကူကီးများ နှင့် ဆိုက် ဒေတာ</translation> <translation id="2549516196460093976">ဤ QR ကုဒ်ကို ပြထားသော ကွန်ပျူတာတွင် လက်မှတ်ထိုးဝင်ရန် ဤတက်ဘလက်ကို သုံးနိုင်သည်။</translation> @@ -372,7 +370,6 @@ <translation id="2996291259634659425">စကားဝှက်ဖန်တီးပါ</translation> <translation id="2996809686854298943">URL လိုအပ်သည်။</translation> <translation id="2997081575621687554">Google ဝဘ်ဆိုက်က ၎င်းတို့၏ စာမျက်နှာတွင် လင့်ခ်များကို သီးသန့် ကြိုဖွင့်ရန် မေးပါက Chrome သည် Google ဆာဗာများမှတစ်ဆင့် ကွတ်ကီးများ မပါဘဲ စာမျက်နှာများကို အသွင်ဝှက်ပြီး ကြိုဖွင့်ပေးပါသည်။ ၎င်းက ကြိုဖွင့်ထားသော ဝဘ်ဆိုက်မှ သင့်အထောက်အထားကို ဖျောက်ပေးသည်။</translation> -<translation id="3003733539450769656">အန္တရာယ်များသော ဖြစ်ရပ်များမဖြစ်မီ သင့်ကို သတိပေးနိုင်သည်</translation> <translation id="3006881078666935414">ဒေတာအသုံးပြုမှု မရနိုင်ပါ</translation> <translation id="301080557829842765">ကိုယ်ရေးအချက်အလက်လုံခြုံမှု လမ်းညွှန်</translation> <translation id="3016635187733453316">ဤစက်သည် အင်တာနက်ချိတ်ထားမှု ရှိမရှိ စစ်ဆေးပါ</translation> @@ -432,6 +429,7 @@ <translation id="3284510035090979597">မေးစရာမလိုဘဲပြသော အကူအညီ</translation> <translation id="3285080554353377245">Chrome အသုံးပြုနည်းအကြောင်း ဗီဒီယိုများ</translation> <translation id="3288003805934695103">စာမျက်နှာကို ပြန်ဖွင့်နေသည်</translation> +<translation id="3290249595466894471">အန္တရာယ်အသစ်များကို ရှာဖွေရာ၌ အထောက်အကူဖြစ်စေရန် စာမျက်နှာ၊ ဒေါင်းလုဒ်၊ နောက်ဆက်တွဲလုပ်ဆောင်ချက်နှင့် စနစ်အချက်အလက်များ၏ နမူနာအချို့ကိုလည်း ပို့သည်</translation> <translation id="3297344142967351106">အသံ အကူအညီ</translation> <translation id="3303414029551471755">အကြောင်းအရာအား ဒေါင်းလုပ်လုပ်ရန် ရှေ့ဆက်မလား?</translation> <translation id="3334729583274622784">ဖိုင်နောက်ဆက်တွဲ ပြောင်းမလား။</translation> @@ -637,7 +635,6 @@ <translation id="4558311620361989323">ဝဘ်စာမျက်နှာ ဖြတ်လမ်းလင့်ခ်များ</translation> <translation id="4561730552726921821">မှတ်ပုံတင်ပြီးပြီ</translation> <translation id="4561979708150884304">ချိတ်ဆက်မှု မရှိပါ</translation> -<translation id="4562008740775511591">Chrome သည် သင့်တင့်သော မူလဆက်တင်များကို ပေးအပ်သော်လည်း သင်၏ ကြည့်ရှုမှုအလေ့အထနှင့် အကောင်းဆုံးကိုက်ညီစေရန် ၎င်းကို စိတ်ကြိုက်ပြင်နိုင်သည်</translation> <translation id="4565377596337484307">စကားဝှက်ကို ဖျောက်ရန်</translation> <translation id="4572422548854449519">စီမံခန့်ခွဲထားသည့်အကောင့်သို့ လက်မှတ်ထိုးဝင်ပါ</translation> <translation id="4576892426230499203">စိစစ်ရေးနည်းလမ်း နောက်တစ်ခု သုံးပါ</translation> @@ -919,7 +916,6 @@ <translation id="604996488070107836"><ph name="FILE_NAME" /> ဒေါင်းလုဒ်မှာ မသိရသည့် အမှားတစ်ခုကြောင့် မအောင်မြင်ခဲ့ပါ။</translation> <translation id="605721222689873409">YY</translation> <translation id="6059830886158432458">သင့်သတင်းများနှင့် လုပ်ဆောင်ချက်ကို ဤနေရာတွင် ထိန်းချုပ်နိုင်သည်</translation> -<translation id="6069177176307973611">ကိုယ်ရေးအချက်အလက်နှင့် လုံခြုံရေး ဆက်တင်များ စိစစ်ရန်</translation> <translation id="6070730414166672373">သင့်ဘဏ်ကို ဆက်သွယ်နေသည်\u2026</translation> <translation id="6085886413119427067">လုံခြုံသည့် ချိတ်ဆက်မှုမှတစ်ဆင့် ဝဘ်ဆိုက်များသို့ ချိတ်ဆက်ရန်နည်းလမ်းကို ဆုံးဖြတ်ပေးသည်</translation> <translation id="6091413777268123602">Privacy Sandbox အစမ်းသုံးခြင်းဖြင့် ဝဘ်ဆိုက်များက သင့်ဒေတာအနည်းငယ်သာအသုံးပြုပြီး သင်က အလားတူ ကြည့်ရှုနိုင်ပါမည်။ ကိုယ်ရေးအချက်အလက်လုံခြုံမှု ပိုကောင်းပြီး ဝဘ်ဆိုက်အမျိုးမျိုးတွင် ခြေရာခံခြင်း နည်းပါးမည်ဟု ဆိုလိုခြင်းဖြစ်သည်။ စစ်ဆေးရန်အသင့်ဖြစ်နေသောကြောင့် စမ်းသပ်မှုအသစ်များ ထပ်ထည့်ပါမည်။</translation> @@ -1039,6 +1035,7 @@ <translation id="6641780377503683465"><ph name="INTEREST" /> ဖယ်ရှားရန်</translation> <translation id="6643016212128521049">ရှင်းရန်</translation> <translation id="6645629752388991326">ဤစက်ကို လုံခြုံရေးကီးအဖြစ် သုံးပြီး မည်သည့်စက်များက လက်မှတ်ထိုးဝင်နိုင်မည်ကို ထိန်းချုပ်ပါ။</translation> +<translation id="6647441008198474441">နောက်တစ်ကြိမ် သင်ဝင်ကြည့်မည့် ဝဘ်ဆိုက်များကို ခန့်မှန်းရန် သင်ကြည့်ထားသော URL များကို Google သို့ ပို့သည်</translation> <translation id="6648459603387803038">သင့်စီမံခန့်ခွဲသူက သင်၏ဘရောင်ဇာ စနစ်ထည့်သွင်းမှုကို အဝေးမှ ပြောင်းလဲနိုင်ပါသည်။ ဤစက်ပေါ်ရှိ လုပ်ဆောင်ချက်များကိုလည်း Chrome ပြင်ပမှ စီမံခန့်ခွဲထားခြင်း ဖြစ်နိုင်သည်။</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 နှင့် နောက်ထပ် <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> ခု}other{<ph name="CONTACT_PREVIEW" />\u2026 နှင့် နောက်ထပ် <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> ခု}}</translation> <translation id="6649642165559792194">ပုံအစမ်းကြည့်ရန် <ph name="BEGIN_NEW" />အသစ်<ph name="END_NEW" /></translation> @@ -1046,7 +1043,6 @@ <translation id="6659594942844771486">တဘ်</translation> <translation id="666731172850799929"><ph name="APP_NAME" /> တွင်ဖွင့်မည်</translation> <translation id="6671495933530132209">ပုံကို ကူးယူရန်</translation> -<translation id="6674044799624355221">အန္တရာယ်အသစ်များကို ရှာဖွေရာ၌ အထောက်အကူဖြစ်စေရန် ဝဘ်စာမျက်နှာများ၏ နမူနာအချို့၊ ဒေါင်းလုဒ်၊ နောက်ဆက်တွဲလုပ်ဆောင်ချက်နှင့် စနစ်အချက်အလက်များကို ပေးပို့သည်</translation> <translation id="6674571176963658787">စင့်ခ်လုပ်ခြင်းစတင်ရန် သင်၏စကားဝှက်စာ ထည့်ပါ</translation> <translation id="6676840375528380067">ဤစက်မှ သင်၏ Chrome ဒေတာများကို ဖျက်လိုပါသလား။</translation> <translation id="6684809838922667136">Chrome ပိုကောင်းရန်လုပ်ခြင်း</translation> @@ -1068,7 +1064,6 @@ <translation id="6802555630140434547">ဝင်းဒိုးကို ပိတ်ပါမည်</translation> <translation id="6811034713472274749">စာမျက်နှာကိုကြည့်ရန် အသင့်ဖြစ်ပါပြီ</translation> <translation id="6813446258015311409">Chrome သို့ လက်မှတ်ထိုးဝင်ရန်၊ ဖွင့်ထားသည်။</translation> -<translation id="6814033694018386318">Google နှင့် သင် မျှဝေထားသည်များ</translation> <translation id="6817747507826986771">ဤစာမျက်နှာကို အမြန်မျှဝေပါ။ ဤဖြတ်လမ်းလင့်ခ်ကို ပြင်ဆင်ရန် တို့ထိ၍ဖိထားပါ။</translation> <translation id="6819199143469632133">စက်အားလုံးတွင် သင်၏ Google ဝန်ဆောင်မှုများ ရယူရန် လက်မှတ်ထိုးဝင်ပါ</translation> <translation id="6820686453637990663">CVC</translation> @@ -1163,6 +1158,7 @@ <translation id="7352939065658542140">ဗီဒီယို</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{ရွေးချယ်ထားသည့် အကြောင်းအရာ ၁ ခုကို မျှဝေရန်}other{ရွေးချယ်ထားသည့် အကြောင်းအရာ # ခုကို မျှဝေရန်}}</translation> <translation id="7359002509206457351">ငွေပေးချေနည်းလမ်းများ ကြည့်ခွင့်</translation> +<translation id="7363349185727752629">သင့်ကိုယ်ရေးအချက်အလက်ဆိုင်ရာ ရွေးချယ်မှုများအတွက် လမ်းညွှန်</translation> <translation id="7375125077091615385">အမျိုးအစာ:</translation> <translation id="7376560087009844242">‘ရှာဖွေရန်-ထိခြင်း’ သုံးသောအခါ စာမျက်နှာ၏စာသားများ ပိုမိုပါဝင်ပါက ပိုကောင်းသောရလဒ်များ တွေ့ရနိုင်သည်။ ၎င်းကိုပြောင်းရန် <ph name="BEGIN_LINK" />ဆက်တင်များ<ph name="END_LINK" /> ကို အချိန်မရွေးဝင်ကြည့်နိုင်သည်။</translation> <translation id="7379900596734708416">ဝဘ်ဆိုက်များအတွက် မှောင်သည့် အပြင်အဆင် ရနိုင်သည်</translation> @@ -1262,6 +1258,7 @@ <translation id="7876243839304621966">အားလုံး ဖယ်ရှား</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{မဖတ်ရသေးသော စာမျက်နှာ <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> မျက်နှာ ရှိသည်}other{မဖတ်ရသေးသော စာမျက်နှာ <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> မျက်နှာ ရှိသည်}}</translation> <translation id="7886917304091689118">Chrome တွင် ဖွင့်ထားသည်</translation> +<translation id="7887174313503389866">အဓိကကျသော ကိုယ်ရေးအချက်အလက်နှင့် လုံခြုံရေး ထိန်းချုပ်မှုများ လမ်းညွှန်ပြသမှုကို ကြည့်ရှုပါ။ အခြားရွေးချယ်စရာများအတွက် သီးခြားဆက်တင်များသို့ သွားပါ။</translation> <translation id="7887334752153342268">မူပွားယူရန်</translation> <translation id="789763218334337857">Chrome အသုံးပြုနည်း</translation> <translation id="7903184275147100332">တစ်မိနစ်ခန့် ကြာနိုင်သည်</translation> @@ -1375,6 +1372,7 @@ <translation id="8445448999790540984">စကားဝှက်များကို တင်ပို့၍မရပါ</translation> <translation id="8446884382197647889">ပိုမို လေ့လာရန်</translation> <translation id="8453310803815879010">Dino ဂိမ်း စတင်ရန်</translation> +<translation id="8460448946170646641">အဓိကကျသော ကိုယ်ရေးအချက်အလက်နှင့် လုံခြုံရေး ထိန်းချုပ်မှုများကို ကြည့်ရှုရန်</translation> <translation id="8461694314515752532">စင့်ခ်လုပ်ထားသော ဒေတာများကို သင့်ကိုယ်ပိုင် စင့်ခ်စကားဝှက်ဖြင့် အသွင်ဝှက်ရန်</translation> <translation id="8466613982764129868"><ph name="TARGET_DEVICE_NAME" /> ကို အင်တာနက် ချိတ်ဆက်ထားခြင်း ရှိမရှိ စစ်ဆေးပါ</translation> <translation id="8473863474539038330">လိပ်စာများနှင့် အခြားအရာများ</translation> @@ -1420,6 +1418,7 @@ <translation id="8636825310635137004">သင်၏ အခြားစက်ပစ္စည်းများမှ တဘ်များကိုအသုံးပြုရန် စင့်ခ်ကို ဖွင့်ပါ။</translation> <translation id="8641930654639604085">လိင်ဆိုင်ရာဆိုက်များကို ပိတ်ဆို့ရန်ကြိုးစားကြည့်ပါ</translation> <translation id="864544049772947936">ဝင်းဒိုး (<ph name="INSTANCE_COUNTS" />) ခုကို စီမံရန်</translation> +<translation id="8645920082661222035">အန္တရာယ်ရှိသည့် ဖြစ်ရပ်များ မဖြစ်ပွားမီ ခန့်မှန်းပြီး သင့်အား သတိပေးသည်</translation> <translation id="8646467750715887511">စာမျက်နှာများသည် သင်ဖွင့်ပြီးမှသာ ပွင့်ပါသည်။</translation> <translation id="8655129584991699539">ဒေတာများကို 'Chrome ဆက်တင်များ' တွင် ရှင်းထုတ်နိုင်သည်</translation> <translation id="8659579665266920523">Chrome ဖြင့် ရှာဖွေနည်း</translation> @@ -1432,7 +1431,6 @@ <translation id="867767487203716855">လာမည့် အပ်ဒိတ်</translation> <translation id="8683039184091909753">ပုံ</translation> <translation id="8683081248374354009">အဖွဲ့ကို ပြင်ဆင်သတ်မှတ်ရန်</translation> -<translation id="8683526617475118045">သင် ရနိုင်သည်များ</translation> <translation id="869891660844655955">သက်တမ်း ကုန်ဆုံးရက်</translation> <translation id="8699120352855309748">ဤဘာသာစကားများကို ပြန်ဆိုရန် မကမ်းလှမ်းပါနှင့်</translation> <translation id="8712637175834984815">ရပါပြီ!</translation> @@ -1516,7 +1514,6 @@ <translation id="9148126808321036104">ထပ်ပြီး လက်မှတ်ထိုး ဝင်ရန်</translation> <translation id="9158770349521403363">အကြောင်းအရာသီးသန့် မျှဝေပါ</translation> <translation id="9159716826369098114">နောက်ခံတဘ်အုပ်စုအသစ်အဖြစ် တဘ် <ph name="TAB_COUNT" /> ခု ပါသည့် တဘ်အုပ်စုကို ပြန်ယူနိုင်ပါသည်။</translation> -<translation id="916446198114569890">သင်ဝင်ကြည့်သည့် URL များကို သင့် Google Account တွင်သိမ်းထားသည်</translation> <translation id="9169507124922466868">လမ်းညွှန်မှု မှတ်တမ်း တစ်ဝက်ဖွင့်ထားသည်</translation> <translation id="9187955620966010988">တုံ့ပြန်မှု ပြင်ဆင်လိုက်သည်</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{လွန်ခဲ့သော ၁ မိနစ်က စစ်ဆေးခဲ့သည်}other{လွန်ခဲ့သော # မိနစ်က စစ်ဆေးခဲ့သည်}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_ne.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_ne.xtb index 9cf4f04..28c4680b 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_ne.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_ne.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">यी साइटहरू अनुवाद गर्ने प्रस्ताव नगरियोस्</translation> <translation id="1145536944570833626">विद्यमान डेटा मेट्नुहोस्।</translation> <translation id="1146678959555564648">VR मा प्रवेश गर्नुहोस्</translation> -<translation id="114825011539563458">गोपनीयता तथा नियन्त्रणसम्बन्धी सबैभन्दा महत्त्वपूर्ण सेटिङ एकै ठाउँमा उपलब्ध छन्</translation> <translation id="1149401351239820326">म्याद सकिने महिना</translation> <translation id="1150263420752757504"><ph name="APP_NAME" /> Chrome मा खुल्ने छ। तपाईंले जारी राख्नुभयो भने तपाईं <ph name="BEGIN_LINK1" />Google का सेवाका सर्त<ph name="END_LINK1" /> र <ph name="BEGIN_LINK2" />Google Chrome तथा ChromeOS का सेवाका अतिरिक्त सर्तहरू<ph name="END_LINK2" />मा सहमति जनाउनुहुन्छ भन्ने अर्थ लाग्छ।</translation> <translation id="1154704303112745282">यो पृष्ठ अफलाइन मोडमा उपलब्ध छैन: <ph name="VIOLATED_URL" /></translation> @@ -170,6 +169,7 @@ <translation id="189358972401248634">अन्य भाषाहरू</translation> <translation id="1894023287452300670">यहाँ मूल्य ट्रयाक गर्नुहोस्</translation> <translation id="1900260903084164610">तपाईंले जारी राख्नुभयो भने तपाईं <ph name="BEGIN_TOS_LINK" />सेवाका सर्तहरू<ph name="END_TOS_LINK" />मा सहमति जनाउनुहुन्छ भन्ने अर्थ लाग्छ।</translation> +<translation id="1904580727789512086">तपाईंले खोल्ने URL हरू तपाईंको Google खातामा सेभ गरिन्छन्</translation> <translation id="1910950723001426294">सेयर गर्ने सुविधासम्बन्धी विकल्पहरूको सूची बन्द गरिएको छ।</translation> <translation id="1918175104945982129">सहायकको प्रयोग गरी भ्वाइस सर्च गर्ने कुराको सहमति लिने UI आधा उचाइमा खोलिएको छ</translation> <translation id="1919130412786645364">Chrome मा साइन इन गर्ने अनुमति दिनुहोस्</translation> @@ -194,7 +194,6 @@ <translation id="2000419248597011803">यसले ठेगाना पट्टी र खोज बाकसका केही कुकी र खोजहरूलाई तपाईंको डिफल्ट खोज इन्जिनमा पठाउँछ</translation> <translation id="200114059308480249">Google मा कुनै शब्द वा वाक्यांशका बारेमा थप जानकारी खोज्दा सो शब्द वा वाक्यांश वरपरका पाठहरू पनि समावेश गर्ने हो?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# फाइल}other{# फाइलहरू}}</translation> -<translation id="2020309681647789787">तपाईंका सबै डिभाइसमा तपाईंको ब्राउजिङ इतिहास सिंक गरिने भएकाले तपाईं जुनसुकै डिभाइसबाट आफूले गर्दै गरेको कार्य जारी राख्न सक्नुहुन्छ</translation> <translation id="2021896219286479412">पूर्ण स्क्रिनको साइटका नियन्त्रणहरू</translation> <translation id="2038563949887743358">अनुरोध डेस्कटप साइट खोल्नुहोस्</translation> <translation id="204321170514947529"><ph name="APP_NAME" /> ले Chrome मा पनि डेटा राखेको छ</translation> @@ -280,7 +279,6 @@ <translation id="2527779675047087889">क्लिपबोर्डमा भएका सामग्री लुकाइयोस्</translation> <translation id="2532336938189706096">वेब दृश्य</translation> <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> वस्तुहरू मेटाइए</translation> -<translation id="2534582914273493287">तपाईंले खोल्ने URL हरू Google मा पठाइन्छन्</translation> <translation id="2536728043171574184">यो पृष्ठको एक अफलाइन प्रतिलिपि हेर्दै</translation> <translation id="2546283357679194313">कुकीहरू र साइट डाटा</translation> <translation id="2549516196460093976">तपाईं यो QR कोड देखिइरहेको कम्प्युटरमा साइन इन गर्न यो ट्याब्लेट प्रयोग गर्न सक्नुहुन्छ।</translation> @@ -372,7 +370,6 @@ <translation id="2996291259634659425">पासफ्रेज सिर्जना गर्नुहोस्</translation> <translation id="2996809686854298943">URL आवश्यक छ</translation> <translation id="2997081575621687554">Google को साइटले आफ्नो पेजमा भएका लिंकहरू गोप्य तरिकाले प्रिलोड गर्न लगाएका खण्डमा Chrome ले कुकीहरू प्रयोग नगरिकनै पेजहरू Google का सर्भरमार्फत इन्क्रिप्ट गरी प्रिलोड गरेर राख्छ। यसो गर्दा पेजहरू प्रिलोड गरिएको साइटमा भएको तपाईंको जानकारी लुकाइन्छ।</translation> -<translation id="3003733539450769656">यो सुविधाले तपाईंलाई जोखिमपूर्ण घटनाहरू घट्नुअघि नै ती घटनाका बारेमा चेतावनी दिन्छ</translation> <translation id="3006881078666935414">उपयोगसम्बन्धी कुनै डेटा छैन</translation> <translation id="301080557829842765">गोपनीयतासम्बन्धी मार्गदर्शन</translation> <translation id="3016635187733453316">यो डिभाइस इन्टरनेटमा जोडिएको कुरा सुनिश्चित गर्नुहोस्</translation> @@ -432,6 +429,7 @@ <translation id="3284510035090979597">क्रियाशील मद्दत</translation> <translation id="3285080554353377245">Chrome प्रयोग गर्ने तरिका देखाउने भिडियोहरू</translation> <translation id="3288003805934695103">पृष्ठलाई पुनः लोड गर्नुहोस्</translation> +<translation id="3290249595466894471">यो सुविधाले नयाँ जोखिमहरू पत्ता लगाउन पेज, डाउनलोड, एक्स्टेन्सनसम्बन्धी गतिविधि र प्रणालीसम्बन्धी जानकारीको सानो नमुना पनि Safe Browsing मा पठाउँछ</translation> <translation id="3297344142967351106">आवाज सहायता</translation> <translation id="3303414029551471755">सामग्री डाउनलोड गर्न अगाडि बढ्ने हो?</translation> <translation id="3334729583274622784">फाइलको एक्स्टेन्सन परिवर्तन गर्ने हो?</translation> @@ -636,7 +634,6 @@ <translation id="4558311620361989323">वेबपृष्ठका सर्टकटहरू</translation> <translation id="4561730552726921821">दर्ता गरियो</translation> <translation id="4561979708150884304">इन्टरनेट छैन</translation> -<translation id="4562008740775511591">Chrome मा उचित डिफल्ट सेटिङ उपलब्ध हुन्छन् तर तपाईं आफूले ब्राउज गर्ने तरिकाअनुसार ती सेटिङ मिलाउन सक्नुहुन्छ</translation> <translation id="4565377596337484307">पासवर्ड लुकाउनुहोस्</translation> <translation id="4572422548854449519">व्यवस्थापन गरिएको खातामा साइन इन गर्नुहोस्</translation> <translation id="4576892426230499203">पुष्टि गर्ने अर्को विकल्प प्रयोग गरी हेर्नुहोस्</translation> @@ -918,7 +915,6 @@ <translation id="604996488070107836">एक अज्ञात त्रुटिको कारणले गर्दा <ph name="FILE_NAME" /> को डाउनलोड असफल भयो।</translation> <translation id="605721222689873409">YY</translation> <translation id="6059830886158432458">यहाँ आफ्नो समाचार फिडमा देखिने सामग्री तथा क्रियाकलाप नियन्त्रण गर्नुहोस्</translation> -<translation id="6069177176307973611">गोपनीयता तथा सुरक्षासम्बन्धी सेटिङको समीक्षा गर्नुहोस्</translation> <translation id="6070730414166672373">तपाईंको बैंकमा सम्पर्क गरिँदै छ\u2026</translation> <translation id="6085886413119427067">यसले सुरक्षित इन्टरनेटमार्फत वेबसाइटहरूमा जोडिने तरिका निर्धारण गर्छ</translation> <translation id="6091413777268123602">प्राइभेसी स्यान्डबक्सको ट्रायल अवधिमा साइटहरूले कम जानकारी प्रयोग गरी उही ब्राउजिङ अनुभव प्रदान गर्न सक्छन्। यसको अर्थ तपाईंका लागि थप गोपनीयता प्रदान गरिन्छ र विभिन्न साइटहरूमा गरिने गतिविधि ट्र्याक गर्ने कार्य कम गरिन्छ। हामी नयाँ ट्रायलहरू परीक्षण गर्न तयार भएपछि ती ट्रायलहरू समावेश गर्ने छौँ।</translation> @@ -1039,6 +1035,7 @@ <translation id="6641780377503683465"><ph name="INTEREST" /> हटाउनुहोस्</translation> <translation id="6643016212128521049">खालि गर्नुहोस्</translation> <translation id="6645629752388991326">यो डिभाइस सुरक्षा साँचोका रूपमा प्रयोग गरी कुन कुन डिभाइसमा साइन इन गर्न दिने भन्ने कुरा नियन्त्रण गर्नुहोस्।</translation> +<translation id="6647441008198474441">तपाईंले यसपछि खोल्न सक्ने साइट पूर्वानुमान गर्ने प्रयोजनका लागि तपाईंले खोल्ने URL हरू Google मा पठाइन्छन्</translation> <translation id="6648459603387803038">तपाईंका एड्मिन टाढैबाट तपाईंको ब्राउजरको सेटअप बदल्न सक्नुहुन्छ। यो डिभाइसका क्रियाकलाप Chrome बाहिरबाट पनि व्यवस्थापन गरिन सक्छ।</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 र <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> थप}other{<ph name="CONTACT_PREVIEW" />\u2026 र <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> थप}}</translation> <translation id="6649642165559792194"><ph name="BEGIN_NEW" />नयाँ<ph name="END_NEW" /> छविको पूर्वावलोकन गर्नुहोस्</translation> @@ -1046,7 +1043,6 @@ <translation id="6659594942844771486">ब्राउजर ट्याब</translation> <translation id="666731172850799929"><ph name="APP_NAME" /> मा खोल्नुहोस्</translation> <translation id="6671495933530132209">छविको प्रतिलिपि गर्नुहोस्</translation> -<translation id="6674044799624355221">यो सुविधाले नयाँ जोखिमहरू पत्ता लगाउन पेज, डाउनलोड, एक्स्टेन्सनसम्बन्धी गतिविधि र सिस्टमसम्बन्धी जानकारीको सानो नमुना Safe Browsing मा पठाउँछ</translation> <translation id="6674571176963658787">सिंक गर्ने कार्य सुरु गर्न आफ्नो पासफ्रेज हाल्नुहोस्</translation> <translation id="6676840375528380067">यस डिभाइसबाट तपाईंको Chrome को डेटा हटाउने हो?</translation> <translation id="6684809838922667136">Chrome मा सुधार गर्नुहोस्</translation> @@ -1068,7 +1064,6 @@ <translation id="6802555630140434547">यो विन्डो बन्द गरिने छ</translation> <translation id="6811034713472274749">पृष्ठ हेर्नका लागि तयार छ</translation> <translation id="6813446258015311409">Chrome मा साइन इन गर्ने पेज खोलियो।</translation> -<translation id="6814033694018386318">Google मा पठाइने कुराहरू</translation> <translation id="6817747507826986771">यो पेज छिटोछरितो रूपमा सेयर गर्नुहोस्। यो सर्टकट सम्पादन गर्न टच एण्ड होल्ड गर्नुहोस्।</translation> <translation id="6819199143469632133">तपाईं आफूले चलाइरहेका Google का सेवाहरू विभिन्न डिभाइसमा चलाउन चाहनुहुन्छ भने साइन इन गर्नुहोस्</translation> <translation id="6820686453637990663">CVC</translation> @@ -1163,6 +1158,7 @@ <translation id="7352939065658542140">भिडियो</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{चयन गरिएको १ वस्तु सेयर गर्नुहोस्}other{चयन गरिएका # वस्तुहरू सेयर गर्नुहोस्}}</translation> <translation id="7359002509206457351">भुक्तानी विधिहरूमाथि पहुँच राख्नुहोस्</translation> +<translation id="7363349185727752629">तपाईंको गोपनीयतासम्बन्धी विकल्पहरूका बारेमा मार्गदर्शन</translation> <translation id="7375125077091615385">प्रकार:</translation> <translation id="7376560087009844242">तपाईंले पेजमा भएका थप पाठहरू समावेश गर्नुभयो भने तपाईंले ट्याप गरेर थप जानकारी हेर्ने सुविधा चलाउँदा तपाईं अझ सान्दर्भिक परिणामहरू देख्न सक्नुहुन्छ। तपाईं <ph name="BEGIN_LINK" />सेटिङ<ph name="END_LINK" />मा गई जुनसुकै बेला यो सेटिङ बदल्न सक्नुहुन्छ।</translation> <translation id="7379900596734708416">साइटहरूका लागि अँध्यारो थिम उपलब्ध छ</translation> @@ -1262,6 +1258,7 @@ <translation id="7876243839304621966">सबै हटाउनुहोस्</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{तपाईंले <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> पेज पढ्नुभएको छैन}other{तपाईंले <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> वटा पेज पढ्नुभएको छैन}}</translation> <translation id="7886917304091689118">Chrome मा चलिरहेको छ</translation> +<translation id="7887174313503389866">हामीले तयार पारेको मार्गदर्शन सामग्रीका सहायताले गोपनीयता तथा सुरक्षासम्बन्धी मुख्य नियन्त्रण सुविधाहरूका बारेमा जानकारी प्राप्त गर्नुहोस्। तपाईं थप विकल्पहरू हेर्न चाहनुहुन्छ भने प्रत्येक सेटिङमा जानुहोस्।</translation> <translation id="7887334752153342268">नक्कल बनाउनुहोस्</translation> <translation id="789763218334337857">Chrome प्रयोग गर्ने तरिका</translation> <translation id="7903184275147100332">यो कार्य पूरा हुन एक मिनेट लाग्न सक्छ</translation> @@ -1375,6 +1372,7 @@ <translation id="8445448999790540984">पासवर्डहरू निर्यात गर्न सकिएन</translation> <translation id="8446884382197647889">थप जान्नुहोस्</translation> <translation id="8453310803815879010">Dino गेम खेल्न थाल्नुहोस्</translation> +<translation id="8460448946170646641">गोपनीयता तथा सुरक्षासम्बन्धी मुख्य नियन्त्रण सुविधाहरूको समीक्षा गर्नुहोस्</translation> <translation id="8461694314515752532">सिंक गरिएको डेटालाई तपाईंको आफ्नै सिंक पासफ्रेजमार्फत इन्क्रिप्ट गर्नुहोस्</translation> <translation id="8466613982764129868"><ph name="TARGET_DEVICE_NAME" /> इन्टरनेटमा जोडिएको कुरा सुनिश्चित गर्नुहोस्</translation> <translation id="8473863474539038330">ठेगाना र थप कुराहरू</translation> @@ -1420,6 +1418,7 @@ <translation id="8636825310635137004">आफ्ना अन्य यन्त्रहरूबाट आफ्ना ट्याबहरू प्राप्त गर्न सिंकलाई अन गर्नुहोस्।</translation> <translation id="8641930654639604085">वयस्क व्यक्तिहरूका लागि निर्मित साइटहरूमाथि रोक लगाउने प्रयास गर्नुहोस्</translation> <translation id="864544049772947936">विन्डोहरू व्यवस्थापन गर्नु… (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">जोखिमपूर्ण घटनाहरू घट्नुअघि नै तिनको पूर्वानुमान गर्छ र तपाईंलाई त्यसबारे चेतावनी दिन्छ</translation> <translation id="8646467750715887511">तपाईंले पेजहरू खोलेपछि मात्र ती पेज लोड हुन्छन्।</translation> <translation id="8655129584991699539">तपाईं Chrome का सेटिङहरूमा गई डेटा खाली गर्न सक्नुहुन्छ</translation> <translation id="8659579665266920523">Chrome मार्फत खोज्ने तरिका</translation> @@ -1432,7 +1431,6 @@ <translation id="867767487203716855">अर्को अपडेट</translation> <translation id="8683039184091909753">फोटो</translation> <translation id="8683081248374354009">समूह रिसेट गर्नुहोस्</translation> -<translation id="8683526617475118045">तपाईंले पाउने लाभहरू</translation> <translation id="869891660844655955">समाप्ति मिति</translation> <translation id="8699120352855309748">यी भाषाहरू अनुवाद गर्ने प्रस्ताव नगरियोस्</translation> <translation id="8712637175834984815">भयो</translation> @@ -1516,7 +1514,6 @@ <translation id="9148126808321036104">पुन: साइन इन गर्नुहोस्</translation> <translation id="9158770349521403363">सामग्री मात्र सेयर गरियोस्</translation> <translation id="9159716826369098114"><ph name="TAB_COUNT" /> वटा ट्याब भएको ट्याब समूह रिस्टोर गरी नयाँ ब्याकग्राउन्ड ट्याब समूह बनाउनुहोस्।</translation> -<translation id="916446198114569890">तपाईंले खोल्ने URL हरू तपाईंको Google खातामा सेभ गरिन्छन्</translation> <translation id="9169507124922466868">नेभिगेसनको इतिहास आधा खुला छ</translation> <translation id="9187955620966010988">प्रतिक्रिया मिलाइएको छ</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{१ मिनेटअघि जाँच गरिएको}other{# मिनेटअघि जाँच गरिएको}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_nl.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_nl.xtb index 537108f..9ad01e9 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_nl.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_nl.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">Niet aanbieden om deze sites te vertalen</translation> <translation id="1145536944570833626">Bestaande gegevens verwijderen.</translation> <translation id="1146678959555564648">VR activeren</translation> -<translation id="114825011539563458">De belangrijkste privacy- en beveiligingsopties op één plaats</translation> <translation id="1149401351239820326">Vervalmaand</translation> <translation id="1150263420752757504"><ph name="APP_NAME" /> wordt geopend in Chrome. Als je doorgaat, ga je akkoord met de <ph name="BEGIN_LINK1" />Servicevoorwaarden van Google<ph name="END_LINK1" /> en met de <ph name="BEGIN_LINK2" />Aanvullende servicevoorwaarden van Google Chrome en Chrome OS<ph name="END_LINK2" />.</translation> <translation id="1154704303112745282">Pagina niet offline beschikbaar: <ph name="VIOLATED_URL" /></translation> @@ -170,6 +169,7 @@ <translation id="189358972401248634">Andere talen</translation> <translation id="1894023287452300670">Hier kun je de prijs volgen</translation> <translation id="1900260903084164610">Door verder te gaan, ga je akkoord met de <ph name="BEGIN_TOS_LINK" />Servicevoorwaarden<ph name="END_TOS_LINK" />.</translation> +<translation id="1904580727789512086">De URL's die je bezoekt, worden opgeslagen in je Google-account</translation> <translation id="1910950723001426294">Lijst met deelopties is gesloten.</translation> <translation id="1918175104945982129">UI om toestemming voor gesproken zoekopdrachten via de Assistent te geven is op halve hoogte geopend</translation> <translation id="1919130412786645364">Inloggen bij Chrome toestaan</translation> @@ -194,7 +194,6 @@ <translation id="2000419248597011803">Hiermee worden bepaalde cookies en de zoekopdrachten in de adresbalk en in het zoekvak verzonden naar je standaard zoekmachine</translation> <translation id="200114059308480249">Omringende tekst opnemen in Google-zoekopdrachten?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# bestand}other{# bestanden}}</translation> -<translation id="2020309681647789787">Je krijgt je geschiedenis op al je gesynchroniseerde apparaten, zodat je kunt doorgaan met waar je mee bezig was.</translation> <translation id="2021896219286479412">Siteopties op volledig scherm</translation> <translation id="2038563949887743358">'Desktopsite aanvragen' aanzetten</translation> <translation id="204321170514947529"><ph name="APP_NAME" /> heeft ook gegevens in Chrome</translation> @@ -280,7 +279,6 @@ <translation id="2527779675047087889">Content op het klembord verbergen</translation> <translation id="2532336938189706096">Webweergave</translation> <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> items verwijderd</translation> -<translation id="2534582914273493287">URL's die je bezoekt, worden naar Google gestuurd</translation> <translation id="2536728043171574184">Een offline exemplaar van deze pagina bekijken</translation> <translation id="2546283357679194313">Cookies en sitegegevens</translation> <translation id="2549516196460093976">Je kunt deze tablet gebruiken om in te loggen op de computer waarop deze QR-code wordt getoond.</translation> @@ -372,7 +370,6 @@ <translation id="2996291259634659425">Wachtwoordzin maken</translation> <translation id="2996809686854298943">URL vereist</translation> <translation id="2997081575621687554">Als een Google-site vraagt om links op de sitepagina privé vooraf te laden, versleutelt en laadt Chrome de pagina's vooraf via Google-servers zonder cookies. Hierdoor wordt je identiteit voor de vooraf geladen site verborgen.</translation> -<translation id="3003733539450769656">Waarschuwt je voor gevaarlijke gebeurtenissen voordat deze plaatsvinden</translation> <translation id="3006881078666935414">Geen gebruiksgegevens</translation> <translation id="301080557829842765">Privacygids</translation> <translation id="3016635187733453316">Controleer of dit apparaat verbinding heeft met internet</translation> @@ -432,6 +429,7 @@ <translation id="3284510035090979597">Proactieve hulp</translation> <translation id="3285080554353377245">Video's over hoe je Chrome kunt gebruiken</translation> <translation id="3288003805934695103">Laad de pagina opnieuw</translation> +<translation id="3290249595466894471">Stuurt ook een klein gedeelte pagina's, downloads, extensie-activiteit en systeeminformatie om nieuwe dreigingen te kunnen vinden</translation> <translation id="3297344142967351106">Spraakassistent</translation> <translation id="3303414029551471755">Doorgaan met het downloaden van de content?</translation> <translation id="3334729583274622784">Bestandsextensie wijzigen?</translation> @@ -637,7 +635,6 @@ <translation id="4558311620361989323">Sneltoetsen voor webpagina's</translation> <translation id="4561730552726921821">Registratie afgerond</translation> <translation id="4561979708150884304">Geen verbinding</translation> -<translation id="4562008740775511591">Chrome biedt redelijke standaardwaarden, maar je kunt de browser aanpassen zodat deze beter bij je browsegedrag past</translation> <translation id="4565377596337484307">Wachtwoord verbergen</translation> <translation id="4572422548854449519">Inloggen bij een beheerd account</translation> <translation id="4576892426230499203">Probeer een andere verificatie-optie</translation> @@ -919,7 +916,6 @@ <translation id="604996488070107836">Download van <ph name="FILE_NAME" /> mislukt vanwege een onbekende fout.</translation> <translation id="605721222689873409">JJ</translation> <translation id="6059830886158432458">Beheer hier je artikelen en activiteiten</translation> -<translation id="6069177176307973611">Privacy- en beveiligingsinstellingen checken</translation> <translation id="6070730414166672373">Contact opnemen met je bank\u2026</translation> <translation id="6085886413119427067">Bepaalt hoe verbinding wordt gemaakt met websites via een beveiligde verbinding</translation> <translation id="6091413777268123602">Met een Privacy Sandbox-proef kunnen sites dezelfde browsefunctionaliteit leveren terwijl er minder van je gegevens worden gebruikt. Zo heb jij meer privacy en word je minder gevolgd op meerdere sites. Als andere proeven klaar zijn om getest te worden, voegen we deze toe.</translation> @@ -1040,6 +1036,7 @@ <translation id="6641780377503683465"><ph name="INTEREST" /> verwijderen</translation> <translation id="6643016212128521049">Wissen</translation> <translation id="6645629752388991326">Bepaal welke apparaten kunnen inloggen door dit apparaat als beveiligingssleutel te gebruiken.</translation> +<translation id="6647441008198474441">URL's die je bezoekt, worden naar Google gestuurd om te voorspellen naar welke sites je misschien daarna gaat</translation> <translation id="6648459603387803038">Je beheerder kan je browserinstellingen op afstand wijzigen. Activiteit op dit apparaat kan ook buiten Chrome worden beheerd.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 en nog <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> andere}other{<ph name="CONTACT_PREVIEW" />\u2026 en nog <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> andere}}</translation> <translation id="6649642165559792194">Afbeelding bekijken <ph name="BEGIN_NEW" />Nieuw<ph name="END_NEW" /></translation> @@ -1047,7 +1044,6 @@ <translation id="6659594942844771486">Browsertabblad</translation> <translation id="666731172850799929">Openen in <ph name="APP_NAME" /></translation> <translation id="6671495933530132209">Afbeelding kopiëren</translation> -<translation id="6674044799624355221">Stuurt een klein gedeelte pagina's, downloads, extensie-activiteit en systeeminformatie om nieuwe dreigingen te kunnen waarnemen</translation> <translation id="6674571176963658787">Geef je wachtwoordzin op om de synchronisatie te starten</translation> <translation id="6676840375528380067">Je Chrome-gegevens van dit apparaat wissen?</translation> <translation id="6684809838922667136">Chrome verbeteren</translation> @@ -1069,7 +1065,6 @@ <translation id="6802555630140434547">Het venster wordt gesloten</translation> <translation id="6811034713472274749">Pagina kan nu worden bekeken</translation> <translation id="6813446258015311409">Inloggen bij Chrome, geopend.</translation> -<translation id="6814033694018386318">Wat je deelt met Google</translation> <translation id="6817747507826986771">Deel deze pagina snel. Tik en houd vast om deze snelkoppeling te bewerken.</translation> <translation id="6819199143469632133">Log in om toegang tot je Google-services te krijgen op verschillende apparaten</translation> <translation id="6820686453637990663">CVC</translation> @@ -1164,6 +1159,7 @@ <translation id="7352939065658542140">VIDEO</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{1 geselecteerd item delen}other{# geselecteerde items delen}}</translation> <translation id="7359002509206457351">Toegang tot betaalmethoden</translation> +<translation id="7363349185727752629">Een gids met je privacykeuzes</translation> <translation id="7375125077091615385">Type:</translation> <translation id="7376560087009844242">Door meer tekst van een pagina op te nemen, krijg je misschien betere resultaten als je Tikken om te zoeken gebruikt. Je kunt dit altijd wijzigen in de <ph name="BEGIN_LINK" />instellingen<ph name="END_LINK" />.</translation> <translation id="7379900596734708416">Donker thema voor sites is beschikbaar</translation> @@ -1263,6 +1259,7 @@ <translation id="7876243839304621966">Alles verwijderen</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{Je hebt <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> ongelezen pagina}other{Je hebt <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> ongelezen pagina's}}</translation> <translation id="7886917304091689118">Actief in Chrome</translation> +<translation id="7887174313503389866">Volg een rondleiding langs belangrijke privacy- en beveiligingsopties. Ga voor meer opties naar de afzonderlijke instellingen.</translation> <translation id="7887334752153342268">Dupliceren</translation> <translation id="789763218334337857">Chrome gebruiken</translation> <translation id="7903184275147100332">Dit kan even duren</translation> @@ -1376,6 +1373,7 @@ <translation id="8445448999790540984">Wachtwoorden kunnen niet worden geëxporteerd</translation> <translation id="8446884382197647889">Meer informatie</translation> <translation id="8453310803815879010">Dino-game starten</translation> +<translation id="8460448946170646641">Neem belangrijke privacy- en beveiligingsopties door</translation> <translation id="8461694314515752532">Gesynchroniseerde gegevens versleutelen met een eigen wachtwoordzin</translation> <translation id="8466613982764129868">Zorg dat <ph name="TARGET_DEVICE_NAME" /> is verbonden met internet</translation> <translation id="8473863474539038330">Adressen en meer</translation> @@ -1421,6 +1419,7 @@ <translation id="8636825310635137004">Zet synchronisatie aan om de tabbladen op je andere apparaten te bekijken</translation> <translation id="8641930654639604085">Sites met content voor volwassenen proberen te blokkeren</translation> <translation id="864544049772947936">Vensters beheren (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">Voorspelt en waarschuwt je over gevaarlijke gebeurtenissen voordat deze plaatsvinden</translation> <translation id="8646467750715887511">Pagina's worden pas geladen nadat je ze opent.</translation> <translation id="8655129584991699539">Je kunt de gegevens wissen in de Chrome-instellingen</translation> <translation id="8659579665266920523">Zoeken met Chrome</translation> @@ -1433,7 +1432,6 @@ <translation id="867767487203716855">Volgende update</translation> <translation id="8683039184091909753">afbeelding</translation> <translation id="8683081248374354009">Groep resetten</translation> -<translation id="8683526617475118045">Wat je krijgt</translation> <translation id="869891660844655955">Vervaldatum</translation> <translation id="8699120352855309748">Niet aanbieden om deze talen te vertalen</translation> <translation id="8712637175834984815">Begrepen</translation> @@ -1517,7 +1515,6 @@ <translation id="9148126808321036104">Opnieuw inloggen</translation> <translation id="9158770349521403363">Alleen content delen</translation> <translation id="9159716826369098114">Tabbladgroep van <ph name="TAB_COUNT" /> tabbladen herstellen als een nieuwe tabbladgroep op de achtergrond.</translation> -<translation id="916446198114569890">De URL's die je bezoekt, worden opgeslagen in je Google-account.</translation> <translation id="9169507124922466868">Navigatiegeschiedenis is half geopend</translation> <translation id="9187955620966010988">Reactie aangepast</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{1 minuut geleden gecheckt}other{# minuten geleden gecheckt}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_no.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_no.xtb index 7cca194..e4c093c 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_no.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_no.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">Ikke tilby å oversette disse nettstedene</translation> <translation id="1145536944570833626">Slett eksisterende data.</translation> <translation id="1146678959555564648">Slå på VR-modus</translation> -<translation id="114825011539563458">De viktigste personvern- og sikkerhetskontrollene på ett sted</translation> <translation id="1149401351239820326">Utløpsmåned</translation> <translation id="1150263420752757504"><ph name="APP_NAME" /> åpnes i Chrome. Ved å fortsette samtykker du i <ph name="BEGIN_LINK1" />Googles vilkår for bruk<ph name="END_LINK1" /> og <ph name="BEGIN_LINK2" />tilleggsvilkårene for bruk av Google Chrome og ChromeOS<ph name="END_LINK2" />.</translation> <translation id="1154704303112745282">Siden er ikke tilgjengelig uten nett: <ph name="VIOLATED_URL" /></translation> @@ -170,6 +169,7 @@ <translation id="189358972401248634">Andre språk</translation> <translation id="1894023287452300670">Spor prisen her</translation> <translation id="1900260903084164610">Ved å fortsette godtar du <ph name="BEGIN_TOS_LINK" />vilkårene for bruk<ph name="END_TOS_LINK" />.</translation> +<translation id="1904580727789512086">Nettadressene du besøker, lagres i Google-kontoen din</translation> <translation id="1910950723001426294">Listen over delingsalternativer er lukket.</translation> <translation id="1918175104945982129">UI for samtykke til talesøk med assistenten er åpnet i halv høyde</translation> <translation id="1919130412786645364">Tillat Chrome-pålogging</translation> @@ -194,7 +194,6 @@ <translation id="2000419248597011803">Sender noen informasjonskapsler og søk fra adressefeltet og søkefeltet samt noen informasjonskapsler til standardsøkemotoren din</translation> <translation id="200114059308480249">Vil du inkludere omliggende tekst i Google-søk?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# fil}other{# filer}}</translation> -<translation id="2020309681647789787">Du får loggen din på alle synkroniserte enheter, slik at du kan fortsette med det du holdt på med</translation> <translation id="2021896219286479412">Navigering i full skjerm</translation> <translation id="2038563949887743358">Slå på Bruk skrivebordsversjon</translation> <translation id="204321170514947529"><ph name="APP_NAME" /> har også data i Chrome</translation> @@ -280,7 +279,6 @@ <translation id="2527779675047087889">Skjul innholdet på utklippstavlen</translation> <translation id="2532336938189706096">Nettvisning</translation> <translation id="2534155362429831547">Slettet <ph name="NUMBER_OF_ITEMS" /> elementer</translation> -<translation id="2534582914273493287">Nettadresser du besøker, sendes til Google</translation> <translation id="2536728043171574184">Ser på en lokalt lagret versjon av denne siden</translation> <translation id="2546283357679194313">Informasjonskapsler og data fra nettsteder</translation> <translation id="2549516196460093976">Du kan bruke dette nettbrettet til å logge på datamaskinen som viser denne QR-koden.</translation> @@ -372,7 +370,6 @@ <translation id="2996291259634659425">Opprett en passordfrase</translation> <translation id="2996809686854298943">Nettadresse kreves</translation> <translation id="2997081575621687554">Når Google-nettsteder ber om privat forhåndslasting av linker på sidene sine, medfører det at Chrome krypterer og forhåndslaster sider gjennom Googles tjenere uten informasjonskapsler. Dermed skjules identiteten din for det forhåndslastede nettstedet.</translation> -<translation id="3003733539450769656">Advarer deg om farlige hendelser før de inntreffer</translation> <translation id="3006881078666935414">Ingen bruksdata</translation> <translation id="301080557829842765">Personvernveiledning</translation> <translation id="3016635187733453316">Kontrollér at enheten er koblet til internett</translation> @@ -432,6 +429,7 @@ <translation id="3284510035090979597">Proaktiv hjelp</translation> <translation id="3285080554353377245">Videoer om hvordan du bruker Chrome</translation> <translation id="3288003805934695103">Last inn siden på nytt</translation> +<translation id="3290249595466894471">Sender også et lite utvalg av sider, nedlastinger, utvidelsesaktivitet og systeminformasjon for å bidra til å oppdage nye trusler</translation> <translation id="3297344142967351106">Talehjelp</translation> <translation id="3303414029551471755">Vil du gå videre med å laste ned innholdet?</translation> <translation id="3334729583274622784">Vil du endre filetternavnet?</translation> @@ -637,7 +635,6 @@ <translation id="4558311620361989323">Hurtigtaster for nettsider</translation> <translation id="4561730552726921821">Registreringen var vellykket</translation> <translation id="4561979708150884304">Ingen tilkobling</translation> -<translation id="4562008740775511591">Chrome har fornuftige standardverdier, men du kan tilpasse dem slik at de stemmer bedre overens med surfevanene dine</translation> <translation id="4565377596337484307">Skjul passord</translation> <translation id="4572422548854449519">Logg på en administrert konto</translation> <translation id="4576892426230499203">Prøv et annet bekreftelsesalternativ</translation> @@ -919,7 +916,6 @@ <translation id="604996488070107836">Nedlastingen av <ph name="FILE_NAME" /> ble avbrutt på grunn av en ukjent feil.</translation> <translation id="605721222689873409">ÅÅ</translation> <translation id="6059830886158432458">Styr nyhetssakene dine og aktiviteten din her</translation> -<translation id="6069177176307973611">Gå gjennom personvern- og sikkerhetsinnstillinger</translation> <translation id="6070730414166672373">Kontakter banken din \u2026</translation> <translation id="6085886413119427067">Avgjør hvordan en sikker forbindelse brukes til å koble til nettsteder</translation> <translation id="6091413777268123602">Med Privacy Sandbox-prøveprosjekter kan nettsteder bruke mindre av dataene dine og likevel gi deg den samme nettlesingsopplevelsen. Det betyr mer personvern for deg og mindre sporing på tvers av nettsteder. Vi legger til nye prøveprosjekter etter hvert som de er klare for utprøving.</translation> @@ -1040,6 +1036,7 @@ <translation id="6641780377503683465">Fjern <ph name="INTEREST" /></translation> <translation id="6643016212128521049">Tøm</translation> <translation id="6645629752388991326">Kontroller hvilke enheter som kan logge på ved å bruke denne enheten som sikkerhetsnøkkel.</translation> +<translation id="6647441008198474441">Nettadresser du besøker, sendes til Google for å forutsi hvilke nettsteder du kanskje kommer til å besøke etterpå</translation> <translation id="6648459603387803038">Administratoren kan endre nettleseroppsettet eksternt. Aktiviteten på denne enheten kan også administreres utenfor Chrome.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" /> og <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> til}other{<ph name="CONTACT_PREVIEW" /> og <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> til}}</translation> <translation id="6649642165559792194">Forhåndsvis bildet <ph name="BEGIN_NEW" />Nyhet<ph name="END_NEW" /></translation> @@ -1047,7 +1044,6 @@ <translation id="6659594942844771486">Fane</translation> <translation id="666731172850799929">Åpne i <ph name="APP_NAME" /></translation> <translation id="6671495933530132209">Kopiér bildet</translation> -<translation id="6674044799624355221">Sender et lite utvalg av sider, nedlastinger, utvidelsesaktivitet og systeminformasjon for å bidra til å oppdage nye trusler</translation> <translation id="6674571176963658787">For å starte synkroniseringen, skriv inn passordfrasen din</translation> <translation id="6676840375528380067">Vil du fjerne Chrome-dataene dine fra denne enheten?</translation> <translation id="6684809838922667136">Gjør Chrome bedre</translation> @@ -1069,7 +1065,6 @@ <translation id="6802555630140434547">Vinduet blir lukket</translation> <translation id="6811034713472274749">Siden er klar til å vises</translation> <translation id="6813446258015311409">Logg på Chrome, åpnet.</translation> -<translation id="6814033694018386318">Dette deler du med Google</translation> <translation id="6817747507826986771">Del denne siden raskt. Trykk og hold for å redigere denne snarveien.</translation> <translation id="6819199143469632133">For å få Google-tingene dine på flere enheter, logg på</translation> <translation id="6820686453637990663">CVC</translation> @@ -1164,6 +1159,7 @@ <translation id="7352939065658542140">VIDEO</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{Del 1 valgt element}other{Del # valgte elementer}}</translation> <translation id="7359002509206457351">Gå til betalingsmåter</translation> +<translation id="7363349185727752629">En veiledning i personvernvalgene dine</translation> <translation id="7375125077091615385">Type:</translation> <translation id="7376560087009844242">Hvis du inkluderer mer av teksten på siden, kan det hende du får bedre resultater når du bruker Trykk for å søke. Du kan når som helst gå til <ph name="BEGIN_LINK" />innstillingene<ph name="END_LINK" /> for å endre dette.</translation> <translation id="7379900596734708416">Mørkt tema for nettsteder er tilgjengelig</translation> @@ -1263,6 +1259,7 @@ <translation id="7876243839304621966">Fjern alle</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{Du har <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> ulest side}other{Du har <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> uleste sider}}</translation> <translation id="7886917304091689118">Kjører i Chrome</translation> +<translation id="7887174313503389866">Få en innføring i viktige personvern- og sikkerhetskontroller. For å finne flere alternativer, gå til individuelle innstillinger.</translation> <translation id="7887334752153342268">Dupliser</translation> <translation id="789763218334337857">Slik bruker du Chrome</translation> <translation id="7903184275147100332">Dette kan ta en liten stund</translation> @@ -1376,6 +1373,7 @@ <translation id="8445448999790540984">Kan ikke eksportere passordene</translation> <translation id="8446884382197647889">Les mer</translation> <translation id="8453310803815879010">Start dinosaurspillet</translation> +<translation id="8460448946170646641">Gjennomgå viktige personvern- og sikkerhetskontroller</translation> <translation id="8461694314515752532">Kryptér synkroniserte data med din egen passordfrase for synkronisering</translation> <translation id="8466613982764129868">Kontrollér at <ph name="TARGET_DEVICE_NAME" /> er koblet til internett</translation> <translation id="8473863474539038330">Adresser med mer</translation> @@ -1421,6 +1419,7 @@ <translation id="8636825310635137004">For å få fanene dine fra de andre enhetene du bruker, slå på synkronisering.</translation> <translation id="8641930654639604085">Prøv å blokkere nettsteder med voksent innhold</translation> <translation id="864544049772947936">Administrer vinduer (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">Forutsier og advarer deg om farlige hendelser før de inntreffer</translation> <translation id="8646467750715887511">Sider lastes bare inn etter at du har åpnet dem.</translation> <translation id="8655129584991699539">Du kan slette dataene i Chrome-innstillingene</translation> <translation id="8659579665266920523">Slik søker du med Chrome</translation> @@ -1433,7 +1432,6 @@ <translation id="867767487203716855">Neste oppdatering</translation> <translation id="8683039184091909753">bilde</translation> <translation id="8683081248374354009">Tilbakestill gruppen</translation> -<translation id="8683526617475118045">Dette får du</translation> <translation id="869891660844655955">Utløpsdato</translation> <translation id="8699120352855309748">Ikke tilby å oversette disse språkene</translation> <translation id="8712637175834984815">Skjønner</translation> @@ -1517,7 +1515,6 @@ <translation id="9148126808321036104">Logg på igjen</translation> <translation id="9158770349521403363">Del kun innhold</translation> <translation id="9159716826369098114">Gjenopprett fanegruppen med <ph name="TAB_COUNT" /> faner som en ny bakgrunnsfanegruppe.</translation> -<translation id="916446198114569890">Nettadressene du besøker, lagres i Google-kontoen din</translation> <translation id="9169507124922466868">Navigasjonshistorikken er halvveis åpnet</translation> <translation id="9187955620966010988">Reaksjonen er justert</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{Sjekket for ett minutt siden}other{Sjekket for # minutter siden}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_or.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_or.xtb index 0300578..8a8012b8 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_or.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_or.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">ଏହି ସାଇଟଗୁଡ଼ିକର ଅନୁବାଦ କରିବାକୁ ଅଫର୍ କରନ୍ତୁ ନାହିଁ</translation> <translation id="1145536944570833626">ବିଦ୍ୟମାନ ଥିବା ଡାଟାକୁ ଡିଲିଟ୍ କରନ୍ତୁ।</translation> <translation id="1146678959555564648">VR ଲେଖନ୍ତୁ</translation> -<translation id="114825011539563458">ସବୁଠାରୁ ଗୁରୁତ୍ୱପୂର୍ଣ୍ଣ ଗୋପନୀୟତା ଏବଂ ସୁରକ୍ଷା ନିୟନ୍ତ୍ରଣଗୁଡ଼ିକ ଗୋଟିଏ ସ୍ଥାନରେ</translation> <translation id="1149401351239820326">ମିଆଦ ଶେଷ ହେଉଥିବା ମାସ</translation> <translation id="1150263420752757504"><ph name="APP_NAME" /> Chromeରେ ଖୋଲିବ। ଜାରି ରଖି, ଆପଣ <ph name="BEGIN_LINK1" />Google ସେବାର ସର୍ତ୍ତାବଳୀ<ph name="END_LINK1" /> ଏବଂ <ph name="BEGIN_LINK2" />Google Chrome ଏବଂ ChromeOSର ଅତିରିକ୍ତ ସେବାର ସର୍ତ୍ତାବଳୀ<ph name="END_LINK2" />ରେ ସମ୍ମତ ହୁଅନ୍ତି।</translation> <translation id="1154704303112745282">ପୃଷ୍ଠାଟି ଅଫଲାଇନରେ ଉପଲବ୍ଧ ନାହିଁ: <ph name="VIOLATED_URL" /></translation> @@ -170,6 +169,7 @@ <translation id="189358972401248634">ଅନ୍ୟ ଭାଷାଗୁଡ଼ିକ</translation> <translation id="1894023287452300670">ଏଠାରେ ମୂଲ୍ୟ ଟ୍ରାକ କରନ୍ତୁ</translation> <translation id="1900260903084164610">ଜାରି ରଖି ଆପଣ <ph name="BEGIN_TOS_LINK" />ସେବାର ସର୍ତ୍ତାବଳୀ<ph name="END_TOS_LINK" />ରେ ସମ୍ମତ ହୁଅନ୍ତି।</translation> +<translation id="1904580727789512086">ଆପଣ ଭିଜିଟ କରିଥିବା URLଗୁଡ଼ିକ ଆପଣଙ୍କ Google ଆକାଉଣ୍ଟରେ ସେଭ ହୋଇଥାଏ</translation> <translation id="1910950723001426294">ସେୟାରିଂ ବିକଳ୍ପଗୁଡ଼ିକର ତାଲିକା ବନ୍ଦ ଅଛି।</translation> <translation id="1918175104945982129">Assistantର ଭଏସ୍ ମାଧ୍ୟମରେ ସନ୍ଧାନ ପାଇଁ ସମ୍ମତିର ui ଅଧା ସ୍କ୍ରିନରେ ଖୋଲିଛି</translation> <translation id="1919130412786645364">Chromeରେ ସାଇନ୍-ଇନ୍ କରିବାକୁ ଅନୁମତି ଦିଅନ୍ତୁ</translation> @@ -194,7 +194,6 @@ <translation id="2000419248597011803">ଆପଣଙ୍କର ଡିଫଲ୍ଟ ସନ୍ଧାନ ଇଞ୍ଜିନ୍କୁ ଠିକଣା ବାର୍ ଏବଂ ସନ୍ଧାନ ବାକ୍ସରୁ କିଛି କୁକୀ ଏବଂ ସନ୍ଧାନ ପଠାନ୍ତୁ</translation> <translation id="200114059308480249">Google ସନ୍ଧାନଗୁଡ଼ିକରେ ଆଖପାଖର ଟେକ୍ସଟକୁ ଅନ୍ତର୍ଭୁକ୍ତ କରିବେ କି?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{#ଟି ଫାଇଲ୍}other{#ଟି ଫାଇଲ୍}}</translation> -<translation id="2020309681647789787">ଆପଣଙ୍କ ସମସ୍ତ ସିଙ୍କ ହୋଇଥିବା ଡିଭାଇସରେ ଆପଣଙ୍କର ଇତିହାସ ରହିବ, ଯାହା ଫଳରେ ଆପଣ ଯାହା କରୁଛନ୍ତି ତାହା ଜାରି ରଖିପାରିବେ</translation> <translation id="2021896219286479412">ପୂର୍ଣ୍ଣ-ସ୍କ୍ରିନ୍ ସାଇଟ୍ ନିୟନ୍ତ୍ରଣ</translation> <translation id="2038563949887743358">ଅନୁରୋଧ ଡେକ୍ସଟପ୍ ସାଇଟ୍ ଚାଲୁ କରନ୍ତୁ</translation> <translation id="204321170514947529"><ph name="APP_NAME" />ର ମଧ୍ୟ Chromeରେ ଡାଟା ଅଛି</translation> @@ -280,7 +279,6 @@ <translation id="2527779675047087889">କ୍ଲିପବୋର୍ଡର ବିଷୟବସ୍ତୁଗୁଡ଼ିକୁ ଲୁଚାନ୍ତୁ</translation> <translation id="2532336938189706096">ୱେବ୍ ଦୃଶ୍ୟ</translation> <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" />ଟି ଆଇଟମ୍ ଡିଲିଟ୍ ହୋଇଛି</translation> -<translation id="2534582914273493287">ଆପଣ ଭିଜିଟ କରିଥିବା URLଗୁଡ଼ିକ Googleକୁ ପଠାଯାଇଥାଏ</translation> <translation id="2536728043171574184">ଏହି ପୃଷ୍ଠାର ଏକ ଅଫ୍ଲାଇନ୍ କପି ଦେଖୁଛି</translation> <translation id="2546283357679194313">କୁକିସ୍ ଏବଂ ସାଇଟ୍ ଡାଟା</translation> <translation id="2549516196460093976">ଏହି QR କୋଡ ଡିସପ୍ଲେ କରୁଥିବା କମ୍ପ୍ୟୁଟରରେ ସାଇନ ଇନ କରିବା ପାଇଁ ଆପଣ ଏହି ଟାବଲେଟକୁ ବ୍ୟବହାର କରିପାରିବେ।</translation> @@ -372,7 +370,6 @@ <translation id="2996291259634659425">ପାସ୍ଫ୍ରେଜ୍ ତିଆରି କରନ୍ତୁ</translation> <translation id="2996809686854298943">URL ଆବଶ୍ୟକ</translation> <translation id="2997081575621687554">ଯେତେବେଳେ ଏକ Google ସାଇଟ ତା'ର ପୃଷ୍ଠାରେ ଲିଙ୍କଗୁଡ଼ିକୁ ବ୍ୟକ୍ତିଗତ ଭାବେ ପ୍ରିଲୋଡ କରିବାକୁ କୁହେ, Chrome କୁକୀଗୁଡ଼ିକ ବିନା Google ସର୍ଭର ମାଧ୍ୟମରେ ଏନକ୍ରିପ୍ଟ କରି ପୃଷ୍ଠାଗୁଡ଼ିକୁ ପ୍ରିଲୋଡ କରେ। ଏହା ପ୍ରିଲୋଡ କରାଯାଇଥିବା ସାଇଟରୁ ଆପଣଙ୍କ ପରିଚୟକୁ ଲୁଚାଇଥାଏ।</translation> -<translation id="3003733539450769656">ବିପଦଜନକ ଇଭେଣ୍ଟଗୁଡ଼ିକ ଘଟିବା ପୂର୍ବରୁ ସେଗୁଡ଼ିକ ବିଷୟରେ ଆପଣଙ୍କୁ ଚେତାବନୀ ଦିଏ</translation> <translation id="3006881078666935414">କୌଣସି ବ୍ୟବହାର ହେଉଥିବା ଡାଟା ନାହିଁ</translation> <translation id="301080557829842765">ଗୋପନୀୟତା ଗାଇଡ୍</translation> <translation id="3016635187733453316">ଏହି ଡିଭାଇସ୍ଟି ଇଣ୍ଟର୍ନେଟ୍ ସହ ସଂଯୁକ୍ତ ହୋଇଥିବା ସୁନିଶ୍ଚିତ କରନ୍ତୁ</translation> @@ -432,6 +429,7 @@ <translation id="3284510035090979597">ସକ୍ରିୟ ସହାୟତା</translation> <translation id="3285080554353377245">କିପରି Chrome ବ୍ୟବହାର କରିବେ ସେ ବିଷୟରେ ଭିଡିଓଗୁଡ଼ିକ</translation> <translation id="3288003805934695103">ପୃଷ୍ଠା ରିଲୋଡ୍ ହେଉଛି</translation> +<translation id="3290249595466894471">ନୂଆ ବିପଦଗୁଡ଼ିକୁ ଖୋଜି ପାଇବାରେ ସାହାଯ୍ୟ କରିବାକୁ ପୃଷ୍ଠାଗୁଡ଼ିକର ଏକ ଛୋଟ ନମୁନା, ଡାଉନଲୋଡ, ଏକ୍ସଟେନସନ କାର୍ଯ୍ୟକଳାପ ଏବଂ ସିଷ୍ଟମ ସୂଚନା ମଧ୍ୟ ପଠାଏ</translation> <translation id="3297344142967351106">ଭଏସ୍ ସହାୟତା</translation> <translation id="3303414029551471755">ବିଷୟବସ୍ତୁ ଡାଉନ୍ଲୋଡ୍ କରିବା ପାଇଁ ଆଗକୁ ବଢ଼ିବେ?</translation> <translation id="3334729583274622784">ଫାଇଲ୍ର ଏକ୍ସଟେନ୍ସନ୍ ବଦଳାଇବେ କି?</translation> @@ -637,7 +635,6 @@ <translation id="4558311620361989323">ୱେବ୍ପୃଷ୍ଟା ସର୍ଟକଟ୍</translation> <translation id="4561730552726921821">ପଞ୍ଜିକରଣ ସଫଳ ହୋଇଛି</translation> <translation id="4561979708150884304">କୌଣସି ସଂଯୋଗ ନାହିଁ</translation> -<translation id="4562008740775511591">Chrome ଯୁକ୍ତିସମ୍ମତ ଡିଫଲ୍ଟଗୁଡ଼ିକ ପ୍ରଦାନ କରିଥାଏ, କିନ୍ତୁ ଆପଣଙ୍କ ବ୍ରାଉଜିଂ ଅଭ୍ୟାସ ସହ ଭଲ ଭାବେ ଫିଟ ହେବା ପାଇଁ ଆପଣ ଏହାକୁ କଷ୍ଟମାଇଜ କରିପାରିବେ</translation> <translation id="4565377596337484307">ପାସୱାର୍ଡ୍ ଲୁଚାନ୍ତୁ</translation> <translation id="4572422548854449519">ପରିଚାଳିତ ଆକାଉଣ୍ଟରେ ସାଇନ୍ ଇନ୍ କରନ୍ତୁ</translation> <translation id="4576892426230499203">ଅନ୍ୟ ଏକ ଯାଞ୍ଚକରଣ ବିକଳ୍ପ ବ୍ୟବହାର କରି ଦେଖନ୍ତୁ</translation> @@ -919,7 +916,6 @@ <translation id="604996488070107836">ଏକ ଅଜଣା ତ୍ରୁଟି ଯୋଗୁଁ <ph name="FILE_NAME" /> ଡାଉନ୍ଲୋଡ୍ ହୋଇପାରିଲା ନାହିଁ।</translation> <translation id="605721222689873409">YY</translation> <translation id="6059830886158432458">ଏଠାରେ ଆପଣଙ୍କ ଷ୍ଟୋରୀ ଏବଂ କାର୍ଯ୍ୟକଳାପ ନିୟନ୍ତ୍ରଣ କରନ୍ତୁ</translation> -<translation id="6069177176307973611">ଗୋପନୀୟତା ଏବଂ ସୁରକ୍ଷା ସେଟିଂସର ସମୀକ୍ଷା କରନ୍ତୁ</translation> <translation id="6070730414166672373">ଆପଣଙ୍କ ବ୍ୟାଙ୍କ ସହ ଯୋଗାଯୋଗ କରାଯାଉଛି\u2026</translation> <translation id="6085886413119427067">ଏକ ସୁରକ୍ଷିତ ସଂଯୋଗରେ ୱେବସାଇଟଗୁଡ଼ିକ ସହ କିପରି ଯୋଗାଯୋଗ କରିବ ତାହା ନିର୍ଦ୍ଧାରଣ କରିଥାଏ</translation> <translation id="6091413777268123602">ପ୍ରାଇଭେସି ସେଣ୍ଡବକ୍ସର ଟ୍ରାଏଲଗୁଡ଼ିକ ସହ, ସାଇଟଗୁଡ଼ିକ ଆପଣଙ୍କର ସୂଚନାକୁ କମ୍ ବ୍ୟବହାର କରି ସମାନ ବ୍ରାଉଜିଂ ଅନୁଭୂତି ଡେଲିଭର କରିପାରିବ। ଏହାର ଅର୍ଥ ହେଉଛି, ଆପଣଙ୍କ ପାଇଁ ଗୋପନୀୟତାର ଅଧିକ ସୁରକ୍ଷା ଏବଂ କମ୍ କ୍ରସ ସାଇଟ ଟ୍ରାକିଂ। ନୂଆ ଟ୍ରାଏଲଗୁଡ଼ିକ ପରୀକ୍ଷଣ ପାଇଁ ପ୍ରସ୍ତୁତ ହୋଇଗଲେ ଆମେ ସେଗୁଡ଼ିକୁ ଯୋଗ କରିବୁ।</translation> @@ -1040,6 +1036,7 @@ <translation id="6641780377503683465"><ph name="INTEREST" />କୁ କାଢ଼ି ଦିଅନ୍ତୁ</translation> <translation id="6643016212128521049">ଖାଲି କରନ୍ତୁ</translation> <translation id="6645629752388991326">ଏହି ଡିଭାଇସକୁ ଏକ ସୁରକ୍ଷା କୀ ଭାବେ ବ୍ୟବହାର କରି କେଉଁ ଡିଭାଇସଗୁଡ଼ିକରେ ସାଇନ ଇନ କରିପାରିବେ ତାହା ନିୟନ୍ତ୍ରଣ କରନ୍ତୁ।</translation> +<translation id="6647441008198474441">ପରବର୍ତ୍ତୀ ସମୟରେ ଆପଣ କେଉଁ ସାଇଟଗୁଡ଼ିକୁ ଭିଜିଟ କରିପାରନ୍ତି ତାହାର ପୂର୍ବାନୁମାନ କରିବା ପାଇଁ ଆପଣ ଭିଜିଟ କରିଥିବା URLଗୁଡ଼ିକ Googleକୁ ପଠାଯାଏ</translation> <translation id="6648459603387803038">ଆପଣଙ୍କର ଆଡମିନିଷ୍ଟ୍ରେଟର୍ ଆପଣଙ୍କ ବ୍ରାଉଜର୍ ସେଟଅପକୁ ରିମୋଟ୍ ଭାବରେ ବଦଳାଇପାରିବେ। ଏହି ଡିଭାଇସରେ କରାଯାଉଥିବା କାର୍ଯ୍ୟକଳାପ Chrome ବାହାରେ ମଧ୍ୟ ପରିଚାଳନା କରାଯାଇପାରେ।</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 ଏବଂ <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> ଅଧିକ}other{<ph name="CONTACT_PREVIEW" />\u2026 ଏବଂ <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> ଅଧିକ}}</translation> <translation id="6649642165559792194"><ph name="BEGIN_NEW" />ନୂଆ<ph name="END_NEW" /> ଛବିର ପୂର୍ବାବଲୋକନ କରନ୍ତୁ</translation> @@ -1047,7 +1044,6 @@ <translation id="6659594942844771486">ଟାବ୍</translation> <translation id="666731172850799929"><ph name="APP_NAME" />ରେ ଖୋଲନ୍ତୁ</translation> <translation id="6671495933530132209">ଛବି କପି କରନ୍ତୁ</translation> -<translation id="6674044799624355221">ନୂଆ ବିପଦଗୁଡ଼ିକୁ ଖୋଜି ପାଇବାରେ ସାହାଯ୍ୟ କରିବାକୁ ପୃଷ୍ଠାଗୁଡ଼ିକର ଏକ ଛୋଟ ନମୁନା, ଡାଉନଲୋଡ, ଏକ୍ସଟେନସନ କାର୍ଯ୍ୟକଳାପ ଏବଂ ସିଷ୍ଟମ ସୂଚନା ପଠାଏ</translation> <translation id="6674571176963658787">ସିଙ୍କ୍ ଆରମ୍ଭ କରିବାକୁ, ଆପଣଙ୍କ ପାସଫ୍ରେଜ୍ ଲେଖନ୍ତୁ</translation> <translation id="6676840375528380067">ଏହି ଡିଭାଇସ୍ରୁ ଆପଣଙ୍କର Chrome ଡାଟା ଖାଲି କରିବେ କି?</translation> <translation id="6684809838922667136">Chromeକୁ ଆହୁରି ଉନ୍ନତ କରନ୍ତୁ</translation> @@ -1069,7 +1065,6 @@ <translation id="6802555630140434547">ୱିଣ୍ଡୋଟି ବନ୍ଦ ହୋଇଯିବ</translation> <translation id="6811034713472274749">ଦେଖିବା ପାଇଁ ପୃଷ୍ଟାଟି ପ୍ତସ୍ତୁତ ଅଛି</translation> <translation id="6813446258015311409">Chromeରେ ସାଇନ୍ ଇନ୍ କରନ୍ତୁ, ଖୋଲା ଅଛି।</translation> -<translation id="6814033694018386318">ଆପଣ Google ସହିତ କ’ଣ ସେୟାର୍ କରନ୍ତି</translation> <translation id="6817747507826986771">ଏହି ପୃଷ୍ଠାକୁ ଶୀଘ୍ର ସେୟାର୍ କରନ୍ତୁ। ଏହି ସର୍ଟକଟକୁ ଏଡିଟ୍ କରିବା ପାଇଁ, ସ୍ପର୍ଶ କରି ଧରି ରଖନ୍ତୁ।</translation> <translation id="6819199143469632133">ସମସ୍ତ ଡିଭାଇସରେ ଆପଣଙ୍କ Google ଷ୍ଟଫକୁ ପାଇବା ପାଇଁ, ସାଇନ ଇନ କରନ୍ତୁ</translation> <translation id="6820686453637990663">CVC</translation> @@ -1164,6 +1159,7 @@ <translation id="7352939065658542140">ଭିଡିଓ</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{1ଟି ଚୟନିତ ଆଇଟମ୍ ସେୟାର୍ କରନ୍ତୁ}other{#ଟି ଚୟନିତ ଆଇଟମ୍ ସେୟାର୍ କରନ୍ତୁ}}</translation> <translation id="7359002509206457351">ପେମେଣ୍ଟ ପଦ୍ଧତି ଆକ୍ସେସ୍ କରନ୍ତୁ</translation> +<translation id="7363349185727752629">ଗୋପନୀୟତା ସମ୍ବନ୍ଧିତ ଆପଣଙ୍କ ପସନ୍ଦଗୁଡ଼ିକର ଏକ ଗାଇଡ</translation> <translation id="7375125077091615385">ପ୍ରକାର:</translation> <translation id="7376560087009844242">ଗୋଟିଏ ପୃଷ୍ଠାର ଅଧିକ ଟେକ୍ସଟକୁ ଅନ୍ତର୍ଭୁକ୍ତ କରି, ଆପଣ ଯେତେବେଳେ ଟଚ ଟୁ ସର୍ଚ୍ଚ ବ୍ୟବହାର କରନ୍ତି, ଉନ୍ନତ ଫଳାଫଳ ଦେଖିପାରନ୍ତି। ଏହାକୁ ପରିବର୍ତ୍ତନ କରିବା ପାଇଁ ଆପଣ ସର୍ବଦା <ph name="BEGIN_LINK" />ସେଟିଂସ<ph name="END_LINK" />କୁ ଭିଜିଟ କରିପାରିବେ।</translation> <translation id="7379900596734708416">ସାଇଟଗୁଡ଼ିକ ପାଇଁ ଗାଢ଼ା ଥିମ ଉପଲବ୍ଧ ଅଛି</translation> @@ -1263,6 +1259,7 @@ <translation id="7876243839304621966">ସବୁ କାଢ଼ି ଦିଅନ୍ତୁ</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{ଆପଣଙ୍କର <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" />ଟି ପଢ଼ାଯାଇନଥିବା ପୃଷ୍ଠା ଅଛି}other{ଆପଣଙ୍କର <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" />ଟି ପଢ଼ାଯାଇନଥିବା ପୃଷ୍ଠା ଅଛି}}</translation> <translation id="7886917304091689118">Chromeରେ ଚାଲୁଛି</translation> +<translation id="7887174313503389866">ମୁଖ୍ୟ ଗୋପନୀୟତା ଏବଂ ସୁରକ୍ଷା ନିୟନ୍ତ୍ରଣଗୁଡ଼ିକ ବିଷୟରେ ଅଧିକ ଜାଣନ୍ତୁ। ଅଧିକ ବିକଳ୍ପ ପାଇଁ, ବ୍ୟକ୍ତିଗତ ସେଟିଂସକୁ ଯାଆନ୍ତୁ।</translation> <translation id="7887334752153342268">ନକଲ</translation> <translation id="789763218334337857">Chrome କିପରି ବ୍ୟବହାର କରିବେ</translation> <translation id="7903184275147100332">ଏଥିପାଇଁ କିଛି ସମୟ ଲାଗିପାରେ</translation> @@ -1376,6 +1373,7 @@ <translation id="8445448999790540984">ପାସ୍ୱାର୍ଡ ଏକ୍ସପୋର୍ଟ କରିପାରିବ ନାହିଁ</translation> <translation id="8446884382197647889">ଅଧିକ ଜାଣନ୍ତୁ</translation> <translation id="8453310803815879010">Dino ଗେମ୍ ଆରମ୍ଭ କରନ୍ତୁ</translation> +<translation id="8460448946170646641">ମୁଖ୍ୟ ଗୋପନୀୟତା ଏବଂ ସୁରକ୍ଷା ନିୟନ୍ତ୍ରଣଗୁଡ଼ିକର ସମୀକ୍ଷା କରନ୍ତୁ</translation> <translation id="8461694314515752532">ଆପଣ ନିଜର ସିଙ୍କ୍ ପାସ୍ଫ୍ରେଜ୍ ସହିତ ସିଙ୍କ୍ କରାଯାଇଥିବା ଡାଟାକୁ ଏନ୍କ୍ରିପ୍ଟ କରନ୍ତୁ।</translation> <translation id="8466613982764129868"><ph name="TARGET_DEVICE_NAME" /> ଇଣ୍ଟର୍ନେଟ୍ ସହ ସଂଯୁକ୍ତ ଥିବା ସୁନିଶ୍ଚିତ କରନ୍ତୁ</translation> <translation id="8473863474539038330">ଠିକଣାଗୁଡ଼ିକ ଏବଂ ଅଧିକ</translation> @@ -1421,6 +1419,7 @@ <translation id="8636825310635137004">ଆପଣଙ୍କର ଅନ୍ୟ ଡିଭାଇସ୍ରୁ ନିଜର ଟାବ୍ଗୁଡ଼ିକୁ ପ୍ରାପ୍ତ କରିବାକୁ, ସିଙ୍କ ଚାଲୁ କରନ୍ତୁ।</translation> <translation id="8641930654639604085">ଅଶ୍ଳୀଳ ସାଇଟ୍ଗୁଡ଼ିକୁ ବ୍ଲକ୍ କରିବାକୁ ଚେଷ୍ଟା କରନ୍ତୁ</translation> <translation id="864544049772947936">ୱିଣ୍ଡୋଗୁଡ଼ିକୁ ପରିଚାଳନା କର (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">ବିପଦଜନକ ଘଟଣାଗୁଡ଼ିକ ଘଟିବା ପୂର୍ବରୁ ସେଗୁଡ଼ିକର ପୂର୍ବାନୁମାନ କରି ଆପଣଙ୍କୁ ଚେତାବନୀ ଦିଏ</translation> <translation id="8646467750715887511">ଆପଣ ପୃଷ୍ଠାଗୁଡ଼ିକୁ ଖୋଲିବା ପରେ ହିଁ କେବଳ ସେଗୁଡ଼ିକ ଲୋଡ ହୁଏ।</translation> <translation id="8655129584991699539">ଆପଣା Chrome ସେଟିଂସ୍ରେ ଡାଟା ଖାଲି କରିପାରିବେ</translation> <translation id="8659579665266920523">Chrome ସହ କିପରି ସନ୍ଧାନ କରିବେ</translation> @@ -1433,7 +1432,6 @@ <translation id="867767487203716855">ପରବର୍ତ୍ତୀ ଅପଡେଟ୍</translation> <translation id="8683039184091909753">ଛବି</translation> <translation id="8683081248374354009">ଗୋଷ୍ଠୀ ରିସେଟ୍ କରନ୍ତୁ</translation> -<translation id="8683526617475118045">ଆପଣ କ’ଣ ପାଇବେ</translation> <translation id="869891660844655955">ମିଆଦ ଶେଷ ହେଉଥିବା ତାରିଖ</translation> <translation id="8699120352855309748">ଏହି ଭାଷାଗୁଡ଼ିକର ଅନୁବାଦ କରିବାକୁ ଅଫର୍ କରନ୍ତୁ ନାହିଁ</translation> <translation id="8712637175834984815">ବୁଝିଗଲି</translation> @@ -1517,7 +1515,6 @@ <translation id="9148126808321036104">ପୁଣି ସାଇନ୍ ଇନ୍ କରନ୍ତୁ</translation> <translation id="9158770349521403363">କେବଳ ବିଷୟବସ୍ତୁ ସେୟାର୍ କରନ୍ତୁ</translation> <translation id="9159716826369098114"><ph name="TAB_COUNT" />ଟି ଟାବର ଟାବ ଗ୍ରୁପକୁ ଏକ ନୂଆ ପୃଷ୍ଠପଟ ଟାବ ଗ୍ରୁପ ଭାବେ ରିଷ୍ଟୋର କରନ୍ତୁ।</translation> -<translation id="916446198114569890">ଆପଣ ଭିଜିଟ କରିଥିବା URLଗୁଡ଼ିକ ଆପଣଙ୍କ Google ଆକାଉଣ୍ଟରେ ସେଭ ହୋଇଥାଏ</translation> <translation id="9169507124922466868">ନାଭିଗେସନ୍ ଇତିହାସ ଅଧା ଖୋଲା ଅଛି</translation> <translation id="9187955620966010988">ପ୍ରତିକ୍ରିୟାକୁ ଆଡଜଷ୍ଟ କରାଯାଇଛି</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{1 ମିନିଟ୍ ପୂର୍ବେ ଯାଞ୍ଚ କରାଯାଇଛି}other{# ମିନିଟ୍ ପୂର୍ବେ ଯାଞ୍ଚ କରାଯାଇଛି}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_pa.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_pa.xtb index 744343b..b5db67f 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_pa.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_pa.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">ਇਹਨਾਂ ਸਾਈਟਾਂ ਦਾ ਅਨੁਵਾਦ ਕਰਨ ਦੀ ਪੇਸ਼ਕਸ਼ ਨਾ ਕਰੋ</translation> <translation id="1145536944570833626">ਮੌਜੂਦਾ ਡਾਟਾ ਮਿਟਾਓ।</translation> <translation id="1146678959555564648">VR ਵਿੱਚ ਦਾਖਲ ਹੋਵੋ</translation> -<translation id="114825011539563458">ਸਭ ਤੋਂ ਮਹੱਤਵਪੂਰਨ ਪਰਦੇਦਾਰੀ ਅਤੇ ਸੁਰੱਖਿਆ ਕੰਟਰੋਲ ਇੱਕੋ ਥਾਂ 'ਤੇ</translation> <translation id="1149401351239820326">ਮਿਆਦ ਸਮਾਪਤੀ ਦਾ ਮਹੀਨਾ</translation> <translation id="1150263420752757504"><ph name="APP_NAME" /> ਨੂੰ Chrome ਵਿੱਚ ਖੋਲ੍ਹਿਆ ਜਾਵੇਗਾ। ਜਾਰੀ ਰੱਖ ਕੇ, ਤੁਸੀਂ <ph name="BEGIN_LINK1" />Google ਦੇ ਸੇਵਾ ਦੇ ਨਿਯਮਾਂ<ph name="END_LINK1" /> ਅਤੇ <ph name="BEGIN_LINK2" />Google Chrome ਅਤੇ ChromeOS ਦੇ ਵਧੀਕ ਸੇਵਾ ਦੇ ਨਿਯਮਾਂ<ph name="END_LINK2" /> ਨਾਲ ਸਹਿਮਤ ਹੁੰਦੇ ਹੋ।</translation> <translation id="1154704303112745282">ਪੰਨਾ ਆਫ਼ਲਾਈਨ ਉਪਲਬਧ ਨਹੀਂ ਹੈ: <ph name="VIOLATED_URL" /></translation> @@ -170,6 +169,7 @@ <translation id="189358972401248634">ਹੋਰ ਭਾਸ਼ਾਵਾਂ</translation> <translation id="1894023287452300670">ਇੱਥੇ ਕੀਮਤ ਨੂੰ ਟਰੈਕ ਕਰੋ</translation> <translation id="1900260903084164610">ਜਾਰੀ ਰੱਖ ਕੇ, ਤੁਸੀਂ <ph name="BEGIN_TOS_LINK" />ਸੇਵਾ ਦੇ ਨਿਯਮਾਂ<ph name="END_TOS_LINK" /> ਨਾਲ ਸਹਿਮਤ ਹੁੰਦੇ ਹੋ।</translation> +<translation id="1904580727789512086">ਉਹ URL ਤੁਹਾਡੇ Google ਖਾਤੇ 'ਤੇ ਰੱਖਿਅਤ ਕੀਤੇ ਜਾਂਦੇ ਹਨ, ਜਿਨ੍ਹਾਂ 'ਤੇ ਤੁਸੀਂ ਗਏ ਹੋ</translation> <translation id="1910950723001426294">ਸਾਂਝਾਕਰਨ ਵਿਕਲਪਾਂ ਦੀ ਸੂਚੀ ਬੰਦ ਹੈ।</translation> <translation id="1918175104945982129">Assistant ਦੀ ਅਵਾਜ਼ੀ ਖੋਜ ਲਈ ਸਹਿਮਤੀ ਵਾਲਾ UI ਅੱਧੀ ਸਕ੍ਰੀਨ ਵਿੱਚ ਖੁੱਲ੍ਹਾ ਹੈ</translation> <translation id="1919130412786645364">Chrome ਵਿੱਚ ਸਾਈਨ-ਇਨ ਕਰਨ ਦਿਓ</translation> @@ -194,7 +194,6 @@ <translation id="2000419248597011803">ਪਤਾ ਬਾਰ ਅਤੇ ਖੋਜ ਬਾਕਸ ਤੋਂ ਕੁਝ ਕੁਕੀਜ਼ ਅਤੇ ਖੋਜਾਂ ਤੁਹਾਡੇ ਪੂਰਵ-ਨਿਰਧਾਰਤ ਖੋਜ ਇੰਜਣ ਨੂੰ ਭੇਜਦੀ ਹੈ</translation> <translation id="200114059308480249">ਕੀ Google ਖੋਜਾਂ ਵਿੱਚ ਆਲੇ-ਦੁਆਲੇ ਦੀ ਲਿਖਤ ਨੂੰ ਸ਼ਾਮਲ ਕਰਨਾ ਹੈ?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# ਫ਼ਾਈਲ}one{# ਫ਼ਾਈਲ}other{# ਫ਼ਾਈਲਾਂ}}</translation> -<translation id="2020309681647789787">ਤੁਹਾਡੇ ਸਿੰਕ ਕੀਤੇ ਸਾਰੇ ਡੀਵਾਈਸਾਂ 'ਤੇ ਤੁਹਾਡਾ ਇਤਿਹਾਸ ਹੋਵੇਗਾ, ਤਾਂ ਜੋ ਤੁਸੀਂ ਜਿਹੜਾ ਕੰਮ ਕਰ ਰਹੇ ਸੀ, ਉਸਨੂੰ ਜਾਰੀ ਰੱਖ ਸਕੋ</translation> <translation id="2021896219286479412">ਪੂਰੀ ਸਕ੍ਰੀਨ ਦੇ ਸਾਈਟ ਕੰਟਰੋਲ</translation> <translation id="2038563949887743358">ਬੇਨਤੀ ਡੈਸਕਟਾਪ ਸਾਈਟ ਚਾਲੂ ਕਰੋ</translation> <translation id="204321170514947529"><ph name="APP_NAME" /> ਦਾ ਡਾਟਾ ਵੀ Chrome ਵਿੱਚ ਹੈ</translation> @@ -280,7 +279,6 @@ <translation id="2527779675047087889">ਕਲਿੱਪਬੋਰਡ ਸਮੱਗਰੀ ਲੁਕਾਓ</translation> <translation id="2532336938189706096">ਵੈੱਬ ਦ੍ਰਿਸ਼</translation> <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> ਆਈਟਮਾਂ ਮਿਟਾਈਆਂ ਗਈਆਂ</translation> -<translation id="2534582914273493287">ਤੁਹਾਡੇ ਵੱਲੋਂ ਖੋਲ੍ਹੇ ਜਾਣ ਵਾਲੇ URL Google ਨੂੰ ਭੇਜੇ ਜਾਂਦੇ ਹਨ</translation> <translation id="2536728043171574184">ਇਸ ਪੰਨੇ ਦੀ ਇੱਕ ਆਫ਼ਲਾਈਨ ਕਾਪੀ ਦੇਖ ਰਿਹਾ ਹੈ</translation> <translation id="2546283357679194313">ਕੁਕੀਜ਼ ਅਤੇ ਸਾਈਟ ਡਾਟਾ</translation> <translation id="2549516196460093976">ਤੁਸੀਂ ਇਸ QR ਕੋਡ ਨੂੰ ਦਿਖਾਉਣ ਵਾਲੇ ਟੈਬਲੈੱਟ 'ਤੇ ਸਾਈਨ-ਇਨ ਕਰਨ ਲਈ ਇਸ ਫ਼ੋਨ ਦੀ ਵਰਤੋਂ ਕਰ ਸਕਦੇ ਹੋ।</translation> @@ -372,7 +370,6 @@ <translation id="2996291259634659425">ਪਾਸਫਰੇਜ਼ ਬਣਾਓ</translation> <translation id="2996809686854298943">URL ਲੁੜੀਂਦਾ</translation> <translation id="2997081575621687554">ਜਦੋਂ ਕੋਈ Google ਸਾਈਟ ਆਪਣੇ ਪੰਨੇ 'ਤੇ ਨਿੱਜੀ ਤੌਰ 'ਤੇ ਲਿੰਕਾਂ ਨੂੰ ਪ੍ਰੀਲੋਡ ਕਰਨ ਲਈ ਕਹਿੰਦੀ ਹੈ, ਤਾਂ Chrome ਕੁਕੀਜ਼ ਤੋਂ ਬਿਨਾਂ Google ਸਰਵਰਾਂ ਰਾਹੀਂ ਪੰਨਿਆਂ ਨੂੰ ਇਨਕ੍ਰਿਪਟ ਅਤੇ ਪ੍ਰੀਲੋਡ ਕਰਦਾ ਹੈ। ਇਹ ਪ੍ਰੀਲੋਡ ਕੀਤੀ ਸਾਈਟ ਤੋਂ ਤੁਹਾਡੀ ਪਛਾਣ ਨੂੰ ਲੁਕਾਉਂਦਾ ਹੈ।</translation> -<translation id="3003733539450769656">ਖਤਰਨਾਕ ਘਟਨਾਵਾਂ ਵਾਪਰਨ ਤੋਂ ਪਹਿਲਾਂ ਤੁਹਾਨੂੰ ਚਿਤਾਵਨੀ ਦਿੰਦਾ ਹੈ</translation> <translation id="3006881078666935414">ਕੋਈ ਵਰਤੋਂ ਡਾਟਾ ਨਹੀਂ</translation> <translation id="301080557829842765">ਪਰਦੇਦਾਰੀ ਗਾਈਡ</translation> <translation id="3016635187733453316">ਪੱਕਾ ਕਰੋ ਕਿ ਇਹ ਡੀਵਾਈਸ ਇੰਟਰਨੈੱਟ ਨਾਲ ਕਨੈਕਟ ਹੋਵੇ</translation> @@ -432,6 +429,7 @@ <translation id="3284510035090979597">ਚੁਸਤ ਮਦਦ</translation> <translation id="3285080554353377245">Chrome ਨੂੰ ਵਰਤਣ ਦੇ ਤਰੀਕੇ ਬਾਰੇ ਵੀਡੀਓ</translation> <translation id="3288003805934695103">ਪੰਨਾ ਦੁਬਾਰਾ ਲੋਡ ਕਰੋ</translation> +<translation id="3290249595466894471">ਨਵੇਂ ਖਤਰਿਆਂ ਨੂੰ ਖੋਜਣ ਵਿੱਚ ਮਦਦ ਕਰਨ ਲਈ ਪੰਨਿਆਂ, ਡਾਊਨਲੋਡਾਂ, ਐਕਸਟੈਂਸ਼ਨ ਸਰਗਰਮੀ ਅਤੇ ਸਿਸਟਮ ਜਾਣਕਾਰੀ ਦਾ ਇੱਕ ਛੋਟਾ ਨਮੂਨਾ ਵੀ ਭੇਜਿਆ ਜਾਂਦਾ ਹੈ</translation> <translation id="3297344142967351106">ਅਵਾਜ਼ੀ ਸਹਾਇਕ</translation> <translation id="3303414029551471755">ਕੀ ਸਮੱਗਰੀ ਡਾਊਨਲੋਡ ਕਰਨਾ ਜਾਰੀ ਰੱਖਣਾ ਹੈ?</translation> <translation id="3334729583274622784">ਕੀ ਫ਼ਾਈਲ ਐਕਸਟੈਂਸ਼ਨ ਨੂੰ ਬਦਲਣਾ ਹੈ?</translation> @@ -637,7 +635,6 @@ <translation id="4558311620361989323">ਵੈੱਬ ਪੰਨੇ ਦੇ ਸ਼ਾਰਟਕੱਟ</translation> <translation id="4561730552726921821">ਰਜਿਸਟਰੇਸ਼ਨ ਕਰਨਾ ਸਫਲ ਰਿਹਾ</translation> <translation id="4561979708150884304">ਕੋਈ ਕਨੈਕਸ਼ਨ ਨਹੀਂ</translation> -<translation id="4562008740775511591">Chrome ਉਚਿਤ ਪੂਰਵ-ਨਿਰਧਾਰਿਤ ਸੈਟਿੰਗਾਂ ਮੁਹੱਈਆ ਕਰਵਾਉਂਦਾ ਹੈ, ਪਰ ਤੁਸੀਂ ਇਸਨੂੰ ਆਪਣੀ ਬ੍ਰਾਊਜ਼ਿੰਗ ਆਦਤ ਦੇ ਅਨੁਕੂਲ ਬਣਾਉਣ ਲਈ ਵਿਉਂਤਬੱਧ ਕਰ ਸਕਦੇ ਹੋ</translation> <translation id="4565377596337484307">ਪਾਸਵਰਡ ਲੁਕਾਓ</translation> <translation id="4572422548854449519">ਪ੍ਰਬੰਧਿਤ ਕੀਤੇ ਖਾਤੇ ਵਿੱਚ ਸਾਈਨ-ਇਨ ਕਰੋ</translation> <translation id="4576892426230499203">ਪੁਸ਼ਟੀਕਰਨ ਦਾ ਕੋਈ ਹੋਰ ਵਿਕਲਪ ਅਜ਼ਮਾਓ</translation> @@ -919,7 +916,6 @@ <translation id="604996488070107836">ਇੱਕ ਅਗਿਆਤ ਗੜਬੜ ਕਾਰਨ <ph name="FILE_NAME" /> ਡਾਊਨਲੋਡ ਅਸਫ਼ਲ ਰਿਹਾ।</translation> <translation id="605721222689873409">YY</translation> <translation id="6059830886158432458">ਆਪਣੀਆਂ ਕਹਾਣੀਆਂ ਅਤੇ ਸਰਗਰਮੀ ਨੂੰ ਇੱਥੇ ਕੰਟਰੋਲ ਕਰੋ</translation> -<translation id="6069177176307973611">ਪਰਦੇਦਾਰੀ ਅਤੇ ਸੁਰੱਖਿਆ ਸੈਟਿੰਗਾਂ ਦੀ ਸਮੀਖਿਆ ਕਰੋ</translation> <translation id="6070730414166672373">ਤੁਹਾਡੇ ਬੈਂਕ ਨਾਲ ਸੰਪਰਕ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ\u2026</translation> <translation id="6085886413119427067">ਨਿਰਧਾਰਤ ਕਰਦਾ ਹੈ ਕਿ ਕਿਸੇ ਸੁਰੱਖਿਅਤ ਕਨੈਕਸ਼ਨ 'ਤੇ ਵੈੱਬਸਾਈਟਾਂ ਨੂੰ ਕਿਵੇਂ ਕਨੈਕਟ ਕਰਨਾ ਹੈ</translation> <translation id="6091413777268123602">ਪ੍ਰਾਈਵੇਸੀ ਸੈਂਡਬਾਕਸ ਪਰਖਾਂ ਨਾਲ, ਸਾਈਟਾਂ ਤੁਹਾਡੇ ਡਾਟੇ ਦੀ ਘੱਟ ਵਰਤੋਂ ਕਰ ਕੇ ਉਹੀ ਬ੍ਰਾਊਜ਼ਿੰਗ ਅਨੁਭਵ ਪ੍ਰਦਾਨ ਕਰ ਸਕਦੀਆਂ ਹਨ। ਇਸਦਾ ਮਤਲਬ ਹੈ ਤੁਹਾਡੇ ਲਈ ਜ਼ਿਆਦਾ ਪਰਦੇਦਾਰੀ ਅਤੇ ਘੱਟ ਕ੍ਰਾਸ-ਸਾਈਟ ਟਰੈਕਿੰਗ। ਅਸੀਂ ਨਵੀਆਂ ਪਰਖਾਂ ਸ਼ਾਮਲ ਕਰਾਂਗੇ ਕਿਉਂਕਿ ਉਹ ਜਾਂਚ ਲਈ ਤਿਆਰ ਹਨ।</translation> @@ -1040,6 +1036,7 @@ <translation id="6641780377503683465"><ph name="INTEREST" /> ਨੂੰ ਹਟਾਓ</translation> <translation id="6643016212128521049">ਹਟਾਓ</translation> <translation id="6645629752388991326">ਇਹ ਕੰਟਰੋਲ ਕਰੋ ਕਿ ਇਸ ਡੀਵਾਈਸ ਨੂੰ ਸੁਰੱਖਿਆ ਕੁੰਜੀ ਵਜੋਂ ਵਰਤ ਕੇ ਕਿਹੜੇ ਡੀਵਾਈਸ ਸਾਈਨ-ਇਨ ਕਰ ਸਕਦੇ ਹਨ।</translation> +<translation id="6647441008198474441">ਤੁਹਾਡੇ ਵੱਲੋਂ ਖੋਲ੍ਹੇ ਜਾਣ ਵਾਲੇ URL Google ਨੂੰ ਇਹ ਪੂਰਵ-ਅਨੁਮਾਨ ਲਗਾਉਣ ਲਈ ਭੇਜੇ ਜਾਂਦੇ ਹਨ ਕਿ ਤੁਸੀਂ ਅਗਲੀਆਂ ਕਿਹੜੀਆਂ ਸਾਈਟਾਂ 'ਤੇ ਜਾਉਗੇ</translation> <translation id="6648459603387803038">ਤੁਹਾਡਾ ਪ੍ਰਸ਼ਾਸਕ ਦੂਰ-ਦੁਰਾਡੇ ਤੋਂ ਤੁਹਾਡੇ ਬ੍ਰਾਊਜ਼ਰ ਸੈੱਟਅੱਪ ਨੂੰ ਬਦਲ ਸਕਦਾ ਹੈ। ਇਸ ਡੀਵਾਈਸ ਦੀ ਸਰਗਰਮੀ ਦਾ ਪ੍ਰਬੰਧਨ Chrome ਤੋਂ ਬਾਹਰ ਵੀ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ।</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 ਅਤੇ <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> ਹੋਰ}one{<ph name="CONTACT_PREVIEW" />\u2026 ਅਤੇ <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> ਹੋਰ}other{<ph name="CONTACT_PREVIEW" />\u2026 ਅਤੇ <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> ਹੋਰ}}</translation> <translation id="6649642165559792194">ਚਿੱਤਰ ਦੀ ਪੂਰਵ-ਝਲਕ ਦੇਖੋ <ph name="BEGIN_NEW" />ਨਵੀਂ<ph name="END_NEW" /></translation> @@ -1047,7 +1044,6 @@ <translation id="6659594942844771486">ਟੈਬ</translation> <translation id="666731172850799929"><ph name="APP_NAME" /> ਵਿੱਚ ਖੋਲ੍ਹੋ</translation> <translation id="6671495933530132209">ਚਿੱਤਰ ਕਾਪੀ ਕਰੋ</translation> -<translation id="6674044799624355221">ਨਵੇਂ ਖਤਰਿਆਂ ਨੂੰ ਖੋਜਣ ਵਿੱਚ ਮਦਦ ਲਈ ਪੰਨਿਆਂ, ਡਾਊਨਲੋਡਾਂ, ਐਕਸਟੈਂਸ਼ਨ ਸਰਗਰਮੀ ਅਤੇ ਸਿਸਟਮ ਜਾਣਕਾਰੀ ਦਾ ਇੱਕ ਛੋਟਾ ਨਮੂਨਾ ਵੀ ਭੇਜਦਾ ਹੈ</translation> <translation id="6674571176963658787">ਸਿੰਕ ਸ਼ੁਰੂ ਕਰਨ ਲਈ, ਆਪਣਾ ਪਾਸਫਰੇਜ਼ ਦਾਖਲ ਕਰੋ</translation> <translation id="6676840375528380067">ਕੀ ਇਸ ਡੀਵਾਈਸ ਤੋਂ ਤੁਹਾਡਾ Chrome ਡਾਟਾ ਕਲੀਅਰ ਕਰਨਾ ਹੈ?</translation> <translation id="6684809838922667136">Chrome ਨੂੰ ਬਿਹਤਰ ਬਣਾਓ</translation> @@ -1069,7 +1065,6 @@ <translation id="6802555630140434547">ਵਿੰਡੋ ਨੂੰ ਬੰਦ ਕਰ ਦਿੱਤਾ ਜਾਵੇਗਾ</translation> <translation id="6811034713472274749">ਦੇਖਣ ਲਈ ਪੰਨਾ ਤਿਆਰ ਹੈ</translation> <translation id="6813446258015311409">Chrome ਵਿੱਚ ਸਾਈਨ-ਇਨ ਕਰੋ, ਖੋਲ੍ਹਿਆ ਗਿਆ।</translation> -<translation id="6814033694018386318">ਤੁਸੀਂ Google ਨਾਲ ਕੀ ਸਾਂਝਾ ਕਰਦੇ ਹੋ</translation> <translation id="6817747507826986771">ਇਸ ਪੰਨੇ ਨੂੰ ਤੁਰੰਤ ਸਾਂਝਾ ਕਰੋ। ਇਸ ਸ਼ਾਰਟਕੱਟ ਦਾ ਸੰਪਾਦਨ ਕਰਨ ਲਈ, ਸਪਰਸ਼ ਕਰਕੇ ਰੱਖੋ।</translation> <translation id="6819199143469632133">ਸਾਰੇ ਡੀਵਾਈਸਾਂ 'ਤੇ ਆਪਣੀ Google ਸਮੱਗਰੀ ਪ੍ਰਾਪਤ ਕਰਨ ਲਈ, ਸਾਈਨ-ਇਨ ਕਰੋ</translation> <translation id="6820686453637990663">CVC</translation> @@ -1164,6 +1159,7 @@ <translation id="7352939065658542140">ਵੀਡੀਓ</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{1 ਚੁਣੀ ਗਈ ਆਈਟਮ ਸਾਂਝੀ ਕਰੋ}one{# ਚੁਣੀਆਂ ਗਈਆਂ ਆਈਟਮਾਂ ਸਾਂਝੀਆਂ ਕਰੋ}other{# ਚੁਣੀਆਂ ਗਈਆਂ ਆਈਟਮਾਂ ਸਾਂਝੀਆਂ ਕਰੋ}}</translation> <translation id="7359002509206457351">ਭੁਗਤਾਨ ਵਿਧੀਆਂ ਤੱਕ ਪਹੁੰਚ</translation> +<translation id="7363349185727752629">ਤੁਹਾਡੀ ਪਰਦੇਦਾਰੀ ਵਿਕਲਪਾਂ ਦੀ ਗਾਈਡ</translation> <translation id="7375125077091615385">ਪ੍ਰਕਾਰ:</translation> <translation id="7376560087009844242">ਕਿਸੇ ਪੰਨੇ ਦੀ ਹੋਰ ਲਿਖਤ ਨੂੰ ਸ਼ਾਮਲ ਕਰਨ ਨਾਲ, 'ਖੋਜਣ ਲਈ ਸਪਰਸ਼ ਕਰੋ' ਵਰਤਣ ਵੇਲੇ ਸ਼ਾਇਦ ਤੁਹਾਨੂੰ ਬਿਹਤਰ ਨਤੀਜੇ ਦਿਖਾਈ ਦੇਣ। ਤੁਸੀਂ ਇਸਨੂੰ ਬਦਲਣ ਲਈ ਕਦੇ ਵੀ <ph name="BEGIN_LINK" />ਸੈਟਿੰਗਾਂ<ph name="END_LINK" /> 'ਤੇ ਜਾ ਸਕਦੇ ਹੋ।</translation> <translation id="7379900596734708416">ਸਾਈਟਾਂ ਲਈ ਗੂੜ੍ਹਾ ਥੀਮ ਉਪਲਬਧ ਹੈ</translation> @@ -1263,6 +1259,7 @@ <translation id="7876243839304621966">ਸਾਰੇ ਹਟਾਓ</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{ਤੁਹਾਡੇ ਕੋਲ <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> ਨਾ-ਪੜ੍ਹਿਆ ਪੰਨਾ ਹੈ}one{ਤੁਹਾਡੇ ਕੋਲ <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> ਨਾ-ਪੜ੍ਹਿਆ ਪੰਨਾ ਹੈ}other{ਤੁਹਾਡੇ ਕੋਲ <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> ਨਾ-ਪੜ੍ਹੇ ਪੰਨੇ ਹਨ}}</translation> <translation id="7886917304091689118">Chrome ਵਿੱਚ ਦਿਖਾਇਆ ਜਾ ਰਿਹਾ ਹੈ</translation> +<translation id="7887174313503389866">ਪ੍ਰਮੁੱਖ ਪਰਦੇਦਾਰੀ ਅਤੇ ਸੁਰੱਖਿਆ ਕੰਟਰੋਲਾਂ 'ਤੇ ਨਿਰਦੇਸ਼ਿਤ ਟੂਰ ਦੇਖੋ। ਹੋਰ ਵਿਕਲਪਾਂ ਲਈ, ਵਿਅਕਤੀਗਤ ਸੈਟਿੰਗਾਂ 'ਤੇ ਜਾਓ।</translation> <translation id="7887334752153342268">ਡੁਪਲੀਕੇਟ</translation> <translation id="789763218334337857">Chrome ਨੂੰ ਵਰਤਣ ਦਾ ਤਰੀਕਾ</translation> <translation id="7903184275147100332">ਇਸ ਵਿੱਚ ਕੁਝ ਸਮਾਂ ਲੱਗ ਸਕਦਾ ਹੈ</translation> @@ -1376,6 +1373,7 @@ <translation id="8445448999790540984">ਪਾਸਵਰਡ ਨਿਰਯਾਤ ਨਹੀਂ ਕੀਤੇ ਜਾ ਸਕਦੇ</translation> <translation id="8446884382197647889">ਹੋਰ ਜਾਣੋ</translation> <translation id="8453310803815879010">Dino ਗੇਮ ਸ਼ੁਰੂ ਕਰੋ</translation> +<translation id="8460448946170646641">ਪ੍ਰਮੁੱਖ ਪਰਦੇਦਾਰੀ ਅਤੇ ਸੁਰੱਖਿਆ ਕੰਟਰੋਲਾਂ ਦੀ ਸਮੀਖਿਆ ਕਰੋ</translation> <translation id="8461694314515752532">ਆਪਣੇ ਖੁਦ ਦੇ ਸਿੰਕ ਪਾਸਫਰੇਜ਼ ਨਾਲ ਸਿੰਕ ਕੀਤੇ ਡਾਟੇ ਨੂੰ ਇਨਕ੍ਰਿਪਟ ਕਰੋ</translation> <translation id="8466613982764129868">ਪੱਕਾ ਕਰੋ ਕਿ <ph name="TARGET_DEVICE_NAME" /> ਇੰਟਰਨੈੱਟ ਨਾਲ ਕਨੈਕਟ ਹੋਵੇ</translation> <translation id="8473863474539038330">ਪਤੇ ਅਤੇ ਹੋਰ</translation> @@ -1421,6 +1419,7 @@ <translation id="8636825310635137004">ਆਪਣੀਆਂ ਹੋਰ ਡੀਵਾਈਸਾਂ ਤੋਂ ਆਪਣੀਆਂ ਟੈਬਾਂ ਨੂੰ ਪ੍ਰਾਪਤ ਕਰਨ ਲਈ, ਸਿੰਕ ਚਾਲੂ ਕਰੋ।</translation> <translation id="8641930654639604085">ਬਾਲਗ ਸਾਈਟਾਂ ਨੂੰ ਬਲੌਕ ਕਰਨ ਦੀ ਕੋਸ਼ਿਸ਼ ਕਰੋ</translation> <translation id="864544049772947936">ਵਿੰਡੋਆਂ ਦਾ ਪ੍ਰਬੰਧਨ ਕਰੋ (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">ਖਤਰਨਾਕ ਘਟਨਾਵਾਂ ਦਾ ਪਤਾ ਕਰਕੇ ਉਹਨਾਂ ਦੇ ਵਾਪਰਨ ਤੋਂ ਪਹਿਲਾਂ ਤੁਹਾਨੂੰ ਚਿਤਾਵਨੀ ਦਿੱਤੀ ਜਾਂਦੀ ਹੈ</translation> <translation id="8646467750715887511">ਪੰਨੇ ਤੁਹਾਡੇ ਵੱਲੋਂ ਖੋਲ੍ਹਣ ਤੋਂ ਬਾਅਦ ਹੀ ਲੋਡ ਹੁੰਦੇ ਹਨ।</translation> <translation id="8655129584991699539">ਤੁਸੀਂ ਡਾਟੇ ਨੂੰ Chrome ਸੈਟਿੰਗਾਂ ਵਿੱਚ ਕਲੀਅਰ ਕਰ ਸਕਦੇ ਹੋ</translation> <translation id="8659579665266920523">Chrome ਨਾਲ ਖੋਜਣ ਦਾ ਤਰੀਕਾ</translation> @@ -1433,7 +1432,6 @@ <translation id="867767487203716855">ਅਗਲਾ ਅੱਪਡੇਟ</translation> <translation id="8683039184091909753">ਚਿੱਤਰ</translation> <translation id="8683081248374354009">ਗਰੁੱਪ ਰੀਸੈੱਟ ਕਰੋ</translation> -<translation id="8683526617475118045">ਤੁਹਾਨੂੰ ਇਹ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਮਿਲਣਗੀਆਂ</translation> <translation id="869891660844655955">ਮਿਆਦ ਪੁੱਗਣ ਦੀ ਤਾਰੀਖ</translation> <translation id="8699120352855309748">ਇਹਨਾਂ ਭਾਸ਼ਾਵਾਂ ਦਾ ਅਨੁਵਾਦ ਕਰਨ ਦੀ ਪੇਸ਼ਕਸ਼ ਨਾ ਕਰੋ</translation> <translation id="8712637175834984815">ਸਮਝ ਲਿਆ</translation> @@ -1517,7 +1515,6 @@ <translation id="9148126808321036104">ਦੁਬਾਰਾ ਸਾਈਨ-ਇਨ ਕਰੋ</translation> <translation id="9158770349521403363">ਸਿਰਫ਼ ਸਮੱਗਰੀ ਨੂੰ ਸਾਂਝਾ ਕਰੋ</translation> <translation id="9159716826369098114"><ph name="TAB_COUNT" /> ਟੈਬਾਂ ਦੇ ਟੈਬ ਗਰੁੱਪ ਨੂੰ ਨਵੇਂ ਬੈਕਗ੍ਰਾਊਂਡ ਟੈਬ ਗਰੁੱਪ ਵਜੋਂ ਮੁੜ-ਬਹਾਲ ਕਰੋ।</translation> -<translation id="916446198114569890">ਉਹ URL ਤੁਹਾਡੇ Google ਖਾਤੇ 'ਤੇ ਰੱਖਿਅਤ ਕੀਤੇ ਜਾਂਦੇ ਹਨ, ਜਿਨ੍ਹਾਂ 'ਤੇ ਤੁਸੀਂ ਗਏ ਹੋ</translation> <translation id="9169507124922466868">ਨੈਵੀਗੇਸ਼ਨ ਇਤਿਹਾਸ ਵਾਲੀ ਸ਼ੀਟ ਅੱਧੀ ਖੁੱਲ੍ਹੀ ਹੋਈ ਹੈ</translation> <translation id="9187955620966010988">ਪ੍ਰਤਿਕਿਰਿਆ ਵਿਵਸਥਿਤ ਕੀਤੀ ਗਈ</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{1 ਮਿੰਟ ਪਹਿਲਾਂ ਜਾਂਚ ਕੀਤੀ ਗਈ}one{# ਮਿੰਟ ਪਹਿਲਾਂ ਜਾਂਚ ਕੀਤੀ ਗਈ}other{# ਮਿੰਟ ਪਹਿਲਾਂ ਜਾਂਚ ਕੀਤੀ ਗਈ}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_pl.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_pl.xtb index ff95605..0988be4 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_pl.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_pl.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">Nie proponuj tłumaczenia tych witryn</translation> <translation id="1145536944570833626">Usuń istniejące dane.</translation> <translation id="1146678959555564648">Włącz tryb VR</translation> -<translation id="114825011539563458">Najważniejsze elementy sterujące prywatnością i zabezpieczeniami dostępne w 1 miejscu</translation> <translation id="1149401351239820326">Miesiąc utraty ważności</translation> <translation id="1150263420752757504">Aplikacja <ph name="APP_NAME" /> zostanie otwarta w Chrome. Przechodząc dalej, wyrażasz zgodę na <ph name="BEGIN_LINK1" />Warunki korzystania z usług Google<ph name="END_LINK1" /> oraz <ph name="BEGIN_LINK2" />Dodatkowe warunki korzystania z Google Chrome i Chrome OS<ph name="END_LINK2" />.</translation> <translation id="1154704303112745282">Strona niedostępna offline: <ph name="VIOLATED_URL" /></translation> @@ -170,6 +169,7 @@ <translation id="189358972401248634">Inne języki</translation> <translation id="1894023287452300670">Tutaj możesz monitorować cenę</translation> <translation id="1900260903084164610">Przechodząc dalej, akceptujesz <ph name="BEGIN_TOS_LINK" />Warunki korzystania z usługi<ph name="END_TOS_LINK" />.</translation> +<translation id="1904580727789512086">Odwiedzane adresy URL są zapisywane na Twoim koncie Google</translation> <translation id="1910950723001426294">Lista opcji udostępniania jest zamknięta.</translation> <translation id="1918175104945982129">Ekran wyrażenia zgody na wyszukiwanie głosowe z pomocą Asystenta został otwarty na połowę wysokości</translation> <translation id="1919130412786645364">Zezwalaj na logowanie się w Chrome</translation> @@ -194,7 +194,6 @@ <translation id="2000419248597011803">Niektóre pliki cookie oraz zapytania wpisane na pasku adresu i w polu wyszukiwania zostaną wysłane do domyślnej wyszukiwarki</translation> <translation id="200114059308480249">Uwzględniać tekst otaczający słowa, które wyszukujesz w Google?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# plik}few{# pliki}many{# plików}other{# pliku}}</translation> -<translation id="2020309681647789787">Będziesz mieć dostęp do swojej historii na wszystkich zsynchronizowanych urządzeniach, aby możliwe było kontynuowanie przerwanych działań</translation> <translation id="2021896219286479412">Elementy sterowania stroną na pełnym ekranie</translation> <translation id="2038563949887743358">Włącz opcję „Wersja na komputer”</translation> <translation id="204321170514947529">Dane aplikacji <ph name="APP_NAME" /> znajdują się też w Chrome</translation> @@ -280,7 +279,6 @@ <translation id="2527779675047087889">Ukryj zawartość schowka</translation> <translation id="2532336938189706096">Widok sieci</translation> <translation id="2534155362429831547">Usunięte elementy: <ph name="NUMBER_OF_ITEMS" /></translation> -<translation id="2534582914273493287">Odwiedzane adresy URL są wysyłane do Google.</translation> <translation id="2536728043171574184">Oglądasz kopię offline tej strony</translation> <translation id="2546283357679194313">Pliki cookie i dane stron</translation> <translation id="2549516196460093976">Za pomocą tego tabletu możesz zalogować się na komputerze, na którym wyświetlany jest ten kod QR.</translation> @@ -372,7 +370,6 @@ <translation id="2996291259634659425">Utwórz hasło</translation> <translation id="2996809686854298943">Wymagany adres URL</translation> <translation id="2997081575621687554">Gdy witryna Google prosi o prywatne wstępne wczytanie linków z jej stron, Chrome szyfruje i wstępnie wczytuje te strony przy użyciu serwerów Google, ale bez plików cookie. Pozwala to na ukrycie Twojej tożsamości przed wstępnie wczytywaną witryną.</translation> -<translation id="3003733539450769656">Ostrzega o niebezpiecznych zdarzeniach, zanim nastąpią</translation> <translation id="3006881078666935414">Brak danych o użytkowaniu</translation> <translation id="301080557829842765">Przewodnik po prywatności</translation> <translation id="3016635187733453316">Sprawdź, czy to urządzenie jest połączone z internetem</translation> @@ -432,6 +429,7 @@ <translation id="3284510035090979597">Aktywna pomoc</translation> <translation id="3285080554353377245">Filmy na temat korzystania z Chrome</translation> <translation id="3288003805934695103">Odśwież stronę</translation> +<translation id="3290249595466894471">Funkcja wysyła też małe próbki stron, pobieranych plików, aktywności rozszerzeń i informacji o systemie, żeby pomóc w wykrywaniu nowych zagrożeń.</translation> <translation id="3297344142967351106">Pomoc głosowa</translation> <translation id="3303414029551471755">Przejść do pobrania treści?</translation> <translation id="3334729583274622784">Zmienić rozszerzenie pliku?</translation> @@ -637,7 +635,6 @@ <translation id="4558311620361989323">Skróty stron internetowych</translation> <translation id="4561730552726921821">Rejestracja się udała</translation> <translation id="4561979708150884304">Brak połączenia</translation> -<translation id="4562008740775511591">Przeglądarka Chrome ma rozsądne ustawienia domyślne, ale możesz dostosować ją do swoich potrzeb</translation> <translation id="4565377596337484307">Ukryj hasło</translation> <translation id="4572422548854449519">Zaloguj się na konto zarządzane</translation> <translation id="4576892426230499203">Spróbuj innego sposobu potwierdzania tożsamości</translation> @@ -919,7 +916,6 @@ <translation id="604996488070107836">Nie udało się pobrać pliku <ph name="FILE_NAME" /> z powodu nieznanego błędu.</translation> <translation id="605721222689873409">RR</translation> <translation id="6059830886158432458">Tutaj możesz zarządzać wyświetlanymi wiadomościami i aktywnością</translation> -<translation id="6069177176307973611">Przejrzyj ustawienia prywatności i zabezpieczeń</translation> <translation id="6070730414166672373">Kontaktuję się z bankiem\u2026</translation> <translation id="6085886413119427067">Określa, jak nawiązywać połączenia ze stronami przez zabezpieczone połączenie</translation> <translation id="6091413777268123602">W ramach wersji próbnych Piaskownicy prywatności witryny mogą zapewniać użytkownikom taką samą wygodę przeglądania treści przy wykorzystaniu mniejszej ilości danych. Oznacza to większą prywatność i mniej śledzenia w witrynach. Dodamy nowe wersje próbne, gdy tylko będą gotowe do przetestowania.</translation> @@ -1040,6 +1036,7 @@ <translation id="6641780377503683465">Usuń: <ph name="INTEREST" /></translation> <translation id="6643016212128521049">Wyczyść</translation> <translation id="6645629752388991326">Kontroluj, za pomocą których urządzeń można się logować, używając tego urządzenia jako klucza bezpieczeństwa.</translation> +<translation id="6647441008198474441">Odwiedzane adresy URL są wysyłane do Google w celu prognozowania, jakie kolejne witryny możesz odwiedzić</translation> <translation id="6648459603387803038">Administrator może zdalnie zmienić konfigurację przeglądarki. Aktywność na tym urządzeniu może być zarządzana również poza Chrome.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 i jeszcze <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}few{<ph name="CONTACT_PREVIEW" />\u2026 i jeszcze <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}many{<ph name="CONTACT_PREVIEW" />\u2026 i jeszcze <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}other{<ph name="CONTACT_PREVIEW" />\u2026 i jeszcze <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}}</translation> <translation id="6649642165559792194">Wyświetl podgląd obrazu <ph name="BEGIN_NEW" />Nowość<ph name="END_NEW" /></translation> @@ -1047,7 +1044,6 @@ <translation id="6659594942844771486">Karta</translation> <translation id="666731172850799929">Otwórz w <ph name="APP_NAME" /></translation> <translation id="6671495933530132209">Kopiuj grafikę</translation> -<translation id="6674044799624355221">Wysyła małe próbki stron, pobieranych plików, aktywności rozszerzeń i informacji o systemie, aby pomóc w wykrywaniu nowych zagrożeń</translation> <translation id="6674571176963658787">Aby rozpocząć synchronizację, wpisz hasło</translation> <translation id="6676840375528380067">Usunąć dane Chrome z tego urządzenia?</translation> <translation id="6684809838922667136">Ulepsz Chrome</translation> @@ -1069,7 +1065,6 @@ <translation id="6802555630140434547">Okno zostanie zamknięte</translation> <translation id="6811034713472274749">Strona jest gotowa do wyświetlenia</translation> <translation id="6813446258015311409">Logowanie się w Chrome, otwarte.</translation> -<translation id="6814033694018386318">Co udostępniasz Google</translation> <translation id="6817747507826986771">Szybko udostępnij tę stronę. Aby edytować ten skrót, naciśnij i przytrzymaj.</translation> <translation id="6819199143469632133">Aby mieć dostęp do swoich treści w Google na różnych urządzeniach, zaloguj się</translation> <translation id="6820686453637990663">Kod CVC</translation> @@ -1164,6 +1159,7 @@ <translation id="7352939065658542140">FILM</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{Udostępnij 1 wybrany element}few{Udostępnij # wybrane elementy}many{Udostępnij # wybranych elementów}other{Udostępnij # wybranego elementu}}</translation> <translation id="7359002509206457351">Dostęp do form płatności</translation> +<translation id="7363349185727752629">Przewodnik po wyborach dotyczących prywatności</translation> <translation id="7375125077091615385">Typ:</translation> <translation id="7376560087009844242">Jeśli podczas korzystania z funkcji Dotknij, by wyszukać dołączysz więcej tekstu ze strony, możesz zobaczyć lepsze wyniki. Zawsze możesz to zmienić w <ph name="BEGIN_LINK" />ustawieniach<ph name="END_LINK" />.</translation> <translation id="7379900596734708416">Dostępny jest ciemny motyw dla witryn</translation> @@ -1263,6 +1259,7 @@ <translation id="7876243839304621966">Usuń wszystkie</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{Masz <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> nieprzeczytaną stronę}few{Masz <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> nieprzeczytane strony}many{Masz <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> nieprzeczytanych stron}other{Masz <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> nieprzeczytanej strony}}</translation> <translation id="7886917304091689118">Otwarta w Chrome</translation> +<translation id="7887174313503389866">Zapoznaj się z prezentacją najważniejszych funkcji prywatności i bezpieczeństwa. Więcej opcji znajdziesz w poszczególnych ustawieniach.</translation> <translation id="7887334752153342268">Duplikuj</translation> <translation id="789763218334337857">Korzystanie z Chrome</translation> <translation id="7903184275147100332">To może chwilę potrwać</translation> @@ -1376,6 +1373,7 @@ <translation id="8445448999790540984">Nie można wyeksportować haseł</translation> <translation id="8446884382197647889">Więcej informacji</translation> <translation id="8453310803815879010">Rozpocznij grę z dinozaurem</translation> +<translation id="8460448946170646641">Zapoznaj się z najważniejszymi funkcjami prywatności i bezpieczeństwa</translation> <translation id="8461694314515752532">Szyfruj synchronizowane dane własnym hasłem synchronizacji</translation> <translation id="8466613982764129868">Sprawdź, czy <ph name="TARGET_DEVICE_NAME" /> ma połączenie z internetem</translation> <translation id="8473863474539038330">Adresy i ustawienia</translation> @@ -1421,6 +1419,7 @@ <translation id="8636825310635137004">Aby korzystać z kart ze swoich innych urządzeń, włącz synchronizację</translation> <translation id="8641930654639604085">Próbuj blokować strony dla dorosłych</translation> <translation id="864544049772947936">Zarządzaj oknami (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">Przewiduje niebezpieczne zdarzenia i ostrzega Cię przed nimi, zanim nastąpią</translation> <translation id="8646467750715887511">Strony wczytują się po otwarciu.</translation> <translation id="8655129584991699539">Dane możesz usunąć w Ustawieniach Chrome</translation> <translation id="8659579665266920523">Wyszukiwanie w Chrome</translation> @@ -1433,7 +1432,6 @@ <translation id="867767487203716855">Następna aktualizacja</translation> <translation id="8683039184091909753">obraz</translation> <translation id="8683081248374354009">Resetuj grupę</translation> -<translation id="8683526617475118045">Co zyskujesz</translation> <translation id="869891660844655955">Data wygaśnięcia</translation> <translation id="8699120352855309748">Nie proponuj tłumaczenia tych języków</translation> <translation id="8712637175834984815">Rozumiem</translation> @@ -1517,7 +1515,6 @@ <translation id="9148126808321036104">Zaloguj się ponownie</translation> <translation id="9158770349521403363">Udostępnij tylko treść</translation> <translation id="9159716826369098114">Przywróć grupę <ph name="TAB_COUNT" /> kart jako nową grupę kart w tle.</translation> -<translation id="916446198114569890">Odwiedzane adresy URL są zapisywane na Twoim koncie Google</translation> <translation id="9169507124922466868">Historia nawigacji jest otwarta w połowie</translation> <translation id="9187955620966010988">Reakcja została dostosowana</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{Sprawdzano minutę temu}few{Sprawdzano # minuty temu}many{Sprawdzano # minut temu}other{Sprawdzano # minuty temu}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_pt-BR.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_pt-BR.xtb index 6d0ba30..18e7435 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_pt-BR.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_pt-BR.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">Não oferecer a opção de traduzir estes sites</translation> <translation id="1145536944570833626">Excluir os dados atuais.</translation> <translation id="1146678959555564648">Entrar na RV</translation> -<translation id="114825011539563458">Todos os controles de privacidade e segurança mais importantes em um só lugar</translation> <translation id="1149401351239820326">Mês de expiração</translation> <translation id="1150263420752757504">O app <ph name="APP_NAME" /> será aberto no Chrome. Ao continuar, você concorda com os <ph name="BEGIN_LINK1" />Termos de Serviço do Google<ph name="END_LINK1" /> e os <ph name="BEGIN_LINK2" />Termos de Serviço adicionais do Google Chrome e do ChromeOS<ph name="END_LINK2" />.</translation> <translation id="1154704303112745282">Página indisponível off-line: <ph name="VIOLATED_URL" /></translation> @@ -170,6 +169,7 @@ <translation id="189358972401248634">Outros idiomas</translation> <translation id="1894023287452300670">Monitore o preço aqui</translation> <translation id="1900260903084164610">Ao continuar, você concorda com os <ph name="BEGIN_TOS_LINK" />Termos de Serviço<ph name="END_TOS_LINK" />.</translation> +<translation id="1904580727789512086">Os URLs que você acessa ficam armazenados na sua Conta do Google</translation> <translation id="1910950723001426294">A lista de opções de compartilhamento está fechada.</translation> <translation id="1918175104945982129">IU de consentimento para a pesquisa por voz do Assistente aberta na metade da altura</translation> <translation id="1919130412786645364">Permitir login no Chrome</translation> @@ -194,7 +194,6 @@ <translation id="2000419248597011803">Envia alguns cookies e pesquisas da barra de endereço e da caixa de pesquisa para seu mecanismo de pesquisa padrão.</translation> <translation id="200114059308480249">Incluir o texto ao redor nas pesquisas do Google?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# arquivo}one{# arquivo}other{# arquivos}}</translation> -<translation id="2020309681647789787">Seu histórico será mostrado em todos os dispositivos sincronizados para que você possa continuar o que estava fazendo</translation> <translation id="2021896219286479412">Controles de site em tela cheia</translation> <translation id="2038563949887743358">Ativar "Ver versão para computador"</translation> <translation id="204321170514947529">O app <ph name="APP_NAME" /> também tem dados no Chrome</translation> @@ -280,7 +279,6 @@ <translation id="2527779675047087889">Ocultar conteúdo da área de transferência</translation> <translation id="2532336938189706096">Visualização na Web</translation> <translation id="2534155362429831547">Itens excluídos: <ph name="NUMBER_OF_ITEMS" /></translation> -<translation id="2534582914273493287">Os URLs que você acessa são enviados ao Google</translation> <translation id="2536728043171574184">Vendo uma cópia off-line desta página</translation> <translation id="2546283357679194313">Cookies e dados do site</translation> <translation id="2549516196460093976">Você pode usar o tablet para fazer login no computador que está mostrando o código QR.</translation> @@ -372,7 +370,6 @@ <translation id="2996291259634659425">Criar senha longa</translation> <translation id="2996809686854298943">O URL é obrigatório</translation> <translation id="2997081575621687554">Quando um site do Google pede para pré-carregar links anonimamente, o Chrome criptografa e pré-carrega as páginas pelos servidores do Google sem cookies. Isso oculta sua identidade do site pré-carregado.</translation> -<translation id="3003733539450769656">Avisa sobre eventos perigosos antes que eles aconteçam</translation> <translation id="3006881078666935414">Nenhum dado de uso</translation> <translation id="301080557829842765">Guia de privacidade</translation> <translation id="3016635187733453316">Verifique se o dispositivo está conectado à Internet</translation> @@ -432,6 +429,7 @@ <translation id="3284510035090979597">Ajuda proativa</translation> <translation id="3285080554353377245">Vídeos sobre como usar o Chrome</translation> <translation id="3288003805934695103">Atualizar a página</translation> +<translation id="3290249595466894471">Envia também uma pequena amostra de páginas, downloads, atividades de extensões e informações do sistema para ajudar a descobrir novas ameaças</translation> <translation id="3297344142967351106">Assistente por voz</translation> <translation id="3303414029551471755">Continuar com o download do conteúdo?</translation> <translation id="3334729583274622784">Mudar extensão do arquivo?</translation> @@ -638,7 +636,6 @@ <translation id="4558311620361989323">Atalhos de páginas da Web</translation> <translation id="4561730552726921821">Registro concluído</translation> <translation id="4561979708150884304">Sem conexão</translation> -<translation id="4562008740775511591">O Chrome tem configurações padrão razoáveis, mas você pode personalizá-las de acordo com seus hábitos de navegação</translation> <translation id="4565377596337484307">Ocultar senha</translation> <translation id="4572422548854449519">Fazer login em conta gerenciada</translation> <translation id="4576892426230499203">Tente outra opção de verificação</translation> @@ -920,7 +917,6 @@ <translation id="604996488070107836">Falha no download do arquivo <ph name="FILE_NAME" /> devido a um erro desconhecido.</translation> <translation id="605721222689873409">AA</translation> <translation id="6059830886158432458">Controle suas matérias e atividade aqui</translation> -<translation id="6069177176307973611">Revisar configurações de privacidade e segurança</translation> <translation id="6070730414166672373">Entrando em contato com o banco\u2026</translation> <translation id="6085886413119427067">Determina como se conectar a sites por uma conexão segura</translation> <translation id="6091413777268123602">Com testes do Sandbox de privacidade, os sites podem oferecer a mesma experiência de navegação usando menos dados pessoais. Isso significa mais privacidade para você e menos rastreamento entre sites. Vamos adicionar novos testes assim que estiverem prontos.</translation> @@ -1041,6 +1037,7 @@ <translation id="6641780377503683465">Remover <ph name="INTEREST" /></translation> <translation id="6643016212128521049">Limpar</translation> <translation id="6645629752388991326">Usar este dispositivo como uma chave de segurança para controlar quais dispositivos podem fazer login.</translation> +<translation id="6647441008198474441">Os URLs que você acessa são enviados ao Google para prever quais sites podem ser do seu interesse</translation> <translation id="6648459603387803038">O administrador pode mudar as configurações do navegador remotamente. A atividade deste dispositivo também pode ser gerenciada fora do Chrome.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 e mais <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}one{<ph name="CONTACT_PREVIEW" />\u2026 e mais <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}other{<ph name="CONTACT_PREVIEW" />\u2026 e mais <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}}</translation> <translation id="6649642165559792194">Visualizar imagem <ph name="BEGIN_NEW" />Novidade<ph name="END_NEW" /></translation> @@ -1048,7 +1045,6 @@ <translation id="6659594942844771486">Guia</translation> <translation id="666731172850799929">Abrir no <ph name="APP_NAME" /></translation> <translation id="6671495933530132209">Copiar imagem</translation> -<translation id="6674044799624355221">Envia uma pequena amostra de páginas, downloads, atividades de extensões e informações do sistema para ajudar a descobrir novas ameaças</translation> <translation id="6674571176963658787">Para iniciar a sincronização, digite a senha longa</translation> <translation id="6676840375528380067">Limpar seus dados do Chrome deste dispositivo?</translation> <translation id="6684809838922667136">Melhorar o Chrome</translation> @@ -1070,7 +1066,6 @@ <translation id="6802555630140434547">A janela será fechada</translation> <translation id="6811034713472274749">A página já pode ser visualizada</translation> <translation id="6813446258015311409">Fazer login no Chrome, aberta.</translation> -<translation id="6814033694018386318">O que você compartilha com o Google</translation> <translation id="6817747507826986771">Compartilhar esta página rapidamente. Para editar este atalho, toque e mantenha pressionado.</translation> <translation id="6819199143469632133">Para ver o conteúdo do Google nos seus dispositivos, faça login</translation> <translation id="6820686453637990663">CVC</translation> @@ -1165,6 +1160,7 @@ <translation id="7352939065658542140">VÍDEO</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{Compartilhar 1 item selecionado}one{Compartilhar # item selecionado}other{Compartilhar # itens selecionados}}</translation> <translation id="7359002509206457351">Acessar formas de pagamento</translation> +<translation id="7363349185727752629">Um guia das suas escolhas de privacidade</translation> <translation id="7375125077091615385">Tipo:</translation> <translation id="7376560087009844242">Ao incluir mais texto de uma página, você poderá ver resultados melhores ao usar a Pesquisa por toque. Você pode mudar essa opção nas <ph name="BEGIN_LINK" />configurações<ph name="END_LINK" /> quando quiser.</translation> <translation id="7379900596734708416">O tema escuro para sites está disponível</translation> @@ -1264,6 +1260,7 @@ <translation id="7876243839304621966">Remover tudo</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{Você tem <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> página não lida}one{Você tem <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> página não lida}other{Você tem <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> páginas não lidas}}</translation> <translation id="7886917304091689118">Executando no Chrome</translation> +<translation id="7887174313503389866">Faça um tour guiado sobre os principais controles de privacidade e segurança. Para ver mais opções, acesse as configurações individuais.</translation> <translation id="7887334752153342268">Duplicar</translation> <translation id="789763218334337857">Como usar o Google Chrome</translation> <translation id="7903184275147100332">Isso pode demorar um pouco</translation> @@ -1377,6 +1374,7 @@ <translation id="8445448999790540984">Não é possível exportar senhas</translation> <translation id="8446884382197647889">Saiba mais</translation> <translation id="8453310803815879010">Iniciar jogo do dinossauro</translation> +<translation id="8460448946170646641">Revise os principais controles de privacidade e segurança</translation> <translation id="8461694314515752532">Criptografar dados sincronizados com sua própria senha longa de sincronização</translation> <translation id="8466613982764129868">Verifique se o <ph name="TARGET_DEVICE_NAME" /> está conectado à Internet</translation> <translation id="8473863474539038330">Endereços e mais</translation> @@ -1422,6 +1420,7 @@ <translation id="8636825310635137004">Para ver suas guias abertas em outros dispositivos, ative a sincronização.</translation> <translation id="8641930654639604085">Tentar bloquear sites com conteúdo para adultos</translation> <translation id="864544049772947936">Gerenciar janelas (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">Prevê eventos perigosos e alerta você antes que eles aconteçam</translation> <translation id="8646467750715887511">As páginas carregam apenas depois de abertas.</translation> <translation id="8655129584991699539">É possível limpar os dados nas configurações do Chrome</translation> <translation id="8659579665266920523">Como pesquisar com o Chrome</translation> @@ -1434,7 +1433,6 @@ <translation id="867767487203716855">Próxima atualização</translation> <translation id="8683039184091909753">imagem</translation> <translation id="8683081248374354009">Redefinir grupo</translation> -<translation id="8683526617475118045">Quais são as vantagens</translation> <translation id="869891660844655955">Validade</translation> <translation id="8699120352855309748">Não oferecer a opção de traduzir estes idiomas</translation> <translation id="8712637175834984815">Entendi</translation> @@ -1518,7 +1516,6 @@ <translation id="9148126808321036104">Faça login novamente</translation> <translation id="9158770349521403363">Compartilhar apenas o conteúdo</translation> <translation id="9159716826369098114">Restaurar grupo de <ph name="TAB_COUNT" /> guias como um novo grupo de guias em segundo plano.</translation> -<translation id="916446198114569890">Os URLs que você acessa ficam armazenados na sua Conta do Google</translation> <translation id="9169507124922466868">Histórico de navegação parcialmente aberto</translation> <translation id="9187955620966010988">Reação ajustada</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{Verificado 1 minuto atrás}one{Verificado # minuto atrás}other{Verificado # minutos atrás}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_pt-PT.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_pt-PT.xtb index 4372757..b1a551f 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_pt-PT.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_pt-PT.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">Não se disponibilizar para traduzir estes sites</translation> <translation id="1145536944570833626">Eliminar dados existentes.</translation> <translation id="1146678959555564648">Entrar na RV</translation> -<translation id="114825011539563458">Os controlos de privacidade e segurança mais importantes num só lugar</translation> <translation id="1149401351239820326">Mês de expiração</translation> <translation id="1150263420752757504">A app <ph name="APP_NAME" /> vai abrir no Chrome. Ao continuar, aceita os <ph name="BEGIN_LINK1" />Termos de Utilização da Google<ph name="END_LINK1" /> e os <ph name="BEGIN_LINK2" />Termos de Utilização Adicionais do Google Chrome e ChromeOS<ph name="END_LINK2" />.</translation> <translation id="1154704303112745282">Página indisponível offline: <ph name="VIOLATED_URL" /></translation> @@ -170,6 +169,7 @@ <translation id="189358972401248634">Outros idiomas</translation> <translation id="1894023287452300670">Monitorize o preço aqui</translation> <translation id="1900260903084164610">Ao continuar, aceita os <ph name="BEGIN_TOS_LINK" />Termos de Utilização<ph name="END_TOS_LINK" />.</translation> +<translation id="1904580727789512086">Os URLs que visita são guardados na sua Conta Google</translation> <translation id="1910950723001426294">A lista de opções de partilha está fechada.</translation> <translation id="1918175104945982129">IU de consentimento da pesquisa por voz do Assistente aberta a meia altura</translation> <translation id="1919130412786645364">Permitir o início de sessão no Chrome</translation> @@ -194,7 +194,6 @@ <translation id="2000419248597011803">Envia alguns cookies e pesquisas da barra de endereço e da caixa de pesquisa para o motor de pesquisa predefinido.</translation> <translation id="200114059308480249">Pretende incluir o texto circundante nas pesquisas no Google?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# ficheiro}other{# ficheiros}}</translation> -<translation id="2020309681647789787">Terá o seu histórico em todos os dispositivos sincronizados para que possa continuar o que estava a fazer</translation> <translation id="2021896219286479412">Controlos de site em ecrã int.</translation> <translation id="2038563949887743358">Ativar Pedir site para computador</translation> <translation id="204321170514947529">A aplicação <ph name="APP_NAME" /> também tem dados no Chrome</translation> @@ -280,7 +279,6 @@ <translation id="2527779675047087889">Ocultar conteúdos de Copiar e colar</translation> <translation id="2532336938189706096">Visualização na Web</translation> <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> itens eliminados</translation> -<translation id="2534582914273493287">Os URLs que visita são enviados para a Google</translation> <translation id="2536728043171574184">Visualização de uma cópia offline desta página</translation> <translation id="2546283357679194313">Cookies e dados de Web sites</translation> <translation id="2549516196460093976">Pode utilizar este tablet para iniciar sessão no computador que está a apresentar este código QR.</translation> @@ -372,7 +370,6 @@ <translation id="2996291259634659425">Criar frase de acesso</translation> <translation id="2996809686854298943">URL obrigatório</translation> <translation id="2997081575621687554">Quando um site Google pede para pré-carregar links de forma privada na respetiva página, o Chrome encripta e pré-carrega as páginas através dos servidores da Google sem cookies. Isto oculta a sua identidade no site pré-carregado.</translation> -<translation id="3003733539450769656">Envia-lhe avisos sobre eventos perigosos antes da sua ocorrência</translation> <translation id="3006881078666935414">Sem dados de utilização</translation> <translation id="301080557829842765">Guia de privacidade</translation> <translation id="3016635187733453316">Certifique-se de que este dispositivo está ligado à Internet.</translation> @@ -432,6 +429,7 @@ <translation id="3284510035090979597">Ajuda proativa</translation> <translation id="3285080554353377245">Vídeos sobre como utilizar o Chrome</translation> <translation id="3288003805934695103">Atualizar a página</translation> +<translation id="3290249595466894471">Envia também um pequeno exemplo de páginas, transferências, atividade de extensões e informações do sistema para ajudar a detetar novas ameaças</translation> <translation id="3297344142967351106">Assistente de voz</translation> <translation id="3303414029551471755">Pretende transferir o conteúdo?</translation> <translation id="3334729583274622784">Pretende alterar a extensão de ficheiro?</translation> @@ -637,7 +635,6 @@ <translation id="4558311620361989323">Atalhos da página Web</translation> <translation id="4561730552726921821">Registo efetuado com êxito</translation> <translation id="4561979708150884304">Sem ligação</translation> -<translation id="4562008740775511591">O Chrome fornece predefinições razoáveis, mas pode personalizá-lo para se adequar melhor aos seus hábitos de navegação</translation> <translation id="4565377596337484307">Ocultar palavra-passe</translation> <translation id="4572422548854449519">Iniciar sessão na conta gerida</translation> <translation id="4576892426230499203">Experimente outra opção de validação</translation> @@ -919,7 +916,6 @@ <translation id="604996488070107836">A transferência de <ph name="FILE_NAME" /> falhou devido a um erro desconhecido.</translation> <translation id="605721222689873409">AA</translation> <translation id="6059830886158432458">Controle as suas notícias e atividade aqui.</translation> -<translation id="6069177176307973611">Verifique as definições de privacidade e segurança</translation> <translation id="6070730414166672373">A contactar o seu banco\u2026</translation> <translation id="6085886413119427067">Determina como associar a Websites através de uma ligação segura.</translation> <translation id="6091413777268123602">Com as avaliações da Privacy Sandbox, os sites podem fornecer a mesma experiência de navegação com uma menor utilização dos seus dados. Isso significa mais privacidade para si e menos monitorização entre sites. Iremos adicionar novas avaliações à medida que estiverem prontas para serem testadas.</translation> @@ -1040,6 +1036,7 @@ <translation id="6641780377503683465">Remover <ph name="INTEREST" /></translation> <translation id="6643016212128521049">Limpar</translation> <translation id="6645629752388991326">Controle que dispositivos podem iniciar sessão ao utilizar este dispositivo como chave de segurança.</translation> +<translation id="6647441008198474441">Os URLs que visitar são enviados para a Google para prever os sites que pode visitar a seguir</translation> <translation id="6648459603387803038">O administrador pode alterar a configuração do navegador remotamente. A atividade neste dispositivo também pode ser gerida fora do Chrome.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 e mais <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}other{<ph name="CONTACT_PREVIEW" />\u2026 e mais <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}}</translation> <translation id="6649642165559792194">Pré-visualizar imagem <ph name="BEGIN_NEW" />Novo<ph name="END_NEW" /></translation> @@ -1047,7 +1044,6 @@ <translation id="6659594942844771486">Separador</translation> <translation id="666731172850799929">Abrir no <ph name="APP_NAME" /></translation> <translation id="6671495933530132209">Copiar imagem</translation> -<translation id="6674044799624355221">Envia um pequeno exemplo de páginas, transferências, atividade de extensões e informações do sistema para ajudar a detetar novas ameaças</translation> <translation id="6674571176963658787">Para iniciar a sincronização, introduza a sua frase de acesso</translation> <translation id="6676840375528380067">Pretende limpar os dados do Chrome deste dispositivo?</translation> <translation id="6684809838922667136">Melhore o Chrome</translation> @@ -1069,7 +1065,6 @@ <translation id="6802555630140434547">A janela será fechada</translation> <translation id="6811034713472274749">A página está preparada para ser visualizada</translation> <translation id="6813446258015311409">Iniciar sessão no Chrome, aberto.</translation> -<translation id="6814033694018386318">O que partilha com a Google</translation> <translation id="6817747507826986771">Partilhe esta página rapidamente. Para editar este atalho, toque sem soltar.</translation> <translation id="6819199143469632133">Para obter o seu conteúdo Google em vários dispositivos, inicie sessão</translation> <translation id="6820686453637990663">Código de segurança</translation> @@ -1164,6 +1159,7 @@ <translation id="7352939065658542140">VÍDEO</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{Partilhar 1 item selecionado}other{Partilhar # itens selecionados}}</translation> <translation id="7359002509206457351">Aceder aos métodos de pagamento</translation> +<translation id="7363349185727752629">Um guia das suas escolhas de privacidade</translation> <translation id="7375125077091615385">Tipo:</translation> <translation id="7376560087009844242">Ao incluir mais texto de uma página, poderá ver melhores resultados quando utilizar a funcionalidade Tocar para pesquisar. Pode sempre visitar as <ph name="BEGIN_LINK" />definições<ph name="END_LINK" /> para alterar esta opção.</translation> <translation id="7379900596734708416">Está disponível o tema escuro para sites</translation> @@ -1263,6 +1259,7 @@ <translation id="7876243839304621966">Remover tudo</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{Tem <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> página não lida.}other{Tem <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> páginas não lidas.}}</translation> <translation id="7886917304091689118">Em execução no Chrome.</translation> +<translation id="7887174313503389866">Inicie uma visita guiada dos principais controlos de privacidade e segurança. Para obter mais opções, aceda às definições individuais.</translation> <translation id="7887334752153342268">Duplicar</translation> <translation id="789763218334337857">Como utilizar o Chrome</translation> <translation id="7903184275147100332">Pode demorar alguns minutos.</translation> @@ -1376,6 +1373,7 @@ <translation id="8445448999790540984">Não é possível exportar as palavras-passe</translation> <translation id="8446884382197647889">Saiba Mais</translation> <translation id="8453310803815879010">Inicie o jogo Dino</translation> +<translation id="8460448946170646641">Rever os principais controlos de privacidade e segurança</translation> <translation id="8461694314515752532">Encriptar dados sincronizados com a sua própria frase de acesso de sincronização</translation> <translation id="8466613982764129868">Certifique-se de que o <ph name="TARGET_DEVICE_NAME" /> está ligado à Internet.</translation> <translation id="8473863474539038330">Endereços e mais</translation> @@ -1421,6 +1419,7 @@ <translation id="8636825310635137004">Para obter os separadores dos seus outros dispositivos, ative a sincronização.</translation> <translation id="8641930654639604085">Tentar bloquear sites para adultos</translation> <translation id="864544049772947936">Gerir janelas (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">Prevê e envia-lhe avisos sobre eventos perigosos antes de ocorrerem.</translation> <translation id="8646467750715887511">As páginas só são carregadas depois de as abrir.</translation> <translation id="8655129584991699539">Pode limpar os dados nas Definições do Chrome.</translation> <translation id="8659579665266920523">Como pesquisar com o Chrome</translation> @@ -1433,7 +1432,6 @@ <translation id="867767487203716855">Próxima atualização</translation> <translation id="8683039184091909753">imagem</translation> <translation id="8683081248374354009">Repor grupo</translation> -<translation id="8683526617475118045">Vantagens</translation> <translation id="869891660844655955">Data de expiração</translation> <translation id="8699120352855309748">Não se disponibilizar para traduzir estes idiomas</translation> <translation id="8712637175834984815">Entendido</translation> @@ -1517,7 +1515,6 @@ <translation id="9148126808321036104">Iniciar sessão novamente</translation> <translation id="9158770349521403363">Apenas partilhar conteúdo</translation> <translation id="9159716826369098114">Restaure o grupo de <ph name="TAB_COUNT" /> separadores como um novo grupo de separadores em segundo plano.</translation> -<translation id="916446198114569890">Os URLs que visita são guardados na sua Conta Google</translation> <translation id="9169507124922466868">O histórico de navegação está aberto até meio.</translation> <translation id="9187955620966010988">Reação ajustada</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{Última verificação há 1 minuto}other{Última verificação há # minutos}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_ro.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_ro.xtb index 4b12fde..80489c5 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_ro.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_ro.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">Nu oferi traducerea acestor site-uri</translation> <translation id="1145536944570833626">Șterge datele existente.</translation> <translation id="1146678959555564648">Intră în RV</translation> -<translation id="114825011539563458">Cele mai importante opțiuni de confidențialitate și de securitate într-un singur loc</translation> <translation id="1149401351239820326">Luna expirării</translation> <translation id="1150263420752757504"><ph name="APP_NAME" /> se va deschide în Chrome. Dacă alegi să continui, ești de acord cu <ph name="BEGIN_LINK1" />Termenii și condițiile Google<ph name="END_LINK1" /> și cu <ph name="BEGIN_LINK2" />Termenii și condițiile suplimentare pentru Google Chrome și Sistemul de operare Chrome<ph name="END_LINK2" />.</translation> <translation id="1154704303112745282">Pagina nu este disponibilă offline: <ph name="VIOLATED_URL" /></translation> @@ -170,6 +169,7 @@ <translation id="189358972401248634">Alte limbi</translation> <translation id="1894023287452300670">Urmărește prețul aici</translation> <translation id="1900260903084164610">Dacă alegi să continui, ești de acord cu <ph name="BEGIN_TOS_LINK" />Termenii și condițiile<ph name="END_TOS_LINK" />.</translation> +<translation id="1904580727789512086">Adresele URL pe care le accesezi sunt salvate în Contul Google</translation> <translation id="1910950723001426294">Lista cu opțiuni de permitere a accesului este închisă.</translation> <translation id="1918175104945982129">IU pentru consimțirea la căutarea vocală cu ajutorul Asistentului, deschisă la jumătate din înălțime</translation> <translation id="1919130412786645364">Permite conectarea la Chrome</translation> @@ -194,7 +194,6 @@ <translation id="2000419248597011803">Trimite anumite cookie-uri și căutări din bara de adrese și din caseta de căutare în motorul de căutare prestabilit</translation> <translation id="200114059308480249">Incluzi text din jur în căutările de pe Google?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{Un fișier}few{# fișiere}other{# de fișiere}}</translation> -<translation id="2020309681647789787">Istoricul apare pe toate dispozitivele tale sincronizate. Astfel, poți continua ceea ce făceai</translation> <translation id="2021896219286479412">Comenzi site în ecran complet</translation> <translation id="2038563949887743358">Activează opțiunea Versiune site pentru desktop</translation> <translation id="204321170514947529">Și <ph name="APP_NAME" /> are date în Chrome</translation> @@ -280,7 +279,6 @@ <translation id="2527779675047087889">Ascunde conținutul clipboardului</translation> <translation id="2532336938189706096">Vizualizare pe web</translation> <translation id="2534155362429831547">Elemente șterse: <ph name="NUMBER_OF_ITEMS" /></translation> -<translation id="2534582914273493287">Adresele URL pe care le accesezi sunt trimise la Google</translation> <translation id="2536728043171574184">Se afișează o versiune offline a acestei pagini</translation> <translation id="2546283357679194313">Cookie-uri și date privind site-ul</translation> <translation id="2549516196460093976">Poți folosi această tabletă pentru a te conecta la computerul care afișează acest cod QR.</translation> @@ -372,7 +370,6 @@ <translation id="2996291259634659425">Creează o expresie de acces</translation> <translation id="2996809686854298943">Adresă URL obligatorie</translation> <translation id="2997081575621687554">Când un site Google îți solicită să preîncarci în mod privat linkurile pe pagină, Chrome criptează și preîncarcă paginile prin intermediul serverelor Google fără cookie-uri. Astfel, identitatea ta este ascunsă pentru site-ul preîncărcat.</translation> -<translation id="3003733539450769656">Te avertizează cu privire la evenimente periculoase înainte să aibă loc</translation> <translation id="3006881078666935414">Nu există date de utilizare</translation> <translation id="301080557829842765">Ghid pentru confidențialitate</translation> <translation id="3016635187733453316">Verifică dacă dispozitivul este conectat la internet</translation> @@ -432,6 +429,7 @@ <translation id="3284510035090979597">Ajutor proactiv</translation> <translation id="3285080554353377245">Videoclipuri despre folosirea browserului Chrome</translation> <translation id="3288003805934695103">să reîncarci pagina;</translation> +<translation id="3290249595466894471">În plus, trimite un mic eșantion cu pagini, descărcări, activități ale extensiilor și informații despre sistem pentru a descoperi noi amenințări</translation> <translation id="3297344142967351106">Asistență vocală</translation> <translation id="3303414029551471755">Continui pentru descărcarea conținutului?</translation> <translation id="3334729583274622784">Modifici extensia de fișier?</translation> @@ -637,7 +635,6 @@ <translation id="4558311620361989323">Comenzi rapide pentru pagini web</translation> <translation id="4561730552726921821">S-a realizat înregistrarea</translation> <translation id="4561979708150884304">Nicio conexiune</translation> -<translation id="4562008740775511591">Chrome are setări prestabilite rezonabile, dar le poți personaliza pentru a le adapta obiceiurilor tale de navigare</translation> <translation id="4565377596337484307">Ascunde parola</translation> <translation id="4572422548854449519">Conectează-te la contul gestionat</translation> <translation id="4576892426230499203">Încearcă altă opțiune de confirmare</translation> @@ -919,7 +916,6 @@ <translation id="604996488070107836">Fișierul <ph name="FILE_NAME" /> nu a fost descărcat din cauza unei erori necunoscute.</translation> <translation id="605721222689873409">AA</translation> <translation id="6059830886158432458">Gestionează subiectele și activitatea aici</translation> -<translation id="6069177176307973611">Examinează setările de confidențialitate și securitate</translation> <translation id="6070730414166672373">Se contactează banca\u2026</translation> <translation id="6085886413119427067">Stabilește modul de conectare la site-uri printr-o conexiune securizată</translation> <translation id="6091413777268123602">Cu versiunile de încercare Privacy Sandbox, site-urile pot oferi aceeași experiență de navigare, folosind mai puține date despre tine. Aceasta înseamnă confidențialitate sporită și reducerea urmăririi pe mai multe site-uri. Vom adăuga versiuni de încercare noi atunci când sunt gata pentru testare.</translation> @@ -1040,6 +1036,7 @@ <translation id="6641780377503683465">Elimină <ph name="INTEREST" /></translation> <translation id="6643016212128521049">Șterge</translation> <translation id="6645629752388991326">Controlează ce dispozitive se pot conecta folosind acest dispozitiv drept cheie de securitate.</translation> +<translation id="6647441008198474441">Adresele URL pe care le accesezi sunt trimise la Google pentru a anticipa site-urile pe care le-ai putea accesa pe viitor</translation> <translation id="6648459603387803038">Administratorul poate schimba configurația browserului de la distanță. Este posibil ca activitatea de pe acest dispozitiv să fie gestionată și din afara Chrome.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 și încă <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}few{<ph name="CONTACT_PREVIEW" />\u2026 și încă <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}other{<ph name="CONTACT_PREVIEW" />\u2026 și încă <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}}</translation> <translation id="6649642165559792194">Previzualizează imaginea <ph name="BEGIN_NEW" />Nou<ph name="END_NEW" /></translation> @@ -1047,7 +1044,6 @@ <translation id="6659594942844771486">Filă</translation> <translation id="666731172850799929">Deschide în <ph name="APP_NAME" /></translation> <translation id="6671495933530132209">Copiați imaginea</translation> -<translation id="6674044799624355221">Trimite un mic eșantion cu pagini, descărcări, activități ale extensiilor și informații despre sistem pentru a descoperi noi amenințări</translation> <translation id="6674571176963658787">Pentru a porni sincronizarea, introdu expresia de acces</translation> <translation id="6676840375528380067">Ștergi datele tale Chrome de pe acest dispozitiv?</translation> <translation id="6684809838922667136">Contribuie la îmbunătățirea Chrome</translation> @@ -1069,7 +1065,6 @@ <translation id="6802555630140434547">Fereastra va fi închisă</translation> <translation id="6811034713472274749">Pagina este gata de vizualizare</translation> <translation id="6813446258015311409">Conectează-te la Chrome, deschis.</translation> -<translation id="6814033694018386318">Ce trimiți la Google</translation> <translation id="6817747507826986771">Distribuie rapid pagina. Pentru a edita comanda rapidă, atinge-o lung.</translation> <translation id="6819199143469632133">Conectează-te pentru a folosi serviciile tale Google pe mai multe dispozitive</translation> <translation id="6820686453637990663">CVC</translation> @@ -1164,6 +1159,7 @@ <translation id="7352939065658542140">VIDEOCLIP</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{Trimite un element selectat}few{Trimite # elemente selectate}other{Trimite # de elemente selectate}}</translation> <translation id="7359002509206457351">Acces la metodele de plată</translation> +<translation id="7363349185727752629">Un ghid pentru opțiunile de confidențialitate</translation> <translation id="7375125077091615385">Tip:</translation> <translation id="7376560087009844242">Dacă incluzi mai mult din textul paginii, ai putea vedea rezultate mai bune când folosești Atinge pentru a căuta. Poți accesa oricând<ph name="BEGIN_LINK" />setările<ph name="END_LINK" /> pentru a schimba această setare.</translation> <translation id="7379900596734708416">Tema întunecată pentru site-uri este disponibilă</translation> @@ -1263,6 +1259,7 @@ <translation id="7876243839304621966">Elimină tot</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{Ai <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> pagină necitită}few{Ai <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> pagini necitite}other{Ai <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> de pagini necitite}}</translation> <translation id="7886917304091689118">Rulează în Chrome</translation> +<translation id="7887174313503389866">Fă un tur asistat al celor mai importante opțiuni de confidențialitate și de securitate. Pentru mai multe opțiuni, accesează setările individuale.</translation> <translation id="7887334752153342268">Dublură</translation> <translation id="789763218334337857">Cum se folosește Chrome</translation> <translation id="7903184275147100332">Poate dura un timp</translation> @@ -1376,6 +1373,7 @@ <translation id="8445448999790540984">Nu se pot exporta parole</translation> <translation id="8446884382197647889">Află mai multe</translation> <translation id="8453310803815879010">Începe jocul cu dinozauri</translation> +<translation id="8460448946170646641">Examinează cele mai importante opțiuni de confidențialitate și de securitate</translation> <translation id="8461694314515752532">Criptează datele sincronizate folosind propria expresie de acces pentru sincronizare</translation> <translation id="8466613982764129868">Asigură-te că <ph name="TARGET_DEVICE_NAME" /> este conectat la internet</translation> <translation id="8473863474539038330">Adrese și altele</translation> @@ -1421,6 +1419,7 @@ <translation id="8636825310635137004">Pentru a accesa filele de pe alte dispozitive, activează sincronizarea.</translation> <translation id="8641930654639604085">Încearcă să blochezi site-urile destinate adulților</translation> <translation id="864544049772947936">Gestionează ferestrele (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">Anticipează și te avertizează cu privire la evenimente periculoase înainte să aibă loc</translation> <translation id="8646467750715887511">Paginile se încarcă numai după ce le deschizi.</translation> <translation id="8655129584991699539">Poți șterge datele în Setările Chrome</translation> <translation id="8659579665266920523">Cum să cauți folosind Chrome</translation> @@ -1433,7 +1432,6 @@ <translation id="867767487203716855">Următoarea actualizare</translation> <translation id="8683039184091909753">imagine</translation> <translation id="8683081248374354009">Resetează grupul</translation> -<translation id="8683526617475118045">Beneficii</translation> <translation id="869891660844655955">Dată de expirare</translation> <translation id="8699120352855309748">Nu oferi traducerea pentru aceste limbi</translation> <translation id="8712637175834984815">Am înțeles</translation> @@ -1517,7 +1515,6 @@ <translation id="9148126808321036104">Conectează-te din nou</translation> <translation id="9158770349521403363">Trimite numai conținutul</translation> <translation id="9159716826369098114">Restabilește grupul de <ph name="TAB_COUNT" /> file ca pe un nou grup de file din fundal.</translation> -<translation id="916446198114569890">Adresele URL pe care le accesezi sunt salvate în Contul Google</translation> <translation id="9169507124922466868">Istoricul de navigare este pe jumătate deschis</translation> <translation id="9187955620966010988">Reacția a fost ajustată</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{A rulat acum un minut}few{A rulat acum # minute}other{A rulat acum # de minute}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_ru.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_ru.xtb index 9a77aba..d2ee5c6f 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_ru.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_ru.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">Не предлагать перевести эти сайты</translation> <translation id="1145536944570833626">Удалить сохраненные данные</translation> <translation id="1146678959555564648">Войти в режим VR</translation> -<translation id="114825011539563458">Самые важные настройки конфиденциальности и безопасности на одной странице</translation> <translation id="1149401351239820326">Месяц окончания срока действия</translation> <translation id="1150263420752757504">Приложение "<ph name="APP_NAME" />" откроется в Chrome. Продолжая, вы принимаете <ph name="BEGIN_LINK1" />Условия использования Google<ph name="END_LINK1" /> и <ph name="BEGIN_LINK2" />Дополнительные условия использования Chrome и Chrome OS<ph name="END_LINK2" />.</translation> <translation id="1154704303112745282">Страница недоступна в офлайн-режиме: <ph name="VIOLATED_URL" />.</translation> @@ -108,6 +107,7 @@ <translation id="1488775391433859242">Вы сможете использовать этот телефон, чтобы входить в аккаунт на компьютере, где показан QR-код.</translation> <translation id="1492417797159476138">Вы уже сохранили это имя пользователя для данного сайта.</translation> <translation id="1493287004536771723">Вы подписались на сайт "<ph name="SITE_NAME" />"</translation> +<translation id="1502010315804028179">Чтобы управлять паролями, обновите сервисы Google Play.</translation> <translation id="1506061864768559482">Поисковая система</translation> <translation id="1513352483775369820">Закладки и история поиска</translation> <translation id="1513814250881909472">Чтобы стали доступны вкладки с других устройств, выполните синхронизацию.</translation> @@ -169,6 +169,7 @@ <translation id="189358972401248634">Другие языки</translation> <translation id="1894023287452300670">Отслеживайте цены здесь</translation> <translation id="1900260903084164610">Продолжая, вы принимаете <ph name="BEGIN_TOS_LINK" />Условия использования<ph name="END_TOS_LINK" />.</translation> +<translation id="1904580727789512086">URL посещаемых сайтов сохраняются в аккаунте Google.</translation> <translation id="1910950723001426294">Список способов отправки закрыт.</translation> <translation id="1918175104945982129">Окно, где требуется разрешить использование Ассистента для голосового поиска, развернуто на пол-экрана</translation> <translation id="1919130412786645364">Разрешить вход в Chrome</translation> @@ -193,7 +194,6 @@ <translation id="2000419248597011803">Отправлять некоторые файлы cookie и поисковые запросы из адресной строки в поисковую систему по умолчанию</translation> <translation id="200114059308480249">Учитывать контекст в поиске Google?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# файл}one{# файл}few{# файла}many{# файлов}other{# файла}}</translation> -<translation id="2020309681647789787">История будет храниться на всех ваших синхронизированных устройствах, поэтому вы легко сможете, например, начать работу на одном устройстве, а продолжить ее на другом.</translation> <translation id="2021896219286479412">Настройки полноэкранного режима</translation> <translation id="2038563949887743358">Включить полную версию сайта</translation> <translation id="204321170514947529">Приложение "<ph name="APP_NAME" />" также хранит свои данные в Chrome</translation> @@ -279,7 +279,6 @@ <translation id="2527779675047087889">Скрыть содержимое буфера обмена</translation> <translation id="2532336938189706096">Веб-версия</translation> <translation id="2534155362429831547">Удалено записей: <ph name="NUMBER_OF_ITEMS" /></translation> -<translation id="2534582914273493287">URL посещенных вами страниц отправляются в Google.</translation> <translation id="2536728043171574184">Офлайн-копия страницы</translation> <translation id="2546283357679194313">Файлы сookie и данные сайтов</translation> <translation id="2549516196460093976">Вы сможете использовать этот планшет, чтобы входить в аккаунт на компьютере, где показан QR-код.</translation> @@ -371,7 +370,6 @@ <translation id="2996291259634659425">Придумайте кодовую фразу</translation> <translation id="2996809686854298943">Необходимо указать URL</translation> <translation id="2997081575621687554">Когда сайт на платформе Google запрашивает анонимную предзагрузку страниц по ссылкам на нем, Chrome шифрует и предварительно загружает страницы через серверы Google без файлов cookie. Благодаря этому предзагруженный сайт не получает сведений о вашей личности.</translation> -<translation id="3003733539450769656">Вы получаете предупреждения об опасных событиях.</translation> <translation id="3006881078666935414">Нет данных об использовании</translation> <translation id="301080557829842765">Руководство по конфиденциальности</translation> <translation id="3016635187733453316">Убедитесь, что устройство подключено к Интернету.</translation> @@ -431,6 +429,7 @@ <translation id="3284510035090979597">Помощь в нужный момент</translation> <translation id="3285080554353377245">Видео о том, как пользоваться Chrome</translation> <translation id="3288003805934695103">Обновите страницу.</translation> +<translation id="3290249595466894471">Кроме того, с целью выявления новых угроз на анализ отправляется небольшая выборка страниц, скачанных файлов и сведений об использовании расширений, а также информация о системе.</translation> <translation id="3297344142967351106">Голосовой помощник</translation> <translation id="3303414029551471755">Скачать?</translation> <translation id="3334729583274622784">Изменить расширение имени файла?</translation> @@ -636,7 +635,6 @@ <translation id="4558311620361989323">Работа с веб-страницами</translation> <translation id="4561730552726921821">Регистрация выполнена</translation> <translation id="4561979708150884304">Нет подключения</translation> -<translation id="4562008740775511591">В Chrome установлены значения по умолчанию, но вы можете их изменить.</translation> <translation id="4565377596337484307">Скрыть пароль</translation> <translation id="4572422548854449519">Войдите в управляемый аккаунт</translation> <translation id="4576892426230499203">Выберите другой способ подтверждения.</translation> @@ -918,7 +916,6 @@ <translation id="604996488070107836">Не удалось скачать файл <ph name="FILE_NAME" /> из-за неизвестной ошибки.</translation> <translation id="605721222689873409">ГГ</translation> <translation id="6059830886158432458">Управление рекомендациями</translation> -<translation id="6069177176307973611">Проверить настройки конфиденциальности и безопасности</translation> <translation id="6070730414166672373">Обращение в банк\u2026</translation> <translation id="6085886413119427067">Определяет, как подключаться к сайтам, используя защищенное соединение.</translation> <translation id="6091413777268123602">В рамках экспериментов на основе технологий Privacy Sandbox сайты функционируют в обычном режиме, собирая меньше данных о вас. В результате более надежно обеспечивается конфиденциальность ваших данных и ограничивается межсайтовое отслеживание. Мы добавим новые эксперименты, как только они будут готовы.</translation> @@ -1039,6 +1036,7 @@ <translation id="6641780377503683465">Удалить интерес "<ph name="INTEREST" />"</translation> <translation id="6643016212128521049">Удалить</translation> <translation id="6645629752388991326">Использовать этот телефон как электронный ключ на выбранных устройствах</translation> +<translation id="6647441008198474441">Чтобы предсказать ваши дальнейшие запросы, URL посещенных вами страниц отправляются в Google.</translation> <translation id="6648459603387803038">Администратор может удаленно менять настройки браузера и управлять действиями вне браузера Chrome на этом устройстве.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" /> и ещё <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> контактное лицо}one{<ph name="CONTACT_PREVIEW" /> и ещё <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> контактное лицо}few{<ph name="CONTACT_PREVIEW" /> и ещё <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> контактных лица}many{<ph name="CONTACT_PREVIEW" /> и ещё <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> контактных лиц}other{<ph name="CONTACT_PREVIEW" /> и ещё <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> контактного лица}}</translation> <translation id="6649642165559792194">Просмотреть изображение <ph name="BEGIN_NEW" />Новинка<ph name="END_NEW" /></translation> @@ -1046,7 +1044,6 @@ <translation id="6659594942844771486">Вкладка</translation> <translation id="666731172850799929">Открыть в <ph name="APP_NAME" /></translation> <translation id="6671495933530132209">Копировать изображение</translation> -<translation id="6674044799624355221">Чтобы выявить новые угрозы, на анализ отправляется небольшая выборка страниц, скачанных файлов и сведений об использовании расширений, а также информация о системе.</translation> <translation id="6674571176963658787">Чтобы начать синхронизацию, введите кодовую фразу.</translation> <translation id="6676840375528380067">Удалить данные Chrome с этого устройства?</translation> <translation id="6684809838922667136">Сделайте браузер Chrome лучше</translation> @@ -1068,7 +1065,6 @@ <translation id="6802555630140434547">Окно будет закрыто.</translation> <translation id="6811034713472274749">Страница загружена</translation> <translation id="6813446258015311409">Окно "Войти в Chrome" открыто.</translation> -<translation id="6814033694018386318">Что отправляется в Google</translation> <translation id="6817747507826986771">Поделиться этой страницей. Чтобы изменить функцию кнопки, нажмите и удерживайте ее.</translation> <translation id="6819199143469632133">Чтобы использовать сервисы Google на нескольких устройствах, войдите в аккаунт.</translation> <translation id="6820686453637990663">Код CVC</translation> @@ -1163,6 +1159,7 @@ <translation id="7352939065658542140">ВИДЕО</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{Поделиться 1 выбранным объектом}one{Поделиться # выбранным объектом}few{Поделиться # выбранными объектами}many{Поделиться # выбранными объектами}other{Поделиться # выбранного объекта}}</translation> <translation id="7359002509206457351">Доступ к способам оплаты</translation> +<translation id="7363349185727752629">Все о настройках конфиденциальности</translation> <translation id="7375125077091615385">Тип:</translation> <translation id="7376560087009844242">Благодаря этой функции при использовании быстрого поиска результаты могут стать точнее. Включить или отключить ее можно в любое время в <ph name="BEGIN_LINK" />настройках<ph name="END_LINK" />.</translation> <translation id="7379900596734708416">Доступна тёмная тема для сайтов</translation> @@ -1262,6 +1259,7 @@ <translation id="7876243839304621966">Удалить все</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{У вас <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> непрочитанная страница.}one{У вас <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> непрочитанная страница.}few{У вас <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> непрочитанных страницы.}many{У вас <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> непрочитанных страниц.}other{У вас <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> непрочитанной страницы.}}</translation> <translation id="7886917304091689118">Выполняется в Chrome</translation> +<translation id="7887174313503389866">Узнайте об основных настройках конфиденциальности и безопасности. Больше информации вы найдете в соответствующих разделах.</translation> <translation id="7887334752153342268">Дублировать</translation> <translation id="789763218334337857">Работа в браузере Chrome</translation> <translation id="7903184275147100332">Подождите немного…</translation> @@ -1375,6 +1373,7 @@ <translation id="8445448999790540984">Не удалось экспортировать пароли</translation> <translation id="8446884382197647889">Подробнее...</translation> <translation id="8453310803815879010">Запустить игру Dino</translation> +<translation id="8460448946170646641">Проверка основных настроек конфиденциальности и безопасности</translation> <translation id="8461694314515752532">Задать кодовую фразу для шифрования синхронизированных данных</translation> <translation id="8466613982764129868">Проверьте, подключено ли устройство <ph name="TARGET_DEVICE_NAME" /> к Интернету.</translation> <translation id="8473863474539038330">Адреса и другие данные</translation> @@ -1420,6 +1419,7 @@ <translation id="8636825310635137004">Чтобы получить доступ к вкладкам на всех ваших устройствах, включите синхронизацию.</translation> <translation id="8641930654639604085">Блокировать сайты для взрослых</translation> <translation id="864544049772947936">Управлять окнами (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">Предсказывает опасные события и предупреждает вас о них.</translation> <translation id="8646467750715887511">Страницы загружаются только после того, как вы их откроете.</translation> <translation id="8655129584991699539">Удалить данные можно в настройках Chrome</translation> <translation id="8659579665266920523">Как выполнять поиск в Chrome</translation> @@ -1432,7 +1432,6 @@ <translation id="867767487203716855">Следующее обновление</translation> <translation id="8683039184091909753">Изображение</translation> <translation id="8683081248374354009">Сбросить настройки группы</translation> -<translation id="8683526617475118045">Что это дает</translation> <translation id="869891660844655955">Срок действия</translation> <translation id="8699120352855309748">Не предлагать переводить страницы на этих языках</translation> <translation id="8712637175834984815">Готово</translation> @@ -1516,7 +1515,6 @@ <translation id="9148126808321036104">Повторите вход</translation> <translation id="9158770349521403363">Поделиться без ссылки</translation> <translation id="9159716826369098114">Восстановить группу вкладок (<ph name="TAB_COUNT" />) и открыть ее в фоновом режиме.</translation> -<translation id="916446198114569890">URL посещаемых сайтов сохраняются в аккаунте Google.</translation> <translation id="9169507124922466868">История переходов открыта наполовину</translation> <translation id="9187955620966010988">Отклик скорректирован</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{Проверено 1 минуту назад.}one{Проверено # минуту назад.}few{Проверено # минуты назад.}many{Проверено # минут назад.}other{Проверено # минуты назад.}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_si.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_si.xtb index 62d8a5a..603e46b 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_si.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_si.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">මෙම අඩවි පරිවර්තනය කිරීමට පිරිනමන්න එපා</translation> <translation id="1145536944570833626">පවතින දත්ත මකන්න.</translation> <translation id="1146678959555564648">VR ඇතුළු කරන්න</translation> -<translation id="114825011539563458">වඩාත්ම වැදගත් පෞද්ගලිකත්වය සහ ආරක්ෂක පාලන එක තැනකය</translation> <translation id="1149401351239820326">කල් ඉකුත් වන මාසය</translation> <translation id="1150263420752757504"><ph name="APP_NAME" /> Chrome තුළ විවෘත වනු ඇත. ඉදිරියට යාමෙන්, ඔබ <ph name="BEGIN_LINK1" />Google සේවා නියම<ph name="END_LINK1" /> සහ <ph name="BEGIN_LINK2" />Google Chrome සහ ChromeOS අතිරේක සේවා නියම<ph name="END_LINK2" /> සමග එකඟ වේ.</translation> <translation id="1154704303112745282">පිටුව නොබැඳිව ලබා ගත නොහැකිය: <ph name="VIOLATED_URL" /></translation> @@ -170,6 +169,7 @@ <translation id="189358972401248634">වෙනත් භාෂා</translation> <translation id="1894023287452300670">මෙහි මිල හඹා යන්න</translation> <translation id="1900260903084164610">ඉදිරියට යාමෙන්, ඔබ <ph name="BEGIN_TOS_LINK" />සේවා නියම<ph name="END_TOS_LINK" /> සමග එකඟ වේ.</translation> +<translation id="1904580727789512086">ඔබ පිවිසෙන URL ඔබගේ Google ගිණුමට සුරැකේ</translation> <translation id="1910950723001426294">බෙදා ගැනීමේ විකල්ප ලැයිස්තුව වසා ඇත.</translation> <translation id="1918175104945982129">අර්ධ උසකදී සහායක හඬ සෙවීම් අනුමත ui විවෘත කරන ලදි</translation> <translation id="1919130412786645364">Chrome පුරනයට ඉඩ දෙන්න</translation> @@ -194,7 +194,6 @@ <translation id="2000419248597011803">ලිපින තීරුවේ සහ සෙවීම් පෙට්ටියේ ඇතැම් කුකී සහ සෙවීම් ඔබගේ පෙරනිමි සෙවීම් එන්ජිමට යවයි</translation> <translation id="200114059308480249">Google සෙවීම් තුළ අවට පෙළ ඇතුළත් කරන්නද?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# ගොනුවක්}one{ගොනු #ක්}other{ගොනු #ක්}}</translation> -<translation id="2020309681647789787">ඔබට ඔබගේ සමමුහුර්ත කළ උපාංග සියල්ලෙහි ඔබගේ ඉතිහාසය ඇත, එම නිසා ඔබට ඔබ කරමින් සිටි දේ දිගටම කරගෙන යා හැකිය</translation> <translation id="2021896219286479412">පූර්ණ තිර අඩවි පාලන</translation> <translation id="2038563949887743358">ඩෙස්ක්ටොප් අඩවිය ඉල්ලීම ක්රියාත්මක කරන්න</translation> <translation id="204321170514947529"><ph name="APP_NAME" /> හට ද Chrome හි දත්ත තිබේ</translation> @@ -280,7 +279,6 @@ <translation id="2527779675047087889">පසුරු පුවරු අන්තර්ගතය සඟවන්න</translation> <translation id="2532336938189706096">ජාල දර්ශනය</translation> <translation id="2534155362429831547">අයිතම <ph name="NUMBER_OF_ITEMS" />ක් මකන ලදි</translation> -<translation id="2534582914273493287">ඔබ පිවිසෙන URL Google වෙත යවනු ලැබේ</translation> <translation id="2536728043171574184">මෙම පිටුවෙහි නොබැඳි පිටපතක් බලමින්</translation> <translation id="2546283357679194313">කුකීස් සහ අඩවි දත්ත</translation> <translation id="2549516196460093976">මෙම QR කේතය සංදර්ශනය කරන පරිගණකයට පිරීමට ඔබට මෙම ටැබ්ලටය භාවිත කළ හැකිය.</translation> @@ -372,7 +370,6 @@ <translation id="2996291259634659425">මුර-වැකිකඩ සාදන්න</translation> <translation id="2996809686854298943">URL අවශ්යය</translation> <translation id="2997081575621687554">Google අඩවියක් ඔවුන්ගේ පිටුවේ සබැඳි පුද්ගලිකව පූර්ව පූරණය කිරීමට ඉල්ලන විට, Chrome කුකි නොමැතිව Google සේවාදායක හරහා පිටු සංකේතනය කර පූර්ව පූරණය කරයි. මෙය පූර්ව පූරණය කර ඇති අඩවියෙන් ඔබගේ අනන්යතාව සඟවයි.</translation> -<translation id="3003733539450769656">භයානක සිදුවීම් සිදු වීමට පෙර ඒවා ගැන ඔබට අනතුරු අඟවයි</translation> <translation id="3006881078666935414">භාවිතයේ දත්ත නැත</translation> <translation id="301080557829842765">පෞද්ගලිකත්ව මාර්ගෝපදේශය</translation> <translation id="3016635187733453316">මෙම උපාංගය අන්තර්ජාලයට සම්බන්ධ වී තිබෙන බව තහවුරු කර ගන්න</translation> @@ -432,6 +429,7 @@ <translation id="3284510035090979597">කල්තියා උදවු</translation> <translation id="3285080554353377245">Chrome භාවිත කරන ආකාරය පිළිබඳ වීඩියෝ</translation> <translation id="3288003805934695103">පිටුව නැවත පූරණය කරමින්</translation> +<translation id="3290249595466894471">නව තර්ජන සොයා ගැනීමට උදවු කිරීමට පිටුවල, බාගැනීම්වල, දිගු ක්රියාකාරකමේ සහ පද්ධති තොරතුරුවල කුඩා නියැදියක් ද යවයි</translation> <translation id="3297344142967351106">හඬ සහාය</translation> <translation id="3303414029551471755">අන්තර්ගතය බාගැනීම අරඹන්නද?</translation> <translation id="3334729583274622784">ගොනු දිගුව වෙනස් කරන්නේද?</translation> @@ -637,7 +635,6 @@ <translation id="4558311620361989323">වෙබ් පිටු කෙටි මං</translation> <translation id="4561730552726921821">ලියාපදිංචිය සාර්ථක විය</translation> <translation id="4561979708150884304">සබැඳුමක් නැත</translation> -<translation id="4562008740775511591">Chrome සාධාරණ පෙරනිමි සපයයි, නමුත් ඔබගේ බ්රවුස් කිරීමේ පුරුද්දට වඩාත් ගැළපෙන පරිදි ඔබට එය අභිරුචිකරණය කළ හැකිය</translation> <translation id="4565377596337484307">මුරපදය සඟවන්න</translation> <translation id="4572422548854449519">කළමනාකරණය කරන ලද ගිණුමට පිරීම</translation> <translation id="4576892426230499203">වෙනත් සත්යාපනය කිරිමේ විකල්පයක් උත්සාහ කරන්න</translation> @@ -919,7 +916,6 @@ <translation id="604996488070107836">නොදන්නා දෝෂයක් නිසා <ph name="FILE_NAME" /> බාගැනීම අසාර්ථක විය.</translation> <translation id="605721222689873409">YY</translation> <translation id="6059830886158432458">මෙහි ඔබේ කතා සහ ක්රියාකාරකම් පාලන කරන්න</translation> -<translation id="6069177176307973611">පෞද්ගලිකත්ව සහ ආරක්ෂක සැකසීම් සමාලෝචනය කරන්න</translation> <translation id="6070730414166672373">ඔබගේ බැංකුව අමතමින්\u2026</translation> <translation id="6085886413119427067">සුරක්ෂිත සම්බන්ධතාවක් හරහා වෙබ් අඩවිවලට සම්බන්ධ කරන ආකාරය තීරණ කරයි</translation> <translation id="6091413777268123602">පෞද්ගලිකත්ව සෑන්ඩ්බොක්ස් අත්හදා බැලීම් සමග, අඩවිවලට ඔබගේ දත්ත අඩුවෙන් භාවිත කරමින් එකම බ්රවුස් කිරීමේ අත්දැකීම ලබා දිය හැකිය. එයින් ඔබ සඳහා වැඩි පෞද්ගලිකත්වයක් සහ අඩු හරස්-අඩවි ලුහුබැඳීමක් අදහස් කෙරේ. ඔවුන් පරීක්ෂාෂා කිරීමට සූදානම් බැවින් අපි නව අත්හදා බැලීම් එක් කරන්නෙමු.</translation> @@ -1040,6 +1036,7 @@ <translation id="6641780377503683465"><ph name="INTEREST" /> ඉවත් කරන්න</translation> <translation id="6643016212128521049">මකන්න</translation> <translation id="6645629752388991326">මෙම උපාංගය ආරක්ෂක යතුරක් ලෙස භාවිත කිරීමෙන් පිරිය හැකි උපාංග පාලනය කරන්න.</translation> +<translation id="6647441008198474441">ඔබ පිවිසෙන URL ඔබ මීළඟට පිවිසිය හැකි අඩවි මොනවාදැයි පුරෝකථනය කිරීමට Google වෙත යවනු ලැබේ</translation> <translation id="6648459603387803038">ඔබේ පරිපාලකට දුරස්ථව ඔබේ බ්රවුසර සැකසීම වෙනස් කළ හැකිය. මෙම උපාංගය මත ක්රියාකාරකම Chrome හට පිටතින් ද කළමනා කරනු ලැබිය හැක.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />... සහ තවත් <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}one{<ph name="CONTACT_PREVIEW" />... සහ තවත් <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}other{<ph name="CONTACT_PREVIEW" />... සහ තවත් <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}}</translation> <translation id="6649642165559792194">රූපය පෙරදකින්න <ph name="BEGIN_NEW" />නව<ph name="END_NEW" /></translation> @@ -1047,7 +1044,6 @@ <translation id="6659594942844771486">ටැබ</translation> <translation id="666731172850799929"><ph name="APP_NAME" /> තුළ විවෘත කරන්න</translation> <translation id="6671495933530132209">රූපය පිටපත් කරන්න</translation> -<translation id="6674044799624355221">නව තර්ජන සොයා ගැනීමට උදවු කිරීමට පිටුවල, බාගැනීම්වල, දිගු ක්රියාකාරකමේ සහ පද්ධති තොරතුරුවල කුඩා නියැදියක් යවයි</translation> <translation id="6674571176963658787">සමමුහුර්ත කිරීම ආරම්භ කිරීමට, ඔබගේ මුර-වැකිකඩ ඇතුළත් කරන්න</translation> <translation id="6676840375528380067">මෙම උපාංගයෙන් ඔබේ Chrome දත්ත හිස් කරන්න ද?</translation> <translation id="6684809838922667136">Chrome වඩාත් යහපත් කරන්න</translation> @@ -1069,7 +1065,6 @@ <translation id="6802555630140434547">කවුළුව වැසෙනු ඇත</translation> <translation id="6811034713472274749">පිටුව බැලීමට සූදානම්</translation> <translation id="6813446258015311409">Chrome වෙත පුරන්න, විවෘතයි.</translation> -<translation id="6814033694018386318">Google සමඟ ඔබ බෙදා ගන්නා දේ</translation> <translation id="6817747507826986771">මෙම පිටුව ඉක්මනින් බෙදා ගන්න. මෙම කෙටිමඟ සංස්කරණය කිරීමට, ස්පර්ශ කර අල්ලාගෙන සිටින්න.</translation> <translation id="6819199143469632133">ඔබගේ Google දේවල් උපාංග හරහා ලබා ගැනීමට, පුරන්න</translation> <translation id="6820686453637990663">CVC</translation> @@ -1164,6 +1159,7 @@ <translation id="7352939065658542140">වීඩියෝ</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{තෝරාගත් අයිතම 1ක් බෙදාගන්න}one{තෝරාගත් අයිතම #ක් බෙදාගන්න}other{තෝරාගත් අයිතම #ක් බෙදාගන්න}}</translation> <translation id="7359002509206457351">ගෙවීමේ ක්රමවලට ප්රවේශය</translation> +<translation id="7363349185727752629">ඔබගේ පෞද්ගලිකත්ව තේරීම්වල මාර්ගෝපදේශයක්</translation> <translation id="7375125077091615385">වර්ගය:</translation> <translation id="7376560087009844242">පිටුවක පෙළ වැඩිපුර ඇතුළත් කිරීමෙන්, සෙවීමට ස්පර්ශ කිරීම භාවිත කරන විට ඔබ වඩා හොඳ ප්රතිඵල දැකිය හැකිය ඔබට මෙය වෙනස් කිරීමට සැම විට <ph name="BEGIN_LINK" />සැකසීම්<ph name="END_LINK" /> වෙත පිවිසිය හැකිය.</translation> <translation id="7379900596734708416">අඩවි සඳහා අඳුරු තේමාව තිබේ</translation> @@ -1263,6 +1259,7 @@ <translation id="7876243839304621966">සියල්ල ඉවත් කරන්න</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{ඔබට නොකියවූ පිටු <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" />ක් ඇත}one{ඔබට නොකියවූ පිටු <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" />ක් ඇත}other{ඔබට නොකියවූ පිටු <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" />ක් ඇත}}</translation> <translation id="7886917304091689118">Chrome තුළ ධාවනය වේ</translation> +<translation id="7887174313503389866">ප්රධාන පෞද්ගලිකත්ව සහ ආරක්ෂක පාලන පිළිබඳ මාර්ගෝපදේශය සහිත චාරිකාවක් සිදු කරන්න. තවත් විකල්ප සඳහා, තනි සැකසීම් වෙත යන්න.</translation> <translation id="7887334752153342268">ද්විතීයකරණය</translation> <translation id="789763218334337857">Chrome භාවිත කරන ආකාරය</translation> <translation id="7903184275147100332">මෙයට මිනිත්තුවක් ගත විය හැකිය</translation> @@ -1376,6 +1373,7 @@ <translation id="8445448999790540984">මුරපද නිර්යාත කළ නොහැක</translation> <translation id="8446884382197647889">තවත් දැනගන්න</translation> <translation id="8453310803815879010">Dino ක්රීඩාව ආරම්භ කරන්න</translation> +<translation id="8460448946170646641">ප්රධාන පෞද්ගලිකත්ව සහ ආරක්ෂක පාලන සමාලෝචනය කරන්න</translation> <translation id="8461694314515752532">ඔබගේම සමමුහූර්ත මුර-වැකිකඩ සමඟ සමමුහූර්ත කළ දත්ත සංකේතන කරන්න</translation> <translation id="8466613982764129868"><ph name="TARGET_DEVICE_NAME" /> අන්තර්ජාලයට සම්බන්ධ කර තිබීම තහවුරු කර ගන්න</translation> <translation id="8473863474539038330">ලිපින සහ තව</translation> @@ -1421,6 +1419,7 @@ <translation id="8636825310635137004">ඔබගේ වෙනත් උපාංග වෙතින් ඔබගේ ටැබ ලබා ගැනීමට, සමමුහුර්ත කිරීම ක්රියාත්මක කරන්න.</translation> <translation id="8641930654639604085">වැඩිහිටි අඩවි අවහිර කිරීමට උත්සාහ කරන්න</translation> <translation id="864544049772947936">කවුළු කළමනාකරණය කරන්න (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">අනතුරුදායක සිදුවීම් සිදු වීමට පෙර ඒවා පුරෝකථන කර ඔබට අවවාද කරයි</translation> <translation id="8646467750715887511">පිටු ඔබ විවෘත කිරීමෙන් පසුව පමණක් පූරණය වේ.</translation> <translation id="8655129584991699539">ඔබට Chrome සැකසීම් තුළින් දත්ත හිස් කළ හැක</translation> <translation id="8659579665266920523">Chrome සමගින් සොයන ආකාරය</translation> @@ -1433,7 +1432,6 @@ <translation id="867767487203716855">ඊළඟ යාවත්කාලීනය</translation> <translation id="8683039184091909753">රූපය</translation> <translation id="8683081248374354009">සමූහය යළි සකසන්න</translation> -<translation id="8683526617475118045">ඔබට ලැබෙන දේවල්</translation> <translation id="869891660844655955">කල් ඉකුත් වීමේ දිනය:</translation> <translation id="8699120352855309748">මෙම භාෂා පරිවර්තනය කිරීමට පිරිනමන්න එපා</translation> <translation id="8712637175834984815">එය ලැබුණා</translation> @@ -1517,7 +1515,6 @@ <translation id="9148126808321036104">නැවත පිවිසෙන්න</translation> <translation id="9158770349521403363">අන්තර්ගතය පමණක් බෙදා ගන්න</translation> <translation id="9159716826369098114">නව පසුබිම් ටැබ සමූහයක් ලෙස ටැබ <ph name="TAB_COUNT" />ක ටැබ සමූහය ප්රතිසාධනය කරන්න.</translation> -<translation id="916446198114569890">ඔබ පිවිසෙන URL ඔබගේ Google ගිණුමට සුරැකේ</translation> <translation id="9169507124922466868">සංචලන ඉතිහාසය අඩක් විවෘතයි</translation> <translation id="9187955620966010988">ප්රතිචාරය සීරුමාරු කර ඇත</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{මිනිත්තු 1කට පෙර පරීක්ෂා කරන ලදි}one{මිනිත්තු #කට පෙර පරීක්ෂා කරන ලදි}other{මිනිත්තු #කට පෙර පරීක්ෂා කරන ලදි}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_sk.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_sk.xtb index b259a92..68e777d 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_sk.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_sk.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">Neponúkať preklad týchto webov</translation> <translation id="1145536944570833626">Odstrániť existujúce dáta.</translation> <translation id="1146678959555564648">Zadať VR</translation> -<translation id="114825011539563458">Najdôležitejšie ovládanie ochrany súkromia a zabezpečenia na jednom mieste</translation> <translation id="1149401351239820326">Mesiac vypršania platnosti</translation> <translation id="1150263420752757504">Aplikácia <ph name="APP_NAME" /> sa otvorí v Chrome. Pokračovaním vyjadrujete súhlas so <ph name="BEGIN_LINK1" />zmluvnými podmienkami spoločnosti Google<ph name="END_LINK1" /> a <ph name="BEGIN_LINK2" />dodatočnými zmluvnými podmienkami prehliadača Google Chrome a systému Chrome OS<ph name="END_LINK2" />.</translation> <translation id="1154704303112745282">Stránka nie je k dispozícii offline: <ph name="VIOLATED_URL" /></translation> @@ -170,6 +169,7 @@ <translation id="189358972401248634">Ďalšie jazyky</translation> <translation id="1894023287452300670">Tu sledujte cenu</translation> <translation id="1900260903084164610">Pokračovaním vyjadrujete súhlas so <ph name="BEGIN_TOS_LINK" />zmluvnými podmienkami<ph name="END_TOS_LINK" />.</translation> +<translation id="1904580727789512086">Webové adresy, ktoré navštívite, sa uložia do vášho účtu Google</translation> <translation id="1910950723001426294">Zoznam možností zdieľania je zatvorený.</translation> <translation id="1918175104945982129">Používateľské rozhranie na udelenie súhlasu s hlasovým vyhľadávaním Asistentom je otvorené na polovičnú výšku</translation> <translation id="1919130412786645364">Povoliť prihlásenie do Chromu</translation> @@ -194,7 +194,6 @@ <translation id="2000419248597011803">Odošle niektoré súbory cookie a vyhľadávania z panela s adresou a vyhľadávacieho poľa do vášho predvoleného vyhľadávača</translation> <translation id="200114059308480249">Chcete zahŕňať okolitý text vo vyhľadávaniach na Googli?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# súbor}few{# súbory}many{# Files}other{# súborov}}</translation> -<translation id="2020309681647789787">Históriu budete mať vo všetkých synchronizovaných zariadeniach, takže budete môcť pokračovať v tom, čo ste robili</translation> <translation id="2021896219286479412">Ovládanie webu na celú obrazovku</translation> <translation id="2038563949887743358">Zapnutie žiadosti o verziu stránok pre počítače</translation> <translation id="204321170514947529">V Chrome má údaje aj aplikácia <ph name="APP_NAME" />.</translation> @@ -280,7 +279,6 @@ <translation id="2527779675047087889">Skryť obsah schránky</translation> <translation id="2532336938189706096">Webové zobrazenie</translation> <translation id="2534155362429831547">Odstránené položky: <ph name="NUMBER_OF_ITEMS" /></translation> -<translation id="2534582914273493287">Webové adresy, ktoré navštívite, sú odosielané Googlu</translation> <translation id="2536728043171574184">Zobrazuje sa offline kópia tejto stránky</translation> <translation id="2546283357679194313">Súbory cookie a dáta webov</translation> <translation id="2549516196460093976">Pomocou tohto tabletu sa môžete prihlásiť v počítači, v ktorom je zobrazený tento QR kód.</translation> @@ -372,7 +370,6 @@ <translation id="2996291259634659425">Vytvorenie prístupovej frázy</translation> <translation id="2996809686854298943">Vyžaduje sa webová adresa</translation> <translation id="2997081575621687554">Keď nejaký web Google požiada o súkromné prednačítanie odkazov na svojej stránke, Chrome zašifruje a prednačíta stránky prostredníctvom serverov Googlu bez súborov cookie. Tým sa skryje vaša totožnosť pred prednačítavaným webom.</translation> -<translation id="3003733539450769656">Upozorní vás na nebezpečné udalosti ešte predtým, než k nim dôjde</translation> <translation id="3006881078666935414">Žiadne údaje o používaní</translation> <translation id="301080557829842765">Sprievodca ochranou súkromia</translation> <translation id="3016635187733453316">Skontrolujte, či je toto zariadenie pripojené k internetu</translation> @@ -432,6 +429,7 @@ <translation id="3284510035090979597">Proaktívna pomoc</translation> <translation id="3285080554353377245">Videá, ako používať Chrome</translation> <translation id="3288003805934695103">Opätovne načítať stránku</translation> +<translation id="3290249595466894471">Odosiela aj malú vzorku stránok, stiahnutých súborov, aktivity rozšírení a informácií o systéme, čím pomáha zisťovať nové hrozby</translation> <translation id="3297344142967351106">Hlasová pomoc</translation> <translation id="3303414029551471755">Pokračovať a stiahnuť obsah?</translation> <translation id="3334729583274622784">Chcete zmeniť príponu súboru?</translation> @@ -637,7 +635,6 @@ <translation id="4558311620361989323">Skratky pre webové stránky</translation> <translation id="4561730552726921821">Registrácia je úspešná</translation> <translation id="4561979708150884304">Bez pripojenia</translation> -<translation id="4562008740775511591">Chrome poskytuje primerané predvolené nastavenia, ale môžete si ho prispôsobiť, aby čo najviac zodpovedal vašim zvykom pri prehliadaní</translation> <translation id="4565377596337484307">Skryť heslo</translation> <translation id="4572422548854449519">Prihlásenie do spravovaného účtu</translation> <translation id="4576892426230499203">Vyskúšajte inú možnosť overenia</translation> @@ -919,7 +916,6 @@ <translation id="604996488070107836">Súbor <ph name="FILE_NAME" /> sa nepodarilo stiahnuť z dôvodu neznámej chyby.</translation> <translation id="605721222689873409">RR</translation> <translation id="6059830886158432458">Tu ovládajte svoje príbehy aj aktivitu</translation> -<translation id="6069177176307973611">Skontrolovať nastavenia ochrany súkromia a zabezpečenia</translation> <translation id="6070730414166672373">Kontaktuje sa vaša banka\u2026</translation> <translation id="6085886413119427067">Určuje, ako sa pripojiť k webom prostredníctvom zabezpečeného pripojenia</translation> <translation id="6091413777268123602">V rámci skúšobných období technológie Privacy Sandbox môžu weby zobrazovať rovnaké prostredie prehliadania s využitím menšieho množstva vašich údajov. Predstavuje to vyššiu ochranu vášho súkromia a menej sledovania na rôznych weboch. Nové skúšobné obdobia pridáme, keď budú pripravené na testovanie.</translation> @@ -1040,6 +1036,7 @@ <translation id="6641780377503683465">Odstrániť <ph name="INTEREST" /></translation> <translation id="6643016212128521049">Vymazať</translation> <translation id="6645629752388991326">Ovládajte, ktoré zariadenia sa môžu prihlásiť pomocou tohto zariadenia nastaveného ako bezpečnostný kľúč.</translation> +<translation id="6647441008198474441">Webové adresy, ktoré navštevujete, sa odosielajú Googlu, aby mohol vytvárať predpokladané dopyty webov, ktoré pravdepodobne navštívite</translation> <translation id="6648459603387803038">Nastavenia prehliadača môže vzdialene zmeniť správca. Aktivita v tomto zariadení môže byť tiež spravovaná mimo Chromu.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 a <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> ďalší}few{<ph name="CONTACT_PREVIEW" />\u2026 a <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> ďalšie}many{<ph name="CONTACT_PREVIEW" />\u2026 a <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> ďalšieho}other{<ph name="CONTACT_PREVIEW" />\u2026 a <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> ďalších}}</translation> <translation id="6649642165559792194">Zobraziť ukážku obrázka <ph name="BEGIN_NEW" />Novinka<ph name="END_NEW" /></translation> @@ -1047,7 +1044,6 @@ <translation id="6659594942844771486">Karta</translation> <translation id="666731172850799929">Otvoriť v aplikácii <ph name="APP_NAME" /></translation> <translation id="6671495933530132209">Kopírovať obrázok</translation> -<translation id="6674044799624355221">Posiela malú vzorku stránok, stiahnutých súborov, aktivity rozšírení a informácií o systéme, a pomáha tak zisťovať nové hrozby</translation> <translation id="6674571176963658787">Ak chcete spustiť synchronizáciu, zadajte prístupovú frázu</translation> <translation id="6676840375528380067">Chcete vymazať údaje Chromu z tohto zariadenia?</translation> <translation id="6684809838922667136">Zlepšite Chrome</translation> @@ -1069,7 +1065,6 @@ <translation id="6802555630140434547">Okno bude zavreté</translation> <translation id="6811034713472274749">Stránka je pripravená na prezeranie</translation> <translation id="6813446258015311409">Prihlásenie sa do Chromu, otvorené.</translation> -<translation id="6814033694018386318">Čo zdieľate s Googlom</translation> <translation id="6817747507826986771">Skratka na rýchle zdieľanie tejto stránky. Ak ju chcete upraviť, pridržte ju.</translation> <translation id="6819199143469632133">Ak chcete využívať služby Googlu vo viacerých zariadeniach, prihláste sa</translation> <translation id="6820686453637990663">CVC</translation> @@ -1164,6 +1159,7 @@ <translation id="7352939065658542140">VIDEO</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{Zdieľať 1 vybranú položku}few{Zdieľať # vybrané položky}many{Zdieľať # vybranej položky}other{Zdieľať # vybraných položiek}}</translation> <translation id="7359002509206457351">Poskytnúť prístup k spôsobom platby</translation> +<translation id="7363349185727752629">Sprievodca vašimi voľbami ochrany súkromia</translation> <translation id="7375125077091615385">Typ:</translation> <translation id="7376560087009844242">Ak zahrniete viac textu stránky, môžu sa vám zobraziť lepšie výsledky pri používaní vyhľadávania klepnutím. Môžete to kedykoľvek zmeniť v <ph name="BEGIN_LINK" />nastaveniach<ph name="END_LINK" />.</translation> <translation id="7379900596734708416">Pre weby je k dispozícii tmavý motív</translation> @@ -1263,6 +1259,7 @@ <translation id="7876243839304621966">Odstrániť všetko</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{Máte <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> neprečítanú stránku}few{Máte <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> neprečítané stránky}many{Máte <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> neprečítanej stránky}other{Máte <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> neprečítaných stránok}}</translation> <translation id="7886917304091689118">Spustená v Chrome</translation> +<translation id="7887174313503389866">Pozrite si komentovanú prehliadku hlavných ovládacích prvkov ochrany súkromia a zabezpečenia. Ďalšie možnosti nájdete v jednotlivých nastaveniach.</translation> <translation id="7887334752153342268">Duplikovať</translation> <translation id="789763218334337857">Ako používať Chrome</translation> <translation id="7903184275147100332">Môže to chvíľu trvať</translation> @@ -1376,6 +1373,7 @@ <translation id="8445448999790540984">Heslá sa nepodarilo exportovať</translation> <translation id="8446884382197647889">Ďalšie informácie</translation> <translation id="8453310803815879010">Spustiť hru s dinosaurom</translation> +<translation id="8460448946170646641">Skontrolujte hlavné ovládacie prvky ochrany súkromia a zabezpečenia</translation> <translation id="8461694314515752532">Šifrovať synchronizované údaje pomocou vlastnej prístupovej frázy synchronizácie</translation> <translation id="8466613982764129868">Skontrolujte, či je zariadenie <ph name="TARGET_DEVICE_NAME" /> pripojené k internetu</translation> <translation id="8473863474539038330">Adresy a ďalšie údaje</translation> @@ -1421,6 +1419,7 @@ <translation id="8636825310635137004">Ak chcete získať karty zo svojich ostatných zariadení, zapnite synchronizáciu.</translation> <translation id="8641930654639604085">Pokúsiť sa blokovať weby pre dospelých</translation> <translation id="864544049772947936">Spravovať okná (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">Predpovedá nebezpečné udalosti a upozorní vás, než k nim dôjde</translation> <translation id="8646467750715887511">Stránky sa načítavajú až po otvorení.</translation> <translation id="8655129584991699539">Môžete vymazať údaje v Nastaveniach Chromu</translation> <translation id="8659579665266920523">Ako vyhľadávať pomocou Chromu</translation> @@ -1433,7 +1432,6 @@ <translation id="867767487203716855">Ďalšia aktualizácia</translation> <translation id="8683039184091909753">obrázok</translation> <translation id="8683081248374354009">Resetovať skupinu</translation> -<translation id="8683526617475118045">Čo získate</translation> <translation id="869891660844655955">Koniec platnosti</translation> <translation id="8699120352855309748">Neponúkať preklad týchto jazykov</translation> <translation id="8712637175834984815">Dobre</translation> @@ -1517,7 +1515,6 @@ <translation id="9148126808321036104">Znova sa prihlásiť</translation> <translation id="9158770349521403363">Zdieľať iba obsah</translation> <translation id="9159716826369098114">Obnovte skupinu kariet s <ph name="TAB_COUNT" /> kartami ako novú skupinu kariet na pozadí.</translation> -<translation id="916446198114569890">Webové adresy, ktoré navštívite, sa uložia do vášho účtu Google</translation> <translation id="9169507124922466868">História navigácie je dopoly otvorená</translation> <translation id="9187955620966010988">Reakcia bola upravená</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{Kontrola prebehla pred minútou}few{Kontrola prebehla pred # minútami}many{Kontrola prebehla pred # minúty}other{Kontrola prebehla pred # minútami}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_sl.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_sl.xtb index 26ac3f9..02f604d3 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_sl.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_sl.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">Ne ponudi prevajanja teh spletnih mest</translation> <translation id="1145536944570833626">Izbris obstoječih podatkov.</translation> <translation id="1146678959555564648">V navidezno resničnost</translation> -<translation id="114825011539563458">Najpomembnejši kontrolniki za zasebnost in varnost na enem mestu</translation> <translation id="1149401351239820326">Mesec poteka</translation> <translation id="1150263420752757504">Aplikacija <ph name="APP_NAME" /> se bo odprla v Chromu. Če nadaljujete, se strinjate z <ph name="BEGIN_LINK1" />Googlovimi pogoji storitve<ph name="END_LINK1" /> in <ph name="BEGIN_LINK2" />dodatnimi pogoji storitve za Google Chrome in Chrome OS<ph name="END_LINK2" />.</translation> <translation id="1154704303112745282">Stran ni na voljo brez povezave: <ph name="VIOLATED_URL" /></translation> @@ -170,6 +169,7 @@ <translation id="189358972401248634">Drugi jeziki</translation> <translation id="1894023287452300670">Spremljajte ceno tukaj.</translation> <translation id="1900260903084164610">Z nadaljevanjem se strinjate s <ph name="BEGIN_TOS_LINK" />pogoji storitve<ph name="END_TOS_LINK" />.</translation> +<translation id="1904580727789512086">URL-ji, ki jih obiščete, se shranijo v račun Google.</translation> <translation id="1910950723001426294">Seznam možnosti deljenja z drugimi je zaprt.</translation> <translation id="1918175104945982129">Uporabniški vmesnik za soglasje za glasovno iskanje v Pomočniku, odprt pri polovični višini.</translation> <translation id="1919130412786645364">Omogočanje prijave v Chrome</translation> @@ -194,7 +194,6 @@ <translation id="2000419248597011803">Pošilja nekatere piškotke in iskanja iz naslovne vrstice ter iskalnega polja privzetemu iskalniku</translation> <translation id="200114059308480249">Želite vključiti sobesedilo v iskanja v Googlu?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# datoteka}one{# datoteka}two{# datoteki}few{# datoteke}other{# datotek}}</translation> -<translation id="2020309681647789787">Zgodovino si boste lahko ogledali v vseh sinhroniziranih napravah, da boste lahko nadaljevali, kar ste počeli.</translation> <translation id="2021896219286479412">Kontrol. za mesto v celo. načinu</translation> <translation id="2038563949887743358">Vklop možnosti »Zahteva za namizno spletno mesto«</translation> <translation id="204321170514947529">Aplikacija <ph name="APP_NAME" /> ima prav tako podatke v Chromu</translation> @@ -280,7 +279,6 @@ <translation id="2527779675047087889">Skrivanje vsebine odložišča</translation> <translation id="2532336938189706096">Spletni pogled</translation> <translation id="2534155362429831547">Št. izbrisanih elementov: <ph name="NUMBER_OF_ITEMS" /></translation> -<translation id="2534582914273493287">URL-ji, ki jih obiščete, se pošljejo Googlu.</translation> <translation id="2536728043171574184">Ogled kopije te strani za način brez povezave.</translation> <translation id="2546283357679194313">Piškotki in podatki o spletnih mestih</translation> <translation id="2549516196460093976">Ta tablični računalnik lahko uporabite za prijavo v računalniku, v katerem je prikazana ta koda QR.</translation> @@ -372,7 +370,6 @@ <translation id="2996291259634659425">Ustvarjanje gesla</translation> <translation id="2996809686854298943">URL je obvezen</translation> <translation id="2997081575621687554">Ko Googlovo spletno mesto zahteva zasebno vnaprejšnje nalaganje povezav na njegovi strani, Chrome šifrira in vnaprej naloži strani prek Googlovih strežnikov brez piškotkov. S tem je skrita vaša identiteta na vnaprej naloženem mestu.</translation> -<translation id="3003733539450769656">Opozori vas glede nevarnih dogodkov, preden pride do njih.</translation> <translation id="3006881078666935414">Ni podatkov o uporabi</translation> <translation id="301080557829842765">Vodnik po zasebnosti</translation> <translation id="3016635187733453316">Naprava mora biti povezana z internetom</translation> @@ -432,6 +429,7 @@ <translation id="3284510035090979597">Proaktivna pomoč</translation> <translation id="3285080554353377245">Videoposnetki o uporabi Chroma</translation> <translation id="3288003805934695103">znova naložiti stran</translation> +<translation id="3290249595466894471">Prav tako pošlje manjši vzorec strani, prenosov, dejavnosti razširitev in podatkov o sistemu zaradi pomoči pri odkrivanju novih groženj.</translation> <translation id="3297344142967351106">Glasovna pomoč</translation> <translation id="3303414029551471755">Ali želite prenesti vsebino?</translation> <translation id="3334729583274622784">Želite spremeniti pripono datoteke?</translation> @@ -637,7 +635,6 @@ <translation id="4558311620361989323">Bližnjice za spletne strani</translation> <translation id="4561730552726921821">Registracija je uspela</translation> <translation id="4561979708150884304">Ni povezave</translation> -<translation id="4562008740775511591">Chrome zagotavlja smiselne privzete nastavitve, vendar jih lahko prilagodite, da se čim bolj ujemajo z vašimi brskalnimi navadami.</translation> <translation id="4565377596337484307">Skrij geslo</translation> <translation id="4572422548854449519">Prijava v upravljani račun</translation> <translation id="4576892426230499203">Poskusite drugo možnost preverjanja.</translation> @@ -919,7 +916,6 @@ <translation id="604996488070107836">Prenos datoteke <ph name="FILE_NAME" /> ni uspel zaradi neznane napake.</translation> <translation id="605721222689873409">LL</translation> <translation id="6059830886158432458">Nadzirajte članke in dejavnost tukaj</translation> -<translation id="6069177176307973611">Preglejte nastavitve zasebnosti in varnosti.</translation> <translation id="6070730414166672373">Vzpostavljanje stika z banko …</translation> <translation id="6085886413119427067">Določa, kako vzpostaviti povezavo s spletnimi mesti prek varne povezave</translation> <translation id="6091413777268123602">V okviru preizkusov Zasebnega peskovnika lahko spletna mesta zagotovijo enako izkušnjo brskanja, pri tem pa uporabljajo manj vaših podatkov. Tako vam zagotavljajo več zasebnosti in zmanjšajo sledenje na več spletnih mestih. Nove preizkuse bomo dodajali, ko bodo na voljo za uporabo.</translation> @@ -1040,6 +1036,7 @@ <translation id="6641780377503683465">Odstranitev: <ph name="INTEREST" /></translation> <translation id="6643016212128521049">Izbriši</translation> <translation id="6645629752388991326">Nadzirajte, katere naprave se lahko prijavo s to napravo kot varnostnim ključem.</translation> +<translation id="6647441008198474441">URL-ji, ki jih obiščete, se pošljejo Googlu zaradi predvidevanja, katera spletna mesta boste morda obiskali.</translation> <translation id="6648459603387803038">Skrbnik lahko spremeni nastavitev brskalnika na daljavo. Dejavnost v tej napravi morda tudi upravljajo zunaj Chroma.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" /> \u2026 in še <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}one{<ph name="CONTACT_PREVIEW" /> \u2026 in še <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}two{<ph name="CONTACT_PREVIEW" /> \u2026 in še <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}few{<ph name="CONTACT_PREVIEW" /> \u2026 in še <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}other{<ph name="CONTACT_PREVIEW" /> \u2026 in še <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}}</translation> <translation id="6649642165559792194">Predogled slike <ph name="BEGIN_NEW" />Novo<ph name="END_NEW" /></translation> @@ -1047,7 +1044,6 @@ <translation id="6659594942844771486">Zavihek</translation> <translation id="666731172850799929">Odpri v: <ph name="APP_NAME" /></translation> <translation id="6671495933530132209">Kopiraj sliko</translation> -<translation id="6674044799624355221">Pošlje manjši vzorec strani, prenosov, dejavnosti razširitev in podatkov o sistemu zaradi pomoči pri odkrivanju novih groženj.</translation> <translation id="6674571176963658787">Če želite začeti sinhronizacijo, vnesite geslo.</translation> <translation id="6676840375528380067">Ali želite izbrisati podatke v Chromu iz te naprave?</translation> <translation id="6684809838922667136">Izboljšajte Chrome</translation> @@ -1069,7 +1065,6 @@ <translation id="6802555630140434547">Okno bo zaprto.</translation> <translation id="6811034713472274749">Stran je pripravljena za ogled</translation> <translation id="6813446258015311409">Prijava v Chrome, odprto.</translation> -<translation id="6814033694018386318">Kaj delite z Googlom</translation> <translation id="6817747507826986771">Hitro delite to stran. Če želite urediti to bližnjico, pridržite.</translation> <translation id="6819199143469632133">Če želite imeti Googlove stvari v svojih napravah, se prijavite.</translation> <translation id="6820686453637990663">CVC</translation> @@ -1164,6 +1159,7 @@ <translation id="7352939065658542140">VIDEOPOSNETEK</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{Delitev 1 izbranega elementa z drugimi}one{Delitev # izbranega elementa z drugimi}two{Delitev # izbranih elementov z drugimi}few{Delitev # izbranih elementov z drugimi}other{Delitev # izbranih elementov z drugimi}}</translation> <translation id="7359002509206457351">Dostop do plačilnih sredstev</translation> +<translation id="7363349185727752629">Vodnik po vaših izbirah zasebnosti</translation> <translation id="7375125077091615385">Vrsta:</translation> <translation id="7376560087009844242">Če vključite več besedila na strani, bodo morda prikazani boljši rezultati, ko uporabljate dotikanje za iskanje. To lahko kadar koli spremenite v <ph name="BEGIN_LINK" />nastavitvah<ph name="END_LINK" />.</translation> <translation id="7379900596734708416">Temna tema za spletna mesta je na voljo</translation> @@ -1263,6 +1259,7 @@ <translation id="7876243839304621966">Odstrani vse</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{Imate <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> neprebrano stran.}one{Imate <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> neprebrano stran.}two{Imate <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> neprebrani strani.}few{Imate <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> neprebrane strani.}other{Imate <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> neprebranih strani.}}</translation> <translation id="7886917304091689118">Izvaja se v Chromu</translation> +<translation id="7887174313503389866">Oglejte si vodeno predstavitev ključnih kontrolnikov zasebnosti in varnosti. Če želite več možnosti, odprite posamezne nastavitve.</translation> <translation id="7887334752153342268">Podvoji</translation> <translation id="789763218334337857">Uporaba Google Chroma</translation> <translation id="7903184275147100332">To lahko traja kakšno minuto</translation> @@ -1376,6 +1373,7 @@ <translation id="8445448999790540984">Gesel ni mogoče izvoziti</translation> <translation id="8446884382197647889">Več o tem</translation> <translation id="8453310803815879010">Začni igro Dino</translation> +<translation id="8460448946170646641">Pregled ključnih kontrolnikov varnosti in zasebnosti</translation> <translation id="8461694314515752532">Šifriranje sinhroniziranih podatkov z vašim geslom za sinhronizacijo</translation> <translation id="8466613982764129868">Naprava <ph name="TARGET_DEVICE_NAME" /> mora biti povezana v internet</translation> <translation id="8473863474539038330">Naslovi in drugo</translation> @@ -1421,6 +1419,7 @@ <translation id="8636825310635137004">Če želite dostopati do zavihkov iz drugih naprav, vklopite sinhronizacijo.</translation> <translation id="8641930654639604085">Poskusi blokirati spletna mesta za odrasle</translation> <translation id="864544049772947936">Upravljanje oken (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">Predvideva nevarne dogodke, preden se zgodijo, in vas opozarja nanje</translation> <translation id="8646467750715887511">Strani se naložijo samo, ko jih odprete.</translation> <translation id="8655129584991699539">Podatke lahko izbrišete v Chromovih nastavitvah</translation> <translation id="8659579665266920523">Kako iskati s Chromom</translation> @@ -1433,7 +1432,6 @@ <translation id="867767487203716855">Naslednja posodobitev</translation> <translation id="8683039184091909753">slika</translation> <translation id="8683081248374354009">Ponastavi skupino</translation> -<translation id="8683526617475118045">Kaj ponuja</translation> <translation id="869891660844655955">Datum izteka</translation> <translation id="8699120352855309748">Ne ponudi prevajanja teh jezikov</translation> <translation id="8712637175834984815">Razumem</translation> @@ -1517,7 +1515,6 @@ <translation id="9148126808321036104">Prijavite se znova</translation> <translation id="9158770349521403363">Deli samo vsebino</translation> <translation id="9159716826369098114">Obnovitev skupine zavihkov (št. zavihkov: <ph name="TAB_COUNT" />) kot nove skupine zavihkov v ozadju.</translation> -<translation id="916446198114569890">URL-ji, ki jih obiščete, se shranijo v račun Google.</translation> <translation id="9169507124922466868">Zgodovina krmarjenja je napol odprta</translation> <translation id="9187955620966010988">Odziv je prilagojen</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{Preverjeno pred 1 minuto}one{Preverjeno pred # minuto}two{Preverjeno pred # minutama}few{Preverjeno pred # minutami}other{Preverjeno pred # minutami}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_sq.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_sq.xtb index 9f60c2d..f47d06a 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_sq.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_sq.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">Mos ofro t'i përkthesh këto sajte</translation> <translation id="1145536944570833626">Fshi të dhënat ekzistuese.</translation> <translation id="1146678959555564648">Hyr në VR</translation> -<translation id="114825011539563458">Kontrollet më të rëndësishme të privatësisë dhe sigurisë në një vend</translation> <translation id="1149401351239820326">Muaji i skadimit</translation> <translation id="1150263420752757504"><ph name="APP_NAME" /> do të hapet në Chrome. Duke vazhduar, ti pranon <ph name="BEGIN_LINK1" />"Kushtet e shërbimit" të Google<ph name="END_LINK1" /> dhe <ph name="BEGIN_LINK2" />"Kushtet shtesë të shërbimit" të Google Chrome dhe të ChromeOS<ph name="END_LINK2" />.</translation> <translation id="1154704303112745282">Faqja nuk ofrohet jashtë linje: <ph name="VIOLATED_URL" /></translation> @@ -108,6 +107,7 @@ <translation id="1488775391433859242">Mund ta përdorësh këtë telefon për t'u identifikuar në kompjuterin që po shfaq këtë kod QR.</translation> <translation id="1492417797159476138">E ke ruajtur tashmë këtë emër përdoruesi për këtë sajt</translation> <translation id="1493287004536771723">Po ndjek <ph name="SITE_NAME" /></translation> +<translation id="1502010315804028179">Për të menaxhuar fjalëkalimet e tua, përditëso shërbimet e Google Play</translation> <translation id="1506061864768559482">Motori i kërkimit</translation> <translation id="1513352483775369820">Faqeshënuesit dhe historiku i uebit</translation> <translation id="1513814250881909472">Sinkronizoje për të marrë skedat nga pajisjet e tua të tjera</translation> @@ -169,6 +169,7 @@ <translation id="189358972401248634">Gjuhë të tjera</translation> <translation id="1894023287452300670">Monitoro çmimin këtu</translation> <translation id="1900260903084164610">Duke vazhduar, ti pranon <ph name="BEGIN_TOS_LINK" />Kushtet e shërbimit<ph name="END_TOS_LINK" />.</translation> +<translation id="1904580727789512086">URL-të që viziton ruhen në "Llogarinë tënde të Google"</translation> <translation id="1910950723001426294">Lista e opsioneve të shpërndarjes është e mbyllur.</translation> <translation id="1918175104945982129">Ndërfaqja e përdoruesit e miratimit të kërkimit zanor të "Asistentit" e hapur në gjysmë lartësi</translation> <translation id="1919130412786645364">Lejo identifikimin në Chrome</translation> @@ -193,7 +194,6 @@ <translation id="2000419248597011803">Dërgon disa kuki dhe kërkime nga shiriti i adresës dhe kutia e kërkimit te motori yt i parazgjedhur i kërkimit</translation> <translation id="200114059308480249">Të përfshihet teksti përreth në kërkimet e Google?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# skedar}other{# skedarë}}</translation> -<translation id="2020309681647789787">Do të kesh historikun në të gjitha pajisjet e sinkronizuara, në mënyrë që të vazhdosh atë që po bëje</translation> <translation id="2021896219286479412">Kontrollet e sajtit në ekranin e plotë</translation> <translation id="2038563949887743358">Aktivizo "Kërko sajtin për desktop"</translation> <translation id="204321170514947529"><ph name="APP_NAME" /> ka gjithashtu të dhëna në Chrome</translation> @@ -279,7 +279,6 @@ <translation id="2527779675047087889">Fshih përmbajtjet e kujtesës së fragmenteve</translation> <translation id="2532336938189706096">Pamja e uebit</translation> <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> artikuj të fshirë</translation> -<translation id="2534582914273493287">URL-të që viziton dërgohen te Google</translation> <translation id="2536728043171574184">Po shikon një kopje jashtë linje të kësaj faqeje</translation> <translation id="2546283357679194313">Kukit dhe të dhënat e faqes</translation> <translation id="2549516196460093976">Mund ta përdorësh këtë tablet për t'u identifikuar në kompjuterin që po shfaq këtë kod QR.</translation> @@ -371,7 +370,6 @@ <translation id="2996291259634659425">Krijo një frazë kalimi</translation> <translation id="2996809686854298943">URL-ja e detyrueshme</translation> <translation id="2997081575621687554">Kur një sajt i Google kërkon të ngarkojë paraprakisht lidhje në mënyrë private në faqen e tij, Chrome i enkripton dhe i ngarkon paraprakisht faqet nëpërmjet serverëve të Google pa kuki. Kjo e fsheh identitetin tënd nga sajti i ngarkuar paraprakisht.</translation> -<translation id="3003733539450769656">Të paralajmëron rreth ngjarjeve të rrezikshme përpara se ato të ndodhin</translation> <translation id="3006881078666935414">Nuk ka asnjë të dhënë përdorimi</translation> <translation id="301080557829842765">Udhëzuesi i privatësisë</translation> <translation id="3016635187733453316">Sigurohu që kjo pajisje të jetë e lidhur me internetin</translation> @@ -431,6 +429,7 @@ <translation id="3284510035090979597">Ndihmë proaktive</translation> <translation id="3285080554353377245">Video rreth mënyrës se si të përdorësh Chrome</translation> <translation id="3288003805934695103">Të ringarkosh faqen</translation> +<translation id="3290249595466894471">Dërgon gjithashtu një shembull të vogël të faqeve, shkarkimeve, aktivitetit të shtesave dhe informacioneve të sistemit për të ndihmuar në zbulimin e kërcënimeve të reja</translation> <translation id="3297344142967351106">Ndihma zanore</translation> <translation id="3303414029551471755">Të vazhdohet me shkarkimin e përmbajtjes?</translation> <translation id="3334729583274622784">Do ta ndryshosh prapashtesën e skedarit?</translation> @@ -636,7 +635,6 @@ <translation id="4558311620361989323">Shkurtoret e faqes së uebit</translation> <translation id="4561730552726921821">Regjistrimi ishte i suksesshëm</translation> <translation id="4561979708150884304">Nuk ka lidhje</translation> -<translation id="4562008740775511591">Chrome ofron parazgjedhje të arsyeshme, por mund ta personalizosh për t'u përputhur më mirë me zakonet e tua të shfletimit</translation> <translation id="4565377596337484307">Fshih fjalëkalimin</translation> <translation id="4572422548854449519">Identifikohu në llogarinë e menaxhuar</translation> <translation id="4576892426230499203">Provo një opsion tjetër verifikimi</translation> @@ -918,7 +916,6 @@ <translation id="604996488070107836">Shkarkimi i <ph name="FILE_NAME" /> dështoi për shkak të një gabimi të panjohur.</translation> <translation id="605721222689873409">VV</translation> <translation id="6059830886158432458">Kontrollo historitë dhe aktivitetin tënd këtu</translation> -<translation id="6069177176307973611">Rishiko cilësimet e privatësisë dhe të sigurisë</translation> <translation id="6070730414166672373">Po kontakton bankën tënde\u2026</translation> <translation id="6085886413119427067">Përcakton mënyrën e lidhjes me sajtet e uebit nëpërmjet një lidhjeje të sigurt</translation> <translation id="6091413777268123602">Me provat e Privacy Sandbox, sajtet mund të ofrojnë të njëjtën përvojë shfletimi duke përdorur më pak nga të dhënat e tua. Kjo nënkupton më shumë privatësi për ty dhe më pak gjurmim nëpër sajte. Do të shtojmë prova të reja sapo ato të jenë gati për testim.</translation> @@ -1039,6 +1036,7 @@ <translation id="6641780377503683465">Hiq <ph name="INTEREST" /></translation> <translation id="6643016212128521049">Pastro</translation> <translation id="6645629752388991326">Kontrollo se cilat pajisje mund të identifikohen duke përdorur këtë pajisje si çelës sigurie.</translation> +<translation id="6647441008198474441">URL-të që viziton dërgohen te Google për të parashikuar sajtet që mund të vizitosh në vijim</translation> <translation id="6648459603387803038">Administratori yt mund të ndryshojë konfigurimin e shfletuesit në distancë. Aktiviteti në këtë pajisje mund të menaxhohet edhe jashtë Chrome.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 dhe <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> tjetër}other{<ph name="CONTACT_PREVIEW" />\u2026 dhe <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> të tjera}}</translation> <translation id="6649642165559792194">Paraafisho imazhin <ph name="BEGIN_NEW" />E re<ph name="END_NEW" /></translation> @@ -1046,7 +1044,6 @@ <translation id="6659594942844771486">Skeda</translation> <translation id="666731172850799929">Hape në <ph name="APP_NAME" /></translation> <translation id="6671495933530132209">Kopjo imazhin</translation> -<translation id="6674044799624355221">Dërgon një shembull të vogël të faqeve, shkarkimeve, aktivitetit të shtesave dhe informacionit të sistemit për të ndihmuar në zbulimin e kërcënimeve të reja</translation> <translation id="6674571176963658787">Për të nisur sinkronizimin, fut frazën e kalimit</translation> <translation id="6676840375528380067">Të pastrohen të dhënat e tua të Chrome nga kjo pajisje?</translation> <translation id="6684809838922667136">Bëje Chrome më të mirë</translation> @@ -1068,7 +1065,6 @@ <translation id="6802555630140434547">Dritarja do të mbyllet</translation> <translation id="6811034713472274749">Faqja është gati për ta shikuar</translation> <translation id="6813446258015311409">"Identifikohu në Chrome", i hapur.</translation> -<translation id="6814033694018386318">Çfarë ndan me Google</translation> <translation id="6817747507826986771">Ndaje me shpejtësi këtë faqe. Për ta modifikuar këtë shkurtore, preke dhe mbaje të prekur.</translation> <translation id="6819199143469632133">Identifikohu për të marrë gjërat e Google në pajisje të ndryshme</translation> <translation id="6820686453637990663">CVC</translation> @@ -1163,6 +1159,7 @@ <translation id="7352939065658542140">VIDEO</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{Ndaj 1 artikull të zgjedhur}other{Ndaj # artikuj të zgjedhur}}</translation> <translation id="7359002509206457351">Qasu te mënyrat e pagesës</translation> +<translation id="7363349185727752629">Udhëzues për zgjedhjet e tua të privatësisë</translation> <translation id="7375125077091615385">Shkruaj:</translation> <translation id="7376560087009844242">Duke përfshirë më shumë nga teksti i një faqeje, mund të shikosh rezultate më të mira kur përdor "Prek për të kërkuar". Mund të vizitosh gjithmonë <ph name="BEGIN_LINK" />cilësimet<ph name="END_LINK" /> për ta ndryshuar këtë.</translation> <translation id="7379900596734708416">Ofrohet "Tema e errët" për sajtet</translation> @@ -1262,6 +1259,7 @@ <translation id="7876243839304621966">Hiqi të gjitha</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{Ke <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> faqe të palexuar}other{Ke <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> faqe të palexuara}}</translation> <translation id="7886917304091689118">Po ekzekutohet në Chrome</translation> +<translation id="7887174313503389866">Bëj një turne udhëzues për kontrollet kryesore të privatësisë dhe sigurisë. Për më shumë opsione, shko te cilësimet individuale.</translation> <translation id="7887334752153342268">Dublikatë</translation> <translation id="789763218334337857">Si ta përdorësh Chrome</translation> <translation id="7903184275147100332">Kjo mund të zgjasë një minutë</translation> @@ -1375,6 +1373,7 @@ <translation id="8445448999790540984">Fjalëkalimet nuk mund të eksportohen</translation> <translation id="8446884382197647889">Mëso më shumë</translation> <translation id="8453310803815879010">Fillo lojën Dino</translation> +<translation id="8460448946170646641">Shqyrto kontrollet kryesore të privatësisë dhe sigurisë</translation> <translation id="8461694314515752532">Enkripto të dhënat e sinkronizuara me frazën tënde të kalimit për sinkronizimin</translation> <translation id="8466613982764129868">Sigurohu që <ph name="TARGET_DEVICE_NAME" /> të jetë lidhur me internetin</translation> <translation id="8473863474539038330">Adresat dhe të tjera</translation> @@ -1420,6 +1419,7 @@ <translation id="8636825310635137004">Për të marrë skedat e tua nga pajisjet e tjera, aktivizo sinkronizimin.</translation> <translation id="8641930654639604085">Përpiqu të bllokosh sajtet për të rriturit</translation> <translation id="864544049772947936">Menaxho dritaret (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">Parashikon dhe të paralajmëron rreth ngjarjeve të rrezikshme përpara se ato të ndodhin</translation> <translation id="8646467750715887511">Faqet ngarkohen vetëm kur i hap.</translation> <translation id="8655129584991699539">Mund t'i pastrosh të dhënat në "Cilësimet" e Chrome</translation> <translation id="8659579665266920523">Si të kërkosh me Chrome</translation> @@ -1432,7 +1432,6 @@ <translation id="867767487203716855">Përditësimi tjetër</translation> <translation id="8683039184091909753">imazhi</translation> <translation id="8683081248374354009">Rivendos grupin</translation> -<translation id="8683526617475118045">Çfarë përfiton</translation> <translation id="869891660844655955">Data e skadimit</translation> <translation id="8699120352855309748">Mos ofro t'i përkthesh këto gjuhë</translation> <translation id="8712637175834984815">E kuptova</translation> @@ -1516,7 +1515,6 @@ <translation id="9148126808321036104">Identifikohu sërish</translation> <translation id="9158770349521403363">Ndaj vetëm përmbajtjen</translation> <translation id="9159716826369098114">Restauro grupin e skedave me <ph name="TAB_COUNT" /> skeda si një grup të ri të skedave në sfond.</translation> -<translation id="916446198114569890">URL-të që viziton ruhen në llogarinë tënde të Google</translation> <translation id="9169507124922466868">Historiku i navigimit është gjysmë i hapur</translation> <translation id="9187955620966010988">Reagimi u rregullua</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{Kontrolluar 1 minutë më parë}other{Kontrolluar # minuta më parë}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_sr-Latn.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_sr-Latn.xtb index 8b99d817b..69b00206 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_sr-Latn.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_sr-Latn.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">Ne nudi prevod ovih sajtova</translation> <translation id="1145536944570833626">Izbrišite postojeće podatke</translation> <translation id="1146678959555564648">Uđi u VR</translation> -<translation id="114825011539563458">Najvažnije kontrole privatnosti i bezbednosti na jednom mestu</translation> <translation id="1149401351239820326">Mesec isteka</translation> <translation id="1150263420752757504"><ph name="APP_NAME" /> će se otvoriti u Chrome-u. Ako nastavite, prihvatate <ph name="BEGIN_LINK1" />Google uslove korišćenja usluge<ph name="END_LINK1" /> i <ph name="BEGIN_LINK2" />dodatne uslove korišćenja usluge za Google Chrome i Chrome OS<ph name="END_LINK2" />.</translation> <translation id="1154704303112745282">Stranica nije dostupna oflajn: <ph name="VIOLATED_URL" /></translation> @@ -170,6 +169,7 @@ <translation id="189358972401248634">Drugi jezici</translation> <translation id="1894023287452300670">Pratite cenu ovde</translation> <translation id="1900260903084164610">Ako nastavite, prihvatate <ph name="BEGIN_TOS_LINK" />Uslove korišćenja usluge<ph name="END_TOS_LINK" />.</translation> +<translation id="1904580727789512086">URL-ovi koje posećujete se čuvaju na Google nalogu</translation> <translation id="1910950723001426294">Lista opcija za deljenje je zatvorena.</translation> <translation id="1918175104945982129">Korisnički interfejs za saglasnost za glasovnu pretragu Pomoćnika otvoren je do polovine ekrana</translation> <translation id="1919130412786645364">Dozvoli prijavljivanje u Chrome</translation> @@ -194,7 +194,6 @@ <translation id="2000419248597011803">Podrazumevanom pretraživaču šalje neke kolačiće i pretrage iz trake za adresu i okvira za pretragu</translation> <translation id="200114059308480249">Želite da uvrstite okolni tekst u Google pretrage?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# datoteka}one{# datoteka}few{# datoteke}other{# datoteka}}</translation> -<translation id="2020309681647789787">Imaćete istoriju na svim sinhronizovanim uređajima, pa možete da nastavite ono što ste radili</translation> <translation id="2021896219286479412">Kontrole sajta na celom ekranu</translation> <translation id="2038563949887743358">Uključi zahtevanje verzije sajta za računare</translation> <translation id="204321170514947529"><ph name="APP_NAME" /> takođe ima podatke u Chrome-u</translation> @@ -280,7 +279,6 @@ <translation id="2527779675047087889">Sakrij sadržaj privremene memorije</translation> <translation id="2532336938189706096">Veb-prikaz</translation> <translation id="2534155362429831547">Izbrisanih stavki: <ph name="NUMBER_OF_ITEMS" /></translation> -<translation id="2534582914273493287">URL-ovi koje posećujete se šalju Google-u</translation> <translation id="2536728043171574184">Pregledate oflajn kopiju ove stranice</translation> <translation id="2546283357679194313">Kolačići i podaci o sajtovima</translation> <translation id="2549516196460093976">Možete da koristite ovaj tablet da biste se prijavili na računaru koji prikazuje ovaj QR kôd.</translation> @@ -372,7 +370,6 @@ <translation id="2996291259634659425">Napravite pristupnu frazu</translation> <translation id="2996809686854298943">URL je obavezan</translation> <translation id="2997081575621687554">Kada Google sajt zatraži da privatno predučitava linkove na stranici, Chrome šifruje i predučitava stranice preko Google servera bez kolačića. Na taj način se vaš identitet krije od predučitanog sajta.</translation> -<translation id="3003733539450769656">Upozorava vas na opasne događaje pre nego što se dogode</translation> <translation id="3006881078666935414">Nema podataka o korišćenju</translation> <translation id="301080557829842765">Vodič za privatnost</translation> <translation id="3016635187733453316">Uverite se da je uređaj povezan na internet</translation> @@ -432,6 +429,7 @@ <translation id="3284510035090979597">Proaktivna pomoć</translation> <translation id="3285080554353377245">Video snimci o tome kako da koristite Chrome</translation> <translation id="3288003805934695103">da ponovo učitate stranicu</translation> +<translation id="3290249595466894471">Šalje i mali uzorak stranica, preuzimanja, aktivnosti dodataka i informacija sistema da bi se otkrile nove pretnje</translation> <translation id="3297344142967351106">Glasovna pomoć</translation> <translation id="3303414029551471755">Želite li da nastavite sa preuzimanjem sadržaja?</translation> <translation id="3334729583274622784">Želite da promenite ekstenziju datoteke?</translation> @@ -637,7 +635,6 @@ <translation id="4558311620361989323">Prečice za veb-stranice</translation> <translation id="4561730552726921821">Registracija je uspela</translation> <translation id="4561979708150884304">Veza nije uspostavljena</translation> -<translation id="4562008740775511591">Chrome pruža prihvatljive podrazumevane vrednosti, ali možete i da ih prilagodite u skladu sa svojim navikama pri pregledanju</translation> <translation id="4565377596337484307">Sakrij lozinku</translation> <translation id="4572422548854449519">Prijavite se na nalog kojim se upravlja</translation> <translation id="4576892426230499203">Probajte drugu opciju za verifikaciju</translation> @@ -919,7 +916,6 @@ <translation id="604996488070107836">Preuzimanje datoteke <ph name="FILE_NAME" /> nije uspelo zbog nepoznate greške.</translation> <translation id="605721222689873409">GG</translation> <translation id="6059830886158432458">Ovde kontrolišite priče i aktivnosti</translation> -<translation id="6069177176307973611">Pregledajte podešavanja privatnosti i bezbednosti</translation> <translation id="6070730414166672373">Obraćamo se banci\u2026</translation> <translation id="6085886413119427067">Određuje kako da se poveže sa veb-sajtovima preko bezbedne veze</translation> <translation id="6091413777268123602">Uz probe Zaštićenog okruženja privatnosti sajtovi mogu da pruže isti doživljaj pregledanja koristeći manje podataka. To znači više privatnosti za vas i manje praćenja na više sajtova. Dodaćemo nove probe kada postanu dostupne za testiranje.</translation> @@ -1040,6 +1036,7 @@ <translation id="6641780377503683465">Uklonite: <ph name="INTEREST" /></translation> <translation id="6643016212128521049">Obriši</translation> <translation id="6645629752388991326">Kontrolišite koji uređaji mogu da se prijavljuju tako što ćete koristiti ovaj uređaj kao bezbednosni ključ.</translation> +<translation id="6647441008198474441">URL-ovi koje posećujete se šalju Google-u da bi se predvideli sajtovi koje ćete možda sledeće posetiti</translation> <translation id="6648459603387803038">Administrator može daljinski da promeni podešavanje pregledača. Aktivnostima na ovom uređaju može da se upravlja i van Chrome-a.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 i još <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}one{<ph name="CONTACT_PREVIEW" />\u2026 i još <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}few{<ph name="CONTACT_PREVIEW" />\u2026 i još <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}other{<ph name="CONTACT_PREVIEW" />\u2026 i još <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}}</translation> <translation id="6649642165559792194">Prikaži sliku <ph name="BEGIN_NEW" />Novo<ph name="END_NEW" /></translation> @@ -1047,7 +1044,6 @@ <translation id="6659594942844771486">Kartica</translation> <translation id="666731172850799929">Otvori u <ph name="APP_NAME" /></translation> <translation id="6671495933530132209">Kopiraj sliku</translation> -<translation id="6674044799624355221">Šalje mali uzorak stranica, preuzimanja, aktivnosti dodataka i informacija sistema da bi se otkrile nove pretnje</translation> <translation id="6674571176963658787">Da biste pokrenuli sinhronizaciju, unesite pristupnu frazu</translation> <translation id="6676840375528380067">Želite li da obrišete Chrome podatke sa ovog uređaja?</translation> <translation id="6684809838922667136">Poboljšajte Chrome</translation> @@ -1069,7 +1065,6 @@ <translation id="6802555630140434547">Prozor će biti zatvoren</translation> <translation id="6811034713472274749">Stranica je spremna za pregled</translation> <translation id="6813446258015311409">Prijavljivanje u Chrome, otvoreno.</translation> -<translation id="6814033694018386318">Šta delite sa Google-om</translation> <translation id="6817747507826986771">Brzo delite ovu stranicu. Da biste izmenili ovu prečicu, dodirnite i zadržite.</translation> <translation id="6819199143469632133">Prijavite se da biste sinhronizovali Google sadržaj na svim uređajima</translation> <translation id="6820686453637990663">CVC</translation> @@ -1164,6 +1159,7 @@ <translation id="7352939065658542140">VIDEO</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{Deli 1 izabranu stavku}one{Deli # izabranu stavku}few{Deli # izabrane stavke}other{Deli # izabranih stavki}}</translation> <translation id="7359002509206457351">Pristup načinima plaćanja</translation> +<translation id="7363349185727752629">Vodič za izbore u vezi sa privatnošću</translation> <translation id="7375125077091615385">Tip:</translation> <translation id="7376560087009844242">Ako uvrstite veći deo teksta stranice, možete da dobijete bolje rezultate kada koristite Dodirnuti za pretragu. Uvek možete da posetite <ph name="BEGIN_LINK" />podešavanja<ph name="END_LINK" /> da to promenite.</translation> <translation id="7379900596734708416">Tamna tema za sajtove je dostupna</translation> @@ -1263,6 +1259,7 @@ <translation id="7876243839304621966">Ukloni sve</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{Imate <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> nepročitanu stranicu}one{Imate <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> nepročitanu stranicu}few{Imate <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> nepročitane stranice}other{Imate <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> nepročitanih stranica}}</translation> <translation id="7886917304091689118">Pokrenuto je u Chrome-u</translation> +<translation id="7887174313503389866">Krenite u obilazak ključnih kontrola privatnosti i bezbednosti. Više opcija potražite u pojedinačnim podešavanjima.</translation> <translation id="7887334752153342268">Napravi duplikat</translation> <translation id="789763218334337857">Kako da koristite Chrome</translation> <translation id="7903184275147100332">Ovo će možda malo potrajati</translation> @@ -1376,6 +1373,7 @@ <translation id="8445448999790540984">Izvoz lozinki nije uspeo</translation> <translation id="8446884382197647889">Saznajte više</translation> <translation id="8453310803815879010">Započnite igru sa dinosaurusom</translation> +<translation id="8460448946170646641">Pregledajte ključne kontrole privatnosti i bezbednosti</translation> <translation id="8461694314515752532">Šifrujte sinhronizovane podatke pomoću sopstvene pristupne fraze za sinhronizaciju</translation> <translation id="8466613982764129868">Uverite se da je <ph name="TARGET_DEVICE_NAME" /> povezan na internet</translation> <translation id="8473863474539038330">Adrese i drugo</translation> @@ -1421,6 +1419,7 @@ <translation id="8636825310635137004">Da bi vam kartice bile dostupne na drugim uređajima, uključite sinhronizaciju.</translation> <translation id="8641930654639604085">Pokušaj da blokiraš sajtove sa sadržajem za odrasle</translation> <translation id="864544049772947936">Upravljajte prozorima (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">Otkriva opasne događaje pre nego što se dogode i upozorava vas na njih</translation> <translation id="8646467750715887511">Stranice se učitavaju tek kada ih otvorite.</translation> <translation id="8655129584991699539">Možete da obrišete podatke u Chrome podešavanjima</translation> <translation id="8659579665266920523">Kako da pretražujete pomoću Chrome-a</translation> @@ -1433,7 +1432,6 @@ <translation id="867767487203716855">Sledeće ažuriranje</translation> <translation id="8683039184091909753">slika</translation> <translation id="8683081248374354009">Resetuj grupu</translation> -<translation id="8683526617475118045">Šta dobijate</translation> <translation id="869891660844655955">Datum isteka</translation> <translation id="8699120352855309748">Ne nudi prevod ovih jezika</translation> <translation id="8712637175834984815">Važi</translation> @@ -1517,7 +1515,6 @@ <translation id="9148126808321036104">Prijavi me ponovo</translation> <translation id="9158770349521403363">Delite samo sadržaj</translation> <translation id="9159716826369098114">Vratite grupu kartica (<ph name="TAB_COUNT" />) kao novu grupu kartica u pozadini.</translation> -<translation id="916446198114569890">URL-ovi koje posećujete se čuvaju na Google nalogu</translation> <translation id="9169507124922466868">Istorija navigacije je poluotvorena</translation> <translation id="9187955620966010988">Reakcija je prilagođena</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{Provereno pre 1 minut}one{Provereno pre # minut}few{Provereno pre # minuta}other{Provereno pre # minuta}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_sr.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_sr.xtb index e02d977d..3aecee4 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_sr.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_sr.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">Не нуди превод ових сајтова</translation> <translation id="1145536944570833626">Избришите постојеће податке</translation> <translation id="1146678959555564648">Уђи у ВР</translation> -<translation id="114825011539563458">Најважније контроле приватности и безбедности на једном месту</translation> <translation id="1149401351239820326">Месец истека</translation> <translation id="1150263420752757504"><ph name="APP_NAME" /> ће се отворити у Chrome-у. Ако наставите, прихватате <ph name="BEGIN_LINK1" />Google услове коришћења услуге<ph name="END_LINK1" /> и <ph name="BEGIN_LINK2" />додатне услове коришћења услуге за Google Chrome и Chrome ОС<ph name="END_LINK2" />.</translation> <translation id="1154704303112745282">Страница није доступна офлајн: <ph name="VIOLATED_URL" /></translation> @@ -170,6 +169,7 @@ <translation id="189358972401248634">Други језици</translation> <translation id="1894023287452300670">Пратите цену овде</translation> <translation id="1900260903084164610">Ако наставите, прихватате <ph name="BEGIN_TOS_LINK" />Услове коришћења услуге<ph name="END_TOS_LINK" />.</translation> +<translation id="1904580727789512086">URL-ови које посећујете се чувају на Google налогу</translation> <translation id="1910950723001426294">Листа опција за дељење је затворена.</translation> <translation id="1918175104945982129">Кориснички интерфејс за сагласност за гласовну претрагу Помоћника отворен је до половине екрана</translation> <translation id="1919130412786645364">Дозволи пријављивање у Chrome</translation> @@ -194,7 +194,6 @@ <translation id="2000419248597011803">Подразумеваном претраживачу шаље неке колачиће и претраге из траке за адресу и оквира за претрагу</translation> <translation id="200114059308480249">Желите да уврстите околни текст у Google претраге?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# датотека}one{# датотека}few{# датотеке}other{# датотека}}</translation> -<translation id="2020309681647789787">Имаћете историју на свим синхронизованим уређајима, па можете да наставите оно што сте радили</translation> <translation id="2021896219286479412">Контроле сајта на целом екрану</translation> <translation id="2038563949887743358">Укључи захтевање верзије сајта за рачунаре</translation> <translation id="204321170514947529"><ph name="APP_NAME" /> такође има податке у Chrome-у</translation> @@ -280,7 +279,6 @@ <translation id="2527779675047087889">Сакриј садржај привремене меморије</translation> <translation id="2532336938189706096">Веб-приказ</translation> <translation id="2534155362429831547">Избрисаних ставки: <ph name="NUMBER_OF_ITEMS" /></translation> -<translation id="2534582914273493287">URL-ови које посећујете се шаљу Google-у</translation> <translation id="2536728043171574184">Прегледате офлајн копију ове странице</translation> <translation id="2546283357679194313">Колачићи и подаци о сајтовима</translation> <translation id="2549516196460093976">Можете да користите овај таблет да бисте се пријавили на рачунару који приказује овај QR кôд.</translation> @@ -372,7 +370,6 @@ <translation id="2996291259634659425">Направите приступну фразу</translation> <translation id="2996809686854298943">URL је обавезан</translation> <translation id="2997081575621687554">Када Google сајт затражи да приватно предучитава линкове на страници, Chrome шифрује и предучитава странице преко Google сервера без колачића. На тај начин се ваш идентитет крије од предучитаног сајта.</translation> -<translation id="3003733539450769656">Упозорава вас на опасне догађаје пре него што се догоде</translation> <translation id="3006881078666935414">Нема података о коришћењу</translation> <translation id="301080557829842765">Водич за приватност</translation> <translation id="3016635187733453316">Уверите се да је уређај повезан на интернет</translation> @@ -432,6 +429,7 @@ <translation id="3284510035090979597">Проактивна помоћ</translation> <translation id="3285080554353377245">Видео снимци о томе како да користите Chrome</translation> <translation id="3288003805934695103">да поново учитате страницу</translation> +<translation id="3290249595466894471">Шаље и мали узорак страница, преузимања, активности додатака и информација система да би се откриле нове претње</translation> <translation id="3297344142967351106">Гласовна помоћ</translation> <translation id="3303414029551471755">Желите ли да наставите са преузимањем садржаја?</translation> <translation id="3334729583274622784">Желите да промените екстензију датотеке?</translation> @@ -637,7 +635,6 @@ <translation id="4558311620361989323">Пречице за веб-странице</translation> <translation id="4561730552726921821">Регистрација је успела</translation> <translation id="4561979708150884304">Веза није успостављена</translation> -<translation id="4562008740775511591">Chrome пружа прихватљиве подразумеване вредности, али можете и да их прилагодите у складу са својим навикама при прегледању</translation> <translation id="4565377596337484307">Сакриј лозинку</translation> <translation id="4572422548854449519">Пријавите се на налог којим се управља</translation> <translation id="4576892426230499203">Пробајте другу опцију за верификацију</translation> @@ -919,7 +916,6 @@ <translation id="604996488070107836">Преузимање датотеке <ph name="FILE_NAME" /> није успело због непознате грешке.</translation> <translation id="605721222689873409">ГГ</translation> <translation id="6059830886158432458">Овде контролишите приче и активности</translation> -<translation id="6069177176307973611">Прегледајте подешавања приватности и безбедности</translation> <translation id="6070730414166672373">Обраћамо се банци\u2026</translation> <translation id="6085886413119427067">Одређује како да се повеже са веб-сајтовима преко безбедне везе</translation> <translation id="6091413777268123602">Уз пробе Заштићеног окружења приватности сајтови могу да пруже исти доживљај прегледања користећи мање података. То значи више приватности за вас и мање праћења на више сајтова. Додаћемо нове пробе када постану доступне за тестирање.</translation> @@ -1040,6 +1036,7 @@ <translation id="6641780377503683465">Уклоните: <ph name="INTEREST" /></translation> <translation id="6643016212128521049">Обриши</translation> <translation id="6645629752388991326">Контролишите који уређаји могу да се пријављују тако што ћете користити овај уређај као безбедносни кључ.</translation> +<translation id="6647441008198474441">URL-ови које посећујете се шаљу Google-у да би се предвидели сајтови које ћете можда следеће посетити</translation> <translation id="6648459603387803038">Администратор може даљински да промени подешавање прегледача. Активностима на овом уређају може да се управља и ван Chrome-а.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 и још <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}one{<ph name="CONTACT_PREVIEW" />\u2026 и још <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}few{<ph name="CONTACT_PREVIEW" />\u2026 и још <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}other{<ph name="CONTACT_PREVIEW" />\u2026 и још <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}}</translation> <translation id="6649642165559792194">Прикажи слику <ph name="BEGIN_NEW" />Ново<ph name="END_NEW" /></translation> @@ -1047,7 +1044,6 @@ <translation id="6659594942844771486">Картица</translation> <translation id="666731172850799929">Отвори у <ph name="APP_NAME" /></translation> <translation id="6671495933530132209">Копирај слику</translation> -<translation id="6674044799624355221">Шаље мали узорак страница, преузимања, активности додатака и информација система да би се откриле нове претње</translation> <translation id="6674571176963658787">Да бисте покренули синхронизацију, унесите приступну фразу</translation> <translation id="6676840375528380067">Желите ли да обришете Chrome податке са овог уређаја?</translation> <translation id="6684809838922667136">Побољшајте Chrome</translation> @@ -1069,7 +1065,6 @@ <translation id="6802555630140434547">Прозор ће бити затворен</translation> <translation id="6811034713472274749">Страница је спремна за преглед</translation> <translation id="6813446258015311409">Пријављивање у Chrome, отворено.</translation> -<translation id="6814033694018386318">Шта делите са Google-ом</translation> <translation id="6817747507826986771">Брзо делите ову страницу. Да бисте изменили ову пречицу, додирните и задржите.</translation> <translation id="6819199143469632133">Пријавите се да бисте синхронизовали Google садржај на свим уређајима</translation> <translation id="6820686453637990663">CVC</translation> @@ -1164,6 +1159,7 @@ <translation id="7352939065658542140">ВИДЕО</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{Дели 1 изабрану ставку}one{Дели # изабрану ставку}few{Дели # изабране ставке}other{Дели # изабраних ставки}}</translation> <translation id="7359002509206457351">Приступ начинима плаћања</translation> +<translation id="7363349185727752629">Водич за изборе у вези са приватношћу</translation> <translation id="7375125077091615385">Тип:</translation> <translation id="7376560087009844242">Ако уврстите већи део текста странице, можете да добијете боље резултате када користите Додирнути за претрагу. Увек можете да посетите <ph name="BEGIN_LINK" />подешавања<ph name="END_LINK" /> да то промените.</translation> <translation id="7379900596734708416">Тамна тема за сајтове је доступна</translation> @@ -1263,6 +1259,7 @@ <translation id="7876243839304621966">Уклони све</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{Имате <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> непрочитану страницу}one{Имате <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> непрочитану страницу}few{Имате <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> непрочитане странице}other{Имате <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> непрочитаних страница}}</translation> <translation id="7886917304091689118">Покренуто је у Chrome-у</translation> +<translation id="7887174313503389866">Крените у обилазак кључних контрола приватности и безбедности. Више опција потражите у појединачним подешавањима.</translation> <translation id="7887334752153342268">Направи дупликат</translation> <translation id="789763218334337857">Како да користите Chrome</translation> <translation id="7903184275147100332">Ово ће можда мало потрајати</translation> @@ -1376,6 +1373,7 @@ <translation id="8445448999790540984">Извоз лозинки није успео</translation> <translation id="8446884382197647889">Сазнајте више</translation> <translation id="8453310803815879010">Започните игру са диносаурусом</translation> +<translation id="8460448946170646641">Прегледајте кључне контроле приватности и безбедности</translation> <translation id="8461694314515752532">Шифрујте синхронизоване податке помоћу сопствене приступне фразе за синхронизацију</translation> <translation id="8466613982764129868">Уверите се да је <ph name="TARGET_DEVICE_NAME" /> повезан на интернет</translation> <translation id="8473863474539038330">Адресе и друго</translation> @@ -1421,6 +1419,7 @@ <translation id="8636825310635137004">Да би вам картице биле доступне на другим уређајима, укључите синхронизацију.</translation> <translation id="8641930654639604085">Покушај да блокираш сајтове са садржајем за одрасле</translation> <translation id="864544049772947936">Управљајте прозорима (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">Открива опасне догађаје пре него што се догоде и упозорава вас на њих</translation> <translation id="8646467750715887511">Странице се учитавају тек када их отворите.</translation> <translation id="8655129584991699539">Можете да обришете податке у Chrome подешавањима</translation> <translation id="8659579665266920523">Како да претражујете помоћу Chrome-а</translation> @@ -1433,7 +1432,6 @@ <translation id="867767487203716855">Следеће ажурирање</translation> <translation id="8683039184091909753">слика</translation> <translation id="8683081248374354009">Ресетуј групу</translation> -<translation id="8683526617475118045">Шта добијате</translation> <translation id="869891660844655955">Датум истека</translation> <translation id="8699120352855309748">Не нуди превод ових језика</translation> <translation id="8712637175834984815">Важи</translation> @@ -1517,7 +1515,6 @@ <translation id="9148126808321036104">Пријави ме поново</translation> <translation id="9158770349521403363">Делите само садржај</translation> <translation id="9159716826369098114">Вратите групу картица (<ph name="TAB_COUNT" />) као нову групу картица у позадини.</translation> -<translation id="916446198114569890">URL-ови које посећујете се чувају на Google налогу</translation> <translation id="9169507124922466868">Историја навигације је полуотворена</translation> <translation id="9187955620966010988">Реакција је прилагођена</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{Проверено пре 1 минут}one{Проверено пре # минут}few{Проверено пре # минута}other{Проверено пре # минута}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_sv.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_sv.xtb index e7161402..18ea568 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_sv.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_sv.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">Erbjud inte att översätta dessa webbplatser</translation> <translation id="1145536944570833626">Radera befintlig data.</translation> <translation id="1146678959555564648">Kliv in i VR</translation> -<translation id="114825011539563458">De viktigaste säkerhets- och integritetskontrollerna på ett och samma ställe</translation> <translation id="1149401351239820326">Utgångsmånad</translation> <translation id="1150263420752757504"><ph name="APP_NAME" /> öppnas i Chrome. Genom att fortsätta godkänner du <ph name="BEGIN_LINK1" />Googles användarvillkor<ph name="END_LINK1" /> och <ph name="BEGIN_LINK2" />de ytterligare användarvillkoren för Google Chrome och Chrome OS<ph name="END_LINK2" />.</translation> <translation id="1154704303112745282">Sidan är inte tillgänglig offline: <ph name="VIOLATED_URL" /></translation> @@ -108,6 +107,7 @@ <translation id="1488775391433859242">Du kan logga in med telefonens hjälp på den dator där den här QR-koden visas.</translation> <translation id="1492417797159476138">Du har redan sparat användarnamnet för den här webbplatsen</translation> <translation id="1493287004536771723">Du följer <ph name="SITE_NAME" /></translation> +<translation id="1502010315804028179">Uppdatera Google Play-tjänsterna för att hantera dina lösenord</translation> <translation id="1506061864768559482">Sökmotor</translation> <translation id="1513352483775369820">Bokmärken och webbhistorik</translation> <translation id="1513814250881909472">Synkronisera om du få tillgång till flikar från dina andra enheter</translation> @@ -169,6 +169,7 @@ <translation id="189358972401248634">Övriga språk</translation> <translation id="1894023287452300670">Bevaka pris här</translation> <translation id="1900260903084164610">Genom att fortsätta godkänner du <ph name="BEGIN_TOS_LINK" />användarvillkoren<ph name="END_TOS_LINK" />.</translation> +<translation id="1904580727789512086">Webbadresserna du besöker sparas i Google-kontot</translation> <translation id="1910950723001426294">Lista över delningsalternativ har stängts.</translation> <translation id="1918175104945982129">Användargränssnittet för samtycke till röstsökning med assistenten har öppnats över halva skärmen</translation> <translation id="1919130412786645364">Tillåt inloggning i Chrome</translation> @@ -193,7 +194,6 @@ <translation id="2000419248597011803">Skickar vissa cookies och sökningar från adressfältet och sökrutan till standardsökmotorn</translation> <translation id="200114059308480249">Vill du inkludera omgivande text i sökningar på Google?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# fil}other{# filer}}</translation> -<translation id="2020309681647789787">Historiken visas på alla synkroniserade enheter, så att du kan fortsätta där du slutade</translation> <translation id="2021896219286479412">Helskärmskontroller på webbsidan</translation> <translation id="2038563949887743358">Aktivera begäran av skrivbordsversion</translation> <translation id="204321170514947529">Data för <ph name="APP_NAME" /> finns även i Chrome</translation> @@ -279,7 +279,6 @@ <translation id="2527779675047087889">Dölj innehållet i Urklipp</translation> <translation id="2532336938189706096">Webbvy</translation> <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> objekt har tagits bort</translation> -<translation id="2534582914273493287">Webbadresser som du besöker skickas till Google</translation> <translation id="2536728043171574184">En offlinekopia av sidan visas</translation> <translation id="2546283357679194313">Cookies och webbplatsdata</translation> <translation id="2549516196460093976">Du kan logga in med surfplattans hjälp på den dator där den här QR-koden visas.</translation> @@ -371,7 +370,6 @@ <translation id="2996291259634659425">Skapa lösenfras</translation> <translation id="2996809686854298943">En webbadress måste anges.</translation> <translation id="2997081575621687554">När en Google-webbplats frågar om dess länkar ska läsas in privat i förväg krypterar Chrome sidorna och läser in dem i förväg via Googles servrar utan cookies. Det innebär att din identitet döljs från den förinlästa webbplatsen.</translation> -<translation id="3003733539450769656">Varnar dig för farliga händelser innan de inträffar</translation> <translation id="3006881078666935414">Ingen användningsdata tillgänglig</translation> <translation id="301080557829842765">Integritetsguide</translation> <translation id="3016635187733453316">Kontrollera att enheten är ansluten till internet</translation> @@ -431,6 +429,7 @@ <translation id="3284510035090979597">Proaktiv hjälp</translation> <translation id="3285080554353377245">Videor om hur du använder Chrome</translation> <translation id="3288003805934695103">läsa in sidan igen</translation> +<translation id="3290249595466894471">Ett litet urval av sidor, nedladdning, tilläggsaktivitet och systeminformation skickas även för att upptäcka nya hot</translation> <translation id="3297344142967351106">Rösthjälp</translation> <translation id="3303414029551471755">Vill du ladda ned innehållet?</translation> <translation id="3334729583274622784">Vill du ändra filnamnstillägget?</translation> @@ -637,7 +636,6 @@ <translation id="4558311620361989323">Kortkommandon på webbsidor</translation> <translation id="4561730552726921821">Registreringen lyckades</translation> <translation id="4561979708150884304">Ingen anslutning</translation> -<translation id="4562008740775511591">Chrome har standardinställningar som passar de flesta, men du kan anpassa dem efter dina surfvanor</translation> <translation id="4565377596337484307">Dölj lösenord</translation> <translation id="4572422548854449519">Logga in på hanterat konto</translation> <translation id="4576892426230499203">Försök med ett annat verifieringsalternativ</translation> @@ -919,7 +917,6 @@ <translation id="604996488070107836">Det gick inte att ladda ned <ph name="FILE_NAME" /> på grund av ett okänt fel.</translation> <translation id="605721222689873409">ÅÅ</translation> <translation id="6059830886158432458">Styr dina berättelser och din aktivitet här</translation> -<translation id="6069177176307973611">Granska integritets- och säkerhetsinställningarna</translation> <translation id="6070730414166672373">Kontaktar din bank \u2026</translation> <translation id="6085886413119427067">Styr hur du ansluter till webbplatser via en säker anslutning</translation> <translation id="6091413777268123602">Med provversionerna av Privacy Sandbox kan webbplatser ge samma surfupplevelse med mindre information om dig. Det ger ett bättre integritetsskydd och mindre spårning från webbplats till webbplats. Vi lägger till nya provversioner allt eftersom de blir klara att testa.</translation> @@ -1040,6 +1037,7 @@ <translation id="6641780377503683465">Ta bort <ph name="INTEREST" /></translation> <translation id="6643016212128521049">Rensa</translation> <translation id="6645629752388991326">Styr vilka enheter som får logga in med den här enheten som säkerhetsnyckel.</translation> +<translation id="6647441008198474441">Webbadresser som du besöker skickas till Google för att förutse vilka webbplatser du kanske vill besöka härnäst</translation> <translation id="6648459603387803038">Administratören kan ändra webbläsarinställningarna på distans. Aktivitet på den här enheten kan hanteras även utanför Chrome.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 och <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> till}other{<ph name="CONTACT_PREVIEW" />\u2026 och <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> till}}</translation> <translation id="6649642165559792194">Förhandsgranska bild <ph name="BEGIN_NEW" />Nyhet<ph name="END_NEW" /></translation> @@ -1047,7 +1045,6 @@ <translation id="6659594942844771486">Flik</translation> <translation id="666731172850799929">Öppna i <ph name="APP_NAME" /></translation> <translation id="6671495933530132209">Kopiera bild</translation> -<translation id="6674044799624355221">Ett litet urval av sidor, nedladdning, tilläggsaktivitet och systeminformation skickas för att upptäcka nya hot</translation> <translation id="6674571176963658787">Ange din lösenfras för att starta synkroniseringen</translation> <translation id="6676840375528380067">Vill du rensa din data i Chrome från den här enheten?</translation> <translation id="6684809838922667136">Gör Chrome bättre</translation> @@ -1069,7 +1066,6 @@ <translation id="6802555630140434547">Fönstret stängs</translation> <translation id="6811034713472274749">Sidan är klar att öppna</translation> <translation id="6813446258015311409">Logga in i Chrome, öppet.</translation> -<translation id="6814033694018386318">Det här delar du med Google</translation> <translation id="6817747507826986771">Dela den här sidan snabbt. Tryck länge om du vill ändra genvägen.</translation> <translation id="6819199143469632133">Logga in och ta Google med dig på alla dina enheter</translation> <translation id="6820686453637990663">CVC</translation> @@ -1164,6 +1160,7 @@ <translation id="7352939065658542140">VIDEO</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{Dela 1 markerat objekt}other{Dela # markerade objekt}}</translation> <translation id="7359002509206457351">Åtkomst till betalningsmetoder</translation> +<translation id="7363349185727752629">En guide över dina integritetsval</translation> <translation id="7375125077091615385">Typ:</translation> <translation id="7376560087009844242">Om du tar med mer av sidans text kanske du får bättre resultat när du använder Tryck för att söka. Du kan alltid öppna <ph name="BEGIN_LINK" />inställningarna<ph name="END_LINK" /> om du vill ändra detta.</translation> <translation id="7379900596734708416">Mörkt tema för webbplatser är tillgängligt</translation> @@ -1263,6 +1260,7 @@ <translation id="7876243839304621966">Ta bort alla</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{Du har <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> oläst sida}other{Du har <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> olästa sidor}}</translation> <translation id="7886917304091689118">Körs i Chrome</translation> +<translation id="7887174313503389866">Få en guidad rundtur av viktiga integritets- och säkerhetskontroller. Öppna den enskilda inställningarna för att se fler alternativ.</translation> <translation id="7887334752153342268">Duplicera</translation> <translation id="789763218334337857">Så här använder du Chrome</translation> <translation id="7903184275147100332">Det här kan ta någon minut</translation> @@ -1376,6 +1374,7 @@ <translation id="8445448999790540984">Det gick inte att exportera lösenord</translation> <translation id="8446884382197647889">Läs mer</translation> <translation id="8453310803815879010">Starta Dino-spelet</translation> +<translation id="8460448946170646641">Granska viktiga säkerhets- och integritetskontroller</translation> <translation id="8461694314515752532">Kryptera synkroniserad data med en egen lösenfras för synkronisering</translation> <translation id="8466613982764129868">Kontrollera att <ph name="TARGET_DEVICE_NAME" /> är ansluten till internet</translation> <translation id="8473863474539038330">Adresser och annat</translation> @@ -1421,6 +1420,7 @@ <translation id="8636825310635137004">Aktivera synkronisering om du vill ha samma flikar tillgängliga på alla enheter.</translation> <translation id="8641930654639604085">Försök blockera webbplatser med innehåll för vuxna</translation> <translation id="864544049772947936">Hantera fönster (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">Förutser och varnar dig om farliga händelser innan de inträffar</translation> <translation id="8646467750715887511">Sidor läses endast in när du har öppnat dem.</translation> <translation id="8655129584991699539">Du kan rensa data i Chrome-inställningarna</translation> <translation id="8659579665266920523">Så här söker du i Chrome</translation> @@ -1433,7 +1433,6 @@ <translation id="867767487203716855">Nästa uppdatering</translation> <translation id="8683039184091909753">bild</translation> <translation id="8683081248374354009">Återställ gruppen</translation> -<translation id="8683526617475118045">Detta får du</translation> <translation id="869891660844655955">Utgångsdatum</translation> <translation id="8699120352855309748">Erbjud inte att översätta dessa språk</translation> <translation id="8712637175834984815">Uppfattat</translation> @@ -1517,7 +1516,6 @@ <translation id="9148126808321036104">Logga in igen</translation> <translation id="9158770349521403363">Dela endast innehåll</translation> <translation id="9159716826369098114">Återställ flikgruppen med <ph name="TAB_COUNT" /> flikar som en ny flikgrupp i bakgrunden.</translation> -<translation id="916446198114569890">Webbadresserna du besöker sparas i Google-kontot</translation> <translation id="9169507124922466868">Navigeringshistoriken visas på halva skärmen</translation> <translation id="9187955620966010988">Reaktionen har justerats</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{Genomsöktes för 1 minut sedan}other{Genomsöktes för # minuter sedan}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_sw.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_sw.xtb index 25b1223..cf57b390 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_sw.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_sw.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">Usionyeshe chaguo la kutafsiri tovuti hizi</translation> <translation id="1145536944570833626">Futa data iliyopo.</translation> <translation id="1146678959555564648">Tumia hali ya VR</translation> -<translation id="114825011539563458">Vidhibiti muhimu zaidi vya faragha na usalama katika sehemu moja</translation> <translation id="1149401351239820326">Mwezi wa kuisha kwa muda wa matumizi</translation> <translation id="1150263420752757504"><ph name="APP_NAME" /> itafunguka kwenye Chrome. Kwa kuendelea, unakubali <ph name="BEGIN_LINK1" />Sheria na Masharti ya Google<ph name="END_LINK1" /> na <ph name="BEGIN_LINK2" />Sheria na Masharti ya Ziada ya Google Chrome na Mfumo wa Uendeshaji wa Chrome<ph name="END_LINK2" />.</translation> <translation id="1154704303112745282">Ukurasa haupatikani nje ya mtandao: <ph name="VIOLATED_URL" /></translation> @@ -170,6 +169,7 @@ <translation id="189358972401248634">Lugha zingine</translation> <translation id="1894023287452300670">Fuatilia bei hapa</translation> <translation id="1900260903084164610">Kwa kuendelea, unakubali <ph name="BEGIN_TOS_LINK" />Sheria na Masharti<ph name="END_TOS_LINK" />.</translation> +<translation id="1904580727789512086">URL unazotembelea huhifadhiwa kwenye Akaunti yako ya Google</translation> <translation id="1910950723001426294">Orodha ya chaguo za kushiriki imefungwa.</translation> <translation id="1918175104945982129">Kiolesura cha idhini ya kutafuta kwa kutamka kupitia programu ya Mratibu kimefunguliwa kwenye nusu ya skrini</translation> <translation id="1919130412786645364">Ruhusu kuingia katika akaunti ya Chrome</translation> @@ -194,7 +194,6 @@ <translation id="2000419248597011803">Hutuma baadhi ya vidakuzi na utafutaji kutoka kwenye sehemu ya anwani na kisanduku cha kutafutia kwenye mtambo wako chaguomsingi wa kutafuta</translation> <translation id="200114059308480249">Ungependa kujumuisha maandishi yaliyo karibu na maneno uliyoyachagua katika utafutaji kwenye Google?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{Faili #}other{Faili #}}</translation> -<translation id="2020309681647789787">Utapata historia yako kwenye vifaa vyako vyote vilivyosawazishwa, ili uweze kuendeleza ulichokuwa ukifanya</translation> <translation id="2021896219286479412">Vidhibiti vya tovuti vya skrini nzima</translation> <translation id="2038563949887743358">Washa Omba Tovuti ya Eneo-kazi</translation> <translation id="204321170514947529"><ph name="APP_NAME" /> pia ina data katika Chrome</translation> @@ -280,7 +279,6 @@ <translation id="2527779675047087889">Ficha yaliyomo kwenye ubao wa kunakili</translation> <translation id="2532336938189706096">Mwonekano wa Wavuti</translation> <translation id="2534155362429831547">Umefuta vipengee <ph name="NUMBER_OF_ITEMS" /></translation> -<translation id="2534582914273493287">URL unazotembelea hutumwa kwa Google</translation> <translation id="2536728043171574184">Unaangalia nakala ya nje ya mtandao ya ukurasa huu</translation> <translation id="2546283357679194313">Data ya vidakuzi na tovuti</translation> <translation id="2549516196460093976">Unaweza kutumia kompyuta hii kibao kuingia katika akaunti kwenye kompyuta inayoonyesha msimbo huu wa QR.</translation> @@ -372,7 +370,6 @@ <translation id="2996291259634659425">Unda kauli ya siri</translation> <translation id="2996809686854298943">URL inahitajika</translation> <translation id="2997081575621687554">Tovuti ya Google inapoomba viungo vipakiwe mapema kwenye ukurasa wake kwa njia ya faragha, Chrome husimba kwa njia fiche na kupakia mapema kurasa kupitia seva za Google bila vidakuzi. Hali hii huficha utambulisho wako usionekane na tovuti inayopakiwa mapema.</translation> -<translation id="3003733539450769656">Hukuonya kuhusu matukio hatari kabla yatendeke</translation> <translation id="3006881078666935414">Hakuna data ya matumizi</translation> <translation id="301080557829842765">Mwongozo wa faragha</translation> <translation id="3016635187733453316">Hakikisha kwamba kifaa hiki kimeunganishwa kwenye intaneti</translation> @@ -432,6 +429,7 @@ <translation id="3284510035090979597">Usaidizi Hima</translation> <translation id="3285080554353377245">Video kuhusu jinsi ya kutumia Chrome</translation> <translation id="3288003805934695103">Kupakia upya ukurasa</translation> +<translation id="3290249595466894471">Hutuma pia sampuli ndogo ya kurasa, vipakuliwa, shughuli za viendelezi na maelezo ya mfumo ili kusaidia kugundua matukio mapya hatari</translation> <translation id="3297344142967351106">Usaidizi wa kutumia sauti</translation> <translation id="3303414029551471755">Ungependa kuendelea kupakua maudhui?</translation> <translation id="3334729583274622784">Ungependa kubadilisha kiendelezi cha faili?</translation> @@ -637,7 +635,6 @@ <translation id="4558311620361989323">Njia za mikato za ukurasa wa wavuti</translation> <translation id="4561730552726921821">Imesajiliwa</translation> <translation id="4561979708150884304">Hakuna muunganisho</translation> -<translation id="4562008740775511591">Kwa chaguomsingi, Chrome hukuwekea mipangilio adilifu, lakini unaweza kuiwekea mapendeleo ili itosheleze vizuri hali yako ya kuvinjari</translation> <translation id="4565377596337484307">Ficha nenosiri</translation> <translation id="4572422548854449519">Ingia katika akaunti zinazodhibitiwa</translation> <translation id="4576892426230499203">Jaribu njia nyingine ya kuthibitisha</translation> @@ -919,7 +916,6 @@ <translation id="604996488070107836">Kipakuliwa cha <ph name="FILE_NAME" /> hakijafaulu kwa sababu ya hitilafu isiyojulikana.</translation> <translation id="605721222689873409">MK</translation> <translation id="6059830886158432458">Dhibiti hadithi na shughuli zako hapa</translation> -<translation id="6069177176307973611">Kagua mipangilio ya faragha na usalama</translation> <translation id="6070730414166672373">Inawasiliana na benki yako\u2026</translation> <translation id="6085886413119427067">Hubainisha jinsi ya kuunganisha kwenye tovuti kupitia muunganisho salama</translation> <translation id="6091413777268123602">Kwa kutumia majaribio ya Mazingira ya Faragha, tovuti zinaweza kutoa hali ileile ya kuvinjari zikitumia data zako chache. Hali hii inakupatia faragha zaidi na ufuatiliaji mdogo kwenye tovuti. Tutaongeza majaribio mapya kadiri yanavyokuwa tayari kujaribiwa.</translation> @@ -1040,6 +1036,7 @@ <translation id="6641780377503683465">Ondoa <ph name="INTEREST" /></translation> <translation id="6643016212128521049">Futa</translation> <translation id="6645629752388991326">Dhibiti vifaa vinavyoweza kuingia katika akaunti kwa kutumia kifaa hiki kama ufunguo wa usalama.</translation> +<translation id="6647441008198474441">URL unazotembelea hutumwa kwa Google ili kutabiri tovuti ambazo huenda ukazitembelea baadaye</translation> <translation id="6648459603387803038">Msimamizi wako anaweza kubadilisha mipangilio ya kivinjari chako kwa mbali. Huenda shughuli kwenye kifaa hiki zikadhibitiwa nje ya Chrome.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 na <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> zaidi}other{<ph name="CONTACT_PREVIEW" />\u2026 na <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> zaidi}}</translation> <translation id="6649642165559792194">Kagua picha kwanza <ph name="BEGIN_NEW" />Mpya<ph name="END_NEW" /></translation> @@ -1047,7 +1044,6 @@ <translation id="6659594942844771486">Kichupo</translation> <translation id="666731172850799929">Fungua katika <ph name="APP_NAME" /></translation> <translation id="6671495933530132209">Nakili picha</translation> -<translation id="6674044799624355221">Hutuma sampuli ndogo ya kurasa, vipakuliwa, shughuli za viendelezi na maelezo ya mfumo ili kusaidia kugundua matukio mapya hatari</translation> <translation id="6674571176963658787">Ili uanze kusawazisha, weka kauli yako ya siri</translation> <translation id="6676840375528380067">Ungependa kufuta data yako yote ya Chrome kwenye kifaa hiki?</translation> <translation id="6684809838922667136">Boresha Chrome</translation> @@ -1069,7 +1065,6 @@ <translation id="6802555630140434547">Dirisha hili litafungwa</translation> <translation id="6811034713472274749">Unaweza kuona ukurasa</translation> <translation id="6813446258015311409">Ingia katika akaunti kwenye Chrome, imefunguliwa.</translation> -<translation id="6814033694018386318">Data unayoshiriki na Google</translation> <translation id="6817747507826986771">Shiriki ukurasa huu kwa haraka. Ili ubadilishe njia hii ya mkato, gusa na ushikilie.</translation> <translation id="6819199143469632133">Ili upate vitu vyako vya Google kwenye vifaa mbalimbali, ingia katika akaunti</translation> <translation id="6820686453637990663">CVC</translation> @@ -1164,6 +1159,7 @@ <translation id="7352939065658542140">VIDEO</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{Shiriki kipengee 1 kilichochaguliwa}other{Shiriki vipengee # vilivyochaguliwa}}</translation> <translation id="7359002509206457351">Ufikiaji wa njia za kulipa</translation> +<translation id="7363349185727752629">Mwongozo wa chaguo zako za faragha</translation> <translation id="7375125077091615385">Aina:</translation> <translation id="7376560087009844242">Ukijumuisha maandishi zaidi ya ukurasa, huenda ukaona matokeo bora zaidi unapotumia kipengele cha 'Gusa ili Utafute'. Unaweza kwenda kwenye sehemu ya <ph name="BEGIN_LINK" />mipangilio<ph name="END_LINK" /> ili ubadilishe chaguo hili wakati wowote.</translation> <translation id="7379900596734708416">Mandhari meusi ya tovuti yanapatikana</translation> @@ -1263,6 +1259,7 @@ <translation id="7876243839304621966">Ondoa yote</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{Una ukurasa <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> ambao hujausoma}other{Una kurasa <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> ambazo hujasoma}}</translation> <translation id="7886917304091689118">Umefunguka katika Chrome</translation> +<translation id="7887174313503389866">Kagua vidhibiti muhimu vya faragha na usalama kwa kutumia mwongozo. Kwa chaguo zaidi, nenda kwenye mipangilio mahususi.</translation> <translation id="7887334752153342268">Maradufu</translation> <translation id="789763218334337857">Jinsi ya kutumia Chrome</translation> <translation id="7903184275147100332">Hatua hii inaweza kuchukua dakika moja</translation> @@ -1376,6 +1373,7 @@ <translation id="8445448999790540984">Haiwezi kuhamisha manenosiri</translation> <translation id="8446884382197647889">Pata Maelezo Zaidi</translation> <translation id="8453310803815879010">Anzisha Mchezo wa Dinosau</translation> +<translation id="8460448946170646641">Kagua vidhibiti muhimu vya faragha na usalama</translation> <translation id="8461694314515752532">Simba data iliyosawazishwa kwa njia fiche ukitumia kauli yako ya siri ya usawazishaji</translation> <translation id="8466613982764129868">Hakikisha kwamba <ph name="TARGET_DEVICE_NAME" /> imeunganishwa kwenye intaneti</translation> <translation id="8473863474539038330">Anwani na zaidi</translation> @@ -1421,6 +1419,7 @@ <translation id="8636825310635137004">Ili upate vichupo kutoka kwenye vifaa vyako vingine, washa kipengele cha usawazishaji.</translation> <translation id="8641930654639604085">Jaribu kuzuia tovuti zilizo na maudhui ya watu wazima</translation> <translation id="864544049772947936">Dhibiti madirisha (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">Hutabiri na kukuonya kuhusu matukio hatari kabla yatendeke</translation> <translation id="8646467750715887511">Kurasa hupakiwa tu ukishazifungua.</translation> <translation id="8655129584991699539">Unaweza kufuta data hii katika Mipangilio ya Chrome</translation> <translation id="8659579665266920523">Jinsi ya kutafuta kwa kutumia Chrome</translation> @@ -1433,7 +1432,6 @@ <translation id="867767487203716855">Sasisho lijalo</translation> <translation id="8683039184091909753">picha</translation> <translation id="8683081248374354009">Badilisha kikundi</translation> -<translation id="8683526617475118045">Manufaa unayopata</translation> <translation id="869891660844655955">Muda wake unakwisha tarehe</translation> <translation id="8699120352855309748">Usionyeshe chaguo la kutafsiri lugha hizi</translation> <translation id="8712637175834984815">Nimeelewa</translation> @@ -1517,7 +1515,6 @@ <translation id="9148126808321036104">Ingia tena</translation> <translation id="9158770349521403363">Shiriki maudhui pekee</translation> <translation id="9159716826369098114">Rejesha kikundi cha vichupo <ph name="TAB_COUNT" /> kiwe kikundi kipya cha vichupo vinavyofanya kazi chinichini.</translation> -<translation id="916446198114569890">URL unazotembelea huhifadhiwa kwenye akaunti yako ya Google</translation> <translation id="9169507124922466868">Historia ya uelekezaji imefunguliwa nusu</translation> <translation id="9187955620966010988">Maoni yamerekebishwa</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{Imekaguliwa dakika moja iliyopita}other{Imekaguliwa dakika # zilizopita}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_ta.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_ta.xtb index 70056ec..b43fc25c 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_ta.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_ta.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">இந்த மொழிகளுக்கு மொழிபெயர்ப்பு வேண்டாம்:</translation> <translation id="1145536944570833626">ஏற்கனவே உள்ள தரவை நீக்கு.</translation> <translation id="1146678959555564648">VRஐ உள்ளிடு</translation> -<translation id="114825011539563458">மிக முக்கியமான தனியுரிமை & பாதுகாப்புக் கட்டுப்பாடுகள் - ஒரே இடத்தில்</translation> <translation id="1149401351239820326">காலாவதியாகும் மாதம்</translation> <translation id="1150263420752757504"><ph name="APP_NAME" /> Chromeமில் திறக்கப்படும். தொடர்வதன் மூலம் <ph name="BEGIN_LINK1" />Google சேவை விதிமுறைகள்<ph name="END_LINK1" />, <ph name="BEGIN_LINK2" />Google Chrome & ChromeOS தொடர்பான கூடுதல் சேவை விதிமுறைகள்<ph name="END_LINK2" /> ஆகியவற்றை ஏற்கிறீர்கள்.</translation> <translation id="1154704303112745282">பக்கம் ஆஃப்லைனில் கிடைக்கவில்லை: <ph name="VIOLATED_URL" /></translation> @@ -108,6 +107,7 @@ <translation id="1488775391433859242">இந்த QR குறியீட்டைக் காட்டும் கம்ப்யூட்டரில் உள்நுழைய இந்த ஃபோனைப் பயன்படுத்தலாம்.</translation> <translation id="1492417797159476138">இந்தத் தளத்தில் இந்தப் பயனர்பெயரை ஏற்கெனவே சேமித்துள்ளீர்கள்</translation> <translation id="1493287004536771723"><ph name="SITE_NAME" /> தளத்தைப் பின்தொடர்கிறீர்கள்</translation> +<translation id="1502010315804028179">கடவுச்சொற்களை நிர்வகிக்க Google Play சேவைகளைப் புதுப்பிக்க வேண்டும்</translation> <translation id="1506061864768559482">தேடல் இன்ஜின்</translation> <translation id="1513352483775369820">புத்தகக்குறிகளும் இணைய வரலாறும்</translation> <translation id="1513814250881909472">உங்கள் பிற சாதனங்களின் உலாவிப் பக்கங்களில் உள்ளவற்றைப் பெற ஒத்திசையுங்கள்</translation> @@ -169,6 +169,7 @@ <translation id="189358972401248634">பிற மொழிகள்</translation> <translation id="1894023287452300670">விலையை இங்கே கண்காணிக்கலாம்</translation> <translation id="1900260903084164610">தொடர்வதன் மூலம் <ph name="BEGIN_TOS_LINK" />சேவை விதிமுறைகளை<ph name="END_TOS_LINK" /> ஏற்கிறீர்கள்.</translation> +<translation id="1904580727789512086">நீங்கள் பார்வையிடும் URLகள் உங்கள் Google கணக்கில் சேமிக்கப்படும்</translation> <translation id="1910950723001426294">பகிர்தல் விருப்பங்களுக்கான பட்டியல் மூடப்பட்டது.</translation> <translation id="1918175104945982129">குரல் தேடலுக்கு Assistantடைப் பயன்படுத்துவதற்கான ஒப்புதல் UI பாதித் திரையில் காட்டப்படுகிறது</translation> <translation id="1919130412786645364">Chrome உள்நுழைவை அனுமதித்தல்</translation> @@ -193,7 +194,6 @@ <translation id="2000419248597011803">முகவரிப் பட்டியிலிருந்தும், தேடல் பெட்டியிலிருந்தும் சில குக்கீகளையும் தேடல்களையும் உங்கள் இயல்புத் தேடல் இன்ஜினுக்கு அனுப்பும்</translation> <translation id="200114059308480249">சுற்றியுள்ள வார்த்தைகளையும் Google தேடல்களில் சேர்க்கவா?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# ஃபைல்}other{# ஃபைல்கள் }}</translation> -<translation id="2020309681647789787">ஒத்திசைக்கப்பட்டுள்ள சாதனங்கள் அனைத்திலும் உங்கள் தேடல் விவரங்கள் சேமிக்கப்படுவதால் விட்ட இடத்திலிருந்து செயல்பாட்டைத் தொடரலாம்</translation> <translation id="2021896219286479412">முழுத் திரை தளக் கட்டுப்பாடுகள்</translation> <translation id="2038563949887743358">டெஸ்க்டாப் தளத்திற்கான கோரிக்கையை இயக்கு</translation> <translation id="204321170514947529"><ph name="APP_NAME" /> ஆப்ஸின் தரவும் Chromeமில் உள்ளது</translation> @@ -279,7 +279,6 @@ <translation id="2527779675047087889">கிளிப்போர்டில் உள்ளவற்றை மறைக்கும்</translation> <translation id="2532336938189706096">இணைய பார்வை</translation> <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> வரலாற்று உள்ளடக்கங்கள் நீக்கப்பட்டன</translation> -<translation id="2534582914273493287">நீங்கள் பார்வையிடும் URLகள் Googleளுக்கு அனுப்பப்படும்</translation> <translation id="2536728043171574184">இந்தப் பக்கத்தின் ஆஃப்லைன் நகலைப் பார்க்கிறீர்கள்</translation> <translation id="2546283357679194313">குக்கீகளும் தள தரவும்</translation> <translation id="2549516196460093976">இந்த QR குறியீட்டைக் காட்டும் கம்ப்யூட்டரில் உள்நுழைய இந்த டேப்லெட்டைப் பயன்படுத்தலாம்.</translation> @@ -371,7 +370,6 @@ <translation id="2996291259634659425">கடவுச்சொற்றொடரை உருவாக்கு</translation> <translation id="2996809686854298943">URL தேவை</translation> <translation id="2997081575621687554">ஒரு Google தளம் அதன் பக்கத்தில் இருக்கும் இணைப்புகளைத் தனிப்பட்ட முறையில் முன்கூட்டியே ஏற்றுமாறு கேட்கும்போது, Google சேவையகங்கள் மூலம் பக்கங்களை என்க்ரிப்ஷன் செய்து, அவற்றைக் குக்கீகள் இல்லாமல் Chrome முன்கூட்டியே ஏற்றும். இதனால், முன்கூட்டியே ஏற்றப்பட்ட தளத்துடன் உங்கள் அடையாளம் பகிரப்படாது.</translation> -<translation id="3003733539450769656">ஆபத்தான நிகழ்வுகள் ஏற்படுவதற்கு முன்னரே அவற்றைப் பற்றி உங்களை எச்சரிக்கும்</translation> <translation id="3006881078666935414">பயன்பாட்டுத் தரவு இல்லை</translation> <translation id="301080557829842765">தனியுரிமை வழிகாட்டி</translation> <translation id="3016635187733453316">இந்தச் சாதனம் இணையத்துடன் இணைக்கப்பட்டுள்ளதை உறுதி செய்யவும்</translation> @@ -431,6 +429,7 @@ <translation id="3284510035090979597">முன்கூட்டிய உதவி</translation> <translation id="3285080554353377245">Chromeமை எப்படிப் பயன்படுத்துவது என்பது குறித்த வீடியோக்கள்</translation> <translation id="3288003805934695103">பக்கத்தை மீண்டும் ஏற்றுதல்</translation> +<translation id="3290249595466894471">புதிய அச்சுறுத்தல்களைக் கண்டறிய உதவும் வகையில் பக்கங்களின் சிறிய மாதிரி, பதிவிறக்கங்கள், நீட்டிப்புச் செயல்பாடு, சிஸ்டம் தகவல்கள் ஆகியவற்றையும் அனுப்பும்</translation> <translation id="3297344142967351106">குரல் உதவி</translation> <translation id="3303414029551471755">உள்ளடக்கத்தைப் பதிவிறக்குவதைத் தொடரவா?</translation> <translation id="3334729583274622784">ஃபைல் நீட்டிப்பை மாற்றவா?</translation> @@ -636,7 +635,6 @@ <translation id="4558311620361989323">இணையப் பக்கக் ஷார்ட்கட்கள்</translation> <translation id="4561730552726921821">பதிவுசெய்துவிட்டீர்கள்</translation> <translation id="4561979708150884304">இணைப்பு இல்லை</translation> -<translation id="4562008740775511591">ஏற்கக்கூடிய விருப்பத்தேர்வுகளை இயல்பாகவே Chrome வழங்குகிறது. இருப்பினும் உங்களின் உலாவல் முறைக்கேற்ப அவற்றைப் பிரத்தியேகமாக்கலாம்</translation> <translation id="4565377596337484307">கடவுச்சொல்லை மறைக்கும்</translation> <translation id="4572422548854449519">நிர்வகிக்கப்படும் கணக்கில் உள்நுழையவும்</translation> <translation id="4576892426230499203">வேறொரு சரிபார்ப்பு விருப்பத்தைப் பயன்படுத்தவும்</translation> @@ -918,7 +916,6 @@ <translation id="604996488070107836">அறியப்படாதப் பிழை காரணமாக <ph name="FILE_NAME" />ஐப் பதிவிறக்க முடியவில்லை.</translation> <translation id="605721222689873409">YY</translation> <translation id="6059830886158432458">உங்கள் செய்திகளையும் செயல்பாட்டையும் இங்கே கட்டுப்படுத்தலாம்</translation> -<translation id="6069177176307973611">தனியுரிமை & பாதுகாப்பு அமைப்புகளைப் பார்க்கலாம் மாற்றலாம்</translation> <translation id="6070730414166672373">பேங்கைத் தொடர்புகொள்கிறோம்\u2026</translation> <translation id="6085886413119427067">பாதுகாப்பான இணைப்பின் மூலம் இணையதளங்களில் இணைவது எப்படி என்பதைக் கண்டறியும்</translation> <translation id="6091413777268123602">தனியுரிமை சாண்ட்பாக்ஸ் சோதனையின் மூலம், உங்கள் தரவைக் குறைவாகப் பயன்படுத்தியும் தளங்களால் அதே உலாவல் அனுபவத்தை வழங்க முடியும். அதாவது, உங்களுக்கு அதிகத் தனியுரிமை கிடைக்கும். அத்துடன் தளங்களுக்கிடையே மாறும்போது கண்காணிப்பதும் குறையும். பரிசோதித்துப் பார்க்கத் தயாரானதும் புதிய சோதனைகளைச் சேர்ப்போம்.</translation> @@ -1039,6 +1036,7 @@ <translation id="6641780377503683465"><ph name="INTEREST" /> ஐ அகற்றும்</translation> <translation id="6643016212128521049">அழி</translation> <translation id="6645629752388991326">எந்தெந்தச் சாதனங்கள் இந்தச் சாதனத்தைப் பாதுகாப்பு விசையாகப் பயன்படுத்தி உள்நுழையலாம் என்பதைக் கட்டுப்படுத்தும்.</translation> +<translation id="6647441008198474441">நீங்கள் அடுத்து பார்வையிடக்கூடிய தளங்களைக் கணிப்பதற்காக, நீங்கள் பார்வையிடும் URLகள் Googleளுக்கு அனுப்பப்படும்</translation> <translation id="6648459603387803038">உலாவியின் அமைவை உங்கள் நிர்வாகியால் தொலைநிலையிலிருந்தே மாற்ற முடியும். இந்தச் சாதனத்தின் செயல்பாடுகளை Chromeமுக்கு வெளியிலிருந்தும் நிர்வகிக்கலாம்.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 மற்றும் <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> தொடர்பு}other{<ph name="CONTACT_PREVIEW" />\u2026 மற்றும் <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> தொடர்புகள்}}</translation> <translation id="6649642165559792194">மாதிரிக்காட்சி <ph name="BEGIN_NEW" />புதிது<ph name="END_NEW" /></translation> @@ -1046,7 +1044,6 @@ <translation id="6659594942844771486">உலாவிப் பக்கம்</translation> <translation id="666731172850799929"><ph name="APP_NAME" /> இல் திற</translation> <translation id="6671495933530132209">படத்தை நகலெடு</translation> -<translation id="6674044799624355221">புதிய அச்சுறுத்தல்களைக் கண்டறிய உதவும் வகையில் பக்கங்கள், பதிவிறக்கங்கள், நீட்டிப்புச் செயல்பாடு, சிஸ்டம் தகவல் போன்ற சிலவற்றை அனுப்பும்</translation> <translation id="6674571176963658787">ஒத்திசைவைத் தொடங்க, கடவுச்சொற்றொடரை உள்ளிடவும்</translation> <translation id="6676840375528380067">இந்தச் சாதனத்திலிருந்து உங்கள் Chrome தரவை அழிக்கவா?</translation> <translation id="6684809838922667136">Chromeமைச் சிறந்ததாக்குங்கள்</translation> @@ -1068,7 +1065,6 @@ <translation id="6802555630140434547">சாளரம் மூடப்படும்</translation> <translation id="6811034713472274749">பக்கத்தைப் பார்க்கலாம்</translation> <translation id="6813446258015311409">Chromeமில் உள்நுழைக, திறக்கப்பட்டுள்ளது.</translation> -<translation id="6814033694018386318">Googleளுடன் பகிரப்படுபவை</translation> <translation id="6817747507826986771">இந்தப் பக்கத்தை உடனடியாகப் பகிரலாம். இந்த ஷார்ட்கட்டை மாற்ற தொட்டுப் பிடித்திருக்கவும்.</translation> <translation id="6819199143469632133">அனைத்துச் சாதனங்களிலும் உங்கள் Google தயாரிப்புகளையும் சேவைகளையும் பெற உள்நுழையுங்கள்</translation> <translation id="6820686453637990663">CVC</translation> @@ -1163,6 +1159,7 @@ <translation id="7352939065658542140">வீடியோ</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{தேர்ந்தெடுத்த 1 உருப்படியைப் பகிரும்}other{தேர்ந்தெடுத்த # உருப்படிகளைப் பகிரும்}}</translation> <translation id="7359002509206457351">கட்டண முறைகளை அணுகுவதற்கான அனுமதி</translation> +<translation id="7363349185727752629">உங்கள் தனியுரிமை விருப்பங்களுக்கான வழிகாட்டி</translation> <translation id="7375125077091615385">வகை:</translation> <translation id="7376560087009844242">‘தொட்டுத் தேடுதல்’ அம்சத்தைப் பயன்படுத்தும்போது அந்தப் பக்கத்தில் இருக்கும் வார்த்தைகளில் சிலவற்றைக் கூடுதலாகச் சேர்ப்பதன் மூலம் சிறந்த முடிவுகளைப் பெறலாம். <ph name="BEGIN_LINK" />அமைப்புகளுக்குச்<ph name="END_LINK" /> சென்று எப்போது வேண்டுமானாலும் இதை மாற்றிக்கொள்ளலாம்.</translation> <translation id="7379900596734708416">தளங்களுக்கான டார்க் தீம் கிடைக்கிறது</translation> @@ -1262,6 +1259,7 @@ <translation id="7876243839304621966">அனைத்தையும் அகற்று</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{படிக்காத பக்கம் <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> உள்ளது}other{படிக்காத பக்கங்கள் <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> உள்ளன}}</translation> <translation id="7886917304091689118">Chrome இல் இயங்குகிறது</translation> +<translation id="7887174313503389866">முக்கியமான தனியுரிமை மற்றும் பாதுகாப்புக் கட்டுப்பாடுகள் குறித்த டெமோவைப் பாருங்கள். கூடுதல் விருப்பங்களுக்கு, தனிப்பட்ட அமைப்புகளுக்குச் செல்லவும்.</translation> <translation id="7887334752153342268">பிரதி எடு</translation> <translation id="789763218334337857">Chromeமை எப்படிப் பயன்படுத்துவது?</translation> <translation id="7903184275147100332">இதற்கு ஒரு நிமிடம் ஆகக்கூடும்</translation> @@ -1375,6 +1373,7 @@ <translation id="8445448999790540984">கடவுச்சொற்களை ஏற்ற முடியவில்லை</translation> <translation id="8446884382197647889">மேலும் அறிக</translation> <translation id="8453310803815879010">டைனோசர் கேமைத் தொடங்கும்</translation> +<translation id="8460448946170646641">முக்கியமான தனியுரிமை மற்றும் பாதுகாப்புக் கட்டுப்பாடுகளைச் சரிபாருங்கள்</translation> <translation id="8461694314515752532">ஒத்திசைக்கப்பட்ட தரவை எனது ஒத்திசைவுக் கடவுச்சொற்றொடர் மூலம் என்கிரிப்ட் செய்</translation> <translation id="8466613982764129868"><ph name="TARGET_DEVICE_NAME" /> சாதனம் இணையத்துடன் இணைக்கப்பட்டுள்ளதை உறுதி செய்யவும்</translation> <translation id="8473863474539038330">முகவரிகள் மற்றும் பல</translation> @@ -1420,6 +1419,7 @@ <translation id="8636825310635137004">உங்கள் பிற சாதனங்களிலிருந்து தாவல்களைப் பெற, ஒத்திசைவை இயக்கவும்.</translation> <translation id="8641930654639604085">பெரியவர்களுக்கான தளங்களைத் தடு</translation> <translation id="864544049772947936">சாளரங்களை (<ph name="INSTANCE_COUNTS" />) நிர்வகி</translation> +<translation id="8645920082661222035">ஆபத்தான நிகழ்வுகள் ஏற்படுவதற்கு முன்பு அவற்றைக் கணித்து உங்களை எச்சரிக்கும்</translation> <translation id="8646467750715887511">பக்கங்களை நீங்கள் திறந்த பிறகே அவை ஏற்றப்படும்.</translation> <translation id="8655129584991699539">Chrome அமைப்புகளில் தரவை அழிக்கலாம்</translation> <translation id="8659579665266920523">Chromeமைப் பயன்படுத்தி எப்படித் தேடுவது?</translation> @@ -1432,7 +1432,6 @@ <translation id="867767487203716855">அடுத்த புதுப்பிப்பு</translation> <translation id="8683039184091909753">படம்</translation> <translation id="8683081248374354009">குழு ஐடியை மீட்டமை</translation> -<translation id="8683526617475118045">கிடைக்கும் பலன்கள்</translation> <translation id="869891660844655955">காலாவதியாகும் தேதி</translation> <translation id="8699120352855309748">இந்த மொழிகளுக்கு மொழிபெயர்ப்பு வேண்டாம்:</translation> <translation id="8712637175834984815">புரிந்தது</translation> @@ -1516,7 +1515,6 @@ <translation id="9148126808321036104">மீண்டும் உள்நுழைக</translation> <translation id="9158770349521403363">உள்ளடக்கத்தை மட்டும் பகிரும்</translation> <translation id="9159716826369098114"><ph name="TAB_COUNT" /> பக்கங்களின் பக்கக் குழுவை புதிய பின்னணிப் பக்கக் குழுவாக மீட்டெடுக்கும்.</translation> -<translation id="916446198114569890">நீங்கள் பார்வையிடும் URLகள் உங்கள் Google கணக்கில் சேமிக்கப்படும்</translation> <translation id="9169507124922466868">வழிசெலுத்தல் வரலாறு பாதியளவு திறந்துள்ளது</translation> <translation id="9187955620966010988">உணர்வு வெளிப்பாட்டில் மாற்றம் செய்யப்பட்டது</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{சரிபார்த்தது: 1 நிமிடத்திற்கு முன்பு}other{சரிபார்த்தது: # நிமிடங்களுக்கு முன்பு}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_te.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_te.xtb index 4af9a67..5038db0 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_te.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_te.xtb
@@ -9,7 +9,7 @@ <translation id="1036727731225946849"><ph name="WEBAPK_NAME" />ని జోడిస్తోంది...</translation> <translation id="1045899828449635435">ఈ సైట్ల డేటా కూడా తొలగించాలా?</translation> <translation id="1049743911850919806">అజ్ఞాత మోడ్</translation> -<translation id="10614374240317010">ఎప్పటికి సేవ్ చెయ్యబడవు</translation> +<translation id="10614374240317010">ఎప్పటికి సేవ్ చేయబడవు</translation> <translation id="1062628064301375934">మరింత ప్రైవేట్గా ఉండే వెబ్ అనుభవాన్ని క్రియేట్ చేయడంలో మాకు సహాయపడండి</translation> <translation id="107147699690128016">మీరు ఫైల్ ఎక్స్టెన్షన్ను మార్చితే, ఫైల్ వేరే అప్లికేషన్లో తెరవబడవచ్చు. అది మీ పరికరానికి హానికరంగా పరిణమించే అవకాశం ఉంటుంది.</translation> <translation id="1089606299949659462">రివ్యూ పూర్తయింది!</translation> @@ -28,14 +28,13 @@ <translation id="1142732900304639782">ఈ సైట్లను అనువాదం చేసే సదుపాయాన్ని అందించవద్దు</translation> <translation id="1145536944570833626">ఇప్పటికే ఉన్న డేటాను తొలగించండి.</translation> <translation id="1146678959555564648">VRలోకి ప్రవేశించు</translation> -<translation id="114825011539563458">ముఖ్యమైన గోప్యత, సెక్యూరిటీ కంట్రోల్స్ను ఒకే చోట పొందండి</translation> <translation id="1149401351239820326">గడువు ముగింపు నెల</translation> <translation id="1150263420752757504"><ph name="APP_NAME" /> Chromeలో తెరవబడుతుంది. కొనసాగడం ద్వారా, మీరు <ph name="BEGIN_LINK1" />Google సర్వీస్ నియమాలు<ph name="END_LINK1" />, అలాగే <ph name="BEGIN_LINK2" />Google Chrome, ChromeOS అదనపు సర్వీస్ నియమాలకు<ph name="END_LINK2" /> అంగీకరిస్తున్నారు.</translation> <translation id="1154704303112745282">ఈ పేజీ ఆఫ్లైన్లో అందుబాటులో లేదు: <ph name="VIOLATED_URL" /></translation> <translation id="1171770572613082465">"టాప్ సైట్లు" బటన్పై నొక్కడం ద్వారా ప్రసిద్ధ వెబ్సైట్లను చూడండి</translation> <translation id="1173894706177603556">పేరుమార్చు</translation> <translation id="1177863135347784049">అనుకూల</translation> -<translation id="1181037720776840403">తీసివేయి</translation> +<translation id="1181037720776840403">తీసివేయండి</translation> <translation id="1193729455103054076">శక్తివంతమైన పాస్వర్డ్ను ఉపయోగించాలా?</translation> <translation id="1197267115302279827">బుక్మార్క్లను తరలించు</translation> <translation id="1201402288615127009">తరువాత</translation> @@ -170,6 +169,7 @@ <translation id="189358972401248634">ఇతర భాషలు</translation> <translation id="1894023287452300670">ధరను ఇక్కడ ట్రాక్ చేయండి</translation> <translation id="1900260903084164610">కొనసాగించడం ద్వారా మీరు <ph name="BEGIN_TOS_LINK" />సర్వీస్ నియమాల<ph name="END_TOS_LINK" />కు అంగీకరిస్తున్నారు.</translation> +<translation id="1904580727789512086">మీరు వెళ్లే URLలు మీ Google ఖాతాకు సేవ్ చేయబడతాయి</translation> <translation id="1910950723001426294">షేరింగ్ ఆప్షన్ల లిస్ట్ మూసివేయబడింది.</translation> <translation id="1918175104945982129">Assistant వాయిస్ సెర్చ్ సమ్మతి UI సగం ఎత్తులో తెరవబడింది</translation> <translation id="1919130412786645364">Chrome సైన్-ఇన్ని అనుమతించండి</translation> @@ -194,7 +194,6 @@ <translation id="2000419248597011803">అడ్రస్ బార్, సెర్చ్ బాక్స్లలో చేసే సెర్చ్లు, కొన్ని కుక్కీలను మీరు ఆటోమేటిక్ ఆప్షన్గా సెట్ చేసిన సెర్చ్ ఇంజిన్కు పంపుతుంది</translation> <translation id="200114059308480249">Googleలో ఏదైనా సెర్చ్ చేసినప్పుడు, ఆ సెర్చ్ తాలూకు సందర్భోచిత టెక్స్ట్ను కూడా చేర్చాలనుకుంటున్నారా?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# ఫైల్}other{# ఫైళ్లు}}</translation> -<translation id="2020309681647789787">సింక్ చేసిన మీ పరికరాలన్నింటిలో మీ హిస్టరీ ఉంటుంది, కాబట్టి మీరు ఏదైతే చేస్తున్నారో, దానిని కొనసాగించవచ్చు</translation> <translation id="2021896219286479412">ఫుల్-స్క్రీన్ సైట్ నియంత్రణలు</translation> <translation id="2038563949887743358">డెస్క్టాప్ సైట్ రిక్వెస్ట్ను ఆన్ చేయండి</translation> <translation id="204321170514947529"><ph name="APP_NAME" /> డేటాను Chromeలో కూడా కలిగి ఉంటుంది</translation> @@ -280,7 +279,6 @@ <translation id="2527779675047087889">క్లిప్ బోర్డ్ కంటెంట్లను దాచండి</translation> <translation id="2532336938189706096">వెబ్ వీక్షణ</translation> <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> అంశాలు తొలగించబడ్డాయి</translation> -<translation id="2534582914273493287">మీరు సందర్శించే URLలు Googleకు పంపబడతాయి</translation> <translation id="2536728043171574184">ఈ పేజీ ఆఫ్లైన్ కాపీని వీక్షిస్తున్నారు</translation> <translation id="2546283357679194313">కుక్కీలు మరియు సైట్ డేటా</translation> <translation id="2549516196460093976">ఈ QR కోడ్ను చూపించే కంప్యూటర్లో సైన్ ఇన్ చేయడానికి మీరు ఈ టాబ్లెట్ను ఉపయోగించవచ్చు.</translation> @@ -372,7 +370,6 @@ <translation id="2996291259634659425">రహస్య పదబంధాన్ని క్రియేట్ చేయండి</translation> <translation id="2996809686854298943">URL అవసరం</translation> <translation id="2997081575621687554">Google సైట్ వారి పేజీలోని లింక్లను ప్రైవేట్గా ప్రీ - లోడ్ చేయమని అడిగినప్పుడు, Chrome కుక్కీలు లేకుండా Google సర్వర్ల ద్వారా పేజీలను ఎన్క్రిప్ట్, అలాగే ప్రీ - లోడ్ చేస్తుంది. ఇది ప్రీ - లోడ్ చేయబడిన సైట్ నుండి మీ గుర్తింపును దాచిపెడుతుంది.</translation> -<translation id="3003733539450769656">ప్రమాదకరమైన సంఘటనలు జరగడానికి ముందే, వాటి గురించి మిమ్మల్ని హెచ్చరిస్తుంది</translation> <translation id="3006881078666935414">వినియోగ డేటా లేదు</translation> <translation id="301080557829842765">గోప్యతా గైడ్</translation> <translation id="3016635187733453316">ఈ పరికరం ఇంటర్నెట్కు కనెక్ట్ చేయబడి ఉందని నిర్ధారించుకోండి</translation> @@ -432,6 +429,7 @@ <translation id="3284510035090979597">తనకు తానుగా సహాయం</translation> <translation id="3285080554353377245">Chromeను ఎలా ఉపయోగించాలనే దానికి సంబంధించిన వీడియోలు</translation> <translation id="3288003805934695103">పేజీని మళ్లీ లోడ్ చేయడం</translation> +<translation id="3290249595466894471">కొత్త రకం ప్రమాదాలను గుర్తించడంలో సహాయపడటానికి కొన్ని నమూనా పేజీలు, డౌన్లోడ్లు, ఎక్స్టెన్షన్ యాక్టివిటీ, సిస్టమ్ సమాచారాన్ని కూడా పంపుతుంది</translation> <translation id="3297344142967351106">వాయిస్ సహాయం</translation> <translation id="3303414029551471755">కంటెంట్ను డౌన్లోడ్ చేయడం కొనసాగించాలా?</translation> <translation id="3334729583274622784">ఫైల్ ఎక్స్టెన్షన్ను మార్చాలా?</translation> @@ -554,7 +552,7 @@ <translation id="4060598801229743805">ఎంపికలు స్క్రీన్ పైభాగానికి సమీపంలో అందుబాటులో ఉంటాయి</translation> <translation id="4062305924942672200">చట్ట సంబంధిత సమాచారం</translation> <translation id="4084682180776658562">బుక్మార్క్ చేయండి</translation> -<translation id="4084712963632273211"><ph name="PUBLISHER_ORIGIN" /> నుండి – <ph name="BEGIN_DEEMPHASIZED" />Google బట్వాడా చేస్తోంది<ph name="END_DEEMPHASIZED" /></translation> +<translation id="4084712963632273211"><ph name="PUBLISHER_ORIGIN" /> నుండి – <ph name="BEGIN_DEEMPHASIZED" />Google డెలివరీ చేస్తోంది<ph name="END_DEEMPHASIZED" /></translation> <translation id="4095146165863963773">యాప్ డేటాను తొలగించాలా?</translation> <translation id="4096227151372679484">బుక్మార్క్ను సేవ్ చేయడానికి సంబంధించిన దశల ఫోల్డర్లు స్క్రీన్లో సగం వరకు తెరవబడ్డాయి</translation> <translation id="4099578267706723511">వినియోగ గణాంకాలు, క్రాష్ రిపోర్ట్లను Googleకు పంపి, తద్వారా Chromeను మెరుగుపరచడంలో సహాయపడండి.</translation> @@ -637,7 +635,6 @@ <translation id="4558311620361989323">వెబ్పేజీ షార్ట్కట్లు</translation> <translation id="4561730552726921821">రిజిస్ట్రేషన్ విజయవంతమైంది</translation> <translation id="4561979708150884304">కనెక్షన్ లేదు</translation> -<translation id="4562008740775511591">Chrome తగిన ఆటోమేటిక్ సెట్టింగ్లను అందిస్తుంది, కానీ మీరు మీ బ్రౌజింగ్ అలవాట్లకు తగినట్లుగా మీరు దీన్ని అనుకూలంగా మార్చవచ్చు</translation> <translation id="4565377596337484307">పాస్వర్డ్ను దాచిపెట్టు</translation> <translation id="4572422548854449519">నిర్వాహిత ఖాతాకు సైన్ ఇన్ చేయండి</translation> <translation id="4576892426230499203">మరొక వెరిఫికేషన్ ఆప్షన్ను ట్రై చేయండి</translation> @@ -736,7 +733,7 @@ <translation id="5011311129201317034"><ph name="SITE" /> దీనికి కనెక్ట్ చేయాలనుకుంటోంది</translation> <translation id="5016205925109358554">Serif</translation> <translation id="5032430150487044192">QR కోడ్ను క్రియేట్ చేయడం సాధ్యపడదు</translation> -<translation id="5039804452771397117">అనుమతించు</translation> +<translation id="5039804452771397117">అనుమతించండి</translation> <translation id="5054455334322721892">మీరు సైన్ ఇన్ చేసినప్పుడు, <ph name="BEGIN_LINK1" />ఇతర రకాల యాక్టివిటీ<ph name="END_LINK1" /> మీ Google ఖాతాలో సేవ్ చేయబడవచ్చు. మీరు వాటిని ఎప్పుడైనా తొలగించవచ్చు.</translation> <translation id="5061533557687621530">వాతావరణం గురించి తెలుసుకోవడానికి, మైక్ను ట్యాప్ చేసి, “ఈ రోజు వాతావరణం ఎలా ఉంది?” అని అడగండి</translation> <translation id="506254248375231072">ట్యాబ్లు ఏవీ లేవు</translation> @@ -809,7 +806,7 @@ <translation id="5468068603361015296">మీరు ఏదేమైనా <ph name="FILE_NAME" />ను డౌన్లోడ్ చేయాలనుకుంటున్నారా?</translation> <translation id="548278423535722844">మ్యాప్స్ యాప్లో తెరువు</translation> <translation id="5483197086164197190">Chrome గురించి తెలుసుకోండి</translation> -<translation id="5487521232677179737">డేటాని తీసివేయి</translation> +<translation id="5487521232677179737">డేటాను తీసివేయండి</translation> <translation id="549025011754480756">మీ వాయిస్తో సెర్చ్ చేయడం ఎలా</translation> <translation id="5492637351392383067">పరికరంలో ఎన్క్రిప్షన్</translation> <translation id="5514904542973294328">ఈ పరికర నిర్వాహకులు నిలిపివేశారు</translation> @@ -919,7 +916,6 @@ <translation id="604996488070107836">తెలియని ఎర్రర్ కారణంగా <ph name="FILE_NAME" /> డౌన్లోడ్ విఫలమైంది.</translation> <translation id="605721222689873409">YY</translation> <translation id="6059830886158432458">ఇక్కడ మీ కథనాలు, యాక్టివిటీని కంట్రోల్ చేయండి</translation> -<translation id="6069177176307973611">గోప్యత, సెక్యూరిటీ సెట్టింగ్లను రివ్యూ చేయండి</translation> <translation id="6070730414166672373">మీ బ్యాంక్ను సంప్రదిస్తోందిu2026</translation> <translation id="6085886413119427067">సెక్యూర్ కనెక్షన్ ద్వారా వెబ్సైట్లకు ఎలా కనెక్ట్ కావాలో నిశ్చయిస్తుంది</translation> <translation id="6091413777268123602">గోప్యతా పరిరక్షణ టెక్నాలజీల సెట్ ట్రయల్స్తో, మీ డేటాను తక్కువగా ఉపయోగించి సైట్లు అదే బ్రౌజింగ్ అనుభవాన్ని అందించగలవు. అంటే మీకు మరింత గోప్యత ఉంటుంది, అలాగే తక్కువ క్రాస్-సైట్ ట్రాకింగ్ ఉంటుంది. టెస్ట్ చేయడానికి సిద్ధంగా ఉన్నప్పుడు మేము కొత్త ట్రయల్స్ను జోడిస్తాము.</translation> @@ -1012,14 +1008,14 @@ <translation id="6539092367496845964">ఏదో తప్పు జరిగింది. తర్వాత మళ్లీ ప్రయత్నించండి.</translation> <translation id="6541042852576515209">పరిమాణం మార్చండి, అలాగే తిప్పండి</translation> <translation id="6541983376925655882">{NUM_HOURS,plural, =1{1 గంట క్రితం చెక్ చేసింది}other{# గంటల క్రితం చెక్ చేసింది}}</translation> -<translation id="6545017243486555795">మొత్తం డేటాను తీసివేయి</translation> +<translation id="6545017243486555795">మొత్తం డేటాను తీసివేయండి</translation> <translation id="6546511553472444032">ఫైల్ హానికరమైనది కావచ్చు</translation> <translation id="6556542240154580383">{TAB_COUNT,plural, =1{<ph name="TAB_TITLE" />, ఇంకా మరో <ph name="TAB_COUNT_ONE" /> ట్యాబ్ మూసివేయబడుతుంది}other{<ph name="TAB_TITLE" />, ఇంకా మరో <ph name="TAB_COUNT_MANY" /> ట్యాబ్లు మూసివేయబడతాయి}}</translation> <translation id="6560414384669816528">Sogouతో వెతకండి</translation> <translation id="656065428026159829">మరిన్ని చూడండి</translation> <translation id="6565959834589222080">అందుబాటులో ఉన్నప్పుడు Wi-Fi ఉపయోగించబడుతుంది</translation> <translation id="6569373978618239158">మీరు కొత్త ట్యాబ్ను తెరిచినప్పుడు మీరు ఇప్పుడు <ph name="SITE_NAME" /> నుండి కథనాలను చూస్తారు. మీరు ఫాలో అయ్యే సైట్లు మీ Google ఖాతాలో సేవ్ చేయబడతాయి. మీరు వాటిని Discover సెట్టింగ్లలో మేనేజ్ చేయవచ్చు.</translation> -<translation id="6573096386450695060">ఎల్లప్పుడూ అనుమతించు</translation> +<translation id="6573096386450695060">ఎల్లప్పుడూ అనుమతించండి</translation> <translation id="6573431926118603307">మీరు మీ ఇతర పరికరాల్లోని Chromeలో తెరిచిన ట్యాబ్లు ఇక్కడ చూపబడతాయి.</translation> <translation id="6583199322650523874">ప్రస్తుత పేజీని బుక్మార్క్ చేయండి</translation> <translation id="6588043302623806746">సెక్యూర్ DNSను ఉపయోగించండి</translation> @@ -1038,8 +1034,9 @@ <translation id="6637100877383020115">యాప్ను మెరుగుపరచుకోవడంలో సహాయపడటానికి Chrome, వినియోగ, క్రాష్ డేటాను Googleకు పంపుతుంది. <ph name="BEGIN_UMA_LINK" />మేనేజ్ చేయండి<ph name="END_UMA_LINK" /></translation> <translation id="6640207029842583248">అన్ని సమయాలలో బ్లాక్ చేయండి</translation> <translation id="6641780377503683465"><ph name="INTEREST" />ను తీసివేయండి</translation> -<translation id="6643016212128521049">క్లియర్ చేయి</translation> +<translation id="6643016212128521049">క్లియర్ చేయండి</translation> <translation id="6645629752388991326">ఈ పరికరాన్ని సెక్యూరిటీ కీగా ఉపయోగించడం ద్వారా ఏ పరికరాలు సైన్ ఇన్ చేయవచ్చో అనే దాన్ని కంట్రోల్ చేయండి.</translation> +<translation id="6647441008198474441">మీరు తర్వాత ఏ సైట్లను సందర్శించవచ్చు అనే దానిని అంచనా వేయడానికి మీరు సందర్శించే URLలు Googleకు పంపబడతాయి</translation> <translation id="6648459603387803038">మీ అడ్మినిస్ట్రేటర్ మీ బ్రౌజర్ సెటప్ను రిమోట్ విధానంలో మార్చవచ్చు. ఈ పరికరంలోని యాక్టివిటీని Chrome వెలుపల కూడా మేనేజ్ చేయవచ్చు.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 మరియు మరో <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}other{<ph name="CONTACT_PREVIEW" />\u2026 మరియు మరో <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}}</translation> <translation id="6649642165559792194"><ph name="BEGIN_NEW" />కొత్త<ph name="END_NEW" /> చిత్రం ప్రివ్యూ చేయండి</translation> @@ -1047,9 +1044,8 @@ <translation id="6659594942844771486">బ్రౌజర్ ట్యాబ్</translation> <translation id="666731172850799929"><ph name="APP_NAME" />లో తెరువు</translation> <translation id="6671495933530132209">చిత్రాన్ని కాపీ చేయి</translation> -<translation id="6674044799624355221">కొత్త రకం ప్రమాదాలను గుర్తించడంలో సహాయపడటానికి కొన్ని నమూనా పేజీలు, డౌన్లోడ్లు, ఎక్స్టెన్షన్ యాక్టివిటీ, ఇంకా సిస్టమ్ సమాచారాన్ని పంపుతుంది</translation> <translation id="6674571176963658787">సింక్ను ప్రారంభించడానికి, రహస్య పదబంధాన్ని ఎంటర్ చేయండి</translation> -<translation id="6676840375528380067">ఈ పరికరం నుండి మీ Chrome డేటాని తీసివేయాలా?</translation> +<translation id="6676840375528380067">ఈ పరికరం నుండి మీ Chrome డేటాను తీసివేయాలా?</translation> <translation id="6684809838922667136">Chromeను మెరుగుపరచండి</translation> <translation id="670498945988402717">నిన్న చెక్ చేసింది</translation> <translation id="6710213216561001401">మునుపటి</translation> @@ -1069,7 +1065,6 @@ <translation id="6802555630140434547">విండో మూసివేయబడుతుంది</translation> <translation id="6811034713472274749">పేజీ వీక్షించడానికి సిద్ధంగా ఉంది</translation> <translation id="6813446258015311409">Chromeకు సైన్ ఇన్ చేయండి, తెరవబడింది.</translation> -<translation id="6814033694018386318">మీరు Google తో ఏమి షేర్ చేస్తారు</translation> <translation id="6817747507826986771">త్వరగా ఈ పేజీని షేర్ చేయండి. ఈ షార్ట్కట్ను ఎడిట్ చేయడానికి, నొక్కి, పట్టుకోండి.</translation> <translation id="6819199143469632133">మీ పరికరాలన్నింటిలో Google ప్రయోజనాలను పొందడానికి, సైన్ ఇన్ చేయండి</translation> <translation id="6820686453637990663">CVC</translation> @@ -1164,6 +1159,7 @@ <translation id="7352939065658542140">వీడియో</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{ఎంచుకోబడిన 1 అంశాన్ని భాగస్వామ్యం చేస్తుంది}other{ఎంచుకోబడిన # అంశాలను భాగస్వామ్యం చేస్తుంది}}</translation> <translation id="7359002509206457351">మీ పేమెంట్ ఆప్షన్లను యాక్సెస్ చేయనీయడం</translation> +<translation id="7363349185727752629">మీ గోప్యతా ఎంపికల గైడ్</translation> <translation id="7375125077091615385">రకం:</translation> <translation id="7376560087009844242">'వెతకడానికి తాకండి'ని ఉపయోగించినప్పుడు, పేజీ తాలూకు ఎక్కువ టెక్స్ట్ను చేర్చడం ద్వారా మీరు మెరుగైన ఫలితాలను చూడవచ్చు. దీనిని మార్చడానికి మీరు ఎప్పుడైనా <ph name="BEGIN_LINK" />సెట్టింగ్ల<ph name="END_LINK" />కు వెళ్లవచ్చు.</translation> <translation id="7379900596734708416">సైట్ల కోసం ముదురు రంగు రూపం అందుబాటులో ఉంది</translation> @@ -1216,7 +1212,7 @@ <translation id="7630202231528827509">ప్రొవైడర్ URL</translation> <translation id="7634280112532283638">స్పామ్ & మోసాన్ని తగ్గించడం</translation> <translation id="7638584964844754484">రహస్య పదబంధం చెల్లదు</translation> -<translation id="7641339528570811325">బ్రౌజింగ్ డేటాను తీసివేయి…</translation> +<translation id="7641339528570811325">బ్రౌజింగ్ డేటాను తీసివేయండి…</translation> <translation id="7646772052135772216">పాస్వర్డ్ సింక్ పనిచేయడం లేదు</translation> <translation id="7655900163790317559">బ్లూటూత్ ఆన్ అవుతోంది…</translation> <translation id="7658239707568436148">రద్దు చేయండి</translation> @@ -1263,6 +1259,7 @@ <translation id="7876243839304621966">అన్నీ తొలగించు</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{మీకు <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> చదవని పేజీ ఉంది}other{మీకు <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> చదవని పేజీలు ఉన్నాయి}}</translation> <translation id="7886917304091689118">Chromeలో అమలు అవుతోంది</translation> +<translation id="7887174313503389866">ముఖ్య గోప్యతా, సెక్యూరిటీ కంట్రోల్స్ ఉత్పత్తి పరిచయ వివరాలను తెలుసుకోండి. మరిన్ని ఆప్షన్ల కోసం, ఒక్కో సెట్టింగ్కు వెళ్లండి.</translation> <translation id="7887334752153342268">నకిలీ</translation> <translation id="789763218334337857">Chromeను ఉపయోగించడం ఎలా</translation> <translation id="7903184275147100332">దీనికి ఒక నిమిషం పట్టవచ్చు</translation> @@ -1376,7 +1373,8 @@ <translation id="8445448999790540984">పాస్వర్డ్లను ఎగుమతి చేయడం సాధ్యం కాదు</translation> <translation id="8446884382197647889">మరింత తెలుసుకోండి</translation> <translation id="8453310803815879010">డైనో గేమ్ను ప్రారంభించండి</translation> -<translation id="8461694314515752532">మీ స్వంత సింక్ రహస్య పదబంధంతో సింక్ చేయబడిన డేటాని ఎన్క్రిప్ట్ చేయండి</translation> +<translation id="8460448946170646641">ముఖ్య గోప్యతా, సెక్యూరిటీ కంట్రోల్స్ రివ్యూ</translation> +<translation id="8461694314515752532">మీ స్వంత సింక్ రహస్య పదబంధంతో సింక్ చేయబడిన డేటాను ఎన్క్రిప్ట్ చేయండి</translation> <translation id="8466613982764129868"><ph name="TARGET_DEVICE_NAME" /> ఇంటర్నెట్కు కనెక్ట్ చేయబడి ఉందని నిర్ధారించుకోండి</translation> <translation id="8473863474539038330">అడ్రస్లు, మరికొన్ని వివరాలు</translation> <translation id="8481921391193215807">ఆన్ చేసినప్పుడు, సైట్లు వారి కంటెంట్, అలాగే సర్వీస్లను అందించడం కోసం, ఇక్కడ చూపిన గోప్యతా-సంరక్షణ పద్ధతులను ఉపయోగించవచ్చు. వీటిలో క్రాస్-సైట్ ట్రాకింగ్ ప్రత్యామ్నాయాలు కలిగి ఉంటాయి. కాలానుగుణంగా మరిన్ని ట్రయల్లు జోడించబడవచ్చు. @@ -1421,6 +1419,7 @@ <translation id="8636825310635137004">మీ ఇతర పరికరాల నుండి మీ ట్యాబ్లను పొందడానికి, సింక్ను ఆన్ చేయండి</translation> <translation id="8641930654639604085">వయోజన కంటెంట్ గల సైట్లను బ్లాక్ చేయడానికి ప్రయత్నించండి</translation> <translation id="864544049772947936">విండోలను మేనేజ్ చేయండి (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">ప్రమాదకరమైన సంఘటనలు జరగడానికి ముందే, వాటిని పసిగట్టి మిమ్మల్ని హెచ్చరిస్తుంది</translation> <translation id="8646467750715887511">మీరు పేజీలను తెరిచిన తర్వాత మాత్రమే అవి లోడ్ అవుతాయి.</translation> <translation id="8655129584991699539">మీరు Chrome సెట్టింగ్లలో డేటాను తీసివేయవచ్చు</translation> <translation id="8659579665266920523">Chromeతో సెర్చ్ చేయడం ఎలా</translation> @@ -1433,7 +1432,6 @@ <translation id="867767487203716855">తర్వాతి అప్డేట్</translation> <translation id="8683039184091909753">ఇమేజ్</translation> <translation id="8683081248374354009">గ్రూప్ను రీసెట్ చేయండి</translation> -<translation id="8683526617475118045">మీరు ఏమి పొందుతారు</translation> <translation id="869891660844655955">గడువు తేదీ</translation> <translation id="8699120352855309748">ఈ భాషలను అనువాదం చేసే సదుపాయాన్ని అందించవద్దు</translation> <translation id="8712637175834984815">అర్థమైంది</translation> @@ -1517,7 +1515,6 @@ <translation id="9148126808321036104">మళ్ళీ సైన్ ఇన్ చేయండి</translation> <translation id="9158770349521403363">కంటెంట్ను మాత్రమే షేర్ చేయండి</translation> <translation id="9159716826369098114"><ph name="TAB_COUNT" /> ట్యాబ్ల ట్యాబ్ గ్రూప్ను కొత్త బ్యాక్గ్రౌండ్ ట్యాబ్ గ్రూప్గా రీస్టోర్ చేయండి.</translation> -<translation id="916446198114569890">మీరు సందర్శించే URLలు మీ Google ఖాతాకు సేవ్ చేయబడతాయి</translation> <translation id="9169507124922466868">నావిగేషన్ చరిత్ర సగం తెరిచి ఉంది</translation> <translation id="9187955620966010988">ప్రతిస్పందన సర్దుబాటు చేయబడింది</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{1 నిమిషం క్రితం చెక్ చేసింది}other{# నిమిషాల క్రితం చెక్ చేసింది}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_th.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_th.xtb index db98781ab..4ee1fbc 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_th.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_th.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">ไม่ต้องเสนอการแปลเว็บไซต์เหล่านี้</translation> <translation id="1145536944570833626">ลบข้อมูลที่มีอยู่</translation> <translation id="1146678959555564648">เข้าสู่ VR</translation> -<translation id="114825011539563458">การควบคุมความเป็นส่วนตัวและความปลอดภัยที่สำคัญที่สุดในที่เดียว</translation> <translation id="1149401351239820326">เดือนที่หมดอายุ</translation> <translation id="1150263420752757504"><ph name="APP_NAME" /> จะเปิดใน Chrome การดำเนินการต่อหมายความว่า คุณยอมรับ<ph name="BEGIN_LINK1" />ข้อกำหนดในการให้บริการของ Google<ph name="END_LINK1" /> และ<ph name="BEGIN_LINK2" />ข้อกำหนดในการให้บริการเพิ่มเติมของ Google Chrome และ Chrome OS<ph name="END_LINK2" /></translation> <translation id="1154704303112745282">หน้าเว็บใช้งานไม่ได้ขณะออฟไลน์: <ph name="VIOLATED_URL" /></translation> @@ -170,6 +169,7 @@ <translation id="189358972401248634">ภาษาอื่นๆ</translation> <translation id="1894023287452300670">ติดตามราคาที่นี่</translation> <translation id="1900260903084164610">การดำเนินการต่อหมายความว่าคุณยอมรับ<ph name="BEGIN_TOS_LINK" />ข้อกำหนดในการให้บริการ<ph name="END_TOS_LINK" /></translation> +<translation id="1904580727789512086">ระบบจะบันทึก URL ที่เข้าชมไว้ในบัญชี Google ของคุณ</translation> <translation id="1910950723001426294">ปิดรายการตัวเลือกการแชร์แล้ว</translation> <translation id="1918175104945982129">UI คำยินยอมให้ค้นหาด้วยเสียงของ Assistant ที่เปิดอยู่ที่ระดับความสูงครึ่งหนึ่งของหน้าจอ</translation> <translation id="1919130412786645364">อนุญาตให้ลงชื่อเข้าใช้ Chrome</translation> @@ -194,7 +194,6 @@ <translation id="2000419248597011803">ส่งคุกกี้และการค้นหาบางรายการจากแถบที่อยู่และช่องค้นหาไปยังเครื่องมือค้นหาเริ่มต้น</translation> <translation id="200114059308480249">รวมข้อความที่อยู่โดยรอบในการค้นหาบน Google ไหม</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# ไฟล์}other{# ไฟล์}}</translation> -<translation id="2020309681647789787">อุปกรณ์ทั้งหมดที่ซิงค์ไว้จะมีประวัติการเข้าชมของคุณอยู่ ดังนั้นคุณสามารถทำสิ่งที่ดำเนินการอยู่ต่อได้</translation> <translation id="2021896219286479412">ส่วนควบคุมเว็บไซต์แบบเต็มหน้าจอ</translation> <translation id="2038563949887743358">เปิดการขอเว็บไซต์เดสก์ท็อป</translation> <translation id="204321170514947529"><ph name="APP_NAME" /> มีข้อมูลอยู่ใน Chrome ด้วย</translation> @@ -280,7 +279,6 @@ <translation id="2527779675047087889">ซ่อนเนื้อหาในคลิปบอร์ด</translation> <translation id="2532336938189706096">มุมมองเว็บ</translation> <translation id="2534155362429831547">ลบแล้ว <ph name="NUMBER_OF_ITEMS" /> รายการ</translation> -<translation id="2534582914273493287">URL ที่คุณเข้าชมจะส่งไปยัง Google</translation> <translation id="2536728043171574184">ดูสำเนาแบบออฟไลน์ของหน้านี้</translation> <translation id="2546283357679194313">คุกกี้และข้อมูลเว็บไซต์</translation> <translation id="2549516196460093976">คุณสามารถใช้แท็บเล็ตเครื่องนี้เพื่อลงชื่อเข้าใช้ในคอมพิวเตอร์ที่แสดงคิวอาร์โค้ดนี้</translation> @@ -372,7 +370,6 @@ <translation id="2996291259634659425">สร้างรหัสผ่าน</translation> <translation id="2996809686854298943">ต้องระบุ URL</translation> <translation id="2997081575621687554">เมื่อเว็บไซต์ Google ขอโหลดลิงก์ล่วงหน้าแบบส่วนตัว Chrome จะเข้ารหัสและโหลดหน้าเว็บล่วงหน้าผ่านเซิร์ฟเวอร์ของ Google โดยไม่มีคุกกี้ การดำเนินการนี้จะซ่อนตัวตนของคุณจากเว็บไซต์ที่โหลดล่วงหน้า</translation> -<translation id="3003733539450769656">เตือนคุณก่อนเกิดเหตุการณ์อันตราย</translation> <translation id="3006881078666935414">ไม่มีข้อมูลการใช้งาน</translation> <translation id="301080557829842765">คู่มือความเป็นส่วนตัว</translation> <translation id="3016635187733453316">ตรวจสอบว่าอุปกรณ์นี้เชื่อมต่ออินเทอร์เน็ตอยู่</translation> @@ -432,6 +429,7 @@ <translation id="3284510035090979597">ความช่วยเหลือแบบเสนอโดยไม่ต้องขอ</translation> <translation id="3285080554353377245">วิดีโอเกี่ยวกับวิธีใช้ Chrome</translation> <translation id="3288003805934695103">โหลดหน้าใหม่</translation> +<translation id="3290249595466894471">รวมถึงส่งตัวอย่างส่วนเล็กๆ ของหน้าเว็บ การดาวน์โหลด กิจกรรมของส่วนขยาย และข้อมูลระบบเพื่อช่วยค้นหาภัยคุกคามใหม่ๆ</translation> <translation id="3297344142967351106">เสียงผู้ช่วย</translation> <translation id="3303414029551471755">ต้องการดำเนินการดาวน์โหลดเนื้อหานี้ไหม</translation> <translation id="3334729583274622784">เปลี่ยนนามสกุลไฟล์ใช่ไหม</translation> @@ -637,7 +635,6 @@ <translation id="4558311620361989323">แป้นพิมพ์ลัดสำหรับหน้าเว็บ</translation> <translation id="4561730552726921821">ลงทะเบียนสำเร็จ</translation> <translation id="4561979708150884304">ไม่มีการเชื่อมต่อ</translation> -<translation id="4562008740775511591">Chrome กำหนดค่าเริ่มต้นอย่างสมเหตุสมผล แต่สามารถปรับให้เหมาะกับลักษณะนิสัยการท่องเว็บของคุณมากที่สุดได้</translation> <translation id="4565377596337484307">ซ่อนรหัสผ่าน</translation> <translation id="4572422548854449519">ลงชื่อเข้าใช้บัญชีที่มีการจัดการ</translation> <translation id="4576892426230499203">ลองใช้ตัวเลือกการยืนยันอื่น</translation> @@ -919,7 +916,6 @@ <translation id="604996488070107836">การดาวน์โหลด <ph name="FILE_NAME" /> ล้มเหลวเนื่องจากข้อผิดพลาดที่ไม่รู้จัก</translation> <translation id="605721222689873409">ปป</translation> <translation id="6059830886158432458">ควบคุมเรื่องราวและกิจกรรมของคุณได้ที่นี่</translation> -<translation id="6069177176307973611">ตรวจสอบการตั้งค่าความเป็นส่วนตัวและความปลอดภัย</translation> <translation id="6070730414166672373">กำลังติดต่อธนาคาร\u2026</translation> <translation id="6085886413119427067">กำหนดวิธีเชื่อมต่อเว็บไซต์ผ่านการเชื่อมต่อที่ปลอดภัย</translation> <translation id="6091413777268123602">เมื่อทดลองใช้ Privacy Sandbox เว็บไซต์จะสามารถมอบประสบการณ์การท่องเว็บที่เหมือนเดิมแต่ใช้ข้อมูลของคุณน้อยลง ซึ่งนั่นหมายความว่าคุณจะมีความเป็นส่วนตัวมากขึ้นและมีการติดตามข้ามเว็บไซต์น้อยลง เราจะเพิ่มการทดลองใช้ใหม่นี้เมื่อพร้อมสำหรับการทดสอบ</translation> @@ -1040,6 +1036,7 @@ <translation id="6641780377503683465">นำ<ph name="INTEREST" />ออก</translation> <translation id="6643016212128521049">ล้าง</translation> <translation id="6645629752388991326">ควบคุมว่าอุปกรณ์ใดบ้างที่สามารถลงชื่อเข้าใช้โดยให้อุปกรณ์เครื่องนี้เป็นคีย์ความปลอดภัย</translation> +<translation id="6647441008198474441">ระบบจะส่ง URL ที่คุณเข้าชมไปยัง Google เพื่อคาดคะเนเว็บไซต์ต่อไปที่คุณอาจเข้าชม</translation> <translation id="6648459603387803038">ผู้ดูแลระบบจะเปลี่ยนการตั้งค่าเบราว์เซอร์จากระยะไกลได้ กิจกรรมในอุปกรณ์นี้อาจมีการจัดการภายนอก Chrome ได้ด้วย</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 และอีก <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> รายการ}other{<ph name="CONTACT_PREVIEW" />\u2026 และอีก <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> รายการ}}</translation> <translation id="6649642165559792194">พรีวิวรูปภาพ <ph name="BEGIN_NEW" />ใหม่<ph name="END_NEW" /></translation> @@ -1047,7 +1044,6 @@ <translation id="6659594942844771486">แท็บ</translation> <translation id="666731172850799929">เปิดใน <ph name="APP_NAME" /></translation> <translation id="6671495933530132209">คัดลอกรูปภาพ</translation> -<translation id="6674044799624355221">ส่งตัวอย่างส่วนเล็กๆ ของหน้าเว็บ ไฟล์ที่ดาวน์โหลด กิจกรรมของส่วนขยาย และข้อมูลระบบเพื่อช่วยค้นหาภัยคุกคามใหม่ๆ</translation> <translation id="6674571176963658787">หากต้องการเริ่มต้นการซิงค์ ให้ป้อนรหัสผ่านของคุณ</translation> <translation id="6676840375528380067">ล้างข้อมูล Chrome ของคุณออกจากอุปกรณ์นี้ไหม</translation> <translation id="6684809838922667136">ปรับปรุง Chrome ให้ดีขึ้น</translation> @@ -1069,7 +1065,6 @@ <translation id="6802555630140434547">ระบบจะปิดหน้าต่างดังกล่าว</translation> <translation id="6811034713472274749">พร้อมดูหน้าเว็บแล้ว</translation> <translation id="6813446258015311409">ลงชื่อเข้าใช้ Chrome เปิดอยู่</translation> -<translation id="6814033694018386318">สิ่งที่คุณแชร์กับ Google</translation> <translation id="6817747507826986771">แชร์หน้านี้อย่างรวดเร็ว หากต้องการแก้ไขทางลัดนี้ ให้แตะค้างไว้</translation> <translation id="6819199143469632133">ลงชื่อเข้าใช้เพื่อรับบริการและผลิตภัณฑ์ต่างๆ ของ Google ในอุปกรณ์</translation> <translation id="6820686453637990663">CVC</translation> @@ -1164,6 +1159,7 @@ <translation id="7352939065658542140">วิดีโอ</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{แชร์ 1 รายการที่เลือก}other{แชร์ # รายการที่เลือก}}</translation> <translation id="7359002509206457351">เข้าถึงวิธีการชำระเงิน</translation> +<translation id="7363349185727752629">คู่มือแนะนำตัวเลือกด้านความเป็นส่วนตัวของคุณ</translation> <translation id="7375125077091615385">ประเภท:</translation> <translation id="7376560087009844242">การรวมข้อความของหน้ามากขึ้นอาจช่วยให้คุณเห็นผลการค้นหาที่ดีขึ้นเมื่อใช้ฟีเจอร์แตะเพื่อค้นหา คุณเปลี่ยนการตั้งค่านี้ได้ทุกเมื่อโดยไปที่<ph name="BEGIN_LINK" />การตั้งค่า<ph name="END_LINK" /></translation> <translation id="7379900596734708416">ธีมมืดสำหรับเว็บไซต์พร้อมให้ใช้งาน</translation> @@ -1263,6 +1259,7 @@ <translation id="7876243839304621966">ลบทั้งหมด</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{คุณมีหน้าที่ยังไม่อ่าน <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> หน้า}other{คุณมีหน้าที่ยังไม่อ่าน <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> หน้า}}</translation> <translation id="7886917304091689118">กำลังทำงานใน Chrome</translation> +<translation id="7887174313503389866">ดูทัวร์ชมพร้อมคำแนะนำเกี่ยวกับการควบคุมที่สำคัญด้านความเป็นส่วนตัวและความปลอดภัย หากต้องการดูตัวเลือกเพิ่มเติม ให้ไปที่การตั้งค่าแต่ละรายการ</translation> <translation id="7887334752153342268">ทำซ้ำ</translation> <translation id="789763218334337857">วิธีใช้ Chrome</translation> <translation id="7903184275147100332">การดำเนินการนี้อาจใช้เวลาสักครู่</translation> @@ -1376,6 +1373,7 @@ <translation id="8445448999790540984">ส่งออกรหัสผ่านไม่ได้</translation> <translation id="8446884382197647889">ดูข้อมูลเพิ่มเติม</translation> <translation id="8453310803815879010">เริ่มเกมไดโนเสาร์</translation> +<translation id="8460448946170646641">ตรวจสอบการควบคุมที่สำคัญด้านความเป็นส่วนตัวและความปลอดภัย</translation> <translation id="8461694314515752532">เข้ารหัสลับข้อมูลที่ซิงค์ด้วยรหัสผ่านการซิงค์ของคุณเอง</translation> <translation id="8466613982764129868">ตรวจสอบว่า <ph name="TARGET_DEVICE_NAME" /> เชื่อมต่ออินเทอร์เน็ตอยู่</translation> <translation id="8473863474539038330">ที่อยู่และอื่นๆ</translation> @@ -1421,6 +1419,7 @@ <translation id="8636825310635137004">เปิดการซิงค์เพื่อรับแท็บจากอุปกรณ์เครื่องอื่นๆ ของคุณ</translation> <translation id="8641930654639604085">พยายามบล็อกไซต์สำหรับผู้ใหญ่</translation> <translation id="864544049772947936">จัดการหน้าต่าง (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">คาดการณ์และเตือนคุณก่อนเกิดเหตุการณ์อันตราย</translation> <translation id="8646467750715887511">หน้าเว็บจะโหลดหลังจากที่เปิดแล้วเท่านั้น</translation> <translation id="8655129584991699539">คุณล้างข้อมูลได้ในการตั้งค่า Chrome</translation> <translation id="8659579665266920523">วิธีค้นหาด้วย Chrome</translation> @@ -1433,7 +1432,6 @@ <translation id="867767487203716855">การอัปเดตถัดไป</translation> <translation id="8683039184091909753">รูปภาพ</translation> <translation id="8683081248374354009">รีเซ็ตกลุ่ม</translation> -<translation id="8683526617475118045">สิ่งที่คุณจะได้รับ</translation> <translation id="869891660844655955">วันหมดอายุ</translation> <translation id="8699120352855309748">ไม่ต้องเสนอการแปลภาษาเหล่านี้</translation> <translation id="8712637175834984815">สำเร็จ</translation> @@ -1517,7 +1515,6 @@ <translation id="9148126808321036104">ลงชื่อเข้าใช้อีกครั้ง</translation> <translation id="9158770349521403363">แชร์เนื้อหาเท่านั้น</translation> <translation id="9159716826369098114">คืนค่ากลุ่มแท็บ <ph name="TAB_COUNT" /> แท็บเป็นกลุ่มแท็บใหม่ในเบื้องหลัง</translation> -<translation id="916446198114569890">ระบบจะบันทึก URL ที่เข้าชมไว้ในบัญชี Google ของคุณ</translation> <translation id="9169507124922466868">ประวัติการนำทางเปิดอยู่ครึ่งเดียว</translation> <translation id="9187955620966010988">ปรับความรู้สึกแล้ว</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{ตรวจสอบเมื่อ 1 นาทีที่ผ่านมา}other{ตรวจสอบเมื่อ # นาทีที่ผ่านมา}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_tr.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_tr.xtb index c719f00..134ededf 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_tr.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_tr.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">Şu siteleri çevirmeyi önerme:</translation> <translation id="1145536944570833626">Mevcut verileri silin.</translation> <translation id="1146678959555564648">VR'ye Gir</translation> -<translation id="114825011539563458">Gizlilik ve güvenlikle ilgili en önemli kontrolleri tek bir yerde inceleyin</translation> <translation id="1149401351239820326">Son kullanım tarihinin ayı</translation> <translation id="1150263420752757504"><ph name="APP_NAME" />, Chrome'da açılacak. Devam ederek <ph name="BEGIN_LINK1" />Google Hizmet Şartları<ph name="END_LINK1" /> ile <ph name="BEGIN_LINK2" />Google Chrome ve ChromeOS Ek Hizmet Şartları<ph name="END_LINK2" />'nı kabul etmiş olursunuz.</translation> <translation id="1154704303112745282">Sayfa çevrimdışı kullanılamaz: <ph name="VIOLATED_URL" /></translation> @@ -170,6 +169,7 @@ <translation id="189358972401248634">Diğer diller</translation> <translation id="1894023287452300670">Fiyatı buradan takip edin</translation> <translation id="1900260903084164610">Devam ederek <ph name="BEGIN_TOS_LINK" />Hizmet Şartları<ph name="END_TOS_LINK" />'nı kabul etmiş olursunuz.</translation> +<translation id="1904580727789512086">Ziyaret ettiğiniz URL'ler Google Hesabınıza kaydedilir</translation> <translation id="1910950723001426294">Paylaşım seçenekleri listesi kapalı.</translation> <translation id="1918175104945982129">Asistan sesli arama izni kullanıcı arayüzü yarım yükseklikte açıldı</translation> <translation id="1919130412786645364">Chrome'da oturum açmaya izin verin</translation> @@ -194,7 +194,6 @@ <translation id="2000419248597011803">Adres çubuğundan ve arama kutusundan bazı çerezleri ve aramaları varsayılan arama motorunuza gönderir</translation> <translation id="200114059308480249">Seçilen kelimenin etrafındaki metin Google aramalarına dahil edilsin mi?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# Dosya}other{# Dosya}}</translation> -<translation id="2020309681647789787">Geçmiş bilgilerinizi senkronize edilmiş tüm cihazlarınızda bulabileceksiniz. Bu şekilde, son bıraktığınız yerden devam edebilirsiniz</translation> <translation id="2021896219286479412">Tam ekran site kontrolleri</translation> <translation id="2038563949887743358">Masaüstü sitesi iste işlevini etkinleştir</translation> <translation id="204321170514947529"><ph name="APP_NAME" /> uygulamasına ait veriler Chrome'da da mevcut</translation> @@ -280,7 +279,6 @@ <translation id="2527779675047087889">Pano içeriklerini gizle</translation> <translation id="2532336938189706096">Web Görüntüleme</translation> <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> öğe silindi</translation> -<translation id="2534582914273493287">Ziyaret ettiğiniz URL'ler Google'a gönderilir</translation> <translation id="2536728043171574184">Bu sayfanın çevrimdışı bir kopyası görüntüleniyor</translation> <translation id="2546283357679194313">Çerezler ve site verileri</translation> <translation id="2549516196460093976">Bu QR kodunu gösteren bilgisayarda oturum açmak için bu tableti kullanabilirsiniz.</translation> @@ -372,7 +370,6 @@ <translation id="2996291259634659425">Parola oluşturun</translation> <translation id="2996809686854298943">URL gerekli</translation> <translation id="2997081575621687554">Bir Google sitesi kendi sayfasındaki bağlantıları gizli olarak önceden yüklemek istediğinde Chrome, sayfaları çerezler olmadan Google sunucuları aracılığıyla şifreler ve önceden yükler. Bu şekilde kimliğiniz önceden yüklenmiş siteden gizlenmiş olur.</translation> -<translation id="3003733539450769656">Tehlikeli etkinlikler meydana gelmeden önce sizi uyarır</translation> <translation id="3006881078666935414">Kullanım verisi yok</translation> <translation id="301080557829842765">Gizlilik kılavuzu</translation> <translation id="3016635187733453316">Bu cihazın internete bağlı olduğundan emin olun</translation> @@ -432,6 +429,7 @@ <translation id="3284510035090979597">Proaktif Yardım</translation> <translation id="3285080554353377245">Chrome'un nasıl kullanılacağıyla ilgili videolar</translation> <translation id="3288003805934695103">Sayfayı yeniden yükleme</translation> +<translation id="3290249595466894471">Ayrıca yeni tehditlerin keşfedilmesine yardımcı olmak için sayfalar, indirmeler, uzantı etkinliği ve sistem bilgilerinden küçük bir örnek gönderir.</translation> <translation id="3297344142967351106">Sesli yardım</translation> <translation id="3303414029551471755">İçeriği indirme işlemine başlansın mı?</translation> <translation id="3334729583274622784">Dosya uzantısı değiştirilsin mi?</translation> @@ -637,7 +635,6 @@ <translation id="4558311620361989323">Web sayfası kısayolları</translation> <translation id="4561730552726921821">Kayıt başarılı oldu</translation> <translation id="4561979708150884304">Bağlantı yok</translation> -<translation id="4562008740775511591">Chrome, varsayılan olarak makul seçenekler sunar ancak bu seçenekleri göz atma alışkanlığınıza en iyi uyacak şekilde özelleştirebilirsiniz</translation> <translation id="4565377596337484307">Şifreyi gizle</translation> <translation id="4572422548854449519">Yönetilen hesapta oturum açın</translation> <translation id="4576892426230499203">Başka bir doğrulama seçeneğini deneyin</translation> @@ -919,7 +916,6 @@ <translation id="604996488070107836">Bilinmeyen bir hata nedeniyle <ph name="FILE_NAME" /> dosyası indirilemedi.</translation> <translation id="605721222689873409">YY</translation> <translation id="6059830886158432458">Haberlerinizi ve aktivitenizi buradan yönetin</translation> -<translation id="6069177176307973611">Gizlilik ve güvenlik ayarlarını inceleyin</translation> <translation id="6070730414166672373">Bankanızla iletişim kuruluyor\u2026</translation> <translation id="6085886413119427067">Web siteleriyle güvenli bir bağlantı üzerinden nasıl bağlanılacağını belirler</translation> <translation id="6091413777268123602">Siteler, Özel Korumalı Alan denemeleriyle verilerinizi daha az kullanarak aynı tarama deneyimini sunabilir. Bu da sizin açınızdan gizliliğin artması ve siteler arası izlemenin azalması demektir. Test etmeye hazır hale geldikçe yeni denemeler eklemeye devam edeceğiz.</translation> @@ -1040,6 +1036,7 @@ <translation id="6641780377503683465">Kaldır: <ph name="INTEREST" /></translation> <translation id="6643016212128521049">Temizle</translation> <translation id="6645629752388991326">Bu cihazı güvenlik anahtarı olarak kullanarak hangi cihazların oturum açabileceğini kontrol edin.</translation> +<translation id="6647441008198474441">Ziyaret ettiğiniz URL'ler, daha sonra hangi siteleri ziyaret edebileceğinizi tahmin etmek için Google'a gönderilir</translation> <translation id="6648459603387803038">Yöneticiniz, tarayıcınızın kurulumunu uzaktan değiştirebilir. Bu cihazdaki etkinlikler Chrome dışında da yönetilebilir.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 ve <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> kişi daha}other{<ph name="CONTACT_PREVIEW" />\u2026 ve <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> kişi daha}}</translation> <translation id="6649642165559792194">Resmin önizlemesini aç <ph name="BEGIN_NEW" />Yeni<ph name="END_NEW" /></translation> @@ -1047,7 +1044,6 @@ <translation id="6659594942844771486">Sekme</translation> <translation id="666731172850799929"><ph name="APP_NAME" /> uygulamasında aç</translation> <translation id="6671495933530132209">Resmi kopyala</translation> -<translation id="6674044799624355221">Ayrıca yeni tehditlerin keşfedilmesine yardımcı olmak için sayfalar, indirmeler, uzantı etkinliği ve sistem bilgilerinden küçük bir örnek gönderir</translation> <translation id="6674571176963658787">Senkronizasyonu başlatmak için parolanızı girin</translation> <translation id="6676840375528380067">Chrome verileriniz bu cihazdan temizlensin mi?</translation> <translation id="6684809838922667136">Chrome'u daha iyi hale getirin</translation> @@ -1069,7 +1065,6 @@ <translation id="6802555630140434547">Pencere kapatılacak</translation> <translation id="6811034713472274749">Sayfa görüntülenmeye hazır</translation> <translation id="6813446258015311409">Chrome'da oturum açma sayfası açıldı.</translation> -<translation id="6814033694018386318">Google ile paylaştıklarınız</translation> <translation id="6817747507826986771">Bu sayfayı hızlıca paylaşın. Bu kısayolu düzenlemek için dokunup basılı tutun.</translation> <translation id="6819199143469632133">Google'daki öğelerinizi cihazlar arasında paylaşmak için oturum açın</translation> <translation id="6820686453637990663">CVC</translation> @@ -1164,6 +1159,7 @@ <translation id="7352939065658542140">VİDEO</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{1 seçili öğeyi paylaş}other{# seçili öğeyi paylaş}}</translation> <translation id="7359002509206457351">Ödeme yöntemlerine erişim</translation> +<translation id="7363349185727752629">Gizlilik tercihlerinizle ilgili kılavuz</translation> <translation id="7375125077091615385">Tür:</translation> <translation id="7376560087009844242">Sayfadaki metnin daha fazlasını dahil ederek Dokun ve Ara özelliğiyle daha iyi sonuçlara ulaşabilirsiniz. İstediğiniz zaman <ph name="BEGIN_LINK" />ayarlar<ph name="END_LINK" /> bölümünden bu tercihi değiştirebilirsiniz.</translation> <translation id="7379900596734708416">Sitelerde koyu tema kullanılabilir</translation> @@ -1263,6 +1259,7 @@ <translation id="7876243839304621966">Tümünü kaldır</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{Okunmamış <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> sayfanız var}other{Okunmamış <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> sayfanız var}}</translation> <translation id="7886917304091689118">Chrome'da çalıştırılıyor</translation> +<translation id="7887174313503389866">Önemli gizlilik ve güvenlik kontrolleriyle ilgili rehberli tura katılın. Daha fazla seçenek için bağımsız ayarlara gidin.</translation> <translation id="7887334752153342268">Yinele</translation> <translation id="789763218334337857">Chrome'u kullanma</translation> <translation id="7903184275147100332">Bu işlem bir dakika sürebilir</translation> @@ -1376,6 +1373,7 @@ <translation id="8445448999790540984">Şifreler dışa aktarılamıyor</translation> <translation id="8446884382197647889">Daha Fazla Bilgi Edinin</translation> <translation id="8453310803815879010">Dinozor oyununu başlat</translation> +<translation id="8460448946170646641">Önemli gizlilik ve güvenlik kontrollerini inceleyin</translation> <translation id="8461694314515752532">Senkronize edilen verileri kendi senkronizasyon parolanızla şifreleyin</translation> <translation id="8466613982764129868"><ph name="TARGET_DEVICE_NAME" /> cihazının internete bağlı olduğundan emin olun</translation> <translation id="8473863474539038330">Adresler ve daha fazlası</translation> @@ -1421,6 +1419,7 @@ <translation id="8636825310635137004">Diğer cihazlarınızdaki sekmelerinize ulaşmak için senkronizasyonu etkinleştirin.</translation> <translation id="8641930654639604085">Yetişkinlere yönelik siteleri engellemeyi dene</translation> <translation id="864544049772947936">Pencereleri yönetin (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">Tehlikeli etkinlikleri meydana gelmeden önce tahmin ederek sizi uyarır</translation> <translation id="8646467750715887511">Sayfalar yalnızca açıldıktan sonra yüklenir.</translation> <translation id="8655129584991699539">Verileri Chrome Ayarlarından temizleyebilirsiniz</translation> <translation id="8659579665266920523">Chrome ile arama yapma</translation> @@ -1433,7 +1432,6 @@ <translation id="867767487203716855">Sonraki güncelleme</translation> <translation id="8683039184091909753">resim</translation> <translation id="8683081248374354009">Grubu sıfırla</translation> -<translation id="8683526617475118045">Özelliğin size sağladıkları</translation> <translation id="869891660844655955">Son kullanma tarihi</translation> <translation id="8699120352855309748">Şu dilleri çevirmeyi önerme</translation> <translation id="8712637175834984815">Anlaşıldı</translation> @@ -1517,7 +1515,6 @@ <translation id="9148126808321036104">Tekrar oturum açın</translation> <translation id="9158770349521403363">Yalnızca içerik paylaşılıyor</translation> <translation id="9159716826369098114"><ph name="TAB_COUNT" /> sekmeden oluşan sekme grubunu, yeni bir arka plan sekme grubu olarak geri yükleyin.</translation> -<translation id="916446198114569890">Ziyaret ettiğiniz URL'ler Google hesabınıza kaydedilir</translation> <translation id="9169507124922466868">Gezinme geçmişi yarım açık</translation> <translation id="9187955620966010988">Tepki ayarlandı</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{1 dakika önce kontrol edildi}other{# dakika önce kontrol edildi}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_uk.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_uk.xtb index 2fdd6ea4..271057e 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_uk.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_uk.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">Не пропонувати перекладати ці сайти</translation> <translation id="1145536944570833626">Видалити наявні дані.</translation> <translation id="1146678959555564648">Увійти у VR-режим</translation> -<translation id="114825011539563458">Переглядайте найважливіші елементи керування конфіденційністю та безпекою на одній сторінці</translation> <translation id="1149401351239820326">Місяць закінчення терміну дії</translation> <translation id="1150263420752757504">Додаток <ph name="APP_NAME" /> відкриється в Chrome. Продовжуючи, ви приймаєте <ph name="BEGIN_LINK1" />Загальні положення та умови Google<ph name="END_LINK1" /> і <ph name="BEGIN_LINK2" />Додаткові умови використання Google Chrome та ОС Chrome<ph name="END_LINK2" />.</translation> <translation id="1154704303112745282">Сторінка недоступна в режимі офлайн: <ph name="VIOLATED_URL" /></translation> @@ -170,6 +169,7 @@ <translation id="189358972401248634">Інші мови</translation> <translation id="1894023287452300670">Відстежуйте ціну тут</translation> <translation id="1900260903084164610">Продовжуючи, ви приймаєте <ph name="BEGIN_TOS_LINK" />Умови використання<ph name="END_TOS_LINK" />.</translation> +<translation id="1904580727789512086">URL-адреси, на які ви переходите, зберігаються в обліковому записі Google</translation> <translation id="1910950723001426294">Список параметрів спільного доступу закрито.</translation> <translation id="1918175104945982129">Інтерфейс надання згоди на голосовий пошук через Асистента відкрито на половину висоти</translation> <translation id="1919130412786645364">Дозволити вхід у Chrome</translation> @@ -194,7 +194,6 @@ <translation id="2000419248597011803">Надсилає деякі файли cookie й пошукові запити з адресного рядка та вікна пошуку в пошукову систему за умовчанням</translation> <translation id="200114059308480249">Враховувати контекст у пошуку Google?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# файл}one{# файл}few{# файли}many{# файлів}other{# файлу}}</translation> -<translation id="2020309681647789787">Історія зберігатиметься на всіх синхронізованих пристроях, щоб ви могли продовжувати те, що ви робили</translation> <translation id="2021896219286479412">Керування повноекранним режимом</translation> <translation id="2038563949887743358">Увімкнути опцію "Запитувати версію сайту для комп’ютера"</translation> <translation id="204321170514947529">Дані додатка <ph name="APP_NAME" /> також містяться в Chrome</translation> @@ -280,7 +279,6 @@ <translation id="2527779675047087889">Сховати вміст буфера обміну</translation> <translation id="2532336938189706096">Веб-версія</translation> <translation id="2534155362429831547">Видалено елементів: <ph name="NUMBER_OF_ITEMS" /></translation> -<translation id="2534582914273493287">URL-адреси сторінок, які ви відвідуєте, надсилаються в Google</translation> <translation id="2536728043171574184">Перегляд копії сторінки в режимі офлайн</translation> <translation id="2546283357679194313">Файли cookie та дані із сайтів</translation> <translation id="2549516196460093976">Ви можете використовувати цей планшет, щоб входити на комп’ютері, де відображається цей QR-код.</translation> @@ -372,7 +370,6 @@ <translation id="2996291259634659425">Створити парольну фразу</translation> <translation id="2996809686854298943">Потрібна URL-адреса</translation> <translation id="2997081575621687554">Коли сайт Google надсилає запит на приватне попереднє завантаження посилань на його сторінці, Chrome шифрує та попередньо завантажує сторінки через сервери Google без файлів cookie. Таким чином вашу особу не можна визначити через попередньо завантажений сайт.</translation> -<translation id="3003733539450769656">Повідомляє про небезпечні події до того, як вони відбудуться</translation> <translation id="3006881078666935414">Немає даних про використання</translation> <translation id="301080557829842765">Посібник щодо конфіденційності</translation> <translation id="3016635187733453316">Перевірте, чи пристрій підключено до Інтернету</translation> @@ -432,6 +429,7 @@ <translation id="3284510035090979597">Активна допомога</translation> <translation id="3285080554353377245">Відеоінструкції щодо користування веб-переглядачем Chrome</translation> <translation id="3288003805934695103">перезавантажити сторінку</translation> +<translation id="3290249595466894471">Також надсилає невеликі зразки сторінок, завантаження, дані про дії розширень та інформацію про систему, щоб виявляти нові загрози</translation> <translation id="3297344142967351106">Голосова допомога</translation> <translation id="3303414029551471755">Завантажити вміст?</translation> <translation id="3334729583274622784">Змінити розширення файлу?</translation> @@ -637,7 +635,6 @@ <translation id="4558311620361989323">Комбінації клавіш для роботи з веб-сторінками</translation> <translation id="4561730552726921821">Реєстрацію виконано</translation> <translation id="4561979708150884304">Немає з’єднання</translation> -<translation id="4562008740775511591">У Chrome за умовчанням вибрано доречні налаштування, але ви можете змінити їх відповідно до своїх потреб</translation> <translation id="4565377596337484307">Сховати пароль</translation> <translation id="4572422548854449519">Увійдіть у керований обліковий запис</translation> <translation id="4576892426230499203">Виберіть інший варіант підтвердження</translation> @@ -919,7 +916,6 @@ <translation id="604996488070107836">Не вдалося завантажити файл <ph name="FILE_NAME" />. Сталася невідома помилка.</translation> <translation id="605721222689873409">РР</translation> <translation id="6059830886158432458">Керуйте новинами й діями тут</translation> -<translation id="6069177176307973611">Переглянути налаштування конфіденційності та безпеки</translation> <translation id="6070730414166672373">З’єднання з банком\u2026</translation> <translation id="6085886413119427067">Визначає, як безпечно підключатися до веб-сайтів</translation> <translation id="6091413777268123602">Завдяки пробним версіям функцій Privacy Sandbox сайти можуть працювати як завжди, але використовувати менше ваших даних. Для вас це означає покращену конфіденційність і менше міжсайтового відстеження. Ми додамо нові пробні версії, коли вони стануть доступними для тестування.</translation> @@ -1040,6 +1036,7 @@ <translation id="6641780377503683465">Вилучити інтерес "<ph name="INTEREST" />"</translation> <translation id="6643016212128521049">Очистити</translation> <translation id="6645629752388991326">Керуйте пристроями, на яких можна входити в обліковий запис, використовуючи цей пристрій як ключ безпеки.</translation> +<translation id="6647441008198474441">URL-адреси сторінок, які ви відвідуєте, надсилаються в Google, щоб ми могли передбачити, які сайти ви можете відвідати наступними</translation> <translation id="6648459603387803038">Адміністратор може змінити налаштування веб-переглядача віддалено. Діями на цьому пристрої можна керувати за межами Chrome.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 і ще <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}one{<ph name="CONTACT_PREVIEW" />\u2026 і ще <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}few{<ph name="CONTACT_PREVIEW" />\u2026 і ще <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}many{<ph name="CONTACT_PREVIEW" />\u2026 і ще <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}other{<ph name="CONTACT_PREVIEW" />\u2026 і ще <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" />}}</translation> <translation id="6649642165559792194">Переглянути зображення <ph name="BEGIN_NEW" />Нове<ph name="END_NEW" /></translation> @@ -1047,7 +1044,6 @@ <translation id="6659594942844771486">Вкладка</translation> <translation id="666731172850799929">Відкрити в програмі <ph name="APP_NAME" /></translation> <translation id="6671495933530132209">Копіювати зображення</translation> -<translation id="6674044799624355221">Надсилає невеликі зразки сторінок, завантаження, дані про дії розширень та інформацію про систему, щоб виявляти нові загрози</translation> <translation id="6674571176963658787">Щоб почати синхронізацію, введіть парольну фразу</translation> <translation id="6676840375528380067">Видалити дані Chrome із цього пристрою?</translation> <translation id="6684809838922667136">Покращте Chrome</translation> @@ -1069,7 +1065,6 @@ <translation id="6802555630140434547">Вікно буде закрито</translation> <translation id="6811034713472274749">Сторінка готова для перегляду</translation> <translation id="6813446258015311409">Вікно "Увійти в Chrome" відкрите.</translation> -<translation id="6814033694018386318">До якої інформації отримає доступ компанія Google</translation> <translation id="6817747507826986771">Швидко діліться цією сторінкою. Щоб змінити функцію цієї кнопки, натисніть і втримуйте її.</translation> <translation id="6819199143469632133">Увійдіть в обліковий запис, щоб користуватися сервісами Google на кількох пристроях</translation> <translation id="6820686453637990663">CVC</translation> @@ -1164,6 +1159,7 @@ <translation id="7352939065658542140">ВІДЕО</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{Поділитись 1 вибраним елементом}one{Поділитися # вибраним елементом}few{Поділитися # вибраними елементами}many{Поділитися # вибраними елементами}other{Поділитися # вибраного елемента}}</translation> <translation id="7359002509206457351">Доступ до способів оплати</translation> +<translation id="7363349185727752629">Посібник щодо конфіденційності</translation> <translation id="7375125077091615385">Тип:</translation> <translation id="7376560087009844242">Урахування контексту на сторінці може покращити результати, які надаватиме функція Пошуку дотиком. Щоб змінити параметри, можна будь-коли перейти в <ph name="BEGIN_LINK" />налаштування<ph name="END_LINK" />.</translation> <translation id="7379900596734708416">Доступна темна тема для сайтів</translation> @@ -1263,6 +1259,7 @@ <translation id="7876243839304621966">Видалити все</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{У вас <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> непрочитана сторінка}one{У вас <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> непрочитана сторінка}few{У вас <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> непрочитані сторінки}many{У вас <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> непрочитаних сторінок}other{У вас <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> непрочитаної сторінки}}</translation> <translation id="7886917304091689118">Відкрито в Chrome</translation> +<translation id="7887174313503389866">Уважно перегляньте основні елементи керування конфіденційністю та безпекою. Переходьте до кожного окремого налаштування, щоб побачити більше параметрів.</translation> <translation id="7887334752153342268">Створити копію</translation> <translation id="789763218334337857">Як користуватися веб-переглядачем Chrome</translation> <translation id="7903184275147100332">Це може тривати хвилину</translation> @@ -1376,6 +1373,7 @@ <translation id="8445448999790540984">Не вдається експортувати паролі</translation> <translation id="8446884382197647889">Докладніше</translation> <translation id="8453310803815879010">Почати гру Dino</translation> +<translation id="8460448946170646641">Перегляньте основні елементи керування конфіденційністю та безпекою</translation> <translation id="8461694314515752532">Шифрувати синхронізовані дані за допомогою власної парольної фрази</translation> <translation id="8466613982764129868">Переконайтеся, що пристрій <ph name="TARGET_DEVICE_NAME" /> підключено до Інтернету</translation> <translation id="8473863474539038330">Адреси й інше</translation> @@ -1421,6 +1419,7 @@ <translation id="8636825310635137004">Щоб мати доступ до вкладок з інших пристроїв, увімкніть синхронізацію.</translation> <translation id="8641930654639604085">Блокувати сайти для дорослих</translation> <translation id="864544049772947936">Керувати вікнами (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">Передбачає небезпечні події та повідомляє про них ще до того, як вони відбудуться</translation> <translation id="8646467750715887511">Сторінки завантажуються лише після того, як ви їх відкриєте.</translation> <translation id="8655129584991699539">Ви можете очистити дані в налаштуваннях Chrome</translation> <translation id="8659579665266920523">Як шукати контент у веб-переглядачі Chrome</translation> @@ -1433,7 +1432,6 @@ <translation id="867767487203716855">Наступне оновлення</translation> <translation id="8683039184091909753">зображення</translation> <translation id="8683081248374354009">Скинути групу</translation> -<translation id="8683526617475118045">Переваги функції</translation> <translation id="869891660844655955">Діє до</translation> <translation id="8699120352855309748">Не пропонувати перекладати ці мови</translation> <translation id="8712637175834984815">Виконано</translation> @@ -1517,7 +1515,6 @@ <translation id="9148126808321036104">Увійти знову</translation> <translation id="9158770349521403363">Поділитися лише контентом</translation> <translation id="9159716826369098114">Відновити групу вкладок (<ph name="TAB_COUNT" />) як нову фонову групу вкладок.</translation> -<translation id="916446198114569890">URL-адреси, на які ви переходите, зберігаються в обліковому записі Google</translation> <translation id="9169507124922466868">Історію навігації відкрито на половину висоти</translation> <translation id="9187955620966010988">Реакцію відкориговано</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{Перевірено 1 хвилину тому}one{Перевірено # хвилину тому}few{Перевірено # хвилини тому}many{Перевірено # хвилин тому}other{Перевірено # хвилини тому}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_ur.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_ur.xtb index af57c006..2893027 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_ur.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_ur.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">ان سائٹس کو ترجمہ کرنے کی پیشکش نہ کریں</translation> <translation id="1145536944570833626">موجودہ ڈیٹا کو حذف کریں۔</translation> <translation id="1146678959555564648">VR درج کریں</translation> -<translation id="114825011539563458">ایک ہی مقام پر انتہائی اہم رازداری اور سیکیورٹی کنٹرولز</translation> <translation id="1149401351239820326">میعاد کے اختتام کا مہینہ</translation> <translation id="1150263420752757504"><ph name="APP_NAME" /> Chrome میں کھلے گی۔ جاری رکھ کر آپ، <ph name="BEGIN_LINK1" />Google کی سروس کی شرائط<ph name="END_LINK1" /> اور <ph name="BEGIN_LINK2" />Google Chrome اور ChromeOS کی اضافی سروس کی شرائط سے اتفاق کرتے ہیں<ph name="END_LINK2" />۔</translation> <translation id="1154704303112745282">صفحہ آف لائن غیر دستیاب ہے: <ph name="VIOLATED_URL" /></translation> @@ -108,6 +107,7 @@ <translation id="1488775391433859242">آپ اس فون کا استعمال کمپیوٹر پر سائن ان کرنے کے لیے کر سکتے ہیں جو یہ QR کوڈ ڈسپلے کر رہا ہے۔</translation> <translation id="1492417797159476138">آپ نے پہلے ہی اس سائٹ کے لئے یہ صارف نام محفوظ کر لیا ہے</translation> <translation id="1493287004536771723">آپ <ph name="SITE_NAME" /> کی پیروی کر رہے ہیں</translation> +<translation id="1502010315804028179">اپنے پاس ورڈز کا نظم کرنے کے لیے، Google Play سروسز کو اپ ڈیٹ کریں</translation> <translation id="1506061864768559482">تلاش انجن</translation> <translation id="1513352483775369820">بُک مارکس اور ویب سرگزشت</translation> <translation id="1513814250881909472">اپنے دوسرے آلات سے اپنے ٹیبز حاصل کرنے کے لیے مطابقت پذیری کریں</translation> @@ -169,6 +169,7 @@ <translation id="189358972401248634">دوسری زبانیں</translation> <translation id="1894023287452300670">قیمت کو یہاں ٹریک کریں</translation> <translation id="1900260903084164610">جاری رکھ کر آپ <ph name="BEGIN_TOS_LINK" />سروس کی شرائط<ph name="END_TOS_LINK" /> سے اتفاق کرتے ہیں۔</translation> +<translation id="1904580727789512086">آپ کے ملاحظہ کردہ URLs آپ کے Google اکاؤنٹ میں محفوظ ہوتے ہیں</translation> <translation id="1910950723001426294">اشتراک کرنے کے اختیارات کی فہرست بند ہے۔</translation> <translation id="1918175104945982129">اسسٹنٹ صوتی تلاش کی رضامندی ui نصف اونچائی پر کھلی ہوئی ہے۔</translation> <translation id="1919130412786645364">Chrome میں سائن ان کی اجازت دیں</translation> @@ -193,7 +194,6 @@ <translation id="2000419248597011803">پتہ بار اور تلاش خانے سے کچھ کوکیز اور تلاشیاں آپ کے ڈیفالٹ تلاش انجن کو بھیجتا ہے</translation> <translation id="200114059308480249">Google تلاشیوں میں آس پاس کا متن شامل کریں؟</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# فائل}other{# فائلیں}}</translation> -<translation id="2020309681647789787">آپ کو اپنے سِنک کردہ سبھی آلات پر اپنی سرگزشت دکھائی دیں گی تاکہ آپ کیا کر رہے تھے اسے جاری رکھ سکیں</translation> <translation id="2021896219286479412">پوری اسکرین کے سائٹ کنٹرولز</translation> <translation id="2038563949887743358">ڈیسک ٹاپ سائٹ کی درخواست کو آن کریں</translation> <translation id="204321170514947529"><ph name="APP_NAME" /> کا ڈیٹا Chrome میں بھی ہے</translation> @@ -279,7 +279,6 @@ <translation id="2527779675047087889">کلپ بورڈ مواد چھپائیں</translation> <translation id="2532336938189706096">ویب منظر</translation> <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> آئٹمز حذف ہو گئے</translation> -<translation id="2534582914273493287">آپ کے ملاحظہ کردہ URLs Google کو بھیجے جاتے ہیں</translation> <translation id="2536728043171574184">اس صفحہ کی ایک آف لائن کاپی دیکھی جا رہی ہے</translation> <translation id="2546283357679194313">کوکیز اور سائٹ ڈیٹا</translation> <translation id="2549516196460093976">آپ اس ٹیبلیٹ کا استعمال کمپیوٹر پر لاگ ان کرنے کے لیے کر سکتے ہیں جو یہ QR کوڈ ڈسپلے کر رہا ہے۔</translation> @@ -371,7 +370,6 @@ <translation id="2996291259634659425">پاس فریز بنائیں</translation> <translation id="2996809686854298943">URL درکار ہے</translation> <translation id="2997081575621687554">جب Google سائٹ اپنے صفحہ پر لنکس کو نجی طور پر پیشگی لوڈ کرنے کا مطالبہ کرتی ہے تو Chrome کوکیز کے بغیر Google سرورز کے ذریعے صفحات کو مرموز اور پیشگی لوڈ کرتا ہے۔ اس سے پیشگی لوڈ کردہ سائٹ سے آپ کی شناخت پوشیدہ ہو جاتی ہے۔</translation> -<translation id="3003733539450769656">آپ کو خطرناک ایونٹس کے پیش آنے سے پہلے ان کے بارے میں متنبہ کرتا ہے</translation> <translation id="3006881078666935414">ڈیٹا کا کوئی استعمال نہیں</translation> <translation id="301080557829842765">رازداری کی گائیڈ</translation> <translation id="3016635187733453316">یہ یقینی بنائیں کہ آپ کا آلہ انٹرنیٹ سے منسلک ہے</translation> @@ -431,6 +429,7 @@ <translation id="3284510035090979597">فعال مدد</translation> <translation id="3285080554353377245">Chrome استعمال کرنے کے طریقے سے متعلق ویڈیوز</translation> <translation id="3288003805934695103">صفحہ دوبارہ لوڈ ہو رہا ہے</translation> +<translation id="3290249595466894471">نئے خطرات کا پتہ لگانے میں مدد کے لیے صفحات، ڈاؤن لوڈز، ایکسٹینشن کی سرگرمی اور سسٹم کی معلومات کا چھوٹا سا نمونہ بھی بھیجتا ہے</translation> <translation id="3297344142967351106">صوتی معاونت</translation> <translation id="3303414029551471755">مواد ڈاؤن لوڈ کرنے کیلئے آگے بڑھیں؟</translation> <translation id="3334729583274622784">فائل ایکسٹینشن تبدیل کریں؟</translation> @@ -636,7 +635,6 @@ <translation id="4558311620361989323">ویب صفحہ شارٹ کٹس</translation> <translation id="4561730552726921821">رجسٹریشن مکمل ہو گئی</translation> <translation id="4561979708150884304">کوئی کنکشن نہیں</translation> -<translation id="4562008740775511591">Chrome معقول ڈیفالٹس فراہم کرتا ہے، لیکن آپ اپنی براؤزنگ کی عادت کو بہترین فٹ کرنے کیلئے اسے حسب ضرورت بنا سکتے ہیں</translation> <translation id="4565377596337484307">پاس ورڈ چھپائیں</translation> <translation id="4572422548854449519">نظم کردہ اکاؤنٹ میں سائن ان کریں</translation> <translation id="4576892426230499203">توثیق کا دوسرا اختیار آزمائیں</translation> @@ -918,7 +916,6 @@ <translation id="604996488070107836">ایک نامعلوم خرابی کی وجہ سے <ph name="FILE_NAME" /> کو ڈاؤن لوڈ کرنا ناکام ہوگیا۔</translation> <translation id="605721222689873409">YY</translation> <translation id="6059830886158432458">اپنی کہانیوں اور سرگرمی کو یہاں کنٹرول کریں</translation> -<translation id="6069177176307973611">رازداری اور سیکورٹی کی ترتیبات کا جائزہ لیں</translation> <translation id="6070730414166672373">آپ کے بینک سے رابطہ کیا جا رہا ہے</translation> <translation id="6085886413119427067">کسی محفوظ کنکشن پر ویب سائٹس سے منسلک ہونے کے طریقے کا تعین کرتا ہے</translation> <translation id="6091413777268123602">رازداری سینڈ باکس کے ٹرائلز کے ساتھ، سائٹس آپ کے کم ڈیٹا کا استعمال کر کے وہی براؤزنگ تجربہ فراہم کر سکتی ہیں۔ اس کا مطلب ہے کہ آپ کے لیے زیادہ رازداری اور کم کراس سائٹ ٹریکنگ۔ ہم نئے ٹرائلز شامل کریں گے جب وہ ٹیسٹ کے لیے تیار ہوں گے۔</translation> @@ -1039,6 +1036,7 @@ <translation id="6641780377503683465"><ph name="INTEREST" /> ہٹائیں</translation> <translation id="6643016212128521049">صاف کریں</translation> <translation id="6645629752388991326">کنٹرول کریں کہ کون سے آلات اس آلے کو سیکیورٹی کلید کے بطور استعمال کر کے سائن ان کر سکتے ہیں۔</translation> +<translation id="6647441008198474441">آپ کے ملاحظہ کردہ URLs اس بات کی پیشنگوئی کرنے کے لیے Google کو بھیجے جاتے ہیں کہ آپ اگلی بار کون سی سائٹس ملاحظہ کر سکتے ہیں</translation> <translation id="6648459603387803038">آپ کا منتظم دور سے آپ کے براؤزر کا سیٹ اپ تبدیل کر سکتا ہے۔ اس آلے پر ہونے والی سرگرمی کا نظم Chrome سے باہر بھی کیا جا سکتا ہے۔</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 اور <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> مزید}other{<ph name="CONTACT_PREVIEW" />\u2026 اور <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> مزید}}</translation> <translation id="6649642165559792194">تصویر کا پیش منظر دیکھیں <ph name="BEGIN_NEW" />نیا<ph name="END_NEW" /></translation> @@ -1046,7 +1044,6 @@ <translation id="6659594942844771486">براؤزر ٹیب</translation> <translation id="666731172850799929"><ph name="APP_NAME" /> میں کھولیں</translation> <translation id="6671495933530132209">تصویر کاپی کریں</translation> -<translation id="6674044799624355221">نئے خطرات کا پتہ لگانے میں مدد کے لیے صفحات، ڈاؤن لوڈز، ایکسٹینشن کی سرگرمی اور سسٹم کی معلومات کا چھوٹا سا نمونہ بھیجتا ہے</translation> <translation id="6674571176963658787">مطابقت پذیری شروع کرنے کے لیے، اپنا پاس فریز درج کریں</translation> <translation id="6676840375528380067">اس آلہ سے آپ کا Chrome ڈیٹا صاف کریں؟</translation> <translation id="6684809838922667136">Chrome کو بہتر بنائیں</translation> @@ -1068,7 +1065,6 @@ <translation id="6802555630140434547">ونڈو بند کر دی جائے گی</translation> <translation id="6811034713472274749">صفحہ دیکھے جانے کیلئے تیار ہے</translation> <translation id="6813446258015311409">کھولے گئے Chrome میں سائن ان کریں۔</translation> -<translation id="6814033694018386318">آپ Google کے ساتھ کیا اشتراک کرتے ہیں</translation> <translation id="6817747507826986771">فوری طور پر اس صفحے کا اشتراک کریں۔ اس شارٹ کٹ میں ترمیم کرنے کے لیے، ٹچ کریں اور دبائے رکھیں۔</translation> <translation id="6819199143469632133">تمام آلات پر اپنی Google کی چیزیں حاصل کرنے کے لیے سائن ان کریں</translation> <translation id="6820686453637990663">CVC</translation> @@ -1163,6 +1159,7 @@ <translation id="7352939065658542140">ویڈیو</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{1 منتخب کردہ آئٹم کا اشتراک کریں}other{# منتخب کردہ آئٹمز کا اشتراک کریں}}</translation> <translation id="7359002509206457351">ادائیگی کے طریقوں تک رسائی حاصل کریں</translation> +<translation id="7363349185727752629">آپ کی رازداری کے انتخابات کی گائیڈ</translation> <translation id="7375125077091615385">قسم:</translation> <translation id="7376560087009844242">صفحے کے مزید متن کو شامل کر کے، آپ تلاش کرنے کے لیے ٹچ کریں کا استعمال کرتے وقت بہتر نتائج دیکھ سکتے ہیں۔ آپ اسے تبدیل کرنے کے لیے ہمیشہ <ph name="BEGIN_LINK" />ترتیبات<ph name="END_LINK" /> ملاحظہ کر سکتے ہیں۔</translation> <translation id="7379900596734708416">سائٹس کے لیے گہری تھیم دستیاب ہے</translation> @@ -1262,6 +1259,7 @@ <translation id="7876243839304621966">سبھی ہٹائیں</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{آپ کے پاس <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> بغیر پڑھا ہوا صفحہ ہے}other{آپ کے پاس <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> بغیر پڑھے ہوئے صفحات ہیں}}</translation> <translation id="7886917304091689118">Chrome میں چل رہا ہے</translation> +<translation id="7887174313503389866">کلیدی رازداری اور سیکیورٹی کنٹرولز کا ایک زیر رہنمائی ٹور کریں۔ مزید اختیارات کے لیے، انفرادی ترتیبات پر جائیں۔</translation> <translation id="7887334752153342268">ڈپلیکیٹ</translation> <translation id="789763218334337857">Chrome استعمال کرنے کا طریقہ</translation> <translation id="7903184275147100332">اس میں ایک منٹ لگ سکتا ہے</translation> @@ -1375,6 +1373,7 @@ <translation id="8445448999790540984">پاس ورڈز برآمد نہیں ہو سکتے</translation> <translation id="8446884382197647889">مزید جانیں</translation> <translation id="8453310803815879010">Dino گیم شروع کریں</translation> +<translation id="8460448946170646641">کلیدی رازداری اور سیکیورٹی کنٹرولز کا جائزہ لیں</translation> <translation id="8461694314515752532">اپنے ذاتی مطابقت پذیر پاس فریز کے ساتھ مطابقت پذیر کردہ ڈیٹا کی مرموزکاری کریں</translation> <translation id="8466613982764129868">یہ یقینی بنائیں کہ <ph name="TARGET_DEVICE_NAME" /> انٹرنیٹ سے منسلک ہے</translation> <translation id="8473863474539038330">پتے وغیرہ</translation> @@ -1420,6 +1419,7 @@ <translation id="8636825310635137004">اپنے دیگر آلات سے اپنے ٹیبز حاصل کرنے کیلئے، مطابقت پذیری کو آن کریں۔</translation> <translation id="8641930654639604085">بالغ کی سائٹس کو مسدود کرنے کی کوشش کریں</translation> <translation id="864544049772947936">(<ph name="INSTANCE_COUNTS" />) ونڈوز کا نظم کریں</translation> +<translation id="8645920082661222035">خطرناک ایونٹس ہونے سے پہلے ان کی پیشین گوئی کرتی ہے اور آپ کو ان کے بارے میں متنبہ کرتی ہے</translation> <translation id="8646467750715887511">صفحات آپ کے کھولنے کے بعد ہی لوڈ ہوتے ہیں۔</translation> <translation id="8655129584991699539">آپ Chrome ترتیبات میں ڈیٹا صاف کر سکتے ہیں</translation> <translation id="8659579665266920523">Chrome سے تلاش کرنے کا طریقہ</translation> @@ -1432,7 +1432,6 @@ <translation id="867767487203716855">اگلا اپ ڈیٹ</translation> <translation id="8683039184091909753">تصویر</translation> <translation id="8683081248374354009">گروپ ری سیٹ کریں</translation> -<translation id="8683526617475118045">آپ کو کیا ملے گا</translation> <translation id="869891660844655955">میعاد ختم ہونے کی تاریخ</translation> <translation id="8699120352855309748">ان زبانوں کو ترجمہ کرنے کی پیشکش نہ کریں</translation> <translation id="8712637175834984815">سمجھ آ گئی</translation> @@ -1516,7 +1515,6 @@ <translation id="9148126808321036104">دوبارہ سائن ان کریں</translation> <translation id="9158770349521403363">صرف مواد کا استعمال کریں</translation> <translation id="9159716826369098114"><ph name="TAB_COUNT" /> ٹیبز کے ٹیب گروپ کو پس منظر کے ایک نئے ٹیب گروپ کے بطور بحال کریں۔</translation> -<translation id="916446198114569890">آپ کے ملاحظہ کردہ URLs آپ کے Google اکاؤنٹ میں محفوظ ہوتے ہیں</translation> <translation id="9169507124922466868">نیویگیشن کی سرگزشت آدھی کھلی ہوئی ہے</translation> <translation id="9187955620966010988">ردعمل کو ایڈجسٹ کیا گیا</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{1 منٹ پہلے چیک کیا گيا}other{# منٹ پہلے چیک کیا گیا}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_uz.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_uz.xtb index 3e0ac439..ece2dbb 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_uz.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_uz.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">Quyidagi saytlarni tarjima qilish taklif qilinmasin</translation> <translation id="1145536944570833626">Mavjud ma’lumotlarni o‘chirish.</translation> <translation id="1146678959555564648">Virtual reallikka kirish</translation> -<translation id="114825011539563458">Eng muhim maxfiylik va xavfsizlik boshqaruvlarini bir joyda</translation> <translation id="1149401351239820326">Muddati tugaydigan oy</translation> <translation id="1150263420752757504"><ph name="APP_NAME" /> ilovasi Chrome ichida ochiladi. Davom etish bilan siz <ph name="BEGIN_LINK1" />Google xizmat shartlari<ph name="END_LINK1" /> bilan <ph name="BEGIN_LINK2" />Google Chrome va ChromeOS qoʻshimcha xizmat shartlariga<ph name="END_LINK2" /> rozilik bildirgan hisoblanasiz.</translation> <translation id="1154704303112745282">Sahifa oflaynda ishlamaydi: <ph name="VIOLATED_URL" /></translation> @@ -170,6 +169,7 @@ <translation id="189358972401248634">Boshqa tillar</translation> <translation id="1894023287452300670">Narxni shu yerdan kuzating</translation> <translation id="1900260903084164610">Davom etish orqali siz <ph name="BEGIN_TOS_LINK" />xizmat shartlariga<ph name="END_TOS_LINK" /> rozilik bildirasiz</translation> +<translation id="1904580727789512086">Tashrif qilingan URL manzillar Google hisobingizda saqlanadi</translation> <translation id="1910950723001426294">Ruxsat parametrlari roʻyxati yopildi.</translation> <translation id="1918175104945982129">Assistent ovozli qidiruv paneli interfeysi yarim hajmda ochildi</translation> <translation id="1919130412786645364">Chrome hisobiga kirishga ruxsat berish</translation> @@ -194,7 +194,6 @@ <translation id="2000419248597011803">Manzillar qatori va qidiruv oynasida kiritilgan so‘rovlar va ba’zi cookie ma’lumotlarni standart qidiruv tizimiga yuboradi</translation> <translation id="200114059308480249">Google qidiruvlariga qamrovli matn kiritilsinmi?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# ta fayl}other{# ta fayl}}</translation> -<translation id="2020309681647789787">Brauzer tarixingiz barcha qurilmalaringizda sinxronlanadi va ishni qolgan joyingizdan davom ettira olasiz</translation> <translation id="2021896219286479412">To‘liq ekranli rejim sozlamalari</translation> <translation id="2038563949887743358">Saytning to‘liq versiyasini ko‘rish</translation> <translation id="204321170514947529">Chrome brauzeridagi <ph name="APP_NAME" /> maʼlumotlari ham tozalanadi</translation> @@ -280,7 +279,6 @@ <translation id="2527779675047087889">Vaqtincha xotira kontentini berkitish</translation> <translation id="2532336938189706096">Veb-versiya</translation> <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> ta element oʻchirib tashlandi</translation> -<translation id="2534582914273493287">Siz tashrif qilgan URL manzillar Googlega yuborildi</translation> <translation id="2536728043171574184">Bu sahifaning oflayn nusxasi ko‘rilmoqda</translation> <translation id="2546283357679194313">Cookie fayllari va sayt ma’lumotlari</translation> <translation id="2549516196460093976">Ekranida yuqoridagi QR kod aks etgan kompyuterda hisobga shu planshet orqali kirish mumkin.</translation> @@ -372,7 +370,6 @@ <translation id="2996291259634659425">Kodli ibora yaratish</translation> <translation id="2996809686854298943">URL manzili kiritilmadi</translation> <translation id="2997081575621687554">Google platformasidagi sayt havolalarni maxfiy tarzda oldindan yuklashni talab qilsa, Chrome sahifalarni Google serverlari orqali cookie fayllarisiz shifrlaydi va oldindan yuklaydi. Bunda, oldindan yuklangan saytda shaxsingiz berkitiladi.</translation> -<translation id="3003733539450769656">Yuz berishi mumkin xavfli tahdidlar haqida oldindan ogohlantiradi</translation> <translation id="3006881078666935414">Sarf axboroti mavjud emas</translation> <translation id="301080557829842765">Maxfiylik qoʻllanmasi</translation> <translation id="3016635187733453316">Bu qurilma internetga ulanganini tekshiring</translation> @@ -432,6 +429,7 @@ <translation id="3284510035090979597">Kerakli paytda yordam</translation> <translation id="3285080554353377245">Chrome qanday ishlatilishi haqida video</translation> <translation id="3288003805934695103">Sahifani yangilash</translation> +<translation id="3290249595466894471">Sahifa, yuklanma, kengaytma harakati va tizim axboroti parchalarini ham yangi tahdidlarni aniqlashga yordam berishi uchun yuboradi</translation> <translation id="3297344142967351106">Ovozli yordam</translation> <translation id="3303414029551471755">Yuklab olinsinmi?</translation> <translation id="3334729583274622784">Fayl kengaytmasi oʻzgartirilsinmi?</translation> @@ -637,7 +635,6 @@ <translation id="4558311620361989323">Veb-sahifalar bilan ishlash</translation> <translation id="4561730552726921821">Registratsiya qilindi</translation> <translation id="4561979708150884304">Internetga ulanmagansiz</translation> -<translation id="4562008740775511591">Chrome birlamchi holatda yetarli sozlangan, lekin internetni kezishingiz asosida oʻzingizga moslab olishingiz mumkin</translation> <translation id="4565377596337484307">Parolni berkitish</translation> <translation id="4572422548854449519">Tobe hisobga kirish</translation> <translation id="4576892426230499203">Boshqa tasdiqlash usulidan foydalaning</translation> @@ -919,7 +916,6 @@ <translation id="604996488070107836">Noma’lum xatolik tufayli <ph name="FILE_NAME" /> fayli yuklab olinmadi.</translation> <translation id="605721222689873409">YY</translation> <translation id="6059830886158432458">Yangiliklar va faoliyatni shu yerdan boshqaring</translation> -<translation id="6069177176307973611">Maxfiylik va xavfsizlik sozlamalarini tekshirish</translation> <translation id="6070730414166672373">Bankka murojaat qilinmoqda\u2026</translation> <translation id="6085886413119427067">Xavfsiz aloqadan foydalanadigan saytlarga qanday ulanishini aniqlaydi</translation> <translation id="6091413777268123602">Privacy Sandbox sinovlari bilan saytlar kamroq maʼlumotlaringizdan foydalangan holda bir xil xizmat koʻrsatishi mumkin. Bunda maʼlumotlaringiz maxfiyligi oshadi va kamroq kuzatiladi. Tayyor boʻlishi bilan biz yangi sinovlarni kiritib turamiz.</translation> @@ -1040,6 +1036,7 @@ <translation id="6641780377503683465">Olib tashlash: <ph name="INTEREST" /></translation> <translation id="6643016212128521049">Tozalash</translation> <translation id="6645629752388991326">Qaysi qurilmalar bu qurilmadan elektron kalit sifatida foydalanishi mumkinligini boshqaring</translation> +<translation id="6647441008198474441">Kelgusida qaysi saytlarga tashrif buyurishingizni bashorat qilish maqsadida siz tashrif qilgan URL manzillar Googlega yuborildi</translation> <translation id="6648459603387803038">Adminitratoringiz brauzerni masofadan sozlashi mumkin. Bu qurilmadagi amallar Chrome tashqarisidan boshqarilishi mumkin.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 va yana <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> ta}other{<ph name="CONTACT_PREVIEW" />\u2026 va yana <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> ta}}</translation> <translation id="6649642165559792194">Tasvirga razm solish <ph name="BEGIN_NEW" />Yangi<ph name="END_NEW" /></translation> @@ -1047,7 +1044,6 @@ <translation id="6659594942844771486">Varaq</translation> <translation id="666731172850799929"><ph name="APP_NAME" /> ilovasida ochish</translation> <translation id="6671495933530132209">Rasmni nusxalash</translation> -<translation id="6674044799624355221">Sahifa, yuklanma, kengaytma harakati va tizim axboroti parchalarini yangi tahdidlarni aniqlashga yordam berish maqsadida yuboradi.</translation> <translation id="6674571176963658787">Sinxronlashni boshlash uchun kodli iborani kiriting</translation> <translation id="6676840375528380067">Chrome maʼlumotlaringiz bu qurilmadan tozalansinmi?</translation> <translation id="6684809838922667136">Chromeni yaxshilash</translation> @@ -1069,7 +1065,6 @@ <translation id="6802555630140434547">Oyna yopiladi</translation> <translation id="6811034713472274749">Sahifani koʻrish mumkin</translation> <translation id="6813446258015311409">Chrome hisobiga kirish, ochildi.</translation> -<translation id="6814033694018386318">Google bilan nima ulashilgan</translation> <translation id="6817747507826986771">Bu sahifani tezda ulashish. Bu yorliqni tahrirlash uchun ustiga bosib turing.</translation> <translation id="6819199143469632133">Barcha qurilmalarda Google maʼlumotlaridan foydalanish uchun hisobingizga kiring</translation> <translation id="6820686453637990663">CVC kod</translation> @@ -1164,6 +1159,7 @@ <translation id="7352939065658542140">VIDEO</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{Belgilangan 1 ta elementni ulashish}other{Belgilangan # ta elementni ulashish}}</translation> <translation id="7359002509206457351">To‘lov usullariga kirish uchun ruxsat</translation> +<translation id="7363349185727752629">Maxfiylik sozlamalaringizga oid qoʻllanma</translation> <translation id="7375125077091615385">Turi:</translation> <translation id="7376560087009844242">Teginib qidirish vaqtida sahifada koʻproq matn tanlansa, yanada yaxshi natija berishi mumkin. Buni istalgan vaqt <ph name="BEGIN_LINK" />sozlamalar<ph name="END_LINK" /> orqali oʻzgartirish mumkin.</translation> <translation id="7379900596734708416">Saytlar uchun tungi mavzu chiqdi</translation> @@ -1263,6 +1259,7 @@ <translation id="7876243839304621966">Hammasini olib tashlash</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{<ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> ta oʻqilmagan xat bor}other{<ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> ta oʻqilmagan xat bor}}</translation> <translation id="7886917304091689118">Chrome brauzerida ishga tushgan</translation> +<translation id="7887174313503389866">Asosiy maxfiylik va xavfsizlik boshqaruvi elementlari bilan tanishib chiqing. Boshqa parametrlar uchun alohida sozlamalarni oching.</translation> <translation id="7887334752153342268">Nusxalash</translation> <translation id="789763218334337857">Chrome qanday ishlatiladi</translation> <translation id="7903184275147100332">Bu bir daqiqa vaqt olishi mumkin</translation> @@ -1376,6 +1373,7 @@ <translation id="8445448999790540984">Parollar eksport qilinmadi</translation> <translation id="8446884382197647889">Batafsil</translation> <translation id="8453310803815879010">Dino oʻyinini boshlash</translation> +<translation id="8460448946170646641">Asosiy maxfiylik va xavfsizlik boshqaruv elementlarini tekshirish</translation> <translation id="8461694314515752532">Sinxronlangan ma’lumotlarni kodli ibora bilan shifrlash</translation> <translation id="8466613982764129868"><ph name="TARGET_DEVICE_NAME" /> internetga ulanganini tekshiring.</translation> <translation id="8473863474539038330">Mazillar va boshqa ma’lumotlar</translation> @@ -1421,6 +1419,7 @@ <translation id="8636825310635137004">Boshqa qurilmalaringizdagi brauzer sahifalarini ko‘rish uchun sinxronizatsiyani yoqing.</translation> <translation id="8641930654639604085">Kattalar uchun mo‘ljallangan saytlar bloklansin</translation> <translation id="864544049772947936">Oynalarni boshqarish (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">Xavfli tahdidlarni aniqlaydi va sizni ulardan himoya qiladi</translation> <translation id="8646467750715887511">Sahifalar ular ochilganidan keyingina yuklanadi.</translation> <translation id="8655129584991699539">Maʼlumotlarni Chrome sozlamalaridan tozalashingiz mumkin</translation> <translation id="8659579665266920523">Chrome orqali qanday qidirish mumkin</translation> @@ -1433,7 +1432,6 @@ <translation id="867767487203716855">Keyingi yangilanish</translation> <translation id="8683039184091909753">rasm</translation> <translation id="8683081248374354009">Guruh sozlamalarini tiklash</translation> -<translation id="8683526617475118045">Nimasi foydali</translation> <translation id="869891660844655955">Tugash muddati</translation> <translation id="8699120352855309748">Quyidagi tillarga tarjima taklif qilinmasin</translation> <translation id="8712637175834984815">Tushunarli</translation> @@ -1517,7 +1515,6 @@ <translation id="9148126808321036104">Qaytadan kiring</translation> <translation id="9158770349521403363">Faqat kontentni ulashish</translation> <translation id="9159716826369098114">Varaqlar guruhini (<ph name="TAB_COUNT" />) yangi fondagi varaqlar guruhi sifatida tiklash.</translation> -<translation id="916446198114569890">Tashrif qilingan URL manzillar Google hisobingizda saqlanadi</translation> <translation id="9169507124922466868">Sahifalar tarixi yarim hajmda ochildi</translation> <translation id="9187955620966010988">Munosabat tuzatildi</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{1 daqiqa oldin tekshirilgan}other{# daqiqa oldin tekshirilgan}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_vi.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_vi.xtb index 2dd7159..ccd7c2b 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_vi.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_vi.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">Không đề xuất dịch những trang web này</translation> <translation id="1145536944570833626">Xóa dữ liệu hiện có.</translation> <translation id="1146678959555564648">Nhập VR</translation> -<translation id="114825011539563458">Các chế độ kiểm soát quan trọng nhất về quyền riêng tư và tính bảo mật tại cùng một nơi</translation> <translation id="1149401351239820326">Tháng hết hạn</translation> <translation id="1150263420752757504"><ph name="APP_NAME" /> sẽ mở trong Chrome. Bằng việc tiếp tục, bạn đồng ý với <ph name="BEGIN_LINK1" />Điều khoản dịch vụ của Google<ph name="END_LINK1" /> cũng như <ph name="BEGIN_LINK2" />Điều khoản dịch vụ bổ sung của Google Chrome và ChromeOS<ph name="END_LINK2" />.</translation> <translation id="1154704303112745282">Trang không hiển thị khi không có mạng: <ph name="VIOLATED_URL" /></translation> @@ -170,6 +169,7 @@ <translation id="189358972401248634">Ngôn ngữ khác</translation> <translation id="1894023287452300670">Theo dõi giá tại đây</translation> <translation id="1900260903084164610">Bằng việc tiếp tục, bạn đồng ý với <ph name="BEGIN_TOS_LINK" />Điều khoản dịch vụ<ph name="END_TOS_LINK" />,</translation> +<translation id="1904580727789512086">Các URL bạn truy cập sẽ được lưu vào Tài khoản Google của bạn</translation> <translation id="1910950723001426294">Danh sách các lựa chọn chia sẻ đã đóng.</translation> <translation id="1918175104945982129">Giao diện người dùng cho phép sử dụng Trợ lý để tìm kiếm bằng giọng nói đã mở ở nửa dưới của màn hình</translation> <translation id="1919130412786645364">Cho phép đăng nhập vào Chrome</translation> @@ -194,7 +194,6 @@ <translation id="2000419248597011803">Gửi một số cookie và nội dung tìm kiếm từ thanh địa chỉ cũng như hộp tìm kiếm tới công cụ tìm kiếm mặc định</translation> <translation id="200114059308480249">Bao gồm văn bản xung quanh trong các lượt tìm kiếm của Google?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# tệp}other{# tệp}}</translation> -<translation id="2020309681647789787">Bạn sẽ thấy nhật ký duyệt web trên tất cả thiết bị đã đồng bộ hoá của mình, để bạn có thể tiếp tục thực hiện những việc bạn đang làm</translation> <translation id="2021896219286479412">Kiểm soát trang toàn màn hình</translation> <translation id="2038563949887743358">Bật Yêu cầu trang web cho máy tính</translation> <translation id="204321170514947529"><ph name="APP_NAME" /> cũng có dữ liệu trong Chrome</translation> @@ -280,7 +279,6 @@ <translation id="2527779675047087889">Ẩn các nội dung của bảng nhớ tạm</translation> <translation id="2532336938189706096">Lượt xem trên web</translation> <translation id="2534155362429831547">Đã xóa <ph name="NUMBER_OF_ITEMS" /> mục</translation> -<translation id="2534582914273493287">Những URL bạn truy cập được gửi cho Google</translation> <translation id="2536728043171574184">Xem bản sao ngoại tuyến của trang này</translation> <translation id="2546283357679194313">Cookie và dữ liệu trang web</translation> <translation id="2549516196460093976">Bạn có thể dùng máy tính bảng này để đăng nhập trên chiếc máy tính đang hiển thị mã QR này.</translation> @@ -372,7 +370,6 @@ <translation id="2996291259634659425">Tạo cụm mật khẩu</translation> <translation id="2996809686854298943">Cần có URL</translation> <translation id="2997081575621687554">Khi một trang web được tạo bằng Google Sites yêu cầu tải trước các đường liên kết trên trang ở chế độ riêng tư, thì Chrome sẽ mã hóa và tải trước những trang này thông qua các máy chủ của Google mà không có cookie. Điều này giúp ẩn danh tính của bạn khỏi trang web được tải trước.</translation> -<translation id="3003733539450769656">Cảnh báo bạn về các sự kiện nguy hiểm trước khi chúng xảy ra</translation> <translation id="3006881078666935414">Không có dữ liệu sử dụng</translation> <translation id="301080557829842765">Hướng dẫn về quyền riêng tư</translation> <translation id="3016635187733453316">Hãy đảm bảo thiết bị này có kết nối Internet</translation> @@ -432,6 +429,7 @@ <translation id="3284510035090979597">Trợ giúp chủ động</translation> <translation id="3285080554353377245">Video về cách sử dụng Chrome</translation> <translation id="3288003805934695103">Đang tải lại trang</translation> +<translation id="3290249595466894471">Đồng thời gửi một mẫu nhỏ dữ liệu hoạt động trên các trang, tệp đã tải xuống, tiện ích và thông tin hệ thống để giúp phát hiện các mối đe dọa mới</translation> <translation id="3297344142967351106">Trợ lý thoại</translation> <translation id="3303414029551471755">Tiếp tục tải xuống nội dung?</translation> <translation id="3334729583274622784">Thay đổi đuôi tệp?</translation> @@ -637,7 +635,6 @@ <translation id="4558311620361989323">Phím tắt cho trang web</translation> <translation id="4561730552726921821">Đã đăng ký thành công</translation> <translation id="4561979708150884304">Không có kết nối</translation> -<translation id="4562008740775511591">Chrome cung cấp các giá trị mặc định hợp lý, nhưng bạn có thể tùy chỉnh các giá trị này cho phù hợp nhất với thói quen duyệt web của mình</translation> <translation id="4565377596337484307">Ẩn mật khẩu</translation> <translation id="4572422548854449519">Đăng nhập vào tài khoản được quản lý</translation> <translation id="4576892426230499203">Hãy thử một cách xác minh khác</translation> @@ -919,7 +916,6 @@ <translation id="604996488070107836">Không tải xuống được <ph name="FILE_NAME" /> do lỗi không xác định.</translation> <translation id="605721222689873409">YY</translation> <translation id="6059830886158432458">Kiểm soát tin bài và hoạt động của bạn tại đây</translation> -<translation id="6069177176307973611">Xem xét các chế độ cài đặt về quyền riêng tư và bảo mật</translation> <translation id="6070730414166672373">Đang liên hệ với ngân hàng của bạn…</translation> <translation id="6085886413119427067">Xác định cách kết nối với các trang web qua đường kết nối an toàn</translation> <translation id="6091413777268123602">Nhờ bản dùng thử Hộp cát về quyền riêng tư, các trang web có thể đem đến trải nghiệm duyệt web như trước nhưng dùng ít dữ liệu của bạn hơn. Như vậy tức là quyền riêng tư của bạn được đảm bảo hơn và hoạt động theo dõi qua nhiều trang web thì giảm bớt. Chúng tôi sẽ thêm các bản dùng thử mới khi những bản dùng thử đó sẵn sàng cho quá trình thử nghiệm.</translation> @@ -1040,6 +1036,7 @@ <translation id="6641780377503683465">Xoá <ph name="INTEREST" /></translation> <translation id="6643016212128521049">Xóa</translation> <translation id="6645629752388991326">Kiểm soát việc thiết bị nào có thể đăng nhập bằng cách sử dụng thiết bị này làm khoá bảo mật.</translation> +<translation id="6647441008198474441">Các URL bạn truy cập sẽ được gửi cho Google nhằm dự đoán những trang web có thể sắp tới bạn sẽ truy cập</translation> <translation id="6648459603387803038">Quản trị viên có thể thay đổi quy trình thiết lập trình duyệt của bạn từ xa. Hoạt động trên thiết bị này cũng có thể được quản lý bên ngoài Chrome.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 và <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> tùy chọn khác}other{<ph name="CONTACT_PREVIEW" />\u2026 và <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> tùy chọn khác}}</translation> <translation id="6649642165559792194">Xem trước hình ảnh <ph name="BEGIN_NEW" />Mới<ph name="END_NEW" /></translation> @@ -1047,7 +1044,6 @@ <translation id="6659594942844771486">Thẻ</translation> <translation id="666731172850799929">Mở trong <ph name="APP_NAME" /></translation> <translation id="6671495933530132209">Sao chép ảnh</translation> -<translation id="6674044799624355221">Gửi một mẫu nhỏ thông tin về các trang, tệp đã tải xuống, tiện ích và thông tin hệ thống để giúp phát hiện các mối đe dọa mới</translation> <translation id="6674571176963658787">Để bắt đầu đồng bộ hóa, hãy nhập cụm mật khẩu của bạn</translation> <translation id="6676840375528380067">Xóa dữ liệu Chrome của bạn khỏi thiết bị này?</translation> <translation id="6684809838922667136">Cải thiện Chrome</translation> @@ -1069,7 +1065,6 @@ <translation id="6802555630140434547">Cửa sổ này sẽ đóng</translation> <translation id="6811034713472274749">Trang hiện đã sẵn sàng cho bạn xem</translation> <translation id="6813446258015311409">Đã mở trang Đăng nhập vào Chrome.</translation> -<translation id="6814033694018386318">Những gì bạn chia sẻ với Google</translation> <translation id="6817747507826986771">Chia sẻ nhanh trang này. Để chỉnh sửa lối tắt này, hãy chạm và giữ.</translation> <translation id="6819199143469632133">Để nhận dữ liệu của bạn trên Google trên nhiều thiết bị, hãy đăng nhập</translation> <translation id="6820686453637990663">CVC</translation> @@ -1164,6 +1159,7 @@ <translation id="7352939065658542140">VIDEO</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{Chia sẻ 1 mục đã chọn}other{Chia sẻ # mục đã chọn}}</translation> <translation id="7359002509206457351">Truy cập vào phương thức thanh toán</translation> +<translation id="7363349185727752629">Hướng dẫn về các lựa chọn liên quan đến quyền riêng tư</translation> <translation id="7375125077091615385">Loại:</translation> <translation id="7376560087009844242">Bạn có thể thấy kết quả phù hợp hơn khi dùng tính năng Chạm để tìm kiếm bằng cách bao gồm thêm nhiều văn bản của trang. Bạn có thể truy cập phần <ph name="BEGIN_LINK" />cài đặt<ph name="END_LINK" /> để thay đổi lựa chọn này bất cứ lúc nào.</translation> <translation id="7379900596734708416">Đã có giao diện tối cho các trang web</translation> @@ -1263,6 +1259,7 @@ <translation id="7876243839304621966">Xóa tất cả</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{Bạn chưa đọc <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> trang}other{Bạn chưa đọc <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> trang}}</translation> <translation id="7886917304091689118">Đang chạy trong Chrome</translation> +<translation id="7887174313503389866">Xem hướng dẫn về các chế độ kiểm soát quan trọng đối với quyền riêng tư và tính bảo mật. Để có thêm lựa chọn, hãy chuyển đến từng phần cài đặt cụ thể.</translation> <translation id="7887334752153342268">Nhân đôi</translation> <translation id="789763218334337857">Cách sử dụng Chrome</translation> <translation id="7903184275147100332">Quá trình này có thể mất ít phút</translation> @@ -1376,6 +1373,7 @@ <translation id="8445448999790540984">Không xuất được mật khẩu</translation> <translation id="8446884382197647889">Tìm hiểu thêm</translation> <translation id="8453310803815879010">Bắt đầu Trò chơi Khủng long</translation> +<translation id="8460448946170646641">Xem xét các chế độ kiểm soát quan trọng đối với quyền riêng tư và tính bảo mật</translation> <translation id="8461694314515752532">Mã hóa dữ liệu đã đồng bộ hóa bằng cụm mật khẩu đồng bộ hóa của riêng bạn</translation> <translation id="8466613982764129868">Hãy đảm bảo <ph name="TARGET_DEVICE_NAME" /> có kết nối Internet</translation> <translation id="8473863474539038330">Địa chỉ và các lựa chọn khác</translation> @@ -1421,6 +1419,7 @@ <translation id="8636825310635137004">Để có các thẻ từ các thiết bị khác của bạn, hãy bật đồng bộ hóa.</translation> <translation id="8641930654639604085">Cố gắng chặn các trang web cho người lớn</translation> <translation id="864544049772947936">Quản lý cửa sổ (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">Dự đoán và cảnh báo cho bạn các sự kiện nguy hiểm trước khi các sự kiện đó xảy ra</translation> <translation id="8646467750715887511">Các trang chỉ tải sau khi bạn mở chúng.</translation> <translation id="8655129584991699539">Bạn có thể xóa dữ liệu trong mục Cài đặt của Chrome</translation> <translation id="8659579665266920523">Cách tìm kiếm bằng Chrome</translation> @@ -1433,7 +1432,6 @@ <translation id="867767487203716855">Thời gian cập nhật tiếp theo</translation> <translation id="8683039184091909753">hình ảnh</translation> <translation id="8683081248374354009">Đặt lại nhóm</translation> -<translation id="8683526617475118045">Lợi ích dành cho bạn</translation> <translation id="869891660844655955">Ngày hết hạn</translation> <translation id="8699120352855309748">Không đề xuất dịch những ngôn ngữ này</translation> <translation id="8712637175834984815">Bỏ qua</translation> @@ -1517,7 +1515,6 @@ <translation id="9148126808321036104">Đăng nhập lại</translation> <translation id="9158770349521403363">Chỉ chia sẻ nội dung</translation> <translation id="9159716826369098114">Khôi phục nhóm <ph name="TAB_COUNT" /> thẻ dưới dạng một nhóm thẻ nền mới.</translation> -<translation id="916446198114569890">Các URL bạn truy cập sẽ được lưu vào tài khoản Google của bạn</translation> <translation id="9169507124922466868">Lịch sử di chuyển đang mở ở nửa dưới màn hình</translation> <translation id="9187955620966010988">Đã điều chỉnh phản ứng</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{Đã kiểm tra 1 phút trước}other{Đã kiểm tra # phút trước}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_zh-CN.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_zh-CN.xtb index 0b90377..0f67c88f 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_zh-CN.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_zh-CN.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">不询问是否翻译这些网站</translation> <translation id="1145536944570833626">删除现有数据。</translation> <translation id="1146678959555564648">进入 VR</translation> -<translation id="114825011539563458">在一处集中检查的最重要隐私和安全控件</translation> <translation id="1149401351239820326">过期月份</translation> <translation id="1150263420752757504"><ph name="APP_NAME" />将在 Chrome 中打开。继续操作即表示您同意接受 <ph name="BEGIN_LINK1" />Google 服务条款<ph name="END_LINK1" />以及 <ph name="BEGIN_LINK2" />Google Chrome 和 Chrome 操作系统附加服务条款<ph name="END_LINK2" />。</translation> <translation id="1154704303112745282">无法在离线状态下访问此网页:<ph name="VIOLATED_URL" /></translation> @@ -108,6 +107,7 @@ <translation id="1488775391433859242">您可以使用此手机在显示该二维码的计算机上登录。</translation> <translation id="1492417797159476138">您已为此网站保存该用户名</translation> <translation id="1493287004536771723">您已关注 <ph name="SITE_NAME" /></translation> +<translation id="1502010315804028179">如需管理您的密码,请更新 Google Play 服务</translation> <translation id="1506061864768559482">搜索引擎</translation> <translation id="1513352483775369820">书签和网络历史记录</translation> <translation id="1513814250881909472">同步即可查看您在其他设备上打开的标签页</translation> @@ -169,6 +169,7 @@ <translation id="189358972401248634">其他语言</translation> <translation id="1894023287452300670">在此处跟踪价格</translation> <translation id="1900260903084164610">继续操作即表示您同意遵守<ph name="BEGIN_TOS_LINK" />服务条款<ph name="END_TOS_LINK" />。</translation> +<translation id="1904580727789512086">系统会将您访问的网址保存到您的 Google 帐号中</translation> <translation id="1910950723001426294">分享选项列表已关闭。</translation> <translation id="1918175104945982129">针对 Google 助理语音搜索功能的用户意见征求界面已半屏打开</translation> <translation id="1919130412786645364">允许登录 Chrome</translation> @@ -193,7 +194,6 @@ <translation id="2000419248597011803">将一些 Cookie 以及地址栏和搜索框中的搜索字词发送给您的默认搜索引擎</translation> <translation id="200114059308480249">将上下文内容纳入到 Google 搜索查询中?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# 个文件}other{# 个文件}}</translation> -<translation id="2020309681647789787">您将能够在所有已同步的设备上查看您的历史记录,以继续执行先前未完成的操作</translation> <translation id="2021896219286479412">全屏网站控件</translation> <translation id="2038563949887743358">开启“请求切换到桌面版网站”</translation> <translation id="204321170514947529">Chrome 中也有<ph name="APP_NAME" />的数据</translation> @@ -279,7 +279,6 @@ <translation id="2527779675047087889">隐藏剪贴板内容</translation> <translation id="2532336938189706096">网页视图</translation> <translation id="2534155362429831547">删除了 <ph name="NUMBER_OF_ITEMS" /> 项</translation> -<translation id="2534582914273493287">您访问过的网址会被发送给 Google</translation> <translation id="2536728043171574184">正在查看此网页的离线副本</translation> <translation id="2546283357679194313">Cookie 和网站数据</translation> <translation id="2549516196460093976">您可以使用此平板电脑在显示该二维码的计算机上登录。</translation> @@ -371,7 +370,6 @@ <translation id="2996291259634659425">创建密码</translation> <translation id="2996809686854298943">必须提供网址</translation> <translation id="2997081575621687554">当某个 Google 网站请求以私密方式预加载其网页上的链接时,Chrome 会通过 Google 服务器(而不使用 Cookie)加密和预加载网页。这样一来,预加载的网站便无法得知您的身份。</translation> -<translation id="3003733539450769656">在危险事件发生之前向您发出警告</translation> <translation id="3006881078666935414">无使用情况数据</translation> <translation id="301080557829842765">隐私保护指南</translation> <translation id="3016635187733453316">请确保此设备已连接到互联网。</translation> @@ -431,6 +429,7 @@ <translation id="3284510035090979597">主动帮助</translation> <translation id="3285080554353377245">介绍如何使用 Chrome 的视频</translation> <translation id="3288003805934695103">重新加载网页</translation> +<translation id="3290249595466894471">还会发送网页、下载内容、扩展程序活动和系统信息的少量样本,以帮助发现新威胁</translation> <translation id="3297344142967351106">语音助理</translation> <translation id="3303414029551471755">要开始下载该内容吗?</translation> <translation id="3334729583274622784">更改文件扩展名?</translation> @@ -636,7 +635,6 @@ <translation id="4558311620361989323">网页快捷键</translation> <translation id="4561730552726921821">注册成功</translation> <translation id="4561979708150884304">无网络连接</translation> -<translation id="4562008740775511591">Chrome 提供不错的默认设置,但您也可以进行自定义,使其尽可能符合自己的浏览习惯</translation> <translation id="4565377596337484307">隐藏密码</translation> <translation id="4572422548854449519">请登录受管理的帐号</translation> <translation id="4576892426230499203">请尝试另一种验证方式</translation> @@ -918,7 +916,6 @@ <translation id="604996488070107836">出现未知错误,未能下载 <ph name="FILE_NAME" />。</translation> <translation id="605721222689873409">YY</translation> <translation id="6059830886158432458">在此处控制您的报道和活动</translation> -<translation id="6069177176307973611">检查隐私和安全设置</translation> <translation id="6070730414166672373">正在联系银行\u2026</translation> <translation id="6085886413119427067">确定如何通过安全连接来连接到网站</translation> <translation id="6091413777268123602">Privacy Sandbox 试用版推出后,网站既能减少使用您的信息,又能提供同样出色的浏览体验。这意味着您的隐私会受到更好的保护,而且跨网站跟踪也会减少。一旦新的试用版功能可供测试,我们即会添加相应功能。</translation> @@ -1039,6 +1036,7 @@ <translation id="6641780377503683465">移除“<ph name="INTEREST" />”</translation> <translation id="6643016212128521049">清除</translation> <translation id="6645629752388991326">控制哪些设备可在登录时将此设备用作安全密钥。</translation> +<translation id="6647441008198474441">系统会将您访问过的网址发送给 Google,以预测您接下来可能会访问的网站</translation> <translation id="6648459603387803038">您的管理员可以远程更改您的浏览器设置。此设备上的活动可能也在接受 Chrome 外部的管理。</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026以及另外 <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> 个联系人}other{<ph name="CONTACT_PREVIEW" />\u2026以及另外 <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> 个联系人}}</translation> <translation id="6649642165559792194">预览图片<ph name="BEGIN_NEW" />新<ph name="END_NEW" /></translation> @@ -1046,7 +1044,6 @@ <translation id="6659594942844771486">标签页</translation> <translation id="666731172850799929">在 <ph name="APP_NAME" />中打开</translation> <translation id="6671495933530132209">复制图片</translation> -<translation id="6674044799624355221">发送网页、下载内容、扩展程序活动和系统信息的少量样本,以帮助发现新威胁</translation> <translation id="6674571176963658787">若要开始同步,请输入您的密码</translation> <translation id="6676840375528380067">从这部设备中清除您的 Chrome 数据?</translation> <translation id="6684809838922667136">帮助改善 Chrome</translation> @@ -1068,7 +1065,6 @@ <translation id="6802555630140434547">系统将会关闭此窗口</translation> <translation id="6811034713472274749">页面已可供查看</translation> <translation id="6813446258015311409">登录 Chrome,已打开。</translation> -<translation id="6814033694018386318">您要与 Google 分享哪些信息</translation> <translation id="6817747507826986771">快速分享此页面。若要修改此快捷方式,请轻触并按住这里。</translation> <translation id="6819199143469632133">如需跨设备获取您的 Google 信息,请登录</translation> <translation id="6820686453637990663">CVC</translation> @@ -1163,6 +1159,7 @@ <translation id="7352939065658542140">视频</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{分享 1 个所选项}other{分享 # 个所选项}}</translation> <translation id="7359002509206457351">查询付款方式</translation> +<translation id="7363349185727752629">隐私控制选项指南</translation> <translation id="7375125077091615385">类型:</translation> <translation id="7376560087009844242">如果选择纳入相应页面上的更多文字,您便可能会在使用“轻触搜索”功能时看到相关性更高的结果。您随时可访问<ph name="BEGIN_LINK" />设置<ph name="END_LINK" />以更改此设置。</translation> <translation id="7379900596734708416">可为网站启用深色主题</translation> @@ -1262,6 +1259,7 @@ <translation id="7876243839304621966">全部删除</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{您有 <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> 个未读页面}other{您有 <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> 个未读页面}}</translation> <translation id="7886917304091689118">正在 Chrome 中运行</translation> +<translation id="7887174313503389866">观看导览,了解重要的隐私控制设置和安全控件。如需查看更多选项,请转到各项设置。</translation> <translation id="7887334752153342268">复制</translation> <translation id="789763218334337857">如何使用 Chrome</translation> <translation id="7903184275147100332">请稍等片刻</translation> @@ -1375,6 +1373,7 @@ <translation id="8445448999790540984">无法导出密码</translation> <translation id="8446884382197647889">了解详情</translation> <translation id="8453310803815879010">启动恐龙游戏</translation> +<translation id="8460448946170646641">检查重要的隐私控制设置和安全控件</translation> <translation id="8461694314515752532">使用您自己的同步密码加密已同步的数据</translation> <translation id="8466613982764129868">请确保<ph name="TARGET_DEVICE_NAME" />已连接到互联网</translation> <translation id="8473863474539038330">地址和其他信息</translation> @@ -1420,6 +1419,7 @@ <translation id="8636825310635137004">要访问您在其他设备上的标签页,请开启同步功能。</translation> <translation id="8641930654639604085">尽量屏蔽成人网站</translation> <translation id="864544049772947936">管理窗口(<ph name="INSTANCE_COUNTS" /> 个)</translation> +<translation id="8645920082661222035">预测危险事件并在此类事件发生前向您发出警告</translation> <translation id="8646467750715887511">仅当您打开网页后,它们才会加载。</translation> <translation id="8655129584991699539">要清除数据,请前往 Chrome 的“设置”页面</translation> <translation id="8659579665266920523">如何使用 Chrome 进行搜索</translation> @@ -1432,7 +1432,6 @@ <translation id="867767487203716855">下一次更新</translation> <translation id="8683039184091909753">图片</translation> <translation id="8683081248374354009">重置群组</translation> -<translation id="8683526617475118045">您会获得哪些好处</translation> <translation id="869891660844655955">截止日期</translation> <translation id="8699120352855309748">不询问是否翻译这些语言</translation> <translation id="8712637175834984815">知道了</translation> @@ -1516,7 +1515,6 @@ <translation id="9148126808321036104">重新登录</translation> <translation id="9158770349521403363">仅分享内容</translation> <translation id="9159716826369098114">将包含 <ph name="TAB_COUNT" /> 个标签页的标签页分组恢复为新的背景标签页分组。</translation> -<translation id="916446198114569890">系统会将您访问的网址保存到您的 Google 帐号中</translation> <translation id="9169507124922466868">导航历史记录在下半屏中显示</translation> <translation id="9187955620966010988">已调整回应</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{1 分钟前检查过}other{# 分钟前检查过}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_zh-HK.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_zh-HK.xtb index 1bd2aa81..9bf3d1e 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_zh-HK.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_zh-HK.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">不要詢問是否翻譯這些網站</translation> <translation id="1145536944570833626">刪除現有資料。</translation> <translation id="1146678959555564648">進入 VR</translation> -<translation id="114825011539563458">集中查看最重要的私隱和安全控制項</translation> <translation id="1149401351239820326">到期月份</translation> <translation id="1150263420752757504">「<ph name="APP_NAME" />」將在 Chrome 中開啟。繼續即表示您同意《<ph name="BEGIN_LINK1" />Google 服務條款<ph name="END_LINK1" />》以及 <ph name="BEGIN_LINK2" />Google Chrome 和 Chrome OS 的《附加服務條款》<ph name="END_LINK2" />。</translation> <translation id="1154704303112745282">頁面無法離線使用:<ph name="VIOLATED_URL" /></translation> @@ -170,6 +169,7 @@ <translation id="189358972401248634">其他語言</translation> <translation id="1894023287452300670">在此處追蹤價格</translation> <translation id="1900260903084164610">繼續即表示您同意《<ph name="BEGIN_TOS_LINK" />服務條款<ph name="END_TOS_LINK" />》。</translation> +<translation id="1904580727789512086">系統會將您瀏覽的網址儲存至 Google 帳戶</translation> <translation id="1910950723001426294">閂咗分享選項清單。</translation> <translation id="1918175104945982129">「Google 助理」語音搜尋的同意使用者介面已開啟,顯示在畫面下半部</translation> <translation id="1919130412786645364">允許登入 Chrome</translation> @@ -194,7 +194,6 @@ <translation id="2000419248597011803">將部分 Cookie,以及網址列和搜尋框中的搜尋內容傳送至預設搜尋引擎</translation> <translation id="200114059308480249">要加入上下文來執行 Google 搜尋嗎?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# 個檔案}other{# 個檔案}}</translation> -<translation id="2020309681647789787">您可在所有已同步的裝置上查看記錄,繼續執行先前的任何工作</translation> <translation id="2021896219286479412">全螢幕網站控制</translation> <translation id="2038563949887743358">開啟「切換為電腦版網站」</translation> <translation id="204321170514947529"><ph name="APP_NAME" /> 在 Chrome 中也有資料</translation> @@ -280,7 +279,6 @@ <translation id="2527779675047087889">隱藏剪貼簿內容</translation> <translation id="2532336938189706096">網頁檢視</translation> <translation id="2534155362429831547">已刪除 <ph name="NUMBER_OF_ITEMS" /> 個項目</translation> -<translation id="2534582914273493287">系統會將您瀏覽的網址傳送至 Google</translation> <translation id="2536728043171574184">正在瀏覽此網頁的離線版本</translation> <translation id="2546283357679194313">Cookie 和網站數據</translation> <translation id="2549516196460093976">您可在正在顯示此 QR 碼的電腦上使用此平板電腦來登入。</translation> @@ -372,7 +370,6 @@ <translation id="2996291259634659425">建立密碼短語</translation> <translation id="2996809686854298943">請提供網址</translation> <translation id="2997081575621687554">當 Google 網站要求以私密方式預先載入網頁上的連結時,Chrome 會透過 Google 伺服器對該連結加密並預先載入網頁,且不會使用 Cookie。這麼做可在預先載入網站中隱藏您的身分。</translation> -<translation id="3003733539450769656">在危險事件發生前發出警告</translation> <translation id="3006881078666935414">沒有使用情況資料</translation> <translation id="301080557829842765">私隱權指南</translation> <translation id="3016635187733453316">請確保此裝置已連接互聯網</translation> @@ -432,6 +429,7 @@ <translation id="3284510035090979597">主動提供協助</translation> <translation id="3285080554353377245">關於如何使用 Chrome 的影片</translation> <translation id="3288003805934695103">重新載入網頁</translation> +<translation id="3290249595466894471">同時傳送網頁、下載檔案、擴充程式活動及系統資料的少量抽樣資料,以協助發現新威脅</translation> <translation id="3297344142967351106">語音助手</translation> <translation id="3303414029551471755">繼續下載內容?</translation> <translation id="3334729583274622784">要變更副檔名嗎?</translation> @@ -637,7 +635,6 @@ <translation id="4558311620361989323">網頁快速鍵</translation> <translation id="4561730552726921821">註冊成功</translation> <translation id="4561979708150884304">沒有連線</translation> -<translation id="4562008740775511591">Chrome 會提供適當的預設設定,但您亦可根據自己的瀏覽習慣自訂設定</translation> <translation id="4565377596337484307">隱藏密碼</translation> <translation id="4572422548854449519">登入受管理的帳戶</translation> <translation id="4576892426230499203">請改用其他驗證選項</translation> @@ -919,7 +916,6 @@ <translation id="604996488070107836">發生不明錯誤,因此無法下載 <ph name="FILE_NAME" />。</translation> <translation id="605721222689873409">YY</translation> <translation id="6059830886158432458">請在這裡控制您的報導和活動</translation> -<translation id="6069177176307973611">查看私隱和安全設定</translation> <translation id="6070730414166672373">正在聯絡銀行\u2026</translation> <translation id="6085886413119427067">判斷如何透過安全連線連接網站</translation> <translation id="6091413777268123602">透過「私隱沙箱」試用功能,網站可在使用較少資料的情況下,提供相同的瀏覽體驗。這代表您能享有更高私隱度,而且系統會使用較少跨網站追蹤功能。我們將會在更多試用功能準備好進行測試時,新增這些試用功能。</translation> @@ -1040,6 +1036,7 @@ <translation id="6641780377503683465">移除<ph name="INTEREST" /></translation> <translation id="6643016212128521049">清除</translation> <translation id="6645629752388991326">透過使用此裝置作為安全密鑰,控制可以登入的裝置。</translation> +<translation id="6647441008198474441">系統會將您瀏覽的網址傳送至 Google,以便預測您接下來可能會瀏覽的網站</translation> <translation id="6648459603387803038">您的管理員可遠端變更瀏覽器設定。此裝置上的活動也可透過 Chrome 以外的服務管理。</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 和另外 <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> 個聯絡人}other{<ph name="CONTACT_PREVIEW" />\u2026 和另外 <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> 個聯絡人}}</translation> <translation id="6649642165559792194">預覽圖片<ph name="BEGIN_NEW" />新功能<ph name="END_NEW" /></translation> @@ -1047,7 +1044,6 @@ <translation id="6659594942844771486">分頁</translation> <translation id="666731172850799929">在「<ph name="APP_NAME" />」中開啟</translation> <translation id="6671495933530132209">複製圖片</translation> -<translation id="6674044799624355221">傳送網頁、下載檔案、擴充程式活動及系統資料的少量抽樣資料,以協助發現新威脅</translation> <translation id="6674571176963658787">如要開始同步處理,請輸入密碼短語</translation> <translation id="6676840375528380067">要清除此裝置上的 Chrome 資料嗎?</translation> <translation id="6684809838922667136">協助改善 Chrome</translation> @@ -1069,7 +1065,6 @@ <translation id="6802555630140434547">視窗即將關閉</translation> <translation id="6811034713472274749">網頁已準備就緒,可供查看</translation> <translation id="6813446258015311409">登入 Chrome,開咗。</translation> -<translation id="6814033694018386318">您與 Google 分享的資料</translation> <translation id="6817747507826986771">快速分享此頁面。如要編輯此捷徑,請按住捷徑按鈕。</translation> <translation id="6819199143469632133">如要在所有裝置上取得您的 Google 設定,請登入帳戶</translation> <translation id="6820686453637990663">CVC</translation> @@ -1164,6 +1159,7 @@ <translation id="7352939065658542140">影片</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{分享 1 個已選取的項目}other{分享 # 個已選取的項目}}</translation> <translation id="7359002509206457351">存取付款方法</translation> +<translation id="7363349185727752629">私隱選項指南</translation> <translation id="7375125077091615385">類型:</translation> <translation id="7376560087009844242">使用「輕觸搜尋」時,加入網頁上的更多文字可能會找到更相關的結果。您可隨時前往<ph name="BEGIN_LINK" />設定<ph name="END_LINK" />調整設定。</translation> <translation id="7379900596734708416">現已推出網站的深色主題背景</translation> @@ -1263,6 +1259,7 @@ <translation id="7876243839304621966">全部移除</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{您有 <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> 個未讀頁面}other{您有 <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> 個未讀頁面}}</translation> <translation id="7886917304091689118">正在 Chrome 中執行</translation> +<translation id="7887174313503389866">導覽重要的私隱和安全控制項。如要查看更多選項,請前往個別設定。</translation> <translation id="7887334752153342268">複製</translation> <translation id="789763218334337857">如何使用 Chrome</translation> <translation id="7903184275147100332">請稍候片刻</translation> @@ -1376,6 +1373,7 @@ <translation id="8445448999790540984">無法匯出密碼</translation> <translation id="8446884382197647889">瞭解詳情</translation> <translation id="8453310803815879010">啟動恐龍遊戲</translation> +<translation id="8460448946170646641">查看重要的私隱和安全控制項</translation> <translation id="8461694314515752532">使用您的同步密碼短語,加密已同步的資料</translation> <translation id="8466613982764129868">請確保 <ph name="TARGET_DEVICE_NAME" /> 已連接互聯網</translation> <translation id="8473863474539038330">地址及其他資料</translation> @@ -1421,6 +1419,7 @@ <translation id="8636825310635137004">如要取得其他裝置上的分頁,請開啟同步處理功能。</translation> <translation id="8641930654639604085">嘗試封鎖成人網站</translation> <translation id="864544049772947936">管理視窗 (<ph name="INSTANCE_COUNTS" /> 個)</translation> +<translation id="8645920082661222035">在危險事件發生前進行預測並發出警告</translation> <translation id="8646467750715887511">在您開啟網頁後才載入網頁。</translation> <translation id="8655129584991699539">您可以在 Chrome 設定中清除資料</translation> <translation id="8659579665266920523">如何使用 Chrome 搜尋</translation> @@ -1433,7 +1432,6 @@ <translation id="867767487203716855">下一個更新項目</translation> <translation id="8683039184091909753">圖片</translation> <translation id="8683081248374354009">重設群組</translation> -<translation id="8683526617475118045">本功能的優點</translation> <translation id="869891660844655955">到期日</translation> <translation id="8699120352855309748">不要詢問是否翻譯這些語言</translation> <translation id="8712637175834984815">我知道了</translation> @@ -1517,7 +1515,6 @@ <translation id="9148126808321036104">重新登入</translation> <translation id="9158770349521403363">只分享內容</translation> <translation id="9159716826369098114">還原有 <ph name="TAB_COUNT" /> 個分頁嘅分頁群組做新嘅背景分頁群組。</translation> -<translation id="916446198114569890">系統會將您瀏覽的網址儲存至 Google 帳戶</translation> <translation id="9169507124922466868">導覽記錄喺畫面下半部分顯示</translation> <translation id="9187955620966010988">調整咗反應</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{曾在 1 分鐘前檢查}other{曾在 # 分鐘前檢查}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_zh-TW.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_zh-TW.xtb index 31757d9..f9f577c5 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_zh-TW.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_zh-TW.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">不要詢問是否要翻譯這些網站</translation> <translation id="1145536944570833626">刪除現有資料。</translation> <translation id="1146678959555564648">進入 VR</translation> -<translation id="114825011539563458">集中檢查最重要的隱私權和安全性控制項</translation> <translation id="1149401351239820326">到期月份</translation> <translation id="1150263420752757504">「<ph name="APP_NAME" />」將在 Chrome 中開啟。選擇繼續即表示您同意《<ph name="BEGIN_LINK1" />Google 服務條款<ph name="END_LINK1" />》以及 <ph name="BEGIN_LINK2" />Google Chrome 和 Chrome OS 的《附加服務條款》<ph name="END_LINK2" />。</translation> <translation id="1154704303112745282">無法離線載入頁面:<ph name="VIOLATED_URL" /></translation> @@ -169,6 +168,7 @@ <translation id="189358972401248634">其他語言</translation> <translation id="1894023287452300670">追蹤這個地區的價格</translation> <translation id="1900260903084164610">選擇繼續即表示您同意《<ph name="BEGIN_TOS_LINK" />服務條款<ph name="END_TOS_LINK" />》。</translation> +<translation id="1904580727789512086">系統會將你造訪的網址儲存到 Google 帳戶</translation> <translation id="1910950723001426294">分享選項清單已關閉。</translation> <translation id="1918175104945982129">Google 助理語音搜尋的同意使用者介面已開啟,顯示在畫面下半部</translation> <translation id="1919130412786645364">允許登入 Chrome</translation> @@ -193,7 +193,6 @@ <translation id="2000419248597011803">將網址列和搜尋框中的部分 Cookie 和搜尋字詞傳送給你的預設搜尋引擎</translation> <translation id="200114059308480249">要在使用 Google 搜尋時納入前後文嗎?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# 個檔案}other{# 個檔案}}</translation> -<translation id="2020309681647789787">你可以在所有已同步的裝置上查看歷史記錄,繼續執行先前的任何工作</translation> <translation id="2021896219286479412">全螢幕網站控制</translation> <translation id="2038563949887743358">開啟「要求電腦版網站」</translation> <translation id="204321170514947529">「<ph name="APP_NAME" />」在 Chrome 中也有資料</translation> @@ -279,7 +278,6 @@ <translation id="2527779675047087889">隱藏剪貼簿內容</translation> <translation id="2532336938189706096">網頁檢視</translation> <translation id="2534155362429831547">已刪除 <ph name="NUMBER_OF_ITEMS" /> 個項目</translation> -<translation id="2534582914273493287">系統會將你造訪的網址傳送給 Google</translation> <translation id="2536728043171574184">目前瀏覽的是這個網頁的離線複本</translation> <translation id="2546283357679194313">Cookie 和網站資料</translation> <translation id="2549516196460093976">你可以使用這部平板電腦,登入顯示這個 QR 圖碼的電腦。</translation> @@ -371,7 +369,6 @@ <translation id="2996291259634659425">建立通關密語</translation> <translation id="2996809686854298943">必須要有網址</translation> <translation id="2997081575621687554">當 Google 網站要求以私密方式預先載入網頁上的連結時,Chrome 會透過 Google 伺服器對該連結加密並預先載入網頁,且不會使用 Cookie。這麼做可在預先載入網站中隱藏你的身分。</translation> -<translation id="3003733539450769656">可在不安全事件發生前顯示警告訊息</translation> <translation id="3006881078666935414">沒有使用情況資料</translation> <translation id="301080557829842765">隱私權指南</translation> <translation id="3016635187733453316">請確認此裝置已連上網際網路</translation> @@ -431,6 +428,7 @@ <translation id="3284510035090979597">主動提供協助</translation> <translation id="3285080554353377245">關於如何使用 Chrome 的影片</translation> <translation id="3288003805934695103">重新載入網頁</translation> +<translation id="3290249595466894471">另外也會傳送少量網頁、下載內容、擴充功能活動和系統資訊,協助找出新的威脅</translation> <translation id="3297344142967351106">語音協助</translation> <translation id="3303414029551471755">繼續下載這項內容?</translation> <translation id="3334729583274622784">是否要變更副檔名?</translation> @@ -636,7 +634,6 @@ <translation id="4558311620361989323">網頁快速鍵</translation> <translation id="4561730552726921821">註冊成功</translation> <translation id="4561979708150884304">沒有網路連線</translation> -<translation id="4562008740775511591">Chrome 會提供適當的預設設定,但你也可以根據自己的瀏覽習慣自訂設定</translation> <translation id="4565377596337484307">隱藏密碼</translation> <translation id="4572422548854449519">登入受管理的帳戶</translation> <translation id="4576892426230499203">請改用其他驗證選項</translation> @@ -918,7 +915,6 @@ <translation id="604996488070107836">發生不明錯誤,因此無法下載 <ph name="FILE_NAME" />。</translation> <translation id="605721222689873409">年</translation> <translation id="6059830886158432458">請在這裡控管你的報導和活動</translation> -<translation id="6069177176307973611">檢查隱私權和安全性設定</translation> <translation id="6070730414166672373">正在聯絡銀行\u2026</translation> <translation id="6085886413119427067">判斷如何透過安全連線連上網站</translation> <translation id="6091413777268123602">在 Privacy Sandbox 試用期間,網站只需存取較少個人資料,就能提供相同的瀏覽體驗。這代表你的資料隱私性更高,且跨網站追蹤情形較少。我們會在新的試用功能準備就緒時開放測試。</translation> @@ -1037,6 +1033,7 @@ <translation id="6641780377503683465">移除<ph name="INTEREST" /></translation> <translation id="6643016212128521049">清除</translation> <translation id="6645629752388991326">透過使用這部裝置做為安全金鑰,控制可以登入的裝置。</translation> +<translation id="6647441008198474441">系統會將你造訪的網址傳送給 Google,預測你接下來可能會前往的網站</translation> <translation id="6648459603387803038">你的系統管理員可以遠端變更瀏覽器設定。這部裝置上的活動也可以透過 Chrome 以外的服務管理。</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 和另外 <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> 個聯絡人}other{<ph name="CONTACT_PREVIEW" />\u2026 和另外 <ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> 個聯絡人}}</translation> <translation id="6649642165559792194">預覽圖片 <ph name="BEGIN_NEW" />新功能<ph name="END_NEW" /></translation> @@ -1044,7 +1041,6 @@ <translation id="6659594942844771486">分頁</translation> <translation id="666731172850799929">在「<ph name="APP_NAME" />」中開啟</translation> <translation id="6671495933530132209">複製圖片</translation> -<translation id="6674044799624355221">系統會傳送少量網頁、下載內容、擴充功能活動和系統資訊,協助找出新威脅</translation> <translation id="6674571176963658787">如要開始同步處理,請輸入通關密語</translation> <translation id="6676840375528380067">要清除你在這個裝置上的 Chrome 資料嗎?</translation> <translation id="6684809838922667136">讓 Chrome 更臻完美</translation> @@ -1066,7 +1062,6 @@ <translation id="6802555630140434547">視窗即將關閉</translation> <translation id="6811034713472274749">你可以瀏覽這個網頁了</translation> <translation id="6813446258015311409">登入 Chrome,帳戶挑選器已開啟。</translation> -<translation id="6814033694018386318">提供給 Google 的資訊</translation> <translation id="6817747507826986771">快速分享這個專頁。按住這裡即可編輯這個捷徑。</translation> <translation id="6819199143469632133">如要在所有裝置上取得你的 Google 設定,請登入帳戶</translation> <translation id="6820686453637990663">信用卡驗證碼</translation> @@ -1161,6 +1156,7 @@ <translation id="7352939065658542140">影片</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{分享 1 個選取的項目}other{分享 # 個選取的項目}}</translation> <translation id="7359002509206457351">存取付款方式</translation> +<translation id="7363349185727752629">隱私權選項指南</translation> <translation id="7375125077091615385">類型:</translation> <translation id="7376560087009844242">使用輕觸搜尋功能時,納入較多網頁文字也許能找到更相關的結果。你隨時可以前往<ph name="BEGIN_LINK" />設定頁面<ph name="END_LINK" />調整設定。</translation> <translation id="7379900596734708416">現已推出網站的深色主題</translation> @@ -1260,6 +1256,7 @@ <translation id="7876243839304621966">全部移除</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{你有 <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> 個網頁尚未閱讀}other{你有 <ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> 個網頁尚未閱讀}}</translation> <translation id="7886917304091689118">正在 Chrome 中執行</translation> +<translation id="7887174313503389866">觀看導覽內容,瞭解最重要的隱私權和安全性控制項。如要查看更多選項,請前往個別設定。</translation> <translation id="7887334752153342268">複製</translation> <translation id="789763218334337857">如何使用 Chrome</translation> <translation id="7903184275147100332">請稍待片刻</translation> @@ -1373,6 +1370,7 @@ <translation id="8445448999790540984">無法匯出密碼</translation> <translation id="8446884382197647889">瞭解詳情</translation> <translation id="8453310803815879010">啟動恐龍遊戲</translation> +<translation id="8460448946170646641">查看最重要的隱私權和安全性控制項</translation> <translation id="8461694314515752532">使用你自己的同步通關密語,加密保護同步資料</translation> <translation id="8466613982764129868">請確認「<ph name="TARGET_DEVICE_NAME" />」已連上網際網路</translation> <translation id="8473863474539038330">地址和其他資訊</translation> @@ -1418,6 +1416,7 @@ <translation id="8636825310635137004">如要存取您在其他裝置上開啟的分頁,請開啟同步處理功能。</translation> <translation id="8641930654639604085">嘗試封鎖成人網站</translation> <translation id="864544049772947936">管理視窗 (<ph name="INSTANCE_COUNTS" /> 個)</translation> +<translation id="8645920082661222035">可預測不安全事件,並在這類事件發生前顯示警告訊息</translation> <translation id="8646467750715887511">在你開啟網頁後才載入網頁。</translation> <translation id="8655129584991699539">你可以在 Chrome 設定中清除資料</translation> <translation id="8659579665266920523">如何透過 Chrome 進行搜尋</translation> @@ -1430,7 +1429,6 @@ <translation id="867767487203716855">下一個更新項目</translation> <translation id="8683039184091909753">圖片</translation> <translation id="8683081248374354009">重設群組</translation> -<translation id="8683526617475118045">本功能的優點</translation> <translation id="869891660844655955">到期日</translation> <translation id="8699120352855309748">不要詢問是否要翻譯這些語言</translation> <translation id="8712637175834984815">我瞭解了</translation> @@ -1514,7 +1512,6 @@ <translation id="9148126808321036104">重新登入</translation> <translation id="9158770349521403363">僅分享內容</translation> <translation id="9159716826369098114">將 <ph name="TAB_COUNT" /> 個分頁群組還原為新的背景分頁群組。</translation> -<translation id="916446198114569890">系統會將你造訪的網址儲存到 Google 帳戶</translation> <translation id="9169507124922466868">已在畫面下半部顯示瀏覽記錄</translation> <translation id="9187955620966010988">已調整回應</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{已在 1 分鐘前檢查}other{已在 # 分鐘前檢查}}</translation>
diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_zu.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_zu.xtb index 54355e8..a702e6426 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_zu.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_zu.xtb
@@ -28,7 +28,6 @@ <translation id="1142732900304639782">Unganikezeli ukuhumusha la masayithi</translation> <translation id="1145536944570833626">Susa idatha ekhona.</translation> <translation id="1146678959555564648">Faka i-VR</translation> -<translation id="114825011539563458">Izilawuli zobumfihlo nokuvikeleka okubaluleke kakhulu endaweni eyodwa</translation> <translation id="1149401351239820326">Inyanga yokuphelelwa isikhathi</translation> <translation id="1150263420752757504">I-<ph name="APP_NAME" /> izovuleka ku-Chrome. Ngokuqhubeka, uvumelana <ph name="BEGIN_LINK1" />Nemigomo Yesevisi ye-Google<ph name="END_LINK1" />, kanye <ph name="BEGIN_LINK2" />ne-Google Chrome Nemigomo Yesevisi ye-ChromeOS Engeziwe<ph name="END_LINK2" />.</translation> <translation id="1154704303112745282">Ikhasi alitholakali uma ungaxhunyiwe ku-inthanethi: <ph name="VIOLATED_URL" /></translation> @@ -108,6 +107,7 @@ <translation id="1488775391433859242">Ungasebenzisa le foni ukuze ungene ngemvume kukhompuyutha ebonisa le khodi ye-QR.</translation> <translation id="1492417797159476138">Ulondoloze leli gama lomsebenzisi kakade mayelana naleli sayithi</translation> <translation id="1493287004536771723">Ulandela i-<ph name="SITE_NAME" /></translation> +<translation id="1502010315804028179">Ukuze uphathe amaphasiwedi akho, buyekeza amasevisi e-Google Play</translation> <translation id="1506061864768559482">Injini yokusesha</translation> <translation id="1513352483775369820">Amabhukhimakhi nomlando wendawo</translation> <translation id="1513814250881909472">Vumelanisa ukuze uthole amathebhu akho kwamanye amadivaysi akho</translation> @@ -169,6 +169,7 @@ <translation id="189358972401248634">Ezinye izilimi</translation> <translation id="1894023287452300670">Landelela intengo lapha</translation> <translation id="1900260903084164610">Ngokuqhubeka, wamukela <ph name="BEGIN_TOS_LINK" />Imigomo Yesevisi<ph name="END_TOS_LINK" />.</translation> +<translation id="1904580727789512086">Ama-URL owavakashelayo alondolozwe ku-akhawunti yakho ye-Google</translation> <translation id="1910950723001426294">Uhlu lwezinketho zokwabelana luvaliwe.</translation> <translation id="1918175104945982129">Imvume ye-ui yomsizi wokusesha ngezwi ivulwe ngokuphakama okuyisigamu</translation> <translation id="1919130412786645364">Vumela ukungena ngemvume kwe-Chrome</translation> @@ -193,7 +194,6 @@ <translation id="2000419248597011803">Ithumela amakhukhi nosesho kusukela kubha yekheli nebhokisi losesho kunjini yakho yosesho ezenzakalelayo</translation> <translation id="200114059308480249">Faka phakathi umbhalo ozungezile kusesho lwe-Google?</translation> <translation id="2013642289801508067">{FILE_COUNT,plural, =1{# Ifayela}one{# Amafayela}other{# Amafayela}}</translation> -<translation id="2020309681647789787">Uzoba nomlando wakho kuwo wonke amadivayisi akho avunyelanisiwe, ukuze uqhubeke nalokho ubukwenza</translation> <translation id="2021896219286479412">Izilawuli zesayithi zesikrini esiphelele</translation> <translation id="2038563949887743358">Vula ukucela isayithi yedeskithophu</translation> <translation id="204321170514947529">I-<ph name="APP_NAME" /> iphinda ibe nedatha ku-Chrome</translation> @@ -279,7 +279,6 @@ <translation id="2527779675047087889">Fihla okuqukethwe kwebhodi yokunamathisela</translation> <translation id="2532336938189706096">Ukubuka iwebhu</translation> <translation id="2534155362429831547"><ph name="NUMBER_OF_ITEMS" /> izinto ezisusiwe</translation> -<translation id="2534582914273493287">Ama-URL owavakashelayo athunyelwa ku-Google</translation> <translation id="2536728043171574184">Kubukwa ikhophi engaxhunyiwe kwi-inthanethi yaleli khasi</translation> <translation id="2546283357679194313">Amakhukhi nedatha yesayithi</translation> <translation id="2549516196460093976">Ungasebenzisa le thebulethi ukuze ungene ngemvume kukhompuyutha ebonisa le khodi ye-QR.</translation> @@ -371,7 +370,6 @@ <translation id="2996291259634659425">Dala umushwana wokungena</translation> <translation id="2996809686854298943">I-URL iyadingeka</translation> <translation id="2997081575621687554">Uma isayithi le-Google licela ukuzilayisha kusengaphambili izixhumanisi ngokuyimfihlo ekhasini labo, i-Chrome iyabethela futhi ilayishe kusengaphambili amakhasi ngamaseva e-Google ngaphandle kwamakhukhi. Lokhu kufihla ubuwena kusayithi elilayishwe kusengaphambili.</translation> -<translation id="3003733539450769656">Ikuxwayisa ngezigameko eziyingozi ngaphambi kokuthi zenzeke</translation> <translation id="3006881078666935414">Ayikho idatha yokusebenza</translation> <translation id="301080557829842765">Umhlahlandlela wobumfihlo</translation> <translation id="3016635187733453316">Qinisekisa ukuthi le divayisi ixhumeke ku-inthanethi</translation> @@ -431,6 +429,7 @@ <translation id="3284510035090979597">Usizo Olusebenzayo</translation> <translation id="3285080554353377245">Amavidiyo wendlela yokusebenzisa i-Chrome</translation> <translation id="3288003805934695103">Ilayisha kabusha ikhasi</translation> +<translation id="3290249595466894471">Iphinde ithumele namasampula wamakhasi ambalwa, okulandwayo, imisebenzi yezandiso, nokwaziswa kwesistimu ukukusiza uthole izinsongo ezintsha</translation> <translation id="3297344142967351106">Umsizi wezwi</translation> <translation id="3303414029551471755">Qhubeka ngokulanda okuqukethwe?</translation> <translation id="3334729583274622784">Shintsha isandiso sefayela?</translation> @@ -636,7 +635,6 @@ <translation id="4558311620361989323">Izinqamuleli zekhasi lewebhu</translation> <translation id="4561730552726921821">Ukubhalisa kuphumelele</translation> <translation id="4561979708150884304">Alukho uxhumano</translation> -<translation id="4562008740775511591">I-Chrome inikeza okuzenzakalelayo okunengqondo, kodwa ungakwenza ngendlela oyifisayo ukuze kufanelane kangcono umkhuba wakho wokuphequlula</translation> <translation id="4565377596337484307">Fihla iphasiwedi</translation> <translation id="4572422548854449519">Ngena ngemvume ku-akhawunti ephethwe</translation> <translation id="4576892426230499203">Zama enye inketho yokuqinisekisa</translation> @@ -918,7 +916,6 @@ <translation id="604996488070107836"><ph name="FILE_NAME" /> ukulandwa kuhlulekile ngenxa yephutha elingaziwa.</translation> <translation id="605721222689873409">YY</translation> <translation id="6059830886158432458">Lawula izindaba nomsebenzi wakho lapha</translation> -<translation id="6069177176307973611">Buyekeza amasethingi wobumfihlo nokuphepha</translation> <translation id="6070730414166672373">Ixhumana nebhange lakho\u2026</translation> <translation id="6085886413119427067">Kunquma ukuthi uzoxhuma kanjani kuwebhusayithi ngokuxhuma okuphephile</translation> <translation id="6091413777268123602">Ngokuzama kwe-Privacy Sandbox, amasayithi angaletha umuzwa ofanayo wokubhrawuza esebenzisa idatha yakho encane. Lokho kusho ubumfihlo obuningi kuwe kanye nokulandelela okuncane ezindaweni ezihlukene. Sizongeza imizamo emisha njengoba seyilungele ukuhlolwa.</translation> @@ -1039,6 +1036,7 @@ <translation id="6641780377503683465">Susa i-<ph name="INTEREST" /></translation> <translation id="6643016212128521049">Sula</translation> <translation id="6645629752388991326">Lawula ukuthi imaphi amadivayisi angangena ngemvume ngokusebenzisa le divayisi njengokhiye wokuqinisekisa ubunikazi.</translation> +<translation id="6647441008198474441">Ama-URL owavakashelayo athunyelwa ku-Google ukuze ibikezele ukuthi yimaphi amasayithi ongase uwavakashele ngokulandelayo</translation> <translation id="6648459603387803038">Umlawuli wakho angaguqula ukusethwa kwesiphequluli sakho akude. Umsebenzi kule divayisi ungaphinda aphathwe ngaphandle kwe-Chrome.</translation> <translation id="6648977384226967773">{CONTACT,plural, =1{<ph name="CONTACT_PREVIEW" />\u2026 nokungu-<ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> ngaphezulu}one{<ph name="CONTACT_PREVIEW" />\u2026 nokungu-<ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> ngaphezulu}other{<ph name="CONTACT_PREVIEW" />\u2026 nokungu-<ph name="NUMBER_OF_ADDITIONAL_CONTACTS" /> ngaphezulu}}</translation> <translation id="6649642165559792194">Buka kuqala isithombe <ph name="BEGIN_NEW" />Okusha<ph name="END_NEW" /></translation> @@ -1046,7 +1044,6 @@ <translation id="6659594942844771486">Ithebhu</translation> <translation id="666731172850799929">Vula ku-<ph name="APP_NAME" /></translation> <translation id="6671495933530132209">Kopisha isithombe</translation> -<translation id="6674044799624355221">Ithumela isampula elincane lamakhasi, okudawunilodiwe, umsebenzi wesandiso, nolwazi lwesistimu ukukusiza ukuthi uthole izinsongo ezintsha</translation> <translation id="6674571176963658787">Ukuze uqale ukuvumelanisa, faka umushwana wakho wokungena</translation> <translation id="6676840375528380067">Sula idatha yakho ye-Chrome kusuka kule divayisi?</translation> <translation id="6684809838922667136">Yenza i-Chrome ibe ngcono</translation> @@ -1068,7 +1065,6 @@ <translation id="6802555630140434547">Iwindi lizovalwa</translation> <translation id="6811034713472274749">Ikhasi lilindele ukubukwa</translation> <translation id="6813446258015311409">Ukungena ngemvume ku-Chrome, kuvuliwe.</translation> -<translation id="6814033694018386318">Okwabelana ne-Google</translation> <translation id="6817747507826986771">Yaba leli khasi ngokushesha. Ukuze uhlele lesi sinqamuleli, thinta uphinde ubambe.</translation> <translation id="6819199143469632133">Ukuze uthole izinto zakho ze-Google kuwo wonke amadivayisi, ngena ngemvume</translation> <translation id="6820686453637990663">I-CVC</translation> @@ -1163,6 +1159,7 @@ <translation id="7352939065658542140">IVIDIYO</translation> <translation id="7353894246028566792">{NUM_SELECTED,plural, =1{Yabelana ngento engu-1 ekhethiwe}one{Yabelana ngezinto ezingu-# ezikhethiwe}other{Yabelana ngezinto ezingu-# ezikhethiwe}}</translation> <translation id="7359002509206457351">Finyelela kuzindlela zokukhokha</translation> +<translation id="7363349185727752629">Isiqondiso sokukhetha kwakho kobumfihlo</translation> <translation id="7375125077091615385">Uhlobo:</translation> <translation id="7376560087009844242">Ngokufaka phakathi umbhalo wekhasi omningi, ungase ubone imiphumela engcono kakhulu lapho usebenzisa okuthi Thinta ukuze useshe. Noma nini ungavakashela <ph name="BEGIN_LINK" />amasethingi<ph name="END_LINK" /> ukuze ushintshe lokhu.</translation> <translation id="7379900596734708416">Itimu emnyama yamasayithi iyatholakala</translation> @@ -1262,6 +1259,7 @@ <translation id="7876243839304621966">Susa konke</translation> <translation id="7879130110979560610">{READING_LIST_REMINDER_NOTIFICATION_SUBTITLE,plural, =1{Unekhasi elingu-<ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_ONE" /> elingafundiwe}one{Unamakhasi angu-<ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> angafundiwe}other{Unamakhasi angu-<ph name="READING_LIST_REMINDER_NOTIFICATION_SUBTITLE_MANY" /> angafundiwe}}</translation> <translation id="7886917304091689118">Ukusebenza ku-Chrome</translation> +<translation id="7887174313503389866">Thatha uhambo oluqondiswayo lwezilawuli ezinhloko zobumfihlo nokuvikeleka. Ukuze uthole izinketho ezengeziwe, iya kumasethingi omuntu ngamunye.</translation> <translation id="7887334752153342268">Impinda</translation> <translation id="789763218334337857">Indlela yokusebenzisa i-Chrome</translation> <translation id="7903184275147100332">Lokhu kungathatha iminithi</translation> @@ -1375,6 +1373,7 @@ <translation id="8445448999790540984">Ayikwazi ukukhipha amaphasiwedi</translation> <translation id="8446884382197647889">Funda kabanzi</translation> <translation id="8453310803815879010">Qala igeyimu ye-Dino</translation> +<translation id="8460448946170646641">Buyekeza izilawuli eziyinhloko zobumfihlo nokuvikeleka</translation> <translation id="8461694314515752532">Bethela idatha evunyelanisiwe ngomushwana wokungena wakho wokuvumelanisa</translation> <translation id="8466613982764129868">Qinisekisa ukuthi i-<ph name="TARGET_DEVICE_NAME" /> ixhumeke ku-inthanethi</translation> <translation id="8473863474539038330">Amakheli nokuningi</translation> @@ -1420,6 +1419,7 @@ <translation id="8636825310635137004">Ukuze uthole amathebhu akho kusukela kumanye amadivayisi akho, vula ukuvumelanisa.</translation> <translation id="8641930654639604085">Zama ukuvimbela amasayithi abantu abadala</translation> <translation id="864544049772947936">Phatha amawindi (<ph name="INSTANCE_COUNTS" />)</translation> +<translation id="8645920082661222035">Ibikezela futhi ikuxwayisa ngemicimbi eyingozi ngaphambi kokuthi yenzeke</translation> <translation id="8646467750715887511">Amakhasi alayisha kuphela ngemva kokuwavula.</translation> <translation id="8655129584991699539">Ungasula idatha kuzilungiselelo ze-Chrome</translation> <translation id="8659579665266920523">Indlela yokusesha nge-Chrome</translation> @@ -1432,7 +1432,6 @@ <translation id="867767487203716855">Isibuyekezo esilandelayo</translation> <translation id="8683039184091909753">isithombe</translation> <translation id="8683081248374354009">Setha kabusha iqembu</translation> -<translation id="8683526617475118045">Okutholayo</translation> <translation id="869891660844655955">Idethi yokuphelelwa yisikhathi</translation> <translation id="8699120352855309748">Unganikezeli ukuhumusha lezi zilimi</translation> <translation id="8712637175834984815">Ngiyitholile</translation> @@ -1516,7 +1515,6 @@ <translation id="9148126808321036104">Phinda ungene ngemvume</translation> <translation id="9158770349521403363">Yabelana ngokuqukethwe kuphela</translation> <translation id="9159716826369098114">Buyisela ithebhu yeqembu lamathebhu angu-<ph name="TAB_COUNT" /> njengeqembu lethebhu yangemuva entsha.</translation> -<translation id="916446198114569890">Ama-URL owavakashelayo alondolozwe ku-Google Account yakho</translation> <translation id="9169507124922466868">Umlando wokuzula uvuleke ngohhafu</translation> <translation id="9187955620966010988">Ukusabela kulungisiwe</translation> <translation id="9199368092038462496">{NUM_MINS,plural, =1{Kuhlolwe kumzuzu o-1 odlule}one{Kuhlolwe kwimizuzu engu-# edlule}other{Kuhlolwe kwimizuzu engu-# edlule}}</translation>
diff --git a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/adaptive/AdaptiveToolbarButtonControllerTest.java b/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/adaptive/AdaptiveToolbarButtonControllerTest.java index 457dda4..f96aa79 100644 --- a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/adaptive/AdaptiveToolbarButtonControllerTest.java +++ b/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/adaptive/AdaptiveToolbarButtonControllerTest.java
@@ -33,11 +33,8 @@ import org.mockito.stubbing.Answer; import org.robolectric.Robolectric; import org.robolectric.annotation.Config; -import org.robolectric.annotation.Implementation; -import org.robolectric.annotation.Implements; import org.chromium.base.Callback; -import org.chromium.base.library_loader.LibraryLoader; import org.chromium.base.metrics.UmaRecorderHolder; import org.chromium.base.test.BaseRobolectricTestRunner; import org.chromium.chrome.browser.flags.ChromeFeatureList; @@ -59,39 +56,11 @@ import org.chromium.components.browser_ui.settings.SettingsLauncher; import org.chromium.ui.permissions.AndroidPermissionDelegate; -import java.util.HashMap; -import java.util.Map; - /** Unit tests for the {@link AdaptiveToolbarButtonController} */ -@Config(manifest = Config.NONE, - shadows = {AdaptiveToolbarButtonControllerTest.ShadowChromeFeatureList.class, - AdaptiveToolbarButtonControllerTest.ShadowVoiceRecognitionHandler.class}) +@Config(manifest = Config.NONE) @RunWith(BaseRobolectricTestRunner.class) @EnableFeatures(ChromeFeatureList.ADAPTIVE_BUTTON_IN_TOP_TOOLBAR_CUSTOMIZATION_V2) public class AdaptiveToolbarButtonControllerTest { - // TODO(crbug.com/1199025): Remove this shadow. - @Implements(ChromeFeatureList.class) - static class ShadowChromeFeatureList { - static final Map<String, String> sParamValues = new HashMap<>(); - - @Implementation - public static String getFieldTrialParamByFeature(String feature, String paramKey) { - Assert.assertTrue(ChromeFeatureList.isEnabled(feature)); - return sParamValues.getOrDefault(paramKey, ""); - } - } - - @Implements(VoiceRecognitionUtil.class) - static class ShadowVoiceRecognitionHandler { - static boolean sIsVoiceRecognitionEnabled; - - @Implementation - public static boolean isVoiceSearchEnabled( - AndroidPermissionDelegate androidPermissionDelegate) { - return sIsVoiceRecognitionEnabled; - } - } - @Rule public TestRule mProcessor = new Features.JUnitProcessor(); @@ -115,10 +84,8 @@ @Before public void setUp() { MockitoAnnotations.initMocks(this); - LibraryLoader.getInstance().setLibrariesLoadedForNativeTests(); - ShadowChromeFeatureList.sParamValues.clear(); UmaRecorderHolder.resetForTesting(); - ShadowVoiceRecognitionHandler.sIsVoiceRecognitionEnabled = true; + VoiceRecognitionUtil.setIsVoiceSearchEnabledForTesting(true); AdaptiveToolbarFeatures.clearParsedParamsForTesting(); mButtonData = new ButtonDataImpl( /*canShow=*/true, /*drawable=*/null, mock(View.OnClickListener.class), @@ -132,6 +99,7 @@ SharedPreferencesManager.getInstance().removeKey( ChromePreferenceKeys.ADAPTIVE_TOOLBAR_CUSTOMIZATION_ENABLED); SharedPreferencesManager.getInstance().removeKey(ADAPTIVE_TOOLBAR_CUSTOMIZATION_SETTINGS); + VoiceRecognitionUtil.setIsVoiceSearchEnabledForTesting(null); } @Test
diff --git a/chrome/browser/ui/ash/holding_space/holding_space_keyed_service_unittest.cc b/chrome/browser/ui/ash/holding_space/holding_space_keyed_service_unittest.cc index 88a1635..c862b268 100644 --- a/chrome/browser/ui/ash/holding_space/holding_space_keyed_service_unittest.cc +++ b/chrome/browser/ui/ash/holding_space/holding_space_keyed_service_unittest.cc
@@ -912,12 +912,11 @@ } } -// TODO(crbug.com/1170667): Fix flakes and re-enable. // Tests that holding space item's image representation gets updated when the // backing file is changed using move operation. Furthermore, verifies that // conflicts caused by moving a holding space item file to another path present // in the holding space get resolved. -TEST_F(HoldingSpaceKeyedServiceTest, DISABLED_UpdateItemsOverwrittenByMove) { +TEST_F(HoldingSpaceKeyedServiceTest, UpdateItemsOverwrittenByMove) { // Create a file system mount point. std::unique_ptr<ScopedTestMountPoint> downloads_mount = ScopedTestMountPoint::CreateAndMountDownloads(GetProfile());
diff --git a/chrome/browser/ui/ash/system_tray_client_impl_browsertest.cc b/chrome/browser/ui/ash/system_tray_client_impl_browsertest.cc index 69886dd..bf8f3d0 100644 --- a/chrome/browser/ui/ash/system_tray_client_impl_browsertest.cc +++ b/chrome/browser/ui/ash/system_tray_client_impl_browsertest.cc
@@ -40,6 +40,7 @@ #include "chrome/common/webui_url_constants.h" #include "chromeos/strings/grit/chromeos_strings.h" #include "components/account_id/account_id.h" +#include "components/policy/core/common/cloud/cloud_policy_constants.h" #include "components/policy/core/common/cloud/mock_cloud_policy_store.h" #include "components/policy/proto/device_management_backend.pb.h" #include "components/prefs/pref_service.h" @@ -101,14 +102,6 @@ ash::ManagementDeviceMode::kNone); } -namespace { - -// This is the constant that exists on the server side. It corresponds to -// the type of enrollment license. -constexpr char kKioskSkuName[] = "GOOGLE.CHROME_KIOSK_ANNUAL"; - -} // namespace - class EnterpriseManagedTest : public MixinBasedInProcessBrowserTest { public: EnterpriseManagedTest() { @@ -136,7 +129,7 @@ // Verify that the management device mode is indeed Kiosk Sku. IN_PROC_BROWSER_TEST_F(EnterpriseManagedTest, WithKioskSku) { policy_helper()->device_policy()->policy_data().set_license_sku( - kKioskSkuName); + policy::kKioskSkuName); policy_helper()->RefreshPolicyAndWaitUntilDeviceCloudPolicyUpdated(); EXPECT_EQ(ash::Shell::Get()
diff --git a/chrome/browser/ui/blocked_content/popup_opener_tab_helper_unittest.cc b/chrome/browser/ui/blocked_content/popup_opener_tab_helper_unittest.cc index d0f9a53a..ad5d957 100644 --- a/chrome/browser/ui/blocked_content/popup_opener_tab_helper_unittest.cc +++ b/chrome/browser/ui/blocked_content/popup_opener_tab_helper_unittest.cc
@@ -24,9 +24,9 @@ #include "chrome/test/base/testing_browser_process.h" #include "chrome/test/base/testing_profile.h" #include "components/blocked_content/list_item_position.h" +#include "components/blocked_content/popup_blocker_tab_helper.h" #include "components/blocked_content/popup_tracker.h" #include "components/content_settings/browser/page_specific_content_settings.h" -#include "components/infobars/content/content_infobar_manager.h" #include "components/ukm/content/source_url_recorder.h" #include "components/ukm/test_ukm_recorder.h" #include "content/public/browser/web_contents.h" @@ -42,7 +42,9 @@ #if BUILDFLAG(IS_ANDROID) #include "base/android/scoped_java_ref.h" +#include "chrome/browser/android/framebust_intervention/framebust_blocked_delegate_android.h" #include "components/infobars/android/infobar_android.h" +#include "components/messages/android/mock_message_dispatcher_bridge.h" #else #include "chrome/browser/ui/blocked_content/framebust_block_tab_helper.h" #endif @@ -70,11 +72,22 @@ blocked_content::PopupOpenerTabHelper::CreateForWebContents( web_contents(), &raw_clock_, HostContentSettingsMapFactory::GetForProfile(profile())); - infobars::ContentInfoBarManager::CreateForWebContents(web_contents()); content_settings::PageSpecificContentSettings::CreateForWebContents( web_contents(), std::make_unique<chrome::PageSpecificContentSettingsDelegate>( web_contents())); + blocked_content::PopupBlockerTabHelper::CreateForWebContents( + web_contents()); +#if BUILDFLAG(IS_ANDROID) + message_dispatcher_bridge_.SetMessagesEnabledForEmbedder(true); + messages::MessageDispatcherBridge::SetInstanceForTesting( + &message_dispatcher_bridge_); + blocked_content::FramebustBlockedMessageDelegate::CreateForWebContents( + web_contents()); + framebust_blocked_message_delegate_ = + blocked_content::FramebustBlockedMessageDelegate::FromWebContents( + web_contents()); +#endif #if !BUILDFLAG(IS_ANDROID) FramebustBlockTabHelper::CreateForWebContents(web_contents()); #endif @@ -88,6 +101,9 @@ void TearDown() override { popups_.clear(); +#if BUILDFLAG(IS_ANDROID) + messages::MessageDispatcherBridge::SetInstanceForTesting(nullptr); +#endif ChromeRenderViewHostTestHarness::TearDown(); } @@ -122,11 +138,28 @@ base::HistogramTester* histogram_tester() { return &histogram_tester_; } +#if BUILDFLAG(IS_ANDROID) + messages::MessageWrapper* message_wrapper() { + return framebust_blocked_message_delegate_->message_for_testing(); + } +#endif + + void expect_message() { +#if BUILDFLAG(IS_ANDROID) + EXPECT_CALL(message_dispatcher_bridge_, EnqueueMessage) + .WillOnce(testing::Return(true)); +#endif + } + private: base::HistogramTester histogram_tester_; base::SimpleTestTickClock raw_clock_; - std::vector<std::unique_ptr<content::WebContents>> popups_; +#if BUILDFLAG(IS_ANDROID) + messages::MockMessageDispatcherBridge message_dispatcher_bridge_; + raw_ptr<blocked_content::FramebustBlockedMessageDelegate> + framebust_blocked_message_delegate_; +#endif }; TEST_F(PopupOpenerTabHelperTest, LogVisibleTime) { @@ -413,25 +446,9 @@ ~BlockTabUnderTest() override = default; - infobars::InfoBarAndroid* GetInfoBar() { -#if BUILDFLAG(IS_ANDROID) - auto* manager = - infobars::ContentInfoBarManager::FromWebContents(web_contents()); - if (!manager->infobar_count()) - return nullptr; - EXPECT_EQ(1u, manager->infobar_count()); - infobars::InfoBarAndroid* infobar = - static_cast<infobars::InfoBarAndroid*>(manager->infobar_at(0)); - EXPECT_TRUE(infobar); - return infobar; -#else - return nullptr; -#endif // BUILDFLAG(IS_ANDROID) - } - void ExpectUIShown(bool shown) { #if BUILDFLAG(IS_ANDROID) - EXPECT_EQ(shown, !!GetInfoBar()); + EXPECT_EQ(shown, !!message_wrapper()); #else EXPECT_EQ(shown, FramebustBlockTabHelper::FromWebContents(web_contents()) ->HasBlockedUrls()); @@ -455,6 +472,7 @@ EXPECT_TRUE(NavigateAndCommitWithoutGesture(GURL("https://first.test/"))); SimulatePopup(); const GURL blocked_url("https://example.test/"); + expect_message(); EXPECT_FALSE(NavigateAndCommitWithoutGesture(blocked_url)); ExpectUIShown(true); } @@ -508,6 +526,7 @@ simulator->Start(); EXPECT_EQ(content::NavigationThrottle::PROCEED, simulator->GetLastThrottleCheckResult()); + expect_message(); simulator->Redirect(blocked_url); EXPECT_EQ(content::NavigationThrottle::CANCEL, simulator->GetLastThrottleCheckResult()); @@ -524,6 +543,7 @@ // we always classify as a tab-under. raw_clock()->Advance(base::Days(10)); + expect_message(); const GURL blocked_url("https://example.test/"); EXPECT_FALSE(NavigateAndCommitWithoutGesture(blocked_url)); ExpectUIShown(true); @@ -554,6 +574,7 @@ SimulatePopup(); const GURL blocked_url("https://example.test/"); + expect_message(); EXPECT_FALSE(NavigateAndCommitWithoutGesture(blocked_url)); ExpectUIShown(true); EXPECT_FALSE(NavigateAndCommitWithoutGesture(blocked_url)); @@ -595,13 +616,12 @@ SimulatePopup(); // Populate two blocked URLs in the UI. + expect_message(); const GURL blocked_url("https://example.test/"); EXPECT_FALSE(NavigateAndCommitWithoutGesture(blocked_url)); EXPECT_FALSE(NavigateAndCommitWithoutGesture(blocked_url)); #if BUILDFLAG(IS_ANDROID) - infobars::InfoBarAndroid* infobar = GetInfoBar(); - base::android::JavaParamRef<jobject> jobj(nullptr); - infobar->OnLinkClicked(nullptr /* env */, jobj); + message_wrapper()->HandleActionClick(base::android::AttachCurrentThread()); #else FramebustBlockTabHelper* framebust = FramebustBlockTabHelper::FromWebContents(web_contents()); @@ -656,6 +676,7 @@ content::RenderFrameHostTester::For(main_rfh())->GetConsoleMessages(); EXPECT_EQ(0u, messages.size()); + expect_message(); EXPECT_FALSE(NavigateAndCommitWithoutGesture(blocked_url)); ExpectUIShown(true);
diff --git a/chrome/browser/ui/blocked_content/tab_under_navigation_throttle.cc b/chrome/browser/ui/blocked_content/tab_under_navigation_throttle.cc index 076095d..b1482a7 100644 --- a/chrome/browser/ui/blocked_content/tab_under_navigation_throttle.cc +++ b/chrome/browser/ui/blocked_content/tab_under_navigation_throttle.cc
@@ -42,8 +42,7 @@ #include "url/gurl.h" #if BUILDFLAG(IS_ANDROID) -#include "chrome/browser/ui/android/infobars/framebust_block_infobar.h" -#include "chrome/browser/ui/interventions/framebust_block_message_delegate.h" +#include "chrome/browser/android/framebust_intervention/framebust_blocked_delegate_android.h" #else #include "chrome/browser/ui/blocked_content/framebust_block_tab_helper.h" #endif @@ -60,7 +59,8 @@ } #if BUILDFLAG(IS_ANDROID) -typedef FramebustBlockMessageDelegate::InterventionOutcome InterventionOutcome; +typedef blocked_content::FramebustBlockedMessageDelegate::InterventionOutcome + InterventionOutcome; TabUnderNavigationThrottle::Action GetActionForOutcome( InterventionOutcome outcome) { @@ -207,9 +207,17 @@ content::WebContents* web_contents = navigation_handle()->GetWebContents(); const GURL& url = navigation_handle()->GetURL(); #if BUILDFLAG(IS_ANDROID) - FramebustBlockInfoBar::Show( - web_contents, std::make_unique<FramebustBlockMessageDelegate>( - web_contents, url, base::BindOnce(&LogOutcome))); + blocked_content::FramebustBlockedMessageDelegate::CreateForWebContents( + web_contents); + blocked_content::FramebustBlockedMessageDelegate* + framebust_blocked_message_delegate = + blocked_content::FramebustBlockedMessageDelegate::FromWebContents( + web_contents); + framebust_blocked_message_delegate->ShowMessage( + url, + HostContentSettingsMapFactory::GetForProfile( + web_contents->GetBrowserContext()), + base::BindOnce(&LogOutcome)); #else if (auto* tab_helper = FramebustBlockTabHelper::FromWebContents(web_contents)) {
diff --git a/chrome/browser/ui/browser.cc b/chrome/browser/ui/browser.cc index e882e46e..3aa1e336 100644 --- a/chrome/browser/ui/browser.cc +++ b/chrome/browser/ui/browser.cc
@@ -1444,7 +1444,14 @@ bool Browser::IsPrerender2Supported(content::WebContents& web_contents) { Profile* profile = Profile::FromBrowserContext(web_contents.GetBrowserContext()); - return prefetch::IsSomePreloadingEnabled(*profile->GetPrefs()); + bool disabled = +#if BUILDFLAG(ENABLE_EXTENSIONS) + web_contents.GetBrowserContext()->GetUserData( + extensions::kIsPrerender2DisabledKey); +#else + false; +#endif + return prefetch::IsSomePreloadingEnabled(*profile->GetPrefs()) && !disabled; } std::unique_ptr<content::WebContents> Browser::ActivatePortalWebContents(
diff --git a/chrome/browser/ui/browser_close_unittest.cc b/chrome/browser/ui/browser_close_unittest.cc index cb429a4..b53e4ca 100644 --- a/chrome/browser/ui/browser_close_unittest.cc +++ b/chrome/browser/ui/browser_close_unittest.cc
@@ -74,7 +74,7 @@ ADD_FAILURE(); } - bool IsDownloadUiEnabled() override { return true; } + bool IsShelfEnabled() override { return true; } // KeyedService void Shutdown() override {}
diff --git a/chrome/browser/ui/interventions/framebust_block_message_delegate.cc b/chrome/browser/ui/interventions/framebust_block_message_delegate.cc deleted file mode 100644 index 7fa7e9b..0000000 --- a/chrome/browser/ui/interventions/framebust_block_message_delegate.cc +++ /dev/null
@@ -1,63 +0,0 @@ -// Copyright 2017 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#include "chrome/browser/ui/interventions/framebust_block_message_delegate.h" - -#include <memory> -#include <utility> - -#include "chrome/browser/content_settings/host_content_settings_map_factory.h" -#include "chrome/browser/profiles/profile.h" -#include "components/content_settings/core/browser/host_content_settings_map.h" -#include "components/content_settings/core/common/content_settings.h" -#include "components/content_settings/core/common/content_settings_types.h" -#include "content/public/browser/web_contents.h" -#include "content/public/common/referrer.h" -#include "ui/base/page_transition_types.h" -#include "ui/base/window_open_disposition.h" -#include "url/gurl.h" - -FramebustBlockMessageDelegate::FramebustBlockMessageDelegate( - content::WebContents* web_contents, - const GURL& blocked_url, - OutcomeCallback intervention_callback) - : intervention_callback_(std::move(intervention_callback)), - web_contents_(web_contents), - blocked_url_(blocked_url) {} - -FramebustBlockMessageDelegate::~FramebustBlockMessageDelegate() = default; - -const GURL& FramebustBlockMessageDelegate::GetBlockedUrl() const { - return blocked_url_; -} - -void FramebustBlockMessageDelegate::AcceptIntervention() { - if (!intervention_callback_.is_null()) - std::move(intervention_callback_).Run(InterventionOutcome::kAccepted); -} - -void FramebustBlockMessageDelegate::DeclineIntervention() { - if (!intervention_callback_.is_null()) { - std::move(intervention_callback_) - .Run(InterventionOutcome::kDeclinedAndNavigated); - } - web_contents_->OpenURL(content::OpenURLParams( - blocked_url_, content::Referrer(), WindowOpenDisposition::CURRENT_TAB, - ui::PAGE_TRANSITION_LINK, false)); -} - -void FramebustBlockMessageDelegate::DeclineInterventionWithReload() { - DeclineIntervention(); -} - -void FramebustBlockMessageDelegate::DeclineInterventionSticky() { - HostContentSettingsMap* settings_map = - HostContentSettingsMapFactory::GetForProfile( - Profile::FromBrowserContext(web_contents_->GetBrowserContext())); - DCHECK(settings_map); - settings_map->SetContentSettingDefaultScope( - web_contents_->GetLastCommittedURL(), GURL(), ContentSettingsType::POPUPS, - CONTENT_SETTING_ALLOW); - DeclineIntervention(); -}
diff --git a/chrome/browser/ui/interventions/framebust_block_message_delegate.h b/chrome/browser/ui/interventions/framebust_block_message_delegate.h deleted file mode 100644 index 703995c5..0000000 --- a/chrome/browser/ui/interventions/framebust_block_message_delegate.h +++ /dev/null
@@ -1,69 +0,0 @@ -// Copyright 2017 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#ifndef CHROME_BROWSER_UI_INTERVENTIONS_FRAMEBUST_BLOCK_MESSAGE_DELEGATE_H_ -#define CHROME_BROWSER_UI_INTERVENTIONS_FRAMEBUST_BLOCK_MESSAGE_DELEGATE_H_ - -#include "base/callback.h" -#include "base/memory/raw_ptr.h" -#include "url/gurl.h" - -#include "chrome/browser/ui/interventions/intervention_delegate.h" - -namespace content { -class WebContents; -} - -// Defines the messages shown to the user when the browser intervenes to block -// a framebust attempt, and provides a way to perform the blocked redirection -// if the user decides to do so. -class FramebustBlockMessageDelegate : public InterventionDelegate { - public: - // Describes the actions the user can take regarding this intervention, they - // are provided through a callback the caller can pass to the delegate's - // constructor. - // This enum backs a histogram. Any updates should be reflected in enums.xml, - // and new elements should only be appended to the end. - enum class InterventionOutcome { - kAccepted = 0, - kDeclinedAndNavigated = 1, - kMaxValue = kDeclinedAndNavigated - }; - - typedef base::OnceCallback<void(InterventionOutcome)> OutcomeCallback; - - // |intervention_callback| will be called when the user interacts with the - // intervention message, see InterventionOutcome for possible values. - FramebustBlockMessageDelegate(content::WebContents* web_contents, - const GURL& blocked_url, - OutcomeCallback intervention_callback); - - FramebustBlockMessageDelegate(const FramebustBlockMessageDelegate&) = delete; - FramebustBlockMessageDelegate& operator=( - const FramebustBlockMessageDelegate&) = delete; - - ~FramebustBlockMessageDelegate() override; - - const GURL& GetBlockedUrl() const; - - // InterventionDelegate: - void AcceptIntervention() override; - void DeclineIntervention() override; - void DeclineInterventionWithReload() override; - void DeclineInterventionSticky() override; - - private: - // Callback to be called when the user performs an action regarding this - // intervention. - OutcomeCallback intervention_callback_; - - // WebContents associated with the frame that was targeted by the framebust. - // Will be used to continue the navigation to the blocked URL. - raw_ptr<content::WebContents> web_contents_; - - // The URL that was the redirection target in the blocked framebust attempt. - const GURL blocked_url_; -}; - -#endif // CHROME_BROWSER_UI_INTERVENTIONS_FRAMEBUST_BLOCK_MESSAGE_DELEGATE_H_
diff --git a/chrome/browser/ui/tab_helpers.cc b/chrome/browser/ui/tab_helpers.cc index 52acbc75..3c7fc23e 100644 --- a/chrome/browser/ui/tab_helpers.cc +++ b/chrome/browser/ui/tab_helpers.cc
@@ -370,7 +370,9 @@ CreateForWebContents( web_contents, page_content_annotations_service, TemplateURLServiceFactory::GetForProfile(profile), - OptimizationGuideKeyedServiceFactory::GetForProfile(profile)); + OptimizationGuideKeyedServiceFactory::GetForProfile(profile), + prerender::NoStatePrefetchManagerFactory::GetForBrowserContext( + profile)); } OutOfMemoryReporter::CreateForWebContents(web_contents); chrome::InitializePageLoadMetricsForWebContents(web_contents);
diff --git a/chrome/browser/ui/views/page_info/page_info_bubble_view_browsertest.cc b/chrome/browser/ui/views/page_info/page_info_bubble_view_browsertest.cc index bcec8e5..f5dd5be 100644 --- a/chrome/browser/ui/views/page_info/page_info_bubble_view_browsertest.cc +++ b/chrome/browser/ui/views/page_info/page_info_bubble_view_browsertest.cc
@@ -906,3 +906,28 @@ entries[0], ukm::builders::AboutThisSiteStatus::kStatusName, static_cast<int>(AboutThisSiteStatus::kUnknown)); } + +class PageInfoBubbleViewSiteSettingsBrowserTest : public InProcessBrowserTest { + public: + PageInfoBubbleViewSiteSettingsBrowserTest() { + feature_list.InitWithFeatures({page_info::kPageInfoHideSiteSettings}, {}); + } + + private: + base::test::ScopedFeatureList feature_list; +}; + +IN_PROC_BROWSER_TEST_F(PageInfoBubbleViewSiteSettingsBrowserTest, + SiteSettingsNotValid) { + GURL url = GURL("https://www.google.com/"); + EXPECT_TRUE(ui_test_utils::NavigateToURL(browser(), url)); + OpenPageInfoBubble(browser()); + + views::Widget* page_info_bubble = + PageInfoBubbleView::GetPageInfoBubbleForTesting()->GetWidget(); + EXPECT_TRUE(page_info_bubble); + + views::View* view = page_info_bubble->GetRootView()->GetViewByID( + PageInfoViewFactory::VIEW_ID_PAGE_INFO_LINK_OR_BUTTON_SITE_SETTINGS); + EXPECT_FALSE(view); +}
diff --git a/chrome/browser/ui/views/page_info/page_info_main_view.cc b/chrome/browser/ui/views/page_info/page_info_main_view.cc index a621083..61db9836 100644 --- a/chrome/browser/ui/views/page_info/page_info_main_view.cc +++ b/chrome/browser/ui/views/page_info/page_info_main_view.cc
@@ -104,7 +104,8 @@ int link_text_id = 0; int tooltip_text_id = 0; - if (ui_delegate_->ShouldShowSiteSettings(&link_text_id, &tooltip_text_id)) { + if (ui_delegate_->ShouldShowSiteSettings(&link_text_id, &tooltip_text_id) && + !base::FeatureList::IsEnabled(page_info::kPageInfoHideSiteSettings)) { site_settings_link_ = AddChildView(std::make_unique<PageInfoHoverButton>( base::BindRepeating( [](PageInfoMainView* view) {
diff --git a/chrome/browser/ui/views/side_panel/side_panel_coordinator.cc b/chrome/browser/ui/views/side_panel/side_panel_coordinator.cc index a97b8648..a4d0dcc 100644 --- a/chrome/browser/ui/views/side_panel/side_panel_coordinator.cc +++ b/chrome/browser/ui/views/side_panel/side_panel_coordinator.cc
@@ -216,6 +216,8 @@ return; } + SidePanelUtil::RecordEntryShowTriggeredMetrics(entry->id(), open_trigger); + content_wrapper->RequestEntry( entry, base::BindOnce(&SidePanelCoordinator::PopulateSidePanel, base::Unretained(this)));
diff --git a/chrome/browser/ui/views/side_panel/side_panel_util.cc b/chrome/browser/ui/views/side_panel/side_panel_util.cc index f0eb610..6fb4fcf 100644 --- a/chrome/browser/ui/views/side_panel/side_panel_util.cc +++ b/chrome/browser/ui/views/side_panel/side_panel_util.cc
@@ -118,3 +118,14 @@ base::StrCat({"SidePanel.", GetHistogramNameForId(id), ".ShownDuration"}), base::TimeTicks::Now() - shown_timestamp); } + +void SidePanelUtil::RecordEntryShowTriggeredMetrics( + SidePanelEntry::Id id, + absl::optional<SidePanelUtil::SidePanelOpenTrigger> trigger) { + if (trigger.has_value()) { + base::UmaHistogramEnumeration( + base::StrCat( + {"SidePanel.", GetHistogramNameForId(id), ".ShowTriggered"}), + trigger.value()); + } +}
diff --git a/chrome/browser/ui/views/side_panel/side_panel_util.h b/chrome/browser/ui/views/side_panel/side_panel_util.h index 00deb7c..5c086c4f 100644 --- a/chrome/browser/ui/views/side_panel/side_panel_util.h +++ b/chrome/browser/ui/views/side_panel/side_panel_util.h
@@ -45,6 +45,9 @@ static void RecordEntryShownMetrics(SidePanelEntry::Id id); static void RecordEntryHiddenMetrics(SidePanelEntry::Id id, base::TimeTicks shown_timestamp); + static void RecordEntryShowTriggeredMetrics( + SidePanelEntry::Id id, + absl::optional<SidePanelOpenTrigger> trigger); }; #endif // CHROME_BROWSER_UI_VIEWS_SIDE_PANEL_SIDE_PANEL_UTIL_H_
diff --git a/chrome/browser/ui/webui/chromeos/login/ssh_configured_handler.cc b/chrome/browser/ui/webui/chromeos/login/ssh_configured_handler.cc index 03faecc2..e92ce2b 100644 --- a/chrome/browser/ui/webui/chromeos/login/ssh_configured_handler.cc +++ b/chrome/browser/ui/webui/chromeos/login/ssh_configured_handler.cc
@@ -6,7 +6,6 @@ #include "chrome/browser/ui/webui/chromeos/login/base_webui_handler.h" #include "chrome/grit/generated_resources.h" -#include "chromeos/dbus/dbus_thread_manager.h" #include "chromeos/dbus/debug_daemon/debug_daemon_client.h" #include "components/login/localized_values_builder.h" #include "third_party/cros_system_api/dbus/debugd/dbus-constants.h" @@ -23,16 +22,12 @@ debugd::DevFeatureFlag::DEV_FEATURES_DISABLED); return; } - chromeos::DebugDaemonClient* client = - chromeos::DBusThreadManager::Get()->GetDebugDaemonClient(); - client->QueryDebuggingFeatures(std::move(callback)); + DebugDaemonClient::Get()->QueryDebuggingFeatures(std::move(callback)); } void QueryDebuggingFeatures( DebugDaemonClient::QueryDevFeaturesCallback callback) { - chromeos::DebugDaemonClient* client = - chromeos::DBusThreadManager::Get()->GetDebugDaemonClient(); - client->WaitForServiceToBeAvailable( + DebugDaemonClient::Get()->WaitForServiceToBeAvailable( base::BindOnce(&OnDebugServiceAvailable, std::move(callback))); }
diff --git a/chrome/browser/ui/webui/chromeos/network_logs_message_handler.cc b/chrome/browser/ui/webui/chromeos/network_logs_message_handler.cc index 1c86872..d16d4b4 100644 --- a/chrome/browser/ui/webui/chromeos/network_logs_message_handler.cc +++ b/chrome/browser/ui/webui/chromeos/network_logs_message_handler.cc
@@ -18,7 +18,6 @@ #include "chrome/browser/profiles/profile.h" #include "chrome/common/logging_chrome.h" #include "chrome/grit/generated_resources.h" -#include "chromeos/dbus/dbus_thread_manager.h" #include "chromeos/dbus/debug_daemon/debug_daemon_client.h" #include "components/policy/core/browser/policy_conversions.h" #include "content/public/browser/web_contents.h" @@ -184,7 +183,7 @@ std::string callback_id = list[0].GetString(); std::string subsystem = list[1].GetString(); AllowJavascript(); - chromeos::DBusThreadManager::Get()->GetDebugDaemonClient()->SetDebugMode( + chromeos::DebugDaemonClient::Get()->SetDebugMode( subsystem, base::BindOnce(&NetworkLogsMessageHandler::OnSetShillDebuggingCompleted, weak_factory_.GetWeakPtr(), callback_id));
diff --git a/chrome/browser/ui/webui/crashes_ui.cc b/chrome/browser/ui/webui/crashes_ui.cc index 2c78c97..af0aade 100644 --- a/chrome/browser/ui/webui/crashes_ui.cc +++ b/chrome/browser/ui/webui/crashes_ui.cc
@@ -38,7 +38,6 @@ #include "ui/base/resource/resource_bundle.h" #if BUILDFLAG(IS_CHROMEOS_ASH) -#include "chromeos/dbus/dbus_thread_manager.h" // nogncheck #include "chromeos/dbus/debug_daemon/debug_daemon_client.h" #endif @@ -161,7 +160,7 @@ #if BUILDFLAG(IS_CHROMEOS_ASH) void CrashesDOMHandler::HandleRequestUploads(const base::Value::List& args) { chromeos::DebugDaemonClient* debugd_client = - chromeos::DBusThreadManager::Get()->GetDebugDaemonClient(); + chromeos::DebugDaemonClient::Get(); DCHECK(debugd_client); debugd_client->UploadCrashes(base::BindOnce([](bool success) {
diff --git a/chrome/browser/ui/webui/new_tab_page/new_tab_page_ui.cc b/chrome/browser/ui/webui/new_tab_page/new_tab_page_ui.cc index 83ad66c..9c213a2 100644 --- a/chrome/browser/ui/webui/new_tab_page/new_tab_page_ui.cc +++ b/chrome/browser/ui/webui/new_tab_page/new_tab_page_ui.cc
@@ -22,6 +22,7 @@ #include "chrome/browser/new_tab_page/modules/feed/feed_handler.h" #include "chrome/browser/new_tab_page/modules/photos/photos_handler.h" #include "chrome/browser/new_tab_page/modules/task_module/task_module_handler.h" +#include "chrome/browser/new_tab_page/new_tab_page_util.h" #include "chrome/browser/profiles/profile.h" #include "chrome/browser/search/background/ntp_custom_background_service_factory.h" #include "chrome/browser/search_engines/template_url_service_factory.h" @@ -96,7 +97,6 @@ #if !defined(OFFICIAL_BUILD) {"dummyModulesEnabled", ntp_features::kNtpDummyModules}, #endif - {"recipeTasksModuleEnabled", ntp_features::kNtpRecipeTasksModule}, {"chromeCartModuleEnabled", ntp_features::kNtpChromeCartModule}, {"photosModuleEnabled", ntp_features::kNtpPhotosModule}, {"feedModuleEnabled", ntp_features::kNtpFeedModule}, @@ -437,7 +437,7 @@ source->AddBoolean(nameFeature.first, base::FeatureList::IsEnabled(nameFeature.second)); } - + source->AddBoolean("recipeTasksModuleEnabled", IsRecipeTasksModuleEnabled()); source->AddString("photosModuleCustomArtWork", base::GetFieldTrialParamValueByFeature( ntp_features::kNtpPhotosModuleCustomizedOptInArtWork, @@ -826,6 +826,7 @@ for (const auto& nameFeature : kModuleFeatures) { anyModuleEnabled |= base::FeatureList::IsEnabled(nameFeature.second); } + anyModuleEnabled |= IsRecipeTasksModuleEnabled(); // Only enable modules if account credentials are available as most modules // won't have data to render otherwise. We can override this behavior with the // "--signed-out-ntp-modules" command line switch, e.g. to allow modules in
diff --git a/chrome/browser/ui/webui/new_tab_page/untrusted_source.cc b/chrome/browser/ui/webui/new_tab_page/untrusted_source.cc index f4957a2..38973f2 100644 --- a/chrome/browser/ui/webui/new_tab_page/untrusted_source.cc +++ b/chrome/browser/ui/webui/new_tab_page/untrusted_source.cc
@@ -194,8 +194,8 @@ std::move(callback).Run(base::MakeRefCounted<base::RefCountedString>()); } -std::string UntrustedSource::GetMimeType(const std::string& path) { - const std::string stripped_path = path.substr(0, path.find("?")); +std::string UntrustedSource::GetMimeType(const GURL& url) { + const base::StringPiece stripped_path = url.path_piece(); if (base::EndsWith(stripped_path, ".js", base::CompareCase::INSENSITIVE_ASCII)) { return "application/javascript";
diff --git a/chrome/browser/ui/webui/new_tab_page/untrusted_source.h b/chrome/browser/ui/webui/new_tab_page/untrusted_source.h index e0d444f0..43854bf3 100644 --- a/chrome/browser/ui/webui/new_tab_page/untrusted_source.h +++ b/chrome/browser/ui/webui/new_tab_page/untrusted_source.h
@@ -56,7 +56,7 @@ const GURL& url, const content::WebContents::Getter& wc_getter, content::URLDataSource::GotDataCallback callback) override; - std::string GetMimeType(const std::string& path) override; + std::string GetMimeType(const GURL& url) override; bool AllowCaching() override; bool ShouldReplaceExistingSource() override; bool ShouldServeMimeTypeAsContentTypeHeader() override;
diff --git a/chrome/browser/ui/webui/policy/policy_ui_handler.cc b/chrome/browser/ui/webui/policy/policy_ui_handler.cc index 044a98e..238298dc 100644 --- a/chrome/browser/ui/webui/policy/policy_ui_handler.cc +++ b/chrome/browser/ui/webui/policy/policy_ui_handler.cc
@@ -6,6 +6,7 @@ #include <stddef.h> +#include <memory> #include <string> #include <utility> @@ -38,6 +39,7 @@ #include "chrome/browser/policy/status_provider/cloud_policy_core_status_provider.h" #include "chrome/browser/policy/status_provider/status_provider_util.h" #include "chrome/browser/policy/status_provider/user_cloud_policy_status_provider.h" +#include "chrome/browser/policy/value_provider/value_provider_util.h" #include "chrome/browser/profiles/profile.h" #include "chrome/browser/ui/chrome_select_file_policy.h" #include "chrome/browser/ui/managed_ui.h" @@ -112,10 +114,7 @@ #endif #if BUILDFLAG(ENABLE_EXTENSIONS) -#include "extensions/browser/extension_registry.h" -#include "extensions/common/extension.h" -#include "extensions/common/manifest.h" -#include "extensions/common/manifest_constants.h" +#include "chrome/browser/policy/value_provider/extension_policies_value_provider.h" #endif #if BUILDFLAG(IS_WIN) && BUILDFLAG(GOOGLE_CHROME_BRANDING) @@ -130,22 +129,32 @@ #include "content/public/browser/browser_thread.h" #endif // BUILDFLAG(IS_WIN) && BUILDFLAG(GOOGLE_CHROME_BRANDING) +namespace { + +#if BUILDFLAG(ENABLE_EXTENSIONS) +// Appends the contents of `from_list` to end of `to_list`. Moves contents of +// `from_list` while appending. +void AppendList(base::Value::List& to_list, base::Value::List&& from_list) { + for (auto& value : from_list) { + to_list.Append(std::move(value)); + } + from_list.clear(); +} +#endif // BUILDFLAG(ENABLE_EXTENSIONS) + +} // namespace + PolicyUIHandler::PolicyUIHandler() = default; PolicyUIHandler::~PolicyUIHandler() { - GetPolicyService()->RemoveObserver(policy::POLICY_DOMAIN_CHROME, this); - GetPolicyService()->RemoveObserver(policy::POLICY_DOMAIN_EXTENSIONS, this); + GetPolicyService(Profile::FromWebUI(web_ui())) + ->RemoveObserver(policy::POLICY_DOMAIN_CHROME, this); policy::SchemaRegistry* registry = Profile::FromWebUI(web_ui()) ->GetOriginalProfile() ->GetPolicySchemaRegistryService() ->registry(); registry->RemoveObserver(this); -#if BUILDFLAG(ENABLE_EXTENSIONS) - extensions::ExtensionRegistry::Get(Profile::FromWebUI(web_ui())) - ->RemoveObserver(this); -#endif - if (export_policies_select_file_dialog_) { export_policies_select_file_dialog_->ListenerDestroyed(); } @@ -331,13 +340,16 @@ pref_change_registrar_->Add( enterprise_reporting::kLastUploadSucceededTimestamp, update_callback); - GetPolicyService()->AddObserver(policy::POLICY_DOMAIN_CHROME, this); - GetPolicyService()->AddObserver(policy::POLICY_DOMAIN_EXTENSIONS, this); + GetPolicyService(Profile::FromWebUI(web_ui())) + ->AddObserver(policy::POLICY_DOMAIN_CHROME, this); #if BUILDFLAG(ENABLE_EXTENSIONS) - extensions::ExtensionRegistry::Get(Profile::FromWebUI(web_ui())) - ->AddObserver(this); -#endif + extension_policies_value_provider_ = + std::make_unique<ExtensionPoliciesValueProvider>( + Profile::FromWebUI(web_ui())); + policy_value_provider_observations_.AddObservation( + extension_policies_value_provider_.get()); +#endif // BUILDFLAG(ENABLE_EXTENSIONS) #if BUILDFLAG(IS_CHROMEOS_LACROS) chromeos::LacrosService* service = chromeos::LacrosService::Get(); @@ -386,21 +398,6 @@ base::Unretained(this))); } -#if BUILDFLAG(ENABLE_EXTENSIONS) -void PolicyUIHandler::OnExtensionLoaded( - content::BrowserContext* browser_context, - const extensions::Extension* extension) { - SendPolicies(); -} - -void PolicyUIHandler::OnExtensionUnloaded( - content::BrowserContext* browser_context, - const extensions::Extension* extension, - extensions::UnloadedExtensionReason reason) { - SendPolicies(); -} -#endif - void PolicyUIHandler::OnSchemaRegistryUpdated(bool has_new_schemas) { // Update UI when new schema is added. if (has_new_schemas) { @@ -414,8 +411,12 @@ SendPolicies(); } -base::Value PolicyUIHandler::GetPolicyNames() { - base::Value names(base::Value::Type::DICTIONARY); +void PolicyUIHandler::OnPolicyValueChanged() { + SendPolicies(); +} + +base::Value::Dict PolicyUIHandler::GetPolicyNames() { + base::Value::Dict names; Profile* profile = Profile::FromWebUI(web_ui()); policy::SchemaRegistry* registry = profile->GetOriginalProfile() ->GetPolicySchemaRegistryService() @@ -423,47 +424,42 @@ scoped_refptr<policy::SchemaMap> schema_map = registry->schema_map(); // Add Chrome policy names. - base::Value chrome_policy_names(base::Value::Type::LIST); + base::Value::List chrome_policy_names; policy::PolicyNamespace chrome_ns(policy::POLICY_DOMAIN_CHROME, ""); const policy::Schema* chrome_schema = schema_map->GetSchema(chrome_ns); for (auto it = chrome_schema->GetPropertiesIterator(); !it.IsAtEnd(); it.Advance()) { - chrome_policy_names.Append(base::Value(it.key())); + chrome_policy_names.Append(it.key()); } - base::Value chrome_values(base::Value::Type::DICTIONARY); - chrome_values.SetStringKey("name", "Chrome Policies"); - chrome_values.SetKey("policyNames", std::move(chrome_policy_names)); - names.SetKey("chrome", std::move(chrome_values)); + base::Value::Dict chrome_values; + chrome_values.Set("name", "Chrome Policies"); + chrome_values.Set("policyNames", std::move(chrome_policy_names)); + names.Set("chrome", std::move(chrome_values)); #if !BUILDFLAG(IS_CHROMEOS) // Add precedence policy names. - base::Value precedence_policy_names(base::Value::Type::LIST); + base::Value::List precedence_policy_names; for (auto* policy : policy::metapolicy::kPrecedence) { - precedence_policy_names.Append(base::Value(policy)); + precedence_policy_names.Append(policy); } - base::Value precedence_values(base::Value::Type::DICTIONARY); - precedence_values.SetStringKey("name", "Policy Precedence"); - precedence_values.SetKey("policyNames", std::move(precedence_policy_names)); - names.SetKey("precedence", std::move(precedence_values)); + base::Value::Dict precedence_values; + precedence_values.Set("name", "Policy Precedence"); + precedence_values.Set("policyNames", std::move(precedence_policy_names)); + names.Set("precedence", std::move(precedence_values)); #endif // !BUILDFLAG(IS_CHROMEOS) #if BUILDFLAG(IS_WIN) && BUILDFLAG(GOOGLE_CHROME_BRANDING) if (updater_policies_) { - base::Value updater_policies(base::Value::Type::DICTIONARY); - updater_policies.SetStringKey("name", "Google Update Policies"); - updater_policies.SetKey("policyNames", GetGoogleUpdatePolicyNames()); - names.SetKey("updater", std::move(updater_policies)); + base::Value::Dict updater_policies; + updater_policies.Set("name", "Google Update Policies"); + updater_policies.Set("policyNames", GetGoogleUpdatePolicyNames()); + names.Set("updater", std::move(updater_policies)); } #endif // BUILDFLAG(IS_WIN) && BUILDFLAG(GOOGLE_CHROME_BRANDING) #if BUILDFLAG(ENABLE_EXTENSIONS) // Add extension policy names. - AddExtensionPolicyNames(&names, policy::POLICY_DOMAIN_EXTENSIONS); - -#if BUILDFLAG(IS_CHROMEOS_ASH) - AddExtensionPolicyNames(&names, policy::POLICY_DOMAIN_SIGNIN_EXTENSIONS); -#endif // BUILDFLAG(IS_CHROMEOS_ASH) - + names.Merge(extension_policies_value_provider_->GetNames()); #endif // BUILDFLAG(ENABLE_EXTENSIONS) return names; @@ -491,59 +487,19 @@ policy_conversions.WithAdditionalChromePolicies(device_policy_.Clone()); #endif // BUILDFLAG(IS_CHROMEOS_LACROS) - return policy_conversions.EnableConvertValues(true).ToValueList(); -} + // Disable extension policies in `policy_conversions` as the extension + // policies will be retrieved by `extension_policies_value_provider_` if + // extension policies are enabled with build flags. + base::Value::List policy_values = policy_conversions.EnableConvertValues(true) + .EnableExtensionPolicies(false) + .ToValueList(); -void PolicyUIHandler::AddExtensionPolicyNames( - base::Value* names, - policy::PolicyDomain policy_domain) { - DCHECK(names->is_dict()); #if BUILDFLAG(ENABLE_EXTENSIONS) - -#if BUILDFLAG(IS_CHROMEOS_ASH) - Profile* extension_profile = - policy_domain == policy::POLICY_DOMAIN_SIGNIN_EXTENSIONS - ? ash::ProfileHelper::GetSigninProfile() - : Profile::FromWebUI(web_ui()); -#else // BUILDFLAG(IS_CHROMEOS_ASH) - Profile* extension_profile = Profile::FromWebUI(web_ui()); -#endif // BUILDFLAG(IS_CHROMEOS_ASH) - - scoped_refptr<policy::SchemaMap> schema_map = - extension_profile->GetOriginalProfile() - ->GetPolicySchemaRegistryService() - ->registry() - ->schema_map(); - - const extensions::ExtensionRegistry* registry = - extensions::ExtensionRegistry::Get(extension_profile); - std::unique_ptr<extensions::ExtensionSet> extension_set = - registry->GenerateInstalledExtensionsSet(); - - for (const scoped_refptr<const extensions::Extension>& extension : - *extension_set) { - // Skip this extension if it's not an enterprise extension. - if (!extension->manifest()->FindPath( - extensions::manifest_keys::kStorageManagedSchema)) { - continue; - } - base::Value extension_value(base::Value::Type::DICTIONARY); - extension_value.SetStringKey("name", extension->name()); - const policy::Schema* schema = schema_map->GetSchema( - policy::PolicyNamespace(policy_domain, extension->id())); - base::Value policy_names(base::Value::Type::LIST); - if (schema && schema->valid()) { - // Get policy names from the extension's policy schema. - // Store in a map, not an array, for faster lookup on JS side. - for (auto prop = schema->GetPropertiesIterator(); !prop.IsAtEnd(); - prop.Advance()) { - policy_names.Append(base::Value(prop.key())); - } - } - extension_value.SetKey("policyNames", std::move(policy_names)); - names->SetKey(extension->id(), std::move(extension_value)); - } + // Append the extension policy values. + AppendList(policy_values, extension_policies_value_provider_->GetValues()); #endif // BUILDFLAG(ENABLE_EXTENSIONS) + + return policy_values; } void PolicyUIHandler::SendStatus() { @@ -676,8 +632,9 @@ ReloadUpdaterPoliciesAndState(); #endif // BUILDFLAG(IS_WIN) && BUILDFLAG(GOOGLE_CHROME_BRANDING) - GetPolicyService()->RefreshPolicies(base::BindOnce( - &PolicyUIHandler::OnRefreshPoliciesDone, weak_factory_.GetWeakPtr())); + GetPolicyService(Profile::FromWebUI(web_ui())) + ->RefreshPolicies(base::BindOnce(&PolicyUIHandler::OnRefreshPoliciesDone, + weak_factory_.GetWeakPtr())); } void PolicyUIHandler::HandleCopyPoliciesJson(const base::Value::List& args) { @@ -728,7 +685,7 @@ void PolicyUIHandler::SendPolicies() { if (IsJavascriptAllowed()) - FireWebUIListener("policies-updated", GetPolicyNames(), + FireWebUIListener("policies-updated", base::Value(GetPolicyNames()), base::Value(GetPolicyValues())); } @@ -761,9 +718,3 @@ SendPolicies(); SendStatus(); } - -policy::PolicyService* PolicyUIHandler::GetPolicyService() { - Profile* profile = Profile::FromBrowserContext( - web_ui()->GetWebContents()->GetBrowserContext()); - return profile->GetProfilePolicyConnector()->policy_service(); -}
diff --git a/chrome/browser/ui/webui/policy/policy_ui_handler.h b/chrome/browser/ui/webui/policy/policy_ui_handler.h index 3994550..8dc5e59 100644 --- a/chrome/browser/ui/webui/policy/policy_ui_handler.h +++ b/chrome/browser/ui/webui/policy/policy_ui_handler.h
@@ -12,10 +12,12 @@ #include <string> #include "base/memory/weak_ptr.h" +#include "base/scoped_multi_source_observation.h" #include "base/values.h" #include "build/branding_buildflags.h" #include "build/build_config.h" #include "build/chromeos_buildflags.h" +#include "chrome/browser/policy/value_provider/policy_value_provider.h" #include "components/policy/core/browser/policy_error_map.h" #include "components/policy/core/common/policy_map.h" #include "components/policy/core/common/policy_namespace.h" @@ -28,7 +30,7 @@ #include "ui/shell_dialogs/select_file_dialog.h" #if BUILDFLAG(ENABLE_EXTENSIONS) -#include "extensions/browser/extension_registry_observer.h" +#include "chrome/browser/policy/value_provider/extension_policies_value_provider.h" #endif class PrefChangeRegistrar; @@ -41,11 +43,9 @@ // The JavaScript message handler for the chrome://policy page. class PolicyUIHandler : public content::WebUIMessageHandler, -#if BUILDFLAG(ENABLE_EXTENSIONS) - public extensions::ExtensionRegistryObserver, -#endif public policy::PolicyService::Observer, public policy::SchemaRegistry::Observer, + public policy::PolicyValueProvider::Observer, public ui::SelectFileDialog::Listener { public: PolicyUIHandler(); @@ -61,15 +61,6 @@ // content::WebUIMessageHandler implementation. void RegisterMessages() override; -#if BUILDFLAG(ENABLE_EXTENSIONS) - // extensions::ExtensionRegistryObserver implementation. - void OnExtensionLoaded(content::BrowserContext* browser_context, - const extensions::Extension* extension) override; - void OnExtensionUnloaded(content::BrowserContext* browser_context, - const extensions::Extension* extension, - extensions::UnloadedExtensionReason reason) override; -#endif // BUILDFLAG(ENABLE_EXTENSIONS) - // policy::PolicyService::Observer implementation. void OnPolicyUpdated(const policy::PolicyNamespace& ns, const policy::PolicyMap& previous, @@ -78,6 +69,9 @@ // policy::SchemaRegistry::Observer implementation. void OnSchemaRegistryUpdated(bool has_new_schemas) override; + // policy::PolicyValueProvider::Observer implementation. + void OnPolicyValueChanged() override; + protected: // ui::SelectFileDialog::Listener implementation. void FileSelected(const base::FilePath& path, @@ -86,12 +80,9 @@ void FileSelectionCanceled(void* params) override; private: - base::Value GetPolicyNames(); + base::Value::Dict GetPolicyNames(); base::Value::List GetPolicyValues(); - void AddExtensionPolicyNames(base::Value* names, - policy::PolicyDomain policy_domain); - void HandleExportPoliciesJson(const base::Value::List& args); void HandleListenPoliciesUpdates(const base::Value::List& args); void HandleReloadPolicies(const base::Value::List& args); @@ -128,8 +119,6 @@ void OnRefreshPoliciesDone(); - policy::PolicyService* GetPolicyService(); - #if BUILDFLAG(IS_CHROMEOS_LACROS) void OnGotDevicePolicy(base::Value::Dict device_policy, base::Value::Dict legend_data); @@ -147,6 +136,11 @@ std::unique_ptr<policy::PolicyStatusProvider> machine_status_provider_; std::unique_ptr<policy::PolicyStatusProvider> updater_status_provider_; +#if BUILDFLAG(ENABLE_EXTENSIONS) + std::unique_ptr<ExtensionPoliciesValueProvider> + extension_policies_value_provider_; +#endif // BUILDFLAG(ENABLE_EXTENSIONS) + #if BUILDFLAG(IS_WIN) && BUILDFLAG(GOOGLE_CHROME_BRANDING) std::unique_ptr<policy::PolicyMap> updater_policies_; #endif // BUILDFLAG(IS_WIN) && BUILDFLAG(GOOGLE_CHROME_BRANDING) @@ -157,6 +151,10 @@ std::unique_ptr<PrefChangeRegistrar> pref_change_registrar_; + base::ScopedMultiSourceObservation<policy::PolicyValueProvider, + policy::PolicyValueProvider::Observer> + policy_value_provider_observations_{this}; + base::WeakPtrFactory<PolicyUIHandler> weak_factory_{this}; };
diff --git a/chrome/browser/ui/webui/settings/ash/search/search_result_icon.mojom b/chrome/browser/ui/webui/settings/ash/search/search_result_icon.mojom index 9f503165..c0d0c5b1 100644 --- a/chrome/browser/ui/webui/settings/ash/search/search_result_icon.mojom +++ b/chrome/browser/ui/webui/settings/ash/search/search_result_icon.mojom
@@ -12,18 +12,23 @@ kAssistant, kAudio, kAuthKey, + kAutoclick, kAvatar, kBluetooth, kCellular, kChrome, kChromeVox, kClock, + kContrast, kDeveloperTags, + kDictation, kDisplay, + kDockedMagnifier, kDrive, kEthernet, kFingerprint, kFolder, + kFullscreenMagnifier, kGlobe, kGooglePlay, kHardDrive, @@ -35,6 +40,7 @@ kMessages, kMouse, kNearbyShare, + kOnScreenKeyboard, kPaintbrush, kPenguin, kPhone, @@ -42,9 +48,11 @@ kPower, kPrinter, kReset, + kSelectToSpeak, kShield, kStartup, kStylus, + kSwitchAccess, kSync, kWallpaper, kWifi
diff --git a/chrome/browser/ui/webui/settings/chromeos/accessibility_section.cc b/chrome/browser/ui/webui/settings/chromeos/accessibility_section.cc index 27e5649..e733e666 100644 --- a/chrome/browser/ui/webui/settings/chromeos/accessibility_section.cc +++ b/chrome/browser/ui/webui/settings/chromeos/accessibility_section.cc
@@ -89,7 +89,7 @@ ::features::IsAccessibilityOSSettingsVisibilityEnabled() ? mojom::kDisplayAndMagnificationSubpagePath : mojom::kManageAccessibilitySubpagePath, - mojom::SearchResultIcon::kA11y, + mojom::SearchResultIcon::kDockedMagnifier, mojom::SearchResultDefaultRank::kMedium, mojom::SearchResultType::kSetting, {.setting = mojom::Setting::kDockedMagnifier}, @@ -153,7 +153,7 @@ ::features::IsAccessibilityOSSettingsVisibilityEnabled() ? mojom::kKeyboardAndTextInputSubpagePath : mojom::kManageAccessibilitySubpagePath, - mojom::SearchResultIcon::kA11y, + mojom::SearchResultIcon::kOnScreenKeyboard, mojom::SearchResultDefaultRank::kMedium, mojom::SearchResultType::kSetting, {.setting = mojom::Setting::kOnScreenKeyboard}}, @@ -171,7 +171,7 @@ ::features::IsAccessibilityOSSettingsVisibilityEnabled() ? mojom::kKeyboardAndTextInputSubpagePath : mojom::kManageAccessibilitySubpagePath, - mojom::SearchResultIcon::kA11y, + mojom::SearchResultIcon::kDictation, mojom::SearchResultDefaultRank::kMedium, mojom::SearchResultType::kSetting, {.setting = mojom::Setting::kDictation}, @@ -183,7 +183,7 @@ ::features::IsAccessibilityOSSettingsVisibilityEnabled() ? mojom::kDisplayAndMagnificationSubpagePath : mojom::kManageAccessibilitySubpagePath, - mojom::SearchResultIcon::kA11y, + mojom::SearchResultIcon::kContrast, mojom::SearchResultDefaultRank::kMedium, mojom::SearchResultType::kSetting, {.setting = mojom::Setting::kHighContrastMode}, @@ -213,7 +213,7 @@ ::features::IsAccessibilityOSSettingsVisibilityEnabled() ? mojom::kCursorAndTouchpadSubpagePath : mojom::kManageAccessibilitySubpagePath, - mojom::SearchResultIcon::kA11y, + mojom::SearchResultIcon::kAutoclick, mojom::SearchResultDefaultRank::kMedium, mojom::SearchResultType::kSetting, {.setting = mojom::Setting::kAutoClickWhenCursorStops}, @@ -223,7 +223,7 @@ ::features::IsAccessibilityOSSettingsVisibilityEnabled() ? mojom::kTextToSpeechPagePath : mojom::kManageAccessibilitySubpagePath, - mojom::SearchResultIcon::kA11y, + mojom::SearchResultIcon::kSelectToSpeak, mojom::SearchResultDefaultRank::kMedium, mojom::SearchResultType::kSetting, {.setting = mojom::Setting::kSelectToSpeak}}, @@ -250,7 +250,7 @@ ::features::IsAccessibilityOSSettingsVisibilityEnabled() ? mojom::kDisplayAndMagnificationSubpagePath : mojom::kManageAccessibilitySubpagePath, - mojom::SearchResultIcon::kA11y, + mojom::SearchResultIcon::kFullscreenMagnifier, mojom::SearchResultDefaultRank::kMedium, mojom::SearchResultType::kSetting, {.setting = mojom::Setting::kFullscreenMagnifier}, @@ -261,7 +261,7 @@ ::features::IsAccessibilityOSSettingsVisibilityEnabled() ? mojom::kKeyboardAndTextInputSubpagePath : mojom::kManageAccessibilitySubpagePath, - mojom::SearchResultIcon::kA11y, + mojom::SearchResultIcon::kSwitchAccess, mojom::SearchResultDefaultRank::kMedium, mojom::SearchResultType::kSetting, {.setting = mojom::Setting::kEnableSwitchAccess}},
diff --git a/chrome/browser/ui/webui/settings/chromeos/cups_printers_handler.cc b/chrome/browser/ui/webui/settings/chromeos/cups_printers_handler.cc index af094de..5e0ed4e7 100644 --- a/chrome/browser/ui/webui/settings/chromeos/cups_printers_handler.cc +++ b/chrome/browser/ui/webui/settings/chromeos/cups_printers_handler.cc
@@ -39,7 +39,6 @@ #include "chrome/browser/ui/webui/settings/chromeos/server_printer_url_util.h" #include "chrome/common/chrome_paths.h" #include "chrome/common/pref_names.h" -#include "chromeos/dbus/dbus_thread_manager.h" #include "chromeos/dbus/debug_daemon/debug_daemon_client.h" #include "chromeos/printing/ppd_line_reader.h" #include "chromeos/printing/printer_configuration.h" @@ -445,10 +444,9 @@ // Printer is deleted here. Do not access after this line. printers_manager_->RemoveSavedPrinter(printer_id); - DebugDaemonClient* client = DBusThreadManager::Get()->GetDebugDaemonClient(); - client->CupsRemovePrinter(printer_id, - base::BindOnce(&OnRemovedPrinter, protocol), - base::DoNothing()); + DebugDaemonClient::Get()->CupsRemovePrinter( + printer_id, base::BindOnce(&OnRemovedPrinter, protocol), + base::DoNothing()); } void CupsPrintersHandler::HandleGetPrinterInfo(const base::Value::List& args) {
diff --git a/chrome/browser/ui/webui/settings/chromeos/cups_printers_handler_unittest.cc b/chrome/browser/ui/webui/settings/chromeos/cups_printers_handler_unittest.cc index 9e9afa7..90b53b6 100644 --- a/chrome/browser/ui/webui/settings/chromeos/cups_printers_handler_unittest.cc +++ b/chrome/browser/ui/webui/settings/chromeos/cups_printers_handler_unittest.cc
@@ -199,8 +199,9 @@ DBusThreadManager::Initialize(); ConciergeClient::InitializeFake( /*fake_cicerone_client=*/nullptr); + DebugDaemonClient::InitializeFake(); - DebugDaemonClient* client = DBusThreadManager::Get()->GetDebugDaemonClient(); + DebugDaemonClient* client = DebugDaemonClient::Get(); client->CupsAddAutoConfiguredPrinter("testprinter1", "fakeuri", base::BindOnce(&AddedPrinter)); @@ -225,6 +226,7 @@ EXPECT_FALSE(expected); profile_.reset(); + DebugDaemonClient::Shutdown(); ConciergeClient::Shutdown(); DBusThreadManager::Shutdown(); }
diff --git a/chrome/browser/ui/webui/settings/chromeos/main_section.cc b/chrome/browser/ui/webui/settings/chromeos/main_section.cc index ccf3c46..d5ee6cc52 100644 --- a/chrome/browser/ui/webui/settings/chromeos/main_section.cc +++ b/chrome/browser/ui/webui/settings/chromeos/main_section.cc
@@ -172,9 +172,12 @@ html_source->AddBoolean("isChildAccount", profile()->IsChild()); // Personalization hub is only enabled for regular (non-guest) users. + // b/238455906 also call |!features::IsGuestModeActive()| since this + // additionally checks for enterprise managed guest users. html_source->AddBoolean("isPersonalizationHubEnabled", ash::features::IsPersonalizationHubEnabled() && - profile()->IsRegularProfile()); + profile()->IsRegularProfile() && + !features::IsGuestModeActive()); // Add the System Web App resources for Settings. html_source->AddResourcePath("icon-192.png", IDR_SETTINGS_LOGO_192);
diff --git a/chrome/build/linux.pgo.txt b/chrome/build/linux.pgo.txt index e8ea474..7f18884 100644 --- a/chrome/build/linux.pgo.txt +++ b/chrome/build/linux.pgo.txt
@@ -1 +1 @@ -chrome-linux-main-1658383156-6cc638232ebfc243bd87d222550673eaeee3150e.profdata +chrome-linux-main-1658404777-1ea1be63e174d409a7b616996078d592f388c70f.profdata
diff --git a/chrome/build/mac.pgo.txt b/chrome/build/mac.pgo.txt index 3ace21fe..d037282 100644 --- a/chrome/build/mac.pgo.txt +++ b/chrome/build/mac.pgo.txt
@@ -1 +1 @@ -chrome-mac-main-1658383156-c84b3a94d220d2f23b061ebd30b8443605791dbf.profdata +chrome-mac-main-1658404777-7084a82ba36c768f97b84ad52e5b3ce4c9720571.profdata
diff --git a/chrome/build/win32.pgo.txt b/chrome/build/win32.pgo.txt index 7ea60092..086ccbbc 100644 --- a/chrome/build/win32.pgo.txt +++ b/chrome/build/win32.pgo.txt
@@ -1 +1 @@ -chrome-win32-main-1658383156-e50a0fa73bafd62ea3e4cf1e2b81e5f98824e70e.profdata +chrome-win32-main-1658404777-d39fb39b600e72bc0bcac09f6cf18a5f1419f1af.profdata
diff --git a/chrome/build/win64.pgo.txt b/chrome/build/win64.pgo.txt index b17b8e3a..3090acc 100644 --- a/chrome/build/win64.pgo.txt +++ b/chrome/build/win64.pgo.txt
@@ -1 +1 @@ -chrome-win64-main-1658393786-50ea6ee96f0fe0bd6d89126202f0a109ce7fec5d.profdata +chrome-win64-main-1658415573-cbf63ca3eb3683d159c0865bd1049a6ee0f2a2f1.profdata
diff --git a/chrome/test/BUILD.gn b/chrome/test/BUILD.gn index cada26f1..fdce773 100644 --- a/chrome/test/BUILD.gn +++ b/chrome/test/BUILD.gn
@@ -1906,6 +1906,7 @@ "../browser/net/trust_token_usecounter_browsertest.cc", "../browser/net/websocket_browsertest.cc", "../browser/new_tab_page/new_tab_page_browsertest.cc", + "../browser/new_tab_page/new_tab_page_util_browsertest.cc", "../browser/no_best_effort_tasks_browsertest.cc", "../browser/no_best_effort_tasks_during_startup_browsertest.cc", "../browser/notifications/notification_permission_browsertest.cc", @@ -6206,6 +6207,7 @@ "../browser/android/explore_sites/ntp_json_fetcher_unittest.cc", "../browser/android/explore_sites/record_site_click_task_unittest.cc", "../browser/android/favicon_helper_unittest.cc", + "../browser/android/framebust_intervention/framebust_blocked_delegate_android_unittest.cc", "../browser/android/history/history_deletion_bridge_unittest.cc", "../browser/android/history_report/data_observer_unittest.cc", "../browser/android/history_report/delta_file_backend_leveldb_unittest.cc",
diff --git a/chrome/test/data/webui/chromeos/personalization_app/personalization_app_component_browsertest.js b/chrome/test/data/webui/chromeos/personalization_app/personalization_app_component_browsertest.js index 9e71591..53c6e5c 100644 --- a/chrome/test/data/webui/chromeos/personalization_app/personalization_app_component_browsertest.js +++ b/chrome/test/data/webui/chromeos/personalization_app/personalization_app_component_browsertest.js
@@ -11,6 +11,7 @@ GEN('#include "ash/constants/ash_features.h"'); GEN('#include "ash/public/cpp/style/dark_light_mode_controller.h"'); +GEN('#include "ash/webui/personalization_app/test/personalization_app_mojom_banned_browsertest_fixture.h"'); GEN('#include "chromeos/constants/chromeos_features.h"'); GEN('#include "content/public/test/browser_test.h"'); @@ -30,6 +31,11 @@ GEN('->SetDarkModeEnabledForTest(false);'); }; } + + get typedefCppFixture() { + return 'ash::personalization_app::' + + 'PersonalizationAppMojomBannedBrowserTestFixture'; + } }; [['AmbientPreviewTest', 'ambient_preview_element_test.js'],
diff --git a/chrome/test/data/webui/chromeos/personalization_app/personalization_app_controller_browsertest.js b/chrome/test/data/webui/chromeos/personalization_app/personalization_app_controller_browsertest.js index a821380..4d55309 100644 --- a/chrome/test/data/webui/chromeos/personalization_app/personalization_app_controller_browsertest.js +++ b/chrome/test/data/webui/chromeos/personalization_app/personalization_app_controller_browsertest.js
@@ -10,6 +10,7 @@ GEN_INCLUDE(['//chrome/test/data/webui/polymer_browser_test_base.js']); GEN('#include "ash/constants/ash_features.h"'); +GEN('#include "ash/webui/personalization_app/test/personalization_app_mojom_banned_browsertest_fixture.h"'); GEN('#include "content/public/test/browser_test.h"'); var PersonalizationAppControllerBrowserTest = class extends PolymerTest { @@ -18,6 +19,11 @@ '?module=chromeos/personalization_app/' + 'personalization_app_controller_test.js'; } + + get typedefCppFixture() { + return 'ash::personalization_app::' + + 'PersonalizationAppMojomBannedBrowserTestFixture'; + } }; TEST_F('PersonalizationAppControllerBrowserTest', 'All', () => mocha.run());
diff --git a/chrome/updater/app/server/win/BUILD.gn b/chrome/updater/app/server/win/BUILD.gn index 73baf31..ee5a2d5 100644 --- a/chrome/updater/app/server/win/BUILD.gn +++ b/chrome/updater/app/server/win/BUILD.gn
@@ -71,6 +71,9 @@ "IAPPWEB_IID=18D0F672-18B4-48e6-AD36-6E6BF01DBBC4", "IAPPCOMMANDWEB_IID=8476CE12-AE1F-4198-805C-BA0F9B783F57", "IPOLICYSTATUS_IID=F63F6F8B-ACD5-413C-A44B-0409136D26CB", + "IPOLICYSTATUS2_IID=34527502-D3DB-4205-A69B-789B27EE0414", + "IPOLICYSTATUS3_IID=05A30352-EB25-45B6-8449-BCA7B0542CE5", + "IPOLICYSTATUSVALUE_IID=27634814-8E41-4C35-8577-980134A96544", "IPROCESSLAUNCHER_IID=128C2DA6-2BC0-44c0-B3F6-4EC22E647964", "IPROCESSLAUNCHER2_IID=D106AB5F-A70E-400E-A21B-96208C1D8DBB", ]
diff --git a/chrome/updater/app/server/win/com_classes_legacy.cc b/chrome/updater/app/server/win/com_classes_legacy.cc index b68f0605..5eff06e 100644 --- a/chrome/updater/app/server/win/com_classes_legacy.cc +++ b/chrome/updater/app/server/win/com_classes_legacy.cc
@@ -22,6 +22,8 @@ #include "base/process/launch.h" #include "base/process/process.h" #include "base/strings/strcat.h" +#include "base/strings/string_number_conversions.h" +#include "base/strings/stringprintf.h" #include "base/strings/utf_string_conversions.h" #include "base/task/sequenced_task_runner.h" #include "base/task/task_traits.h" @@ -34,9 +36,11 @@ #include "chrome/updater/app/server/win/server.h" #include "chrome/updater/constants.h" #include "chrome/updater/external_constants.h" +#include "chrome/updater/policy/manager.h" #include "chrome/updater/policy/service.h" #include "chrome/updater/update_service.h" #include "chrome/updater/updater_scope.h" +#include "chrome/updater/updater_version.h" #include "chrome/updater/util.h" #include "chrome/updater/win/app_command_runner.h" #include "chrome/updater/win/scoped_handle.h" @@ -67,6 +71,27 @@ return {}; } +template <typename T> +std::string GetStringFromValue(const T& value) { + return value; +} + +template <> +std::string GetStringFromValue(const int& value) { + return base::NumberToString(value); +} + +template <> +std::string GetStringFromValue(const bool& value) { + return value ? "true" : "false"; +} + +template <> +std::string GetStringFromValue(const updater::UpdatesSuppressedTimes& value) { + return base::StringPrintf("%d, %d, %d", value.start_hour_, + value.start_minute_, value.duration_minute_); +} + } // namespace namespace updater { @@ -810,6 +835,197 @@ return S_OK; } +STDMETHODIMP PolicyStatusImpl::get_updaterVersion(BSTR* version) { + DCHECK(version); + + *version = base::win::ScopedBstr(kUpdaterVersionUtf16).Release(); + return S_OK; +} + +// TODO(crbug.com/1293203): Implement this method. +STDMETHODIMP PolicyStatusImpl::get_lastCheckedTime(DATE* last_checked) { + DCHECK(last_checked); + + return E_NOTIMPL; +} + +// TODO(crbug.com/1293203): Implement this method. +STDMETHODIMP PolicyStatusImpl::refreshPolicies() { + return E_NOTIMPL; +} + +STDMETHODIMP PolicyStatusImpl::get_lastCheckPeriodMinutes( + IPolicyStatusValue** value) { + DCHECK(value); + + PolicyStatus<int> policy_status; + if (!policy_service_->GetLastCheckPeriodMinutes(&policy_status, nullptr)) + return E_FAIL; + + return PolicyStatusValueImpl::Create(policy_status, value); +} + +STDMETHODIMP PolicyStatusImpl::get_updatesSuppressedTimes( + IPolicyStatusValue** value, + VARIANT_BOOL* are_updates_suppressed) { + DCHECK(value); + DCHECK(are_updates_suppressed); + + UpdatesSuppressedTimes updates_suppressed_times; + PolicyStatus<UpdatesSuppressedTimes> policy_status; + if (!policy_service_->GetUpdatesSuppressedTimes(&policy_status, + &updates_suppressed_times) || + !updates_suppressed_times.valid()) { + return E_FAIL; + } + + base::Time::Exploded now; + base::Time::Now().LocalExplode(&now); + *are_updates_suppressed = + updates_suppressed_times.contains(now.hour, now.minute) ? VARIANT_TRUE + : VARIANT_FALSE; + + return PolicyStatusValueImpl::Create(policy_status, value); +} + +STDMETHODIMP PolicyStatusImpl::get_downloadPreferenceGroupPolicy( + IPolicyStatusValue** value) { + DCHECK(value); + + PolicyStatus<std::string> policy_status; + if (!policy_service_->GetDownloadPreferenceGroupPolicy(&policy_status, + nullptr)) { + return E_FAIL; + } + + return PolicyStatusValueImpl::Create(policy_status, value); +} + +STDMETHODIMP PolicyStatusImpl::get_packageCacheSizeLimitMBytes( + IPolicyStatusValue** value) { + DCHECK(value); + + PolicyStatus<int> policy_status; + if (!policy_service_->GetPackageCacheSizeLimitMBytes(&policy_status, + nullptr)) { + return E_FAIL; + } + + return PolicyStatusValueImpl::Create(policy_status, value); +} + +STDMETHODIMP PolicyStatusImpl::get_packageCacheExpirationTimeDays( + IPolicyStatusValue** value) { + DCHECK(value); + + PolicyStatus<int> policy_status; + if (!policy_service_->GetPackageCacheExpirationTimeDays(&policy_status, + nullptr)) { + return E_FAIL; + } + + return PolicyStatusValueImpl::Create(policy_status, value); +} + +// TODO(crbug.com/1293203): Implement this method. +STDMETHODIMP PolicyStatusImpl::get_proxyMode(IPolicyStatusValue** value) { + DCHECK(value); + + return E_NOTIMPL; +} + +// TODO(crbug.com/1293203): Implement this method. +STDMETHODIMP PolicyStatusImpl::get_proxyPacUrl(IPolicyStatusValue** value) { + DCHECK(value); + + return E_NOTIMPL; +} + +// TODO(crbug.com/1293203): Implement this method. +STDMETHODIMP PolicyStatusImpl::get_proxyServer(IPolicyStatusValue** value) { + DCHECK(value); + + return E_NOTIMPL; +} + +STDMETHODIMP PolicyStatusImpl::get_effectivePolicyForAppInstalls( + BSTR app_id, + IPolicyStatusValue** value) { + DCHECK(value); + + PolicyStatus<int> policy_status; + if (!policy_service_->GetEffectivePolicyForAppInstalls( + base::WideToASCII(app_id), &policy_status, nullptr)) { + return E_FAIL; + } + + return PolicyStatusValueImpl::Create(policy_status, value); +} + +STDMETHODIMP PolicyStatusImpl::get_effectivePolicyForAppUpdates( + BSTR app_id, + IPolicyStatusValue** value) { + DCHECK(value); + + PolicyStatus<int> policy_status; + if (!policy_service_->GetEffectivePolicyForAppUpdates( + base::WideToASCII(app_id), &policy_status, nullptr)) { + return E_FAIL; + } + + return PolicyStatusValueImpl::Create(policy_status, value); +} + +STDMETHODIMP PolicyStatusImpl::get_targetVersionPrefix( + BSTR app_id, + IPolicyStatusValue** value) { + DCHECK(value); + + PolicyStatus<std::string> policy_status; + if (!policy_service_->GetTargetVersionPrefix(base::WideToASCII(app_id), + &policy_status, nullptr)) { + return E_FAIL; + } + + return PolicyStatusValueImpl::Create(policy_status, value); +} + +STDMETHODIMP PolicyStatusImpl::get_isRollbackToTargetVersionAllowed( + BSTR app_id, + IPolicyStatusValue** value) { + DCHECK(value); + + PolicyStatus<bool> policy_status; + if (!policy_service_->IsRollbackToTargetVersionAllowed( + base::WideToASCII(app_id), &policy_status, nullptr)) { + return E_FAIL; + } + + return PolicyStatusValueImpl::Create(policy_status, value); +} + +STDMETHODIMP PolicyStatusImpl::get_targetChannel(BSTR app_id, + IPolicyStatusValue** value) { + DCHECK(value); + + PolicyStatus<std::string> policy_status; + if (!policy_service_->GetTargetChannel(base::WideToASCII(app_id), + &policy_status, nullptr)) { + return E_FAIL; + } + + return PolicyStatusValueImpl::Create(policy_status, value); +} + +// TODO(crbug.com/1293203): Implement this method. +STDMETHODIMP PolicyStatusImpl::get_forceInstallApps( + VARIANT_BOOL is_machine, + IPolicyStatusValue** value) { + DCHECK(value); + + return E_NOTIMPL; +} + // TODO(crbug.com/1344200): Implement the IDispatch methods. STDMETHODIMP PolicyStatusImpl::GetTypeInfoCount(UINT*) { return E_NOTIMPL; @@ -838,4 +1054,104 @@ return E_NOTIMPL; } +PolicyStatusValueImpl::PolicyStatusValueImpl() = default; +PolicyStatusValueImpl::~PolicyStatusValueImpl() = default; + +template <typename T> +HRESULT PolicyStatusValueImpl::Create( + const T& value, + IPolicyStatusValue** policy_status_value) { + return Microsoft::WRL::MakeAndInitialize<PolicyStatusValueImpl>( + policy_status_value, + value.effective_policy() ? value.effective_policy()->source : "", + value.effective_policy() + ? GetStringFromValue(value.effective_policy()->policy) + : "", + value.conflict_policy() != absl::nullopt, + value.conflict_policy() ? value.conflict_policy()->source : "", + value.conflict_policy() + ? GetStringFromValue(value.conflict_policy()->policy) + : ""); +} + +HRESULT PolicyStatusValueImpl::RuntimeClassInitialize( + const std::string& source, + const std::string& value, + bool has_conflict, + const std::string& conflict_source, + const std::string& conflict_value) { + source_ = base::ASCIIToWide(source); + value_ = base::ASCIIToWide(value); + has_conflict_ = has_conflict ? VARIANT_TRUE : VARIANT_FALSE; + conflict_source_ = base::ASCIIToWide(conflict_source); + conflict_value_ = base::ASCIIToWide(conflict_value); + + return S_OK; +} + +// IPolicyStatusValue. +STDMETHODIMP PolicyStatusValueImpl::get_source(BSTR* source) { + DCHECK(source); + + *source = base::win::ScopedBstr(source_).Release(); + return S_OK; +} + +STDMETHODIMP PolicyStatusValueImpl::get_value(BSTR* value) { + DCHECK(value); + + *value = base::win::ScopedBstr(value_).Release(); + return S_OK; +} + +STDMETHODIMP PolicyStatusValueImpl::get_hasConflict( + VARIANT_BOOL* has_conflict) { + DCHECK(has_conflict); + + *has_conflict = has_conflict_; + return S_OK; +} + +STDMETHODIMP PolicyStatusValueImpl::get_conflictSource(BSTR* conflict_source) { + DCHECK(conflict_source); + + *conflict_source = base::win::ScopedBstr(conflict_source_).Release(); + return S_OK; +} + +STDMETHODIMP PolicyStatusValueImpl::get_conflictValue(BSTR* conflict_value) { + DCHECK(conflict_value); + + *conflict_value = base::win::ScopedBstr(conflict_value_).Release(); + return S_OK; +} + +// TODO(crbug.com/1344200): Implement the IDispatch methods. +STDMETHODIMP PolicyStatusValueImpl::GetTypeInfoCount(UINT*) { + return E_NOTIMPL; +} + +STDMETHODIMP PolicyStatusValueImpl::GetTypeInfo(UINT, LCID, ITypeInfo**) { + return E_NOTIMPL; +} + +STDMETHODIMP PolicyStatusValueImpl::GetIDsOfNames(REFIID, + LPOLESTR*, + UINT, + LCID, + DISPID*) { + return E_NOTIMPL; +} + +STDMETHODIMP PolicyStatusValueImpl::Invoke(DISPID, + REFIID, + LCID, + WORD, + DISPPARAMS*, + VARIANT*, + EXCEPINFO*, + UINT*) { + return E_NOTIMPL; +} + } // namespace updater
diff --git a/chrome/updater/app/server/win/com_classes_legacy.h b/chrome/updater/app/server/win/com_classes_legacy.h index 7141a4d..81120b39 100644 --- a/chrome/updater/app/server/win/com_classes_legacy.h +++ b/chrome/updater/app/server/win/com_classes_legacy.h
@@ -298,6 +298,8 @@ : public Microsoft::WRL::RuntimeClass< Microsoft::WRL::RuntimeClassFlags<Microsoft::WRL::ClassicCom>, IPolicyStatus, + IPolicyStatus2, + IPolicyStatus3, IDispatch> { public: PolicyStatusImpl(); @@ -306,8 +308,8 @@ HRESULT RuntimeClassInitialize(); - // IPolicyStatus. See `updater_legacy_idl.template` for the description of the - // properties below. + // IPolicyStatus/IPolicyStatus2/IPolicyStatus3. See + // `updater_legacy_idl.template` for the description of the properties below. IFACEMETHODIMP get_lastCheckPeriodMinutes(DWORD* minutes) override; IFACEMETHODIMP get_updatesSuppressedTimes( DWORD* start_hour, @@ -325,6 +327,38 @@ IFACEMETHODIMP get_isRollbackToTargetVersionAllowed( BSTR app_id, VARIANT_BOOL* rollback_allowed) override; + IFACEMETHODIMP get_updaterVersion(BSTR* version) override; + IFACEMETHODIMP get_lastCheckedTime(DATE* last_checked) override; + IFACEMETHODIMP refreshPolicies() override; + IFACEMETHODIMP get_lastCheckPeriodMinutes( + IPolicyStatusValue** value) override; + IFACEMETHODIMP get_updatesSuppressedTimes( + IPolicyStatusValue** value, + VARIANT_BOOL* are_updates_suppressed) override; + IFACEMETHODIMP get_downloadPreferenceGroupPolicy( + IPolicyStatusValue** value) override; + IFACEMETHODIMP get_packageCacheSizeLimitMBytes( + IPolicyStatusValue** value) override; + IFACEMETHODIMP get_packageCacheExpirationTimeDays( + IPolicyStatusValue** value) override; + IFACEMETHODIMP get_proxyMode(IPolicyStatusValue** value) override; + IFACEMETHODIMP get_proxyPacUrl(IPolicyStatusValue** value) override; + IFACEMETHODIMP get_proxyServer(IPolicyStatusValue** value) override; + IFACEMETHODIMP get_effectivePolicyForAppInstalls( + BSTR app_id, + IPolicyStatusValue** value) override; + IFACEMETHODIMP get_effectivePolicyForAppUpdates( + BSTR app_id, + IPolicyStatusValue** value) override; + IFACEMETHODIMP get_targetVersionPrefix(BSTR app_id, + IPolicyStatusValue** value) override; + IFACEMETHODIMP get_isRollbackToTargetVersionAllowed( + BSTR app_id, + IPolicyStatusValue** value) override; + IFACEMETHODIMP get_targetChannel(BSTR app_id, + IPolicyStatusValue** value) override; + IFACEMETHODIMP get_forceInstallApps(VARIANT_BOOL is_machine, + IPolicyStatusValue** value) override; // Overrides for IDispatch. IFACEMETHODIMP GetTypeInfoCount(UINT* type_info_count) override; @@ -351,6 +385,66 @@ scoped_refptr<PolicyService> policy_service_; }; +// This class implements the legacy Omaha3 IPolicyStatusValue interface. Each +// instance stores a single updater policy returned by the properties in +// IPolicyStatus2 and IPolicyStatus3. +class PolicyStatusValueImpl + : public Microsoft::WRL::RuntimeClass< + Microsoft::WRL::RuntimeClassFlags<Microsoft::WRL::ClassicCom>, + IPolicyStatusValue, + IDispatch> { + public: + PolicyStatusValueImpl(); + PolicyStatusValueImpl(const PolicyStatusValueImpl&) = delete; + PolicyStatusValueImpl& operator=(const PolicyStatusValueImpl&) = delete; + + template <typename T> + static HRESULT Create(const T& value, + IPolicyStatusValue** policy_status_value); + + HRESULT RuntimeClassInitialize(const std::string& source, + const std::string& value, + bool has_conflict, + const std::string& conflict_source, + const std::string& conflict_value); + + // IPolicyStatusValue. See `updater_legacy_idl.template` for the + // description of the properties below. + IFACEMETHODIMP get_source(BSTR* source) override; + IFACEMETHODIMP get_value(BSTR* value) override; + IFACEMETHODIMP get_hasConflict(VARIANT_BOOL* has_conflict) override; + IFACEMETHODIMP get_conflictSource(BSTR* conflict_source) override; + IFACEMETHODIMP get_conflictValue(BSTR* conflict_value) override; + + // Overrides for IDispatch. + IFACEMETHODIMP GetTypeInfoCount(UINT* type_info_count) override; + IFACEMETHODIMP GetTypeInfo(UINT type_info_index, + LCID locale_id, + ITypeInfo** type_info) override; + IFACEMETHODIMP GetIDsOfNames(REFIID iid, + LPOLESTR* names_to_be_mapped, + UINT count_of_names_to_be_mapped, + LCID locale_id, + DISPID* dispatch_ids) override; + IFACEMETHODIMP Invoke(DISPID dispatch_id, + REFIID iid, + LCID locale_id, + WORD flags, + DISPPARAMS* dispatch_parameters, + VARIANT* result, + EXCEPINFO* exception_info, + UINT* arg_error_index) override; + + private: + ~PolicyStatusValueImpl() override; + + std::wstring source_; + std::wstring value_; + VARIANT_BOOL has_conflict_; + std::wstring conflict_source_; + std::wstring conflict_value_; +}; + } // namespace updater #endif // CHROME_UPDATER_APP_SERVER_WIN_COM_CLASSES_LEGACY_H_
diff --git a/chrome/updater/app/server/win/updater_legacy_idl.template b/chrome/updater/app/server/win/updater_legacy_idl.template index b3cdd6e2..b810d57 100644 --- a/chrome/updater/app/server/win/updater_legacy_idl.template +++ b/chrome/updater/app/server/win/updater_legacy_idl.template
@@ -324,6 +324,149 @@ [out, retval] VARIANT_BOOL* rollback_allowed); }; +// IPolicyStatusValue represents the managed state of a single Google Update +// policy. It contains the current source and value, as well as if any conflicts +// exist with that policy. +[ + object, + dual, + uuid(IPOLICYSTATUSVALUE_IID), + helpstring("IPolicyStatusValue Interface"), + pointer_default(unique) +] +interface IPolicyStatusValue : IDispatch { + [propget] HRESULT source([out, retval] BSTR*); + [propget] HRESULT value([out, retval] BSTR*); + [propget] HRESULT hasConflict([out, retval] VARIANT_BOOL* has_conflict); + [propget] HRESULT conflictSource([out, retval] BSTR*); + [propget] HRESULT conflictValue([out, retval] BSTR*); +} + +// IPolicyStatus2 exposes the following: +// * properties for Google Update that includes Global Update state, such as the +// Version of the Updater, the Time that Updates were checked for last. +// * A way to refresh the latest policies from the DM Server. +// * the managed state of Omaha policies. Each policy returns an +// IPolicyStatusValue that can be queried for the current source and value, as +// well as if any conflicts exist with that policy. +// IPolicyStatusValue is implemented by an object that marshals itself by +// value. To get the "current" value, the policy needs to be queried fresh. +[ + object, + dual, + uuid(IPOLICYSTATUS2_IID), + helpstring("IPolicyStatus2 Interface"), + pointer_default(unique) +] +interface IPolicyStatus2 : IDispatch { + // Global Update Status. + + // Returns the running version of the Updater. For instance, 1.3.35.454. + [propget] HRESULT updaterVersion([out, retval] BSTR* version); + + // Returns the last time that the Updater successfully checked for updates. + [propget] HRESULT lastCheckedTime([out, retval] DATE* last_checked); + + // DM policy cache refresh. + + // Gets the latest policies from the DM Server. + HRESULT refreshPolicies(); + + // Global Update Policies + + // Returns the time interval between update checks in minutes. + // 0 indicates updates are disabled. + [propget] HRESULT lastCheckPeriodMinutes( + [out, retval] IPolicyStatusValue** value); + + // For domain-joined machines, returns the suppressed times if any, and also + // checks the current time against the times that updates are suppressed. + // Updates are suppressed if the current time falls between the start time and + // the duration. + // The duration does not account for daylight savings time. For instance, if + // the start time is 22:00 hours, and with a duration of 8 hours, the updates + // will be suppressed for 8 hours regardless of whether daylight savings time + // changes happen in between. + [propget] HRESULT updatesSuppressedTimes( + [out] IPolicyStatusValue** value, + VARIANT_BOOL* are_updates_suppressed); + + // Returns the value of the "DownloadPreference" group policy or an + // empty string if the group policy does not exist, the policy is unknown, or + // an error happened. + [propget] HRESULT downloadPreferenceGroupPolicy( + [out, retval] IPolicyStatusValue** value); + + // Gets the total disk size limit for cached packages. When this limit is hit, + // packages may be deleted from oldest until total size is below the limit. + [propget] HRESULT packageCacheSizeLimitMBytes( + [out, retval] IPolicyStatusValue** value); + + // Gets the package cache life limit. If a cached package is older than this + // limit, it may be deleted. + [propget] HRESULT packageCacheExpirationTimeDays( + [out, retval] IPolicyStatusValue** value); + + // Gets the proxy policy values. + [propget] HRESULT proxyMode([out, retval] IPolicyStatusValue** value); + [propget] HRESULT proxyPacUrl([out, retval] IPolicyStatusValue** value); + [propget] HRESULT proxyServer([out, retval] IPolicyStatusValue** value); + + // Application Update Policies + + // Returns 1 if installation of the specified app is allowed. + // Otherwise, returns 0. + [propget] HRESULT effectivePolicyForAppInstalls( + [in] BSTR app_id, + [out, retval] IPolicyStatusValue** value); + + // Returns 1 if updates of the specified app is allowed. + // Otherwise, returns one of 0 (Disabled), 2 (ManualUpdatesOnly), or + // 3 (AutomaticUpdatesOnly). + [propget] HRESULT effectivePolicyForAppUpdates( + [in] BSTR app_id, + [out, retval] IPolicyStatusValue** value); + + // Returns the target version prefix for the app, if the machine is joined to + // a domain and has the corresponding policy set. + // Examples: + // * "" (or not configured): update to latest version available. + // * "55.": update to any minor version of 55 (e.g. 55.24.34 or 55.60.2). + // * "55.2.": update to any minor version of 55.2 (e.g. 55.2.34 or 55.2.2). + // * "55.24.34": update to this specific version only. + [propget] HRESULT targetVersionPrefix( + [in] BSTR app_id, + [out, retval] IPolicyStatusValue** value); + + // Returns whether the RollbackToTargetVersion policy has been set for the + // app. If RollbackToTargetVersion is set, the TargetVersionPrefix policy + // governs the version to rollback clients with higher versions to. + [propget] HRESULT isRollbackToTargetVersionAllowed( + [in] BSTR app_id, [out, retval] IPolicyStatusValue** value); + + // Returns the target channel for the app, if the machine is joined to a + // domain and has the corresponding policy set. + [propget] HRESULT targetChannel([in] BSTR app_id, + [out, retval] IPolicyStatusValue** value); +}; + +// IPolicyStatus3 exposes everything IPolicyStatus2 does, and in addition, +// exposes the forceInstallApps policy. +[ + object, + dual, + uuid(IPOLICYSTATUS3_IID), + helpstring("IPolicyStatus3 Interface"), + pointer_default(unique) +] +interface IPolicyStatus3 : IPolicyStatus2 { + // Global Update Policies + + [propget] HRESULT forceInstallApps([in] VARIANT_BOOL is_machine, + [out, retval] IPolicyStatusValue** value); +}; + + [ object, oleautomation, @@ -398,6 +541,9 @@ interface IAppWeb; interface IAppCommandWeb; interface IPolicyStatus; + interface IPolicyStatus2; + interface IPolicyStatus3; + interface IPolicyStatusValue; interface IProcessLauncher; interface IProcessLauncher2; };
diff --git a/chrome/updater/policy/service.cc b/chrome/updater/policy/service.cc index 753f17b..1b938f46 100644 --- a/chrome/updater/policy/service.cc +++ b/chrome/updater/policy/service.cc
@@ -179,7 +179,8 @@ if (!status.effective_policy()) return false; - *result = status.effective_policy().value().policy; + if (result) + *result = status.effective_policy().value().policy; if (policy_status) *policy_status = status; return true; @@ -205,7 +206,8 @@ if (!status.effective_policy()) return false; - *result = status.effective_policy().value().policy; + if (result) + *result = status.effective_policy().value().policy; if (policy_status) *policy_status = status; return true;
diff --git a/chrome/updater/win/setup/setup_util.cc b/chrome/updater/win/setup/setup_util.cc index ece363f2..7cf5b57 100644 --- a/chrome/updater/win/setup/setup_util.cc +++ b/chrome/updater/win/setup/setup_util.cc
@@ -121,7 +121,9 @@ __uuidof(IAppBundleWeb), __uuidof(IAppWeb), __uuidof(IAppCommandWeb), __uuidof(ICompleteStatus), __uuidof(ICurrentState), __uuidof(IGoogleUpdate3Web), __uuidof(IPolicyStatus), - __uuidof(IProcessLauncher), __uuidof(IProcessLauncher2), + __uuidof(IPolicyStatus2), __uuidof(IPolicyStatus3), + __uuidof(IPolicyStatusValue), __uuidof(IProcessLauncher), + __uuidof(IProcessLauncher2), #endif // BUILDFLAG(GOOGLE_CHROME_BRANDING) }; } @@ -322,6 +324,9 @@ {__uuidof(ICurrentState), kUpdaterLegacyIndex}, {__uuidof(IGoogleUpdate3Web), kUpdaterLegacyIndex}, {__uuidof(IPolicyStatus), kUpdaterLegacyIndex}, + {__uuidof(IPolicyStatus2), kUpdaterLegacyIndex}, + {__uuidof(IPolicyStatus3), kUpdaterLegacyIndex}, + {__uuidof(IPolicyStatusValue), kUpdaterLegacyIndex}, {__uuidof(IProcessLauncher), kUpdaterLegacyIndex}, {__uuidof(IProcessLauncher2), kUpdaterLegacyIndex}, }};
diff --git a/chromeos/ash/components/memory/kstaled.cc b/chromeos/ash/components/memory/kstaled.cc index 279e586..121dd26 100644 --- a/chromeos/ash/components/memory/kstaled.cc +++ b/chromeos/ash/components/memory/kstaled.cc
@@ -10,7 +10,6 @@ #include "base/metrics/field_trial_params.h" #include "base/strings/string_number_conversions.h" #include "base/system/sys_info.h" -#include "chromeos/dbus/dbus_thread_manager.h" #include "chromeos/dbus/debug_daemon/debug_daemon_client.h" namespace ash { @@ -66,7 +65,7 @@ } chromeos::DebugDaemonClient* debugd_client = - chromeos::DBusThreadManager::Get()->GetDebugDaemonClient(); + chromeos::DebugDaemonClient::Get(); DCHECK(debugd_client); debugd_client->SetKstaledRatio(static_cast<uint8_t>(feature_ratio),
diff --git a/chromeos/ash/components/memory/swap_configuration.cc b/chromeos/ash/components/memory/swap_configuration.cc index 7846f12..3818154 100644 --- a/chromeos/ash/components/memory/swap_configuration.cc +++ b/chromeos/ash/components/memory/swap_configuration.cc
@@ -9,7 +9,6 @@ #include "base/feature_list.h" #include "base/metrics/field_trial_params.h" #include "chromeos/ash/components/dbus/resourced/resourced_client.h" -#include "chromeos/dbus/dbus_thread_manager.h" #include "chromeos/dbus/debug_daemon/debug_daemon_client.h" namespace ash { @@ -110,7 +109,7 @@ } chromeos::DebugDaemonClient* debugd_client = - chromeos::DBusThreadManager::Get()->GetDebugDaemonClient(); + chromeos::DebugDaemonClient::Get(); CHECK(debugd_client); int min_mb = kCrOSMinFilelistMb.Get(); @@ -130,7 +129,7 @@ return; chromeos::DebugDaemonClient* debugd_client = - chromeos::DBusThreadManager::Get()->GetDebugDaemonClient(); + chromeos::DebugDaemonClient::Get(); CHECK(debugd_client); int swap_weight = kCrOSRamVsSwapWeight.Get(); @@ -152,7 +151,7 @@ return; chromeos::DebugDaemonClient* debugd_client = - chromeos::DBusThreadManager::Get()->GetDebugDaemonClient(); + chromeos::DebugDaemonClient::Get(); CHECK(debugd_client); int extra_free = kCrOSExtraFreeMb.Get();
diff --git a/chromeos/ash/components/memory/zram_writeback_backend.cc b/chromeos/ash/components/memory/zram_writeback_backend.cc index dcdca33..1f738eaf 100644 --- a/chromeos/ash/components/memory/zram_writeback_backend.cc +++ b/chromeos/ash/components/memory/zram_writeback_backend.cc
@@ -106,7 +106,7 @@ void EnableWriteback(uint64_t size_mb, IntCallback cb) override { chromeos::DebugDaemonClient* debugd_client = - chromeos::DBusThreadManager::Get()->GetDebugDaemonClient(); + chromeos::DebugDaemonClient::Get(); CHECK(debugd_client); debugd_client->SwapZramEnableWriteback( @@ -132,7 +132,7 @@ void MarkIdle(base::TimeDelta age, Callback cb) override { chromeos::DebugDaemonClient* debugd_client = - chromeos::DBusThreadManager::Get()->GetDebugDaemonClient(); + chromeos::DebugDaemonClient::Get(); CHECK(debugd_client); debugd_client->SwapZramMarkIdle( @@ -167,7 +167,7 @@ void SetWritebackLimit(uint64_t size_pages, IntCallback cb) override { chromeos::DebugDaemonClient* debugd_client = - chromeos::DBusThreadManager::Get()->GetDebugDaemonClient(); + chromeos::DebugDaemonClient::Get(); CHECK(debugd_client); debugd_client->SwapZramSetWritebackLimit( @@ -199,7 +199,7 @@ void InitiateWriteback(ZramWritebackMode mode, Callback cb) override { chromeos::DebugDaemonClient* debugd_client = - chromeos::DBusThreadManager::Get()->GetDebugDaemonClient(); + chromeos::DebugDaemonClient::Get(); CHECK(debugd_client); debugd_client->InitiateSwapZramWriteback(
diff --git a/chromeos/dbus/dbus_clients_browser.cc b/chromeos/dbus/dbus_clients_browser.cc index d7272233..afbf65b 100644 --- a/chromeos/dbus/dbus_clients_browser.cc +++ b/chromeos/dbus/dbus_clients_browser.cc
@@ -6,42 +6,15 @@ #include "base/check.h" #include "chromeos/dbus/dbus_thread_manager.h" -#include "chromeos/dbus/debug_daemon/debug_daemon_client.h" -#include "chromeos/dbus/debug_daemon/fake_debug_daemon_client.h" -#include "chromeos/dbus/easy_unlock/easy_unlock_client.h" -#include "chromeos/dbus/easy_unlock/fake_easy_unlock_client.h" -#include "chromeos/dbus/fwupd/fake_fwupd_client.h" -#include "chromeos/dbus/fwupd/fwupd_client.h" namespace chromeos { -// CREATE_DBUS_CLIENT creates the appropriate version of D-Bus client. -#if defined(USE_REAL_DBUS_CLIENTS) -// Create the real D-Bus client. use_real_clients is ignored. -#define CREATE_DBUS_CLIENT(type, use_real_clients) type::Create() -#else -// Create a fake if use_real_clients == false. -// TODO(hashimoto): Always use fakes after adding -// use_real_dbus_clients=true to where needed. crbug.com/952745 -#define CREATE_DBUS_CLIENT(type, use_real_clients) \ - (use_real_clients ? type::Create() : std::make_unique<Fake##type>()) -#endif // USE_REAL_DBUS_CLIENTS - -DBusClientsBrowser::DBusClientsBrowser(bool use_real_clients) { - debug_daemon_client_ = - CREATE_DBUS_CLIENT(DebugDaemonClient, use_real_clients); - easy_unlock_client_ = CREATE_DBUS_CLIENT(EasyUnlockClient, use_real_clients); - fwupd_client_ = CREATE_DBUS_CLIENT(FwupdClient, use_real_clients); -} +DBusClientsBrowser::DBusClientsBrowser(bool use_real_clients) {} DBusClientsBrowser::~DBusClientsBrowser() = default; void DBusClientsBrowser::Initialize(dbus::Bus* system_bus) { DCHECK(DBusThreadManager::IsInitialized()); - - debug_daemon_client_->Init(system_bus); - easy_unlock_client_->Init(system_bus); - fwupd_client_->Init(system_bus); } } // namespace chromeos
diff --git a/chromeos/dbus/dbus_clients_browser.h b/chromeos/dbus/dbus_clients_browser.h index 232695d..ffc1c00 100644 --- a/chromeos/dbus/dbus_clients_browser.h +++ b/chromeos/dbus/dbus_clients_browser.h
@@ -5,8 +5,6 @@ #ifndef CHROMEOS_DBUS_DBUS_CLIENTS_BROWSER_H_ #define CHROMEOS_DBUS_DBUS_CLIENTS_BROWSER_H_ -#include <memory> - #include "base/component_export.h" namespace dbus { @@ -15,14 +13,7 @@ namespace chromeos { -class DebugDaemonClient; -class EasyUnlockClient; -class FwupdClient; - -// Owns D-Bus clients. -// TODO(jamescook): Rename this class. "Browser" refers to the browser process -// versus ash process distinction from the mustash project, which was cancelled -// in 2019. +// TODO(jamescook): Delete this class. http://crbug.com/647367 class COMPONENT_EXPORT(CHROMEOS_DBUS) DBusClientsBrowser { public: // Creates real implementations if |use_real_clients| is true and fakes @@ -35,14 +26,6 @@ ~DBusClientsBrowser(); void Initialize(dbus::Bus* system_bus); - - private: - friend class DBusThreadManager; - friend class DBusThreadManagerSetter; - - std::unique_ptr<DebugDaemonClient> debug_daemon_client_; - std::unique_ptr<EasyUnlockClient> easy_unlock_client_; - std::unique_ptr<FwupdClient> fwupd_client_; }; } // namespace chromeos
diff --git a/chromeos/dbus/dbus_thread_manager.cc b/chromeos/dbus/dbus_thread_manager.cc index 44a0fc6..5725aa7 100644 --- a/chromeos/dbus/dbus_thread_manager.cc +++ b/chromeos/dbus/dbus_thread_manager.cc
@@ -12,14 +12,11 @@ #include "base/message_loop/message_pump_type.h" #include "chromeos/dbus/common/dbus_client.h" #include "chromeos/dbus/dbus_clients_browser.h" -#include "chromeos/dbus/debug_daemon/debug_daemon_client.h" -#include "chromeos/dbus/easy_unlock/easy_unlock_client.h" #include "chromeos/dbus/shill/shill_clients.h" namespace chromeos { static DBusThreadManager* g_dbus_thread_manager = nullptr; -static DBusThreadManagerSetter* g_setter = nullptr; DBusThreadManager::DBusThreadManager() : clients_browser_( @@ -30,23 +27,6 @@ clients_browser_.reset(); } -// Returns a client that is set via DBusThreadManagerSetter when available. -#define RETURN_DBUS_CLIENT(name) \ - return (g_setter && g_setter->name) \ - ? g_setter->name.get() \ - : (clients_browser_ ? clients_browser_->name.get() : nullptr) - -DebugDaemonClient* DBusThreadManager::GetDebugDaemonClient() { - RETURN_DBUS_CLIENT(debug_daemon_client_); -} - -EasyUnlockClient* DBusThreadManager::GetEasyUnlockClient() { - return clients_browser_ ? clients_browser_->easy_unlock_client_.get() - : nullptr; -} - -#undef RETURN_DBUS_CLIENT - void DBusThreadManager::InitializeClients() { // Some clients call DBusThreadManager::Get() during initialization. DCHECK(g_dbus_thread_manager); @@ -72,13 +52,6 @@ } // static -DBusThreadManagerSetter* DBusThreadManager::GetSetterForTesting() { - if (!g_setter) - g_setter = new DBusThreadManagerSetter(); - return g_setter; -} - -// static bool DBusThreadManager::IsInitialized() { return !!g_dbus_thread_manager; } @@ -95,9 +68,6 @@ g_dbus_thread_manager = nullptr; delete dbus_thread_manager; - delete g_setter; - g_setter = nullptr; - VLOG(1) << "DBusThreadManager Shutdown completed"; } @@ -108,13 +78,4 @@ return g_dbus_thread_manager; } -DBusThreadManagerSetter::DBusThreadManagerSetter() = default; - -DBusThreadManagerSetter::~DBusThreadManagerSetter() = default; - -void DBusThreadManagerSetter::SetDebugDaemonClient( - std::unique_ptr<DebugDaemonClient> client) { - debug_daemon_client_ = std::move(client); -} - } // namespace chromeos
diff --git a/chromeos/dbus/dbus_thread_manager.h b/chromeos/dbus/dbus_thread_manager.h index a752e72..45f5315 100644 --- a/chromeos/dbus/dbus_thread_manager.h +++ b/chromeos/dbus/dbus_thread_manager.h
@@ -16,9 +16,6 @@ // Style Note: Clients are sorted by names. class DBusClientsBrowser; -class DBusThreadManagerSetter; -class DebugDaemonClient; -class EasyUnlockClient; // THIS CLASS IS BEING DEPRECATED. See README.md for guidelines and // https://crbug.com/647367 for details. @@ -34,13 +31,6 @@ // arguments and whether this process runs in a ChromeOS environment. static void Initialize(); - // Returns a DBusThreadManagerSetter instance that allows tests to replace - // individual D-Bus clients with their own implementations. The returned - // object will be destroyed in DBusThreadManager::Shutdown(). This method - // can be called before calling DBusThreadManager::Initialize() which is - // useful for browser tests, but does NOT initialize the manager itself. - static DBusThreadManagerSetter* GetSetterForTesting(); - // Returns true if DBusThreadManager has been initialized. Call this to // avoid initializing + shutting down DBusThreadManager more than once. static bool IsInitialized(); @@ -51,13 +41,6 @@ // Gets the global instance. Initialize() must be called first. static DBusThreadManager* Get(); - // All returned objects are owned by DBusThreadManager. Do not use these - // pointers after DBusThreadManager has been shut down. - // TODO(jamescook): Replace this with calls to FooClient::Get(). - // http://crbug.com/647367 - DebugDaemonClient* GetDebugDaemonClient(); - EasyUnlockClient* GetEasyUnlockClient(); - private: DBusThreadManager(); DBusThreadManager(const DBusThreadManager&) = delete; @@ -72,23 +55,6 @@ std::unique_ptr<DBusClientsBrowser> clients_browser_; }; -// TODO(jamescook): Replace these with FooClient::InitializeForTesting(). -class COMPONENT_EXPORT(CHROMEOS_DBUS) DBusThreadManagerSetter { - public: - void SetDebugDaemonClient(std::unique_ptr<DebugDaemonClient> client); - - private: - friend class DBusThreadManager; - - DBusThreadManagerSetter(); - DBusThreadManagerSetter(const DBusThreadManagerSetter&) = delete; - const DBusThreadManagerSetter& operator=(const DBusThreadManagerSetter&) = - delete; - ~DBusThreadManagerSetter(); - - std::unique_ptr<DebugDaemonClient> debug_daemon_client_; -}; - } // namespace chromeos // TODO(https://crbug.com/1164001): remove after moved to ash.
diff --git a/chromeos/dbus/dbus_thread_manager_unittest.cc b/chromeos/dbus/dbus_thread_manager_unittest.cc index e5bcae48..a789685b 100644 --- a/chromeos/dbus/dbus_thread_manager_unittest.cc +++ b/chromeos/dbus/dbus_thread_manager_unittest.cc
@@ -8,7 +8,6 @@ namespace chromeos { -// Tests that real and fake clients can be created. TEST(DBusThreadManagerTest, Initialize) { DBusThreadManager::Initialize(); EXPECT_TRUE(DBusThreadManager::IsInitialized()); @@ -19,10 +18,6 @@ // In tests, clients are fake. EXPECT_TRUE(manager->IsUsingFakes()); - // Clients were created. - EXPECT_TRUE(manager->GetDebugDaemonClient()); - EXPECT_TRUE(manager->GetEasyUnlockClient()); - DBusThreadManager::Shutdown(); EXPECT_FALSE(DBusThreadManager::IsInitialized()); }
diff --git a/chromeos/dbus/debug_daemon/debug_daemon_client.cc b/chromeos/dbus/debug_daemon/debug_daemon_client.cc index 156c7c2..8e348d5 100644 --- a/chromeos/dbus/debug_daemon/debug_daemon_client.cc +++ b/chromeos/dbus/debug_daemon/debug_daemon_client.cc
@@ -32,6 +32,7 @@ #include "base/trace_event/trace_config.h" #include "chromeos/dbus/common/pipe_reader.h" #include "chromeos/dbus/cryptohome/rpc.pb.h" +#include "chromeos/dbus/debug_daemon/fake_debug_daemon_client.h" #include "dbus/bus.h" #include "dbus/message.h" #include "dbus/object_path.h" @@ -51,6 +52,12 @@ // wait up to 20 seconds for it. const int kCrashSenderTimeoutMS = 20 * 1000; +// NOTE: This does not use the typical pattern of a single `g_instance` variable +// due to browser_tests that need to temporarily override the existing instance +// with a specialized subclass. +DebugDaemonClient* g_instance = nullptr; +DebugDaemonClient* g_instance_for_test = nullptr; + // A self-deleting object that wraps the pipe reader operations for reading the // big feedback logs. It will delete itself once the pipe stream has been // terminated. Once the data has been completely read from the pipe, it invokes @@ -129,8 +136,6 @@ : DbusLibraryError::kGenericError; } -} // namespace - // The DebugDaemonClient implementation used in production. class DebugDaemonClientImpl : public DebugDaemonClient { public: @@ -708,7 +713,6 @@ observers_.RemoveObserver(observer); } - protected: void Init(dbus::Bus* bus) override { debugdaemon_proxy_ = bus->GetObjectProxy(debugd::kDebugdServiceName, @@ -1108,12 +1112,48 @@ base::WeakPtrFactory<DebugDaemonClientImpl> weak_ptr_factory_{this}; }; +} // namespace + +// static +DebugDaemonClient* DebugDaemonClient::Get() { + if (g_instance_for_test) + return g_instance_for_test; + return g_instance; +} + +// static +void DebugDaemonClient::Initialize(dbus::Bus* bus) { + CHECK(bus); + CHECK(!g_instance); + g_instance = new DebugDaemonClientImpl(); + g_instance->Init(bus); +} + +// static +void DebugDaemonClient::InitializeFake() { + CHECK(!g_instance); + g_instance = new FakeDebugDaemonClient(); + g_instance->Init(nullptr); +} + +// static +void DebugDaemonClient::SetInstanceForTest(DebugDaemonClient* client) { + g_instance_for_test = client; +} + +// static +void DebugDaemonClient::Shutdown() { + CHECK(g_instance); + delete g_instance; + g_instance = nullptr; +} + DebugDaemonClient::DebugDaemonClient() = default; DebugDaemonClient::~DebugDaemonClient() = default; // static -std::unique_ptr<DebugDaemonClient> DebugDaemonClient::Create() { +std::unique_ptr<DebugDaemonClient> DebugDaemonClient::CreateInstance() { return std::make_unique<DebugDaemonClientImpl>(); }
diff --git a/chromeos/dbus/debug_daemon/debug_daemon_client.h b/chromeos/dbus/debug_daemon/debug_daemon_client.h index 4d5014a..ef1a3cc 100644 --- a/chromeos/dbus/debug_daemon/debug_daemon_client.h +++ b/chromeos/dbus/debug_daemon/debug_daemon_client.h
@@ -42,6 +42,22 @@ : public DBusClient, public base::trace_event::TracingAgent { public: + // Returns the global instance if initialized. May return null. + static DebugDaemonClient* Get(); + + // Creates and initializes the global instance. |bus| must not be null. + static void Initialize(dbus::Bus* bus); + + // Creates and initializes a fake global instance. + static void InitializeFake(); + + // Sets a temporary instance for testing. Overrides the existing + // global instance, if any. + static void SetInstanceForTest(DebugDaemonClient* client); + + // Destroys the global instance if it has been initialized. + static void Shutdown(); + DebugDaemonClient(const DebugDaemonClient&) = delete; DebugDaemonClient& operator=(const DebugDaemonClient&) = delete; @@ -325,17 +341,16 @@ virtual void PacketCaptureStartSignalReceived(dbus::Signal* signal) = 0; virtual void PacketCaptureStopSignalReceived(dbus::Signal* signal) = 0; - // Factory function, creates a new instance and returns ownership. - // For normal usage, access the singleton via DBusThreadManager::Get(). - static std::unique_ptr<DebugDaemonClient> Create(); - protected: - // For calling Init() in initiating a DebugDaemonClient instance for private - // connections. + // For creating a second instance of DebugDaemonClient on another thread for + // private connections. friend class DebugDaemonClientProvider; - // Create() should be used instead. + // Initialize() should be used instead. DebugDaemonClient(); + + // See DebugDaemonClientProvider for details. + static std::unique_ptr<DebugDaemonClient> CreateInstance(); }; } // namespace chromeos
diff --git a/chromeos/dbus/debug_daemon/debug_daemon_client_provider.cc b/chromeos/dbus/debug_daemon/debug_daemon_client_provider.cc index 9baaf3f..89816f16 100644 --- a/chromeos/dbus/debug_daemon/debug_daemon_client_provider.cc +++ b/chromeos/dbus/debug_daemon/debug_daemon_client_provider.cc
@@ -17,7 +17,7 @@ DebugDaemonClientProvider::DebugDaemonClientProvider() : dbus_task_runner_(base::ThreadPool::CreateSingleThreadTaskRunner( {base::TaskPriority::BEST_EFFORT, base::MayBlock()})), - debug_daemon_client_(DebugDaemonClient::Create()) { + debug_daemon_client_(DebugDaemonClient::CreateInstance()) { dbus::Bus::Options dbus_options; dbus_options.bus_type = dbus::Bus::SYSTEM; dbus_options.connection_type = dbus::Bus::PRIVATE;
diff --git a/chromeos/dbus/easy_unlock/easy_unlock_client.cc b/chromeos/dbus/easy_unlock/easy_unlock_client.cc index bd30d5d0..4ff050e 100644 --- a/chromeos/dbus/easy_unlock/easy_unlock_client.cc +++ b/chromeos/dbus/easy_unlock/easy_unlock_client.cc
@@ -11,7 +11,8 @@ #include <vector> #include "base/bind.h" -#include "base/compiler_specific.h" +#include "base/check.h" +#include "chromeos/dbus/easy_unlock/fake_easy_unlock_client.h" #include "dbus/bus.h" #include "dbus/message.h" #include "dbus/object_path.h" @@ -22,6 +23,8 @@ namespace { +EasyUnlockClient* g_instance = nullptr; + // Reads array of bytes from a dbus message reader and converts it to string. std::string PopResponseData(dbus::MessageReader* reader) { const uint8_t* bytes = NULL; @@ -39,8 +42,7 @@ data.length()); } -// The EasyUnlockClient used in production (and returned by -// EasyUnlockClient::Create). +// The EasyUnlockClient used in production. class EasyUnlockClientImpl : public EasyUnlockClient { public: EasyUnlockClientImpl() : proxy_(nullptr) {} @@ -134,7 +136,6 @@ weak_ptr_factory_.GetWeakPtr(), std::move(callback))); } - protected: void Init(dbus::Bus* bus) override { proxy_ = bus->GetObjectProxy( easy_unlock::kEasyUnlockServiceName, @@ -191,13 +192,36 @@ EasyUnlockClient::UnwrapSecureMessageOptions::~UnwrapSecureMessageOptions() = default; -EasyUnlockClient::EasyUnlockClient() = default; - -EasyUnlockClient::~EasyUnlockClient() = default; +// static +EasyUnlockClient* EasyUnlockClient::Get() { + return g_instance; +} // static -std::unique_ptr<EasyUnlockClient> EasyUnlockClient::Create() { - return std::make_unique<EasyUnlockClientImpl>(); +void EasyUnlockClient::Initialize(dbus::Bus* bus) { + CHECK(bus); + (new EasyUnlockClientImpl())->Init(bus); +} + +// static +void EasyUnlockClient::InitializeFake() { + (new FakeEasyUnlockClient())->Init(nullptr); +} + +// static +void EasyUnlockClient::Shutdown() { + CHECK(g_instance); + delete g_instance; +} + +EasyUnlockClient::EasyUnlockClient() { + CHECK(!g_instance); + g_instance = this; +} + +EasyUnlockClient::~EasyUnlockClient() { + CHECK_EQ(g_instance, this); + g_instance = nullptr; } } // namespace chromeos
diff --git a/chromeos/dbus/easy_unlock/easy_unlock_client.h b/chromeos/dbus/easy_unlock/easy_unlock_client.h index 1afb686..c97df5a 100644 --- a/chromeos/dbus/easy_unlock/easy_unlock_client.h +++ b/chromeos/dbus/easy_unlock/easy_unlock_client.h
@@ -37,8 +37,6 @@ // On error, |data| is empty. using DataCallback = base::OnceCallback<void(const std::string& data)>; - ~EasyUnlockClient() override; - // Parameters used to create a secure message. struct CreateSecureMessageOptions { CreateSecureMessageOptions(); @@ -100,6 +98,18 @@ std::string signature_type; }; + // Returns the global instance if initialized. May return null. + static EasyUnlockClient* Get(); + + // Creates and initializes the global instance. |bus| must not be null. + static void Initialize(dbus::Bus* bus); + + // Creates and initializes a fake global instance. + static void InitializeFake(); + + // Destroys the global instance if it has been initialized. + static void Shutdown(); + // Generates ECDSA key pair using P256 curve. // The created keys should only be used with this client. virtual void GenerateEcP256KeyPair(KeyPairCallback callback) = 0; @@ -143,15 +153,12 @@ const UnwrapSecureMessageOptions& options, DataCallback callback) = 0; - // Factory function, creates a new instance and returns ownership. - // For normal usage, access the singleton via DBusThreadManager::Get(). - static std::unique_ptr<EasyUnlockClient> Create(); - protected: - // Create() should be used instead. + // Initialize() should be used instead. EasyUnlockClient(); EasyUnlockClient(const EasyUnlockClient&) = delete; EasyUnlockClient& operator=(const EasyUnlockClient&) = delete; + ~EasyUnlockClient() override; }; } // namespace chromeos
diff --git a/chromeos/dbus/fwupd/fwupd_client.cc b/chromeos/dbus/fwupd/fwupd_client.cc index a1b26e3e..6a493d7 100644 --- a/chromeos/dbus/fwupd/fwupd_client.cc +++ b/chromeos/dbus/fwupd/fwupd_client.cc
@@ -12,6 +12,7 @@ #include "base/files/file_path.h" #include "base/values.h" #include "chromeos/dbus/fwupd/dbus_constants.h" +#include "chromeos/dbus/fwupd/fake_fwupd_client.h" #include "chromeos/dbus/fwupd/fwupd_properties.h" #include "dbus/bus.h" #include "dbus/message.h" @@ -84,16 +85,13 @@ return raw_sum; } -} // namespace - class FwupdClientImpl : public FwupdClient { public: - FwupdClientImpl(); + FwupdClientImpl() = default; FwupdClientImpl(const FwupdClientImpl&) = delete; FwupdClientImpl& operator=(const FwupdClientImpl&) = delete; - ~FwupdClientImpl() override; + ~FwupdClientImpl() override = default; - protected: void Init(dbus::Bus* bus) override { DCHECK(bus); @@ -417,6 +415,8 @@ base::WeakPtrFactory<FwupdClientImpl> weak_ptr_factory_{this}; }; +} // namespace + void FwupdClient::AddObserver(FwupdClient::Observer* observer) { observers_.AddObserver(observer); } @@ -435,18 +435,26 @@ g_instance = nullptr; } -FwupdClientImpl::FwupdClientImpl() = default; - -FwupdClientImpl::~FwupdClientImpl() = default; - -// static -std::unique_ptr<FwupdClient> FwupdClient::Create() { - return std::make_unique<FwupdClientImpl>(); -} - // static FwupdClient* FwupdClient::Get() { return g_instance; } +// static +void FwupdClient::Initialize(dbus::Bus* bus) { + CHECK(bus); + (new FwupdClientImpl())->Init(bus); +} + +// static +void FwupdClient::InitializeFake() { + (new FakeFwupdClient())->Init(nullptr); +} + +// static +void FwupdClient::Shutdown() { + CHECK(g_instance); + delete g_instance; +} + } // namespace chromeos
diff --git a/chromeos/dbus/fwupd/fwupd_client.h b/chromeos/dbus/fwupd/fwupd_client.h index 7248aedee..5043044f 100644 --- a/chromeos/dbus/fwupd/fwupd_client.h +++ b/chromeos/dbus/fwupd/fwupd_client.h
@@ -36,20 +36,20 @@ void AddObserver(Observer* observer); void RemoveObserver(Observer* observer); - // Create() should be used instead. - FwupdClient(); FwupdClient(const FwupdClient&) = delete; FwupdClient& operator=(const FwupdClient&) = delete; - ~FwupdClient() override; - - // Factory function. - static std::unique_ptr<FwupdClient> Create(); // Returns the global instance if initialized. May return null. static FwupdClient* Get(); - // Used to call the protected initialization in unit tests. - void InitForTesting(dbus::Bus* bus) { Init(bus); } + // Creates and initializes the global instance. |bus| must not be null. + static void Initialize(dbus::Bus* bus); + + // Creates and initializes a fake global instance. + static void InitializeFake(); + + // Destroys the global instance if it has been initialized. + static void Shutdown(); void SetPropertiesForTesting(uint32_t percentage, uint32_t status) { properties_->percentage.ReplaceValue(percentage); @@ -69,6 +69,10 @@ protected: friend class FwupdClientTest; + // Initialize() should be used instead. + FwupdClient(); + ~FwupdClient() override; + // Auxiliary variables for testing. // TODO(swifton): Replace this with an observer. bool client_is_in_testing_mode_ = false;
diff --git a/chromeos/dbus/fwupd/fwupd_client_unittest.cc b/chromeos/dbus/fwupd/fwupd_client_unittest.cc index f03ad2b..cd60bd7 100644 --- a/chromeos/dbus/fwupd/fwupd_client_unittest.cc +++ b/chromeos/dbus/fwupd/fwupd_client_unittest.cc
@@ -95,14 +95,14 @@ bus_->GetObjectProxy(kFwupdServiceName, fwupd_service_path), base::DoNothing()); - fwupd_client_ = FwupdClient::Create(); - fwupd_client_->InitForTesting(bus_.get()); + FwupdClient::Initialize(bus_.get()); + fwupd_client_ = FwupdClient::Get(); fwupd_client_->client_is_in_testing_mode_ = true; } FwupdClientTest(const FwupdClientTest&) = delete; FwupdClientTest& operator=(const FwupdClientTest&) = delete; - ~FwupdClientTest() override = default; + ~FwupdClientTest() override { FwupdClient::Shutdown(); } int GetDeviceSignalCallCount() { return fwupd_client_->device_signal_call_count_for_testing_; @@ -279,7 +279,7 @@ } scoped_refptr<dbus::MockObjectProxy> proxy_; - std::unique_ptr<FwupdClient> fwupd_client_; + FwupdClient* fwupd_client_ = nullptr; std::unique_ptr<chromeos::FwupdProperties> expected_properties_; private:
diff --git a/chromeos/strings/chromeos_strings_te.xtb b/chromeos/strings/chromeos_strings_te.xtb index 54a8db6..808ff1c 100644 --- a/chromeos/strings/chromeos_strings_te.xtb +++ b/chromeos/strings/chromeos_strings_te.xtb
@@ -20,7 +20,7 @@ <translation id="1165039591588034296">ఎర్రర్</translation> <translation id="1175697296044146566"><ph name="MANAGER" /> ద్వారా ఈ <ph name="DEVICE_TYPE" /> మేనేజ్ చేయబడుతోంది.</translation> <translation id="1175951029573070619">మోస్తరుగా ఉంది (<ph name="SIGNAL_STRENGTH" />)</translation> -<translation id="1181037720776840403">తీసివేయి</translation> +<translation id="1181037720776840403">తీసివేయండి</translation> <translation id="1190378975642195988">బేస్ యాక్సిలెరోమీటర్</translation> <translation id="1195447618553298278">తెలియని ఎర్రర్.</translation> <translation id="1196959502276349371">వెర్షన్ <ph name="VERSION" /></translation> @@ -317,7 +317,7 @@ <translation id="3771294271822695279">వీడియో ఫైళ్లు</translation> <translation id="3774059845329307709">సీరియల్ నంబర్</translation> <translation id="3784455785234192852">లాక్ చేయి</translation> -<translation id="38114475217616659">చరిత్ర మొత్తాన్ని క్లియర్ చేయి</translation> +<translation id="38114475217616659">చరిత్ర మొత్తాన్ని క్లియర్ చేయండి</translation> <translation id="3820172043799983114">PIN చెల్లదు.</translation> <translation id="3824259034819781947">ఫైల్స్ను జోడించండి</translation> <translation id="3838338534323494292">కొత్త పాస్వర్డ్</translation> @@ -471,7 +471,7 @@ <translation id="500920857929044050">పరీక్షను ఆపండి</translation> <translation id="5017508259293544172">LEAP</translation> <translation id="5019310272469539976">మీ స్క్రీన్ ఇన్యాక్టివ్గా ఉన్నప్పుడు, ఫోటోలు, సమయం, వాతావరణం, మీడియా సమాచారాన్ని చూపిస్తుంది.</translation> -<translation id="5039804452771397117">అనుమతించు</translation> +<translation id="5039804452771397117">అనుమతించండి</translation> <translation id="5044978354634658544">USBని ఇన్సర్ట్ చేయండి</translation> <translation id="5049856988445523908">SIM లాక్ చేయబడింది (<ph name="LOCK_TYPE" />)</translation> <translation id="5050042263972837708">గ్రూప్ పేరు</translation> @@ -659,7 +659,7 @@ <translation id="6611280807952151149"><ph name="DEVICE_TYPE" /> రిపేర్ నుండి నిష్క్రమించండి</translation> <translation id="6618744767048954150">రన్ అవుతున్నాయి</translation> <translation id="6620487321149975369">ప్రింట్ టాస్క్లను మాన్యువల్గా తీసివేసేంత వరకు అవి హిస్టరీలో అలాగే ఉంటాయి</translation> -<translation id="6643016212128521049">క్లియర్ చేయి</translation> +<translation id="6643016212128521049">క్లియర్ చేయండి</translation> <translation id="6647510110698214773">ఎన్క్రిప్షన్ అల్గారిథమ్</translation> <translation id="6650062777702288430">కాన/అక్షరాలు, అంకెలు ఉండే స్విచ్</translation> <translation id="6657585470893396449">పాస్వర్డ్</translation>
diff --git a/components/account_manager_core/account_manager_facade.h b/components/account_manager_core/account_manager_facade.h index d164d51..f48643b 100644 --- a/components/account_manager_core/account_manager_facade.h +++ b/components/account_manager_core/account_manager_facade.h
@@ -138,7 +138,6 @@ // The returned object should not outlive `AccountManagerFacade` itself. virtual std::unique_ptr<OAuth2AccessTokenFetcher> CreateAccessTokenFetcher( const AccountKey& account, - const std::string& oauth_consumer_name, OAuth2AccessTokenConsumer* consumer) = 0; // Adds or updates an account programmatically without user interaction.
diff --git a/components/account_manager_core/account_manager_facade_impl.cc b/components/account_manager_core/account_manager_facade_impl.cc index 90ce3ff..a929dee 100644 --- a/components/account_manager_core/account_manager_facade_impl.cc +++ b/components/account_manager_core/account_manager_facade_impl.cc
@@ -141,12 +141,11 @@ public: AccessTokenFetcher(AccountManagerFacadeImpl* account_manager_facade_impl, const account_manager::AccountKey& account_key, - const std::string& oauth_consumer_name, OAuth2AccessTokenConsumer* consumer) : OAuth2AccessTokenFetcher(consumer), account_manager_facade_impl_(account_manager_facade_impl), account_key_(account_key), - oauth_consumer_name_(oauth_consumer_name) {} + oauth_consumer_name_(consumer->GetConsumerName()) {} AccessTokenFetcher(const AccessTokenFetcher&) = delete; AccessTokenFetcher& operator=(const AccessTokenFetcher&) = delete; @@ -441,7 +440,6 @@ std::unique_ptr<OAuth2AccessTokenFetcher> AccountManagerFacadeImpl::CreateAccessTokenFetcher( const AccountKey& account, - const std::string& oauth_consumer_name, OAuth2AccessTokenConsumer* consumer) { if (!account_manager_remote_ || remote_version_ < @@ -455,8 +453,7 @@ } auto access_token_fetcher = std::make_unique<AccessTokenFetcher>( - /*account_manager_facade_impl=*/this, account, oauth_consumer_name, - consumer); + /*account_manager_facade_impl=*/this, account, consumer); RunAfterInitializationSequence(access_token_fetcher->UnblockTokenRequest()); RunOnAccountManagerRemoteDisconnection( access_token_fetcher->AccountManagerRemoteDisconnectionClosure());
diff --git a/components/account_manager_core/account_manager_facade_impl.h b/components/account_manager_core/account_manager_facade_impl.h index 6bc5907c..00ccf39 100644 --- a/components/account_manager_core/account_manager_facade_impl.h +++ b/components/account_manager_core/account_manager_facade_impl.h
@@ -68,7 +68,6 @@ void ShowManageAccountsSettings() override; std::unique_ptr<OAuth2AccessTokenFetcher> CreateAccessTokenFetcher( const AccountKey& account, - const std::string& oauth_consumer_name, OAuth2AccessTokenConsumer* consumer) override; void UpsertAccountForTesting(const Account& account, const std::string& token_value) override;
diff --git a/components/account_manager_core/account_manager_facade_impl_unittest.cc b/components/account_manager_core/account_manager_facade_impl_unittest.cc index 0167fed0c..109986f 100644 --- a/components/account_manager_core/account_manager_facade_impl_unittest.cc +++ b/components/account_manager_core/account_manager_facade_impl_unittest.cc
@@ -46,7 +46,6 @@ constexpr char kTestAccountEmail[] = "test@gmail.com"; constexpr char kAnotherTestAccountEmail[] = "another_test@gmail.com"; -constexpr char kFakeOAuthConsumerName[] = "fake-oauth-consumer-name"; constexpr char kFakeClientId[] = "fake-client-id"; constexpr char kFakeClientSecret[] = "fake-client-secret"; constexpr char kFakeAccessToken[] = "fake-access-token"; @@ -612,8 +611,7 @@ EXPECT_CALL(consumer, OnGetTokenFailure(Eq(error))); std::unique_ptr<OAuth2AccessTokenFetcher> access_token_fetcher = - account_manager_facade->CreateAccessTokenFetcher( - account.key, kFakeOAuthConsumerName, &consumer); + account_manager_facade->CreateAccessTokenFetcher(account.key, &consumer); access_token_fetcher->Start(kFakeClientId, kFakeClientSecret, /*scopes=*/{}); base::RunLoop().RunUntilIdle(); @@ -635,8 +633,7 @@ MockOAuthConsumer consumer; std::unique_ptr<OAuth2AccessTokenFetcher> access_token_fetcher = - account_manager_facade->CreateAccessTokenFetcher( - account.key, kFakeOAuthConsumerName, &consumer); + account_manager_facade->CreateAccessTokenFetcher(account.key, &consumer); EXPECT_FALSE(account_manager_facade->IsInitialized()); access_token_fetcher->Start(kFakeClientId, kFakeClientSecret, /*scopes=*/{}); EXPECT_CALL(consumer, @@ -660,8 +657,7 @@ EXPECT_CALL(consumer, OnGetTokenFailure(Eq(error))); std::unique_ptr<OAuth2AccessTokenFetcher> access_token_fetcher = - account_manager_facade->CreateAccessTokenFetcher( - account.key, kFakeOAuthConsumerName, &consumer); + account_manager_facade->CreateAccessTokenFetcher(account.key, &consumer); access_token_fetcher->Start(kFakeClientId, kFakeClientSecret, /*scopes=*/{}); account_manager().ClearReceivers(); base::RunLoop().RunUntilIdle(); @@ -685,8 +681,7 @@ Eq(kFakeAccessToken)))); std::unique_ptr<OAuth2AccessTokenFetcher> access_token_fetcher = - account_manager_facade->CreateAccessTokenFetcher( - account.key, kFakeOAuthConsumerName, &consumer); + account_manager_facade->CreateAccessTokenFetcher(account.key, &consumer); access_token_fetcher->Start(kFakeClientId, kFakeClientSecret, /*scopes=*/{}); base::RunLoop().RunUntilIdle(); } @@ -707,8 +702,7 @@ EXPECT_CALL(consumer, OnGetTokenFailure(Eq(error))); std::unique_ptr<OAuth2AccessTokenFetcher> access_token_fetcher = - account_manager_facade->CreateAccessTokenFetcher( - account.key, kFakeOAuthConsumerName, &consumer); + account_manager_facade->CreateAccessTokenFetcher(account.key, &consumer); access_token_fetcher->Start(kFakeClientId, kFakeClientSecret, /*scopes=*/{}); base::RunLoop().RunUntilIdle(); } @@ -820,8 +814,7 @@ Field(&OAuth2AccessTokenConsumer::TokenResponse::access_token, Eq(kFakeAccessToken)))); std::unique_ptr<OAuth2AccessTokenFetcher> access_token_fetcher = - account_manager_facade->CreateAccessTokenFetcher( - account.key, kFakeOAuthConsumerName, &consumer); + account_manager_facade->CreateAccessTokenFetcher(account.key, &consumer); // Expect 0 disconnections in the default state. EXPECT_EQ(0, histogram_tester().GetTotalSum( kMojoDisconnectionsAccountManagerAccessTokenFetcherRemote)); @@ -858,8 +851,7 @@ MockOAuthConsumer consumer; std::unique_ptr<OAuth2AccessTokenFetcher> access_token_fetcher = - account_manager_facade->CreateAccessTokenFetcher( - account.key, kFakeOAuthConsumerName, &consumer); + account_manager_facade->CreateAccessTokenFetcher(account.key, &consumer); // Expect 0 disconnections in the default state. EXPECT_EQ(0, histogram_tester().GetTotalSum( kMojoDisconnectionsAccountManagerAccessTokenFetcherRemote));
diff --git a/components/account_manager_core/mock_account_manager_facade.h b/components/account_manager_core/mock_account_manager_facade.h index 66a3957..eeff14e3 100644 --- a/components/account_manager_core/mock_account_manager_facade.h +++ b/components/account_manager_core/mock_account_manager_facade.h
@@ -56,9 +56,7 @@ MOCK_METHOD(void, ShowManageAccountsSettings, (), (override)); MOCK_METHOD(std::unique_ptr<OAuth2AccessTokenFetcher>, CreateAccessTokenFetcher, - (const AccountKey&, - const std::string&, - OAuth2AccessTokenConsumer*), + (const AccountKey&, OAuth2AccessTokenConsumer*), (override)); MOCK_METHOD(void, UpsertAccountForTesting,
diff --git a/components/autofill_assistant/android/BUILD.gn b/components/autofill_assistant/android/BUILD.gn index dccfe9b..2eaeeca 100644 --- a/components/autofill_assistant/android/BUILD.gn +++ b/components/autofill_assistant/android/BUILD.gn
@@ -23,6 +23,7 @@ "//build/android:build_java", "//components/autofill/android:autofill_java", "//components/autofill/android:prefeditor_autofill_java", + "//components/autofill_assistant/guided_browsing/android:java", "//components/browser_ui/bottomsheet/android:java", "//components/browser_ui/modaldialog/android:java", "//components/browser_ui/settings/android:java", @@ -139,6 +140,9 @@ "java/src/org/chromium/components/autofill_assistant/overlay/AssistantOverlayEventFilter.java", "java/src/org/chromium/components/autofill_assistant/overlay/AssistantOverlayImage.java", "java/src/org/chromium/components/autofill_assistant/overlay/AssistantOverlayModel.java", + "java/src/org/chromium/components/autofill_assistant/qr_code/AssistantQrCodeCameraScanModelWrapper.java", + "java/src/org/chromium/components/autofill_assistant/qr_code/AssistantQrCodeNativeDelegate.java", + "java/src/org/chromium/components/autofill_assistant/qr_code/AssistantQrCodeUtil.java", "java/src/org/chromium/components/autofill_assistant/trigger_scripts/AssistantTriggerScript.java", "java/src/org/chromium/components/autofill_assistant/trigger_scripts/AssistantTriggerScriptBridge.java", "java/src/org/chromium/components/autofill_assistant/user_data/AssistantChoiceList.java", @@ -303,6 +307,9 @@ "java/src/org/chromium/components/autofill_assistant/onboarding/BaseOnboardingCoordinator.java", "java/src/org/chromium/components/autofill_assistant/overlay/AssistantOverlayDelegate.java", "java/src/org/chromium/components/autofill_assistant/overlay/AssistantOverlayModel.java", + "java/src/org/chromium/components/autofill_assistant/qr_code/AssistantQrCodeCameraScanModelWrapper.java", + "java/src/org/chromium/components/autofill_assistant/qr_code/AssistantQrCodeNativeDelegate.java", + "java/src/org/chromium/components/autofill_assistant/qr_code/AssistantQrCodeUtil.java", "java/src/org/chromium/components/autofill_assistant/trigger_scripts/AssistantTriggerScriptBridge.java", "java/src/org/chromium/components/autofill_assistant/user_data/AssistantCollectUserDataModel.java", "java/src/org/chromium/components/autofill_assistant/user_data/AssistantCollectUserDataNativeDelegate.java",
diff --git a/components/autofill_assistant/android/java/src/org/chromium/components/autofill_assistant/qr_code/AssistantQrCodeCameraScanModelWrapper.java b/components/autofill_assistant/android/java/src/org/chromium/components/autofill_assistant/qr_code/AssistantQrCodeCameraScanModelWrapper.java new file mode 100644 index 0000000..83dde71a --- /dev/null +++ b/components/autofill_assistant/android/java/src/org/chromium/components/autofill_assistant/qr_code/AssistantQrCodeCameraScanModelWrapper.java
@@ -0,0 +1,68 @@ +// Copyright 2022 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +package org.chromium.components.autofill_assistant.qr_code; + +import org.chromium.base.annotations.CalledByNative; +import org.chromium.base.annotations.JNINamespace; +import org.chromium.components.autofill_assistant.guided_browsing.qr_code.camera_scan.AssistantQrCodeCameraScanModel; + +/** + * Wrapper around the |AssistantQrCodeCameraScanModel| to manage the state for the QR Code Camera + * Scan UI from the native code. + */ +@JNINamespace("autofill_assistant") +public class AssistantQrCodeCameraScanModelWrapper { + private final AssistantQrCodeCameraScanModel mCameraScanModel; + + /** + * The AssistantQrCodeCameraScanWrapperModel constructor. + */ + @CalledByNative + public AssistantQrCodeCameraScanModelWrapper() { + mCameraScanModel = new AssistantQrCodeCameraScanModel(); + } + + /** + * Returns the underlying AssistantQrCodeCameraScanModel object. + */ + AssistantQrCodeCameraScanModel getCameraScanModel() { + return mCameraScanModel; + } + + @CalledByNative + private void setDelegate(AssistantQrCodeNativeDelegate delegate) { + mCameraScanModel.setDelegate(delegate); + } + + @CalledByNative + private void setToolbarTitle(String text) { + mCameraScanModel.setToolbarTitle(text); + } + + @CalledByNative + private void setPermissionText(String text) { + mCameraScanModel.setPermissionText(text); + } + + @CalledByNative + private void setPermissionButtonText(String text) { + mCameraScanModel.setPermissionButtonText(text); + } + + @CalledByNative + private void setOpenSettingsText(String text) { + mCameraScanModel.setOpenSettingsText(text); + } + + @CalledByNative + private void setOpenSettingsButtonText(String text) { + mCameraScanModel.setOpenSettingsButtonText(text); + } + + @CalledByNative + private void setOverlayTitle(String text) { + mCameraScanModel.setOverlayTitle(text); + } +}
diff --git a/components/autofill_assistant/android/java/src/org/chromium/components/autofill_assistant/qr_code/AssistantQrCodeNativeDelegate.java b/components/autofill_assistant/android/java/src/org/chromium/components/autofill_assistant/qr_code/AssistantQrCodeNativeDelegate.java new file mode 100644 index 0000000..0261d11 --- /dev/null +++ b/components/autofill_assistant/android/java/src/org/chromium/components/autofill_assistant/qr_code/AssistantQrCodeNativeDelegate.java
@@ -0,0 +1,73 @@ +// Copyright 2022 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +package org.chromium.components.autofill_assistant.qr_code; + +import org.chromium.base.annotations.CalledByNative; +import org.chromium.base.annotations.JNINamespace; +import org.chromium.base.annotations.NativeMethods; +import org.chromium.components.autofill_assistant.guided_browsing.qr_code.AssistantQrCodeDelegate; + +/** + * Delegate for Assistant QR Code Scan actions which forwards events to a native counterpart. + */ +@JNINamespace("autofill_assistant") +public class AssistantQrCodeNativeDelegate implements AssistantQrCodeDelegate { + private long mNativeAssistantQrCodeNativeDelegate; + + @CalledByNative + private AssistantQrCodeNativeDelegate(long nativeAssistantQrCodeDelegate) { + mNativeAssistantQrCodeNativeDelegate = nativeAssistantQrCodeDelegate; + } + + @Override + public void onScanResult(String value) { + if (mNativeAssistantQrCodeNativeDelegate != 0) { + AssistantQrCodeNativeDelegateJni.get().onScanResult( + mNativeAssistantQrCodeNativeDelegate, AssistantQrCodeNativeDelegate.this, + value); + } + } + + @Override + public void onScanCancelled() { + if (mNativeAssistantQrCodeNativeDelegate != 0) { + AssistantQrCodeNativeDelegateJni.get().onScanCancelled( + mNativeAssistantQrCodeNativeDelegate, AssistantQrCodeNativeDelegate.this); + } + } + + @Override + public void onScanFailure() { + if (mNativeAssistantQrCodeNativeDelegate != 0) { + AssistantQrCodeNativeDelegateJni.get().onScanFailure( + mNativeAssistantQrCodeNativeDelegate, AssistantQrCodeNativeDelegate.this); + } + } + + @Override + public void onCameraError() { + if (mNativeAssistantQrCodeNativeDelegate != 0) { + AssistantQrCodeNativeDelegateJni.get().onCameraError( + mNativeAssistantQrCodeNativeDelegate, AssistantQrCodeNativeDelegate.this); + } + } + + @CalledByNative + private void clearNativePtr() { + mNativeAssistantQrCodeNativeDelegate = 0; + } + + @NativeMethods + interface Natives { + void onScanResult(long nativeAssistantQrCodeNativeDelegate, + AssistantQrCodeNativeDelegate caller, String value); + void onScanCancelled( + long nativeAssistantQrCodeNativeDelegate, AssistantQrCodeNativeDelegate caller); + void onScanFailure( + long nativeAssistantQrCodeNativeDelegate, AssistantQrCodeNativeDelegate caller); + void onCameraError( + long nativeAssistantQrCodeNativeDelegate, AssistantQrCodeNativeDelegate caller); + } +}
diff --git a/components/autofill_assistant/android/java/src/org/chromium/components/autofill_assistant/qr_code/AssistantQrCodeUtil.java b/components/autofill_assistant/android/java/src/org/chromium/components/autofill_assistant/qr_code/AssistantQrCodeUtil.java new file mode 100644 index 0000000..b2d97833 --- /dev/null +++ b/components/autofill_assistant/android/java/src/org/chromium/components/autofill_assistant/qr_code/AssistantQrCodeUtil.java
@@ -0,0 +1,25 @@ +// Copyright 2022 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +package org.chromium.components.autofill_assistant.qr_code; + +import org.chromium.base.annotations.CalledByNative; +import org.chromium.base.annotations.JNINamespace; +import org.chromium.components.autofill_assistant.AssistantDependencies; +import org.chromium.components.autofill_assistant.guided_browsing.qr_code.AssistantQrCodeController; + +/** + * Util to expose QR Code Scan functionality from the |guided_browsing| component to the native + * code. + */ +@JNINamespace("autofill_assistant") +public class AssistantQrCodeUtil { + /** Prompts the user for QR Code Scanning. */ + @CalledByNative + private static void promptQrCodeCameraScan(AssistantDependencies dependencies, + AssistantQrCodeCameraScanModelWrapper cameraScanModelWrapper) { + AssistantQrCodeController.promptQrCodeCameraScan(dependencies.getActivity(), + dependencies.getWindowAndroid(), cameraScanModelWrapper.getCameraScanModel()); + } +}
diff --git a/components/autofill_assistant/browser/BUILD.gn b/components/autofill_assistant/browser/BUILD.gn index 1789eb4..ef62dac 100644 --- a/components/autofill_assistant/browser/BUILD.gn +++ b/components/autofill_assistant/browser/BUILD.gn
@@ -82,6 +82,8 @@ "actions/presave_generated_password_action.h", "actions/prompt_action.cc", "actions/prompt_action.h", + "actions/prompt_qr_code_scan_action.cc", + "actions/prompt_qr_code_scan_action.h", "actions/register_password_reset_request_action.cc", "actions/register_password_reset_request_action.h", "actions/release_elements_action.cc", @@ -476,6 +478,7 @@ "actions/popup_message_action_unittest.cc", "actions/presave_generated_password_action_unittest.cc", "actions/prompt_action_unittest.cc", + "actions/prompt_qr_code_scan_action_unittest.cc", "actions/register_password_reset_request_action_unittest.cc", "actions/release_elements_action_unittest.cc", "actions/reset_pending_credentials_action_unittest.cc",
diff --git a/components/autofill_assistant/browser/actions/action.cc b/components/autofill_assistant/browser/actions/action.cc index 681b7d9..732cf6ab 100644 --- a/components/autofill_assistant/browser/actions/action.cc +++ b/components/autofill_assistant/browser/actions/action.cc
@@ -285,6 +285,9 @@ case ActionProto::ActionInfoCase::kSetNativeChecked: out << "SetNativeChecked"; break; + case ActionProto::ActionInfoCase::kPromptQrCodeScan: + out << "PromptQrCodeScan"; + break; case ActionProto::ActionInfoCase::ACTION_INFO_NOT_SET: out << "ACTION_INFO_NOT_SET"; break;
diff --git a/components/autofill_assistant/browser/actions/action_delegate.h b/components/autofill_assistant/browser/actions/action_delegate.h index c7c9b21..66fba3c 100644 --- a/components/autofill_assistant/browser/actions/action_delegate.h +++ b/components/autofill_assistant/browser/actions/action_delegate.h
@@ -60,6 +60,7 @@ class FormProto; class FormProto_Result; class InfoBox; +class PromptQrCodeScanProto; class UserAction; class UserData; class UserModel; @@ -411,6 +412,16 @@ base::RepeatingCallback<void(const FormProto_Result*)> changed_callback, base::OnceCallback<void(const ClientStatus&)> cancel_callback) = 0; + // Show QR Code Scan UI to the user. |callback| should be invoked with the + // scanned result or absl::nullopt and an appropriate client status. + virtual void ShowQrCodeScanUi( + std::unique_ptr<PromptQrCodeScanProto> qr_code_scan, + base::OnceCallback<void(const ClientStatus&, + const absl::optional<ValueProto>&)> callback) = 0; + + // Clears the QR Code Scan Ui. + virtual void ClearQrCodeScanUi() = 0; + // Force showing the UI if no UI is shown. This is useful when executing a // direct action which realizes it needs to interact with the user. Once // shown, the UI stays up until the end of the flow.
diff --git a/components/autofill_assistant/browser/actions/mock_action_delegate.h b/components/autofill_assistant/browser/actions/mock_action_delegate.h index be48880..6322a514 100644 --- a/components/autofill_assistant/browser/actions/mock_action_delegate.h +++ b/components/autofill_assistant/browser/actions/mock_action_delegate.h
@@ -175,6 +175,12 @@ base::RepeatingCallback<void(const FormProto::Result*)> changed_callback, base::OnceCallback<void(const ClientStatus&)> cancel_callback)); + MOCK_METHOD2(ShowQrCodeScanUi, + void(std::unique_ptr<PromptQrCodeScanProto> qr_code_scan, + base::OnceCallback<void(const ClientStatus&, + const absl::optional<ValueProto>&)> + callback)); + MOCK_METHOD0(ClearQrCodeScanUi, void()); MOCK_CONST_METHOD0(GetUserModel, UserModel*()); MOCK_METHOD1(WaitForWindowHeightChange, void(base::OnceCallback<void(const ClientStatus&)> callback));
diff --git a/components/autofill_assistant/browser/actions/prompt_qr_code_scan_action.cc b/components/autofill_assistant/browser/actions/prompt_qr_code_scan_action.cc new file mode 100644 index 0000000..24b49a71 --- /dev/null +++ b/components/autofill_assistant/browser/actions/prompt_qr_code_scan_action.cc
@@ -0,0 +1,72 @@ +// Copyright 2022 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include "components/autofill_assistant/browser/actions/prompt_qr_code_scan_action.h" + +#include <memory> +#include <utility> + +#include "base/callback.h" +#include "base/callback_helpers.h" +#include "components/autofill_assistant/browser/actions/action_delegate.h" +#include "components/autofill_assistant/browser/user_action.h" +#include "components/autofill_assistant/browser/user_model.h" + +namespace autofill_assistant { + +PromptQrCodeScanAction::PromptQrCodeScanAction(ActionDelegate* delegate, + const ActionProto& proto) + : Action(delegate, proto) { + DCHECK(proto_.has_prompt_qr_code_scan()); +} + +PromptQrCodeScanAction::~PromptQrCodeScanAction() = default; + +void PromptQrCodeScanAction::InternalProcessAction( + ProcessActionCallback callback) { + callback_ = std::move(callback); + + if (proto_.prompt_qr_code_scan().output_client_memory_key().empty()) { + VLOG(1) << "Invalid action: output_client_memory_key not set"; + EndAction(ClientStatus(INVALID_ACTION), /* value= */ absl::nullopt); + return; + } + + // Validate that all UI strings are available. + const PromptQrCodeScanProto_CameraScanUiStrings* camera_scan_ui_strings = + &proto_.prompt_qr_code_scan().camera_scan_ui_strings(); + if (camera_scan_ui_strings->title_text().empty() || + camera_scan_ui_strings->permission_text().empty() || + camera_scan_ui_strings->permission_button_text().empty() || + camera_scan_ui_strings->open_settings_text().empty() || + camera_scan_ui_strings->open_settings_button_text().empty() || + camera_scan_ui_strings->camera_preview_instruction_text().empty()) { + VLOG(1) << "Invalid action: camera_scan_ui_strings not set"; + EndAction(ClientStatus(INVALID_ACTION), /* value= */ absl::nullopt); + return; + } + + delegate_->Prompt(/* user_actions = */ nullptr, + /* disable_force_expand_sheet = */ false); + delegate_->ShowQrCodeScanUi( + std::make_unique<PromptQrCodeScanProto>(proto_.prompt_qr_code_scan()), + base::BindOnce(&PromptQrCodeScanAction::EndAction, + weak_ptr_factory_.GetWeakPtr())); +} + +void PromptQrCodeScanAction::EndAction( + const ClientStatus& status, + const absl::optional<ValueProto>& value) { + if (value) { + delegate_->GetUserModel()->SetValue( + proto_.prompt_qr_code_scan().output_client_memory_key(), *value); + } + + delegate_->ClearQrCodeScanUi(); + delegate_->CleanUpAfterPrompt(); + UpdateProcessedAction(status); + std::move(callback_).Run(std::move(processed_action_proto_)); +} + +} // namespace autofill_assistant
diff --git a/components/autofill_assistant/browser/actions/prompt_qr_code_scan_action.h b/components/autofill_assistant/browser/actions/prompt_qr_code_scan_action.h new file mode 100644 index 0000000..2c81c9d --- /dev/null +++ b/components/autofill_assistant/browser/actions/prompt_qr_code_scan_action.h
@@ -0,0 +1,37 @@ +// Copyright 2022 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#ifndef COMPONENTS_AUTOFILL_ASSISTANT_BROWSER_ACTIONS_PROMPT_QR_CODE_SCAN_ACTION_H_ +#define COMPONENTS_AUTOFILL_ASSISTANT_BROWSER_ACTIONS_PROMPT_QR_CODE_SCAN_ACTION_H_ + +#include "base/memory/weak_ptr.h" +#include "components/autofill_assistant/browser/actions/action.h" +#include "third_party/abseil-cpp/absl/types/optional.h" + +namespace autofill_assistant { + +// An action to prompt QR Code Scanning. +class PromptQrCodeScanAction : public Action { + public: + explicit PromptQrCodeScanAction(ActionDelegate* delegate, + const ActionProto& proto); + + PromptQrCodeScanAction(const PromptQrCodeScanAction&) = delete; + PromptQrCodeScanAction& operator=(const PromptQrCodeScanAction&) = delete; + + ~PromptQrCodeScanAction() override; + + private: + // Overrides Action: + void InternalProcessAction(ProcessActionCallback callback) override; + + void EndAction(const ClientStatus& status, + const absl::optional<ValueProto>& value); + + ProcessActionCallback callback_; + base::WeakPtrFactory<PromptQrCodeScanAction> weak_ptr_factory_{this}; +}; + +} // namespace autofill_assistant +#endif // COMPONENTS_AUTOFILL_ASSISTANT_BROWSER_ACTIONS_PROMPT_QR_CODE_SCAN_ACTION_H_
diff --git a/components/autofill_assistant/browser/actions/prompt_qr_code_scan_action_unittest.cc b/components/autofill_assistant/browser/actions/prompt_qr_code_scan_action_unittest.cc new file mode 100644 index 0000000..4af525a --- /dev/null +++ b/components/autofill_assistant/browser/actions/prompt_qr_code_scan_action_unittest.cc
@@ -0,0 +1,113 @@ +// Copyright 2022 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include "components/autofill_assistant/browser/actions/prompt_qr_code_scan_action.h" + +#include "base/test/gmock_callback_support.h" +#include "base/test/mock_callback.h" +#include "components/autofill/core/browser/autofill_test_utils.h" +#include "components/autofill_assistant/browser/actions/mock_action_delegate.h" +#include "components/autofill_assistant/browser/service.pb.h" +#include "components/autofill_assistant/browser/user_model.h" +#include "components/autofill_assistant/browser/value_util.h" +#include "testing/gmock/include/gmock/gmock.h" + +namespace autofill_assistant { +namespace { + +const char kDefaultQrCodeScanResult[] = "qr_code_scan_result"; +const char kDefaultOutputClientMemoryKey[] = "client_memory_key"; + +using ::base::test::RunOnceCallback; +using ::testing::_; +using ::testing::InSequence; +using ::testing::Invoke; +using ::testing::Property; +using ::testing::Return; + +class PromptQrCodeScanActionTest : public testing::Test { + public: + PromptQrCodeScanActionTest() = default; + + void SetUp() override { + ON_CALL(mock_action_delegate_, GetUserModel) + .WillByDefault(Return(&user_model_)); + } + + protected: + void Run() { + ActionProto action_proto; + *action_proto.mutable_prompt_qr_code_scan() = proto_; + PromptQrCodeScanAction action(&mock_action_delegate_, action_proto); + action.ProcessAction(callback_.Get()); + } + + void setCameraScanUiStrings() { + proto_.mutable_camera_scan_ui_strings()->set_title_text("Title text"); + proto_.mutable_camera_scan_ui_strings()->set_permission_text( + "Permission text"); + proto_.mutable_camera_scan_ui_strings()->set_permission_button_text( + "Permission button text"); + proto_.mutable_camera_scan_ui_strings()->set_open_settings_text( + "Open settings text"); + proto_.mutable_camera_scan_ui_strings()->set_open_settings_button_text( + "Open settings button text"); + proto_.mutable_camera_scan_ui_strings() + ->set_camera_preview_instruction_text( + "Camera preview instruction text"); + } + + UserModel user_model_; + MockActionDelegate mock_action_delegate_; + base::MockCallback<Action::ProcessActionCallback> callback_; + PromptQrCodeScanProto proto_; +}; + +TEST_F(PromptQrCodeScanActionTest, SuccessfullyPromptsAndGetQrCodeScanResult) { + proto_.set_output_client_memory_key(kDefaultOutputClientMemoryKey); + setCameraScanUiStrings(); + + InSequence seq; + EXPECT_CALL(mock_action_delegate_, Prompt).Times(1); + EXPECT_CALL(mock_action_delegate_, ShowQrCodeScanUi) + .WillOnce( + RunOnceCallback<1>(ClientStatus(ACTION_APPLIED), + SimpleValue(std::string(kDefaultQrCodeScanResult), + /* is_client_side_only= */ true))); + + EXPECT_CALL(mock_action_delegate_, ClearQrCodeScanUi).Times(1); + EXPECT_CALL(mock_action_delegate_, CleanUpAfterPrompt).Times(1); + EXPECT_CALL( + callback_, + Run(Pointee(Property(&ProcessedActionProto::status, ACTION_APPLIED)))); + + Run(); + + EXPECT_EQ(*user_model_.GetValue(kDefaultOutputClientMemoryKey), + SimpleValue(std::string(kDefaultQrCodeScanResult), + /* is_client_side_only= */ true)); +} + +TEST_F(PromptQrCodeScanActionTest, FailsWhenOutputClientMemoryKeyIsNotSet) { + setCameraScanUiStrings(); + + EXPECT_CALL( + callback_, + Run(Pointee(Property(&ProcessedActionProto::status, INVALID_ACTION)))); + + Run(); +} + +TEST_F(PromptQrCodeScanActionTest, FailsWhenCameraScanUiStringsAreNotSet) { + proto_.set_output_client_memory_key(kDefaultOutputClientMemoryKey); + + EXPECT_CALL( + callback_, + Run(Pointee(Property(&ProcessedActionProto::status, INVALID_ACTION)))); + + Run(); +} + +} // namespace +} // namespace autofill_assistant \ No newline at end of file
diff --git a/components/autofill_assistant/browser/android/BUILD.gn b/components/autofill_assistant/browser/android/BUILD.gn index 0bb70199..5d44c2e13 100644 --- a/components/autofill_assistant/browser/android/BUILD.gn +++ b/components/autofill_assistant/browser/android/BUILD.gn
@@ -18,6 +18,8 @@ "assistant_header_model.h", "assistant_overlay_delegate.cc", "assistant_overlay_delegate.h", + "assistant_qr_code_native_delegate.cc", + "assistant_qr_code_native_delegate.h", "client_android.cc", "client_android.h", "features_android.cc",
diff --git a/components/autofill_assistant/browser/android/assistant_qr_code_native_delegate.cc b/components/autofill_assistant/browser/android/assistant_qr_code_native_delegate.cc new file mode 100644 index 0000000..e66a4b5 --- /dev/null +++ b/components/autofill_assistant/browser/android/assistant_qr_code_native_delegate.cc
@@ -0,0 +1,69 @@ +// Copyright 2022 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include "components/autofill_assistant/browser/android/assistant_qr_code_native_delegate.h" + +#include "components/autofill_assistant/android/jni_headers/AssistantQrCodeNativeDelegate_jni.h" +#include "components/autofill_assistant/browser/android/ui_controller_android.h" +#include "components/autofill_assistant/browser/android/ui_controller_android_utils.h" +#include "components/autofill_assistant/browser/value_util.h" + +using base::android::AttachCurrentThread; + +namespace autofill_assistant { + +AssistantQrCodeNativeDelegate::AssistantQrCodeNativeDelegate( + UiControllerAndroid* ui_controller) + : ui_controller_(ui_controller) { + java_assistant_qr_code_native_delegate_ = + Java_AssistantQrCodeNativeDelegate_Constructor( + AttachCurrentThread(), reinterpret_cast<intptr_t>(this)); +} + +AssistantQrCodeNativeDelegate::~AssistantQrCodeNativeDelegate() { + Java_AssistantQrCodeNativeDelegate_clearNativePtr( + AttachCurrentThread(), java_assistant_qr_code_native_delegate_); +} + +void AssistantQrCodeNativeDelegate::OnScanResult( + JNIEnv* env, + const base::android::JavaParamRef<jobject>& jcaller, + const base::android::JavaParamRef<jstring>& jvalue) { + ui_controller_->OnQrCodeScanFinished( + ClientStatus(ACTION_APPLIED), + SimpleValue(ui_controller_android_utils::SafeConvertJavaStringToNative( + env, jvalue), + /* is_client_side_only= */ true)); +} + +void AssistantQrCodeNativeDelegate::OnScanCancelled( + JNIEnv* env, + const base::android::JavaParamRef<jobject>& jcaller) { + // TODO(b/238079150): Add custom ClientStatus + ui_controller_->OnQrCodeScanFinished(ClientStatus(OTHER_ACTION_STATUS), + absl::nullopt); +} + +void AssistantQrCodeNativeDelegate::OnScanFailure( + JNIEnv* env, + const base::android::JavaParamRef<jobject>& jcaller) { + // TODO(b/238079150): Add custom ClientStatus + ui_controller_->OnQrCodeScanFinished(ClientStatus(OTHER_ACTION_STATUS), + absl::nullopt); +} + +void AssistantQrCodeNativeDelegate::OnCameraError( + JNIEnv* env, + const base::android::JavaParamRef<jobject>& jcaller) { + // TODO(b/238079150): Add custom ClientStatus + ui_controller_->OnQrCodeScanFinished(ClientStatus(OTHER_ACTION_STATUS), + absl::nullopt); +} + +base::android::ScopedJavaGlobalRef<jobject> +AssistantQrCodeNativeDelegate::GetJavaObject() { + return java_assistant_qr_code_native_delegate_; +} + +} // namespace autofill_assistant
diff --git a/components/autofill_assistant/browser/android/assistant_qr_code_native_delegate.h b/components/autofill_assistant/browser/android/assistant_qr_code_native_delegate.h new file mode 100644 index 0000000..a3199ea --- /dev/null +++ b/components/autofill_assistant/browser/android/assistant_qr_code_native_delegate.h
@@ -0,0 +1,57 @@ +// Copyright 2022 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#ifndef COMPONENTS_AUTOFILL_ASSISTANT_BROWSER_ANDROID_ASSISTANT_QR_CODE_NATIVE_DELEGATE_H_ +#define COMPONENTS_AUTOFILL_ASSISTANT_BROWSER_ANDROID_ASSISTANT_QR_CODE_NATIVE_DELEGATE_H_ + +#include "base/android/scoped_java_ref.h" +#include "base/memory/raw_ptr.h" + +namespace autofill_assistant { + +class UiControllerAndroid; + +// Delegate class for the QR Code. Receives events from the Java UI and +// forwards them to the ui controller. This is the JNI bridge to +// |AssistantQrCodeNativeDelegate.java|. +class AssistantQrCodeNativeDelegate { + public: + // Note: |ui_controller| must outlive this instance. + explicit AssistantQrCodeNativeDelegate(UiControllerAndroid* ui_controller); + ~AssistantQrCodeNativeDelegate(); + + // This method is invoked from the java-side when QR code scanning is + // finished successfully. + void OnScanResult(JNIEnv* env, + const base::android::JavaParamRef<jobject>& jcaller, + const base::android::JavaParamRef<jstring>& jvalue); + + // This method is invoked from the java-side when QR code scanning is + // cancelled by the user. + void OnScanCancelled(JNIEnv* env, + const base::android::JavaParamRef<jobject>& jcaller); + + // This method is invoked from the java-side when QR code scanning fails to + // give any output. + void OnScanFailure(JNIEnv* env, + const base::android::JavaParamRef<jobject>& jcaller); + + // This method is invoked from the java-side when QR code scanning is + // interrupted by a camera error. + void OnCameraError(JNIEnv* env, + const base::android::JavaParamRef<jobject>& jcaller); + + base::android::ScopedJavaGlobalRef<jobject> GetJavaObject(); + + private: + raw_ptr<UiControllerAndroid> ui_controller_; + + // Java-side AssistantQrCodeNativeDelegate object. + base::android::ScopedJavaGlobalRef<jobject> + java_assistant_qr_code_native_delegate_; +}; + +} // namespace autofill_assistant + +#endif // COMPONENTS_AUTOFILL_ASSISTANT_BROWSER_ANDROID_ASSISTANT_QR_CODE_NATIVE_DELEGATE_H_
diff --git a/components/autofill_assistant/browser/android/ui_controller_android.cc b/components/autofill_assistant/browser/android/ui_controller_android.cc index fb9a722..9a69998 100644 --- a/components/autofill_assistant/browser/android/ui_controller_android.cc +++ b/components/autofill_assistant/browser/android/ui_controller_android.cc
@@ -29,6 +29,8 @@ #include "components/autofill_assistant/android/jni_headers/AssistantModel_jni.h" #include "components/autofill_assistant/android/jni_headers/AssistantOverlayModel_jni.h" #include "components/autofill_assistant/android/jni_headers/AssistantPlaceholdersConfiguration_jni.h" +#include "components/autofill_assistant/android/jni_headers/AssistantQrCodeCameraScanModelWrapper_jni.h" +#include "components/autofill_assistant/android/jni_headers/AssistantQrCodeUtil_jni.h" #include "components/autofill_assistant/android/jni_headers/AutofillAssistantUiController_jni.h" #include "components/autofill_assistant/browser/android/client_android.h" #include "components/autofill_assistant/browser/android/dependencies_android.h" @@ -539,6 +541,12 @@ /* screenshotMode */ 0); } +void UiControllerAndroid::OnQrCodeScanFinished( + const ClientStatus& status, + const absl::optional<ValueProto>& value) { + ui_delegate_->OnQrCodeScanFinished(status, value); +} + void UiControllerAndroid::OnViewEvent(const EventHandler::EventKey& key) { ui_delegate_->DispatchEvent(key); } @@ -656,6 +664,7 @@ OnPersistentGenericUserInterfaceChanged( ui_delegate_->GetPersistentGenericUiProto()); OnGenericUserInterfaceChanged(ui_delegate_->GetGenericUiProto()); + OnQrCodeScanUiChanged(ui_delegate_->GetPromptQrCodeScanProto()); std::vector<RectF> area; execution_delegate_->GetTouchableArea(&area); @@ -1846,6 +1855,58 @@ OnClientSettingsDisplayStringsChanged(settings); } +void UiControllerAndroid::OnQrCodeScanUiChanged( + const PromptQrCodeScanProto* qr_code_scan) { + if (!qr_code_scan) { + qr_code_native_delegate_ = nullptr; + return; + } + + JNIEnv* env = AttachCurrentThread(); + qr_code_native_delegate_ = + std::make_unique<AssistantQrCodeNativeDelegate>(this); + + const auto java_assistant_camera_scan_model_wrapper = + Java_AssistantQrCodeCameraScanModelWrapper_Constructor(env); + + // Register qr_code_native_delegate_ as delegate for the QR Code Camera Scan + // UI + Java_AssistantQrCodeCameraScanModelWrapper_setDelegate( + env, java_assistant_camera_scan_model_wrapper, + qr_code_native_delegate_->GetJavaObject()); + + // Set UI strings in model + const PromptQrCodeScanProto_CameraScanUiStrings* camera_scan_ui_strings = + &qr_code_scan->camera_scan_ui_strings(); + Java_AssistantQrCodeCameraScanModelWrapper_setToolbarTitle( + env, java_assistant_camera_scan_model_wrapper, + ConvertUTF8ToJavaString(env, camera_scan_ui_strings->title_text())); + Java_AssistantQrCodeCameraScanModelWrapper_setPermissionText( + env, java_assistant_camera_scan_model_wrapper, + ConvertUTF8ToJavaString(env, camera_scan_ui_strings->permission_text())); + Java_AssistantQrCodeCameraScanModelWrapper_setPermissionButtonText( + env, java_assistant_camera_scan_model_wrapper, + ConvertUTF8ToJavaString( + env, camera_scan_ui_strings->permission_button_text())); + Java_AssistantQrCodeCameraScanModelWrapper_setOpenSettingsText( + env, java_assistant_camera_scan_model_wrapper, + ConvertUTF8ToJavaString(env, + camera_scan_ui_strings->open_settings_text())); + Java_AssistantQrCodeCameraScanModelWrapper_setOpenSettingsButtonText( + env, java_assistant_camera_scan_model_wrapper, + ConvertUTF8ToJavaString( + env, camera_scan_ui_strings->open_settings_button_text())); + Java_AssistantQrCodeCameraScanModelWrapper_setOverlayTitle( + env, java_assistant_camera_scan_model_wrapper, + ConvertUTF8ToJavaString( + env, camera_scan_ui_strings->camera_preview_instruction_text())); + + Java_AssistantQrCodeUtil_promptQrCodeCameraScan( + env, + Java_AutofillAssistantUiController_getDependencies(env, java_object_), + java_assistant_camera_scan_model_wrapper); +} + void UiControllerAndroid::OnGenericUserInterfaceChanged( const GenericUserInterfaceProto* generic_ui) { // Try to inflate user interface from proto.
diff --git a/components/autofill_assistant/browser/android/ui_controller_android.h b/components/autofill_assistant/browser/android/ui_controller_android.h index 72dec578..450afc5 100644 --- a/components/autofill_assistant/browser/android/ui_controller_android.h +++ b/components/autofill_assistant/browser/android/ui_controller_android.h
@@ -19,6 +19,7 @@ #include "components/autofill_assistant/browser/android/assistant_header_delegate.h" #include "components/autofill_assistant/browser/android/assistant_header_model.h" #include "components/autofill_assistant/browser/android/assistant_overlay_delegate.h" +#include "components/autofill_assistant/browser/android/assistant_qr_code_native_delegate.h" #include "components/autofill_assistant/browser/android/dependencies_android.h" #include "components/autofill_assistant/browser/chip.h" #include "components/autofill_assistant/browser/details.h" @@ -136,6 +137,8 @@ void OnCollapseBottomSheet() override; void OnFormChanged(const FormProto* form, const FormProto::Result* result) override; + void OnQrCodeScanUiChanged( + const PromptQrCodeScanProto* qr_code_scan) override; void OnGenericUserInterfaceChanged( const GenericUserInterfaceProto* generic_ui) override; void OnPersistentGenericUserInterfaceChanged( @@ -151,6 +154,10 @@ void OnHeaderFeedbackButtonClicked(); void OnTtsButtonClicked(); + // Called by AssistantQrCodeDelegate. + void OnQrCodeScanFinished(const ClientStatus& status, + const absl::optional<ValueProto>& value); + // Called by AssistantGenericUiDelegate: void OnViewEvent(const EventHandler::EventKey& key); void OnValueChanged(const std::string& identifier, const ValueProto& value); @@ -250,6 +257,7 @@ base::android::ScopedJavaLocalRef<jobject> GetDetailsModel(); base::android::ScopedJavaLocalRef<jobject> GetInfoBoxModel(); base::android::ScopedJavaLocalRef<jobject> GetCollectUserDataModel(); + base::android::ScopedJavaLocalRef<jobject> GetQrCodeCameraScanWrapperModel(); base::android::ScopedJavaLocalRef<jobject> GetFormModel(); base::android::ScopedJavaLocalRef<jobject> GetGenericUiModel(); base::android::ScopedJavaLocalRef<jobject> GetPersistentGenericUiModel(); @@ -320,6 +328,8 @@ std::unique_ptr<AssistantHeaderModel> header_model_; + std::unique_ptr<AssistantQrCodeNativeDelegate> qr_code_native_delegate_; + base::WeakPtrFactory<UiControllerAndroid> weak_ptr_factory_{this}; };
diff --git a/components/autofill_assistant/browser/fake_script_executor_ui_delegate.cc b/components/autofill_assistant/browser/fake_script_executor_ui_delegate.cc index c354be7..8446437 100644 --- a/components/autofill_assistant/browser/fake_script_executor_ui_delegate.cc +++ b/components/autofill_assistant/browser/fake_script_executor_ui_delegate.cc
@@ -142,6 +142,17 @@ return true; } +void FakeScriptExecutorUiDelegate::ShowQrCodeScanUi( + std::unique_ptr<PromptQrCodeScanProto> qr_code_scan, + base::OnceCallback<void(const ClientStatus&, + const absl::optional<ValueProto>&)> callback) { + show_qr_code_scan_ui_ = true; +} + +void FakeScriptExecutorUiDelegate::ClearQrCodeScanUi() { + show_qr_code_scan_ui_ = false; +} + void FakeScriptExecutorUiDelegate::SetGenericUi( std::unique_ptr<GenericUserInterfaceProto> generic_ui, base::OnceCallback<void(const ClientStatus&)> end_action_callback,
diff --git a/components/autofill_assistant/browser/fake_script_executor_ui_delegate.h b/components/autofill_assistant/browser/fake_script_executor_ui_delegate.h index d6a64b5b..933f5b4 100644 --- a/components/autofill_assistant/browser/fake_script_executor_ui_delegate.h +++ b/components/autofill_assistant/browser/fake_script_executor_ui_delegate.h
@@ -68,6 +68,12 @@ std::unique_ptr<FormProto> form, base::RepeatingCallback<void(const FormProto::Result*)> changed_callback, base::OnceCallback<void(const ClientStatus&)> cancel_callback) override; + void ShowQrCodeScanUi( + std::unique_ptr<PromptQrCodeScanProto> qr_code_scan, + base::OnceCallback<void(const ClientStatus&, + const absl::optional<ValueProto>&)> callback) + override; + void ClearQrCodeScanUi() override; void SetExpandSheetForPromptAction(bool expand) override; void SetGenericUi( std::unique_ptr<GenericUserInterfaceProto> generic_ui, @@ -111,6 +117,8 @@ return interrupt_notification_history_; } + bool IsShowingQrCodeScanUi() { return show_qr_code_scan_ui_; } + private: std::string status_message_; std::string tts_message_; @@ -128,6 +136,7 @@ bool expand_or_collapse_updated_ = false; bool expand_or_collapse_value_ = false; bool expand_sheet_for_prompt_ = true; + bool show_qr_code_scan_ui_ = false; std::unique_ptr<GenericUserInterfaceProto> persistent_generic_ui_; std::vector<InterruptNotification> interrupt_notification_history_; };
diff --git a/components/autofill_assistant/browser/headless/headless_ui_controller.cc b/components/autofill_assistant/browser/headless/headless_ui_controller.cc index bff77466..29bbd3a 100644 --- a/components/autofill_assistant/browser/headless/headless_ui_controller.cc +++ b/components/autofill_assistant/browser/headless/headless_ui_controller.cc
@@ -122,6 +122,16 @@ VLOG(2) << "Unexpected UI method called: " << __func__; return false; } +void HeadlessUiController::ShowQrCodeScanUi( + std::unique_ptr<PromptQrCodeScanProto> qr_code_scan, + base::OnceCallback<void(const ClientStatus&, + const absl::optional<ValueProto>&)> callback) { + VLOG(2) << "Unexpected UI method called: " << __func__; +} + +void HeadlessUiController::ClearQrCodeScanUi() { + VLOG(2) << "Unexpected UI method called: " << __func__; +} void HeadlessUiController::SetGenericUi( std::unique_ptr<GenericUserInterfaceProto> generic_ui, base::OnceCallback<void(const ClientStatus&)> end_action_callback,
diff --git a/components/autofill_assistant/browser/headless/headless_ui_controller.h b/components/autofill_assistant/browser/headless/headless_ui_controller.h index 0ce8364..c1355a1 100644 --- a/components/autofill_assistant/browser/headless/headless_ui_controller.h +++ b/components/autofill_assistant/browser/headless/headless_ui_controller.h
@@ -57,6 +57,12 @@ std::unique_ptr<FormProto> form, base::RepeatingCallback<void(const FormProto::Result*)> changed_callback, base::OnceCallback<void(const ClientStatus&)> cancel_callback) override; + void ShowQrCodeScanUi( + std::unique_ptr<PromptQrCodeScanProto> qr_code_scan, + base::OnceCallback<void(const ClientStatus&, + const absl::optional<ValueProto>&)> callback) + override; + void ClearQrCodeScanUi() override; void SetGenericUi( std::unique_ptr<GenericUserInterfaceProto> generic_ui, base::OnceCallback<void(const ClientStatus&)> end_action_callback,
diff --git a/components/autofill_assistant/browser/mock_ui_controller_observer.h b/components/autofill_assistant/browser/mock_ui_controller_observer.h index cbdffdb..ac9a243 100644 --- a/components/autofill_assistant/browser/mock_ui_controller_observer.h +++ b/components/autofill_assistant/browser/mock_ui_controller_observer.h
@@ -47,6 +47,8 @@ MOCK_METHOD0(OnCollapseBottomSheet, void()); MOCK_METHOD2(OnFormChanged, void(const FormProto* form, const FormProto::Result* result)); + MOCK_METHOD1(OnQrCodeScanUiChanged, + void(const PromptQrCodeScanProto* qr_code_scan)); MOCK_METHOD1(OnGenericUserInterfaceChanged, void(const GenericUserInterfaceProto* generic_ui)); MOCK_METHOD1(OnPersistentGenericUserInterfaceChanged,
diff --git a/components/autofill_assistant/browser/protocol_utils.cc b/components/autofill_assistant/browser/protocol_utils.cc index dbbe934a..00f9a16 100644 --- a/components/autofill_assistant/browser/protocol_utils.cc +++ b/components/autofill_assistant/browser/protocol_utils.cc
@@ -31,6 +31,7 @@ #include "components/autofill_assistant/browser/actions/popup_message_action.h" #include "components/autofill_assistant/browser/actions/presave_generated_password_action.h" #include "components/autofill_assistant/browser/actions/prompt_action.h" +#include "components/autofill_assistant/browser/actions/prompt_qr_code_scan_action.h" #include "components/autofill_assistant/browser/actions/register_password_reset_request_action.h" #include "components/autofill_assistant/browser/actions/release_elements_action.h" #include "components/autofill_assistant/browser/actions/reset_pending_credentials_action.h" @@ -478,6 +479,8 @@ base::BindOnce(&WebController::SetNativeChecked, delegate->GetWebController()->GetWeakPtr(), action.set_native_checked().checked())); + case ActionProto::ActionInfoCase::kPromptQrCodeScan: + return std::make_unique<PromptQrCodeScanAction>(delegate, action); case ActionProto::ActionInfoCase::ACTION_INFO_NOT_SET: { VLOG(1) << "Encountered action with ACTION_INFO_NOT_SET"; return std::make_unique<UnsupportedAction>(delegate, action); @@ -759,6 +762,10 @@ action_id, bytes, error_message, proto.mutable_register_password_reset_request()); break; + case ActionProto::ActionInfoCase::kPromptQrCodeScan: + success = ParseActionFromString(action_id, bytes, error_message, + proto.mutable_prompt_qr_code_scan()); + break; case ActionProto::ActionInfoCase::ACTION_INFO_NOT_SET: // This is an "unknown action", handled as such in CreateAction. return proto;
diff --git a/components/autofill_assistant/browser/script_executor.cc b/components/autofill_assistant/browser/script_executor.cc index 901d256..fa49e26 100644 --- a/components/autofill_assistant/browser/script_executor.cc +++ b/components/autofill_assistant/browser/script_executor.cc
@@ -716,6 +716,17 @@ std::move(cancel_callback)); } +void ScriptExecutor::ShowQrCodeScanUi( + std::unique_ptr<PromptQrCodeScanProto> qr_code_scan, + base::OnceCallback<void(const ClientStatus&, + const absl::optional<ValueProto>&)> callback) { + ui_delegate_->ShowQrCodeScanUi(std::move(qr_code_scan), std::move(callback)); +} + +void ScriptExecutor::ClearQrCodeScanUi() { + ui_delegate_->ClearQrCodeScanUi(); +} + void ScriptExecutor::RequireUI() { delegate_->RequireUI(); }
diff --git a/components/autofill_assistant/browser/script_executor.h b/components/autofill_assistant/browser/script_executor.h index 55d57ec..b8879ba2 100644 --- a/components/autofill_assistant/browser/script_executor.h +++ b/components/autofill_assistant/browser/script_executor.h
@@ -244,6 +244,12 @@ std::unique_ptr<FormProto> form, base::RepeatingCallback<void(const FormProto::Result*)> changed_callback, base::OnceCallback<void(const ClientStatus&)> cancel_callback) override; + void ShowQrCodeScanUi( + std::unique_ptr<PromptQrCodeScanProto> qr_code_scan, + base::OnceCallback<void(const ClientStatus&, + const absl::optional<ValueProto>&)> callback) + override; + void ClearQrCodeScanUi() override; void RequireUI() override; void SetGenericUi( std::unique_ptr<GenericUserInterfaceProto> generic_ui,
diff --git a/components/autofill_assistant/browser/script_executor_ui_delegate.h b/components/autofill_assistant/browser/script_executor_ui_delegate.h index d9ff269..5ff267c 100644 --- a/components/autofill_assistant/browser/script_executor_ui_delegate.h +++ b/components/autofill_assistant/browser/script_executor_ui_delegate.h
@@ -73,6 +73,15 @@ // Set how the sheet should behave when entering a prompt state. virtual void SetExpandSheetForPromptAction(bool expand) = 0; + // Shows QR Code Scan UI to the user. + virtual void ShowQrCodeScanUi( + std::unique_ptr<PromptQrCodeScanProto> qr_code_scan, + base::OnceCallback<void(const ClientStatus&, + const absl::optional<ValueProto>&)> callback) = 0; + + // Clears the QR Code Scan UI. + virtual void ClearQrCodeScanUi() = 0; + // Sets the generic UI to show to the user. virtual void SetGenericUi( std::unique_ptr<GenericUserInterfaceProto> generic_ui,
diff --git a/components/autofill_assistant/browser/script_executor_unittest.cc b/components/autofill_assistant/browser/script_executor_unittest.cc index 35795e20..a750d95 100644 --- a/components/autofill_assistant/browser/script_executor_unittest.cc +++ b/components/autofill_assistant/browser/script_executor_unittest.cc
@@ -2348,6 +2348,16 @@ UserDataEventField::NONE); } +TEST_F(ScriptExecutorTest, ShowQrCodeScanUi) { + executor_->ShowQrCodeScanUi( + std::make_unique<PromptQrCodeScanProto>(PromptQrCodeScanProto()), + base::DoNothing()); + EXPECT_TRUE(ui_delegate_.IsShowingQrCodeScanUi()); + + executor_->ClearQrCodeScanUi(); + EXPECT_FALSE(ui_delegate_.IsShowingQrCodeScanUi()); +} + TEST_F(ScriptExecutorTest, MustUseBackendData) { delegate_.SetMustUseBackendData(true); EXPECT_TRUE(executor_->MustUseBackendData());
diff --git a/components/autofill_assistant/browser/service.proto b/components/autofill_assistant/browser/service.proto index cab9551f..a1e9a9648 100644 --- a/components/autofill_assistant/browser/service.proto +++ b/components/autofill_assistant/browser/service.proto
@@ -1071,6 +1071,7 @@ ExternalActionProto external_action = 95; SetNativeValueProto set_native_value = 96; SetNativeCheckedProto set_native_checked = 97; + PromptQrCodeScanProto prompt_qr_code_scan = 98; } // Set to true to make the client remove any contextual information if the @@ -1830,6 +1831,45 @@ optional ClientSettingsProto client_settings = 1; } +// Action to prompt QR Code Scanning. The action is used to scan a QR Code, +// either via Camera Preview or Image Upload, and store the output in client +// memory. +message PromptQrCodeScanProto { + // Whether to trigger QR Code Scanning via Camera Preview or Image Upload. + optional bool use_gallery = 1; + + // Key to store the QR Code scanning output in client memory. This is a + // mandatory field. + optional string output_client_memory_key = 2; + + // UI strings shown to the user during QR Code Scanning via Camera Preview. + message CameraScanUiStrings { + // Text to be displayed as title on Toolbar. + optional string title_text = 1; + + // Text to ask users to grant camera permission. + optional string permission_text = 2; + + // Text on action button while asking users to grant camera permissions. + optional string permission_button_text = 3; + + // Text to ask users to grant camera permissions by going into system + // settings. + optional string open_settings_text = 4; + + // Text on action button while asking users to grant camera permissions by + // going into system settings. + optional string open_settings_button_text = 5; + + // Instruction text shown during camera preview. + optional string camera_preview_instruction_text = 6; + } + + // UI strings shown during camera scan. This is a mandatory field when QR Code + // Scanning via Camera Preview is to be triggered. + optional CameraScanUiStrings camera_scan_ui_strings = 3; +} + // Contain a localized text message from the server. message TellProto { message TextToSpeech {
diff --git a/components/autofill_assistant/browser/ui_controller.cc b/components/autofill_assistant/browser/ui_controller.cc index 1b3a9d8..c26c2dd 100644 --- a/components/autofill_assistant/browser/ui_controller.cc +++ b/components/autofill_assistant/browser/ui_controller.cc
@@ -444,6 +444,25 @@ } } +void UiController::ShowQrCodeScanUi( + std::unique_ptr<PromptQrCodeScanProto> qr_code_scan, + base::OnceCallback<void(const ClientStatus&, + const absl::optional<ValueProto>&)> callback) { + qr_code_scan_ = std::move(qr_code_scan); + qr_code_scan_callback_ = std::move(callback); + for (UiControllerObserver& observer : observers_) { + observer.OnQrCodeScanUiChanged(qr_code_scan_.get()); + } +} + +void UiController::ClearQrCodeScanUi() { + qr_code_scan_.reset(); + qr_code_scan_callback_ = base::DoNothing(); + for (UiControllerObserver& observer : observers_) { + observer.OnQrCodeScanUiChanged(nullptr); + } +} + void UiController::SetGenericUi( std::unique_ptr<GenericUserInterfaceProto> generic_ui, base::OnceCallback<void(const ClientStatus&)> end_action_callback, @@ -678,6 +697,10 @@ return &basic_interactions_; } +const PromptQrCodeScanProto* UiController::GetPromptQrCodeScanProto() const { + return qr_code_scan_.get(); +} + const GenericUserInterfaceProto* UiController::GetGenericUiProto() const { return generic_user_interface_.get(); } @@ -843,6 +866,14 @@ UserDataFieldChange::ADDITIONAL_VALUES); } +void UiController::OnQrCodeScanFinished( + const ClientStatus& status, + const absl::optional<ValueProto>& value) { + if (qr_code_scan_callback_) { + std::move(qr_code_scan_callback_).Run(status, value); + } +} + void UiController::HandleShippingAddressChange( std::unique_ptr<autofill::AutofillProfile> address, UserDataEventType event_type) {
diff --git a/components/autofill_assistant/browser/ui_controller.h b/components/autofill_assistant/browser/ui_controller.h index 08a4984..b44b9c19f 100644 --- a/components/autofill_assistant/browser/ui_controller.h +++ b/components/autofill_assistant/browser/ui_controller.h
@@ -93,6 +93,12 @@ std::unique_ptr<FormProto> form, base::RepeatingCallback<void(const FormProto::Result*)> changed_callback, base::OnceCallback<void(const ClientStatus&)> cancel_callback) override; + void ShowQrCodeScanUi( + std::unique_ptr<PromptQrCodeScanProto> qr_code_scan, + base::OnceCallback<void(const ClientStatus&, + const absl::optional<ValueProto>&)> callback) + override; + void ClearQrCodeScanUi() override; void SetGenericUi( std::unique_ptr<GenericUserInterfaceProto> generic_ui, base::OnceCallback<void(const ClientStatus&)> end_action_callback, @@ -151,6 +157,8 @@ void OnTtsButtonClicked() override; void SetAdditionalValue(const std::string& client_memory_key, const ValueProto& value) override; + void OnQrCodeScanFinished(const ClientStatus& status, + const absl::optional<ValueProto>& value) override; ConfigureBottomSheetProto::PeekMode GetPeekMode() override; BottomSheetState GetBottomSheetState() override; void SetBottomSheetState(BottomSheetState state) override; @@ -164,6 +172,7 @@ void RemoveObserver(const UiControllerObserver* observer) override; bool ShouldPromptActionExpandSheet() const override; BasicInteractions* GetBasicInteractions() override; + const PromptQrCodeScanProto* GetPromptQrCodeScanProto() const override; const GenericUserInterfaceProto* GetGenericUiProto() const override; const GenericUserInterfaceProto* GetPersistentGenericUiProto() const override; void OnKeyboardVisibilityChanged(bool visible) override; @@ -324,6 +333,12 @@ std::unique_ptr<AutofillAssistantTtsController> tts_controller_; TtsButtonState tts_button_state_ = TtsButtonState::DEFAULT; + // Only set during a PromptQrCodeScanAction. + std::unique_ptr<PromptQrCodeScanProto> qr_code_scan_; + base::OnceCallback<void(const ClientStatus&, + const absl::optional<ValueProto>&)> + qr_code_scan_callback_; + // Only set during a ShowGenericUiAction. std::unique_ptr<GenericUserInterfaceProto> generic_user_interface_;
diff --git a/components/autofill_assistant/browser/ui_controller_observer.h b/components/autofill_assistant/browser/ui_controller_observer.h index 07dc7f0..1c45433 100644 --- a/components/autofill_assistant/browser/ui_controller_observer.h +++ b/components/autofill_assistant/browser/ui_controller_observer.h
@@ -84,6 +84,10 @@ virtual void OnFormChanged(const FormProto* form, const FormProto::Result* result) = 0; + // Called when QR Code Scanning is prompted or cleared. + virtual void OnQrCodeScanUiChanged( + const PromptQrCodeScanProto* qr_code_scan) = 0; + // Called when the generic user interface to show has been changed or cleared. virtual void OnGenericUserInterfaceChanged( const GenericUserInterfaceProto* generic_ui) = 0;
diff --git a/components/autofill_assistant/browser/ui_controller_unittest.cc b/components/autofill_assistant/browser/ui_controller_unittest.cc index deeee0fd..6d3d62b 100644 --- a/components/autofill_assistant/browser/ui_controller_unittest.cc +++ b/components/autofill_assistant/browser/ui_controller_unittest.cc
@@ -937,6 +937,41 @@ EXPECT_TRUE(ui_controller_->ShouldPromptActionExpandSheet()); } +TEST_F(UiControllerTest, ShowQrCodeScanUi) { + EXPECT_CALL(mock_observer_, OnQrCodeScanUiChanged(NotNull())); + + ui_controller_->ShowQrCodeScanUi( + std::make_unique<PromptQrCodeScanProto>(PromptQrCodeScanProto()), + base::DoNothing()); +} + +TEST_F(UiControllerTest, ClearQrCodeScanUi) { + EXPECT_CALL(mock_observer_, OnQrCodeScanUiChanged(nullptr)); + + ui_controller_->ClearQrCodeScanUi(); +} + +TEST_F(UiControllerTest, OnQrCodeScanFinished) { + base::MockCallback<base::OnceCallback<void( + const ClientStatus&, const absl::optional<ValueProto>&)>> + callback; + EXPECT_CALL(callback, Run) + .WillOnce([&](const ClientStatus& client_status, + const absl::optional<ValueProto>& value) { + EXPECT_TRUE(client_status.ok()); + EXPECT_EQ(value->strings().values(0), + std::string("QR_CODE_SCAN_RESULT")); + }); + + ui_controller_->ShowQrCodeScanUi( + std::make_unique<PromptQrCodeScanProto>(PromptQrCodeScanProto()), + callback.Get()); + ui_controller_->OnQrCodeScanFinished( + ClientStatus(ACTION_APPLIED), + SimpleValue(std::string("QR_CODE_SCAN_RESULT"), + /* is_client_side_only= */ true)); +} + TEST_F(UiControllerTest, SetGenericUi) { { testing::InSequence seq;
diff --git a/components/autofill_assistant/browser/ui_delegate.h b/components/autofill_assistant/browser/ui_delegate.h index e3d3137e..cb090a4b 100644 --- a/components/autofill_assistant/browser/ui_delegate.h +++ b/components/autofill_assistant/browser/ui_delegate.h
@@ -124,6 +124,11 @@ virtual void SetAdditionalValue(const std::string& client_memory_key, const ValueProto& value) = 0; + // Called when QR Code Scan Action is finished. + virtual void OnQrCodeScanFinished( + const ClientStatus& status, + const absl::optional<ValueProto>& value) = 0; + // Peek mode state and whether it was changed automatically last time. virtual ConfigureBottomSheetProto::PeekMode GetPeekMode() = 0; @@ -168,6 +173,9 @@ // Whether the sheet should be auto expanded when entering the prompt state. virtual bool ShouldPromptActionExpandSheet() const = 0; + // Get PromptQrCodeScanProto, if any. + virtual const PromptQrCodeScanProto* GetPromptQrCodeScanProto() const = 0; + // The generic user interface to show, if any. virtual const GenericUserInterfaceProto* GetGenericUiProto() const = 0;
diff --git a/components/browser_ui/strings/android/translations/browser_ui_strings_id.xtb b/components/browser_ui/strings/android/translations/browser_ui_strings_id.xtb index 5d76b0d..98f4215 100644 --- a/components/browser_ui/strings/android/translations/browser_ui_strings_id.xtb +++ b/components/browser_ui/strings/android/translations/browser_ui_strings_id.xtb
@@ -106,7 +106,7 @@ <translation id="3328801116991980348">Informasi situs</translation> <translation id="3333961966071413176">Semua kontak</translation> <translation id="3362437373201486687">Memindai perangkat Bluetooth</translation> -<translation id="3386292677130313581">Minta izin sebelum memungkinkan situs mengetahui lokasi Anda (disarankan)</translation> +<translation id="3386292677130313581">Minta izin sebelum mengizinkan situs mengetahui lokasi Anda (disarankan)</translation> <translation id="3538390592868664640">Blokir situs agar tidak membuat peta 3D untuk area di sekeliling Anda atau melacak posisi kamera</translation> <translation id="3551268116566418498">Keluar dari mode Samaran?</translation> <translation id="3586500876634962664">Kamera dan mikrofon aktif</translation>
diff --git a/components/browser_ui/strings/android/translations/browser_ui_strings_nl.xtb b/components/browser_ui/strings/android/translations/browser_ui_strings_nl.xtb index 0a1da08..f663fb4 100644 --- a/components/browser_ui/strings/android/translations/browser_ui_strings_nl.xtb +++ b/components/browser_ui/strings/android/translations/browser_ui_strings_nl.xtb
@@ -106,7 +106,7 @@ <translation id="3328801116991980348">Site-informatie</translation> <translation id="3333961966071413176">Alle contacten</translation> <translation id="3362437373201486687">Scannen naar bluetooth-apparaten</translation> -<translation id="3386292677130313581">Vragen of je sites toegang wilt verlenen tot je locatie (aanbevolen)</translation> +<translation id="3386292677130313581">Eerst vragen voordat sites toegang krijgen tot je locatie (aanbevolen)</translation> <translation id="3538390592868664640">Voorkomen dat sites een 3D-kaart van je omgeving maken of de camerapositie volgen</translation> <translation id="3551268116566418498">Incognitomodus verlaten?</translation> <translation id="3586500876634962664">Camera- en microfoongebruik</translation>
diff --git a/components/browser_ui/strings/android/translations/browser_ui_strings_te.xtb b/components/browser_ui/strings/android/translations/browser_ui_strings_te.xtb index a15e59f..4366412 100644 --- a/components/browser_ui/strings/android/translations/browser_ui_strings_te.xtb +++ b/components/browser_ui/strings/android/translations/browser_ui_strings_te.xtb
@@ -5,7 +5,7 @@ <translation id="1044891598689252897">సైట్లు సాధారణ రీతిలో పని చేస్తాయి</translation> <translation id="1124090076051167250">ఇది మీ హోమ్ స్క్రీన్పై ఉన్న, సైట్లు లేదా యాప్ల ద్వారా స్టోర్ చేయబడిన <ph name="DATASIZE" /> డేటా, కుక్కీలను క్లియర్ చేస్తుంది.</translation> <translation id="1178581264944972037">పాజ్ చేయి</translation> -<translation id="1181037720776840403">తీసివేయి</translation> +<translation id="1181037720776840403">తీసివేయండి</translation> <translation id="1201402288615127009">తరువాత</translation> <translation id="1242008676835033345"><ph name="WEBSITE_URL" />లో పొందుపరచబడింది</translation> <translation id="1272079795634619415">ఆపు</translation> @@ -24,7 +24,7 @@ <translation id="1647582022260550163">మీరు ఖచ్చితంగా అనుమతులను రీసెట్ చేసి, అలాగే కుక్కీలు, సైట్ డేటాను క్లియర్ చేయాలనుకుంటున్నారా?</translation> <translation id="1660204651932907780">ధ్వనిని ప్లే చేయగలిగేలా సైట్లను అనుమతిస్తుంది (సిఫార్సు చేయబడింది)</translation> <translation id="1677097821151855053">మిమ్మల్ని గుర్తుంచుకోవడానికి కుక్కీలు, ఇతర సైట్ డేటా ఉపయోగించబడతాయి, ఉదాహరణకు మిమల్ని సైన్ ఇన్ చేయడం కోసం లేదా యాడ్లను వ్యక్తిగతీకరించడం కోసం. అన్ని సైట్లకు కుక్కీలను మేనేజ్ చేయడానికి, <ph name="BEGIN_LINK" />సెట్టింగ్ల<ph name="END_LINK" />ను చూడండి.</translation> -<translation id="1688867105868176567">సైట్ డేటాని క్లియర్ చేయాలా?</translation> +<translation id="1688867105868176567">సైట్ డేటాను క్లియర్ చేయాలా?</translation> <translation id="169515064810179024">మోషన్ సెన్సార్లను యాక్సెస్ చేయనీయకుండా సైట్లను బ్లాక్ చేస్తుంది</translation> <translation id="1717218214683051432">మోషన్ సెన్సార్లు</translation> <translation id="1743802530341753419">ఏదైనా పరికరానికి కనెక్ట్ చేయగలిగేలా సైట్లను అనుమతించే ముందు మిమ్మల్ని అడుగుతుంది (సిఫార్సు చేయడమైనది)</translation> @@ -47,7 +47,7 @@ <translation id="2146738493024040262">తక్షణ యాప్ను తెరువు</translation> <translation id="2148716181193084225">ఈ రోజు</translation> <translation id="2182457891543959921">మీ పరిసరాల 3D మ్యాప్ను రూపొందించడానికి లేదా కెమెరా పొజిషన్ను ట్రాక్ చేయడానికి సైట్లను అనుమతించే ముందు అడగాలి (సిఫార్సు చేయడమైనది)</translation> -<translation id="2212565012507486665">కుక్కీలను అనుమతించు</translation> +<translation id="2212565012507486665">కుక్కీలను అనుమతించండి</translation> <translation id="2228071138934252756">మీ కెమెరాను యాక్సెస్ చేయడానికి <ph name="APP_NAME" />ని అనుమతించడానికి, <ph name="BEGIN_LINK" />Android సెట్టింగ్ల<ph name="END_LINK" />లో కూడా కెమెరాను ఆన్ చేయండి.</translation> <translation id="2238944249568001759">మీ చివరి ట్యాబ్ ఆధారంగా సూచించబడిన సెర్చ్లు</translation> <translation id="2241634353105152135">ఒకసారి మాత్రమే</translation> @@ -112,7 +112,7 @@ <translation id="3586500876634962664">కెమెరా, మైక్రోఫోన్ల ఉపయోగం</translation> <translation id="358794129225322306">పలు ఫైళ్లను ఆటోమేటిక్గా డౌన్లోడ్ చేయడం కోసం సైట్ని అనుమతించండి.</translation> <translation id="3594780231884063836">వీడియోను మ్యూట్ చేయండి</translation> -<translation id="3596414637720633074">అజ్ఞాతంలో థర్డ్-పార్టీ కుక్కీలను బ్లాక్ చేయి</translation> +<translation id="3596414637720633074">అజ్ఞాతంలో థర్డ్-పార్టీ కుక్కీలను బ్లాక్ చేయండి</translation> <translation id="3600792891314830896">ధ్వనిని ప్లే చేసే సైట్లను మ్యూట్ చేస్తుంది</translation> <translation id="3744111561329211289">బ్యాక్గ్రౌండ్ సింక్</translation> <translation id="3763247130972274048">10సె దాటవేయడానికి వీడియోపై రెండుసార్లు ఎడమ లేదా కుడివైపు ట్యాప్ చేయండి</translation> @@ -142,7 +142,7 @@ <translation id="4278390842282768270">అనుమతించబడింది</translation> <translation id="429312253194641664">ఒక సైట్లో మీడియా ప్లే చేయబడుతోంది</translation> <translation id="42981349822642051">విస్తరించు</translation> -<translation id="4336434711095810371">మొత్తం డేటాను క్లియర్ చేయి</translation> +<translation id="4336434711095810371">మొత్తం డేటాను క్లియర్ చేయండి</translation> <translation id="4402755511846832236">మీరు ఈ పరికరాన్ని యాక్టివ్గా ఉపయోగిస్తున్నప్పుడు ఆ విషయాన్ని ఇతర సైట్లు తెలుసుకోకుండా బ్లాక్ చేయండి</translation> <translation id="4428065317363009941">యాడ్ వ్యక్తిగతీకరణ</translation> <translation id="4434045419905280838">పాప్-అప్లు మరియు మళ్లింపులు</translation> @@ -164,7 +164,7 @@ <translation id="4994033804516042629">కాంటాక్ట్లు కనుగొనబడలేదు</translation> <translation id="4996978546172906250">దీని ద్వారా భాగస్వామ్యం చే.</translation> <translation id="5014906230196386306">కుక్కీలను క్లియర్ చేయాలా?</translation> -<translation id="5039804452771397117">అనుమతించు</translation> +<translation id="5039804452771397117">అనుమతించండి</translation> <translation id="5048398596102334565">మోషన్ సెన్సార్లను యాక్సెస్ చేయడానికి సైట్లను అనుమతించండి (సిఫార్సు చేస్తున్నాము)</translation> <translation id="5050380848339752099">ఈ సైట్ అజ్ఞాత మోడ్ వెలుపల ఉన్న ఒక యాప్తో సమాచారాన్ని షేర్ చేయబోతోంది.</translation> <translation id="5063480226653192405">నిల్వ వినియోగం</translation> @@ -243,7 +243,7 @@ <translation id="6608650720463149374"><ph name="GIGABYTES" /> GB</translation> <translation id="6612358246767739896">రక్షిత కంటెంట్</translation> <translation id="662080504995468778">ఇందులోనే ఉంచు</translation> -<translation id="6643016212128521049">క్లియర్ చేయి</translation> +<translation id="6643016212128521049">క్లియర్ చేయండి</translation> <translation id="6689172468748959065">ప్రొఫైల్ ఫోటోలు</translation> <translation id="6697925417670533197">యాక్టివ్గా ఉన్న డౌన్లోడ్లు</translation> <translation id="6722828510648505498">గుర్తింపు సర్వీస్ల నుండి సైన్-ఇన్ ప్రాంప్ట్లను బ్లాక్ చేయండి.</translation> @@ -281,7 +281,7 @@ <translation id="757524316907819857">రక్షిత కంటెంట్ను ప్లే చేయకుండా సైట్లను బ్లాక్ చేస్తుంది</translation> <translation id="7577900504646297215">ఆసక్తులను మేనేజ్ చేయండి</translation> <translation id="7594634374516752650">బ్లూటూత్ పరికరానికి కనెక్ట్ అయింది</translation> -<translation id="7641339528570811325">బ్రౌజింగ్ డేటాను తీసివేయి…</translation> +<translation id="7641339528570811325">బ్రౌజింగ్ డేటాను తీసివేయండి…</translation> <translation id="7649070708921625228">సహాయం</translation> <translation id="7658239707568436148">రద్దు చేయండి</translation> <translation id="7781829728241885113">నిన్న</translation>
diff --git a/components/certificate_transparency/data/log_list.json b/components/certificate_transparency/data/log_list.json index 922aa68..c72d86c 100644 --- a/components/certificate_transparency/data/log_list.json +++ b/components/certificate_transparency/data/log_list.json
@@ -1,6 +1,6 @@ { - "version": "10.48", - "log_list_timestamp": "2022-07-20T12:55:25Z", + "version": "10.49", + "log_list_timestamp": "2022-07-21T12:57:00Z", "operators": [ { "name": "Google",
diff --git a/components/infobars/core/infobar_delegate.h b/components/infobars/core/infobar_delegate.h index f9c2c9f..a8ba5ca4 100644 --- a/components/infobars/core/infobar_delegate.h +++ b/components/infobars/core/infobar_delegate.h
@@ -146,7 +146,7 @@ // Removed: VR_SERVICES_UPGRADE_ANDROID = 74, READER_MODE_INFOBAR_ANDROID = 75, VR_FEEDBACK_INFOBAR_ANDROID = 76, - FRAMEBUST_BLOCK_INFOBAR_ANDROID = 77, + // Removed: FRAMEBUST_BLOCK_INFOBAR_ANDROID = 77, SURVEY_INFOBAR_ANDROID = 78, NEAR_OOM_INFOBAR_ANDROID = 79, INSTALLABLE_AMBIENT_BADGE_INFOBAR_DELEGATE = 80,
diff --git a/components/messages/android/java/src/org/chromium/components/messages/MessagesMetrics.java b/components/messages/android/java/src/org/chromium/components/messages/MessagesMetrics.java index 6611df8..d44cf1c 100644 --- a/components/messages/android/java/src/org/chromium/components/messages/MessagesMetrics.java +++ b/components/messages/android/java/src/org/chromium/components/messages/MessagesMetrics.java
@@ -145,6 +145,8 @@ return "OfferNotification"; case MessageIdentifier.EXTERNAL_NAVIGATION: return "ExternalNavigation"; + case MessageIdentifier.FRAMEBUST_BLOCKED: + return "FramebustBlocked"; case MessageIdentifier.INVALID_MESSAGE: return "InvalidMessage"; default:
diff --git a/components/messages/android/message_enums.h b/components/messages/android/message_enums.h index 0bc4517..b2c5cec 100644 --- a/components/messages/android/message_enums.h +++ b/components/messages/android/message_enums.h
@@ -109,6 +109,7 @@ TRANSLATE = 29, OFFER_NOTIFICATION = 30, EXTERNAL_NAVIGATION = 31, + FRAMEBUST_BLOCKED = 32, // Insert new values before this line. COUNT
diff --git a/components/omnibox/browser/autocomplete_match.h b/components/omnibox/browser/autocomplete_match.h index eccbb93..3e5c26a 100644 --- a/components/omnibox/browser/autocomplete_match.h +++ b/components/omnibox/browser/autocomplete_match.h
@@ -530,7 +530,7 @@ // Determines whether this match is allowed to be the default match by // comparing |input.text| and |inline_autocompletion|. Therefore, // |inline_autocompletion| should be set prior to invoking this method. Also - // Also considers trailing whitespace in the input, so the input should not be + // considers trailing whitespace in the input, so the input should not be // fixed up. May trim trailing whitespaces from |inline_autocompletion|. // // Input "x" will allow default matches "x", "xy", and "x y".
diff --git a/components/omnibox/browser/autocomplete_result.cc b/components/omnibox/browser/autocomplete_result.cc index 893ba3e..b157ce0 100644 --- a/components/omnibox/browser/autocomplete_result.cc +++ b/components/omnibox/browser/autocomplete_result.cc
@@ -162,6 +162,21 @@ const AutocompleteInput& input, AutocompleteResult* old_matches, TemplateURLService* template_url_service) { + // Don't transfer matches from done providers. If the match is still + // relevant, it'll already be in `result_`, potentially with updated fields + // that shouldn't be deduped with the out-of-date match. Otherwise, the + // irrelevant match shouldn't be re-added. Adding outdated matches is + // particularly noticeable when the user types the next char before the + // copied matches are expired leading to outdated matches surviving multiple + // input changes, e.g. 'gooooooooo[oogle.com]'. + if (OmniboxFieldTrial::kAutocompleteStabilityDontCopyDoneProviders.Get()) { + old_matches->matches_.erase( + base::ranges::remove_if( + *old_matches, + [](const auto& old_match) { return old_match.provider->done(); }), + old_matches->matches_.end()); + } + if (old_matches->empty()) return;
diff --git a/components/omnibox/browser/autocomplete_result_unittest.cc b/components/omnibox/browser/autocomplete_result_unittest.cc index 49a6e93d..671e78b 100644 --- a/components/omnibox/browser/autocomplete_result_unittest.cc +++ b/components/omnibox/browser/autocomplete_result_unittest.cc
@@ -86,7 +86,7 @@ class AutocompleteResultTest : public testing::Test { public: struct TestData { - // Used to build a url for the AutocompleteMatch. The URL becomes + // Used to build a URL for the AutocompleteMatch. The URL becomes // "http://" + ('a' + |url_id|) (e.g. an ID of 2 yields "http://c"). int url_id; @@ -126,6 +126,9 @@ AutocompleteProvider::Type::TYPE_ON_DEVICE_HEAD)); mock_provider_list_.push_back(new FakeAutocompleteProvider( AutocompleteProvider::Type::TYPE_VERBATIM_MATCH)); + + for (const auto& provider : mock_provider_list_) + provider->done_ = false; } AutocompleteResultTest(const AutocompleteResultTest&) = delete; AutocompleteResultTest& operator=(const AutocompleteResultTest&) = delete; @@ -665,6 +668,70 @@ result, std::size(result))); } +// Tests that transferred matches do not include the specialized match types. +TEST_F(AutocompleteResultTest, TransferOldMatchesSkipDoneProviders) { + { + SCOPED_TRACE("kAutocompleteStabilityDontCopyDoneProviders enabled."); + base::test::ScopedFeatureList feature_list; + feature_list.InitAndEnableFeatureWithParameters( + omnibox::kAutocompleteStability, + {{OmniboxFieldTrial::kAutocompleteStabilityDontCopyDoneProviders.name, + "true"}}); + + TestData last[] = { + {0, 1, 500}, // Suggestion from done provider + {1, 2, 400}, // Suggestion for not-done provider + }; + TestData current[] = { + {2, 3, 700}, // Suggestion from done provider + {3, 4, 600}, // Suggestion for not-done provider + }; + TestData result[] = { + {2, 3, 700}, + {3, 4, 600}, + {1, 2, 400}, + }; + + GetProvider(1)->done_ = true; + GetProvider(3)->done_ = true; + + ASSERT_NO_FATAL_FAILURE(RunTransferOldMatchesTest( + last, std::size(last), current, std::size(current), result, + std::size(result))); + } + + { + SCOPED_TRACE("kAutocompleteStabilityDontCopyDoneProviders disabled."); + base::test::ScopedFeatureList feature_list; + feature_list.InitAndEnableFeatureWithParameters( + omnibox::kAutocompleteStability, + {{OmniboxFieldTrial::kAutocompleteStabilityDontCopyDoneProviders.name, + "false"}}); + + TestData last[] = { + {0, 1, 500}, // Suggestion from done provider + {1, 2, 400}, // Suggestion for not-done provider + }; + TestData current[] = { + {2, 3, 700}, // Suggestion from done provider + {3, 4, 600}, // Suggestion for not-done provider + }; + TestData result[] = { + {2, 3, 700}, + {3, 4, 600}, + {0, 1, 500}, // Suggestion from done provider + {1, 2, 400}, + }; + + GetProvider(1)->done_ = true; + GetProvider(3)->done_ = true; + + ASSERT_NO_FATAL_FAILURE(RunTransferOldMatchesTest( + last, std::size(last), current, std::size(current), result, + std::size(result))); + } +} + // Tests that matches with empty destination URLs aren't treated as duplicates // and culled. TEST_F(AutocompleteResultTest, SortAndCullEmptyDestinationURLs) { @@ -1731,10 +1798,9 @@ #if !BUILDFLAG(IS_ANDROID) TEST_F(AutocompleteResultTest, SortAndCullGroupSuggestionsByType) { base::test::ScopedFeatureList feature_list; - feature_list.InitWithFeaturesAndParameters( - {{omnibox::kUIExperimentMaxAutocompleteMatches, - {{OmniboxFieldTrial::kUIMaxAutocompleteMatchesParam, "6"}}}}, - {/* nothing disabled */}); + feature_list.InitAndEnableFeatureWithParameters( + omnibox::kUIExperimentMaxAutocompleteMatches, + {{OmniboxFieldTrial::kUIMaxAutocompleteMatchesParam, "6"}}); TestData data[] = { {0, 1, 500, false, {}, AutocompleteMatchType::SEARCH_SUGGEST}, {1, 2, 600, false, {}, AutocompleteMatchType::HISTORY_URL}, @@ -1772,10 +1838,9 @@ TEST_F(AutocompleteResultTest, SortAndCullKeepGroupedSuggestionsLast) { base::test::ScopedFeatureList feature_list; - feature_list.InitWithFeaturesAndParameters( - {{omnibox::kUIExperimentMaxAutocompleteMatches, - {{OmniboxFieldTrial::kUIMaxAutocompleteMatchesParam, "6"}}}}, - {/* nothing disabled */}); + feature_list.InitAndEnableFeatureWithParameters( + omnibox::kUIExperimentMaxAutocompleteMatches, + {{OmniboxFieldTrial::kUIMaxAutocompleteMatchesParam, "6"}}); TestData data[] = { {0, 1, 500, false, {}, AutocompleteMatchType::SEARCH_SUGGEST, 1}, {1, 2, 600, false, {}, AutocompleteMatchType::HISTORY_URL}, @@ -1970,10 +2035,9 @@ TEST_F(AutocompleteResultTest, GroupSuggestionsBySearchVsURLHonorsProtectedSuggestions) { base::test::ScopedFeatureList feature_list; - feature_list.InitWithFeaturesAndParameters( - {{omnibox::kUIExperimentMaxAutocompleteMatches, - {{OmniboxFieldTrial::kUIMaxAutocompleteMatchesParam, "7"}}}}, - {/* nothing disabled */}); + feature_list.InitAndEnableFeatureWithParameters( + omnibox::kUIExperimentMaxAutocompleteMatches, + {{OmniboxFieldTrial::kUIMaxAutocompleteMatchesParam, "7"}}); TestData data[] = { {0, 2, 400, true, {}, AutocompleteMatchType::HISTORY_TITLE}, {1, 1, 800, false, {}, AutocompleteMatchType::CLIPBOARD_URL},
diff --git a/components/omnibox/browser/omnibox_field_trial.cc b/components/omnibox/browser/omnibox_field_trial.cc index dc149fe..7ae0dc89 100644 --- a/components/omnibox/browser/omnibox_field_trial.cc +++ b/components/omnibox/browser/omnibox_field_trial.cc
@@ -735,6 +735,10 @@ &omnibox::kAutocompleteStability, "AutocompleteStabilityPreserveDefaultForAsyncUpdates", true); +const base::FeatureParam<bool> kAutocompleteStabilityDontCopyDoneProviders( + &omnibox::kAutocompleteStability, + "AutocompleteStabilityDontCopyDoneProviders", + false); // Local history zero-prefix (aka zero-suggest) and prefix suggestions:
diff --git a/components/omnibox/browser/omnibox_field_trial.h b/components/omnibox/browser/omnibox_field_trial.h index deccf20..3e76b32 100644 --- a/components/omnibox/browser/omnibox_field_trial.h +++ b/components/omnibox/browser/omnibox_field_trial.h
@@ -485,6 +485,11 @@ // updates. True by default. extern const base::FeatureParam<bool> kAutocompleteStabilityPreserveDefaultForAsyncUpdates; +// Matches from the previous input are temporarily copied to carry over the +// suggestions until the new input's suggestions are ready. If enabled, only +// providers whose suggestions are pending have their old matches copied over. +extern const base::FeatureParam<bool> + kAutocompleteStabilityDontCopyDoneProviders; // Local history zero-prefix (aka zero-suggest) and prefix suggestions.
diff --git a/components/omnibox/browser/omnibox_field_trial_unittest.cc b/components/omnibox/browser/omnibox_field_trial_unittest.cc index b5b0bcd..779f00a 100644 --- a/components/omnibox/browser/omnibox_field_trial_unittest.cc +++ b/components/omnibox/browser/omnibox_field_trial_unittest.cc
@@ -358,10 +358,9 @@ base::test::ScopedFeatureList scoped_feature_list_; // The default value can be overridden. - scoped_feature_list_.InitWithFeaturesAndParameters( - {{omnibox::kOmniboxLocalZeroSuggestAgeThreshold, - {{OmniboxFieldTrial::kOmniboxLocalZeroSuggestAgeThresholdParam, "3"}}}}, - {}); + scoped_feature_list_.InitAndEnableFeatureWithParameters( + omnibox::kOmniboxLocalZeroSuggestAgeThreshold, + {{OmniboxFieldTrial::kOmniboxLocalZeroSuggestAgeThresholdParam, "3"}}); base::Time age_threshold = OmniboxFieldTrial::GetLocalHistoryZeroSuggestAgeThreshold(); EXPECT_EQ(3, base::TimeDelta(base::Time::Now() - age_threshold).InDays()); @@ -369,10 +368,9 @@ // If the age threshold is not parsable to an unsigned integer, the default // value is used. scoped_feature_list_.Reset(); - scoped_feature_list_.InitWithFeaturesAndParameters( - {{omnibox::kOmniboxLocalZeroSuggestAgeThreshold, - {{OmniboxFieldTrial::kOmniboxLocalZeroSuggestAgeThresholdParam, "j"}}}}, - {}); + scoped_feature_list_.InitAndEnableFeatureWithParameters( + omnibox::kOmniboxLocalZeroSuggestAgeThreshold, + {{OmniboxFieldTrial::kOmniboxLocalZeroSuggestAgeThresholdParam, "j"}}); const int expected_age_threshold_days = 60; age_threshold = OmniboxFieldTrial::GetLocalHistoryZeroSuggestAgeThreshold(); EXPECT_EQ(expected_age_threshold_days,
diff --git a/components/optimization_guide/content/browser/BUILD.gn b/components/optimization_guide/content/browser/BUILD.gn index 978a2280..75fa2b7 100644 --- a/components/optimization_guide/content/browser/BUILD.gn +++ b/components/optimization_guide/content/browser/BUILD.gn
@@ -36,6 +36,7 @@ "//components/google/core/common", "//components/history/core/browser", "//components/keyed_service/core", + "//components/no_state_prefetch/browser", "//components/optimization_guide:machine_learning_tflite_buildflags", "//components/optimization_guide:optimization_guide_buildflags", "//components/optimization_guide/content/mojom:mojo_interfaces",
diff --git a/components/optimization_guide/content/browser/DEPS b/components/optimization_guide/content/browser/DEPS index 905a72b7..7c420114 100644 --- a/components/optimization_guide/content/browser/DEPS +++ b/components/optimization_guide/content/browser/DEPS
@@ -4,6 +4,7 @@ "+components/google/core", "+components/history/core/browser", "+components/keyed_service/core", + "+components/no_state_prefetch/browser", "+components/optimization_guide/core", "+components/optimization_guide/proto", "+components/search_engines",
diff --git a/components/optimization_guide/content/browser/page_content_annotations_service.cc b/components/optimization_guide/content/browser/page_content_annotations_service.cc index 52fe395..3464420e 100644 --- a/components/optimization_guide/content/browser/page_content_annotations_service.cc +++ b/components/optimization_guide/content/browser/page_content_annotations_service.cc
@@ -6,6 +6,7 @@ #include "base/barrier_closure.h" #include "base/callback_helpers.h" +#include "base/containers/adapters.h" #include "base/metrics/histogram_functions.h" #include "base/metrics/histogram_macros_local.h" #include "base/rand_util.h" @@ -500,7 +501,7 @@ base::TimeDelta min_magnitude_between_visits = base::TimeDelta::Max(); bool did_store_content_annotations = false; - for (const auto& visit_for_url : url_result.visits) { + for (const auto& visit_for_url : base::Reversed(url_result.visits)) { if (visit.nav_entry_timestamp != visit_for_url.visit_time) { base::TimeDelta magnitude_between_visits = (visit.nav_entry_timestamp - visit_for_url.visit_time).magnitude();
diff --git a/components/optimization_guide/content/browser/page_content_annotations_web_contents_observer.cc b/components/optimization_guide/content/browser/page_content_annotations_web_contents_observer.cc index 31250ed1..be7aaaf 100644 --- a/components/optimization_guide/content/browser/page_content_annotations_web_contents_observer.cc +++ b/components/optimization_guide/content/browser/page_content_annotations_web_contents_observer.cc
@@ -9,6 +9,7 @@ #include "base/metrics/histogram_functions.h" #include "base/strings/utf_string_conversions.h" #include "components/google/core/common/google_util.h" +#include "components/no_state_prefetch/browser/no_state_prefetch_manager.h" #include "components/optimization_guide/content/browser/optimization_guide_decider.h" #include "components/optimization_guide/content/browser/page_content_annotations_service.h" #include "components/optimization_guide/core/optimization_guide_features.h" @@ -118,13 +119,15 @@ content::WebContents* web_contents, PageContentAnnotationsService* page_content_annotations_service, TemplateURLService* template_url_service, - OptimizationGuideDecider* optimization_guide_decider) + OptimizationGuideDecider* optimization_guide_decider, + prerender::NoStatePrefetchManager* no_state_prefetch_manager) : content::WebContentsObserver(web_contents), content::WebContentsUserData<PageContentAnnotationsWebContentsObserver>( *web_contents), page_content_annotations_service_(page_content_annotations_service), template_url_service_(template_url_service), - optimization_guide_decider_(optimization_guide_decider) { + optimization_guide_decider_(optimization_guide_decider), + no_state_prefetch_manager_(no_state_prefetch_manager) { DCHECK(page_content_annotations_service_); if (FetchRemoteMetadataEnabled() && optimization_guide_decider_) { @@ -146,6 +149,15 @@ if (!navigation_handle->GetURL().SchemeIsHTTPOrHTTPS()) return; + // No-state prefetch does not update history, so don't execute any models for + // it. + if (no_state_prefetch_manager_ && + no_state_prefetch_manager_->IsWebContentsPrefetching(web_contents())) { + return; + } + + // Conditions above here should match what is in HistoryTabHelper. + PageData* page_data = PageData::GetOrCreateForPage(web_contents()->GetPrimaryPage()); page_data->set_navigation_id(navigation_handle->GetNavigationId());
diff --git a/components/optimization_guide/content/browser/page_content_annotations_web_contents_observer.h b/components/optimization_guide/content/browser/page_content_annotations_web_contents_observer.h index e0dbbe0..cc4a5dbb 100644 --- a/components/optimization_guide/content/browser/page_content_annotations_web_contents_observer.h +++ b/components/optimization_guide/content/browser/page_content_annotations_web_contents_observer.h
@@ -16,6 +16,10 @@ class NavigationHandle; } // namespace content +namespace prerender { +class NoStatePrefetchManager; +} // namespace prerender + namespace optimization_guide { enum class OptimizationGuideDecision; @@ -43,7 +47,8 @@ content::WebContents* web_contents, PageContentAnnotationsService* page_content_annotations_service, TemplateURLService* template_url_service, - OptimizationGuideDecider* optimization_guide_decider); + OptimizationGuideDecider* optimization_guide_decider, + prerender::NoStatePrefetchManager* no_state_prefetch_manager); private: friend class content::WebContentsUserData< @@ -70,6 +75,9 @@ // Not owned. Guaranteed to outlive |this|. raw_ptr<OptimizationGuideDecider> optimization_guide_decider_; + // Not owned. Guaranteed to outlive |this|. + raw_ptr<prerender::NoStatePrefetchManager> no_state_prefetch_manager_; + base::WeakPtrFactory<PageContentAnnotationsWebContentsObserver> weak_ptr_factory_{this};
diff --git a/components/optimization_guide/content/browser/page_content_annotations_web_contents_observer_unittest.cc b/components/optimization_guide/content/browser/page_content_annotations_web_contents_observer_unittest.cc index eb16fa2..6fbc111 100644 --- a/components/optimization_guide/content/browser/page_content_annotations_web_contents_observer_unittest.cc +++ b/components/optimization_guide/content/browser/page_content_annotations_web_contents_observer_unittest.cc
@@ -223,7 +223,8 @@ PageContentAnnotationsWebContentsObserver::CreateForWebContents( web_contents(), page_content_annotations_service_.get(), - template_url_service_.get(), optimization_guide_decider_.get()); + template_url_service_.get(), optimization_guide_decider_.get(), + /*no_state_prefetch_manager=*/nullptr); // Overwrite Google base URL. base::CommandLine::ForCurrentProcess()->AppendSwitchASCII(
diff --git a/components/page_info/core/features.cc b/components/page_info/core/features.cc index 911fbaee..54b444ee 100644 --- a/components/page_info/core/features.cc +++ b/components/page_info/core/features.cc
@@ -46,6 +46,9 @@ #if !BUILDFLAG(IS_ANDROID) const base::Feature kPageInfoHistoryDesktop{"PageInfoHistoryDesktop", base::FEATURE_DISABLED_BY_DEFAULT}; + +const base::Feature kPageInfoHideSiteSettings{ + "PageInfoHideSiteSettings", base::FEATURE_DISABLED_BY_DEFAULT}; #endif } // namespace page_info
diff --git a/components/page_info/core/features.h b/components/page_info/core/features.h index c048b94d..d9e185d 100644 --- a/components/page_info/core/features.h +++ b/components/page_info/core/features.h
@@ -45,6 +45,11 @@ extern const base::Feature kPageInfoHistoryDesktop; #endif +#if !BUILDFLAG(IS_ANDROID) +// Hides site settings row. +extern const base::Feature kPageInfoHideSiteSettings; +#endif + } // namespace page_info #endif // COMPONENTS_PAGE_INFO_CORE_FEATURES_H_
diff --git a/components/paint_preview/renderer/paint_preview_recorder_utils_unittest.cc b/components/paint_preview/renderer/paint_preview_recorder_utils_unittest.cc index 144bbf0..e472267 100644 --- a/components/paint_preview/renderer/paint_preview_recorder_utils_unittest.cc +++ b/components/paint_preview/renderer/paint_preview_recorder_utils_unittest.cc
@@ -316,7 +316,7 @@ SkBitmap bitmap; bitmap.allocN32Pixels(dimensions.width(), dimensions.height()); SkCanvas sk_canvas(bitmap); - sk_canvas.drawColor(SK_ColorRED); + sk_canvas.drawColor(SkColors::kRed); cc::PaintImage paint_image = cc::PaintImage::CreateFromBitmap(bitmap); ASSERT_FALSE(paint_image.IsLazyGenerated()); ASSERT_FALSE(paint_image.IsPaintWorklet()); @@ -365,7 +365,7 @@ SkBitmap bitmap; bitmap.allocN32Pixels(dimensions.width(), dimensions.height()); SkCanvas sk_canvas(bitmap); - sk_canvas.drawColor(SK_ColorRED); + sk_canvas.drawColor(SkColors::kRed); cc::PaintImage paint_image = cc::PaintImageBuilder::WithDefault() .set_id(cc::PaintImage::GetNextId()) @@ -397,7 +397,7 @@ SkBitmap bitmap; bitmap.allocN32Pixels(dimensions.width(), dimensions.height()); SkCanvas sk_canvas(bitmap); - sk_canvas.drawColor(SK_ColorRED); + sk_canvas.drawColor(SkColors::kRed); auto sk_image = SkImage::MakeFromBitmap(bitmap); auto data = sk_image->encodeToData(); auto lazy_sk_image = SkImage::MakeFromEncoded(data); @@ -436,7 +436,7 @@ cc::PaintRecorder inner_recorder; cc::PaintCanvas* inner_canvas = inner_recorder.beginRecording(dimensions.width(), dimensions.width()); - inner_canvas->drawColor(SK_ColorRED); + inner_canvas->drawColor(SkColors::kRed); cc::PaintImage paint_image = cc::PaintImageBuilder::WithDefault() .set_id(1)
diff --git a/components/password_manager/core/browser/import/password_importer.cc b/components/password_manager/core/browser/import/password_importer.cc index 4b05bd3fe..929c415 100644 --- a/components/password_manager/core/browser/import/password_importer.cc +++ b/components/password_manager/core/browser/import/password_importer.cc
@@ -10,6 +10,7 @@ #include "base/files/file_util.h" #include "base/location.h" #include "base/task/thread_pool.h" +#include "base/types/expected.h" #include "components/password_manager/core/browser/import/csv_password.h" #include "components/password_manager/core/browser/import/csv_password_sequence.h" #include "components/password_manager/services/csv_password/csv_password_parser_service.h" @@ -23,18 +24,30 @@ // Preferred filename extension for the imported files. const base::FilePath::CharType kFileExtension[] = FILE_PATH_LITERAL("csv"); -// Reads and returns the contents of the file at |path| as a string, or returns -// a null value on error. -absl::optional<std::string> ReadFileToString(const base::FilePath& path) { +// Limiting the file size to 150 KB: a limit is introduced to limit the +// number of passwords and limit the amount of data that can be displayed in +// memory to preview the content of the import in a single run. +const int32_t kMaxFileSizeBytes = 150 * 1024; + +// Reads and returns a status and the contents of the file at |path| as a +// optional string. The string will be present if the status is SUCCESS. +base::expected<std::string, PasswordImporter::Status> ReadFileToString( + const base::FilePath& path) { + int64_t file_size; + if (GetFileSize(path, &file_size) && file_size > kMaxFileSizeBytes) + return base::unexpected(PasswordImporter::Status::LARGE_FILE); + std::string contents; if (!base::ReadFileToString(path, &contents)) - return absl::optional<std::string>(); - return contents; + return base::unexpected(PasswordImporter::Status::IO_ERROR); + + return std::move(contents); } } // namespace PasswordImporter::PasswordImporter() = default; + PasswordImporter::~PasswordImporter() = default; const mojo::Remote<mojom::CSVPasswordParser>& PasswordImporter::GetParser() { @@ -45,16 +58,21 @@ return parser_; } +PasswordImporter::Status PasswordImporter::GetStatus() const { + return status_; +} + void PasswordImporter::ParseCSVPasswordsInSandbox( PasswordImporter::CompletionCallback completion, - absl::optional<std::string> input) { + base::expected<std::string, PasswordImporter::Status> result) { // Currently, CSV is the only supported format. - if (!input) { + if (!result.has_value()) { + this->status_ = result.error(); std::move(completion).Run(nullptr); - return; + } else { + this->status_ = PasswordImporter::Status::SUCCESS; + GetParser()->ParseCSV(std::move(result.value()), std::move(completion)); } - - GetParser()->ParseCSV(std::move(input.value()), std::move(completion)); } void PasswordImporter::Import(const base::FilePath& path,
diff --git a/components/password_manager/core/browser/import/password_importer.h b/components/password_manager/core/browser/import/password_importer.h index 70e6b13..8f12ade9 100644 --- a/components/password_manager/core/browser/import/password_importer.h +++ b/components/password_manager/core/browser/import/password_importer.h
@@ -9,6 +9,7 @@ #include "base/callback.h" #include "base/files/file_path.h" +#include "base/types/expected.h" #include "components/password_manager/services/csv_password/csv_password_parser_service.h" #include "components/password_manager/services/csv_password/public/mojom/csv_password_parser.mojom.h" @@ -18,12 +19,14 @@ // performed using a utility SandBox process. class PasswordImporter { public: - enum Result { + enum Status { + NONE, SUCCESS, IO_ERROR, SYNTAX_ERROR, SEMANTIC_ERROR, - NUM_IMPORT_RESULTS + LARGE_FILE, + MAX_STATUS }; // CompletionCallback is the type of the processing function for parsed @@ -49,16 +52,24 @@ void SetServiceForTesting( mojo::PendingRemote<mojom::CSVPasswordParser> parser); + // Returns the import status. + Status GetStatus() const; + private: // Parses passwords from |input| using a mojo sandbox process and // asynchronously calls |completion| with the results. - void ParseCSVPasswordsInSandbox(CompletionCallback completion, - absl::optional<std::string> input); + void ParseCSVPasswordsInSandbox( + CompletionCallback completion, + base::expected<std::string, PasswordImporter::Status> result); + + void ConsumePasswords(password_manager::mojom::CSVPasswordSequencePtr seq); const mojo::Remote<mojom::CSVPasswordParser>& GetParser(); mojo::Remote<mojom::CSVPasswordParser> parser_; + Status status_{Status::NONE}; + base::WeakPtrFactory<PasswordImporter> weak_ptr_factory_{this}; };
diff --git a/components/password_manager/core/browser/import/password_importer_unittest.cc b/components/password_manager/core/browser/import/password_importer_unittest.cc index b54d83d..35ba5a65 100644 --- a/components/password_manager/core/browser/import/password_importer_unittest.cc +++ b/components/password_manager/core/browser/import/password_importer_unittest.cc
@@ -8,16 +8,20 @@ #include "base/callback_helpers.h" #include "base/files/file_util.h" #include "base/files/scoped_temp_dir.h" +#include "base/path_service.h" #include "base/strings/utf_string_conversions.h" #include "base/test/task_environment.h" #include "components/password_manager/core/browser/import/csv_password_sequence.h" #include "components/password_manager/core/browser/password_form.h" #include "mojo/public/cpp/bindings/pending_remote.h" #include "mojo/public/cpp/bindings/remote.h" +#include "testing/gmock/include/gmock/gmock.h" #include "testing/gtest/include/gtest/gtest.h" #include "base/test/task_environment.h" +using testing::IsEmpty; + namespace password_manager { namespace { @@ -82,6 +86,10 @@ return imported_passwords_; } + PasswordImporter::Status GetImportStatus() const { + return importer_.GetStatus(); + } + // Directory for creating files by this test. base::ScopedTempDir temp_directory_; @@ -112,6 +120,35 @@ EXPECT_EQ(kTestPassword, imported_passwords()[0].password_value); } +TEST_F(PasswordImporterTest, CSVImportLargeFile) { + // content has more than kMaxFileSizeBytes (150KB) of bytes. + std::string content(150 * 1024 + 100, '*'); + + base::FilePath temp_file_path; + ASSERT_TRUE(base::CreateTemporaryFile(&temp_file_path)); + ASSERT_TRUE(base::WriteFile(temp_file_path, std::move(content))); + + ASSERT_NO_FATAL_FAILURE(StartImportAndWaitForCompletion(temp_file_path)); + + EXPECT_THAT(imported_passwords(), IsEmpty()); + EXPECT_EQ(PasswordImporter::Status::LARGE_FILE, GetImportStatus()); + base::DeleteFile(temp_file_path); +} + +TEST_F(PasswordImporterTest, CSVImportNonExistingFile) { + base::FilePath src_dir; + ASSERT_TRUE(base::PathService::Get(base::DIR_SOURCE_ROOT, &src_dir)); + static const base::FilePath kTestsDirectory(FILE_PATH_LITERAL( + "components/password_manager/core/browser/import/test")); + base::FilePath input_path = + src_dir.Append(kTestsDirectory).AppendASCII("non_existing_path"); + + ASSERT_NO_FATAL_FAILURE(StartImportAndWaitForCompletion(input_path)); + + EXPECT_THAT(imported_passwords(), IsEmpty()); + EXPECT_EQ(PasswordImporter::Status::IO_ERROR, GetImportStatus()); +} + TEST_F(PasswordImporterTest, ImportIOErrorDueToUnreadableFile) { base::FilePath non_existent_input_file(FILE_PATH_LITERAL("nonexistent.csv")); ASSERT_NO_FATAL_FAILURE(
diff --git a/components/policy/core/browser/policy_conversions.cc b/components/policy/core/browser/policy_conversions.cc index c198ea22..e6847d9 100644 --- a/components/policy/core/browser/policy_conversions.cc +++ b/components/policy/core/browser/policy_conversions.cc
@@ -92,6 +92,11 @@ return *this; } +PolicyConversions& PolicyConversions::EnableExtensionPolicies(bool enabled) { + extension_policies_enabled_ = enabled; + return *this; +} + /** * DictionaryPolicyConversions */ @@ -158,6 +163,27 @@ return *this; } +DictionaryPolicyConversions& +DictionaryPolicyConversions::EnableExtensionPolicies(bool enabled) { + PolicyConversions::EnableExtensionPolicies(enabled); + return *this; +} + +#if BUILDFLAG(ENABLE_EXTENSIONS) +base::Value::Dict DictionaryPolicyConversions::GetExtensionPolicies() { + base::Value::Dict extension_policies; + if (client()->HasUserPolicies()) { + extension_policies.Set("extensionPolicies", + GetExtensionPolicies(POLICY_DOMAIN_EXTENSIONS)); + } +#if BUILDFLAG(IS_CHROMEOS_ASH) + extension_policies.Set("loginScreenExtensionPolicies", + GetExtensionPolicies(POLICY_DOMAIN_SIGNIN_EXTENSIONS)); +#endif // BUILDFLAG(IS_CHROMEOS_ASH) + return extension_policies; +} +#endif // BUILDFLAG(ENABLE_EXTENSIONS) + std::string DictionaryPolicyConversions::ToJSON() { return client()->ConvertValueToJSON(Value(ToValueDict())); } @@ -169,8 +195,9 @@ all_policies.Set("chromePolicies", client()->GetChromePolicies()); #if BUILDFLAG(ENABLE_EXTENSIONS) - all_policies.Set("extensionPolicies", - GetExtensionPolicies(POLICY_DOMAIN_EXTENSIONS)); + if (extension_policies_enabled_) { + all_policies.Merge(GetExtensionPolicies()); + } #endif // BUILDFLAG(ENABLE_EXTENSIONS) } @@ -179,11 +206,6 @@ all_policies.Set("updaterPolicies", client()->GetUpdaterPolicies()); #endif -#if BUILDFLAG(ENABLE_EXTENSIONS) && BUILDFLAG(IS_CHROMEOS_ASH) - all_policies.Set("loginScreenExtensionPolicies", - GetExtensionPolicies(POLICY_DOMAIN_SIGNIN_EXTENSIONS)); -#endif // BUILDFLAG(ENABLE_EXTENSIONS) && BUILDFLAG(IS_CHROMEOS_ASH) - #if BUILDFLAG(IS_CHROMEOS_ASH) all_policies.Set("deviceLocalAccountPolicies", GetDeviceLocalAccountPolicies()); @@ -280,6 +302,31 @@ return *this; } +ArrayPolicyConversions& ArrayPolicyConversions::EnableExtensionPolicies( + bool enabled) { + PolicyConversions::EnableExtensionPolicies(enabled); + return *this; +} + +#if BUILDFLAG(ENABLE_EXTENSIONS) +base::Value::List ArrayPolicyConversions::GetExtensionPolicies() { + base::Value::List policies; + if (client()->HasUserPolicies()) { + for (auto& policy : + client()->GetExtensionPolicies(POLICY_DOMAIN_EXTENSIONS)) { + policies.Append(std::move(policy)); + } + } +#if BUILDFLAG(IS_CHROMEOS_ASH) + for (auto& policy : + client()->GetExtensionPolicies(POLICY_DOMAIN_SIGNIN_EXTENSIONS)) { + policies.Append(std::move(policy)); + } +#endif // BUILDFLAG(IS_CHROMEOS_ASH) + return policies; +} +#endif // BUILDFLAG(ENABLE_EXTENSIONS) + std::string ArrayPolicyConversions::ToJSON() { return client()->ConvertValueToJSON(Value(ToValueList())); } @@ -300,21 +347,14 @@ if (client()->HasUpdaterPolicies()) all_policies.Append(GetUpdaterPolicies()); #endif - + } #if BUILDFLAG(ENABLE_EXTENSIONS) - for (auto& policy : - client()->GetExtensionPolicies(POLICY_DOMAIN_EXTENSIONS)) { - all_policies.Append(std::move(policy)); + if (extension_policies_enabled_) { + for (auto& extension_policy : GetExtensionPolicies()) { + all_policies.Append(std::move(extension_policy)); } + } #endif // BUILDFLAG(ENABLE_EXTENSIONS) - } - -#if BUILDFLAG(ENABLE_EXTENSIONS) && BUILDFLAG(IS_CHROMEOS_ASH) - for (auto& policy : - client()->GetExtensionPolicies(POLICY_DOMAIN_SIGNIN_EXTENSIONS)) { - all_policies.Append(std::move(policy)); - } -#endif // BUILDFLAG(ENABLE_EXTENSIONS) && BUILDFLAG(IS_CHROMEOS_ASH) #if BUILDFLAG(IS_CHROMEOS_ASH) for (auto& device_policy : client()->GetDeviceLocalAccountPolicies())
diff --git a/components/policy/core/browser/policy_conversions.h b/components/policy/core/browser/policy_conversions.h index 8bd4f45..4676c03 100644 --- a/components/policy/core/browser/policy_conversions.h +++ b/components/policy/core/browser/policy_conversions.h
@@ -18,6 +18,7 @@ #include "components/policy/core/common/policy_types.h" #include "components/policy/core/common/schema.h" #include "components/policy/policy_export.h" +#include "extensions/buildflags/buildflags.h" #include "ui/base/webui/web_ui_util.h" namespace policy { @@ -64,6 +65,11 @@ // Set to drop the policies of which value is a default one set by the policy // provider. Disabled by default. virtual PolicyConversions& SetDropDefaultValues(bool enabled); + // Set to get extension policies. + // Enabled by default. + // TODO(b/233209041): Remove this option when extension policies are removed + // from ArrayPolicyConversions. + virtual PolicyConversions& EnableExtensionPolicies(bool enabled); #if BUILDFLAG(IS_WIN) && BUILDFLAG(GOOGLE_CHROME_BRANDING) // Sets the updater policies. @@ -81,6 +87,8 @@ protected: PolicyConversionsClient* client() { return client_.get(); } + bool extension_policies_enabled_ = true; + private: std::unique_ptr<PolicyConversionsClient> client_; }; @@ -109,6 +117,8 @@ DictionaryPolicyConversions& SetDropDefaultValues(bool enabled) override; + DictionaryPolicyConversions& EnableExtensionPolicies(bool enabled) override; + #if BUILDFLAG(IS_WIN) && BUILDFLAG(GOOGLE_CHROME_BRANDING) // Sets the updater policies. DictionaryPolicyConversions& WithUpdaterPolicies( @@ -119,6 +129,10 @@ PolicyToSchemaMap schemas) override; #endif // BUILDFLAG(IS_WIN) && BUILDFLAG(GOOGLE_CHROME_BRANDING) +#if BUILDFLAG(ENABLE_EXTENSIONS) + base::Value::Dict GetExtensionPolicies(); +#endif // BUILDFLAG(ENABLE_EXTENSIONS) + std::string ToJSON() override; base::Value::Dict ToValueDict(); @@ -154,6 +168,8 @@ ArrayPolicyConversions& SetDropDefaultValues(bool enabled) override; + ArrayPolicyConversions& EnableExtensionPolicies(bool enabled) override; + #if BUILDFLAG(IS_WIN) && BUILDFLAG(GOOGLE_CHROME_BRANDING) // Sets the updater policies. ArrayPolicyConversions& WithUpdaterPolicies( @@ -178,6 +194,11 @@ base::Value::Dict GetChromePolicies(); base::Value::Dict GetPrecedencePolicies(); +#if BUILDFLAG(ENABLE_EXTENSIONS) + // Returns extension policies in a list. + base::Value::List GetExtensionPolicies(); +#endif // BUILDFLAG(ENABLE_EXTENSIONS) + #if BUILDFLAG(IS_WIN) && BUILDFLAG(GOOGLE_CHROME_BRANDING) base::Value::Dict GetUpdaterPolicies(); #endif // BUILDFLAG(IS_WIN) && BUILDFLAG(GOOGLE_CHROME_BRANDING)
diff --git a/components/policy/core/common/cloud/cloud_policy_constants.h b/components/policy/core/common/cloud/cloud_policy_constants.h index 6c2e5b1..bab53ee 100644 --- a/components/policy/core/common/cloud/cloud_policy_constants.h +++ b/components/policy/core/common/cloud/cloud_policy_constants.h
@@ -193,6 +193,10 @@ // Policy Invalidation sender coming from the Firebase console. extern const char kPolicyFCMInvalidationSenderID[]; +// Kiosk SKU name. This is the constant of the enrollment license type that +// exists on the server side. +inline static const char kKioskSkuName[] = "GOOGLE.CHROME_KIOSK_ANNUAL"; + } // namespace policy #endif // COMPONENTS_POLICY_CORE_COMMON_CLOUD_CLOUD_POLICY_CONSTANTS_H_
diff --git a/components/policy/resources/policy_templates_de.xtb b/components/policy/resources/policy_templates_de.xtb index 5bf3723..78aafd22 100644 --- a/components/policy/resources/policy_templates_de.xtb +++ b/components/policy/resources/policy_templates_de.xtb
@@ -3157,6 +3157,7 @@ <translation id="4372704773119750918">Nutzer in Unternehmen dürfen keine Mehrfachprofile verwenden (weder als primärer, noch als sekundärer Nutzer)</translation> <translation id="4377599627073874279">Anzeige aller Bilder auf allen Websites zulassen</translation> <translation id="437791893267799639">Richtlinie nicht konfiguriert, Datenmigration und ARC nicht zulassen</translation> +<translation id="4380159792986204036">Einer Kiosk-Webanwendung erlauben, mehrere Browserfenster auf beliebigen Bildschirmen zu öffnen</translation> <translation id="4381227367939912539">Easter-Egg-Dinosaurierspiel deaktivieren</translation> <translation id="4382413175336720282">Die URL-Echtzeitüberprüfung ist deaktiviert.</translation> <translation id="4387741272680827493">Wenn die Richtlinie konfiguriert ist, wird eine Liste mit Hostnamen angegeben, die vorab geladene HSTS-Upgrades von http auf https umgehen. @@ -3663,6 +3664,9 @@ Genaue Informationen zu gültigen URL-Mustern findest du unter https://cloud.google.com/docs/chrome-enterprise/policies/url-patterns. <ph name="WILDCARD_VALUE" /> ist kein akzeptierter Wert für diese Richtlinie.</translation> <translation id="4978533099939732984">Warnungen bei wenig Speicherplatz immer anzeigen</translation> +<translation id="4979714585847741269">Ist die Richtlinie aktiviert, kann eine Kiosk-Webanwendung ein weiteres Browserfenster öffnen, entweder auf demselben Bildschirm oder einem anderen. Zum Öffnen eines neuen Fensters sollte die Webanwendung die JavaScript-Funktion <ph name="OPEN_NEW_WINDOW_JS" /> aufrufen. + + Ist die Richtlinie deaktiviert oder nicht konfiguriert, kann eine Kiosk-Webanwendung nur das Hauptbrowserfenster verwenden und kein weiteres Fenster öffnen. Alle JavaScript-Funktionen zum Öffnen eines neuen Fensters werden ignoriert.</translation> <translation id="4980635395568992380">Datentyp:</translation> <translation id="4983201894483989687">Ausführung veralteter Plug-ins zulassen</translation> <translation id="4986560318567565414">Pfad, um vom alternativen Browser zu Chrome zu wechseln.</translation> @@ -6090,6 +6094,7 @@ Diese Richtlinie setzt voraus, dass vom Zertifikatüberprüfungsstapel des Betriebssystems SHA-1-Signaturen zugelassen werden. Wenn sich durch ein Update des Betriebssystems die Handhabung von SHA-1-Zertifikaten ändert, ist diese Richtlinie nicht mehr wirksam. Diese Richtlinie dient zur vorübergehenden Problemumgehung, um Unternehmen mehr Zeit zu geben, SHA-1 zu ersetzen. Diese Richtlinie wird ab dem 1. Januar 2019 entfernt. Wenn diese Richtlinie nicht konfiguriert oder auf "false" gesetzt ist, wird für <ph name="PRODUCT_NAME" /> der offizielle Beendigungszeitplan für SHA-1 herangezogen.</translation> +<translation id="7577082478271919056">Einer Kiosk-Webanwendung erlauben, ein weiteres Browserfenster zu öffnen</translation> <translation id="7578142001795552218">Mit dieser Richtlinie erhält die Funktion „Schnellinfo“ die Berechtigung, auf ausgewählte Inhalte zuzugreifen und die Informationen an den Server zu senden, um Ergebnisse zur Einheitenumrechnung zu erhalten. Wenn die Richtlinie aktiviert oder nicht konfiguriert ist, ist die Einheitenumrechnung über „Schnellinfo“ aktiviert. @@ -7205,21 +7210,6 @@ Nutzer können einen Importdialog öffnen. Das Kästchen für den Browserverlauf wird je nach Konfiguration dieser Richtlinie aktiviert oder deaktiviert.</translation> <translation id="8825154502356129120">Gnubby-Authentifizierung für den Host für den Remote-Zugriff deaktivieren</translation> <translation id="8825782996899863372">Die Passwortschutzwarnung wird durch die Wiederverwendung eines Passworts auf einer Phishingseite ausgelöst</translation> -<translation id="8826172502287946476">Wenn die Richtlinie konfiguriert ist, wird eine Liste von Apps und Erweiterungen festgelegt, die automatisch installiert werden, also ohne Interaktion des Nutzers, und die vom Nutzer weder deinstalliert noch deaktiviert werden können. Berechtigungen, auch für die Erweiterungs-APIs "enterprise.deviceAttributes" und "enterprise.platformKeys", werden implizit gewährt. Diese beiden APIs stehen bei Apps oder Erweiterungen ohne erzwungene Installation nicht zur Verfügung. - - Wenn die Richtlinie nicht konfiguriert ist, werden Apps und Erweiterungen nicht automatisch installiert und Nutzer können jede App oder Erweiterung in <ph name="PRODUCT_NAME" /> deinstallieren. - - Diese Richtlinie hat Vorrang gegenüber der Richtlinie "<ph name="EXTENSION_INSTALL_BLOCKLIST_POLICY_NAME" />". Wenn eine App oder Erweiterung mit erzwungener Installation aus dieser Liste entfernt wird, wird sie automatisch von <ph name="PRODUCT_NAME" /> deinstalliert. - - Bei <ph name="MS_WIN_NAME" />-Instanzen können Apps und Erweiterungen, die nicht aus dem Chrome Web Store stammen, nur auf solchen Instanzen zwangsweise installiert werden, die Teil einer <ph name="MS_AD_NAME" />-Domain sind, auf denen Windows 10 Pro läuft oder die durch die Chrome-Verwaltung über die Cloud verwaltet werden. - - Bei <ph name="MAC_OS_NAME" />-Instanzen können Apps und Erweiterungen, die nicht aus dem Chrome Web Store stammen, nur zwangsweise installiert werden, wenn die Instanz über die Mobilgeräteverwaltung verwaltet wird oder per MCX mit einer Domain verbunden ist. - - Nutzer können den Quellcode jeder Erweiterung mithilfe von Entwicklertools ändern. Danach funktioniert die entsprechende Erweiterung eventuell nicht mehr. Wenn du das verhindern möchtest, kannst du die Richtlinie "<ph name="DEVELOPER_TOOLS_DISABLED_POLICY_NAME" />" festlegen. - - Jedes Listenelement der Richtlinie ist ein String mit einer Erweiterungs-ID und einer optionalen Update-URL, die durch ein Semikolon (;) getrennt sind. Die Erweiterungs-ID ist der String mit 32 Buchstaben, den du beispielsweise im Entwicklermodus unter chrome://extensions siehst. Die Update-URL sollte, sofern festgelegt, auf ein XML-Dokument mit einem Update-Manifest verweisen (https://developer.chrome.com/extensions/autoupdate). Standardmäßig kommt die Update-URL des Chrome Web Store zum Einsatz. Die in dieser Richtlinie festgelegte Update-URL wird nur für die Erstinstallation verwendet. In nachfolgenden Updates der Erweiterung kommt die Update-URL zum Einsatz, die im Manifest der Erweiterung angegeben wurde. - - Hinweis: Diese Richtlinie gilt nicht für den Inkognitomodus. Informationen zum Hosting von Erweiterungen findest du unter https://developer.chrome.com/extensions/hosting.</translation> <translation id="8827275450034266143">Im User-Agent-String wird die Hauptversion als „99“ festgeschrieben und die Hauptversion des Browsers an zweiter Stelle (Nebenversion) angegeben.</translation> <translation id="8827366480126575426">Protokoll für den Protokoll-Handler.</translation> <translation id="8827417642396462482">Zusätzliche DNS-Abfragetypen erlauben</translation> @@ -7614,6 +7604,7 @@ Hinweis: Wenn interne „chrome://*“-URLs blockiert werden, können unerwartete Fehler auftreten.</translation> <translation id="957778406002650056">URL, über die das <ph name="PLUGIN_VM_NAME" />-Image heruntergeladen werden kann.</translation> +<translation id="958285142322823422">Eine Kiosk-Webanwendung daran hindern, ein weiteres Browserfenster zu öffnen</translation> <translation id="958577147847681221">Damit wird festgelegt, ob es unter <ph name="PRODUCT_OS_NAME" /> erlaubt ist, neue Nutzerkonten zu erstellen. Wenn diese Richtlinie auf „false“ gesetzt ist, können sich nur in <ph name="DEVICE_USER_ALLOWLIST_POLICY_NAME" /> enthaltene Nutzer anmelden.
diff --git a/components/policy/resources/policy_templates_es-419.xtb b/components/policy/resources/policy_templates_es-419.xtb index 689d1a6..c7ec129 100644 --- a/components/policy/resources/policy_templates_es-419.xtb +++ b/components/policy/resources/policy_templates_es-419.xtb
@@ -7293,21 +7293,6 @@ Los usuarios podrán activar un diálogo de importación; la casilla de verificación correspondiente al historial de navegación estará marcada o desmarcada en función del valor de esta política.</translation> <translation id="8825154502356129120">Inhabilitar la autenticación gnubby para el host de acceso remoto</translation> <translation id="8825782996899863372">La advertencia de la protección de la contraseña se activa cuando se vuelve a usar la contraseña en una página de suplantación de identidad (phishing)</translation> -<translation id="8826172502287946476">Si estableces la política, se especificará una lista de apps y extensiones que se instalan en segundo plano, sin la interacción del usuario, y que este no puede desinstalar ni desactivar. Se otorgan los permisos de manera implícita, incluidos los de las API de extensión enterprise.deviceAttributes y enterprise.platformKeys. (Estas 2 API no están disponibles para las apps y extensiones que no se instalan de manera automática). - - Si no estableces la política, no se instalará ninguna app ni extensión de manera automática y los usuarios podrán desinstalar cualquier app o extensión en <ph name="PRODUCT_NAME" />. - - Esta política tiene prioridad por sobre la política <ph name="EXTENSION_INSTALL_BLOCKLIST_POLICY_NAME" />. Si se quita de esta lista una app o extensión instalada de manera automática, <ph name="PRODUCT_NAME" /> la desinstalará de forma automática. - - En instancias de <ph name="MS_WIN_NAME" />, las apps y extensiones que no provengan de Chrome Web Store podrán instalarse de forma automática solo si la instancia está vinculada con un dominio de <ph name="MS_AD_NAME" />, se ejecuta en Windows 10 Pro o está inscrita en el Administración en la nube para el navegador Chrome. - - En instancias de <ph name="MAC_OS_NAME" />, las apps y extensiones que no provengan de Chrome Web Store podrán instalarse de forma automática solo si la instancia está administrada mediante MDM o vinculada a un dominio a través de MCX. - - Los usuarios pueden modificar el código fuente de cualquier extensión a través de las herramientas para desarrolladores (y probablemente la extensión deje de funcionar). Si esta situación puede plantear problemas, establece la política <ph name="DEVELOPER_TOOLS_DISABLED_POLICY_NAME" />. - - Cada elemento de la lista de la política es una string que contiene un ID de extensión y, de forma opcional, una URL de actualización separada por un punto y coma (;). El ID de extensión es la string de 32 letras que se encuentra, p. ej., en chrome://extensions, en el Modo de desarrollador. Si se especifica, la URL de actualización debe direccionar a un documento XML del manifiesto de actualización (https://developer.chrome.com/extensions/autoupdate). De forma predeterminada, se usa la URL de actualización de Chrome Web Store. La URL de actualización que se establece en esta política solo se usa para la instalación inicial; las actualizaciones posteriores de la extensión utilizan la URL de actualización que se indica en el manifiesto de la extensión. - - Nota: Esta política no se aplica al modo Incógnito. Obtén más información sobre el alojamiento de extensiones en https://developer.chrome.com/extensions/hosting.</translation> <translation id="8827275450034266143">El string usuario-agente bloqueará la versión principal en 99. Además, incluirá la versión principal del navegador en la posición de la versión secundaria.</translation> <translation id="8827366480126575426">El protocolo para el controlador de protocolos.</translation> <translation id="8827417642396462482">Permitir tipos de consultas de DNS adicionales</translation>
diff --git a/components/policy/resources/policy_templates_es.xtb b/components/policy/resources/policy_templates_es.xtb index a57917d3..249c7c2 100644 --- a/components/policy/resources/policy_templates_es.xtb +++ b/components/policy/resources/policy_templates_es.xtb
@@ -3201,6 +3201,7 @@ <translation id="4372704773119750918">No permitir que el usuario de empresa forme parte de la función de varios perfiles (usuario principal o secundario)</translation> <translation id="4377599627073874279">Permitir que todos los sitios muestren todas las imágenes</translation> <translation id="437791893267799639">Política no establecida (no permitir la migración de datos ni ARC)</translation> +<translation id="4380159792986204036">Permitir que una aplicación web de kiosco abra más de una ventana del navegador en cualquier pantalla</translation> <translation id="4381227367939912539">Inhabilitar el juego del huevo de pascua del dinosaurio</translation> <translation id="4382413175336720282">La comprobación de URL en tiempo real está inhabilitada.</translation> <translation id="4387741272680827493">Si se establece la política, se especifica una lista de nombres de host que evita las actualizaciones de HSTS precargadas (de http a https). @@ -3709,6 +3710,9 @@ Para obtener información detallada sobre los patrones de URL válidos, consulta https://cloud.google.com/docs/chrome-enterprise/policies/url-patterns. <ph name="WILDCARD_VALUE" /> no es un valor aceptado para esta política.</translation> <translation id="4978533099939732984">Mostrar siempre las advertencias de poco espacio en disco</translation> +<translation id="4979714585847741269">Si se habilita esta política, una aplicación web de kiosco podrá abrir otra ventana del navegador, que se podrá colocar en la misma pantalla o en otra. Para abrir una ventana nueva, la aplicación web deberá llamar a la función de JavaScript <ph name="OPEN_NEW_WINDOW_JS" />. + + Si se inhabilita la política o se deja sin definir, la aplicación web de kiosco solo podrá usar la ventana principal del navegador y no podrá abrir ninguna ventana nueva. Las llamadas a funciones de JavaScript para abrir una ventana nueva se ignorarán.</translation> <translation id="4980635395568992380">Tipo de datos:</translation> <translation id="4983201894483989687">Permitir la ejecución de complementos obsoletos</translation> <translation id="4986560318567565414">Ruta a Chrome para cambiar desde el navegador alternativo.</translation> @@ -6183,6 +6187,7 @@ Ten en cuenta que esta política depende de la pila de verificación de certificados del sistema operativo que permite las firmas SHA-1. Si una actualización del sistema operativo cambia la forma en que este gestiona los certificados SHA-1, es posible que la política deje de estar efectiva. Además, el objetivo de esta política es proporcionar a las empresas una solución temporal para que tengan más tiempo para abandonar los certificados SHA-1. Esta política se retirará sobre el 1 de enero de 2019. Si esta política no se configura o si se le asigna el valor false, <ph name="PRODUCT_NAME" /> seguirá la programación de desactivación de SHA-1 anunciada públicamente.</translation> +<translation id="7577082478271919056">Permitir que una aplicación web de kiosco abra otra ventana del navegador</translation> <translation id="7578142001795552218">Esta política da permiso a la función Respuestas rápidas para acceder al contenido seleccionado y enviar la información al servidor con el fin de obtener resultados de conversión de unidades. Si se habilita esta política o no se establece, se activará la conversión de unidades de Respuestas rápidas. @@ -7295,21 +7300,6 @@ Los usuarios pueden abrir un cuadro de diálogo de importación y la casilla del historial de navegación aparecerá marcada o desmarcada en función del valor de esta política.</translation> <translation id="8825154502356129120">Inhabilitar la autenticación gnubby para el host de acceso remoto</translation> <translation id="8825782996899863372">La advertencia de protección de contraseña se activa al reutilizar la contraseña en una página de phishing</translation> -<translation id="8826172502287946476">Si se define esta política, se especificará una lista de aplicaciones y extensiones que se instalarán de forma silenciosa, sin intervención del usuario, y que los usuarios no podrán desinstalar ni desactivar. Los permisos se concederán de forma implícita, incluidas las API de extensión enterprise.deviceAttributes y enterprise.platformKeys. Estas dos API no estarán disponibles para las aplicaciones y extensiones que no se instalen de manera forzada. - - Si no se asigna ningún valor a esta política, no se instalará ninguna aplicación ni extensión de forma automática y los usuarios podrán desinstalar cualquier aplicación o extensión en <ph name="PRODUCT_NAME" />. - - Esta política sustituye a la política <ph name="EXTENSION_INSTALL_BLOCKLIST_POLICY_NAME" />. Si una aplicación o extensión que se haya instalado anteriormente de manera forzada se quita de la lista, <ph name="PRODUCT_NAME" /> la desinstalará automáticamente. - - En instancias de <ph name="MS_WIN_NAME" />, las aplicaciones y extensiones que no estén alojadas en Chrome Web Store solo se instalarán de manera forzada si la instancia está vinculada a un dominio de <ph name="MS_AD_NAME" />, se ejecuta en Windows 10 Pro o se ha registrado en Gestión en la nube del navegador Chrome. - - En instancias de <ph name="MAC_OS_NAME" />, las aplicaciones y extensiones que no estén alojadas en Chrome Web Store solo se podrán instalar de manera forzada si la instancia se gestiona mediante MDM o está vinculada a un dominio a través de MCX. - - Los usuarios podrán modificar el código fuente de las extensiones mediante las herramientas para desarrolladores, lo que puede provocar problemas de funcionamiento en esas extensiones. Si te preocupa, configura la política <ph name="DEVELOPER_TOOLS_DISABLED_POLICY_NAME" />. - - Cada elemento de la lista de la política es una cadena que contiene un ID de extensión y, opcionalmente, una URL de actualización separados por punto y coma (;). El ID de extensión es la cadena de 32 letras que aparece, por ejemplo, en chrome://extensions cuando está habilitado el modo desarrollador. Si se especifica, la URL de actualización debe dirigir a un documento XML de un archivo de manifiesto de actualización (https://developer.chrome.com/extensions/autoupdate). De forma predeterminada, se utiliza la URL de actualización de Chrome Web Store. La URL de actualización definida en esta política solo se usará en la instalación inicial. Las actualizaciones posteriores de la extensión usarán la URL de actualización indicada en el archivo de manifiesto de la extensión. - - Nota: Esta política no se aplica al modo Incógnito. Para obtener más información sobre el alojamiento de extensiones, consulta https://developer.chrome.com/extensions/hosting.</translation> <translation id="8827275450034266143">La cadena user-agent bloqueará la versión principal en la 99 e incluirá la versión principal del navegador en la posición secundaria.</translation> <translation id="8827366480126575426">El protocolo del controlador de protocolos.</translation> <translation id="8827417642396462482">Permitir tipos de consultas de DNS adicionales</translation> @@ -7711,6 +7701,7 @@ Nota: Bloquear las URL internas chrome://* podría provocar errores inesperados.</translation> <translation id="957778406002650056">La URL desde la que se puede descargar la imagen de <ph name="PLUGIN_VM_NAME" />.</translation> +<translation id="958285142322823422">Impedir que una aplicación web de kiosco abra otra ventana del navegador</translation> <translation id="958577147847681221">Controla si <ph name="PRODUCT_OS_NAME" /> permite crear nuevas cuentas de usuario. Si se asigna el valor False a esta política, solo los usuarios presentes en <ph name="DEVICE_USER_ALLOWLIST_POLICY_NAME" /> podrán iniciar sesión.
diff --git a/components/policy/resources/policy_templates_fr.xtb b/components/policy/resources/policy_templates_fr.xtb index 957d747..352d516 100644 --- a/components/policy/resources/policy_templates_fr.xtb +++ b/components/policy/resources/policy_templates_fr.xtb
@@ -7230,21 +7230,6 @@ Les utilisateurs peuvent ouvrir une boîte de dialogue d'importation. La case correspondant à l'historique de navigation sera ou ne sera pas cochée, suivant la configuration de cette règle.</translation> <translation id="8825154502356129120">Désactiver l'authentification gnubby pour l'hôte d'accès à distance</translation> <translation id="8825782996899863372">L'avertissement de protection par mot de passe est déclenché en cas de réutilisation du mot de passe sur une page d'hameçonnage</translation> -<translation id="8826172502287946476">Permet d'établir la liste des applications et des extensions qui s'installent de manière autonome, sans aucune intervention de l'utilisateur, et que celui-ci ne peut pas désinstaller ni désactiver. Les autorisations sont accordées implicitement, y compris pour les API d'extension enterprise.deviceAttributes et enterprise.platformKeys (ces deux API ne sont pas disponibles pour les applications et extensions qui ne sont pas installées d'office). - - Si cette règle n'est pas configurée, aucune application ni extension ne s'installe automatiquement, et l'utilisateur peut désinstaller n'importe quelle application ou extension dans <ph name="PRODUCT_NAME" />. - - Cette règle remplace la règle <ph name="EXTENSION_INSTALL_BLOCKLIST_POLICY_NAME" />. Si une application ou une extension installée d'office est supprimée de cette liste, <ph name="PRODUCT_NAME" /> la désinstalle automatiquement. - - Pour les instances <ph name="MS_WIN_NAME" />, les applications et extensions ne venant pas du Chrome Web Store ne peuvent être installées d'office que si l'instance est associée à un domaine <ph name="MS_AD_NAME" />, exécutée sous Windows 10 Pro ou qu'elle bénéficie de la gestion cloud du navigateur Chrome. - - Pour les instances <ph name="MAC_OS_NAME" />, les applications et extensions ne venant pas du Chrome Web Store ne peuvent être installées d'office que si l'instance est gérée via MDM ou associée à un domaine via MCX. - - Le code source de toute extension peut être modifié par les utilisateurs à l'aide des outils pour les développeurs, ce qui peut entraîner des dysfonctionnements. Si cela pose problème, configurez la règle <ph name="DEVELOPER_TOOLS_DISABLED_POLICY_NAME" />. - - Chaque élément de la règle correspond à une chaîne constituée d'un identifiant d'extension et éventuellement d'une URL de mise à jour séparés par un point-virgule (;). L'identifiant d'extension est la chaîne de 32 lettres figurant, par exemple, sur la page chrome://extensions, lorsque le mode développeur est activé. Si elle est indiquée, l'URL de mise à jour doit renvoyer à un fichier manifeste au format XML (voir https://developer.chrome.com/extensions/autoupdate). Par défaut, l'URL de mise à jour du Chrome Web Store est utilisée. L'URL de mise à jour spécifiée dans cette règle ne sert que pour l'installation initiale. Toute mise à jour ultérieure de l'extension est effectuée avec l'URL indiquée dans le fichier manifeste de l'extension. - - Remarque : cette règle ne s'applique pas en mode navigation privée. Pour en savoir plus sur l'hébergement des extensions, consultez la page https://developer.chrome.com/extensions/hosting.</translation> <translation id="8827275450034266143">La chaîne user-agent figera la version principale sur la version 99 et indiquera la version majeure du navigateur en seconde position.</translation> <translation id="8827366480126575426">Protocole du gestionnaire de protocoles.</translation> <translation id="8827417642396462482">Autorise les autres types de requêtes DNS</translation>
diff --git a/components/policy/resources/policy_templates_id.xtb b/components/policy/resources/policy_templates_id.xtb index 9a26212..17b2b0f 100644 --- a/components/policy/resources/policy_templates_id.xtb +++ b/components/policy/resources/policy_templates_id.xtb
@@ -3199,6 +3199,7 @@ <translation id="4372704773119750918">Jangan izinkan pengguna perusahaan untuk menjadi bagian dari multiprofil (primer atau sekunder)</translation> <translation id="4377599627073874279">Izinkan semua situs menampilkan semua gambar</translation> <translation id="437791893267799639">Kebijakan tidak disetel, jangan izinkan migrasi data dan ARC</translation> +<translation id="4380159792986204036">Mengizinkan Kios Web membuka lebih dari satu jendela browser di layar mana pun</translation> <translation id="4381227367939912539">Nonaktifkan game dinosaurus sebagai fitur tersembunyi</translation> <translation id="4382413175336720282">Pemeriksaan URL secara real time dinonaktifkan.</translation> <translation id="4387741272680827493">Menyetel kebijakan akan menentukan daftar nama host yang mengabaikan upgrade HSTS yang dipramuat dari HTTP menjadi HTTPS. @@ -3710,6 +3711,9 @@ Untuk informasi selengkapnya tentang pola URL yang valid, lihat https://cloud.google.com/docs/chrome-enterprise/policies/url-patterns. <ph name="WILDCARD_VALUE" /> bukanlah nilai yang diterima untuk kebijakan ini.</translation> <translation id="4978533099939732984">Selalu tampilkan peringatan ruang penyimpanan hampir penuh</translation> +<translation id="4979714585847741269">Jika kebijakan disetel ke Aktif, Aplikasi Web Kios dapat membuka jendela browser lain yang dapat ditempatkan di layar yang sama atau di layar yang berbeda. Untuk membuka jendela baru, Aplikasi Web harus memanggil fungsi JavaScript <ph name="OPEN_NEW_WINDOW_JS" />. + + Jika kebijakan disetel ke Nonaktif atau tidak disetel, Aplikasi Web Kios hanya dapat menggunakan jendela utama browser dan tidak dapat membuka jendela baru. Memanggil fungsi JavaScript untuk membuka jendela baru akan diabaikan.</translation> <translation id="4980635395568992380">Jenis data:</translation> <translation id="4983201894483989687">Izinkan menjalankan plugin yang kedaluwarsa</translation> <translation id="4986560318567565414">Jalur ke Chrome untuk beralih dari browser alternatif.</translation> @@ -6180,6 +6184,7 @@ Perlu diingat bahwa kebijakan ini bergantung pada tumpukan verifikasi sertifikat sistem operasi yang mengizinkan tanda tangan SHA-1. Jika pembaruan OS mengubah penanganan OS terkait sertifikat SHA-1, kebijakan ini mungkin tidak berlaku lagi. Selain itu, kebijakan ini dimaksudkan sebagai solusi sementara guna memberikan perusahaan lebih banyak waktu untuk beralih dari SHA-1. Kebijakan ini akan dihapus pada atau sekitar tanggal 1 Januari 2019. Jika kebijakan ini tidak disetel, atau disetel ke false, <ph name="PRODUCT_NAME" /> akan mengikuti jadwal penghentian SHA-1 yang diumumkan secara publik.</translation> +<translation id="7577082478271919056">Izinkan Aplikasi Web Kios membuka jendela browser lain</translation> <translation id="7578142001795552218">Kebijakan ini memberikan izin kepada fitur Jawaban Instan untuk mengakses konten yang dipilih dan mengirimkan info ke server untuk mendapatkan hasil konversi unit. Jika kebijakan ini disetel ke aktif atau tidak disetel, konversi unit Jawaban Instan akan diaktifkan. @@ -7281,21 +7286,6 @@ Pengguna dapat memicu dialog impor dan kotak centang histori penjelajahan akan dicentang atau dihapus centangnya agar cocok dengan nilai kebijakan ini.</translation> <translation id="8825154502356129120">Nonaktifkan autentikasi gnubby untuk host akses jarak jauh</translation> <translation id="8825782996899863372">Peringatan perlindungan sandi dipicu oleh penggunaan ulang sandi di halaman phishing</translation> -<translation id="8826172502287946476">Menyetel kebijakan akan menentukan daftar aplikasi dan ekstensi yang diinstal otomatis, tanpa interaksi pengguna, dan yang tidak dapat di-uninstal atau dinonaktifkan pengguna. Izin akan diberikan secara implisit, termasuk untuk API ekstensi enterprise.deviceAttributes dan enterprise.platformKeys. (Dua API ini tidak tersedia untuk aplikasi dan ekstensi yang tidak diinstal otomatis.) - - Jika kebijakan tidak disetel, tidak ada aplikasi atau ekstensi yang diinstal otomatis, dan pengguna dapat meng-uninstal aplikasi atau ekstensi apa pun di <ph name="PRODUCT_NAME" />. - - Kebijakan ini akan menggantikan kebijakan <ph name="EXTENSION_INSTALL_BLOCKLIST_POLICY_NAME" />. Jika aplikasi atau ekstensi yang sebelumnya diinstal otomatis dihapus dari daftar ini, <ph name="PRODUCT_NAME" /> akan otomatis meng-uninstal-nya. - - Di instance <ph name="MS_WIN_NAME" />, aplikasi dan ekstensi yang bukan dari Chrome Web Store hanya dapat diinstal otomatis jika instance dihubungkan ke domain <ph name="MS_AD_NAME" />, dijalankan di Windows 10 Pro, atau didaftarkan di Pengelolaan Cloud Browser Chrome. - - Di instance <ph name="MAC_OS_NAME" />, aplikasi dan ekstensi yang bukan dari Chrome Web Store hanya dapat diinstal otomatis jika instance dikelola melalui MDM, atau dihubungkan ke domain melalui MCX. - - Kode sumber ekstensi apa pun dapat diubah oleh pengguna melalui alat developer, yang berpotensi menyebabkan ekstensi tersebut tidak berfungsi lagi. Jika hal ini menjadi masalah, setel kebijakan <ph name="DEVELOPER_TOOLS_DISABLED_POLICY_NAME" />. - - Setiap item daftar kebijakan merupakan string yang berisi ID ekstensi dan, terkadang, URL "update" yang dipisahkan titik koma (;). ID ekstensi adalah string 32 huruf yang ditemukan, misalnya, di chrome://extensions saat dalam mode Developer. Jika ditentukan, URL "update" akan mengarah ke dokumen XML Manifes Update (https://developer.chrome.com/extensions/autoupdate). Secara default, URL update Chrome Web Store akan digunakan. URL "update" yang disetel dalam kebijakan ini hanya digunakan untuk penginstalan awal; update ekstensi berikutnya akan menggunakan URL update dalam manifes ekstensi. - - Catatan: Kebijakan ini tidak berlaku untuk mode Samaran. Baca tentang ekstensi hosting (https://developer.chrome.com/extensions/hosting).</translation> <translation id="8827275450034266143">String Agen Pengguna akan membekukan versi utama sebagai 99 dan menyertakan versi utama browser di posisi minor.</translation> <translation id="8827366480126575426">Protokol untuk pengendali protokol.</translation> <translation id="8827417642396462482">Izinkan jenis kueri DNS tambahan</translation> @@ -7689,6 +7679,7 @@ Catatan: Memblokir URL chrome://* internal dapat menyebabkan error tak terduga.</translation> <translation id="957778406002650056">URL tempat gambar <ph name="PLUGIN_VM_NAME" /> dapat didownload.</translation> +<translation id="958285142322823422">Larang Aplikasi Web Kios membuka jendela browser lain</translation> <translation id="958577147847681221">Mengontrol apakah <ph name="PRODUCT_OS_NAME" /> mengizinkan akun pengguna baru dibuat atau tidak. Jika kebijakan ini disetel ke salah (false), hanya pengguna yang ada di <ph name="DEVICE_USER_ALLOWLIST_POLICY_NAME" /> yang dapat login.
diff --git a/components/policy/resources/policy_templates_it.xtb b/components/policy/resources/policy_templates_it.xtb index f54d82e3..a3ffb85 100644 --- a/components/policy/resources/policy_templates_it.xtb +++ b/components/policy/resources/policy_templates_it.xtb
@@ -3186,6 +3186,7 @@ <translation id="4372704773119750918">Non permettere all'utente aziendale di far parte del profilo multiplo (principale o secondario)</translation> <translation id="4377599627073874279">Consenti la visualizzazione di tutte le immagini in tutti i siti</translation> <translation id="437791893267799639">Norma non impostata. Non consentire migrazione dei dati e ARC</translation> +<translation id="4380159792986204036">Consenti a un'app web kiosk di aprire più di una finestra del browser in qualsiasi schermata</translation> <translation id="4381227367939912539">Viene disattivato il gioco del dinosauro</translation> <translation id="4382413175336720282">Controllo degli URL in tempo reale disattivato.</translation> <translation id="4387741272680827493">La configurazione del criterio consente di specificare un elenco di nomi host che ignorano gli upgrade HSTS precaricati da http a https. @@ -3701,6 +3702,9 @@ Per informazioni dettagliate sui pattern URL validi, visita la pagina https://cloud.google.com/docs/chrome-enterprise/policies/url-patterns. <ph name="WILDCARD_VALUE" /> non è un valore accettato per questo criterio.</translation> <translation id="4978533099939732984">Mostra sempre gli avvisi relativi allo spazio su disco in esaurimento</translation> +<translation id="4979714585847741269">Se il criterio viene impostato su Attivato, un'app web kiosk può aprire un'altra finestra del browser che può essere posizionata sulla stessa schermata o su un'altra. Per aprire una nuova finestra, l'app web deve chiamare la funzione JavaScript di <ph name="OPEN_NEW_WINDOW_JS" />. + + Se il criterio viene impostato su Disattivato o se non viene configurato, un'app web kiosk può usare solo la finestra principale del browser e non può aprire una nuova finestra. Le chiamate a qualsiasi funzione JavaScript per l'apertura di una nuova finestra verranno ignorate.</translation> <translation id="4980635395568992380">Tipo di dati:</translation> <translation id="4983201894483989687">Consenti esecuzione dei plug-in obsoleti</translation> <translation id="4986560318567565414">Percorso a Chrome per cambiare il browser alternativo.</translation> @@ -6161,6 +6165,7 @@ Considera che questa norma dipende dallo stack di verifica dei certificati del sistema operativo che autorizza le firme SHA-1. Se un aggiornamento del sistema operativo modifica la gestione dei certificati SHA-1 da parte del sistema operativo, la norma potrebbe non essere più valida. Inoltre, questa norma è da considerarsi come soluzione alternativa temporanea per concedere alle aziende più tempo per l'abbandono della crittografia SHA-1. Questa norma verrà rimossa il 1° gennaio 2019 o intorno a quella data. Se questa norma non viene impostata o se viene impostata su false, <ph name="PRODUCT_NAME" /> seguirà il programma di ritiro della crittografia SHA-1 pubblicamente annunciato.</translation> +<translation id="7577082478271919056">Consenti a un'app web kiosk di aprire un'altra finestra del browser</translation> <translation id="7578142001795552218">Questo criterio consente di autorizzare Risposte rapide ad accedere ai contenuti selezionati e a inviare le informazioni al server per ricevere i risultati della conversione delle unità. Se il criterio è attivato o non impostato, la funzionalità di conversione delle unità di Risposte rapide sarà attiva. @@ -7258,21 +7263,6 @@ Gli utenti possono attivare una finestra di dialogo per l'importazione e la casella di controllo della cronologia di navigazione verrà selezionata o deselezionata in modo che corrisponda al valore del criterio.</translation> <translation id="8825154502356129120">Disattiva l'autenticazione Gnubby per l'host di accesso remoto</translation> <translation id="8825782996899863372">L'avviso di protezione tramite password viene attivato se vengono riutilizzate password in pagine di phishing</translation> -<translation id="8826172502287946476">La configurazione del criterio consente di specificare un elenco di app ed estensioni installate automaticamente, senza interazione dell'utente, e che non possono essere disinstallate o disattivate dagli utenti. Le autorizzazioni vengono concesse implicitamente, anche quelle relative alle API delle estensioni enterprise.deviceAttributes ed enterprise.platformKeys. Queste due API non sono disponibili per le app e le estensioni senza installazione forzata. - - Se il criterio non viene configurato, nessuna app o estensione viene installata automaticamente e gli utenti possono disinstallare qualsiasi app o estensione in <ph name="PRODUCT_NAME" />. - - Questo criterio prevale sul criterio <ph name="EXTENSION_INSTALL_BLOCKLIST_POLICY_NAME" />. Se un'app o un estensione di cui è stata precedentemente forzata l'installazione viene rimossa da questo elenco, tali app o estensioni vengono disinstallate automaticamente da <ph name="PRODUCT_NAME" />. - - Sulle istanze di <ph name="MS_WIN_NAME" />, è possibile forzare l'installazione di app ed estensioni che non fanno parte del Chrome Web Store soltanto se l'istanza fa parte di un dominio <ph name="MS_AD_NAME" />, è in esecuzione su Windows 10 Pro o è registrata in Chrome Browser Cloud Management. - - Sulle istanze di <ph name="MAC_OS_NAME" />, è possibile forzare l'installazione di app ed estensioni che non fanno parte del Chrome Web Store soltanto se l'istanza viene gestita tramite MDM o aggiunta a un dominio tramite MCX. - - Il codice sorgente di qualsiasi estensione può essere modificato dagli utenti tramite lo strumento per sviluppatori, causando potenzialmente il malfunzionamento dell'estensione. Per evitare un problema di questo tipo, imposta il criterio <ph name="DEVELOPER_TOOLS_DISABLED_POLICY_NAME" />. - - Ogni elemento nell'elenco del criterio è una stringa contenente un ID estensione e, facoltativamente, un URL "di aggiornamento" separati da punto e virgola (;). L'ID estensione è la stringa di 32 lettere che si trova, ad esempio, all'indirizzo chrome://extensions quando è attiva la modalità sviluppatore. Se specificato, l'URL "di aggiornamento" deve indirizzare a un documento XML manifest di aggiornamento (https://developer.chrome.com/extensions/autoupdate). Per impostazione predefinita, viene utilizzato l'URL di aggiornamento del Chrome Web Store. L'URL "di aggiornamento" impostato in questo criterio viene utilizzato esclusivamente per l'installazione iniziale; per i successivi aggiornamenti dell'estensione viene utilizzato l'URL di aggiornamento nel file manifest dell'estensione. - - Nota: questo criterio non viene applicato alla Modalità di navigazione in incognito. Leggi ulteriori informazioni sull'hosting delle estensioni (https://developer.chrome.com/extensions/hosting).</translation> <translation id="8827275450034266143">La stringa dello user agent bloccherà la versione principale a 99 e includerà la versione principale del browser nella posizione secondaria.</translation> <translation id="8827366480126575426">Il protocollo del gestore di protocollo.</translation> <translation id="8827417642396462482">Sono consentiti tipi di query DNS aggiuntivi</translation> @@ -7665,6 +7655,7 @@ Nota: il blocco degli URL chrome://* interni può generare errori imprevisti.</translation> <translation id="957778406002650056">L'URL da cui è possibile scaricare l'immagine <ph name="PLUGIN_VM_NAME" />.</translation> +<translation id="958285142322823422">Impedisci l'apertura di un'altra finestra del browser da un'app web kiosk</translation> <translation id="958577147847681221">Consente di stabilire se <ph name="PRODUCT_OS_NAME" /> permette la creazione di nuovi account utente. Se il criterio è impostato su Falso, solo gli utenti presenti nella lista consentita <ph name="DEVICE_USER_ALLOWLIST_POLICY_NAME" /> potranno eseguire l'accesso.
diff --git a/components/policy/resources/policy_templates_ja.xtb b/components/policy/resources/policy_templates_ja.xtb index e4f0ddd1..664f568b 100644 --- a/components/policy/resources/policy_templates_ja.xtb +++ b/components/policy/resources/policy_templates_ja.xtb
@@ -3023,6 +3023,7 @@ <translation id="4372704773119750918">マルチプロフィール(プライマリまたはセカンダリ)への参加を企業ユーザーに許可しない</translation> <translation id="4377599627073874279">すべてのサイトに対してすべての画像表示を許可する</translation> <translation id="437791893267799639">ポリシー未設定、データ移行と ARC を許可しない</translation> +<translation id="4380159792986204036">ウェブキオスクが任意の画面で複数のブラウザ ウィンドウを開くことを許可する</translation> <translation id="4381227367939912539">恐竜のイースター エッグゲームを無効にする</translation> <translation id="4382413175336720282">リアルタイムの URL チェックが無効。</translation> <translation id="4387741272680827493">このポリシーでは、プリロードされた、HTTP から HTTPS への HSTS アップグレードを回避するホスト名のリストを指定できます。 @@ -3510,6 +3511,8 @@ 有効な URL パターンについて詳しくは、https://cloud.google.com/docs/chrome-enterprise/policies/url-patterns をご覧ください。このポリシーの値に「<ph name="WILDCARD_VALUE" />」は使用できません。</translation> <translation id="4978533099939732984">ディスクの空き容量不足を常に通知する</translation> +<translation id="4979714585847741269">このポリシーを有効に設定した場合、キオスク ウェブアプリは別のブラウザ ウィンドウを開くことができます。このウィンドウは、同じ画面または別の画面に配置できます。新しいウィンドウを開くには、ウェブアプリで JavaScript の <ph name="OPEN_NEW_WINDOW_JS" /> 関数を呼び出します。 + このポリシーを無効に設定するか未設定のままにした場合、キオスク ウェブアプリはメインのブラウザ ウィンドウのみを使用し、新しいウィンドウを開くことはできません。新しいウィンドウを開くために JavaScript 関数を呼び出しても、無視されます。</translation> <translation id="4980635395568992380">データ タイプ:</translation> <translation id="4983201894483989687">古いプラグインの実行を許可する</translation> <translation id="4986560318567565414">代替ブラウザから Chrome への切り替えに使用するパスです。</translation> @@ -5811,6 +5814,7 @@ ただし、このポリシーは SHA-1 署名を許可するオペレーティング システムの証明書検証スタックにより異なります。OS のアップデートにより SHA-1 署名証明書を処理する OS が変更になると、このポリシーは効力を失います。さらに、このポリシーは一時的な措置として企業に SHA-1 から移行するための猶予期間を与えることを目的としています。このポリシーは 2019 年 1 月 1 日をめどに削除される予定です。 このポリシーが未設定の場合、または false に設定されている場合、<ph name="PRODUCT_NAME" /> は発表された SHA-1 のサポート終了のスケジュールに従います。</translation> +<translation id="7577082478271919056">キオスク ウェブアプリで別のブラウザ ウィンドウを開くことを許可する</translation> <translation id="7578142001795552218">このポリシーでは、クイック アンサーで単位変換の結果を取得する際に、選択したコンテンツへのアクセスとサーバーへの情報送信を許可します。 このポリシーを有効にした場合、または設定しない場合、クイック アンサーの単位変換が有効になります。 @@ -6862,21 +6866,6 @@ ユーザーはインポート ダイアログを表示できます。このとき、閲覧履歴のチェックボックスは、このポリシーの値に合わせてオンまたはオフになります。</translation> <translation id="8825154502356129120">リモート アクセスホストの gnubby 認証を無効にする</translation> <translation id="8825782996899863372">フィッシング ページでパスワードが再使用されたときに、パスワード保護について警告する</translation> -<translation id="8826172502287946476">このポリシーを設定することで、ユーザーに操作を求めずにサイレント インストールするアプリと拡張機能のリストを指定します。ユーザーは、ここで指定されたアプリや拡張機能をアンインストールすることも無効化することもできません。権限は、enterprise.deviceAttributes 拡張機能 API と enterprise.platformKeys 拡張機能 API に対するものを含め、暗黙的に付与されます(これら 2 つの API は、強制的にインストールされたアプリや拡張機能以外には利用できません)。 - - このポリシーが未設定の場合、どのアプリや拡張機能も自動的にインストールされることはなく、ユーザーは <ph name="PRODUCT_NAME" /> からアプリや拡張機能をアンインストールできます。 - - このポリシーは <ph name="EXTENSION_INSTALL_BLOCKLIST_POLICY_NAME" /> ポリシーに優先します。以前に強制的にインストールされたアプリまたは拡張機能をこのリストから削除すると、そのアプリや拡張機能は <ph name="PRODUCT_NAME" /> から自動的にアンインストールされます。 - - <ph name="MS_WIN_NAME" /> では、Chrome ウェブストア以外のアプリと拡張機能は、<ph name="MS_AD_NAME" /> ドメインに追加されたインスタンス、Windows 10 Pro で実行されているインスタンス、Chrome ブラウザ クラウド管理に登録されているインスタンスでのみ、自動インストールされます。 - - <ph name="MAC_OS_NAME" /> では、Chrome ウェブストア以外のアプリと拡張機能は、MDM を介して管理されるか MCX を介してドメインに追加されたインスタンスでのみ、自動インストールされます。 - - どの拡張機能についても、ユーザーはデベロッパー ツールを使用してソースコードを変更できます(その場合、拡張機能が機能しなくなることがあります)。こうした変更を禁止するには、<ph name="DEVELOPER_TOOLS_DISABLED_POLICY_NAME" /> ポリシーを設定してください。 - - このポリシーの各リスト項目には、拡張機能 ID と「更新」URL(省略可)をセミコロン(;)で区切った文字列を指定します。拡張機能 ID は 32 文字の文字列で、たとえばデベロッパー モードで chrome://extensions を開くと確認できます。「更新」URL を指定する場合は、更新マニフェスト XML ドキュメントを指定する必要があります(https://developer.chrome.com/extensions/autoupdate)。デフォルトでは Chrome ウェブストアの更新 URL が使用されます。このポリシーで設定した「更新」URL は初回のインストールでのみ使用され、その後の拡張機能の更新には、拡張機能のマニフェストで指定した更新 URL が使用されます。 - - 注: このポリシーはシークレット モードには適用されません。拡張機能のホスティングについてご確認ください(https://developer.chrome.com/extensions/hosting)。</translation> <translation id="8827275450034266143">ユーザー エージェント文字列のメジャー バージョンを 99 に固定し、ブラウザのメジャー バージョンをマイナー ポジションに含める。</translation> <translation id="8827366480126575426">プロトコル ハンドラで使用するプロトコルです。</translation> <translation id="8827417642396462482">その他の DNS クエリタイプを許可する</translation> @@ -7269,6 +7258,7 @@ 注: 「chrome://*」の内部 URL をブロックすると、予期しないエラーが発生する可能性があります。</translation> <translation id="957778406002650056"><ph name="PLUGIN_VM_NAME" /> 画像をダウンロードすることのできる URL です。</translation> +<translation id="958285142322823422">キオスク ウェブアプリで別のブラウザ ウィンドウを開くことを禁止する</translation> <translation id="958577147847681221"><ph name="PRODUCT_OS_NAME" /> で新しいユーザー アカウントの作成を許可するかどうかを管理します。 このポリシーを false に設定した場合、<ph name="DEVICE_USER_ALLOWLIST_POLICY_NAME" /> に登録されているユーザーのみログインできます。
diff --git a/components/policy/resources/policy_templates_ko.xtb b/components/policy/resources/policy_templates_ko.xtb index 5f17b913..e59849e 100644 --- a/components/policy/resources/policy_templates_ko.xtb +++ b/components/policy/resources/policy_templates_ko.xtb
@@ -3195,6 +3195,7 @@ <translation id="4372704773119750918">기업 사용자가 멀티 프로필에 포함되도록 허용하지 않음(기본 또는 보조)</translation> <translation id="4377599627073874279">모든 사이트에서 모든 이미지를 표시하도록 허용</translation> <translation id="437791893267799639">정책이 설정되지 않음, 데이터 이전 및 ARC 허용 안함</translation> +<translation id="4380159792986204036">웹 키오스크가 어느 화면에서나 두 개 이상의 브라우저 창을 열도록 허용</translation> <translation id="4381227367939912539">공룡 이스터 에그 게임 사용 중지</translation> <translation id="4382413175336720282">실시간 URL 확인이 사용 중지되었습니다.</translation> <translation id="4387741272680827493">정책을 설정하면 미리 로드된 HSTS를 http에서 https로 업그레이드하지 않도록 우회할 호스트 이름의 목록이 지정됩니다. @@ -3704,6 +3705,9 @@ 유효한 URL 패턴을 자세히 알아보려면 https://cloud.google.com/docs/chrome-enterprise/policies/url-patterns를 참고하세요. <ph name="WILDCARD_VALUE" />는 이 정책에 허용되는 값이 아닙니다.</translation> <translation id="4978533099939732984">디스크 공간 부족 경고 항상 표시</translation> +<translation id="4979714585847741269">정책을 사용으로 설정하면 키오스크 웹 앱에서 브라우저 창을 새로 열어 동일한 화면이나 다른 화면에 띄울 수 있습니다. 새 창을 열려면 웹 앱에서 <ph name="OPEN_NEW_WINDOW_JS" /> 자바스크립트 함수를 호출해야 합니다. + + 정책을 사용 안함으로 설정하거나 설정하지 않으면 키오스크 웹 앱에서 기본 브라우저 창만 사용할 수 있으며 새 창을 열 수 없습니다. 새 창을 열기 위한 자바스크립트 함수 호출은 무시됩니다.</translation> <translation id="4980635395568992380">데이터 유형:</translation> <translation id="4983201894483989687">오래된 플러그인 실행 허용</translation> <translation id="4986560318567565414">다른 브라우저에서 Chrome으로 전환하기 위한 경로입니다.</translation> @@ -6162,6 +6166,7 @@ 이 정책은 SHA-1 서명을 허용하는 운영체제 인증서 확인 스택에 따라 다릅니다. OS 업데이트가 SHA-1 인증서의 OS 처리를 변경하는 경우 이 정책은 더 이상 유효하지 않을 수 있습니다. 또한 이 정책은 기업에게 SHA-1에서 전환할 시간을 부여하는 임시 해결 방법으로 활용됩니다. 이 정책은 2019년 1월 1일쯤 삭제될 예정입니다. 이 정책이 설정되지 않았거나 false로 설정된 경우 <ph name="PRODUCT_NAME" />은(는) 공개적으로 발표한 SHA-1 사용 중단 일정을 따릅니다.</translation> +<translation id="7577082478271919056">키오스크 웹 앱에서 브라우저 창을 새로 열도록 허용</translation> <translation id="7578142001795552218">이 정책은 선택한 콘텐츠에 액세스하고 단위 변환 결과를 얻기 위해 정보를 서버로 보낼 권한을 빠른 답변에 부여합니다. 정책을 사용 설정하거나 설정하지 않으면 빠른 답변 단위 변환이 사용 설정됩니다. @@ -7269,21 +7274,6 @@ 사용자는 가져오기 대화상자를 트리거할 수 있으며 '방문 기록' 체크박스가 이 정책의 값에 맞게 선택되거나 선택 해제됩니다.</translation> <translation id="8825154502356129120">원격 액세스 호스트의 gnubby 인증 사용 중지</translation> <translation id="8825782996899863372">피싱 페이지에서 비밀번호가 재사용되어 비밀번호 보호 경고가 실행됨</translation> -<translation id="8826172502287946476">이 정책을 설정하면 사용자 상호작용 없이 자동으로 설치되는 앱 및 확장 프로그램 목록이 지정되며, 사용자가 제거하거나 사용 중지할 수 없습니다. enterprise.deviceAttributes 및 enterprise.platformKeys 확장 프로그램 API의 권한을 비롯한 권한은 암시적으로 부여됩니다. (이 2개의 API는 강제 설치되지 않은 앱과 확장 프로그램에서 사용 가능합니다.) - - 정책을 설정하지 않으면 앱과 확장 프로그램이 자동 설치되지 않으며 사용자는 <ph name="PRODUCT_NAME" />에서 모든 앱 또는 확장 프로그램을 제거할 수 있습니다. - - 이 정책은 <ph name="EXTENSION_INSTALL_BLOCKLIST_POLICY_NAME" /> 정책을 대체합니다. 기존에 강제 설치된 앱 또는 확장 프로그램은 이 목록에서 삭제되며 <ph name="PRODUCT_NAME" />에 의해 자동으로 제거됩니다. - - <ph name="MS_WIN_NAME" /> 인스턴스에서 인스턴스가 <ph name="MS_AD_NAME" /> 도메인에 연결되었거나 Windows 10 Pro에서 실행되거나 Chrome 브라우저 클라우드 관리에 등록된 경우에만 Chrome 웹 스토어 외부의 앱 및 확장 프로그램이 강제로 설치될 수 있습니다. - - <ph name="MAC_OS_NAME" /> 인스턴스에서 인스턴스가 MDM을 통해 관리되거나 MCX를 통해 도메인에 연결된 경우에만 Chrome 웹 스토어 외부의 앱 및 확장 프로그램이 강제 설치될 수 있습니다. - - 모든 확장 프로그램의 소스 코드는 사용자가 개발자 도구를 통해 변경 가능하며, 이 과정에서 확장 프로그램 오작동이 발생할 수 있습니다. 이 점이 우려된다면 <ph name="DEVELOPER_TOOLS_DISABLED_POLICY_NAME" /> 정책을 설정하세요. - - 정책의 각 목록 항목은 세미콜론(;)으로 구분된 확장 프로그램 ID 및 '업데이트' URL(선택사항)로 구성된 문자열입니다. 확장 프로그램 ID는 32자리 문자열로, 예를 들어 개발자 모드일 때 chrome://extensions에서 확인할 수 있습니다. '업데이트' URL을 지정하는 경우 업데이트 매니페스트 XML 문서(https://developer.chrome.com/extensions/autoupdate)로 연결되어야 합니다. 기본적으로 Chrome 웹 스토어의 업데이트 URL이 사용됩니다. 정책에 설정된 '업데이트' URL은 최초 설치 시에만 사용되며 향후 확장 프로그램 업데이트에서는 확장 프로그램 매니페스트에 있는 업데이트 URL이 사용됩니다. - - 참고: 이 정책은 시크릿 모드에는 적용되지 않습니다. 확장 프로그램 호스팅에 관해 자세히 알아보세요(https://developer.chrome.com/extensions/hosting).</translation> <translation id="8827275450034266143">사용자 에이전트 문자열이 메이저 버전을 99로 고정하며 마이너 위치에 브라우저의 메이저 버전을 포함합니다.</translation> <translation id="8827366480126575426">프로토콜 핸들러의 프로토콜입니다.</translation> <translation id="8827417642396462482">추가적인 DNS 쿼리 유형 허용</translation> @@ -7685,6 +7675,7 @@ 참고: 내부 chrome://* URL을 차단하면 예기치 못한 오류가 발생할 수 있습니다.</translation> <translation id="957778406002650056"><ph name="PLUGIN_VM_NAME" /> 이미지를 다운로드할 수 있는 URL입니다.</translation> +<translation id="958285142322823422">키오스크 웹 앱에서 다른 브라우저 창을 열지 못하도록 차단</translation> <translation id="958577147847681221"><ph name="PRODUCT_OS_NAME" />에서 새 사용자 계정이 생성되도록 허용할지 제어합니다. 이 정책을 False로 설정하면 <ph name="DEVICE_USER_ALLOWLIST_POLICY_NAME" />에 있는 사용자만 로그인할 수 있습니다.
diff --git a/components/policy/resources/policy_templates_nl.xtb b/components/policy/resources/policy_templates_nl.xtb index e68dcbd3..fb3bf37 100644 --- a/components/policy/resources/policy_templates_nl.xtb +++ b/components/policy/resources/policy_templates_nl.xtb
@@ -1070,6 +1070,7 @@ Als je het beleid toepast of niet instelt, wordt Definitie van Snelle antwoorden aangezet. Als je het beleid niet toepast, wordt Definitie van Snelle antwoorden uitgezet.</translation> <translation id="209586405398070749">Stabiel kanaal</translation> +<translation id="2096932573113293941">De gebruiker om toestemming vragen om plug-ins uit te voeren waarvoor machtiging is vereist</translation> <translation id="2098658257603918882">Rapportage van gebruiks- en crashgegevens aanzetten</translation> <translation id="2104418465060359056">Gegevens over extensies en plug-ins rapporteren</translation> <translation id="2106627642643925514">Hiermee wordt de standaardmodus voor afdrukken met pincode overschreven. Als de modus niet beschikbaar is, wordt dit beleid genegeerd.</translation> @@ -1198,6 +1199,7 @@ <translation id="2223393221350938149">Niet toestaan dat sites JavaScript JIT uitvoeren</translation> <translation id="2223582957891074498">Als je het beleid instelt op 'True', kunnen er geen screenshots worden gemaakt via sneltoetsen of extensie-API's. Als je het beleid instelt op 'False', zijn screenshots toegestaan.</translation> <translation id="2223598546285729819">Standaardinstelling voor meldingen</translation> +<translation id="222673035924187991">ClientHallo met TLS-versleuteling aanzetten</translation> <translation id="2231726854197443389">Met dit beleid wordt bepaald of gebruikers de modus 'Alleen HTTPS' kunnen aanzetten in de instellingen. Met de modus 'Alleen HTTPS' worden alle navigaties naar HTTPS geüpgraded. Als deze instelling niet is ingesteld of is ingesteld op Toegestaan, kunnen gebruikers de modus 'Alleen HTTPS' aanzetten. Als deze instelling is ingesteld op 'Niet toegestaan', kunnen gebruikers de modus 'Alleen HTTPS' niet aanzetten. @@ -1317,6 +1319,7 @@ <translation id="2349117476121456297">Als dit beleid wordt ingesteld op True, fungeert de bovenste rij toetsen van het toetsenbord als functietoetsopdrachten. De zoektoets moet worden ingedrukt om het gedrag terug te zetten naar mediatoetsen. Als dit beleid wordt ingesteld op False of niet wordt ingesteld, voert het toetsenbord standaard mediatoetsopdrachten uit. De zoektoets moet worden ingedrukt om ze te wijzigen in functietoetsen.</translation> +<translation id="2354439478396602136">App-aanbevelingen laten zien in de <ph name="PRODUCT_OS_NAME" />-launcher</translation> <translation id="2355876547176311490">Relayservers niet laten gebruiken door de host voor externe toegang</translation> <translation id="2358176879566587521">Dit beleid is verwijderd. Het werkt niet met deze versie van <ph name="PRODUCT_NAME" />. Ga naar https://support.google.com/chrome/a/answer/7643500 voor meer informatie</translation> <translation id="2362469626417133796">Tijdvenster voor herstarten</translation> @@ -1543,6 +1546,7 @@ Gebruikers kunnen de mappen waarin de bookmarks zijn geplaatst niet wijzigen (maar ze kunnen deze wel verbergen via de bookmarkbalk). De standaard mapnaam voor beheerde bookmarks is 'Beheerde bookmarks' maar je kunt deze naam wijzigen door een nieuw subwoordenboek aan het beleid toe te voegen met één sleutel met de naam '<ph name="TOPLEVEL_NAME" />' en met de gewenste map als waarde. Beheerde bookmarks worden niet gesynchroniseerd met het gebruikersaccount en kunnen niet worden gewijzigd via extensies.</translation> <translation id="2552966063069741410">Tijdzone</translation> <translation id="2555244983262829274">De startknop verbergen op de werkbalk</translation> +<translation id="2562213287271514629">Toestaan dat verouderde <ph name="FLASH_PLUGIN_NAME" /> wordt gebruikt als normale <ph name="FLASH_PLUGIN_NAME" /></translation> <translation id="2562339630163277285">Hiermee kun je de URL opgeven van de zoekmachine die wordt gebruikt om instantresultaten te leveren. De URL moet de tekenreeks <ph name="SEARCH_TERM_MARKER" /> bevatten. Deze tekenreeks wordt op het moment van de zoekopdracht vervangen door de tekst die de gebruiker tot op dat moment heeft getypt. Dit beleid is optioneel. Als het beleid niet is ingesteld, worden er geen instantresultaten geleverd. @@ -1587,6 +1591,7 @@ <translation id="2593762551209145088">Safe Browsing is nooit actief.</translation> <translation id="26023406105317310">Kerberos-accounts configureren</translation> <translation id="2604182581880595781">Beleid met betrekking tot Network File Shares configureren.</translation> +<translation id="2608039968712973520">De gebruiker om toestemming vragen voordat verouderde <ph name="FLASH_PLUGIN_NAME" /> wordt uitgevoerd</translation> <translation id="2608535066974278204">Periode (minuten) die de duur van het tijdvenster voor herstarten aangeeft.</translation> <translation id="2608887839902987727">Voorkomen dat captive portal-verificatie proxyinstellingen negeert</translation> <translation id="2608985885792348429">Standaard klembordinstelling</translation> @@ -1638,6 +1643,7 @@ Dit beleid is verwijderd in M77. Dit beleid is van toepassing op het inlogscherm. Raadpleeg ook het beleid <ph name="SITE_PER_PROCESS_POLICY_NAME" /> dat van toepassing is op de gebruikerssessie. Het wordt aangeraden beide beleidsregels op dezelfde waarde in te stellen. Als de waarden niet overeenkomen, kan er bij het starten van een gebruikerssessie terwijl de door het gebruikersbeleid gespecificeerde waarde wordt toegepast, een vertraging optreden. </translation> +<translation id="2697717608663878828">Het ClientHallo-experiment met TLS-versleuteling aanzetten</translation> <translation id="2702023190395322609">Media-aanbevelingen aanzetten</translation> <translation id="270582584528242502">Geen waarschuwingsdialoogvenster tonen als de gebruiker probeert de browser te sluiten</translation> <translation id="2706708761587205154">Afdrukken alleen toestaan met pincode</translation> @@ -2233,6 +2239,7 @@ <translation id="3255762580838224124">Als je het beleid instelt, wordt elk scherm naar de opgegeven stand gedraaid: elke keer dat er opnieuw wordt opgestart en de eerste keer dat het scherm wordt verbonden nadat de beleidswaarde is gewijzigd. Gebruikers kunnen na inloggen de rotatie van het scherm wijzigen op de pagina met instellingen, maar de rotatie wordt bij de volgende keer opnieuw opstarten weer teruggezet. Dit beleid is van toepassing op primaire en secundaire schermen. Als je het beleid niet instelt, is de standaardwaarde 0 graden en kunnen gebruikers dit wijzigen. In dat geval wordt de standaardwaarde niet opnieuw toegepast bij opnieuw opstarten.</translation> +<translation id="3258380413685430793">Alle <ph name="FLASH_PLUGIN_NAME" />-content uitvoeren</translation> <translation id="325883417142483505">Als je het beleid instelt, wordt de lijst met zakelijke login-URL's (alleen HTTP- en HTTPS-protocollen) ingesteld. De service voor wachtwoordbeveiliging legt salted hashes van wachtwoorden op deze URL's vast en gebruikt ze om hergebruik van wachtwoorden te detecteren. Zorg dat je inlogpagina's voldoen aan de richtlijnen op https://www.chromium.org/developers/design-documents/create-amazing-password-forms, zodat <ph name="PRODUCT_NAME" /> de salted hashes van wachtwoorden juist worden vastgelegd. Als je deze instelling uitzet of niet instelt, legt de service voor wachtwoordbeveiliging salted hashes van wachtwoorden alleen vast op https://accounts.google.com. @@ -2297,6 +2304,7 @@ Opmerking: Lees meer informatie over het beleid voor procesbeperking (https://chromium.googlesource.com/chromium/src/+/HEAD/docs/design/sandbox.md#Process-mitigation-policies).</translation> <translation id="3339271789059866414">Configureert de beschikbaarheid van de systeemproxyservice en de proxygegevens voor systeemservices. Als het beleid niet is ingesteld, is de systeemproxyservice niet beschikbaar.</translation> +<translation id="334231891933432876">De gebruiker uitloggen zodra de verificatie van het account is ingetrokken</translation> <translation id="3348799281602260763">Als het beleid is toegepast, kunnen WebRTC-peerverbindingen worden gedowngraded naar verouderde versies van de TLS/DTLS-protocollen (DTLS 1.0, TLS 1.0 en TLS 1.1). Als dit beleid niet is toegepast of niet is ingesteld, worden deze TLS/DTLS-versies uitgezet. @@ -2336,6 +2344,7 @@ Als je het beleid niet instelt, betekent dit dat 0 milliseconden wordt gebruikt voor de time-out. Als het beleid <ph name="DEVICE_LOCAL_ACCOUNT_AUTO_LOGIN_ID_POLICY_NAME" /> niet is ingesteld, heeft dit beleid geen effect.</translation> +<translation id="3397883909301547525">Geen app-aanbevelingen laten zien in de <ph name="PRODUCT_OS_NAME" />-launcher</translation> <translation id="3399859571630358395">Snel koppelen (snelle bluetooth-koppeling) geforceerd uitzetten.</translation> <translation id="341285788698114069">Met dit beleid bepaal je de prioriteit van het audioproces in Windows. Als je dit beleid toepast, wordt het audioproces uitgevoerd met een hogere prioriteit dan normaal. @@ -2414,6 +2423,7 @@ De beschikbaarheid van deze functionaliteit is ook afhankelijk van het bijbehorende gebruikersbeleid.</translation> <translation id="3495602011142234826">Als je dit instelt op True, kan deze extensie alle sleutels voor zakelijk gebruik gebruiken om willekeurige gegevens te ondertekenen. Als je dit instelt op False, heeft de extensie geen toegang tot dergelijke sleutels en kan de gebruiker deze toegang ook niet geven. Als uitzondering kan een extensie precies 1 keer toegang krijgen tot een dergelijke sleutel als dezelfde extensie die sleutel heeft gegenereerd.</translation> <translation id="3496296378755072552">Wachtwoordmanager</translation> +<translation id="3496761649331792755">Bookmarkbalk aanzetten</translation> <translation id="3498109920669229084">Als je het beleid instelt, geef je aan welke extensies niet onder de blokkeringslijst vallen. De waarde <ph name="ALL_EXTENSIONS" /> op de blokkeringslijst betekent dat alle extensies worden geblokkeerd. Gebruikers kunnen alleen extensies installeren die op de toelatingslijst staan. @@ -3237,6 +3247,7 @@ <translation id="449423975179525290">Aan <ph name="PLUGIN_VM_NAME" /> gerelateerd beleid configureren.</translation> <translation id="449784980858429908">Automatisch rechten aan sites geven om verbinding te maken met alle seriële poorten.</translation> <translation id="450080746522343150">Alle downloads blokkeren.</translation> +<translation id="45036050223225148">Het ClientHallo-experiment met TLS-versleuteling uitzetten</translation> <translation id="4508728400492074981">Beheert het beleid voor de functie First-Party Sets.</translation> <translation id="4510923771103268849">De gebruiker heeft toestemming voor roottoegang tot Crostini-containers</translation> <translation id="4512407512989846472">Staat toe dat het kopiëren naar het klembord voor gespecificeerde URL's wordt geblokkeerd</translation> @@ -3273,6 +3284,7 @@ Als dit beleid niet is ingesteld, kan de gebruiker alle op het systeem geïnstalleerde plug-ins uitzetten.</translation> <translation id="4549405078915181477">Schermtijd aanzetten voor websites</translation> <translation id="4554651132977135445">Loopback-verwerkingsmodus voor gebruikersbeleid</translation> +<translation id="4554991346503872538">Nooit een vertaling aanbieden</translation> <translation id="4555850956567117258">Externe bevestiging van gebruiker aanzetten</translation> <translation id="4557134566541205630">URL van standaard zoekprovider voor nieuwe tabbladpagina</translation> <translation id="4558166110367609724">De servicevoorwaarden worden automatisch overgeslagen en de browser wordt geladen.</translation> @@ -3716,6 +3728,7 @@ <translation id="5109383437323376357">De beschikbaarheid van varianten bepalen</translation> <translation id="5124368997194894978">Opstarten bij netstroom (wisselstroom) aanzetten</translation> <translation id="5130213897914754028">Voorkomen dat sites SharedArrayBuffers gebruiken</translation> +<translation id="5130935469849337738">Altijd een vertaling aanbieden</translation> <translation id="5141670636904227950">Standaardtype van vergrootglas voor inlogscherm instellen</translation> <translation id="5142301680741828703">De volgende URL-patronen altijd verwerken in <ph name="PRODUCT_FRAME_NAME" /></translation> <translation id="5143258831402123447">Trajecten zijn niet zichtbaar op chrome://history/journeys.</translation> @@ -3848,6 +3861,7 @@ Als je dit beleid instelt op <ph name="POLICY_VALUE_PRIMARY_ACCOUNT_SIGNIN" /> voor een account, mag dit account alleen inloggen als primair account. Het mag niet inloggen als secundair account.</translation> <translation id="523505283826916779">Toegankelijkheidsinstellingen</translation> +<translation id="5238275681097851753">Toestaan dat bepaalde <ph name="FLASH_PLUGIN_NAME" />-content wordt geblokkeerd</translation> <translation id="5238976843489093540">Snel koppelen (snelle bluetooth-koppeling) geforceerd aanzetten.</translation> <translation id="52393120393725840">Als je het beleid toepast, kunnen gebruikers <ph name="PRODUCT_NAME" /> wachtwoorden opslaan en gebruiken als ze opnieuw inloggen op een site. @@ -3914,6 +3928,7 @@ Als je het beleid niet instelt, kunnen gebruikers de game niet spelen op ingeschreven <ph name="PRODUCT_OS_NAME" />, maar wel onder andere omstandigheden.</translation> <translation id="529457411593078576">Servicevoorwaarden aanzetten tijdens eerste uitvoering voor CCT</translation> +<translation id="5297948043665200363">Toestaan dat de gebruiker ingelogd blijft nadat de verificatie van het account is ingetrokken</translation> <translation id="5298949392804966105">Geen beperkingen voor beheerde accounts</translation> <translation id="530134925949808452">De tijd van de dag in lokale tijd wanneer het gebruiksquotum wordt vernieuwd.</translation> <translation id="5303080953475303561">Met dit beleid stel je in hoe vaak het vergrendelscherm om het wachtwoord voor snel ontgrendelen vraagt. Elke keer dat het vergrendelscherm wordt getoond en de laatste wachtwoordinvoer plaatsvond vóór de periode die is gespecificeerd door de gekozen waarde, is snel ontgrendelen niet beschikbaar. Als gebruikers na deze periode op het vergrendelscherm blijven, worden ze de volgende keer dat ze een verkeerde code opgeven of het vergrendelscherm opnieuw openen (afhankelijk van wat als eerste gebeurt) om het wachtwoord gevraagd. @@ -4502,6 +4517,13 @@ Voor <ph name="MS_WIN_NAME" /> en <ph name="MAC_OS_NAME" /> heeft dit beleid alleen invloed als <ph name="PRINT_PDF_AS_IMAGE_AVAILABILITY_POLICY_NAME" /> ook aanstaat.</translation> <translation id="5932767795525445337">Dit beleid kan ook worden gebruikt om Android-apps vast te zetten.</translation> +<translation id="5936193585187054065">Versleutelde ClientHallo (Encrypted ClientHello, ECH) is een extensie voor TLS waarmee gevoelige velden van de ClientHello kunnen worden versleuteld en de privacy kan worden verbeterd. + + Als je dit beleid niet instelt of als je het aanzet, volgt <ph name="PRODUCT_NAME" /> het standaard uitrolproces voor ECH. Als het beleid uitstaat, zet <ph name="PRODUCT_NAME" /> ECH niet aan. + + Als de functie aanstaat, kan <ph name="PRODUCT_NAME" /> ECH wel of niet gebruiken, afhankelijk van de serversupport, beschikbaarheid van de HTTPS DNS-record of uitrolstatus. + + ECH is een protocol dat nog in ontwikkeling is, dus de implementatie van <ph name="PRODUCT_NAME" /> kan veranderen. Dit beleid is daarom een tijdelijke maatregel om de eerste experimentele implementatie te beheren. Het wordt vervangen door definitieve beheeropties zodra het protocol is afgerond.</translation> <translation id="5939656968921014919">Ontwikkelaarsmodus voor geïsoleerde apps uitzetten</translation> <translation id="5945312246863177268">Staat niet toe dat gebruikers op een Telefoonhub-melding klikken om de Eche-app te starten.</translation> <translation id="5946082169633555022">Bètakanaal</translation> @@ -5100,6 +5122,7 @@ Dit beleid voorkomt niet dat bedrijfsbeheerders verbinding maken met beheerde <ph name="PRODUCT_OS_NAME" />-apparaten. Dit beleid heeft geen effect als je het toepast, leeg laat of niet instelt.</translation> +<translation id="6583249367505445969">Bookmarkbalk uitzetten</translation> <translation id="6584541828182430328">Waarschuwing voor volledig scherm niet tonen</translation> <translation id="6593350713192882944">Snelle antwoorden aanzetten</translation> <translation id="6594372503585248865">Verbindingsgerelateerde UI aanzetten op de externe hostdesktop bij een actieve verbinding</translation> @@ -5573,6 +5596,7 @@ <translation id="7040229947030068419">Voorbeeldwaarde:</translation> <translation id="7044883996351280650">De Android-service 'Back-up maken en terugzetten' beheren</translation> <translation id="7047495632846973438">Geeft aan of het rechtenbeleid voor schermopname is aangevinkt of wordt overgeslagen.</translation> +<translation id="7055022222176591388">Verouderde <ph name="FLASH_PLUGIN_NAME" /> niet toestaan</translation> <translation id="7066292150801784098">Externe gebruikers niet toestaan om vensters met verhoogde bevoegdheid te gebruiken tijdens een sessie voor support op afstand</translation> <translation id="706669471845501145">Sites toestaan bureaubladmeldingen te tonen</translation> <translation id="70681795425744184">Niet toestaan dat CRD WebAuthn API-verzoeken uitvoert die afkomstig zijn van een externe host.</translation> @@ -7171,21 +7195,6 @@ Als gebruikers het dialoogvenster voor importeren openen, is het selectievakje voor de browsegeschiedenis aan- of uitgevinkt in overeenstemming met de waarde van dit beleid.</translation> <translation id="8825154502356129120">Gnubby-verificatie uitzetten voor de host voor externe toegang</translation> <translation id="8825782996899863372">Waarschuwing voor wachtwoordbeveiliging wordt geactiveerd bij hergebruik van een wachtwoord op een phishingpagina</translation> -<translation id="8826172502287946476">Als je het beleid instelt, wordt een lijst met apps en extensies gespecificeerd die op de achtergrond worden geïnstalleerd zonder interactie met de gebruiker en die niet kunnen worden verwijderd of uitgezet door gebruikers. Rechten worden impliciet verleend, waaronder voor de extensie-API's enterprise.deviceAttributes en enterprise.platformKeys. (Deze twee API's zijn niet beschikbaar voor apps en extensies die niet verplicht zijn geïnstalleerd.) - - Als je dit beleid niet instelt, worden apps of extensies niet automatisch geïnstalleerd en kunnen gebruikers elke app of extensie in <ph name="PRODUCT_NAME" /> verwijderen. - - Dit beleid vervangt het beleid <ph name="EXTENSION_INSTALL_BLOCKLIST_POLICY_NAME" />. Als een eerder verplicht geïnstalleerde app of extensie wordt verwijderd uit deze lijst, verwijdert <ph name="PRODUCT_NAME" /> de app of extensie automatisch. - - In <ph name="MS_WIN_NAME" /> kunnen instanties, apps en extensies van buiten de Chrome Web Store alleen verplicht worden geïnstalleerd als de instantie is gekoppeld aan een <ph name="MS_AD_NAME" />-domein, wordt uitgevoerd in Windows 10 Pro of is ingeschreven voor Cloudbeheer voor de Chrome-browser. - - In <ph name="MAC_OS_NAME" /> kunnen instanties, apps en extensies van buiten de Chrome Web Store alleen verplicht worden geïnstalleerd als de instantie wordt beheerd via MDM of aan een domein is gekoppeld via MCX. - - Gebruikers kunnen de broncode van een extensie wijzigen via de ontwikkelaarstools, waardoor de extensie mogelijk niet meer functioneert. Als je je hierover zorgen maakt, moet je het beleid <ph name="DEVELOPER_TOOLS_DISABLED_POLICY_NAME" /> instellen. - - Elk lijstitem van het beleid is een tekenreeks die een extensie-ID en optioneel een update-URL bevat, gescheiden door een puntkomma (;). De extensie-ID is de tekenreeks van 32 letters die bijvoorbeeld op chrome://extensions kan worden gevonden als de ontwikkelaarsmodus actief is. De update-URL, indien opgegeven, moet verwijzen naar een XML-updatedocument voor het manifest ( https://developer.chrome.com/extensions/autoupdate ). Standaard wordt de update-URL van de Chrome Web Store gebruikt. De update-URL die in dit beleid is ingesteld, wordt alleen voor de eerste installatie gebruikt. Daaropvolgende updates van de extensie gebruiken de update-URL die in het manifest van de extensie wordt aangegeven. - - Opmerking: Dit beleid is niet van toepassing op de incognitomodus. Bekijk meer informatie over het hosten van extensies ( https://developer.chrome.com/extensions/hosting ).</translation> <translation id="8827275450034266143">De tekenreeks voor User-agent zet de hoofdversie vast op 99 en neemt de hoofdversie van de browser op in de secundaire positie.</translation> <translation id="8827366480126575426">Het protocol voor de protocolhandler.</translation> <translation id="8827417642396462482">Aanvullende DNS-zoekopdrachttypen toestaan</translation> @@ -7405,6 +7414,7 @@ Als dit beleid niet is ingesteld of als de waarde niet verwijst naar een Quick Fix Build, wordt het apparaat niet geüpdatet naar een Quick Fix Build. Als er al een Quick Fix Build op het apparaat wordt uitgevoerd en het beleid niet meer is ingesteld of de waarde niet meer verwijst naar een Quick Fix Build, wordt het apparaat geüpdatet naar een reguliere build als de update niet wordt geblokkeerd door een ander beleid.</translation> <translation id="9051019223077908578">De lijst met geïnstalleerde apps en extensies configureren op het inlogscherm</translation> +<translation id="9053841574218808519">Plug-ins die niet verouderd zijn, altijd uitvoeren</translation> <translation id="9055866143096316150">Wake lock-verzoeken voor het scherm verlagen naar wake lock-verzoeken voor het systeem</translation> <translation id="9057444687284972605">Hiermee kun je een lijst met URL-patronen opgeven om sites te specificeren. Hiervoor wordt automatisch een clientcertificaat geselecteerd op het inlogscherm in het frame waarin het SAML-proces wordt gehost als de site vraagt om een certificaat. Een gebruiksvoorbeeld is de configuratie van een certificaat voor het hele apparaat dat wordt gepresenteerd aan de SAML IdP.
diff --git a/components/policy/resources/policy_templates_pt-BR.xtb b/components/policy/resources/policy_templates_pt-BR.xtb index 24d92155..f9c1261 100644 --- a/components/policy/resources/policy_templates_pt-BR.xtb +++ b/components/policy/resources/policy_templates_pt-BR.xtb
@@ -7263,21 +7263,6 @@ O usuário pode acionar uma caixa de diálogo de importação em que a caixa de seleção do histórico de navegação estará marcada ou desmarcada de acordo com o valor da política.</translation> <translation id="8825154502356129120">Desativar a autenticação gnubby para o host de acesso remoto</translation> <translation id="8825782996899863372">O aviso de proteção de senha é acionado pela reutilização de senhas em uma página de phishing</translation> -<translation id="8826172502287946476">Se definida, a política especificará uma lista de apps e extensões com instalação silenciosa, sem interação do usuário, e que não podem ser desinstalados ou desativados. As permissões são concedidas implicitamente, inclusive para as APIs de extensão enterprise.deviceAttributes e enterprise.platformKeys. Essas duas APIs não estão disponíveis para apps e extensões que não sejam de instalação forçada. - - Se a política não for definida, nenhum app ou extensão será instalado automaticamente e o usuário poderá desinstalar qualquer app ou extensão no <ph name="PRODUCT_NAME" />. - - Esta política substitui a <ph name="EXTENSION_INSTALL_BLOCKLIST_POLICY_NAME" />. Se um app ou extensão de instalação forçada for removido da lista, será automaticamente desinstalado pelo <ph name="PRODUCT_NAME" />. - - Em instâncias do <ph name="MS_WIN_NAME" />, apps e extensões de fora da Chrome Web Store poderão ter a instalação forçada apenas se a instância for associada a um domínio do <ph name="MS_AD_NAME" />, executada no Windows 10 Pro ou registrada no Gerenciamento de nuvem do navegador Chrome. - - Em instâncias do <ph name="MAC_OS_NAME" />, apps e extensões de fora da Chrome Web Store poderão ter a instalação forçada apenas se a instância for gerenciada por MDM ou associada a um domínio via MCX. - - O código-fonte de qualquer extensão pode ser mudado pelos usuários por meio das ferramentas para desenvolvedores, possivelmente prejudicando a funcionalidade da extensão. Se isso for uma preocupação, defina a política <ph name="DEVELOPER_TOOLS_DISABLED_POLICY_NAME" />. - - Cada item da lista da política é uma string que contém um ID de extensão e, opcionalmente, um URL de atualização separados por ponto e vírgula (;). O ID da extensão é a string de 32 letras encontrada, por exemplo, em chrome://extensions no modo de desenvolvedor. Se especificado, o URL de atualização apontará para um documento XML de manifesto de atualização (https://developer.chrome.com/extensions/autoupdate). Por padrão, é usado o URL de atualização da Chrome Web Store. O URL de atualização definido nesta política só é usado na instalação inicial. As atualizações subsequentes da extensão empregam o URL de atualização indicado no manifesto da extensão. - - Observação: esta política não se aplica ao modo de navegação anônima. Leia sobre hospedagem de extensões (https://developer.chrome.com/extensions/hosting).</translation> <translation id="8827275450034266143">A string do user agent vai congelar a versão principal em 99 e incluir a versão principal do navegador na posição secundária.</translation> <translation id="8827366480126575426">O protocolo do gerenciador de protocolos.</translation> <translation id="8827417642396462482">Permitir mais tipos de consulta DNS</translation>
diff --git a/components/policy/resources/policy_templates_ru.xtb b/components/policy/resources/policy_templates_ru.xtb index 54718ec..509454e 100644 --- a/components/policy/resources/policy_templates_ru.xtb +++ b/components/policy/resources/policy_templates_ru.xtb
@@ -7262,21 +7262,6 @@ Когда пользователь откроет диалоговое окно импорта, флажок импорта истории браузера будет установлен или снят в соответствии с текущей настройкой правила.</translation> <translation id="8825154502356129120">Отключить аутентификацию Gnubby для хостов удаленного доступа</translation> <translation id="8825782996899863372">Предупреждение от защиты паролем срабатывает при повторном использовании пароля на фишинговой странице</translation> -<translation id="8826172502287946476">Это правило позволяет указать список приложений и расширений, которые устанавливаются без участия пользователя и которые нельзя удалить или отключить. При этом неявным образом предоставляются разрешения, в том числе для двух API расширений: enterprise.deviceAttributes и enterprise.platformKeys. Эти API доступны только для приложений или расширений, устанавливаемых принудительно. - - Если правило не настроено, приложения и расширения не устанавливаются автоматически и пользователи могут удалять любые приложения и расширения из <ph name="PRODUCT_NAME" />. - - Это правило имеет приоритет над правилом <ph name="EXTENSION_INSTALL_BLOCKLIST_POLICY_NAME" />. Если убрать принудительно установленное приложение или расширение из списка, <ph name="PRODUCT_NAME" /> автоматически удалит его. - - В <ph name="MS_WIN_NAME" /> приложения и расширения не из Интернет-магазина Chrome можно устанавливать принудительно только на устройствах, которые входят в домен <ph name="MS_AD_NAME" />, на которых установлена ОС Windows 10 Pro или которые зарегистрированы в программе облачного управления браузером Chrome. - - В <ph name="MAC_OS_NAME" /> приложения и расширения не из Интернет-магазина Chrome можно устанавливать принудительно только на устройствах, которые контролируются с помощью ПО для управления мобильными устройствами или добавлены в домен через MCX. - - Инструменты разработчика позволяют пользователям изменять код расширений, что может привести к сбоям. Чтобы избежать таких ситуаций, используйте правило <ph name="DEVELOPER_TOOLS_DISABLED_POLICY_NAME" />. - - В каждой строке, задаваемой в правиле, указывается идентификатор расширения и может содержаться URL обновления, отделенный точкой с запятой (;). Идентификатор расширения – это строка из 32 символов, которую можно найти, например, на странице chrome://extensions, открыв ее в режиме разработчика. URL обновления (если он присутствует) должен указывать на манифест обновления в формате XML ( https://developer.chrome.com/extensions/autoupdate ). По умолчанию для обновления используется URL Интернет-магазина Chrome. Приведенный в этом правиле URL обновления используется только во время первоначальной установки. В дальнейшем применяется URL, указанный в манифесте расширения. - - Обратите внимание, что это правило не действует в режиме инкогнито. Подробнее о хостинге расширений: https://developer.chrome.com/extensions/hosting.</translation> <translation id="8827275450034266143">Номер основной версии в строке агента пользователя будет всегда равен 99. Основная версия браузера будет указываться вместо номера промежуточной версии.</translation> <translation id="8827366480126575426">Протокол для обработчика протоколов.</translation> <translation id="8827417642396462482">Разрешить DNS-запросы для дополнительных типов записей</translation>
diff --git a/components/policy/resources/policy_templates_th.xtb b/components/policy/resources/policy_templates_th.xtb index d983c58..44018db 100644 --- a/components/policy/resources/policy_templates_th.xtb +++ b/components/policy/resources/policy_templates_th.xtb
@@ -7192,21 +7192,6 @@ ผู้ใช้จะทริกเกอร์กล่องโต้ตอบการนำเข้า และจะมีการเลือกหรือไม่ได้เลือกช่องทำเครื่องหมายประวัติการท่องเว็บไว้ เพื่อให้ตรงกับค่าของนโยบายนี้</translation> <translation id="8825154502356129120">ปิดใช้การตรวจสอบสิทธิ์ gnubby สำหรับโฮสต์การเข้าถึงระยะไกล</translation> <translation id="8825782996899863372">เรียกใช้การแจ้งเตือนการป้องกันด้วยรหัสผ่านเมื่อมีการใช้รหัสผ่านซ้ำบนหน้าฟิชชิง</translation> -<translation id="8826172502287946476">การตั้งค่านโยบายนี้จะระบุรายชื่อแอปและส่วนขยายที่ติดตั้งแบบเงียบ (ไม่ต้องมีการโต้ตอบจากผู้ใช้) และผู้ใช้จะถอนการติดตั้งหรือปิดใช้ไม่ได้ ระบบจะให้สิทธิ์โดยปริยาย ซึ่งรวมถึงสิทธิ์การใช้ API ของส่วนขยาย enterprise.deviceAttributes และ enterprise.platformKeys (API ทั้งสองนี้ใช้ไม่ได้กับแอปและส่วนขยายที่ไม่ได้บังคับติดตั้ง) - - หากไม่ตั้งค่านโยบายนี้ จะไม่มีแอปหรือส่วนขยายใดที่ติดตั้งโดยอัตโนมัติ และผู้ใช้จะถอนการติดตั้งแอปหรือส่วนขยายใดก็ได้ใน <ph name="PRODUCT_NAME" /> - - นโยบายนี้มีผลแทนนโยบาย <ph name="EXTENSION_INSTALL_BLOCKLIST_POLICY_NAME" /> หากมีการนำแอปหรือส่วนขยายที่บังคับติดตั้งก่อนหน้านี้ออกจากรายชื่อนี้ <ph name="PRODUCT_NAME" /> จะถอนการติดตั้งแอปหรือส่วนขยายนั้นโดยอัตโนมัติ - - ในอินสแตนซ์ <ph name="MS_WIN_NAME" /> จะบังคับติดตั้งแอปและส่วนขยายที่ไม่ได้มาจาก Chrome เว็บสโตร์ได้เฉพาะในกรณีที่อินสแตนซ์นั้นเข้าร่วมโดเมน <ph name="MS_AD_NAME" />, ทำงานใน Windows 10 Pro หรือลงทะเบียนในการจัดการระบบคลาวด์ของเบราว์เซอร์ Chrome - - ในอินสแตนซ์ <ph name="MAC_OS_NAME" /> จะบังคับติดตั้งแอปและส่วนขยายที่ไม่ได้มาจาก Chrome เว็บสโตร์ได้เฉพาะในกรณีที่อินสแตนซ์นั้นจัดการผ่าน MDM หรือเข้าร่วมโดเมนผ่าน MCX - - ผู้ใช้จะแก้ไขซอร์สโค้ดของส่วนขยายใดๆ ผ่านเครื่องมือสำหรับนักพัฒนาซอฟต์แวร์ได้ ซึ่งอาจทำให้ส่วนขยายทำงานผิดปกติ หากกังวลว่าจะเกิดปัญหานี้ขึ้น ให้ตั้งค่านโยบาย <ph name="DEVELOPER_TOOLS_DISABLED_POLICY_NAME" /> - - แต่ละรายการของนโยบายเป็นสตริงที่มีรหัสส่วนขยาย และอาจมี URL "อัปเดต" ที่คั่นด้วยอัฒภาค (;) รหัสส่วนขยายคือสตริงตัวอักษร 32 ตัว เช่น ที่พบใน chrome://extensions เมื่ออยู่ในโหมดนักพัฒนาซอฟต์แวร์ URL "อัปเดต" (หากระบุไว้) ควรชี้ไปยังเอกสาร XML ไฟล์ Manifest ของการอัปเดต (https://developer.chrome.com/extensions/autoupdate) ระบบจะใช้ URL อัปเดตของ Chrome เว็บสโตร์โดยค่าเริ่มต้น URL "อัปเดต" ที่กำหนดไว้ในนโยบายนี้จะใช้สำหรับการติดตั้งครั้งแรกเท่านั้น ส่วนการอัปเดตส่วนขยายในครั้งต่อๆ ไปจะใช้ URL อัปเดตในไฟล์ Manifest ของส่วนขยาย - - หมายเหตุ: นโยบายนี้ไม่มีผลกับโหมดไม่ระบุตัวตน อ่านเกี่ยวกับการโฮสต์ส่วนขยาย (https://developer.chrome.com/extensions/hosting)</translation> <translation id="8827275450034266143">สตริง User-Agent จะหยุดเวอร์ชันหลักไว้ที่ 99 และรวมเวอร์ชันหลักของเบราว์เซอร์ไว้ในตำแหน่งรอง</translation> <translation id="8827366480126575426">โปรโตคอลสำหรับเครื่องจัดการโปรโตคอล</translation> <translation id="8827417642396462482">อนุญาตประเภทคำขอ DNS เพิ่มเติม</translation>
diff --git a/components/policy/resources/policy_templates_tr.xtb b/components/policy/resources/policy_templates_tr.xtb index b36f2c1..41e4989e 100644 --- a/components/policy/resources/policy_templates_tr.xtb +++ b/components/policy/resources/policy_templates_tr.xtb
@@ -3168,6 +3168,7 @@ <translation id="4372704773119750918">Kurumsal kullanıcının çok profilli oturumun parçası olmasına izin verme (birincil veya ikincil)</translation> <translation id="4377599627073874279">Tüm sitelerin tüm resimleri görüntülemesine izin ver</translation> <translation id="437791893267799639">Politika ayarlanmadı, veri taşıma ve ARC'ye izin verme</translation> +<translation id="4380159792986204036">Web kiosk'un, herhangi bir ekranda birden fazla tarayıcı penceresi açmasına izin ver</translation> <translation id="4381227367939912539">Dinozor paskalya yumurtası oyununu devre dışı bırak</translation> <translation id="4382413175336720282">Gerçek zamanlı URL kontrolü devre dışı bırakıldı.</translation> <translation id="4387741272680827493">Politika ayarlanırsa önceden yüklenmiş HSTS'lerin http'den https'ye geçirilmelerini atlayan ana makine adlarının bir listesi belirtilir. @@ -3674,6 +3675,9 @@ Geçerli URL kalıpları hakkında ayrıntılı bilgi için https://cloud.google.com/docs/chrome-enterprise/policies/url-patterns adresine bakabilirsiniz. <ph name="WILDCARD_VALUE" />, bu politikada kabul edilen bir değer değildir.</translation> <translation id="4978533099939732984">Düşük disk alanı uyarılarını her zaman göster</translation> +<translation id="4979714585847741269">Politika, Etkin değerine ayarlanırsa kiosk web uygulaması başka bir tarayıcı penceresi açabilir. Bu pencere de aynı ekrana veya farklı bir ekrana yerleştirilebilir. Web uygulamasının, yeni bir pencere açmak için <ph name="OPEN_NEW_WINDOW_JS" /> JavaScript işlevini çağırması gerekir. + + Politika, Devre Dışı değerine ayarlanır veya ayarlanmadan bırakılırsa kiosk web uygulaması yalnızca ana tarayıcı penceresini kullanabilir ve yeni bir pencere açamaz. Yeni bir pencere açmak için JavaScript işlevlerinin çağrılması yoksayılır.</translation> <translation id="4980635395568992380">Veri türü:</translation> <translation id="4983201894483989687">Eski eklentilerin çalıştırılmasına izin ver</translation> <translation id="4986560318567565414">Alternatif tarayıcıdan Chrome'a geçiş yapma yolu.</translation> @@ -6127,6 +6131,7 @@ Bu politikanın, SHA-1 imzalarına izin veren işletim sistemi sertifika doğrulama yığınına bağlı olduğu unutulmamalıdır. Bir işletim sistemi güncellemesi, işletim sisteminin SHA-1 sertifikalarını işleme şeklini değiştirirse bu politikanın etkisi ortadan kalkabilir. Bunun yanı sıra, bu politika kurumlara SHA-1'i kullanımdan kaldırmaları için zaman kazandıran geçici bir çözüm sağlamak amacıyla hazırlanmıştır. Bu politika, 1 Ocak 2019'da veya buna yakın bir tarihte kaldırılacaktır. Bu politika ayarlanmazsa veya yanlış seçeneğine ayarlanırsa <ph name="PRODUCT_NAME" />, SHA-1'in kullanımdan kaldırılmasına yönelik herkese açık şekilde yapılan duyuruları takip eder.</translation> +<translation id="7577082478271919056">Kiosk web uygulamasının başka bir tarayıcı penceresi açmasına izin ver</translation> <translation id="7578142001795552218">Bu politika, birim dönüşüm sonuçlarını almak için Bil bakalım'a seçilen içeriğe erişme ve sunucuya bilgi gönderme izni verir. Politika etkinleştirilirse veya ayarlanmadan bırakılırsa Bil bakalım birim dönüşümü etkinleştirilir. @@ -7224,21 +7229,6 @@ Kullanıcılar içe aktarma iletişim kutusunu tetikleyebilir ve tarama geçmişi onay kutusu, bu politikanın değerine uyacak şekilde işaretlenir veya işareti kaldırılır.</translation> <translation id="8825154502356129120">Uzaktan erişim ana makinesi için gnubby kimlik doğrulamayı devre dışı bırak</translation> <translation id="8825782996899863372">Şifre koruma uyarısı, kimlik avı sayfasında şifre yeniden kullanımıyla tetiklendi</translation> -<translation id="8826172502287946476">Politikanın ayarlanması, kullanıcı etkileşimi olmadan sessizce yüklenen, kullanıcı tarafından yüklemesi kaldırılamayan veya kapatılamayan uygulamaların ve uzantıların bir listesini belirtir. İzinler, enterprise.deviceAttributes ve enterprise.platformKeys uzantı API'leri için dolaylı olarak verilir. (Bu iki API zorunlu olarak yüklenmemiş uygulamalar ve uzantılar tarafından kullanılamaz.) - - Bu politika ayarlanmadan bırakılırsa hiçbir uygulama veya uzantı otomatik olarak yüklenmez ve kullanıcılar <ph name="PRODUCT_NAME" /> ürünündeki uygulama veya uzantıları kaldırabilirler. - - Bu politika, <ph name="EXTENSION_INSTALL_BLOCKLIST_POLICY_NAME" /> politikasının yerini alır. Önceden zorunlu olarak yüklenmiş bir uygulama veya uzantı listeden çıkarılırsa <ph name="PRODUCT_NAME" /> ürünü, otomatik olarak bu uygulamayı veya uzantıyı kaldırır. - - <ph name="MS_WIN_NAME" /> örneklerinde, Chrome Web Mağazası dışından uygulamalar ve uzantılar, örnek yalnızca Windows 10 Pro üzerinde çalışan bir <ph name="MS_AD_NAME" /> alan adına katılmışsa veya Chrome Tarayıcı Bulut Yönetimi'ne kaydolmuşsa zorunlu olarak yüklenebilir. - - <ph name="MAC_OS_NAME" /> örneklerinde, Chrome Web Mağazası dışından gelen uygulamalar ve uzantılar, örnek yalnızca MDM üzerinden yönetiliyorsa veya MCX aracılığıyla bir alan adına katılmışsa zorunlu olarak yüklenebilir. - - Herhangi bir uzantının kaynak kodu, kullanıcılar tarafından geliştirici araçları kullanılarak uzantının işlevselliğini devre dışı bırakabilecek şekilde değiştirilebilir. Böyle bir endişe olması durumunda <ph name="DEVELOPER_TOOLS_DISABLED_POLICY_NAME" /> politikasını ayarlayın. - - Politikaya ait her liste öğesi, noktalı virgülle (;) ayrılmış bir uzantı kimliği ve isteğe bağlı bir "güncelleme" URL'si içeren bir dizedir. Uzantı kimliği, örneğin Geliştirici modundayken chrome://extensions adresinde bulunabilen 32 harfli bir dizedir. Belirtilmişse "güncelleme" URL'si bir Güncelleme Manifest XML dokümanına işaret etmelidir. (https://developer.chrome.com/extensions/autoupdate). Varsayılan olarak Chrome Web Mağazası'nın güncelleme URL'si kullanılır. Bu politikada ayarlanan "güncelleme" URL'si yalnızca ilk yükleme için kullanılır. Uzantının sonraki güncellemelerinde ise uzantının manifest dosyasındaki güncelleme URL'si kullanılır. - - Not: Bu politika gizli mod için geçerli değildir. Uzantıların barındırılması (https://developer.chrome.com/extensions/hosting) ile ilgili bilgi edinin.</translation> <translation id="8827275450034266143">User-Agent dizesi, ana sürümü 99 olarak dondurur ve tarayıcının ana sürümünü ikincil konuma dahil eder.</translation> <translation id="8827366480126575426">Protokol işleyicinin protokolü.</translation> <translation id="8827417642396462482">İlave DNS sorgu türlerine izin ver</translation> @@ -7636,6 +7626,7 @@ Not: Dahili chrome://* URL'lerinin engellenmesi beklenmedik hatalara neden olabilir.</translation> <translation id="957778406002650056"><ph name="PLUGIN_VM_NAME" /> resminin indirilebileceği URL.</translation> +<translation id="958285142322823422">Kiosk web uygulamasının başka bir tarayıcı penceresi açmasını engelle</translation> <translation id="958577147847681221">Yeni kullanıcı hesaplarının oluşturulmasına <ph name="PRODUCT_OS_NAME" /> tarafından izin verilip verilmeyeceğini belirler. Bu politika yanlış değerine ayarlanırsa yalnızca <ph name="DEVICE_USER_ALLOWLIST_POLICY_NAME" /> içerisinde mevcut olan kullanıcılar giriş yapabilir.
diff --git a/components/policy/resources/policy_templates_uk.xtb b/components/policy/resources/policy_templates_uk.xtb index b553b6d..e3563d2de 100644 --- a/components/policy/resources/policy_templates_uk.xtb +++ b/components/policy/resources/policy_templates_uk.xtb
@@ -7276,21 +7276,6 @@ Користувачі можуть ініціювати вікно імпортування, а прапорець біля опції для історії веб-перегляду буде поставлено або знято відповідно до значення правила.</translation> <translation id="8825154502356129120">Вимкнути автентифікацію Gnubby для хосту віддаленого доступу</translation> <translation id="8825782996899863372">Застереження про захист паролем активується під час повторного введення пароля на сторінці з фішингом</translation> -<translation id="8826172502287946476">Налаштування цього правила визначають список додатків і розширень, які встановлюються автоматично, без взаємодії з користувачем і які він не може видалити або вимкнути. Дозволи, зокрема для API розширень enterprise.deviceAttributes і enterprise.platformKeys, надаються непрямо. (Ці два API доступні лише для примусово встановлених додатків.) - - Якщо це правило не налаштовано, додатки й розширення не встановлюються автоматично, а користувачі можуть видаляти їх у <ph name="PRODUCT_NAME" />. - - Це правило замінює <ph name="EXTENSION_INSTALL_BLOCKLIST_POLICY_NAME" />. Якщо вилучити з цього списку примусово встановлені додатки або розширення, вони автоматично видаляться в <ph name="PRODUCT_NAME" />. - - У <ph name="MS_WIN_NAME" /> додатки й розширення не з Веб-магазину Chrome можна примусово встановлювати лише у Windows 10 Pro або версіях, зареєстрованих у домені <ph name="MS_AD_NAME" /> чи в Керуванні хмарними сервісами для веб-переглядача Chrome. - - У <ph name="MAC_OS_NAME" /> додатки й розширення не з Веб-магазину Chrome можна примусово встановлювати лише у версіях, у яких працює додаток Керування мобільними пристроями або які зареєстровано в домені через MCX. - - Вихідний код будь-якого розширення можна змінити за допомогою інструментів розробника (розширення може перестати працювати). Якщо це є проблемою, налаштуйте правило <ph name="DEVELOPER_TOOLS_DISABLED_POLICY_NAME" />. - - Кожний елемент у списку правила має вигляд сегмента з ідентифікатором розширення та URL-адресою "оновлення" (необов'язково), які розділені крапкою з комою (;). Ідентифікатор розширення – це рядок із 32 літер, приклад якого можна знайти на сторінці chrome://extensions у режимі розробника. URL-адреса "оновлення" (якщо її вказано) має спрямовувати на документ маніфесту оновлення у форматі XML (https://developer.chrome.com/extensions/autoupdate). За умовчанням використовується URL-адреса для оновлення Веб-магазину Chrome. URL-адреса "оновлення", указана для цього правила, використовується лише для початкового встановлення. Під час наступних оновлень розширення використовуватиметься URL-адреса, указана в маніфесті розширення. - - Примітка: це правило не стосується режиму анонімного перегляду. Докладніше про розміщення розширень (https://developer.chrome.com/extensions/hosting).</translation> <translation id="8827275450034266143">Номером основної версії в сегменті агента користувача буде закріплено значення 99, а номер основної версії веб-переглядача зазначатиметься на місці проміжної версії.</translation> <translation id="8827366480126575426">Протокол для обробника протоколів.</translation> <translation id="8827417642396462482">Дозволити DNS-запити для додаткових типів записів</translation>
diff --git a/components/policy/resources/policy_templates_vi.xtb b/components/policy/resources/policy_templates_vi.xtb index 5bc940c..6db42de 100644 --- a/components/policy/resources/policy_templates_vi.xtb +++ b/components/policy/resources/policy_templates_vi.xtb
@@ -1111,6 +1111,7 @@ Nếu bạn bật hoặc không đặt chính sách này, thì hệ thống sẽ bật tính năng Tra định nghĩa của thông tin nhanh. Nếu bạn tắt chính sách này, thì hệ thống sẽ tắt tính năng Tra định nghĩa của thông tin nhanh.</translation> <translation id="209586405398070749">Kênh ổn định</translation> +<translation id="2096932573113293941">Yêu cầu người dùng cấp quyền để chạy các trình bổ trợ đòi hỏi uỷ quyền</translation> <translation id="2098658257603918882">Bật tính năng báo cáo sử dụng và dữ liệu liên quan đến sự cố</translation> <translation id="2104418465060359056">Báo cáo thông tin về Tiện ích và Plugin</translation> <translation id="2106627642643925514">Ghi đè chế độ in mã PIN mặc định. Nếu không có chế độ này, thì chính sách này sẽ bị bỏ qua.</translation> @@ -1240,6 +1241,7 @@ <translation id="2223393221350938149">Không chấp nhận mọi trang web chạy JavaScript JIT</translation> <translation id="2223582957891074498">Nếu bạn đặt chính sách này thành True, thì người dùng sẽ không chụp được ảnh màn hình bằng cách dùng phím tắt hoặc API tiện ích. Nếu bạn đặt chính sách này thành False, thì người dùng có thể chụp ảnh màn hình.</translation> <translation id="2223598546285729819">Cài đặt thông báo mặc định</translation> +<translation id="222673035924187991">Bật ClientHello được mã hoá của TLS (Bảo mật tầng truyền tải)</translation> <translation id="2231726854197443389">Chính sách này kiểm soát việc người dùng có thể bật chế độ Chỉ giao thức HTTPS trong phần Cài đặt hay không. Chế độ Chỉ giao thức HTTPS nâng mọi hình thức chuyển hướng lên giao thức HTTPS. Nếu bạn cho phép hoặc không đặt chính sách này, thì người dùng sẽ được phép bật chế độ Chỉ giao thức HTTPS. Nếu bạn không cho phép chính sách này, thì người dùng sẽ không được phép bật chế độ Chỉ giao thức HTTPS. @@ -1360,6 +1362,7 @@ <translation id="2349117476121456297">Khi bạn đặt chính sách này thành True, hàng phím trên cùng của bàn phím sẽ đóng vai trò là các lệnh phím chức năng. Khi bạn nhấn phím Tìm kiếm, các phím này sẽ trở về chế độ phím phương tiện. Nếu bạn đặt chính sách này thành False hoặc không đặt chính sách này, thì bàn phím sẽ mặc định tạo ra các lệnh phím phương tiện. Khi bạn nhấn phím Tìm kiếm, các phím sẽ thay đổi thành phím chức năng.</translation> +<translation id="2354439478396602136">Hiển thị ứng dụng đề xuất trong trình chạy <ph name="PRODUCT_OS_NAME" /></translation> <translation id="2355876547176311490">Cho phép máy chủ truy cập từ xa dùng máy chủ chuyển tiếp</translation> <translation id="2358176879566587521">Chính sách này đã bị xóa vì không tương thích với phiên bản <ph name="PRODUCT_NAME" /> này. Hãy đọc thêm tại https://support.google.com/chrome/a/answer/7643500</translation> <translation id="2362469626417133796">Khoảng thời gian chạy lại</translation> @@ -1585,6 +1588,7 @@ Người dùng không thể thay đổi thư mục có chứa dấu trang (nhưng họ có thể ẩn thư mục đó khỏi thanh dấu trang). Thư mục mặc định cho dấu trang được quản lý là "Dấu trang được quản lý". Tuy nhiên, bạn có thể thay đổi bằng cách thêm vào chính sách một từ điển con mới chứa một khóa duy nhất là "<ph name="TOPLEVEL_NAME" />" với giá trị là tên thư mục mong muốn. Dấu trang được quản lý sẽ không đồng bộ hóa với tài khoản người dùng và các tiện ích không có quyền sửa đổi các dấu trang đó.</translation> <translation id="2552966063069741410">Múi giờ</translation> <translation id="2555244983262829274">Ẩn nút Màn hình chính trên thanh công cụ</translation> +<translation id="2562213287271514629">Cho phép sử dụng <ph name="FLASH_PLUGIN_NAME" /> lỗi thời như <ph name="FLASH_PLUGIN_NAME" /> thông thường</translation> <translation id="2562339630163277285">Chỉ định URL của công cụ tìm kiếm được sử dụng để cung cấp kết quả tức thì. URL phải chứa chuỗi <ph name="SEARCH_TERM_MARKER" />. Chuỗi này sẽ được thay thế tại thời điểm truy vấn bằng văn bản mà người dùng đã nhập từ trước tới nay. Chính sách này là tùy chọn. Nếu không được đặt, sẽ không có kết quả tìm kiếm tức thì nào được cung cấp. @@ -1629,6 +1633,7 @@ <translation id="2593762551209145088">Tính năng Duyệt web an toàn sẽ không bao giờ hoạt động.</translation> <translation id="26023406105317310">Định cấu hình các tài khoản Kerberos</translation> <translation id="2604182581880595781">Định cấu hình các chính sách liên quan đến tính năng Chia sẻ tệp trong mạng.</translation> +<translation id="2608039968712973520">Yêu cầu người dùng cấp quyền để chạy <ph name="FLASH_PLUGIN_NAME" /> lỗi thời</translation> <translation id="2608535066974278204">Khoảng thời gian (tính bằng phút) chỉ định khoảng thời gian chạy lại.</translation> <translation id="2608887839902987727">Ngăn quá trình xác thực qua trang xác thực bỏ qua cài đặt proxy</translation> <translation id="2608985885792348429">Chế độ cài đặt bảng nhớ tạm mặc định</translation> @@ -1680,6 +1685,7 @@ Chính sách này đã bị loại bỏ trong phiên bản M77. Chính sách này áp dụng cho màn hình đăng nhập. Vui lòng xem cả chính sách <ph name="SITE_PER_PROCESS_POLICY_NAME" /> áp dụng cho phiên người dùng. Bạn nên đặt cả hai chính sách về cùng một giá trị. Nếu các giá trị không khớp nhau, thì có thể xảy ra tình trạng chậm trễ khi vào một phiên người dùng mặc dù đang áp dụng giá trị do chính sách người dùng chỉ định. </translation> +<translation id="2697717608663878828">Bật thử nghiệm ClientHello được mã hoá của TLS (Bảo mật tầng truyền tải)</translation> <translation id="2702023190395322609">Bật tính năng đề xuất nội dung nghe nhìn</translation> <translation id="270582584528242502">Không hiện hộp thoại nhắc nhở khi người dùng định thoát</translation> <translation id="2706708761587205154">Chỉ cho phép in khi có mã PIN</translation> @@ -2275,6 +2281,7 @@ <translation id="3255762580838224124">Nếu đặt chính sách này, thì mỗi màn hình sẽ xoay theo một hướng chỉ định mỗi khi khởi động lại và vào lần đầu tiên màn hình được kết nối sau khi giá trị chính sách thay đổi. Người dùng có thể thay đổi chế độ xoay màn hình thông qua trang cài đặt sau khi đăng nhập. Tuy nhiên, chế độ này sẽ chuyển về như cũ vào lần khởi động lại tiếp theo. Chính sách này áp dụng cho màn hình chính và phụ. Nếu bạn chưa đặt chính sách này, thì giá trị mặc định là 0 độ và người dùng có thể thay đổi giá trị này. Trong trường hợp này, giá trị mặc định không được áp dụng thêm lần nữa khi khởi động lại.</translation> +<translation id="3258380413685430793">Chạy toàn bộ nội dung <ph name="FLASH_PLUGIN_NAME" /></translation> <translation id="325883417142483505">Việc đặt chính sách này sẽ đặt danh sách các URL đăng nhập của doanh nghiệp (chỉ giao thức HTTP và HTTPS). Dịch vụ bảo vệ mật khẩu sẽ ghi lại hàm băm được thêm dữ liệu ngẫu nhiên của mật khẩu trên các URL này và dùng cho mục đích phát hiện trường hợp sử dụng lại mật khẩu. Để <ph name="PRODUCT_NAME" /> ghi lại chính xác hàm băm được thêm dữ liệu ngẫu nhiên của mật khẩu, hãy đảm bảo các trang đăng nhập của bạn tuân thủ những nguyên tắc này (https://www.chromium.org/developers/design-documents/create-amazing-password-forms). Nếu bạn tắt hoặc không đặt tùy chọn cài đặt này, dịch vụ bảo vệ mật khẩu sẽ chỉ ghi lại hàm băm được thêm dữ liệu ngẫu nhiên của mật khẩu trên https://accounts.google.com. @@ -2343,6 +2350,7 @@ Lưu ý: Hãy đọc thêm về Chính sách giảm thiểu quy trình (https://chromium.googlesource.com/chromium/src/+/HEAD/docs/design/sandbox.md#Process-mitigation-policies).</translation> <translation id="3339271789059866414">Định cấu hình tình trạng có sẵn của dịch vụ Proxy hệ thống và thông tin xác thực proxy đối với các dịch vụ hệ thống. Nếu bạn không đặt chính sách này, thì dịch vụ Proxy hệ thống sẽ không dùng được.</translation> +<translation id="334231891933432876">Đăng xuất người dùng ngay khi tài khoản của họ không còn được xác thực</translation> <translation id="3348799281602260763">Nếu bạn bật chính sách này, các kết nối ngang hàng WebRTC có thể hạ cấp xuống phiên bản lỗi thời của các giao thức TLS/DTLS (DTLS 1.0, TLS 1.0 và TLS 1.1). Khi bạn tắt hoặc không đặt chính sách này, các phiên bản TLS/DTLS này sẽ @@ -2385,6 +2393,7 @@ Nếu bạn không đặt chính sách này, thời gian chờ sẽ là 0 mili giây. Nếu bạn không đặt chính sách <ph name="DEVICE_LOCAL_ACCOUNT_AUTO_LOGIN_ID_POLICY_NAME" />, chính sách này sẽ không có hiệu lực.</translation> +<translation id="3397883909301547525">Không hiển thị ứng dụng đề xuất trong trình chạy <ph name="PRODUCT_OS_NAME" /></translation> <translation id="3399859571630358395">Buộc tắt tính năng Ghép nối nhanh (ghép nối Bluetooth nhanh).</translation> <translation id="341285788698114069">Chính sách này kiểm soát mức ưu tiên của tiến trình âm thanh trên Windows. Nếu bạn bật chính sách này, tiến trình âm thanh sẽ chạy ở cấp độ ưu tiên trên mức bình thường. @@ -2464,6 +2473,7 @@ Khả năng cung cấp chức năng này còn phụ thuộc vào chính sách người dùng tương ứng.</translation> <translation id="3495602011142234826">Nếu bạn đặt thành bật, thì tiện ích này có thể dùng tất cả khóa được chỉ định cho việc sử dụng trong công ty để ký dữ liệu bất kỳ. Nếu bạn đặt thành tắt, thì tiện ích này sẽ không thể dùng bất kỳ khóa nào như vậy và người dùng cũng không thể cấp quyền đó. Trong trường hợp ngoại lệ, nếu chính một tiện ích tạo ra khoá đó thì tiện ích này có thể truy cập vào khoá một lần duy nhất.</translation> <translation id="3496296378755072552">Trình quản lý mật khẩu</translation> +<translation id="3496761649331792755">Bật thanh dấu trang</translation> <translation id="3498109920669229084">Nếu bạn đặt chính sách này, thì hệ thống sẽ chỉ định những tiện ích không thuộc danh sách chặn. Giá trị danh sách chặn là <ph name="ALL_EXTENSIONS" /> đồng nghĩa với việc tất cả tiện ích đều bị chặn và người dùng chỉ có thể cài đặt các tiện ích có trong danh sách cho phép. @@ -3291,6 +3301,7 @@ <translation id="449423975179525290">Định cấu hình chính sách liên quan đến <ph name="PLUGIN_VM_NAME" />.</translation> <translation id="449784980858429908">Tự động cấp quyền cho các trang web để kết nối tất cả các cổng nối tiếp.</translation> <translation id="450080746522343150">Chặn tải tất cả các tệp xuống.</translation> +<translation id="45036050223225148">Tắt thử nghiệm ClientHello được mã hoá của TLS (Bảo mật tầng truyền tải)</translation> <translation id="4508728400492074981">Kiểm soát chính sách cho tính năng First-Party Sets.</translation> <translation id="4510923771103268849">Người dùng được phép truy cập gốc vào vùng chứa Crostini</translation> <translation id="4512407512989846472">Cho phép việc chặn sao chép vào khay nhớ tạm đối với các URL được chỉ định</translation> @@ -3327,6 +3338,7 @@ Nếu bạn không đặt chính sách này, thì người dùng có thể tắt bất kỳ plugin nào đã cài đặt trên hệ thống.</translation> <translation id="4549405078915181477">Bật tính năng Thời gian sử dụng thiết bị đối với các trang web</translation> <translation id="4554651132977135445">Chế độ xử lý vòng lặp trở lại của chính sách người dùng</translation> +<translation id="4554991346503872538">Không bao giờ cung cấp bản dịch</translation> <translation id="4555850956567117258">Cho phép chứng thực từ xa cho người dùng</translation> <translation id="4557134566541205630">URL trang thẻ mới của nhà cung cấp dịch vụ tìm kiếm mặc định</translation> <translation id="4558166110367609724">Tự động bỏ qua Điều khoản dịch vụ (ToS) và tải trình duyệt.</translation> @@ -3775,6 +3787,7 @@ <translation id="5109383437323376357">Xác định tình trạng có sẵn của biến</translation> <translation id="5124368997194894978">Bật tính năng khởi động trên AC (dòng điện xoay chiều)</translation> <translation id="5130213897914754028">Ngăn các trang web sử dụng SharedArrayBuffers</translation> +<translation id="5130935469849337738">Luôn cung cấp bản dịch</translation> <translation id="5141670636904227950">Đặt loại kính lúp màn hình mặc định được bật trên màn hình đăng nhập</translation> <translation id="5142301680741828703">Luôn hiển thị các mẫu URL sau đây trong <ph name="PRODUCT_FRAME_NAME" /></translation> <translation id="5143258831402123447">Hành trình sẽ không xuất hiện tại chrome://history/journeys.</translation> @@ -3907,6 +3920,7 @@ Nếu chính sách này được đặt thành <ph name="POLICY_VALUE_PRIMARY_ACCOUNT_SIGNIN" /> cho một tài khoản, thì tài khoản này sẽ chỉ được phép đăng nhập làm tài khoản chính. Tài khoản đó sẽ không được phép đăng nhập làm tài khoản phụ.</translation> <translation id="523505283826916779">Hỗ trợ tiếp cận</translation> +<translation id="5238275681097851753">Cho phép chặn một số nội dung <ph name="FLASH_PLUGIN_NAME" /> nhất định</translation> <translation id="5238976843489093540">Buộc bật tính năng Ghép nối nhanh (ghép nối Bluetooth nhanh).</translation> <translation id="52393120393725840">Nếu bạn đặt chính sách này thành Bật, người dùng có thể yêu cầu <ph name="PRODUCT_NAME" /> nhớ mật khẩu và cung cấp cho họ ở lần tiếp theo họ đăng nhập vào một trang web. @@ -3973,6 +3987,7 @@ Nếu bạn không đặt chính sách này, thì người dùng không thể chơi trò chơi đó trên <ph name="PRODUCT_OS_NAME" /> đã đăng ký nhưng vẫn có thể chơi trong những trường hợp khác.</translation> <translation id="529457411593078576">Bật Điều khoản dịch vụ trong lần chạy đầu tiên của CCT</translation> +<translation id="5297948043665200363">Cho phép người dùng tiếp tục đăng nhập sau khi tài khoản của họ không còn được xác thực</translation> <translation id="5298949392804966105">Không có các quy định hạn chế đối với tài khoản được quản lý</translation> <translation id="530134925949808452">Thời điểm trong ngày (theo giờ địa phương) để gia hạn hạn mức sử dụng.</translation> <translation id="5303080953475303561">Việc đặt chính sách này sẽ kiểm soát tần suất màn hình khóa yêu cầu mật khẩu để mở khóa nhanh. Mỗi lần màn hình khóa xuất hiện, nếu lần nhập mật khẩu gần đây nhất diễn ra trước khoảng thời gian chỉ định theo giá trị đã chọn, thì người dùng sẽ không sử dụng được tính năng mở khóa nhanh. Nếu vượt quá khoảng thời gian này mà người dùng vẫn chưa mở khóa màn hình, thì hệ thống sẽ yêu cầu mật khẩu vào lần tới khi người dùng nhập sai mã hoặc khi màn hình khóa xuất hiện lại, tùy theo trường hợp nào xảy ra trước. @@ -4573,6 +4588,13 @@ Đối với <ph name="MS_WIN_NAME" /> hoặc <ph name="MAC_OS_NAME" />, chính sách này chỉ có hiệu lực nếu <ph name="PRINT_PDF_AS_IMAGE_AVAILABILITY_POLICY_NAME" /> cũng được bật.</translation> <translation id="5932767795525445337">Chính sách này cũng có thể được dùng để ghim ứng dụng Android.</translation> +<translation id="5936193585187054065">ClientHello được mã hoá (ECH) là tiện ích của TLS, giúp mã hoá các trường nhạy cảm của ClientHello và cải thiện quyền riêng tư. + + Nếu bạn đặt chính sách này thành bật hoặc chưa thiết lập chính sách này, thì <ph name="PRODUCT_NAME" /> sẽ tuân theo quy trình phát hành mặc định dành cho ECH. Nếu bạn tắt chính sách này thì <ph name="PRODUCT_NAME" /> sẽ không bật ECH. + + Khi bạn bật tính năng này, <ph name="PRODUCT_NAME" /> có thể sử dụng hoặc không sử dụng ECH tuỳ theo khả năng hỗ trợ của máy chủ, tình trạng sẵn có của bản ghi DNS HTTPS hoặc trạng thái phát hành. + + ECH là giao thức đang phát triển nên việc triển khai <ph name="PRODUCT_NAME" /> có thể thay đổi. Do vậy, chính sách này là biện pháp tạm thời để kiểm soát việc triển khai thử nghiệm ban đầu. Chính sách này sẽ được thay thế bằng các biện pháp kiểm soát cuối cùng khi giao thức hoàn thiện.</translation> <translation id="5939656968921014919">Tắt Chế độ nhà phát triển ứng dụng tách biệt</translation> <translation id="5945312246863177268">Không cho phép người dùng nhấp vào thông báo trong Trung tâm điều khiển điện thoại để mở ứng dụng Eche.</translation> <translation id="5946082169633555022">Kênh beta</translation> @@ -5175,6 +5197,7 @@ Chính sách này không ngăn quản trị viên doanh nghiệp kết nối với các thiết bị <ph name="PRODUCT_OS_NAME" /> được quản lý. Chính sách này không có hiệu lực nếu bạn bật, để trống hoặc không thiết lập.</translation> +<translation id="6583249367505445969">Tắt thanh dấu trang</translation> <translation id="6584541828182430328">Tắt hiển thị cảnh báo toàn màn hình</translation> <translation id="6593350713192882944">Bật tính năng Thông tin nhanh</translation> <translation id="6594372503585248865">Bật giao diện người dùng liên quan đến kết nối trên màn hình máy chủ từ xa khi đang có kết nối</translation> @@ -5652,6 +5675,7 @@ <translation id="7040229947030068419">Giá trị mẫu:</translation> <translation id="7044883996351280650">Kiểm soát dịch vụ sao lưu và khôi phục trên thiết bị Android</translation> <translation id="7047495632846973438">Chỉ định xem chính sách về quyền thu thập dữ liệu màn hình được chọn hay bị bỏ qua.</translation> +<translation id="7055022222176591388">Không cho phép <ph name="FLASH_PLUGIN_NAME" /> lỗi thời</translation> <translation id="7066292150801784098">Tắt tính năng tương tác người dùng từ xa với cửa sổ bật lên trong các phiên hỗ trợ từ xa</translation> <translation id="706669471845501145">Cho phép các trang web hiển thị thông báo trên màn hình</translation> <translation id="70681795425744184">Không cho phép CRD thực thi các yêu cầu API WebAuthn được gửi qua proxy trên một máy chủ từ xa.</translation> @@ -7263,21 +7287,6 @@ Người dùng có thể kích hoạt hộp thoại nhập. Ngoài ra, hộp đánh dấu nhật ký duyệt web sẽ được đánh dấu/bỏ đánh dấu tương ứng với giá trị của chính sách này.</translation> <translation id="8825154502356129120">Tắt chế độ xác thực gnubby đối với máy chủ truy cập từ xa</translation> <translation id="8825782996899863372">Cảnh báo bảo vệ mật khẩu được kích hoạt bằng cách sử dụng lại mật khẩu trên trang lừa đảo</translation> -<translation id="8826172502287946476">Khi bạn đặt chính sách này, hệ thống sẽ chỉ định một danh sách những ứng dụng và tiện ích tự động cài đặt mà không cần sự can thiệp của người dùng, cũng như chỉ định những người dùng không thể gỡ cài đặt hay tắt đi. Các quyền được cấp hoàn toàn, kể cả đối với các API tiện ích enterprise.deviceAttributes và enterprise.platformKeys. (Những ứng dụng và tiện ích không buộc phải cài đặt sẽ không dùng được 2 API này.) - - Khi bạn không đặt chính sách này, các ứng dụng/tiện ích sẽ không được tự động cài đặt và người dùng có thể gỡ cài đặt mọi ứng dụng/tiện ích trong <ph name="PRODUCT_NAME" />. - - Chính sách này thay thế chính sách <ph name="EXTENSION_INSTALL_BLOCKLIST_POLICY_NAME" />. Nếu một ứng dụng/tiện ích buộc phải cài đặt trước đây và hiện bị xóa khỏi danh sách này, thì <ph name="PRODUCT_NAME" /> sẽ tự động gỡ cài đặt ứng dụng/tiện ích đó. - - Trên các phiên bản <ph name="MS_WIN_NAME" />, những ứng dụng và tiện ích bên ngoài Cửa hàng Chrome trực tuyến chỉ có thể được buộc cài đặt nếu phiên bản đó liên kết với một miền <ph name="MS_AD_NAME" />, chạy trên Windows 10 Pro, hoặc đã đăng ký tùy chọn Quản lý trình duyệt Chrome qua đám mây. - - Trên các phiên bản <ph name="MAC_OS_NAME" />, những ứng dụng và tiện ích bên ngoài Cửa hàng Chrome trực tuyến chỉ có thể được buộc cài đặt nếu phiên bản đó được quản lý qua MDM hoặc liên kết với một miền qua MCX. - - Người dùng có thể thay đổi mã nguồn của mọi tiện ích thông qua các công cụ cho nhà phát triển (điều này có thể khiến tiện ích hoạt động không chính xác). Nếu bạn lo ngại về điều này, hãy đặt chính sách <ph name="DEVELOPER_TOOLS_DISABLED_POLICY_NAME" />. - - Mỗi mục trong danh sách của chính sách là một chuỗi chứa một mã tiện ích và một URL "cập nhật" (không bắt buộc) phân tách bằng dấu chấm phẩy (;). Mã tiện ích là một chuỗi gồm 32 chữ cái, chẳng hạn như trên chrome://extensions khi ở Chế độ nhà phát triển. Nếu được chỉ định, URL "cập nhật" phải trỏ đến tài liệu XML của tệp kê khai cập nhật (https://developer.chrome.com/extensions/autoupdate). Theo mặc định, URL cập nhật của Cửa hàng Chrome trực tuyến sẽ được sử dụng. URL "cập nhật" được đặt trong chính sách này chỉ dùng cho lần cài đặt ban đầu. Các lần cập nhật tiện ích tiếp theo sẽ sử dụng URL cập nhật nêu trong tệp kê khai của tiện ích. - - Lưu ý: Chính sách này không áp dụng cho Chế độ ẩn danh. Tìm hiểu về các tiện ích lưu trữ (https://developer.chrome.com/extensions/hosting).</translation> <translation id="8827275450034266143">Chuỗi User-Agent sẽ làm phiên bản lớn dừng ở 99 và bao gồm cả phiên bản lớn của trình duyệt trong phiên bản nhỏ.</translation> <translation id="8827366480126575426">Giao thức của trình xử lý giao thức.</translation> <translation id="8827417642396462482">Cho phép các loại truy vấn DNS khác</translation> @@ -7500,6 +7509,7 @@ Nếu bạn không đặt chính sách này hoặc giá trị của chính sách không tương ứng với Bản dựng Quick Fix, thì thiết bị sẽ không được cập nhật lên Bản dựng Quick Fix. Nếu thiết bị đang chạy Bản dựng Quick Fix và bạn không đặt chính sách này nữa hoặc giá trị của chính sách không còn tương ứng với Bản dựng Quick Fix, thì thiết bị sẽ được cập nhật lên bản dựng thông thường nếu không có chính sách nào khác chặn quá trình cập nhật này.</translation> <translation id="9051019223077908578">Định cấu hình danh sách các ứng dụng và tiện ích đã cài đặt trên màn hình đăng nhập</translation> +<translation id="9053841574218808519">Luôn chạy trình bổ trợ không lỗi thời</translation> <translation id="9055866143096316150">Giảm hạng yêu cầu khóa chế độ thức của màn hình thành yêu cầu khóa chế độ thức của hệ thống</translation> <translation id="9057444687284972605">Cho phép bạn chỉ định danh sách mẫu URL. Những mẫu URL này chỉ định các trang web có chứng chỉ máy khách được chọn tự động trên màn hình đăng nhập trong khung lưu trữ quy trình SAML, nếu trang web yêu cầu chứng chỉ. Một ví dụ về cách sử dụng là định cấu hình một chứng chỉ cho toàn thiết bị sẽ hiển thị với SAML IdP.
diff --git a/components/policy/resources/policy_templates_zh-CN.xtb b/components/policy/resources/policy_templates_zh-CN.xtb index 01a5e4b..dd15230 100644 --- a/components/policy/resources/policy_templates_zh-CN.xtb +++ b/components/policy/resources/policy_templates_zh-CN.xtb
@@ -7155,21 +7155,6 @@ 用户可以触发导入对话框,系统将会根据此政策的值选中或不选中“浏览记录”复选框。</translation> <translation id="8825154502356129120">针对远程访问主机停用 gnubby 身份验证</translation> <translation id="8825782996899863372">在网上诱骗网页中重复使用密码可触发密码保护服务警告功能</translation> -<translation id="8826172502287946476">通过设置此政策,您能以列表形式指定哪些应用和扩展程序无需用户互动即可静默安装且无法由用户卸载或停用。权限由系统默认授予,其中包括对 enterprise.deviceAttributes 和 enterprise.platformKeys 扩展程序 API 的权限(这 2 个 API 不适用于非强制安装的应用和扩展程序)。 - - 如果您不设置此政策,系统将不会自动安装任何应用或扩展程序,而且用户可在 <ph name="PRODUCT_NAME" /> 中卸载任何应用或扩展程序。 - - 此政策会取代 <ph name="EXTENSION_INSTALL_BLOCKLIST_POLICY_NAME" /> 政策。如果从此列表中移除了以前强制安装的某个应用或扩展程序,<ph name="PRODUCT_NAME" /> 便会自动卸载该应用或扩展程序。 - - 在 <ph name="MS_WIN_NAME" /> 实例上,只有当相应实例已加入 <ph name="MS_AD_NAME" /> 网域、在 Windows 10 专业版上运行,或已注册 Chrome 浏览器云管理时,才能强制安装并非来自 Chrome 网上应用店的应用和扩展程序。 - - 在 <ph name="MAC_OS_NAME" /> 实例上,只有当相应实例是通过 MDM 进行管理或通过 MCX 加入网域时,才能强制安装并非来自 Chrome 网上应用店的应用和扩展程序。 - - 用户可通过开发者工具更改任意扩展程序的源代码,这可能会导致扩展程序无法正常运行。如果您不希望用户进行此类更改,请设置 <ph name="DEVELOPER_TOOLS_DISABLED_POLICY_NAME" /> 政策。 - - 此政策的每个列表项都是一个字符串,其中包含一个扩展程序 ID 和一个可选的“更新”网址(这两者之间以英文分号 [;] 分隔)。扩展程序 ID 是一个由 32 个字母构成的字符串;若想查看该字符串,一种方法是在开发者模式下访问 chrome://extensions。“更新”网址(若指定)应指向一个更新清单 XML 文档 (https://developer.chrome.com/extensions/autoupdate)。默认情况下,系统会使用 Chrome 网上应用店的更新网址。此政策中设置的“更新”网址仅用于初次安装;扩展程序的后续更新将会使用该扩展程序的清单中的更新网址。 - - 请注意:此政策不适用于无痕模式。了解如何托管扩展程序 (https://developer.chrome.com/extensions/hosting)。</translation> <translation id="8827275450034266143">User-Agent 字符串会将主要版本冻结为 99,并在次要位置纳入浏览器的主要版本。</translation> <translation id="8827366480126575426">协议处理程序所对应的协议。</translation> <translation id="8827417642396462482">允许其他 DNS 查询类型</translation>
diff --git a/components/policy/resources/policy_templates_zh-TW.xtb b/components/policy/resources/policy_templates_zh-TW.xtb index fc260b1..bc122bc 100644 --- a/components/policy/resources/policy_templates_zh-TW.xtb +++ b/components/policy/resources/policy_templates_zh-TW.xtb
@@ -1072,6 +1072,7 @@ 如果將這項政策設為啟用或不設定,系統會啟用快速解答的定義功能。 如果停用這項政策,系統會停用快速解答的定義功能。</translation> <translation id="209586405398070749">穩定版</translation> +<translation id="2096932573113293941">要求使用授予權限以執行需要授權的外掛程式</translation> <translation id="2098658257603918882">啟用使用量和當機相關資料的報告功能</translation> <translation id="2104418465060359056">回報擴充功能和外掛程式資訊</translation> <translation id="2106627642643925514">覆寫預設的 PIN 碼列印模式。如果設定的模式不適用,系統會忽略這項政策。</translation> @@ -1201,6 +1202,7 @@ <translation id="2223393221350938149">禁止任何網站執行 JavaScript JIT</translation> <translation id="2223582957891074498">如果將這項政策設為 True,使用者無法使用鍵盤快速鍵或擴充功能 API 來擷取螢幕畫面。如果將這項政策設為 False,使用者可以擷取螢幕畫面。</translation> <translation id="2223598546285729819">預設通知設定</translation> +<translation id="222673035924187991">啟用經過 TLS 加密的 ClientHello</translation> <translation id="2231726854197443389">這項政策可控管使用者是否能夠在設定中啟用僅限 HTTPS 模式。此模式會將所有瀏覽作業升級為採用 HTTPS。 如果將這項政策設為允許或不設定,使用者將可啟用僅限 HTTPS 模式。 如果將這項政策設為禁止,使用者則無法啟用僅限 HTTPS 模式。 @@ -1320,6 +1322,7 @@ <translation id="2349117476121456297">這項政策設為 True 時,鍵盤最上排的按鍵會做為功能鍵指令使用。按下搜尋鍵即可將按鍵行為改回媒體鍵。 設為 False 或不予設定時,鍵盤預設會產生媒體鍵指令。按下搜尋鍵即可將按鍵改為功能鍵。</translation> +<translation id="2354439478396602136">在 <ph name="PRODUCT_OS_NAME" /> 啟動器中顯示推薦應用程式</translation> <translation id="2355876547176311490">停用遠端存取主機所使用的轉送伺服器</translation> <translation id="2358176879566587521">這項政策已遭到移除,因此與這個版本的 <ph name="PRODUCT_NAME" /> 不相容。詳情請參閱 https://support.google.com/chrome/a/answer/7643500</translation> <translation id="2362469626417133796">重新啟動時間範圍</translation> @@ -1548,6 +1551,7 @@ 受管理書籤的資料夾預設名稱為「受管理書籤」,但你也可以變更資料夾名稱,方法是在政策中加入一個內含「<ph name="TOPLEVEL_NAME" />」單一索引鍵的子條目,並將索引鍵值設為你想使用的資料夾名稱。受管理書籤不會同步到使用者帳戶,也無法透過擴充功能修改。</translation> <translation id="2552966063069741410">時區</translation> <translation id="2555244983262829274">在工具列上隱藏首頁按鈕</translation> +<translation id="2562213287271514629">允許將過期的 <ph name="FLASH_PLUGIN_NAME" /> 當做一般 <ph name="FLASH_PLUGIN_NAME" /> 使用</translation> <translation id="2562339630163277285">指定用於提供互動智慧搜尋結果的搜尋引擎網址。網址應包含 <ph name="SEARCH_TERM_MARKER" /> 字串,使用者輸入的查詢文字會取代這個字串。 這是選用政策,如果未設定,系統就不會提供互動智慧搜尋結果。 @@ -1591,6 +1595,7 @@ <translation id="2593762551209145088">一律不啟用安全瀏覽功能。</translation> <translation id="26023406105317310">設定 Kerberos 帳戶</translation> <translation id="2604182581880595781">設定網路檔案共用功能相關政策。</translation> +<translation id="2608039968712973520">要求使用者授予權限以執行過期的 <ph name="FLASH_PLUGIN_NAME" /></translation> <translation id="2608535066974278204">用於指定重新啟動時間範圍長度的時間段 (分鐘)。</translation> <translation id="2608887839902987727">禁止網頁認證入口驗證機制忽略 Proxy 設定</translation> <translation id="2608985885792348429">預設剪貼簿設定</translation> @@ -1641,6 +1646,7 @@ 這項政策已在 M77 版中移除。 這項政策適用於登入畫面。另請查看適用於使用者工作階段的 <ph name="SITE_PER_PROCESS_POLICY_NAME" /> 政策。建議你為這兩項政策設定相同的值,如果兩者的值不相符,進入使用者工作階段時,系統可能會因為套用使用者政策指定的值而發生延遲。 </translation> +<translation id="2697717608663878828">啟用經過 TLS 加密的 ClientHello 實驗</translation> <translation id="2702023190395322609">啟用媒體推薦內容</translation> <translation id="270582584528242502">使用者嘗試關閉瀏覽器時,不會顯示警告對話方塊</translation> <translation id="2706708761587205154">只在 PIN 碼啟用時允許列印</translation> @@ -2231,6 +2237,7 @@ <translation id="3255762580838224124">你可以透過這項政策,在裝置每次重新啟動以及政策值變更後裝置首次連線時,將每個螢幕依指定方向旋轉。使用者可以在登入後透過設定頁面變更螢幕旋轉設定,但裝置下次重新啟動時,系統會恢復成這項政策的設定值。這項政策適用於主要螢幕和次要螢幕。 如果未設定,預設值為 0 度,且使用者可自行變更。在這種情況下,系統不會在裝置重新啟動時重新套用預設值。</translation> +<translation id="3258380413685430793">執行所有 <ph name="FLASH_PLUGIN_NAME" /> 內容</translation> <translation id="325883417142483505">你可以透過設定這項政策設定企業登入網址清單 (僅限 HTTP 和 HTTPS 通訊協定)。密碼保護服務會從這些網址擷取密碼的加鹽雜湊值,並用於偵測密碼重複使用情形。為了讓 <ph name="PRODUCT_NAME" /> 能正確擷取密碼的加鹽雜湊值,請確保你的登入頁面遵循以下網址所述的指南:https://www.chromium.org/developers/design-documents/create-amazing-password-forms。 如果關閉這項設定或不設定,密碼保護服務只會在 https://accounts.google.com 上擷取密碼的加鹽雜湊值。 @@ -2295,6 +2302,7 @@ 注意:如要進一步瞭解程序寬鬆檢查機制政策,請前往 https://chromium.googlesource.com/chromium/src/+/HEAD/docs/design/sandbox.md#Process-mitigation-policies。</translation> <translation id="3339271789059866414">設定系統 Proxy 服務的可用性和系統服務的 Proxy 憑證。 如果不設定這項政策,將無法使用系統 Proxy 服務。</translation> +<translation id="334231891933432876">在使用者帳戶驗證狀態失效時立即將使用者登出</translation> <translation id="3348799281602260763">如果啟用這項政策,WebRTC 對等互連可降級至傳輸層安全標準 (TLS)/DTLS 通訊協定的過時版本 (DTLS 1.0、TLS 1.0 和 TLS 1.1)。 如果停用或不設定這項政策,系統會停用這些傳輸層安全標準 (TLS)/DTLS 版本。 @@ -2334,6 +2342,7 @@ 如果不設定,系統會使用 0 毫秒做為逾時時間。 如果不設定 <ph name="DEVICE_LOCAL_ACCOUNT_AUTO_LOGIN_ID_POLICY_NAME" /> 政策,則這項政策不會有任何作用。</translation> +<translation id="3397883909301547525">不要在 <ph name="PRODUCT_OS_NAME" /> 啟動器中顯示推薦應用程式</translation> <translation id="3399859571630358395">強制停用快速配對功能 (快速藍牙配對)。</translation> <translation id="341285788698114069">這項政策可控管音訊程序在 Windows 系統上的優先順序。 如果啟用這項政策,系統將以高於一般優先順序的次序執行音訊程序。 @@ -2410,6 +2419,7 @@ 這項功能的可用性會根據對應的使用者政策而定。</translation> <translation id="3495602011142234826">如果設為 True,這項擴充功能可透過企業專用的所有金鑰簽署任意資料。如果設為 False,此擴充功能就無法存取上述金鑰,使用者也無法授予這類權限。如果該金鑰是由同一個擴充功能產生,則屬例外情況,擴充功能在此情形下可以存取該金鑰一次。</translation> <translation id="3496296378755072552">密碼管理員</translation> +<translation id="3496761649331792755">啟用書籤列</translation> <translation id="3498109920669229084">你可以透過這項政策,指定不受封鎖清單影響的擴充功能。 如果將封鎖清單的值設為「<ph name="ALL_EXTENSIONS" />」,系統會封鎖所有擴充功能,使用者只能安裝許可清單中列出的擴充功能。 @@ -3232,6 +3242,7 @@ <translation id="449423975179525290">設定 <ph name="PLUGIN_VM_NAME" /> 的相關政策。</translation> <translation id="449784980858429908">自動授權網站連線至所有序列埠。</translation> <translation id="450080746522343150">封鎖所有下載作業。</translation> +<translation id="45036050223225148">停用經過 TLS 加密的 ClientHello 實驗</translation> <translation id="4508728400492074981">控管 First-Party Sets 功能的相關政策。</translation> <translation id="4510923771103268849">允許使用者擁有 Crostini 容器的 Root 權限</translation> <translation id="4512407512989846472">允許禁止在特定網址上將資料複製到剪貼簿</translation> @@ -3268,6 +3279,7 @@ 如果不設定這項政策,使用者將可停用系統上安裝的任何外掛程式。</translation> <translation id="4549405078915181477">啟用網站的裝置使用時間功能</translation> <translation id="4554651132977135445">使用者政策回送處理模式</translation> +<translation id="4554991346503872538">一律不提供翻譯</translation> <translation id="4555850956567117258">為使用者啟用遠端認證機制</translation> <translation id="4557134566541205630">預設搜尋引擎新分頁網址</translation> <translation id="4558166110367609724">自動略過《服務條款》並載入瀏覽器。</translation> @@ -3714,6 +3726,7 @@ <translation id="5109383437323376357">指定變化版本的可用性</translation> <translation id="5124368997194894978">啟用「連接 AC (交流電) 電源時啟動」功能</translation> <translation id="5130213897914754028">禁止網站使用 SharedArrayBuffers</translation> +<translation id="5130935469849337738">一律提供翻譯</translation> <translation id="5141670636904227950">設定啟用的螢幕放大鏡在登入畫面的預設類型</translation> <translation id="5142301680741828703">一律算繪下列 <ph name="PRODUCT_FRAME_NAME" /> 中的網址模式</translation> <translation id="5143258831402123447">瀏覽歷程不會顯示在 chrome://history/journeys 頁面上。</translation> @@ -3844,6 +3857,7 @@ 如果在某個帳戶中將這項政策設為 <ph name="POLICY_VALUE_PRIMARY_ACCOUNT_SIGNIN" />,該帳戶只能做為主要帳戶登入,不能做為次要帳戶登入。</translation> <translation id="523505283826916779">無障礙設定</translation> +<translation id="5238275681097851753">允許封鎖特定的 <ph name="FLASH_PLUGIN_NAME" /> 內容</translation> <translation id="5238976843489093540">強制啟用快速配對功能 (快速藍牙配對)。</translation> <translation id="52393120393725840">如果將這項政策設為啟用,<ph name="PRODUCT_NAME" /> 就能幫使用者記住密碼,並在他們下次登入網站時提供。 @@ -3910,6 +3924,7 @@ 如果未設定這項政策,使用者無法在已註冊的 <ph name="PRODUCT_OS_NAME" />上玩恐龍復活節彩蛋遊戲,但可以在其他環境下玩這個遊戲。</translation> <translation id="529457411593078576">在第一次執行 CCT 時啟用《服務條款》</translation> +<translation id="5297948043665200363">允許使用者在帳戶驗證狀態失效後保持登入狀態</translation> <translation id="5298949392804966105">不對受管理帳戶設定限制</translation> <translation id="530134925949808452">要在一天中的哪個時段 (以當地時間為準) 更新用量配額。</translation> <translation id="5303080953475303561">你可以透過這項政策,控管螢幕鎖定畫面要求使用者輸入密碼以快速解鎖的頻率。每當螢幕鎖定畫面顯示時,如果上一次輸入密碼的時間點落在所選值指定的時間範圍之前,裝置將無法快速解鎖。如果使用者停留在螢幕鎖定畫面的時間超過這個時間長度,則下次當他們輸入錯誤的解鎖碼或重新進入螢幕鎖定畫面時 (以先發生者為準),系統就會要求輸入密碼。 @@ -4484,6 +4499,13 @@ 對於 <ph name="MS_WIN_NAME" /> 或 <ph name="MAC_OS_NAME" />,這項政策需要一併啟用 <ph name="PRINT_PDF_AS_IMAGE_AVAILABILITY_POLICY_NAME" /> 才會生效。</translation> <translation id="5932767795525445337">這項政策也可用於固定 Android 應用程式。</translation> +<translation id="5936193585187054065">經加密的 ClientHello (ECH) 是傳輸層安全標準 (TLS) 的擴充功能,可對 ClientHello 的機密資訊欄位進行加密,進一步保障隱私權。 + + 如果不設定這項政策或將其設為啟用,<ph name="PRODUCT_NAME" /> 會遵循預設的 ECH 推出程序。如果停用這項政策,<ph name="PRODUCT_NAME" /> 就不會啟用 ECH。 + + 啟用這項功能後,<ph name="PRODUCT_NAME" /> 會根據伺服器是否支援、HTTPS DNS 記錄是否可用或推出狀態,決定是否使用 ECH。 + + ECH 是不斷演變的通訊協定,因此 <ph name="PRODUCT_NAME" /> 的實作方式可能會有所變動。因此,這項政策是暫時性措施,用於控制初始實驗性的實作,且會在通訊協定發展完成時替換為最終控制項。</translation> <translation id="5939656968921014919">停用已隔離應用程式的開發人員模式</translation> <translation id="5945312246863177268">禁止使用者透過點選 Phone Hub 通知的方式啟動 Eche 應用程式。</translation> <translation id="5946082169633555022">Beta 版</translation> @@ -5080,6 +5102,7 @@ 這項政策不會禁止企業管理員連線至受管理的 <ph name="PRODUCT_OS_NAME" /> 裝置。 在啟用、留空或未設定的情況下,這項政策不會有任何作用。</translation> +<translation id="6583249367505445969">停用書籤列</translation> <translation id="6584541828182430328">停用顯示全螢幕警示的功能</translation> <translation id="6593350713192882944">啟用快速解答功能</translation> <translation id="6594372503585248865">連線時,在遠端主機桌面啟用連線相關 UI</translation> @@ -5556,6 +5579,7 @@ <translation id="7040229947030068419">範例值:</translation> <translation id="7044883996351280650">控制 Android 備份與還原服務</translation> <translation id="7047495632846973438">指定要檢查或略過螢幕擷取權限政策。</translation> +<translation id="7055022222176591388">禁止執行過期的 <ph name="FLASH_PLUGIN_NAME" /></translation> <translation id="7066292150801784098">禁止遠端使用者在遠端協助工作階段中操控權限較高的視窗</translation> <translation id="706669471845501145">允許網站顯示桌面通知</translation> <translation id="70681795425744184">不允許 CRD 執行遠端主機透過 Proxy 傳送的 WebAuthn API 要求。</translation> @@ -7128,21 +7152,6 @@ 使用者可以觸發匯入對話方塊,瀏覽器將根據這項政策的值,來勾選或取消勾選瀏覽記錄的核取方塊。</translation> <translation id="8825154502356129120">針對遠端存取主機停用 gnubby 驗證機制</translation> <translation id="8825782996899863372">密碼在網路詐騙網頁上遭到重複使用時,會觸發密碼保護警告</translation> -<translation id="8826172502287946476">你可以透過這項政策指定要以無訊息方式 (使用者無需操作) 安裝的應用程式和擴充功能清單;使用者無法解除安裝或停用這些應用程式和擴充功能。系統會直接授予 enterprise.deviceAttributes 和 enterprise.platformKeys 擴充功能 API 等權限。(非強制安裝的應用程式和擴充功能無法取得這 2 個 API 的權限。) - - 如果未設定這項政策,系統不會自動安裝任何應用程式或擴充功能,且使用者可以在 <ph name="PRODUCT_NAME" /> 中解除安裝任何應用程式或擴充功能。 - - 這項政策會取代 <ph name="EXTENSION_INSTALL_BLOCKLIST_POLICY_NAME" /> 政策。如果從這份清單中移除先前強制安裝的應用程式或擴充功能,<ph name="PRODUCT_NAME" /> 會自動將其解除安裝。 - - 在 <ph name="MS_WIN_NAME" /> 執行個體上,執行個體必須加入 <ph name="MS_AD_NAME" /> 網域、在 Windows 10 專業版上執行,或是已註冊 Chrome 瀏覽器雲端管理服務,系統才能強制安裝並非來自 Chrome 線上應用程式商店的應用程式和擴充功能。 - - 在 <ph name="MAC_OS_NAME" /> 執行個體上,執行個體必須透過行動裝置管理 (MDM) 進行管理或透過 MCX 加入網域,系統才能強制安裝並非來自 Chrome 線上應用程式商店的應用程式和擴充功能。 - - 使用者可透過開發人員工具變更任何擴充功能的原始碼,但可能會導致擴充功能無法正常運作。如果你對此有所顧慮,請設定 <ph name="DEVELOPER_TOOLS_DISABLED_POLICY_NAME" /> 政策。 - - 這項政策的每個清單項目都是一行字串,其中包含以分號 (;) 區隔的擴充功能 ID 和「更新」網址 (選用)。擴充功能 ID 為 32 個字母的字串,你可以在開發人員模式下前往 chrome://extensions 等位置查看這類字串。「更新」網址 (如有指定) 應指向更新資訊清單 XML 文件 ( https://developer.chrome.com/extensions/autoupdate )。根據預設,系統會使用 Chrome 線上應用程式商店的更新網址。這項政策設定的「更新」網址僅適用於初次安裝,後續的擴充功能更新將使用擴充功能資訊清單中的更新網址。 - - 注意:這項政策不適用於無痕模式。請前往以下頁面,參閱有關代管擴充功能的資訊:https://developer.chrome.com/extensions/hosting。</translation> <translation id="8827275450034266143">User-Agent 字串會將主要版本凍結為 99,並在次要位置納入瀏覽器的主要版本。</translation> <translation id="8827366480126575426">通訊協定處理常式的通訊協定。</translation> <translation id="8827417642396462482">允許其他 DNS 查詢類型</translation> @@ -7363,6 +7372,7 @@ 如果未設定這項政策,或政策值未對應至快速修復版本,則裝置不會更新為快速修復版本。如果裝置已執行快速修復版本,且你不再設定這項政策,或政策值不再對應至快速修復版本,那麼在其他政策未封鎖更新的情況下,裝置會更新為相應的一般版本。</translation> <translation id="9051019223077908578">設定登入畫面上的已安裝應用程式和擴充功能清單</translation> +<translation id="9053841574218808519">一律執行未過期的外掛程式</translation> <translation id="9055866143096316150">將螢幕 Wake Lock 使用要求降級為系統 Wake Lock 使用要求</translation> <translation id="9057444687284972605">你可以設定網址模式清單,用於指定在 SAML 流程代管架構的登入畫面中,如果網站要求憑證,系統會自動選取用戶端憑證的網站。實際應用範例:設定要提供給 SAML IdP 的裝置通用憑證。
diff --git a/components/search/ntp_features.cc b/components/search/ntp_features.cc index 23650bf..42e7303 100644 --- a/components/search/ntp_features.cc +++ b/components/search/ntp_features.cc
@@ -146,7 +146,7 @@ // If enabled, recipe tasks module will be shown. const base::Feature kNtpRecipeTasksModule{"NtpRecipeTasksModule", - base::FEATURE_DISABLED_BY_DEFAULT}; + base::FEATURE_ENABLED_BY_DEFAULT}; // If enabled, SafeBrowsing module will be shown to a target user. const base::Feature kNtpSafeBrowsingModule{"NtpSafeBrowsingModule",
diff --git a/components/signin/core/browser/account_reconcilor.cc b/components/signin/core/browser/account_reconcilor.cc index bd5c8a88..9d8aa9a 100644 --- a/components/signin/core/browser/account_reconcilor.cc +++ b/components/signin/core/browser/account_reconcilor.cc
@@ -23,6 +23,7 @@ #include "base/strings/string_util.h" #include "base/task/single_thread_task_runner.h" #include "base/threading/thread_task_runner_handle.h" +#include "base/time/time.h" #include "components/content_settings/core/browser/content_settings_observer.h" #include "components/signin/core/browser/account_reconcilor_delegate.h" #include "components/signin/public/base/account_consistency_method.h" @@ -46,6 +47,13 @@ namespace { +#if BUILDFLAG(ENABLE_MIRROR) +// Number of seconds to wait before trying to force another reconciliation +// cycle. The value roughly represents the 95 percentile success rate of +// `Signin.Reconciler.Duration.UpTo3mins.Success` histogram. +const int kForcedReconciliationWaitTimeInSeconds = 15; +#endif // BUILDFLAG(ENABLE_MIRROR) + // Returns a copy of |accounts| without the unverified accounts. std::vector<gaia::ListedAccount> FilterUnverifiedAccounts( const std::vector<gaia::ListedAccount>& accounts) { @@ -634,6 +642,38 @@ } } +#if BUILDFLAG(ENABLE_MIRROR) +void AccountReconcilor::ForceReconcile() { + if (state_ == + signin_metrics::AccountReconcilorState::ACCOUNT_RECONCILOR_INACTIVE) { + VLOG(1) << "Ignoring ForceReconcile request because AccountReconcilor is " + "inactive"; + return; + } + + if (!is_reconcile_started_ && + (state_ == + signin_metrics::AccountReconcilorState::ACCOUNT_RECONCILOR_OK || + state_ == + signin_metrics::AccountReconcilorState::ACCOUNT_RECONCILOR_ERROR)) { + // Reconcilor is not running. Force start it. + StartReconcile(Trigger::kForcedReconcile); + return; + } + + // For all other cases, wait for some time and retry forcing a reconciliation. + // Note that we cannot simply rely on the current reconciliation cycle because + // `kForcedReconcile` is handled differently by `StartReconcile` - it leads to + // ListAccounts being ignored - something that doesn't happen in a regular + // reconciliation cycle. + base::ThreadTaskRunnerHandle::Get()->PostDelayedTask( + FROM_HERE, + base::BindOnce(&AccountReconcilor::ForceReconcile, + weak_factory_.GetWeakPtr()), + base::Seconds(kForcedReconciliationWaitTimeInSeconds)); +} +#endif // BUILDFLAG(ENABLE_MIRROR) + bool AccountReconcilor::IsIdentityManagerReady() { return identity_manager_->AreRefreshTokensLoaded(); }
diff --git a/components/signin/core/browser/account_reconcilor.h b/components/signin/core/browser/account_reconcilor.h index bf84b0d..5facbbb 100644 --- a/components/signin/core/browser/account_reconcilor.h +++ b/components/signin/core/browser/account_reconcilor.h
@@ -163,6 +163,19 @@ friend class signin::ConsistencyCookieManagerTest; #endif +#if BUILDFLAG(ENABLE_MIRROR) + FRIEND_TEST_ALL_PREFIXES(AccountReconcilorTest, + ForceReconcileEarlyExitsForInactiveReconcilor); + FRIEND_TEST_ALL_PREFIXES(AccountReconcilorMirrorTest, + ForceReconcileImmediatelyStartsForIdleReconcilor); + FRIEND_TEST_ALL_PREFIXES( + AccountReconcilorMirrorTest, + ForceReconcileImmediatelyStartsForErroredOutReconcilor); + FRIEND_TEST_ALL_PREFIXES( + AccountReconcilorMirrorTest, + ForceReconcileSchedulesReconciliationIfReconcilorIsAlreadyRunning); +#endif // BUILDFLAG(ENABLE_MIRROR) + FRIEND_TEST_ALL_PREFIXES(AccountReconcilorTestForceDiceMigration, TableRowTestCheckNoOp); FRIEND_TEST_ALL_PREFIXES(AccountReconcilorMirrorTest, @@ -321,6 +334,13 @@ void AbortReconcile(); void ScheduleStartReconcileIfChromeAccountsChanged(); +#if BUILDFLAG(ENABLE_MIRROR) + // Forces reconciliation. A reconciliation cycle is started immediately if it + // is not already running, otherwise another forced reconciliation is + // attempted after some time. + void ForceReconcile(); +#endif // BUILDFLAG(ENABLE_MIRROR) + // Returns the list of valid accounts from the TokenService. std::vector<CoreAccountId> LoadValidAccountsFromTokenService() const;
diff --git a/components/signin/core/browser/account_reconcilor_unittest.cc b/components/signin/core/browser/account_reconcilor_unittest.cc index e5d7e67..7fae952 100644 --- a/components/signin/core/browser/account_reconcilor_unittest.cc +++ b/components/signin/core/browser/account_reconcilor_unittest.cc
@@ -62,6 +62,15 @@ namespace { +#if BUILDFLAG(ENABLE_MIRROR) +// This should match the variable in the .cc file. +const int kForcedReconciliationWaitTimeInSeconds = 15; +#endif // BUILDFLAG(ENABLE_MIRROR) + +const char kFakeEmail[] = "user@gmail.com"; +const char kFakeEmail2[] = "other@gmail.com"; +const char kFakeGaiaId[] = "12345"; + // An AccountReconcilorDelegate that records all calls (Spy pattern). class SpyReconcilorDelegate : public signin::AccountReconcilorDelegate { public: @@ -752,7 +761,7 @@ ASSERT_TRUE(reconcilor); ASSERT_FALSE(reconcilor->IsRegisteredWithIdentityManager()); - identity_test_env()->MakePrimaryAccountAvailable("user@gmail.com", + identity_test_env()->MakePrimaryAccountAvailable(kFakeEmail, signin::ConsentLevel::kSync); ASSERT_TRUE(reconcilor->IsRegisteredWithIdentityManager()); @@ -763,8 +772,7 @@ } TEST_F(AccountReconcilorMirrorTest, Reauth) { - const std::string email = "user@gmail.com"; - AccountInfo account_info = ConnectProfileToAccount(email); + AccountInfo account_info = ConnectProfileToAccount(kFakeEmail); AccountReconcilor* reconcilor = GetMockReconcilor(); ASSERT_TRUE(reconcilor); @@ -783,7 +791,7 @@ #endif // !BUILDFLAG(IS_CHROMEOS_ASH) && !BUILDFLAG(IS_CHROMEOS_LACROS) TEST_F(AccountReconcilorMirrorTest, ProfileAlreadyConnected) { - ConnectProfileToAccount("user@gmail.com"); + ConnectProfileToAccount(kFakeEmail); AccountReconcilor* reconcilor = GetMockReconcilor(); ASSERT_TRUE(reconcilor); @@ -1013,7 +1021,7 @@ ASSERT_TRUE(reconcilor); ASSERT_TRUE(reconcilor->IsRegisteredWithIdentityManager()); - identity_test_env()->MakePrimaryAccountAvailable("user@gmail.com", + identity_test_env()->MakePrimaryAccountAvailable(kFakeEmail, signin::ConsentLevel::kSync); ASSERT_TRUE(reconcilor->IsRegisteredWithIdentityManager()); @@ -1034,13 +1042,13 @@ // before that. signin::SetListAccountsResponseNoAccounts(&test_url_loader_factory_); const CoreAccountId account_id = - identity_test_env()->MakeAccountAvailable("user@gmail.com").account_id; + identity_test_env()->MakeAccountAvailable(kFakeEmail).account_id; - std::vector<CoreAccountId> accounts_to_send = {account_id}; - const signin::MultiloginParameters params( - gaia::MultiloginMode::MULTILOGIN_PRESERVE_COOKIE_ACCOUNTS_ORDER, - accounts_to_send); - EXPECT_CALL(*GetMockReconcilor(), PerformSetCookiesAction(params)); + std::vector<CoreAccountId> accounts_to_send = {account_id}; + const signin::MultiloginParameters params( + gaia::MultiloginMode::MULTILOGIN_PRESERVE_COOKIE_ACCOUNTS_ORDER, + accounts_to_send); + EXPECT_CALL(*GetMockReconcilor(), PerformSetCookiesAction(params)); AccountReconcilor* reconcilor = GetMockReconcilor(); reconcilor->StartReconcile(AccountReconcilor::Trigger::kCookieChange); @@ -1074,15 +1082,15 @@ TEST_F(AccountReconcilorDiceTest, DiceReconcileReuseGaiaFirstAccount) { // Add account "other" to the Gaia cookie. signin::SetListAccountsResponseTwoAccounts( - "other@gmail.com", signin::GetTestGaiaIdForEmail("other@gmail.com"), - "foo@gmail.com", "9999", &test_url_loader_factory_); + kFakeEmail2, signin::GetTestGaiaIdForEmail(kFakeEmail2), "foo@gmail.com", + "9999", &test_url_loader_factory_); // Add accounts "user" and "other" to the token service. const AccountInfo account_info_1 = - identity_test_env()->MakeAccountAvailable("user@gmail.com"); + identity_test_env()->MakeAccountAvailable(kFakeEmail); const CoreAccountId account_id_1 = account_info_1.account_id; const AccountInfo account_info_2 = - identity_test_env()->MakeAccountAvailable("other@gmail.com"); + identity_test_env()->MakeAccountAvailable(kFakeEmail2); const CoreAccountId account_id_2 = account_info_2.account_id; auto* identity_manager = identity_test_env()->identity_manager(); @@ -1117,15 +1125,14 @@ // Making account available (setting a refresh token) triggers listing cookies // so we need to setup cookies before that. signin::SetListAccountsResponseTwoAccounts( - "other@gmail.com", signin::GetTestGaiaIdForEmail("other@gmail.com"), - "user@gmail.com", signin::GetTestGaiaIdForEmail("user@gmail.com"), - &test_url_loader_factory_); + kFakeEmail2, signin::GetTestGaiaIdForEmail(kFakeEmail2), kFakeEmail, + signin::GetTestGaiaIdForEmail(kFakeEmail), &test_url_loader_factory_); AccountInfo account_info_1 = - identity_test_env()->MakeAccountAvailable("user@gmail.com"); + identity_test_env()->MakeAccountAvailable(kFakeEmail); const CoreAccountId account_id_1 = account_info_1.account_id; AccountInfo account_info_2 = - identity_test_env()->MakeAccountAvailable("other@gmail.com"); + identity_test_env()->MakeAccountAvailable(kFakeEmail2); const CoreAccountId account_id_2 = account_info_2.account_id; auto* identity_manager = identity_test_env()->identity_manager(); @@ -1178,7 +1185,7 @@ TEST_F(AccountReconcilorDiceTest, UnverifiedAccountNoop) { // Add a unverified account to the Gaia cookie. signin::SetListAccountsResponseOneAccountWithParams( - {"user@gmail.com", "12345", true /* valid */, false /* signed_out */, + {kFakeEmail, kFakeGaiaId, true /* valid */, false /* signed_out */, false /* verified */}, &test_url_loader_factory_); @@ -1200,21 +1207,21 @@ TEST_F(AccountReconcilorDiceTest, UnverifiedAccountMerge) { // Add a unverified account to the Gaia cookie. signin::SetListAccountsResponseOneAccountWithParams( - {"user@gmail.com", "12345", true /* valid */, false /* signed_out */, + {kFakeEmail, kFakeGaiaId, true /* valid */, false /* signed_out */, false /* verified */}, &test_url_loader_factory_); // Add a token to Chrome. const CoreAccountId chrome_account_id = - identity_test_env()->MakeAccountAvailable("other@gmail.com").account_id; + identity_test_env()->MakeAccountAvailable(kFakeEmail2).account_id; - // In PRESERVE mode it is up to Gaia to not delete existing accounts in - // cookies and not sign out unveridied accounts. - std::vector<CoreAccountId> accounts_to_send = {chrome_account_id}; - const signin::MultiloginParameters params( - gaia::MultiloginMode::MULTILOGIN_PRESERVE_COOKIE_ACCOUNTS_ORDER, - accounts_to_send); - EXPECT_CALL(*GetMockReconcilor(), PerformSetCookiesAction(params)); + // In PRESERVE mode it is up to Gaia to not delete existing accounts in + // cookies and not sign out unveridied accounts. + std::vector<CoreAccountId> accounts_to_send = {chrome_account_id}; + const signin::MultiloginParameters params( + gaia::MultiloginMode::MULTILOGIN_PRESERVE_COOKIE_ACCOUNTS_ORDER, + accounts_to_send); + EXPECT_CALL(*GetMockReconcilor(), PerformSetCookiesAction(params)); AccountReconcilor* reconcilor = GetMockReconcilor(); reconcilor->StartReconcile(AccountReconcilor::Trigger::kCookieChange); @@ -1229,11 +1236,10 @@ TEST_F(AccountReconcilorDiceTest, DeleteCookie) { const CoreAccountId primary_account_id = identity_test_env() - ->MakePrimaryAccountAvailable("user@gmail.com", - signin::ConsentLevel::kSync) + ->MakePrimaryAccountAvailable(kFakeEmail, signin::ConsentLevel::kSync) .account_id; const CoreAccountId secondary_account_id = - identity_test_env()->MakeAccountAvailable("other@gmail.com").account_id; + identity_test_env()->MakeAccountAvailable(kFakeEmail2).account_id; auto* identity_manager = identity_test_env()->identity_manager(); ASSERT_TRUE(identity_manager->HasAccountWithRefreshToken(primary_account_id)); @@ -1446,7 +1452,7 @@ // automatically started when tokens are loaded. TEST_F(AccountReconcilorMirrorTest, TokensNotLoaded) { const CoreAccountId account_id = - ConnectProfileToAccount("user@gmail.com").account_id; + ConnectProfileToAccount(kFakeEmail).account_id; signin::SetListAccountsResponseNoAccounts(&test_url_loader_factory_); identity_test_env()->ResetToAccountsNotYetLoadedFromDiskState(); @@ -1476,7 +1482,7 @@ } TEST_F(AccountReconcilorMirrorTest, GetAccountsFromCookieSuccess) { - AccountInfo account_info = ConnectProfileToAccount("user@gmail.com"); + AccountInfo account_info = ConnectProfileToAccount(kFakeEmail); const CoreAccountId account_id = account_info.account_id; signin::SetListAccountsResponseOneAccountWithParams( {account_info.email, account_info.gaia, false /* valid */, @@ -1510,7 +1516,7 @@ // Checks that calling EnableReconcile() while the reconcilor is already running // doesn't have any effect. Regression test for https://crbug.com/1043651 TEST_F(AccountReconcilorMirrorTest, EnableReconcileWhileAlreadyRunning) { - AccountInfo account_info = ConnectProfileToAccount("user@gmail.com"); + AccountInfo account_info = ConnectProfileToAccount(kFakeEmail); const CoreAccountId account_id = account_info.account_id; signin::SetListAccountsResponseOneAccountWithParams( {account_info.email, account_info.gaia, false /* valid */, @@ -1544,7 +1550,7 @@ } TEST_F(AccountReconcilorMirrorTest, GetAccountsFromCookieFailure) { - ConnectProfileToAccount("user@gmail.com"); + ConnectProfileToAccount(kFakeEmail); signin::SetListAccountsResponseWithUnexpectedServiceResponse( &test_url_loader_factory_); @@ -1570,7 +1576,7 @@ // Regression test for https://crbug.com/923716 TEST_F(AccountReconcilorMirrorTest, ExtraCookieChangeNotification) { - AccountInfo account_info = ConnectProfileToAccount("user@gmail.com"); + AccountInfo account_info = ConnectProfileToAccount(kFakeEmail); const CoreAccountId account_id = account_info.account_id; signin::CookieParams cookie_params = { account_info.email, account_info.gaia, false /* valid */, @@ -1611,7 +1617,7 @@ } TEST_F(AccountReconcilorMirrorTest, StartReconcileNoop) { - AccountInfo account_info = ConnectProfileToAccount("user@gmail.com"); + AccountInfo account_info = ConnectProfileToAccount(kFakeEmail); AccountReconcilor* reconcilor = GetMockReconcilor(); ASSERT_TRUE(reconcilor); @@ -1635,7 +1641,7 @@ TEST_F(AccountReconcilorMirrorTest, StartReconcileCookiesDisabled) { const CoreAccountId account_id = - ConnectProfileToAccount("user@gmail.com").account_id; + ConnectProfileToAccount(kFakeEmail).account_id; identity_test_env()->SetRefreshTokenForAccount(account_id); test_signin_client()->set_are_signin_cookies_allowed(false); @@ -1656,7 +1662,7 @@ TEST_F(AccountReconcilorMirrorTest, StartReconcileContentSettings) { const CoreAccountId account_id = - ConnectProfileToAccount("user@gmail.com").account_id; + ConnectProfileToAccount(kFakeEmail).account_id; identity_test_env()->SetRefreshTokenForAccount(account_id); AccountReconcilor* reconcilor = GetMockReconcilor(); @@ -1677,7 +1683,7 @@ TEST_F(AccountReconcilorMirrorTest, StartReconcileContentSettingsGaiaUrl) { const CoreAccountId account_id = - ConnectProfileToAccount("user@gmail.com").account_id; + ConnectProfileToAccount(kFakeEmail).account_id; identity_test_env()->SetRefreshTokenForAccount(account_id); AccountReconcilor* reconcilor = GetMockReconcilor(); @@ -1691,7 +1697,7 @@ TEST_F(AccountReconcilorMirrorTest, StartReconcileContentSettingsNonGaiaUrl) { const CoreAccountId account_id = - ConnectProfileToAccount("user@gmail.com").account_id; + ConnectProfileToAccount(kFakeEmail).account_id; identity_test_env()->SetRefreshTokenForAccount(account_id); AccountReconcilor* reconcilor = GetMockReconcilor(); @@ -1706,7 +1712,7 @@ TEST_F(AccountReconcilorMirrorTest, StartReconcileContentSettingsWildcardPattern) { const CoreAccountId account_id = - ConnectProfileToAccount("user@gmail.com").account_id; + ConnectProfileToAccount(kFakeEmail).account_id; identity_test_env()->SetRefreshTokenForAccount(account_id); AccountReconcilor* reconcilor = GetMockReconcilor(); @@ -1744,9 +1750,9 @@ #endif TEST_F(AccountReconcilorMirrorTest, StartReconcileNoopMultiple) { - AccountInfo account_info = ConnectProfileToAccount("user@gmail.com"); + AccountInfo account_info = ConnectProfileToAccount(kFakeEmail); AccountInfo account_info_2 = - identity_test_env()->MakeAccountAvailable("other@gmail.com"); + identity_test_env()->MakeAccountAvailable(kFakeEmail2); signin::SetListAccountsResponseTwoAccounts( account_info.email, account_info.gaia, account_info_2.email, account_info_2.gaia, &test_url_loader_factory_); @@ -1760,20 +1766,20 @@ } TEST_F(AccountReconcilorMirrorTest, StartReconcileAddToCookie) { - AccountInfo account_info = ConnectProfileToAccount("user@gmail.com"); + AccountInfo account_info = ConnectProfileToAccount(kFakeEmail); const CoreAccountId account_id = account_info.account_id; identity_test_env()->SetRefreshTokenForAccount(account_id); signin::SetListAccountsResponseOneAccount( account_info.email, account_info.gaia, &test_url_loader_factory_); const CoreAccountId account_id2 = - identity_test_env()->MakeAccountAvailable("other@gmail.com").account_id; + identity_test_env()->MakeAccountAvailable(kFakeEmail2).account_id; - std::vector<CoreAccountId> accounts_to_send = {account_id, account_id2}; - const signin::MultiloginParameters params( - gaia::MultiloginMode::MULTILOGIN_UPDATE_COOKIE_ACCOUNTS_ORDER, - accounts_to_send); - EXPECT_CALL(*GetMockReconcilor(), PerformSetCookiesAction(params)); + std::vector<CoreAccountId> accounts_to_send = {account_id, account_id2}; + const signin::MultiloginParameters params( + gaia::MultiloginMode::MULTILOGIN_UPDATE_COOKIE_ACCOUNTS_ORDER, + accounts_to_send); + EXPECT_CALL(*GetMockReconcilor(), PerformSetCookiesAction(params)); AccountReconcilor* reconcilor = GetMockReconcilor(); reconcilor->StartReconcile(AccountReconcilor::Trigger::kCookieChange); @@ -1829,7 +1835,7 @@ #endif // Add one account to Chrome and instantiate the reconcilor. - AccountInfo account_info = ConnectProfileToAccount("user@gmail.com"); + AccountInfo account_info = ConnectProfileToAccount(kFakeEmail); const CoreAccountId account_id = account_info.account_id; identity_test_env()->SetRefreshTokenForAccount(account_id); TestGaiaCookieObserver observer; @@ -1872,20 +1878,20 @@ // which is not a flow that exists on ChromeOS. TEST_F(AccountReconcilorMirrorTest, SignoutAfterErrorDoesNotRecordUma) { - AccountInfo account_info = ConnectProfileToAccount("user@gmail.com"); + AccountInfo account_info = ConnectProfileToAccount(kFakeEmail); const CoreAccountId account_id = account_info.account_id; identity_test_env()->SetRefreshTokenForAccount(account_id); signin::SetListAccountsResponseOneAccount( account_info.email, account_info.gaia, &test_url_loader_factory_); const CoreAccountId account_id2 = - identity_test_env()->MakeAccountAvailable("other@gmail.com").account_id; + identity_test_env()->MakeAccountAvailable(kFakeEmail2).account_id; - std::vector<CoreAccountId> accounts_to_send = {account_id, account_id2}; - const signin::MultiloginParameters params( - gaia::MultiloginMode::MULTILOGIN_UPDATE_COOKIE_ACCOUNTS_ORDER, - accounts_to_send); - EXPECT_CALL(*GetMockReconcilor(), PerformSetCookiesAction(params)); + std::vector<CoreAccountId> accounts_to_send = {account_id, account_id2}; + const signin::MultiloginParameters params( + gaia::MultiloginMode::MULTILOGIN_UPDATE_COOKIE_ACCOUNTS_ORDER, + accounts_to_send); + EXPECT_CALL(*GetMockReconcilor(), PerformSetCookiesAction(params)); AccountReconcilor* reconcilor = GetMockReconcilor(); reconcilor->StartReconcile(AccountReconcilor::Trigger::kCookieChange); @@ -1908,18 +1914,18 @@ #endif // !BUILDFLAG(IS_CHROMEOS_ASH) TEST_F(AccountReconcilorMirrorTest, StartReconcileRemoveFromCookie) { - AccountInfo account_info = ConnectProfileToAccount("user@gmail.com"); + AccountInfo account_info = ConnectProfileToAccount(kFakeEmail); const CoreAccountId account_id = account_info.account_id; identity_test_env()->SetRefreshTokenForAccount(account_id); signin::SetListAccountsResponseTwoAccounts( - account_info.email, account_info.gaia, "other@gmail.com", "12345", + account_info.email, account_info.gaia, kFakeEmail2, kFakeGaiaId, &test_url_loader_factory_); - std::vector<CoreAccountId> accounts_to_send = {account_id}; - const signin::MultiloginParameters params( - gaia::MultiloginMode::MULTILOGIN_UPDATE_COOKIE_ACCOUNTS_ORDER, - accounts_to_send); - EXPECT_CALL(*GetMockReconcilor(), PerformSetCookiesAction(params)); + std::vector<CoreAccountId> accounts_to_send = {account_id}; + const signin::MultiloginParameters params( + gaia::MultiloginMode::MULTILOGIN_UPDATE_COOKIE_ACCOUNTS_ORDER, + accounts_to_send); + EXPECT_CALL(*GetMockReconcilor(), PerformSetCookiesAction(params)); AccountReconcilor* reconcilor = GetMockReconcilor(); reconcilor->StartReconcile(AccountReconcilor::Trigger::kCookieChange); @@ -1936,7 +1942,7 @@ // Check that token error on primary account results in a logout to all accounts // on Lacros. For other mirror platforms, reconcile is aborted. TEST_F(AccountReconcilorMirrorTest, TokenErrorOnPrimary) { - AccountInfo account_info = ConnectProfileToAccount("user@gmail.com"); + AccountInfo account_info = ConnectProfileToAccount(kFakeEmail); signin::UpdatePersistentErrorOfRefreshTokenForAccount( identity_test_env()->identity_manager(), account_info.account_id, GoogleServiceAuthError(GoogleServiceAuthError::INVALID_GAIA_CREDENTIALS)); @@ -1946,7 +1952,7 @@ #endif AccountReconcilor* reconcilor = GetMockReconcilor(); signin::SetListAccountsResponseTwoAccounts( - account_info.email, account_info.gaia, "other@gmail.com", "67890", + account_info.email, account_info.gaia, kFakeEmail2, "67890", &test_url_loader_factory_); reconcilor->StartReconcile(AccountReconcilor::Trigger::kCookieChange); base::RunLoop().RunUntilIdle(); @@ -1961,10 +1967,10 @@ } TEST_F(AccountReconcilorMirrorTest, StartReconcileAddToCookieTwice) { - AccountInfo account_info = ConnectProfileToAccount("user@gmail.com"); + AccountInfo account_info = ConnectProfileToAccount(kFakeEmail); const CoreAccountId account_id = account_info.account_id; AccountInfo account_info2 = - identity_test_env()->MakeAccountAvailable("other@gmail.com"); + identity_test_env()->MakeAccountAvailable(kFakeEmail2); const CoreAccountId account_id2 = account_info2.account_id; const std::string email3 = "third@gmail.com"; @@ -2017,11 +2023,11 @@ } TEST_F(AccountReconcilorMirrorTest, StartReconcileBadPrimary) { - AccountInfo account_info = ConnectProfileToAccount("user@gmail.com"); + AccountInfo account_info = ConnectProfileToAccount(kFakeEmail); const CoreAccountId account_id = account_info.account_id; AccountInfo account_info2 = - identity_test_env()->MakeAccountAvailable("other@gmail.com"); + identity_test_env()->MakeAccountAvailable(kFakeEmail2); const CoreAccountId account_id2 = account_info2.account_id; signin::SetListAccountsResponseTwoAccounts( account_info2.email, account_info2.gaia, account_info.email, @@ -2046,7 +2052,7 @@ } TEST_F(AccountReconcilorMirrorTest, StartReconcileOnlyOnce) { - AccountInfo account_info = ConnectProfileToAccount("user@gmail.com"); + AccountInfo account_info = ConnectProfileToAccount(kFakeEmail); signin::SetListAccountsResponseOneAccount( account_info.email, account_info.gaia, &test_url_loader_factory_); @@ -2062,7 +2068,7 @@ } TEST_F(AccountReconcilorMirrorTest, Lock) { - AccountInfo account_info = ConnectProfileToAccount("user@gmail.com"); + AccountInfo account_info = ConnectProfileToAccount(kFakeEmail); signin::SetListAccountsResponseOneAccount( account_info.email, account_info.gaia, &test_url_loader_factory_); @@ -2137,16 +2143,134 @@ EXPECT_FALSE(reconcilor->is_reconcile_started_); } +#if BUILDFLAG(ENABLE_MIRROR) +TEST_F(AccountReconcilorTest, ForceReconcileEarlyExitsForInactiveReconcilor) { + AccountReconcilor* reconcilor = GetMockReconcilor(); + ASSERT_TRUE(reconcilor); + ASSERT_EQ(signin_metrics::ACCOUNT_RECONCILOR_INACTIVE, + reconcilor->GetState()); + + reconcilor->ForceReconcile(); + EXPECT_EQ(signin_metrics::ACCOUNT_RECONCILOR_INACTIVE, + reconcilor->GetState()); + EXPECT_FALSE(reconcilor->is_reconcile_started_); +} + +TEST_F(AccountReconcilorMirrorTest, + ForceReconcileImmediatelyStartsForIdleReconcilor) { + // Get the reconcilor to an OK (signin_metrics::ACCOUNT_RECONCILOR_OK) state. + AccountInfo account_info = ConnectProfileToAccount(kFakeEmail); + AccountReconcilor* reconcilor = GetMockReconcilor(); + ASSERT_TRUE(reconcilor); + signin::SetListAccountsResponseOneAccount( + account_info.email, account_info.gaia, &test_url_loader_factory_); + std::vector<CoreAccountId> accounts_to_send = {account_info.account_id}; + const signin::MultiloginParameters params( + gaia::MultiloginMode::MULTILOGIN_UPDATE_COOKIE_ACCOUNTS_ORDER, + accounts_to_send); + EXPECT_CALL(*GetMockReconcilor(), PerformSetCookiesAction(params)); + reconcilor->SetState(signin_metrics::ACCOUNT_RECONCILOR_OK); + ASSERT_FALSE(reconcilor->is_reconcile_started_); + + // Now try to force a reconcile. + reconcilor->ForceReconcile(); + base::RunLoop().RunUntilIdle(); + EXPECT_EQ(signin_metrics::ACCOUNT_RECONCILOR_RUNNING, reconcilor->GetState()); + EXPECT_TRUE(reconcilor->is_reconcile_started_); +} + +TEST_F(AccountReconcilorMirrorTest, + ForceReconcileImmediatelyStartsForErroredOutReconcilor) { + // Get the reconcilor to an error state. + AccountInfo account_info = ConnectProfileToAccount(kFakeEmail); + AccountReconcilor* reconcilor = GetMockReconcilor(); + ASSERT_TRUE(reconcilor); + signin::SetListAccountsResponseOneAccount( + account_info.email, account_info.gaia, &test_url_loader_factory_); + std::vector<CoreAccountId> accounts_to_send = {account_info.account_id}; + const signin::MultiloginParameters params( + gaia::MultiloginMode::MULTILOGIN_UPDATE_COOKIE_ACCOUNTS_ORDER, + accounts_to_send); + EXPECT_CALL(*GetMockReconcilor(), PerformSetCookiesAction(params)); + reconcilor->SetState(signin_metrics::ACCOUNT_RECONCILOR_ERROR); + ASSERT_FALSE(reconcilor->is_reconcile_started_); + + // Now try to force a reconcile. + reconcilor->ForceReconcile(); + base::RunLoop().RunUntilIdle(); + EXPECT_EQ(signin_metrics::ACCOUNT_RECONCILOR_RUNNING, reconcilor->GetState()); + EXPECT_TRUE(reconcilor->is_reconcile_started_); +} + +TEST_F(AccountReconcilorMirrorTest, + ForceReconcileSchedulesReconciliationIfReconcilorIsAlreadyRunning) { + AccountInfo account_info = ConnectProfileToAccount(kFakeEmail); + identity_test_env()->WaitForRefreshTokensLoaded(); + const CoreAccountId account_id = account_info.account_id; + + // Do NOT set a ListAccounts response. We do not want reconciliation to finish + // immediately. + std::vector<CoreAccountId> accounts_to_send = {account_id}; + const signin::MultiloginParameters params( + gaia::MultiloginMode::MULTILOGIN_UPDATE_COOKIE_ACCOUNTS_ORDER, + accounts_to_send); + EXPECT_CALL(*GetMockReconcilor(), PerformSetCookiesAction(params)); + + AccountReconcilor* reconcilor = GetMockReconcilor(); + ASSERT_TRUE(reconcilor); + + // Schedule a regular reconciliation cycle. This will eventually end up in a + // noop because the accounts in cookie match the Primary Account in Chrome. + reconcilor->StartReconcile(AccountReconcilor::Trigger::kInitialized); + ASSERT_EQ(signin_metrics::ACCOUNT_RECONCILOR_RUNNING, reconcilor->GetState()); + ASSERT_TRUE(reconcilor->is_reconcile_started_); + + // Immediately force a reconciliation. This should cause a forced + // reconciliation to be tried later in + // `kForcedReconciliationWaitTimeInSeconds` seconds. + reconcilor->ForceReconcile(); + + // Now set the account in cookie as the Primary Account in Chrome. This will + // unblock the regular (`AccountReconcilor::Trigger::kInitialized`) + // reconciliation cycle. + signin::SetListAccountsResponseOneAccount( + /*email=*/account_info.email, /*gaia_id=*/account_info.gaia, + /*test_url_loader_factory=*/&test_url_loader_factory_); + // This forced reconciliation attempt should also be blocked since + // test_url_loader_factory_ will itself post a task to wake up pending + // requests. + task_environment()->FastForwardBy( + base::Seconds(kForcedReconciliationWaitTimeInSeconds)); + base::RunLoop().RunUntilIdle(); + + // Give the queued forced reconciliation cycle a chance to actually run. + task_environment()->FastForwardBy( + base::Seconds(kForcedReconciliationWaitTimeInSeconds)); + base::RunLoop().RunUntilIdle(); + + // Indirectly test through histograms that the forced reconciliation cycle was + // actually run. + histogram_tester()->ExpectBucketCount( + AccountReconcilor::kOperationHistogramName, + AccountReconcilor::Operation::kMultilogin, 1); + histogram_tester()->ExpectUniqueSample( + AccountReconcilor::kTriggerMultiloginHistogramName, + AccountReconcilor::Trigger::kForcedReconcile, 1); + histogram_tester()->ExpectTotalCount( + AccountReconcilor::kTriggerMultiloginHistogramName, 1); +} +#endif // BUILDFLAG(ENABLE_MIRROR) + // Checks that an "invalid" Gaia account can be refreshed in place, without // performing a full logout. TEST_P(AccountReconcilorMethodParamTest, StartReconcileWithSessionInfoExpiredDefault) { signin::AccountConsistencyMethod account_consistency = GetParam(); SetAccountConsistency(account_consistency); - AccountInfo account_info = ConnectProfileToAccount("user@gmail.com"); + AccountInfo account_info = ConnectProfileToAccount(kFakeEmail); const CoreAccountId account_id = account_info.account_id; AccountInfo account_info2 = - identity_test_env()->MakeAccountAvailable("other@gmail.com"); + identity_test_env()->MakeAccountAvailable(kFakeEmail2); const CoreAccountId account_id2 = account_info2.account_id; signin::SetListAccountsResponseWithParams( {{account_info.email, account_info.gaia, false /* valid */, @@ -2190,7 +2314,7 @@ TEST_F(AccountReconcilorMirrorTest, AddAccountToCookieCompletedWithBogusAccount) { - AccountInfo account_info = ConnectProfileToAccount("user@gmail.com"); + AccountInfo account_info = ConnectProfileToAccount(kFakeEmail); const CoreAccountId account_id = account_info.account_id; signin::SetListAccountsResponseOneAccountWithParams( {account_info.email, account_info.gaia, false /* valid */, @@ -2223,10 +2347,10 @@ TEST_F(AccountReconcilorMirrorTest, NoLoopWithBadPrimary) { // Connect profile to a primary account and then add a secondary account. - AccountInfo account_info = ConnectProfileToAccount("user@gmail.com"); + AccountInfo account_info = ConnectProfileToAccount(kFakeEmail); const CoreAccountId account_id1 = account_info.account_id; AccountInfo account_info2 = - identity_test_env()->MakeAccountAvailable("other@gmail.com"); + identity_test_env()->MakeAccountAvailable(kFakeEmail2); const CoreAccountId account_id2 = account_info2.account_id; std::vector<CoreAccountId> accounts_to_send = {account_id1, account_id2}; @@ -2275,9 +2399,9 @@ TEST_F(AccountReconcilorMirrorTest, WontMergeAccountsWithError) { // Connect profile to a primary account and then add a secondary account. const CoreAccountId account_id1 = - ConnectProfileToAccount("user@gmail.com").account_id; + ConnectProfileToAccount(kFakeEmail).account_id; const CoreAccountId account_id2 = - identity_test_env()->MakeAccountAvailable("other@gmail.com").account_id; + identity_test_env()->MakeAccountAvailable(kFakeEmail2).account_id; // Mark the secondary account in auth error state. signin::UpdatePersistentErrorOfRefreshTokenForAccount( @@ -2314,7 +2438,7 @@ // Test that delegate timeout is called when the delegate offers a valid // timeout. TEST_F(AccountReconcilorTest, DelegateTimeoutIsCalled) { - AccountInfo account_info = ConnectProfileToAccount("user@gmail.com"); + AccountInfo account_info = ConnectProfileToAccount(kFakeEmail); auto spy_delegate0 = std::make_unique<SpyReconcilorDelegate>(); SpyReconcilorDelegate* spy_delegate = spy_delegate0.get(); AccountReconcilor* reconcilor = @@ -2338,7 +2462,7 @@ // Test that delegate timeout is not called when the delegate does not offer a // valid timeout. TEST_F(AccountReconcilorMirrorTest, DelegateTimeoutIsNotCalled) { - AccountInfo account_info = ConnectProfileToAccount("user@gmail.com"); + AccountInfo account_info = ConnectProfileToAccount(kFakeEmail); signin::SetListAccountsResponseOneAccount( account_info.email, account_info.gaia, &test_url_loader_factory_); AccountReconcilor* reconcilor = GetMockReconcilor(); @@ -2353,7 +2477,7 @@ } TEST_F(AccountReconcilorTest, DelegateTimeoutIsNotCalledIfTimeoutIsNotReached) { - AccountInfo account_info = ConnectProfileToAccount("user@gmail.com"); + AccountInfo account_info = ConnectProfileToAccount(kFakeEmail); signin::SetListAccountsResponseOneAccount( account_info.email, account_info.gaia, &test_url_loader_factory_); auto spy_delegate0 = std::make_unique<SpyReconcilorDelegate>(); @@ -2390,7 +2514,7 @@ gaia::MultiloginMode multilogin_mode = gaia::MultiloginMode::MULTILOGIN_UPDATE_COOKIE_ACCOUNTS_ORDER; #endif - AccountInfo account_info = ConnectProfileToAccount("user@gmail.com"); + AccountInfo account_info = ConnectProfileToAccount(kFakeEmail); identity_test_env()->WaitForRefreshTokensLoaded(); const CoreAccountId account_id = account_info.account_id; @@ -2425,7 +2549,7 @@ gaia::MultiloginMode multilogin_mode = gaia::MultiloginMode::MULTILOGIN_UPDATE_COOKIE_ACCOUNTS_ORDER; #endif - AccountInfo account_info = ConnectProfileToAccount("user@gmail.com"); + AccountInfo account_info = ConnectProfileToAccount(kFakeEmail); identity_test_env()->WaitForRefreshTokensLoaded(); const CoreAccountId account_id = account_info.account_id; @@ -2505,7 +2629,7 @@ MockAccountReconcilor* reconcilor = CreateMockReconcilor(std::make_unique<MultiloginLogoutDelegate>()); - signin::SetListAccountsResponseOneAccount("user@gmail.com", "123456", + signin::SetListAccountsResponseOneAccount(kFakeEmail, "123456", &test_url_loader_factory_); // Logout call to Gaia. @@ -2625,10 +2749,10 @@ }; TEST_F(AccountReconcilorThrottlerTest, RefillOneRequest) { - AccountInfo account_info = ConnectProfileToAccount("user@gmail.com"); + AccountInfo account_info = ConnectProfileToAccount(kFakeEmail); const CoreAccountId account_id = account_info.account_id; signin::SetListAccountsResponseOneAccount( - "other@gmail.com", signin::GetTestGaiaIdForEmail("other@gmail.com"), + kFakeEmail2, signin::GetTestGaiaIdForEmail(kFakeEmail2), &test_url_loader_factory_); signin::MultiloginParameters params( @@ -2681,10 +2805,10 @@ } TEST_F(AccountReconcilorThrottlerTest, RefillFiveRequests) { - AccountInfo account_info = ConnectProfileToAccount("user@gmail.com"); + AccountInfo account_info = ConnectProfileToAccount(kFakeEmail); const CoreAccountId account_id = account_info.account_id; signin::SetListAccountsResponseOneAccount( - "other@gmail.com", signin::GetTestGaiaIdForEmail("other@gmail.com"), + kFakeEmail2, signin::GetTestGaiaIdForEmail(kFakeEmail2), &test_url_loader_factory_); signin::MultiloginParameters params( @@ -2716,10 +2840,10 @@ } TEST_F(AccountReconcilorThrottlerTest, NewRequestParamsPasses) { - AccountInfo account_info = ConnectProfileToAccount("user@gmail.com"); + AccountInfo account_info = ConnectProfileToAccount(kFakeEmail); const CoreAccountId account_id = account_info.account_id; signin::SetListAccountsResponseOneAccount( - "other@gmail.com", signin::GetTestGaiaIdForEmail("other@gmail.com"), + kFakeEmail2, signin::GetTestGaiaIdForEmail(kFakeEmail2), &test_url_loader_factory_); signin::MultiloginParameters params( @@ -2736,7 +2860,7 @@ // Trigger different params. AccountReconcilor* reconcilor = GetMockReconcilor(); EXPECT_CALL(*GetMockReconcilor(), PerformSetCookiesAction(testing::_)); - identity_test_env()->MakeAccountAvailable("other@gmail.com"); + identity_test_env()->MakeAccountAvailable(kFakeEmail2); base::RunLoop().RunUntilIdle(); ASSERT_TRUE(reconcilor->is_reconcile_started_); SimulateSetAccountsInCookieCompleted( @@ -2748,10 +2872,10 @@ } TEST_F(AccountReconcilorThrottlerTest, BlockFiveRequests) { - AccountInfo account_info = ConnectProfileToAccount("user@gmail.com"); + AccountInfo account_info = ConnectProfileToAccount(kFakeEmail); const CoreAccountId account_id = account_info.account_id; signin::SetListAccountsResponseOneAccount( - "other@gmail.com", signin::GetTestGaiaIdForEmail("other@gmail.com"), + kFakeEmail2, signin::GetTestGaiaIdForEmail(kFakeEmail2), &test_url_loader_factory_); signin::MultiloginParameters params(
diff --git a/components/signin/internal/identity_manager/profile_oauth2_token_service_delegate_chromeos.cc b/components/signin/internal/identity_manager/profile_oauth2_token_service_delegate_chromeos.cc index b580aff..65cfa247 100644 --- a/components/signin/internal/identity_manager/profile_oauth2_token_service_delegate_chromeos.cc +++ b/components/signin/internal/identity_manager/profile_oauth2_token_service_delegate_chromeos.cc
@@ -185,7 +185,7 @@ account_manager::AccountKey{ account_tracker_service_->GetAccountInfo(account_id).gaia, account_manager::AccountType::kGaia} /* account_key */, - consumer->GetConsumerName(), consumer); + consumer); } // Note: This method should use the same logic for filtering accounts as
diff --git a/components/strings/components_strings_az.xtb b/components/strings/components_strings_az.xtb index 511b0be4..b7fc9c1 100644 --- a/components/strings/components_strings_az.xtb +++ b/components/strings/components_strings_az.xtb
@@ -1463,6 +1463,7 @@ <translation id="4969341057194253438">Qeydəalmanı silin</translation> <translation id="4973922308112707173">Yuxarıdan qoşa deşik açın</translation> <translation id="4976702386844183910">Son ziyarət: <ph name="DATE" /></translation> +<translation id="498323057460789381">Sxem doğrulama xətası: <ph name="ERROR" /></translation> <translation id="4984088539114770594">Mikrofondan istifadə edilsin?</translation> <translation id="4984339528288761049">Prc5 (Zərf)</translation> <translation id="4989163558385430922">Hamısına baxın</translation>
diff --git a/components/strings/components_strings_bn.xtb b/components/strings/components_strings_bn.xtb index 27dfe7e..7e72e3d9 100644 --- a/components/strings/components_strings_bn.xtb +++ b/components/strings/components_strings_bn.xtb
@@ -1468,6 +1468,7 @@ <translation id="4969341057194253438">রেকর্ডিং মুছে ফেলুন</translation> <translation id="4973922308112707173">উপরে ডুয়াল পাঞ্চ</translation> <translation id="4976702386844183910"><ph name="DATE" />-এ শেষবার দেখেছেন</translation> +<translation id="498323057460789381">স্কিমা যাচাইকরণ সংক্রান্ত সমস্যা: <ph name="ERROR" /></translation> <translation id="4984088539114770594">মাইক্রোফোন ব্যবহার করবেন?</translation> <translation id="4984339528288761049">Prc5 (Envelope)</translation> <translation id="4989163558385430922">সবগুলি দেখুন</translation>
diff --git a/components/strings/components_strings_bs.xtb b/components/strings/components_strings_bs.xtb index fd8e05a..e94aac1 100644 --- a/components/strings/components_strings_bs.xtb +++ b/components/strings/components_strings_bs.xtb
@@ -1467,6 +1467,7 @@ <translation id="4969341057194253438">Izbrisati snimak?</translation> <translation id="4973922308112707173">Dvostruko bušenje na gornjoj strani</translation> <translation id="4976702386844183910">Posljednji put je posjećeno <ph name="DATE" /></translation> +<translation id="498323057460789381">Pogreška provjere sheme: <ph name="ERROR" /></translation> <translation id="4984088539114770594">Koristiti mikrofon?</translation> <translation id="4984339528288761049">Prc5 (koverta)</translation> <translation id="4989163558385430922">Prikaži sve</translation>
diff --git a/components/strings/components_strings_hr.xtb b/components/strings/components_strings_hr.xtb index 56df3825..fb71188f 100644 --- a/components/strings/components_strings_hr.xtb +++ b/components/strings/components_strings_hr.xtb
@@ -1466,6 +1466,7 @@ <translation id="4969341057194253438">Izbriši snimku</translation> <translation id="4973922308112707173">Dvostruko bušenje pri vrhu</translation> <translation id="4976702386844183910">Posljednji posjet bio je <ph name="DATE" /></translation> +<translation id="498323057460789381">Pogreška provjere sheme: <ph name="ERROR" /></translation> <translation id="4984088539114770594">Koristiti mikrofon?</translation> <translation id="4984339528288761049">Prc5 (omotnica)</translation> <translation id="4989163558385430922">Prikaži sve</translation>
diff --git a/components/strings/components_strings_hu.xtb b/components/strings/components_strings_hu.xtb index a4ab84a9..8667ae4 100644 --- a/components/strings/components_strings_hu.xtb +++ b/components/strings/components_strings_hu.xtb
@@ -1465,6 +1465,7 @@ <translation id="4969341057194253438">Felvétel törlése</translation> <translation id="4973922308112707173">Két lyuk felül</translation> <translation id="4976702386844183910">Utolsó látogatás: <ph name="DATE" /></translation> +<translation id="498323057460789381">Sémaérvényesítési hiba: <ph name="ERROR" /></translation> <translation id="4984088539114770594">Engedélyezi a mikrofon használatát?</translation> <translation id="4984339528288761049">Prc5 (boríték)</translation> <translation id="4989163558385430922">Összes megtekintése</translation>
diff --git a/components/strings/components_strings_ka.xtb b/components/strings/components_strings_ka.xtb index 2b76bb8..c6702ba 100644 --- a/components/strings/components_strings_ka.xtb +++ b/components/strings/components_strings_ka.xtb
@@ -1467,6 +1467,7 @@ <translation id="4969341057194253438">ჩანაწერის წაშლა</translation> <translation id="4973922308112707173">ორმაგად გახვრეტა ზემოთ</translation> <translation id="4976702386844183910">ბოლო ვიზიტი: <ph name="DATE" /></translation> +<translation id="498323057460789381">შეცდომა სქემის დამოწმებისას: <ph name="ERROR" /></translation> <translation id="4984088539114770594">გსურთ მიკროფონის გამოყენება?</translation> <translation id="4984339528288761049">Prc5 (კონვერტი)</translation> <translation id="4989163558385430922">ყველას ნახვა</translation>
diff --git a/components/strings/components_strings_lt.xtb b/components/strings/components_strings_lt.xtb index 7f4b06a..cb8c893e15 100644 --- a/components/strings/components_strings_lt.xtb +++ b/components/strings/components_strings_lt.xtb
@@ -1468,6 +1468,7 @@ <translation id="4969341057194253438">Ištrinti įrašą</translation> <translation id="4973922308112707173">Dvi skylės viršuje</translation> <translation id="4976702386844183910">Paskutinį kartą lankytasi <ph name="DATE" /></translation> +<translation id="498323057460789381">Schemos patvirtinimo klaida: <ph name="ERROR" /></translation> <translation id="4984088539114770594">Naudoti mikrofoną?</translation> <translation id="4984339528288761049">„Prc5“ (vokas)</translation> <translation id="4989163558385430922">Žr. viską</translation>
diff --git a/components/strings/components_strings_my.xtb b/components/strings/components_strings_my.xtb index 4e6edae..12710a5 100644 --- a/components/strings/components_strings_my.xtb +++ b/components/strings/components_strings_my.xtb
@@ -1468,6 +1468,7 @@ <translation id="4969341057194253438">ဖမ်းယူမှုဖိုင်ကို ဖျက်ရန်</translation> <translation id="4973922308112707173">ထိပ်တွင် နှစ်ချက်ဖောက်ရန်</translation> <translation id="4976702386844183910"><ph name="DATE" /> က နောက်ဆုံး ဝင်ကြည့်ထားသည်</translation> +<translation id="498323057460789381">စနစ်အတည်ပြုခြင်းအမှား- <ph name="ERROR" /></translation> <translation id="4984088539114770594">မိုက်ခရိုဖုန်းကို အသုံးပြုမလား။</translation> <translation id="4984339528288761049">Prc5 (စာအိတ်)</translation> <translation id="4989163558385430922">အားလုံး ကြည့်ရန်</translation>
diff --git a/components/strings/components_strings_pl.xtb b/components/strings/components_strings_pl.xtb index 62dec9f0..faebc907 100644 --- a/components/strings/components_strings_pl.xtb +++ b/components/strings/components_strings_pl.xtb
@@ -1467,6 +1467,7 @@ <translation id="4969341057194253438">Usuń nagranie</translation> <translation id="4973922308112707173">Dwa otwory u góry</translation> <translation id="4976702386844183910">Ostatnia wizyta <ph name="DATE" /></translation> +<translation id="498323057460789381">Błąd weryfikacji schematu: <ph name="ERROR" /></translation> <translation id="4984088539114770594">Korzystać z mikrofonu?</translation> <translation id="4984339528288761049">Prc5 (koperta)</translation> <translation id="4989163558385430922">Pokaż wszystko</translation>
diff --git a/components/strings/components_strings_te.xtb b/components/strings/components_strings_te.xtb index 24b9b9c7..c77d33c 100644 --- a/components/strings/components_strings_te.xtb +++ b/components/strings/components_strings_te.xtb
@@ -33,7 +33,7 @@ <translation id="1056898198331236512">హెచ్చరిక</translation> <translation id="1058344460600311577"><ph name="PLAY_CHROME_DINO_GAME_FOCUSED_FRIENDLY_MATCH_TEXT" />, Chromeలో Dino Run గేమ్ను ఆడటానికి Tabను నొక్కి, ఆపై Enterను నొక్కండి</translation> <translation id="1058479211578257048">కార్డ్లు సేవ్ చేయబడుతున్నాయి...</translation> -<translation id="10614374240317010">ఎప్పటికి సేవ్ చెయ్యబడవు</translation> +<translation id="10614374240317010">ఎప్పటికి సేవ్ చేయబడవు</translation> <translation id="1062160989074299343">Prc10 (ఎన్వలప్)</translation> <translation id="106701514854093668">డెస్క్టాప్ బుక్మార్క్లు</translation> <translation id="1068672505746868501"><ph name="SOURCE_LANGUAGE" />లో ఉన్న పేజీలను ఎప్పుడూ అనువదించవద్దు</translation> @@ -77,7 +77,7 @@ <translation id="1175875016430184367">కుడివైపు ట్రిపుల్ స్టేపుల్</translation> <translation id="1177802847690410663">వెబ్ బ్రౌజర్లు</translation> <translation id="1178581264944972037">పాజ్ చేయి</translation> -<translation id="1181037720776840403">తీసివేయి</translation> +<translation id="1181037720776840403">తీసివేయండి</translation> <translation id="1186201132766001848">పాస్వర్డ్లను చెక్ చేయండి</translation> <translation id="1195558154361252544">మీరు అనుమతించినవి మినహా, ఇతర అన్ని సైట్లకు నోటిఫికేషన్లు ఆటోమేటిక్గా బ్లాక్ చేయబడ్డాయి</translation> <translation id="1197088940767939838">నారింజ రంగు</translation> @@ -243,7 +243,7 @@ <translation id="153384715582417236">ఇప్పటికి ఇంతే</translation> <translation id="1536390784834419204">పేజీని అనువాదం చేయి</translation> <translation id="1539840569003678498">రిపోర్ట్ పంపబడింది:</translation> -<translation id="154408704832528245">బట్వాడా అడ్రస్ను ఎంచుకోండి</translation> +<translation id="154408704832528245">డెలివరీ అడ్రస్ను ఎంచుకోండి</translation> <translation id="1549470594296187301">ఈ ఫీచర్ను ఉపయోగించడానికి జావాస్క్రిప్ట్ తప్పనిసరిగా ప్రారంభించాలి.</translation> <translation id="155039086686388498">ఇంజనీరింగ్-D</translation> <translation id="1551884710160394169">ఫ్రీవేర్ & షేర్వేర్</translation> @@ -351,7 +351,7 @@ <translation id="1807246157184219062">లేత</translation> <translation id="1807528111851433570">మొదటి షీట్</translation> <translation id="1812527064848182527">ల్యాండ్స్కేప్లో ఉంది</translation> -<translation id="1813414402673211292">బ్రౌజింగ్ డేటాను క్లియర్ చేయి</translation> +<translation id="1813414402673211292">బ్రౌజింగ్ డేటాను క్లియర్ చేయండి</translation> <translation id="182139138257690338">ఆటోమేటిక్ డౌన్లోడ్లు</translation> <translation id="1821930232296380041">చెల్లని రిక్వెస్ట్ లేదా రిక్వెస్ట్ పారామీటర్లు</translation> <translation id="1822540298136254167">మీరు సందర్శించిన వెబ్సైట్లు, వాటిపై వెచ్చించిన సమయం</translation> @@ -359,7 +359,7 @@ <translation id="1826516787628120939">చెక్ చేస్తోంది</translation> <translation id="1828959155404624835">అద్దెకు కార్లు</translation> <translation id="1834321415901700177">ఈ సైట్లో హానికరమైన ప్రోగ్రామ్లు ఉన్నాయి</translation> -<translation id="1838374766361614909">శోధనను తీసివేయి</translation> +<translation id="1838374766361614909">శోధనను తీసివేయండి</translation> <translation id="1839551713262164453">విధాన విలువల క్రమబద్ధీకరణ ఎర్రర్లతో విఫలమైంది</translation> <translation id="1842969606798536927">చెల్లింపు</translation> <translation id="1855370856221982654">బాక్సింగ్</translation> @@ -406,7 +406,7 @@ <translation id="1991830984769263878">ఆటోమొబైల్ బీమా</translation> <translation id="1992184150316179036">రేడియో కంట్రోల్ & మోడలింగ్</translation> <translation id="1992331125980284532">JIS B3</translation> -<translation id="1997484222658892567"><ph name="URL" /> శాశ్వతంగా అధిక డేటాని మీ స్థానిక కంప్యూటర్లో నిల్వ చేయాలనుకుంటోంది</translation> +<translation id="1997484222658892567"><ph name="URL" /> శాశ్వతంగా అధిక డేటాను మీ స్థానిక కంప్యూటర్లో నిల్వ చేయాలనుకుంటోంది</translation> <translation id="2001146170449793414">{COUNT,plural, =1{మరియు మరొకటి}other{మరియు మరో #}}</translation> <translation id="2003709556000175978">ఇప్పుడే మీ పాస్వర్డ్ని రీసెట్ చేయండి</translation> <translation id="2003775180883135320">ఎగువ భాగంలో నాలుగు రంధ్రాలు</translation> @@ -562,7 +562,7 @@ <translation id="2450021089947420533">Chrome హిస్టరీలో మీ యాక్టివిటీలు</translation> <translation id="2463739503403862330">పూరించు</translation> <translation id="2465402087343596252">ఆర్కిటెక్చర్-E</translation> -<translation id="2465655957518002998">బట్వాడా పద్ధతిని ఎంచుకోండి</translation> +<translation id="2465655957518002998">డెలివరీ పద్ధతిని ఎంచుకోండి</translation> <translation id="2465688316154986572">స్టేపుల్</translation> <translation id="2465914000209955735">Chromeలో మీరు డౌన్లోడ్ చేసిన ఫైల్లను మేనేజ్ చేయండి</translation> <translation id="2466004615675155314">వెబ్ నుండి సమాచారాన్ని చూపించు</translation> @@ -700,7 +700,7 @@ <translation id="2820957248982571256">స్కాన్ చేస్తోంది...</translation> <translation id="2824775600643448204">అడ్రస్ మరియు శోధన బార్</translation> <translation id="2826760142808435982"><ph name="CIPHER" />ను ఉపయోగించి కనెక్షన్ ఎన్క్రిప్ట్ చేయబడింది, ప్రామాణీకరించబడింది మరియు <ph name="KX" />ను కీలకమైన పరివర్తన విధానంగా ఉపయోగిస్తుంది.</translation> -<translation id="2835170189407361413">ఫారమ్ను క్లియర్ చేయి</translation> +<translation id="2835170189407361413">ఫారమ్ను క్లియర్ చేయండి</translation> <translation id="2839032553903800133">నోటిఫికేషన్లు బ్లాక్ చేయబడ్డాయి</translation> <translation id="2839501879576190149">ముందున్న సైట్ నకిలీది</translation> <translation id="2850739647070081192">ఆహ్వానం (ఎన్వలప్)</translation> @@ -728,7 +728,7 @@ <translation id="2916038427272391327">ఇతర ప్రోగ్రామ్లను మూసివేయండి</translation> <translation id="2918922650248459053">డైవింగ్ & నీటి లోపల చేసే యాక్టివిటీలు</translation> <translation id="2922350208395188000">సర్వర్ యొక్క ప్రమాణపత్రం తనిఖీ చెయ్యబడదు.</translation> -<translation id="2925673989565098301">బట్వాడా పద్ధతి</translation> +<translation id="2925673989565098301">డెలివరీ పద్ధతి</translation> <translation id="2928905813689894207">బిల్లింగ్ అడ్రస్</translation> <translation id="2929525460561903222">{SHIPPING_ADDRESS,plural, =0{<ph name="SHIPPING_ADDRESS_PREVIEW" />}=1{<ph name="SHIPPING_ADDRESS_PREVIEW" /> మరియు మరో <ph name="NUMBER_OF_ADDITIONAL_ADDRESSES" />}other{<ph name="SHIPPING_ADDRESS_PREVIEW" /> మరియు మరో <ph name="NUMBER_OF_ADDITIONAL_ADDRESSES" />}}</translation> <translation id="2930577230479659665">ప్రతి కాపీ తర్వాత కత్తిరించండి</translation> @@ -800,7 +800,7 @@ <translation id="3137507986424712703">{COUNT,plural, =0{ఏమీ లేవు}=1{1 ఖాతా సైన్ ఇన్ డేటా}other{# ఖాతాల సైన్ ఇన్ డేటా}}</translation> <translation id="3145945101586104090">ప్రతిస్పందనను డీకోడ్ చేయడంలో విఫలమైంది</translation> <translation id="3150653042067488994">తాత్కాలిక సర్వర్ ఎర్రర్</translation> -<translation id="3154506275960390542">ఈ పేజీలో ఉన్న ఫారమ్ను సురక్షితంగా సమర్పించలేకపోవచ్చు. బదిలీ చేయబడే సమయంలో మీరు పంపే డేటాని ఇతరులు వీక్షించవచ్చు లేదా సర్వర్ స్వీకరించే డేటాను మార్చడం కోసం హ్యాకర్లు దీనిని ఎడిట్ చేయవచ్చు.</translation> +<translation id="3154506275960390542">ఈ పేజీలో ఉన్న ఫారమ్ను సురక్షితంగా సమర్పించలేకపోవచ్చు. బదిలీ చేయబడే సమయంలో మీరు పంపే డేటాను ఇతరులు వీక్షించవచ్చు లేదా సర్వర్ స్వీకరించే డేటాను మార్చడం కోసం హ్యాకర్లు దీనిని ఎడిట్ చేయవచ్చు.</translation> <translation id="3154987252551138431">'సమీపంలోని షేరింగ్'ను ఉపయోగిస్తున్నప్పుడు ఏదో తప్పు జరిగింది</translation> <translation id="315504272643575312"><ph name="MANAGER" /> మీ ఖాతాను మేనేజ్ చేస్తోంది.</translation> <translation id="3157931365184549694">పునరుద్ధరించు</translation> @@ -897,10 +897,10 @@ <translation id="3381668585148405088">మీ కొనుగోలును వెరిఫై చేయండి</translation> <translation id="3383566085871012386">ప్రస్తుతం ఉన్న ప్రాధాన్యత క్రమం</translation> <translation id="3387261909427947069">పేమెంట్ ఆప్షన్లు</translation> -<translation id="3391030046425686457">బట్వాడా అడ్రస్</translation> +<translation id="3391030046425686457">డెలివరీ అడ్రస్</translation> <translation id="3391482648489541560">ఫైల్ను ఎడిట్ చేయడం</translation> <translation id="3395827396354264108">పికప్ పద్ధతి</translation> -<translation id="3399952811970034796">బట్వాడా అడ్రస్</translation> +<translation id="3399952811970034796">డెలివరీ అడ్రస్</translation> <translation id="3402261774528610252">ఈ సైట్ను లోడ్ చేయడానికి ఉపయోగించిన కనెక్షన్ TLS 1.0 లేదా TLS 1.1ను ఉపయోగించింది, ఇవి విస్మరించబడ్డాయి, భవిష్యత్తులో నిలిపివేయబడతాయి. ఒక సారి నిలిపివేయబడితే, యూజర్లు ఈ సైట్ను లోడ్ చేయకుండా నివారించబడతారు. సర్వర్ TLS 1.2 లేదా ఆపై వెర్షన్లను ఎనేబుల్ చేయాలి.</translation> <translation id="3405664148539009465">ఫాంట్లను అనుకూలంగా మార్చండి</translation> <translation id="3407789382767355356">థర్డ్-పార్టీ సైన్ ఇన్</translation> @@ -910,7 +910,7 @@ <translation id="3422248202833853650">మెమరీని ఖాళీ చేయడానికి ఇతర ప్రోగ్రామ్ల నుండి నిష్క్రమించడాన్ని ప్రయత్నించండి.</translation> <translation id="3422472998109090673"><ph name="HOST_NAME" />ని ప్రస్తుతం చేరుకోవడం సాధ్యపడదు.</translation> <translation id="3423742043356668186">సిస్టమ్ పేర్కొన్నవి</translation> -<translation id="3427092606871434483">అనుమతించు (డిఫాల్ట్)</translation> +<translation id="3427092606871434483">అనుమతించండి (డిఫాల్ట్)</translation> <translation id="3427342743765426898">&సవరించడాన్ని రిపీట్ చేయి</translation> <translation id="342781501876943858">మీరు మీ పాస్వర్డ్ని ఇతర సైట్లలో తిరిగి ఉపయోగించినట్లయితే దీనిని రీసెట్ చేయాల్సిందిగా Chromium సిఫార్సు చేస్తోంది.</translation> <translation id="3428151540071562330">DnsOverHttpsTemplates సర్వర్ టెంప్లేట్ URIలు చెల్లవు, ఉపయోగించబడవు.</translation> @@ -958,7 +958,7 @@ <translation id="3566021033012934673">మీ కనెక్షన్ ప్రైవేట్ కాదు</translation> <translation id="3567778190852720481">ఎంటర్ప్రైజ్ ఖాతాతో ఎన్రోల్ చేయడం సాధ్యపడదు (ఎంటర్ప్రైజ్ ఖాతాకు అర్హత లేదు).</translation> <translation id="3574305903863751447"><ph name="CITY" />, <ph name="STATE" /> <ph name="COUNTRY" /></translation> -<translation id="3575121482199441727">ఈ సైట్కు అనుమతించు</translation> +<translation id="3575121482199441727">ఈ సైట్కు అనుమతించండి</translation> <translation id="3576616784287504635"><ph name="SITE" />లో పొందుపరిచిన పేజీ ఇలా చెబుతోంది</translation> <translation id="3577902790357386792">జిమ్నాస్టిక్స్</translation> <translation id="3581089476000296252">ఈ పేజీ సిద్ధమైనప్పుడు Chrome మీకు తెలియజేస్తుంది. <a>రద్దు చేయి</a></translation> @@ -979,7 +979,7 @@ <translation id="361438452008624280">లిస్ట్ నమోదు "<ph name="LANGUAGE_ID" />": తెలియని లేదా మద్దతు లేని భాష.</translation> <translation id="3614934205542186002"><ph name="RUN_CHROME_SAFETY_CHECK_FOCUSED_FRIENDLY_MATCH_TEXT" />, Chrome సెట్టింగ్లలో భద్రతా తనిఖీని రన్ చేయడానికి 'Tab'ను నొక్కి ఆపై 'Enter'ను నొక్కండి</translation> <translation id="3615877443314183785">చెల్లుబాటు అయ్యే గడువు ముగింపు తేదీని నమోదు చేయండి</translation> -<translation id="36224234498066874">బ్రౌజింగ్ డేటాను క్లియర్ చేయి...</translation> +<translation id="36224234498066874">బ్రౌజింగ్ డేటాను క్లియర్ చేయండి...</translation> <translation id="362276910939193118">పూర్తి చరిత్రను చూపించు</translation> <translation id="3630155396527302611">ఇప్పటికే ఇది నెట్వర్క్ను యాక్సెస్ చేయడానికి అనుమతించబడిన ప్రోగ్రామ్ లాగా లిస్ట్ చేయబడి ఉంటే, దీన్ని లిస్ట్ నుండి తీసివేసి, ఆపై మళ్లీ జోడించి ప్రయత్నించండి.</translation> @@ -1148,7 +1148,7 @@ <translation id="4111546256784973544">పెయింట్బాల్</translation> <translation id="4112140312785995938">వెనుకకు జరుపు</translation> <translation id="4114146879518089587">సైట్కు కొనసాగండి</translation> -<translation id="4116663294526079822">ఈ సైట్లో ఎల్లప్పుడూ అనుమతించు</translation> +<translation id="4116663294526079822">ఈ సైట్లో ఎల్లప్పుడూ అనుమతించండి</translation> <translation id="4116701314593212016">JIS B7</translation> <translation id="4117700440116928470">విధానం పరిధికి మద్దతు లేదు.</translation> <translation id="4121428309786185360">గడువు ముగిసేది</translation> @@ -1232,7 +1232,7 @@ <translation id="4306812610847412719">క్లిప్బోర్డ్</translation> <translation id="4310070645992025887">మీ బ్రౌజింగ్ జర్నీలను సెర్చ్ చేయండి</translation> <translation id="4312613361423056926">B2</translation> -<translation id="4312866146174492540">బ్లాక్ చేయి (డిఫాల్ట్)</translation> +<translation id="4312866146174492540">బ్లాక్ చేయండి (డిఫాల్ట్)</translation> <translation id="4314815835985389558">సింక్ను నిర్వహించండి</translation> <translation id="4318312030194671742">పెయింట్ ప్రివ్యూ కంపోజిటర్ సర్వీస్</translation> <translation id="4318566738941496689">మీ పరికరం పేరు, నెట్వర్క్ అడ్రస్</translation> @@ -1427,7 +1427,7 @@ <translation id="4852429274334674023">ఆపరేటింగ్ సిస్టమ్లు</translation> <translation id="485316830061041779">జర్మన్</translation> <translation id="4853901935952445031">ఫిబ్రవరి 2022 తర్వాత, ఈ సైట్ U2F APIను ఉపయోగించలేదు. ఈ సైట్ మీది అయితే, వెబ్ ప్రామాణీకరణ APIను ఉపయోగించడానికి మీరు దాని సెట్టింగ్ను మార్చాలి.</translation> -<translation id="4854362297993841467">ఈ బట్వాడా పద్ధతి అందుబాటులో లేదు. వేరే పద్ధతిని ప్రయత్నించండి.</translation> +<translation id="4854362297993841467">ఈ డెలివరీ పద్ధతి అందుబాటులో లేదు. వేరే పద్ధతిని ప్రయత్నించండి.</translation> <translation id="4854853140771946034">Google Keepలో త్వరగా కొత్త నోట్ను క్రియేట్ చేయండి</translation> <translation id="485902285759009870">కోడ్ను వెరిఫై చేస్తోంది...</translation> <translation id="4866506163384898554">మీ కర్సర్ను చూపించడానికి |<ph name="ACCELERATOR1" />| + |<ph name="ACCELERATOR2" />| నొక్కండి</translation> @@ -1487,14 +1487,14 @@ <translation id="5019198164206649151">బ్యాకింగ్ నిల్వ చెల్లని స్థితిలో ఉంది</translation> <translation id="5020776957610079374">ప్రపంచవ్యాప్తంగాా వినదగిన మ్యూజిక్</translation> <translation id="5023310440958281426">మీ నిర్వాహకుని విధానాలను చూడండి</translation> -<translation id="5029568752722684782">కాపీని తీసివేయి</translation> +<translation id="5029568752722684782">కాపీని తీసివేయండి</translation> <translation id="5030338702439866405">వీరిచే జారీచేయబడింది</translation> <translation id="503069730517007720">"<ph name="SOFTWARE_NAME" />" యొక్క రూట్ సర్టిఫికేట్ అవసరం, కానీ అది ఇన్స్టాల్ చేయబడలేదు. ఈ సమస్యను పరిష్కరించాలంటే, మీ IT నిర్వాహకులు "<ph name="SOFTWARE_NAME" />" యొక్క కాన్ఫిగరేషన్ సూచనలను పరిశీలించాలి. <ph name="FURTHER_EXPLANATION" /></translation> <translation id="5031870354684148875">Google Translate గురించి</translation> <translation id="503498442187459473"><ph name="HOST" /> మీ కెమెరాను మరియు మైక్రోఫోన్ను ఉపయోగించాలనుకుంటోంది</translation> <translation id="5035135400558156732">తోటపని</translation> <translation id="5039762155821394373">ఫాంట్ సైజ్</translation> -<translation id="5039804452771397117">అనుమతించు</translation> +<translation id="5039804452771397117">అనుమతించండి</translation> <translation id="5040262127954254034">గోప్యత</translation> <translation id="5043480802608081735">మీరు కాపీ చేసిన లింక్</translation> <translation id="5044545992476246592">మీరు ఇప్పుడే ఉపయోగించిన పాస్వర్డ్, డేటా ఉల్లంఘనలో కనగొనబడింది. మీ Google Assistant మీ పాస్వర్డ్ను ఆటోమేటిక్గా మార్చగలదు.</translation> @@ -1573,7 +1573,7 @@ <translation id="5222812217790122047">ఈమెయిల్ అవసరం</translation> <translation id="5228404122310299359">పార్టీ & సెలవులోని వేడుకలకు సంబంధించిన సామగ్రి</translation> <translation id="5229588705416009823">చాలా ఎక్కువ మంది ఆడే గేమ్లు</translation> -<translation id="5230733896359313003">బట్వాడా అడ్రస్</translation> +<translation id="5230733896359313003">డెలివరీ అడ్రస్</translation> <translation id="5230815978613972521">B8</translation> <translation id="5233045608889518621">12x19</translation> <translation id="5234764350956374838">తొలగించు</translation> @@ -1644,7 +1644,7 @@ <translation id="540969355065856584">ఈ సర్వర్ <ph name="DOMAIN" /> అని నిరూపించుకోలేకపోయింది; దీని భద్రతా ప్రమాణపత్రం ప్రస్తుతం చెల్లదు. ఇది తప్పుగా కాన్ఫిగర్ చేయడం వలన లేదా దాడి చేసే వ్యక్తి మీ కనెక్షన్కు అంతరాయం కలిగించడం వలన జరిగి ఉండవచ్చు.</translation> <translation id="5412236728747081950">మీకు మరింత సందర్భోచితమైన యాడ్లను చూపడానికి ఈ సైట్ మీ ఆసక్తులను Chrome నుండి పొందుతుంది</translation> <translation id="541416427766103491">స్టాకర్ 4</translation> -<translation id="5421136146218899937">బ్రౌజింగ్ డేటాను క్లియర్ చేయి...</translation> +<translation id="5421136146218899937">బ్రౌజింగ్ డేటాను క్లియర్ చేయండి...</translation> <translation id="5426179911063097041"><ph name="SITE" /> మీకు నోటిఫికేషన్లను పంపాలనుకుంటోంది</translation> <translation id="5428105026674456456">స్పానిష్</translation> <translation id="5430298929874300616">బుక్మార్క్ను తీసివేయండి</translation> @@ -1681,7 +1681,7 @@ <translation id="5528532273234423708">హోమ్ ఆటోమేషన్</translation> <translation id="55293785478302737">కుట్టిన అంచులు</translation> <translation id="553484882784876924">Prc6 (ఎన్వలప్)</translation> -<translation id="5535133333442455806">'బ్రౌజింగ్ డేటాను క్లియర్ చేయి' బటన్, Chrome సెట్టింగ్లలో మీ బ్రౌజింగ్ హిస్టరీ, కుక్కీలు, కాష్ ఇంకా మరిన్నింటిని క్లియర్ చేయడానికి 'Enter' నొక్కండి</translation> +<translation id="5535133333442455806">'బ్రౌజింగ్ డేటాను క్లియర్ చేయండి' బటన్, Chrome సెట్టింగ్లలో మీ బ్రౌజింగ్ హిస్టరీ, కుక్కీలు, కాష్ ఇంకా మరిన్నింటిని క్లియర్ చేయడానికి 'Enter' నొక్కండి</translation> <translation id="5536214594743852365">"<ph name="SECTION" />" విభాగాన్ని చూపించు</translation> <translation id="5539243836947087108">రాఫ్ట్</translation> <translation id="5540224163453853">రిక్వెస్ట్ చేసిన కథనాన్ని కనుగొనడం సాధ్యపడలేదు.</translation> @@ -1760,7 +1760,7 @@ <translation id="5754400531489347219">పెంపుడు జంతువులు & ఇతర జంతువులు</translation> <translation id="5759751709240058861">మీ కెమెరాను ఉపయోగించండి, తరలించండి</translation> <translation id="5763042198335101085">చెల్లుబాటు అయ్యే ఈమెయిల్ అడ్రస్ను నమోదు చేయండి</translation> -<translation id="5765072501007116331">బట్వాడా పద్ధతులు మరియు అవసరాలను చూడాలంటే, అడ్రస్ను ఎంచుకోండి</translation> +<translation id="5765072501007116331">డెలివరీ పద్ధతులు మరియు అవసరాలను చూడాలంటే, అడ్రస్ను ఎంచుకోండి</translation> <translation id="57689295674415555">వర్చువల్ కార్డ్ నంబర్ పూరించబడలేదా?</translation> <translation id="5776313857861697733">ప్రాధాన్యత</translation> <translation id="5781136890105823427">ప్రయోగం ప్రారంభించబడింది</translation> @@ -1823,7 +1823,7 @@ <translation id="5955063559762970069">హోటళ్లు & వసతులు</translation> <translation id="5963413905009737549">విభాగం</translation> <translation id="5967592137238574583">సంప్రదింపు సమాచారాన్ని ఎడిట్ చేయండి</translation> -<translation id="5967867314010545767">చరిత్ర నుండి తీసివేయి</translation> +<translation id="5967867314010545767">చరిత్ర నుండి తీసివేయండి</translation> <translation id="5968793460449681917">ప్రతి సందర్శనలో</translation> <translation id="5974052231147553524">సిక్స్త్ రోల్</translation> <translation id="5975083100439434680">దూరంగా జూమ్ చేయి</translation> @@ -1888,7 +1888,7 @@ <translation id="6124432979022149706">Chrome Enterprise కనెక్టర్లు</translation> <translation id="6127379762771434464">అంశాన్ని తీసివేసారు</translation> <translation id="6132161237766805930"><ph name="BEGIN_LINK" />Chromeలో అజ్ఞాత మోడ్ గురించి మరింత తెలుసుకోండి<ph name="END_LINK" /></translation> -<translation id="6146055958333702838">ఏవైనా కేబుల్లను చెక్ చేయండి మరియు మీరు ఉపయోగించే ఏవైనా రూటర్లు, మోడెమ్లు +<translation id="6146055958333702838">ఏవైనా కేబుళ్లను చెక్ చేయండి మరియు మీరు ఉపయోగించే ఏవైనా రూటర్లు, మోడెమ్లు లేదా ఇతర నెట్వర్క్ పరికరాలను రీబూట్ చేయండి.</translation> <translation id="614940544461990577">ఇలా చేసి ప్రయత్నించండి:</translation> <translation id="6150036310511284407">ఎడమవైపు మూడు రంధ్రాలు</translation> @@ -1930,7 +1930,7 @@ <translation id="6276112860590028508">మీ పఠన లిస్ట్లో ఉన్న పేజీలు ఇక్కడ కనిపిస్తాయి</translation> <translation id="627746635834430766">తర్వాతిసారి మరింత వేగంగా పేమెంట్ చేయడానికి, మీ కార్డ్, బిల్లింగ్ అడ్రస్ను మీ Google ఖాతాకు సేవ్ చేయండి.</translation> <translation id="6279183038361895380">మీ కర్సర్ను చూపడానికి |<ph name="ACCELERATOR" />| నొక్కండి</translation> -<translation id="6280223929691119688">ఈ అడ్రస్కు బట్వాడా చేయడం సాధ్యం కాదు. వేరే అడ్రస్ను ఎంచుకోండి.</translation> +<translation id="6280223929691119688">ఈ అడ్రస్కు డెలివరీ చేయడం సాధ్యం కాదు. వేరే అడ్రస్ను ఎంచుకోండి.</translation> <translation id="6285507000506177184">'Chromeలో డౌన్లోడ్లను మేనేజ్ చేయండి' బటన్, Chromeలో మీరు డౌన్లోడ్ చేసిన ఫైల్స్ను మేనేజ్ చేయడానికి 'Enter'ను నొక్కండి</translation> <translation id="6289939620939689042">పేజీ రంగు</translation> <translation id="6290238015253830360">మీకు సూచించిన కథనాలు ఇక్కడ కనిపిస్తాయి</translation> @@ -2049,7 +2049,7 @@ <translation id="6630043285902923878">USB పరికరాలను కనుగొంటోంది...</translation> <translation id="6630809736994426279"><ph name="BEGIN_BOLD" /><ph name="SITE" /><ph name="END_BOLD" /> లో హ్యాకర్లు మీ సమాచారాన్ని (ఉదాహరణకు, ఫోటోలు, పాస్వర్డ్లు, మెసేజ్లు మరియు క్రెడిట్ కార్డ్లు) దొంగిలించగల లేదా తొలగించగల హానికరమైన ప్రోగ్రామ్లను మీ Macలో ఇన్స్టాల్ చేయడానికి ప్రయత్నించవచ్చు. <ph name="BEGIN_LEARN_MORE_LINK" />మరింత తెలుసుకోండి<ph name="END_LEARN_MORE_LINK" /></translation> <translation id="663260587451432563">JIS B4</translation> -<translation id="6643016212128521049">క్లియర్ చేయి</translation> +<translation id="6643016212128521049">క్లియర్ చేయండి</translation> <translation id="6645291930348198241">కుక్కీలను, సైట్ డేటాను యాక్సెస్ చేయాలనుకుంటోంది.</translation> <translation id="6646269444027925224">{COUNT,plural, =0{ఏవీ లేవు}=1{1 సైట్ నుండి (మీరు మీ Google ఖాతా నుండి సైన్ అవుట్ చేయబడరు)}other{# సైట్ల నుండి (మీరు మీ Google ఖాతా నుండి సైన్ అవుట్ చేయబడరు)}}</translation> <translation id="6648459603387803038">మీ అడ్మినిస్ట్రేటర్ మీ బ్రౌజర్ సెటప్ను రిమోట్ విధానంలో మార్చవచ్చు. ఈ పరికరంలోని యాక్టివిటీని Chrome వెలుపల కూడా మేనేజ్ చేయవచ్చు.</translation> @@ -2226,7 +2226,7 @@ <translation id="7129809579943936035"><ph name="VALUE_PROP" /> <ph name="DETAILS" /></translation> <translation id="7132939140423847331">మీ అడ్మిన్ ఈ డేటాను కాపీ చేయకుండా నిషేధించారు.</translation> <translation id="7135130955892390533">స్థితిని చూపు</translation> -<translation id="7138472120740807366">బట్వాడా పద్ధతి</translation> +<translation id="7138472120740807366">డెలివరీ పద్ధతి</translation> <translation id="7139892792842608322">ప్రైమరీ ట్రే</translation> <translation id="714064300541049402">2వ వైపు ప్రింట్లో చిత్రాన్ని X అక్షంలో జరపు</translation> <translation id="7152423860607593928">నంబర్-14 (ఎన్వలప్)</translation> @@ -2348,7 +2348,7 @@ <translation id="7442725080345379071">లేత నారింజ రంగు</translation> <translation id="7445762425076701745">మీరు కనెక్ట్ చేసిన సర్వర్ యొక్క గుర్తింపు పూర్తిగా ధృవీకరించబడలేదు. మీరు దీని యొక్క యాజమాన్యాన్ని ధృవీకరించడానికి అంతర్గత సర్టిఫికెట్ అధికారికి మరొక దాని లేని మీ నెట్వర్క్లో మాత్రమే చెల్లుబాటు అయ్యే పేరును ఉపయోగించి సర్వర్కు కనెక్ట్ చేశారు. కొన్ని సర్టిఫికెట్ అధికారులు సంబంధం లేని ఈ పేర్లకు సర్టిఫికెట్ను జారీ చేస్తారు. మీరు సరైన వెబ్సైట్కు మరియు అటాకర్కు కనెక్ట్ చేశారా అని నిర్ధారించడానికి వేరే మార్గం లేదు.</translation> <translation id="7451311239929941790">ఈ సమస్య గురించి <ph name="BEGIN_LINK" />మరింత తెలుసుకోండి<ph name="END_LINK" />.</translation> -<translation id="7455133967321480974">సార్వజనీన డిఫాల్ట్ను ఉపయోగించు (బ్లాక్ చేయి)</translation> +<translation id="7455133967321480974">సార్వజనీన డిఫాల్ట్ను ఉపయోగించు (బ్లాక్ చేయండి)</translation> <translation id="7460618730930299168">మీరు ఎంచుకున్నది మరియు స్క్రీనింగ్ చేస్తున్నది వేరుగా ఉన్నాయి. కొనసాగించాలా?</translation> <translation id="7463075493919226237">ఆస్ట్రేలియన్ ఫుట్బాల్</translation> <translation id="7469935732330206581">ఫారమ్ సురక్షితమైనది కాదు</translation> @@ -2615,7 +2615,7 @@ <translation id="8163866351304776260">ఎడమవైపు నాలుగు రంధ్రాలు</translation> <translation id="8175796834047840627">మీరు సైన్ ఇన్ చేశారు కనుక మీ కార్డ్లను మీ Google ఖాతాలో సేవ్ చేసుకునే చక్కని అవకాశాన్ని Chrome మీకు అందిస్తోంది. అలాగే మీరు ఈ చర్యను సెట్టింగ్లలోకి వెళ్లి మార్చుకోవచ్చు.</translation> <translation id="8176440868214972690">సెట్టింగ్లు లేదా పాలసీల వంటి కొంత సమాచారాన్ని, దిగువున పేర్కొన్న వెబ్సైట్లకు ఈ పరికరపు అడ్మినిస్ట్రేటర్ పంపారు.</translation> -<translation id="8184538546369750125">సార్వజనీన డిఫాల్ట్ను ఉపయోగించు (అనుమతించు)</translation> +<translation id="8184538546369750125">సార్వజనీన డిఫాల్ట్ను ఉపయోగించు (అనుమతించండి)</translation> <translation id="8186706823560132848">సాఫ్ట్వేర్</translation> <translation id="8190193880870196235">ఎక్స్టెన్షన్ ద్వారా మేనేజ్ చేయబడుతుంది</translation> <translation id="8194797478851900357">&తరలించడాన్ని రద్దు చేయి</translation> @@ -2639,7 +2639,7 @@ <translation id="8237519162179154808">అభిరుచులు & కాలక్షేపం</translation> <translation id="8238581221633243064">కొత్త అజ్ఞాత ట్యాబ్లో పేజీని తెరవండి</translation> <translation id="8241707690549784388">మీరు వెతికే పేజీ మీరు ఎంటర్ చేసిన సమాచారాన్ని ఉపయోగించుకుంది. ఆ పేజీకి తిరిగి వెళ్లడం ద్వారా మీరు చేసిన ఏ చర్య అయినా రిపీట్ చేయవలసి వస్తుంది. మీరు కొనసాగాలని అనుకుంటున్నారా?</translation> -<translation id="8241712895048303527">ఈ సైట్లో బ్లాక్ చేయి</translation> +<translation id="8241712895048303527">ఈ సైట్లో బ్లాక్ చేయండి</translation> <translation id="8242426110754782860">కొనసాగు</translation> <translation id="8249296373107784235">రద్దుచేయి</translation> <translation id="8249463483885748674">ప్రామాణిక & ప్రవేశ పరీక్షలు</translation> @@ -2717,7 +2717,7 @@ <translation id="8446884382197647889">మరింత తెలుసుకోండి</translation> <translation id="8449836157089738489">అన్నింటినీ కొత్త ట్యాబ్ గ్రూప్లో తెరవండి</translation> <translation id="8457125768502047971">అనిశ్చితం</translation> -<translation id="8461694314515752532">మీ స్వంత సింక్ రహస్య పదబంధంతో సింక్ చేయబడిన డేటాని ఎన్క్రిప్ట్ చేయండి</translation> +<translation id="8461694314515752532">మీ స్వంత సింక్ రహస్య పదబంధంతో సింక్ చేయబడిన డేటాను ఎన్క్రిప్ట్ చేయండి</translation> <translation id="8466379296835108687">{COUNT,plural, =1{1 క్రెడిట్ కార్డ్}other{# క్రెడిట్ కార్డ్లు}}</translation> <translation id="8473863474539038330">అడ్రస్లు, మరికొన్ని వివరాలు</translation> <translation id="8474910779563686872">డెవలపర్ వివరాలను చూపు</translation> @@ -2859,7 +2859,7 @@ <translation id="890493561996401738">సూచన బటన్ను తీసివేయండి, <ph name="REMOVE_BUTTON_FOCUSED_FRIENDLY_MATCH_TEXT" />ను తీసివేయడానికి ఎంటర్ నొక్కండి</translation> <translation id="8912362522468806198">Google ఖాతా</translation> <translation id="8913778647360618320">'పేమెంట్ ఆప్షన్లను మేనేజ్ చేయి' బటన్, Chrome సెట్టింగ్లలో మీ పేమెంట్లు, క్రెడిట్ కార్డ్ సమాచారం మేనేజ్ చేయడానికి 'Enter'ను నొక్కండి</translation> -<translation id="8922013791253848639">ప్రకటనలను ఈ సైట్లో ఎప్పుడూ అనుమతించు</translation> +<translation id="8922013791253848639">ప్రకటనలను ఈ సైట్లో ఎప్పుడూ అనుమతించండి</translation> <translation id="892588693504540538">కుడివైపు ఎగువ భాగంలో రంధ్రం</translation> <translation id="8930330541574156305">రియల్ ఎస్టేట్</translation> <translation id="8931333241327730545">మీరు ఈ కార్డ్ను మీ Google ఖాతాకు సేవ్ చేయాలనుకుంటున్నారా?</translation> @@ -2874,7 +2874,7 @@ <translation id="8963213021028234748"><ph name="MARKUP_1" />సూచనలు:<ph name="MARKUP_2" />మీకు డేటా కనెక్షన్ ఉందని నిర్ధారించుకోండి<ph name="MARKUP_3" />ఈ వెబ్పేజీని తర్వాత మళ్లీ లోడ్ చేయండి<ph name="MARKUP_4" />మీరు నమోదు చేసిన అడ్రస్ చెక్ చేయండి<ph name="MARKUP_5" /></translation> <translation id="8968766641738584599">కార్డ్ని సేవ్ చేయండి</translation> <translation id="8971063699422889582">సర్వర్ ప్రమాణపత్రం గడువు ముగిసింది.</translation> -<translation id="8975012916872825179">ఫోన్ నంబర్లు, ఈమెయిల్ అడ్రస్లు మరియు బట్వాడా అడ్రస్లు లాంటి సమాచారం ఉంటుంది</translation> +<translation id="8975012916872825179">ఫోన్ నంబర్లు, ఈమెయిల్ అడ్రస్లు మరియు డెలివరీ అడ్రస్లు లాంటి సమాచారం ఉంటుంది</translation> <translation id="8975263830901772334">మీరు ముద్రించే ఫైళ్ల పేర్లు</translation> <translation id="8978053250194585037">Google సురక్షిత బ్రౌజింగ్ ఇటీవల <ph name="SITE" />లో <ph name="BEGIN_LINK" />ఫిషింగ్ని గుర్తించింది<ph name="END_LINK" />. ఫిషింగ్ సైట్లు వేరే వెబ్సైట్ల లాగా ప్రవర్తించడం ద్వారా మిమ్మల్ని మాయ చేయవచ్చు.</translation> <translation id="8983369100812962543">మీరు ఇప్పుడు యాప్ పరిమాణం మార్చవచ్చు</translation> @@ -2953,7 +2953,7 @@ <translation id="9158625974267017556">C6 (ఎన్వలప్)</translation> <translation id="9164742147345933553">os://flags</translation> <translation id="9168814207360376865">ఏవైనా పేమెంట్ ఆప్షన్లను మీరు సేవ్ చేశారో లేదో చెక్ చేసేందుకు వెబ్సైట్లను అనుమతించండి</translation> -<translation id="9169664750068251925">ఈ సైట్లో ఎప్పుడూ బ్లాక్ చేయి</translation> +<translation id="9169664750068251925">ఈ సైట్లో ఎప్పుడూ బ్లాక్ చేయండి</translation> <translation id="9169931577761441333"><ph name="APP_NAME" />ను హోమ్ స్క్రీన్కు జోడించండి</translation> <translation id="9170848237812810038">&అన్డు</translation> <translation id="9171296965991013597">యాప్ నుండి నిష్క్రమించాలా?</translation> @@ -2987,7 +2987,7 @@ <translation id="947370374845726940"><ph name="CREATE_GOOGLE_SITE_FOCUSED_FRIENDLY_MATCH_TEXT" />, Google Sitesలో త్వరగా కొత్త సైట్ను క్రియేట్ చేయడానికి Tabను నొక్కి, ఆపై Enterను నొక్కండి</translation> <translation id="950736567201356821">ఎగువ భాగంలో మూడు రంధ్రాలు</translation> <translation id="961663415146723894">దిగువ భాగంలో బైండ్</translation> -<translation id="962484866189421427">ఈ కంటెంట్ వేరేవాటిలా కనిపించే మోసపూరిత యాప్లను ఇన్స్టాల్ చేయడానికి ప్రయత్నించవచ్చు లేదా మిమ్మల్ని ట్రాక్ చేయడానికి ఉపయోగించే డేటాని సేకరించవచ్చు. <ph name="BEGIN_LINK" />అయినప్పటికీ, చూపించు<ph name="END_LINK" /></translation> +<translation id="962484866189421427">ఈ కంటెంట్ వేరేవాటిలా కనిపించే మోసపూరిత యాప్లను ఇన్స్టాల్ చేయడానికి ప్రయత్నించవచ్చు లేదా మిమ్మల్ని ట్రాక్ చేయడానికి ఉపయోగించే డేటాను సేకరించవచ్చు. <ph name="BEGIN_LINK" />అయినప్పటికీ, చూపించు<ph name="END_LINK" /></translation> <translation id="96680173638229310">ఆటోమొబైల్స్ & వాహనాలు</translation> <translation id="969892804517981540">అధికారిక బిల్డ్</translation> <translation id="973773823069644502">డెలివరీ అడ్రస్ను జోడించండి</translation>
diff --git a/components/strings/components_strings_uz.xtb b/components/strings/components_strings_uz.xtb index 63917157..34d4b3a 100644 --- a/components/strings/components_strings_uz.xtb +++ b/components/strings/components_strings_uz.xtb
@@ -1462,6 +1462,7 @@ <translation id="4969341057194253438">Yozuvni oʻchirish</translation> <translation id="4973922308112707173">Yuqoridan 2 ta teshik ochish</translation> <translation id="4976702386844183910">Oxirgi tashrif: <ph name="DATE" /></translation> +<translation id="498323057460789381">Sxemani tekshirish xatosi: <ph name="ERROR" /></translation> <translation id="4984088539114770594">Mikrofon ishlatilsinmi?</translation> <translation id="4984339528288761049">Prc5 (Envelope)</translation> <translation id="4989163558385430922">Hammasi</translation>
diff --git a/components/stylus_handwriting/android/java/src/org/chromium/components/stylus_handwriting/DirectWritingSettingsHelper.java b/components/stylus_handwriting/android/java/src/org/chromium/components/stylus_handwriting/DirectWritingSettingsHelper.java index 5b167bc..0aa6c61 100644 --- a/components/stylus_handwriting/android/java/src/org/chromium/components/stylus_handwriting/DirectWritingSettingsHelper.java +++ b/components/stylus_handwriting/android/java/src/org/chromium/components/stylus_handwriting/DirectWritingSettingsHelper.java
@@ -23,11 +23,8 @@ private static final String HONEYBOARD_SERVICE_PKG_NAME = DirectWritingConstants.SERVICE_PKG_NAME + "/.service.HoneyBoardService"; - // TODO(mahesh.ma): Remove this once feature is enabled and configurable setting is created. - private static final boolean FORCE_DISABLE_FEATURE = true; - static boolean isEnabled(Context context) { - return !FORCE_DISABLE_FEATURE && isHoneyboardDefault(context) && isFeatureEnabled(context); + return isHoneyboardDefault(context) && isFeatureEnabled(context); } /**
diff --git a/components/viz/service/display/dc_layer_overlay.cc b/components/viz/service/display/dc_layer_overlay.cc index 73f869b..cd78ae2 100644 --- a/components/viz/service/display/dc_layer_overlay.cc +++ b/components/viz/service/display/dc_layer_overlay.cc
@@ -681,7 +681,8 @@ gfx::Rect* damage_rect, SurfaceDamageRectList surface_damage_rect_list, DCLayerOverlayList* dc_layer_overlays, - bool is_video_capture_enabled) { + bool is_video_capture_enabled, + bool is_video_fullscreen_mode) { bool this_frame_has_occluding_damage_rect = false; processed_yuv_overlay_count_ = 0; surface_damage_rect_list_ = std::move(surface_damage_rect_list); @@ -897,7 +898,7 @@ UpdateDCLayerOverlays(display_rect, render_pass, it, quad_rectangle_in_target_space, occluding_damage_rect, is_overlay, &prev_it, &prev_index, damage_rect, - dc_layer_overlays); + dc_layer_overlays, is_video_fullscreen_mode); } // Update previous frame state after processing root pass. If there is no @@ -979,11 +980,13 @@ QuadList::Iterator* new_it, size_t* new_index, gfx::Rect* damage_rect, - DCLayerOverlayList* dc_layer_overlays) { + DCLayerOverlayList* dc_layer_overlays, + bool is_video_fullscreen_mode) { // Record the result first before ProcessForOverlay(). RecordDCLayerResult(DC_LAYER_SUCCESS, it); DCLayerOverlay dc_layer; + dc_layer.is_video_fullscreen_mode = is_video_fullscreen_mode; switch (it->material) { case DrawQuad::Material::kYuvVideoContent: FromYUVQuad(YUVVideoDrawQuad::MaterialCast(*it),
diff --git a/components/viz/service/display/dc_layer_overlay.h b/components/viz/service/display/dc_layer_overlay.h index 27ddaf0c..14c984a6 100644 --- a/components/viz/service/display/dc_layer_overlay.h +++ b/components/viz/service/display/dc_layer_overlay.h
@@ -70,6 +70,8 @@ gfx::ProtectedVideoType::kClear; gfx::HDRMetadata hdr_metadata; + + bool is_video_fullscreen_mode; }; typedef std::vector<DCLayerOverlay> DCLayerOverlayList; @@ -100,7 +102,8 @@ gfx::Rect* damage_rect, SurfaceDamageRectList surface_damage_rect_list, DCLayerOverlayList* dc_layer_overlays, - bool is_video_capture_enabled); + bool is_video_capture_enabled, + bool is_video_fullscreen_mode); void ClearOverlayState(); // This is the damage contribution due to previous frame's overlays which can // be empty. @@ -130,7 +133,8 @@ QuadList::Iterator* new_it, size_t* new_index, gfx::Rect* damage_rect, - DCLayerOverlayList* dc_layer_overlays); + DCLayerOverlayList* dc_layer_overlays, + bool is_video_fullscreen_mode); // Returns an iterator to the element after |it|. QuadList::Iterator ProcessForOverlay(const gfx::RectF& display_rect,
diff --git a/components/viz/service/display/display.cc b/components/viz/service/display/display.cc index 2d93ab3..a8092b91 100644 --- a/components/viz/service/display/display.cc +++ b/components/viz/service/display/display.cc
@@ -846,6 +846,7 @@ renderer_->DecideRenderPassAllocationsForFrame(frame.render_pass_list); overlay_processor_->SetFrameSequenceNumber(frame_sequence_number_); overlay_processor_->SetIsVideoCaptureEnabled(frame.video_capture_enabled); + overlay_processor_->SetIsVideoFullscreen(frame.page_fullscreen_mode); renderer_->DrawFrame(&frame.render_pass_list, device_scale_factor_, current_surface_size, display_color_spaces_, std::move(frame.surface_damage_rect_list_));
diff --git a/components/viz/service/display/overlay_processor_interface.h b/components/viz/service/display/overlay_processor_interface.h index 5b85e90..26ba690 100644 --- a/components/viz/service/display/overlay_processor_interface.h +++ b/components/viz/service/display/overlay_processor_interface.h
@@ -200,6 +200,9 @@ // If true, video capture is enabled for this frame. virtual void SetIsVideoCaptureEnabled(bool enabled) {} + // If true, video fullscreen mode is enabled for this frame. + virtual void SetIsVideoFullscreen(bool enabled) {} + virtual gfx::CALayerResult GetCALayerErrorCode() const; protected:
diff --git a/components/viz/service/display/overlay_processor_win.cc b/components/viz/service/display/overlay_processor_win.cc index 1ab428f9..8f094b5 100644 --- a/components/viz/service/display/overlay_processor_win.cc +++ b/components/viz/service/display/overlay_processor_win.cc
@@ -72,7 +72,7 @@ resource_provider, gfx::RectF(root_render_pass->output_rect), render_pass_filters, render_pass_backdrop_filters, root_render_pass, damage_rect, std::move(surface_damage_rect_list), candidates, - is_video_capture_enabled_); + is_video_capture_enabled_, is_video_fullscreen_mode_); bool was_using_dc_layers = using_dc_layers_; if (!candidates->empty()) { @@ -100,4 +100,8 @@ is_video_capture_enabled_ = enabled; } +void OverlayProcessorWin::SetIsVideoFullscreen(bool enabled) { + is_video_fullscreen_mode_ = enabled; +} + } // namespace viz
diff --git a/components/viz/service/display/overlay_processor_win.h b/components/viz/service/display/overlay_processor_win.h index 082adeb..6cf84df 100644 --- a/components/viz/service/display/overlay_processor_win.h +++ b/components/viz/service/display/overlay_processor_win.h
@@ -46,9 +46,12 @@ // processor. bool NeedsSurfaceDamageRectList() const override; - // Set |is_video_capture_enabled_|. + // Sets |is_video_capture_enabled_|. void SetIsVideoCaptureEnabled(bool enabled) override; + // Sets |is_video_fullscreen_mode_|. + void SetIsVideoFullscreen(bool enabled) override; + void AdjustOutputSurfaceOverlay(absl::optional<OutputSurfaceOverlayPlane>* output_surface_plane) override {} @@ -89,6 +92,8 @@ std::unique_ptr<DCLayerOverlayProcessor> dc_layer_overlay_processor_; bool is_video_capture_enabled_ = false; + + bool is_video_fullscreen_mode_ = false; }; } // namespace viz
diff --git a/components/viz/service/display/resolved_frame_data.cc b/components/viz/service/display/resolved_frame_data.cc index 19546ed..07eb70c 100644 --- a/components/viz/service/display/resolved_frame_data.cc +++ b/components/viz/service/display/resolved_frame_data.cc
@@ -106,8 +106,6 @@ render_pass_id_map_.reserve(num_render_pass); resolved_passes_.reserve(num_render_pass); - root_damage_rect_ = render_passes.back()->damage_rect; - auto& child_to_parent_map = resource_provider_->GetChildToParentMap(child_resource_id_); @@ -127,17 +125,14 @@ fixed.remapped_id = remapped_id; fixed.is_root = i == num_render_pass - 1; - bool add_quad_damage_to_root_damage_rect = - fixed.is_root && render_pass->has_per_quad_damage; - // Loop through the quads, remapping resource ids and storing them. auto& draw_quads = fixed.draw_quads; draw_quads.reserve(render_pass->quad_list.size()); for (auto* quad : render_pass->quad_list) { - if (add_quad_damage_to_root_damage_rect) { + if (render_pass->has_per_quad_damage) { auto optional_damage = GetOptionalDamageRectFromQuad(quad); if (optional_damage.has_value()) { - root_damage_rect_.Union(optional_damage.value()); + fixed.prewalk_quads.push_back(quad); } } @@ -269,8 +264,7 @@ frame_index_ == previous_frame_index_ + 1; } -gfx::Rect ResolvedFrameData::GetSurfaceDamage( - bool include_per_quad_damage) const { +gfx::Rect ResolvedFrameData::GetSurfaceDamage() const { DCHECK(valid_); // The |damage_rect| set in |SurfaceAnimationManager| is the |output_rect|. @@ -286,9 +280,6 @@ if (IsSameFrameAsLastAggregation()) { return gfx::Rect(); } else if (IsNextFrameSinceLastAggregation()) { - if (include_per_quad_damage) - return root_damage_rect_; - return resolved_passes_.back().render_pass().damage_rect; }
diff --git a/components/viz/service/display/resolved_frame_data.h b/components/viz/service/display/resolved_frame_data.h index 0e16994..7e063868 100644 --- a/components/viz/service/display/resolved_frame_data.h +++ b/components/viz/service/display/resolved_frame_data.h
@@ -209,10 +209,9 @@ bool IsNextFrameSinceLastAggregation() const; // Returns surface damage rect. This is based on changes from the - // CompositorFrame aggregated last frame. If |include_per_quad_damage| then - // the damage_rect will include unioned per quad damage, otherwise it will be - // limited to the root render passes damage_rect. - gfx::Rect GetSurfaceDamage(bool include_per_quad_damage) const; + // CompositorFrame aggregated last frame. This limited to the root render + // passes damage_rect and does not include individual quads that add damage. + gfx::Rect GetSurfaceDamage() const; // Returns the root render pass output_rect. const gfx::Rect& GetOutputRect() const; @@ -234,7 +233,6 @@ base::flat_map<CompositorRenderPassId, ResolvedPassData*> render_pass_id_map_; base::flat_map<CompositorRenderPassId, AggregatedRenderPassId> aggregated_id_map_; - gfx::Rect root_damage_rect_; uint64_t previous_frame_index_ = kInvalidFrameIndex;
diff --git a/components/viz/service/display/resolved_frame_data_unittest.cc b/components/viz/service/display/resolved_frame_data_unittest.cc index ef35f92..418b2736 100644 --- a/components/viz/service/display/resolved_frame_data_unittest.cc +++ b/components/viz/service/display/resolved_frame_data_unittest.cc
@@ -203,13 +203,12 @@ resolved_frame.MarkAsUsedInAggregation(); - // GetSurfaceDamage() should be the union of render pass and quad damage if - // `include_per_quad_damage` is true, otherwise just render pass damage. - constexpr gfx::Rect full_damage_rect(10, 10, 80, 80); - EXPECT_EQ(resolved_frame.GetSurfaceDamage(/*include_per_quad_damage=*/true), - full_damage_rect); - EXPECT_EQ(resolved_frame.GetSurfaceDamage(/*include_per_quad_damage=*/false), - pass_damage_rect); + // The damage rect should not include TextureDrawQuad's damage_rect. + EXPECT_EQ(resolved_frame.GetSurfaceDamage(), pass_damage_rect); + + // The quads to prewalk should only include the TextureDrawQuad. + EXPECT_THAT(resolved_frame.GetRootRenderPassData().prewalk_quads(), + testing::ElementsAre(IsTextureQuad())); } TEST_F(ResolvedFrameDataTest, MarkAsUsed) { @@ -287,7 +286,7 @@ // damaged. EXPECT_FALSE(resolved_frame.IsNextFrameSinceLastAggregation()); EXPECT_FALSE(resolved_frame.IsSameFrameAsLastAggregation()); - EXPECT_EQ(resolved_frame.GetSurfaceDamage(false), kOutputRect); + EXPECT_EQ(resolved_frame.GetSurfaceDamage(), kOutputRect); } } // namespace
diff --git a/components/viz/service/display/surface_aggregator.cc b/components/viz/service/display/surface_aggregator.cc index ceca380c..d52ec36 100644 --- a/components/viz/service/display/surface_aggregator.cc +++ b/components/viz/service/display/surface_aggregator.cc
@@ -45,6 +45,7 @@ #include "components/viz/service/surfaces/surface_client.h" #include "components/viz/service/surfaces/surface_manager.h" #include "ui/gfx/geometry/angle_conversions.h" +#include "ui/gfx/geometry/rect.h" #include "ui/gfx/geometry/rect_conversions.h" #include "ui/gfx/overlay_transform_utils.h" @@ -393,7 +394,7 @@ if (RenderPassNeedsFullDamage(resolved_frame->GetRootRenderPassData())) { damage_rect = resolved_frame->GetOutputRect(); } else { - damage_rect = resolved_frame->GetSurfaceDamage(false); + damage_rect = resolved_frame->GetSurfaceDamage(); } } @@ -1516,7 +1517,7 @@ // accumulated from all quads in the surface, and needs to be expanded by any // pixel-moving backdrop filter in the render pass if intersecting. Transform // this damage into the local space of the render pass for this purpose. - gfx::Rect surface_root_rp_damage = resolved_frame.GetSurfaceDamage(true); + gfx::Rect surface_root_rp_damage = resolved_frame.GetSurfaceDamage(); if (!surface_root_rp_damage.IsEmpty()) { gfx::Transform root_to_target_transform( gfx::Transform::kSkipInitialization); @@ -1534,6 +1535,7 @@ // with the current quad when needed. for (const DrawQuad* quad : base::Reversed(resolved_pass.prewalk_quads())) { gfx::Rect quad_damage_rect; + gfx::Rect quad_target_space_damage_rect; if (quad->material == DrawQuad::Material::kSurfaceContent) { const auto* surface_quad = SurfaceDrawQuad::MaterialCast(quad); ResolvedFrameData* child_resolved_frame = @@ -1707,6 +1709,18 @@ .has_damage_from_contributing_content) { resolved_pass.aggregation().has_damage_from_contributing_content = true; } + } else { + // If this the next frame in sequence from last aggregation then per quad + // damage_rects are valid so add them here. If not, either this is the + // same frame as last aggregation and there is no damage OR there is + // already full damage for the surface. + if (resolved_frame.IsNextFrameSinceLastAggregation()) { + auto& damage_rect = GetOptionalDamageRectFromQuad(quad); + DCHECK(damage_rect.has_value()); + // The DrawQuad `damage_rect` is already in the render pass coordinate + // space instead of quad rect coordinate space. + quad_target_space_damage_rect = damage_rect.value(); + } } // Clip the quad damage to the quad visible before converting back to @@ -1720,14 +1734,18 @@ // needed. Ignore tiny errors to avoid artificially inflating the // damage due to floating point math. constexpr float kEpsilon = 0.001f; - gfx::Rect rect_in_target_space = + quad_target_space_damage_rect = cc::MathUtil::MapEnclosingClippedRectIgnoringError( quad->shared_quad_state->quad_to_target_transform, quad_damage_rect, kEpsilon); + } + + if (!quad_target_space_damage_rect.IsEmpty()) { if (quad->shared_quad_state->clip_rect) { - rect_in_target_space.Intersect(*quad->shared_quad_state->clip_rect); + quad_target_space_damage_rect.Intersect( + *quad->shared_quad_state->clip_rect); } - damage_rect.Union(rect_in_target_space); + damage_rect.Union(quad_target_space_damage_rect); } } @@ -1801,7 +1819,7 @@ parent_pass->aggregation().embedded_passes.insert(&root_resolved_pass); } - gfx::Rect damage_rect = resolved_frame.GetSurfaceDamage(true); + gfx::Rect damage_rect = resolved_frame.GetSurfaceDamage(); // Avoid infinite recursion by adding current surface to // |referenced_surfaces_|.
diff --git a/components/viz/service/display/surface_aggregator_unittest.cc b/components/viz/service/display/surface_aggregator_unittest.cc index 9573b40..b8f5f2780 100644 --- a/components/viz/service/display/surface_aggregator_unittest.cc +++ b/components/viz/service/display/surface_aggregator_unittest.cc
@@ -7499,6 +7499,68 @@ } } +// Check GetRectDamage() handles per quad damage correctly. +TEST_F(SurfaceAggregatorValidSurfaceTest, NonRootRenderPassWithPerQuadDamage) { + constexpr gfx::Rect root_damage_rect(70, 70, 10, 10); + constexpr gfx::Rect quad_damage_rect(10, 10, 20, 20); + constexpr gfx::Size child_pass_size(50, 50); + + gfx::Transform quad_transform; + quad_transform.Scale(2.0, 2.0); + quad_transform.Translate(10.0, 10.0); + + CompositorRenderPassList root_passes; + root_passes.push_back( + RenderPassBuilder(CompositorRenderPassId{1}, child_pass_size) + .AddSolidColorQuad(gfx::Rect(child_pass_size), SkColors::kRed) + .AddTextureQuad(gfx::Rect(20, 20), ResourceId(1)) + .SetQuadToTargetTransform(quad_transform) + .SetQuadDamageRect(quad_damage_rect) + .Build()); + root_passes.push_back( + RenderPassBuilder(CompositorRenderPassId{2}, kSurfaceSize) + .SetDamageRect(root_damage_rect) + .AddSolidColorQuad(gfx::Rect(kSurfaceSize), SkColors::kRed) + .AddRenderPassQuad(gfx::Rect(child_pass_size), + CompositorRenderPassId{1}) + .SetQuadToTargetTranslation(20, 20) + .Build()); + { + root_sink_->SubmitCompositorFrame( + root_surface_id_.local_surface_id(), + MakeCompositorFrame(CopyRenderPasses(root_passes))); + auto aggregated_frame = AggregateFrame(root_surface_id_); + + // First aggregation always has full damage. + ASSERT_EQ(aggregated_frame.render_pass_list.size(), 2u); + EXPECT_EQ(aggregated_frame.render_pass_list[1]->damage_rect, + gfx::Rect(kSurfaceSize)); + } + + { + root_sink_->SubmitCompositorFrame( + root_surface_id_.local_surface_id(), + MakeCompositorFrame(CopyRenderPasses(root_passes))); + auto aggregated_frame = AggregateFrame(root_surface_id_); + + // Second aggregation a new CompositorFrame was submitted. The final damage + // is the quad damage (30, 30 20x20) unioned with surface damage (70,70 + // 10x10). + ASSERT_EQ(aggregated_frame.render_pass_list.size(), 2u); + EXPECT_EQ(aggregated_frame.render_pass_list[1]->damage_rect, + gfx::Rect(30, 30, 50, 50)); + } + + { + auto aggregated_frame = AggregateFrame(root_surface_id_); + + // Third aggregation the active CompositorFrame for the root surface hasn't + // changed so both surface damage and per quad damage is empty. + ASSERT_EQ(aggregated_frame.render_pass_list.size(), 2u); + EXPECT_EQ(aggregated_frame.render_pass_list[1]->damage_rect, gfx::Rect()); + } +} + // Tests that quads outside the damage rect are not ignored for cached render // pass. TEST_F(SurfaceAggregatorPartialSwapTest, NotIgnoreOutsideForCachedRenderPass) {
diff --git a/components/viz/service/display_embedder/compositor_gpu_thread.cc b/components/viz/service/display_embedder/compositor_gpu_thread.cc index f546c136..80c206a 100644 --- a/components/viz/service/display_embedder/compositor_gpu_thread.cc +++ b/components/viz/service/display_embedder/compositor_gpu_thread.cc
@@ -124,6 +124,11 @@ attribs.angle_context_virtualization_group_number = gl::AngleContextVirtualizationGroup::kDrDc; + // Compositor thread context doesn't need access textures and semaphores + // created with other contexts. + attribs.global_texture_share_group = false; + attribs.global_semaphore_share_group = false; + // Create a new gl context. Note that this gl context is not part of same // share group which gpu main thread uses. Hence this context does not share // GL resources with the contexts created on gpu main thread.
diff --git a/components/viz/service/display_embedder/skia_output_device_gl.cc b/components/viz/service/display_embedder/skia_output_device_gl.cc index 0db0956..940de015 100644 --- a/components/viz/service/display_embedder/skia_output_device_gl.cc +++ b/components/viz/service/display_embedder/skia_output_device_gl.cc
@@ -442,6 +442,7 @@ params->clip_rect = dc_layer.clip_rect; params->protected_video_type = dc_layer.protected_video_type; params->hdr_metadata = dc_layer.hdr_metadata; + params->is_video_fullscreen_mode = dc_layer.is_video_fullscreen_mode; // Schedule DC layer overlay to be presented at next SwapBuffers(). if (!gl_surface_->ScheduleDCLayer(std::move(params)))
diff --git a/components/webrtc/thread_wrapper.cc b/components/webrtc/thread_wrapper.cc index 590fc0f..40cb8a5 100644 --- a/components/webrtc/thread_wrapper.cc +++ b/components/webrtc/thread_wrapper.cc
@@ -331,16 +331,16 @@ } } -void ThreadWrapper::PostTask(std::unique_ptr<webrtc::QueuedTask> task) { +void ThreadWrapper::PostTask(absl::AnyInvocable<void() &&> task) { task_runner_->PostTask( FROM_HERE, base::BindOnce(&ThreadWrapper::RunTaskQueueTask, weak_ptr_, std::move(task))); } -void ThreadWrapper::PostDelayedTask(std::unique_ptr<webrtc::QueuedTask> task, - uint32_t milliseconds) { +void ThreadWrapper::PostDelayedTask(absl::AnyInvocable<void() &&> task, + TimeDelta delay) { base::TimeTicks target_time = - base::TimeTicks::Now() + base::Milliseconds(milliseconds); + base::TimeTicks::Now() + base::Microseconds(delay.us()); // Coalesce low precision tasks onto the metronome. base::TimeTicks snapped_target_time = blink::MetronomeSource::TimeSnappedToNextTick(target_time); @@ -355,10 +355,10 @@ } void ThreadWrapper::PostDelayedHighPrecisionTask( - std::unique_ptr<webrtc::QueuedTask> task, - uint32_t milliseconds) { + absl::AnyInvocable<void() &&> task, + webrtc::TimeDelta delay) { base::TimeTicks target_time = - base::TimeTicks::Now() + base::Milliseconds(milliseconds); + base::TimeTicks::Now() + base::Microseconds(delay.us()); task_runner_->PostDelayedTaskAt( base::subtle::PostDelayedTaskPassKey(), FROM_HERE, base::BindOnce(&ThreadWrapper::RunTaskQueueTask, weak_ptr_, @@ -379,15 +379,11 @@ return task_start_timestamp; } -void ThreadWrapper::RunTaskQueueTask(std::unique_ptr<webrtc::QueuedTask> task) { +void ThreadWrapper::RunTaskQueueTask(absl::AnyInvocable<void() &&> task) { absl::optional<base::TimeTicks> task_start_timestamp = PrepareRunTask(); - // Follow QueuedTask::Run() semantics: delete if it returns true, release - // otherwise. - if (task->Run()) - task.reset(); - else - task.release(); + std::move(task)(); + task = nullptr; FinalizeRunTask(std::move(task_start_timestamp)); }
diff --git a/components/webrtc/thread_wrapper.h b/components/webrtc/thread_wrapper.h index d94adfa..509e1b7 100644 --- a/components/webrtc/thread_wrapper.h +++ b/components/webrtc/thread_wrapper.h
@@ -149,15 +149,15 @@ void ProcessPendingSends(); // TaskQueueBase overrides. - void PostTask(std::unique_ptr<webrtc::QueuedTask> task) override; - void PostDelayedTask(std::unique_ptr<webrtc::QueuedTask> task, - uint32_t milliseconds) override; - void PostDelayedHighPrecisionTask(std::unique_ptr<webrtc::QueuedTask> task, - uint32_t milliseconds) override; + void PostTask(absl::AnyInvocable<void() &&> task) override; + void PostDelayedTask(absl::AnyInvocable<void() &&> task, + webrtc::TimeDelta delay) override; + void PostDelayedHighPrecisionTask(absl::AnyInvocable<void() &&> task, + webrtc::TimeDelta delay) override; // Executes WebRTC queued tasks from TaskQueueBase overrides on // |task_runner_|. - void RunTaskQueueTask(std::unique_ptr<webrtc::QueuedTask> task); + void RunTaskQueueTask(absl::AnyInvocable<void() &&> task); void RunCoalescedTaskQueueTasks(base::TimeTicks scheduled_time); // Called before a task runs, returns an opaque optional timestamp which
diff --git a/content/browser/accessibility/browser_accessibility.cc b/content/browser/accessibility/browser_accessibility.cc index 2fe30320..e6dc6af 100644 --- a/content/browser/accessibility/browser_accessibility.cc +++ b/content/browser/accessibility/browser_accessibility.cc
@@ -82,7 +82,13 @@ // a datetime input. We don't try to enforce a special structure for those. const std::string& input_type = GetStringAttribute(ax::mojom::StringAttribute::kInputType); - if (!input_type.empty() && input_type != "text") + DCHECK(IsIgnored() || + GetStringAttribute(ax::mojom::StringAttribute::kHtmlTag) != "input" || + !input_type.empty()) + << "By design, all non-hidden <input> elements in the accessibility " + "tree, should have an input type: " + << *this; + if (input_type != "text" && input_type != "search") return true; // Not a plain text field, just consider it valid. if (InternalChildCount()) {
diff --git a/content/browser/accessibility/browser_accessibility_android.cc b/content/browser/accessibility/browser_accessibility_android.cc index 23f23bc..4a729294 100644 --- a/content/browser/accessibility/browser_accessibility_android.cc +++ b/content/browser/accessibility/browser_accessibility_android.cc
@@ -1239,7 +1239,7 @@ if (IsSlider()) { // If it's not a native INPUT element, then increment and decrement // won't work. - std::string html_tag = + const std::string& html_tag = GetStringAttribute(ax::mojom::StringAttribute::kHtmlTag); if (html_tag != "input") return false; @@ -1256,7 +1256,7 @@ if (IsSlider()) { // If it's not a native INPUT element, then increment and decrement // won't work. - std::string html_tag = + const std::string& html_tag = GetStringAttribute(ax::mojom::StringAttribute::kHtmlTag); if (html_tag != "input") return false; @@ -1513,7 +1513,7 @@ } int BrowserAccessibilityAndroid::AndroidInputType() const { - std::string html_tag = + const std::string& html_tag = GetStringAttribute(ax::mojom::StringAttribute::kHtmlTag); if (html_tag != "input") return ANDROID_TEXT_INPUTTYPE_TYPE_NULL;
diff --git a/content/browser/accessibility/browser_accessibility_auralinux_unittest.cc b/content/browser/accessibility/browser_accessibility_auralinux_unittest.cc index 6bc3b7c..ee83d38 100644 --- a/content/browser/accessibility/browser_accessibility_auralinux_unittest.cc +++ b/content/browser/accessibility/browser_accessibility_auralinux_unittest.cc
@@ -171,6 +171,7 @@ combo_box.role = ax::mojom::Role::kTextFieldWithComboBox; combo_box.AddState(ax::mojom::State::kEditable); combo_box.AddStringAttribute(ax::mojom::StringAttribute::kHtmlTag, "input"); + combo_box.AddStringAttribute(ax::mojom::StringAttribute::kInputType, "text"); combo_box.SetName(combo_box_name); combo_box.SetValue(combo_box_value); @@ -684,6 +685,7 @@ combo_box.role = ax::mojom::Role::kTextFieldWithComboBox; combo_box.AddState(ax::mojom::State::kEditable); combo_box.AddStringAttribute(ax::mojom::StringAttribute::kHtmlTag, "input"); + combo_box.AddStringAttribute(ax::mojom::StringAttribute::kInputType, "text"); combo_box.AddState(ax::mojom::State::kFocusable); combo_box.SetValue(value1 + value2);
diff --git a/content/browser/accessibility/browser_accessibility_win_unittest.cc b/content/browser/accessibility/browser_accessibility_win_unittest.cc index b9c698f..adc60e0 100644 --- a/content/browser/accessibility/browser_accessibility_win_unittest.cc +++ b/content/browser/accessibility/browser_accessibility_win_unittest.cc
@@ -361,6 +361,7 @@ text_field.role = ax::mojom::Role::kTextField; text_field.AddState(ax::mojom::State::kEditable); text_field.AddStringAttribute(ax::mojom::StringAttribute::kHtmlTag, "input"); + text_field.AddStringAttribute(ax::mojom::StringAttribute::kInputType, "text"); text_field.SetValue(text_value); text_field.AddIntListAttribute(ax::mojom::IntListAttribute::kLineStarts, {15}); @@ -719,6 +720,7 @@ combo_box.role = ax::mojom::Role::kTextFieldWithComboBox; combo_box.AddState(ax::mojom::State::kEditable); combo_box.AddStringAttribute(ax::mojom::StringAttribute::kHtmlTag, "input"); + combo_box.AddStringAttribute(ax::mojom::StringAttribute::kInputType, "text"); combo_box.SetName(base::UTF16ToUTF8(combo_box_name)); combo_box.SetValue(base::UTF16ToUTF8(combo_box_value)); @@ -1026,6 +1028,7 @@ tree1_2.role = ax::mojom::Role::kTextField; tree1_2.AddState(ax::mojom::State::kEditable); tree1_2.AddStringAttribute(ax::mojom::StringAttribute::kHtmlTag, "input"); + tree1_2.AddStringAttribute(ax::mojom::StringAttribute::kInputType, "text"); // Process a load complete. AXEventNotificationDetails event_bundle; @@ -1182,6 +1185,7 @@ combo_box.SetValue("Combo box text"); combo_box_text.SetName("Combo box text"); combo_box.AddStringAttribute(ax::mojom::StringAttribute::kHtmlTag, "input"); + combo_box.AddStringAttribute(ax::mojom::StringAttribute::kInputType, "text"); combo_box.AddState(ax::mojom::State::kEditable); combo_box.AddState(ax::mojom::State::kFocusable); combo_box_text.AddState(ax::mojom::State::kEditable); @@ -1203,6 +1207,7 @@ search_box_text.SetName("Search box text"); new_line.SetName("\n"); search_box.AddStringAttribute(ax::mojom::StringAttribute::kHtmlTag, "input"); + search_box.AddStringAttribute(ax::mojom::StringAttribute::kInputType, "text"); search_box.AddState(ax::mojom::State::kEditable); search_box.AddState(ax::mojom::State::kFocusable); search_box_text.AddState(ax::mojom::State::kEditable); @@ -1214,6 +1219,7 @@ text_field.id = 9; text_field.role = ax::mojom::Role::kTextField; text_field.AddStringAttribute(ax::mojom::StringAttribute::kHtmlTag, "input"); + text_field.AddStringAttribute(ax::mojom::StringAttribute::kInputType, "text"); text_field.AddState(ax::mojom::State::kEditable); text_field.AddState(ax::mojom::State::kFocusable); // Exposes a placeholder. The text container is otherwise empty. @@ -1390,13 +1396,14 @@ text_field_text.role = ax::mojom::Role::kStaticText; text_field.AddState(ax::mojom::State::kEditable); text_field.AddStringAttribute(ax::mojom::StringAttribute::kHtmlTag, "input"); + text_field.AddStringAttribute(ax::mojom::StringAttribute::kInputType, "text"); text_field.AddState(ax::mojom::State::kFocusable); text_field_div.AddState(ax::mojom::State::kEditable); text_field_text.AddState(ax::mojom::State::kEditable); text_field.SetValue(line1); text_field_text.SetName(line1); text_field.AddStringAttribute(ax::mojom::StringAttribute::kHtmlTag, "input"); - text_field.html_attributes.push_back(std::make_pair("type", "text")); + text_field.AddStringAttribute(ax::mojom::StringAttribute::kInputType, "text"); text_field.child_ids.push_back(text_field_div.id); text_field_div.child_ids.push_back(text_field_text.id); @@ -1885,6 +1892,7 @@ combo_box.role = ax::mojom::Role::kTextFieldWithComboBox; combo_box.AddState(ax::mojom::State::kEditable); combo_box.AddStringAttribute(ax::mojom::StringAttribute::kHtmlTag, "input"); + combo_box.AddStringAttribute(ax::mojom::StringAttribute::kInputType, "text"); combo_box.AddState(ax::mojom::State::kFocusable); combo_box.SetValue("Test1"); // Place the caret between 't' and 'e'. @@ -1896,6 +1904,7 @@ text_field.role = ax::mojom::Role::kTextField; text_field.AddState(ax::mojom::State::kEditable); text_field.AddStringAttribute(ax::mojom::StringAttribute::kHtmlTag, "input"); + text_field.AddStringAttribute(ax::mojom::StringAttribute::kInputType, "text"); text_field.AddState(ax::mojom::State::kFocusable); text_field.SetValue("Test2"); // Select the letter 'e'. @@ -2677,6 +2686,7 @@ combo_box.role = ax::mojom::Role::kTextFieldWithComboBox; combo_box.AddState(ax::mojom::State::kEditable); combo_box.AddStringAttribute(ax::mojom::StringAttribute::kHtmlTag, "input"); + combo_box.AddStringAttribute(ax::mojom::StringAttribute::kInputType, "text"); combo_box.AddState(ax::mojom::State::kFocusable); combo_box.SetValue(value1 + value2); @@ -2791,6 +2801,7 @@ combo_box.role = ax::mojom::Role::kTextFieldWithComboBox; combo_box.AddState(ax::mojom::State::kEditable); combo_box.AddStringAttribute(ax::mojom::StringAttribute::kHtmlTag, "input"); + combo_box.AddStringAttribute(ax::mojom::StringAttribute::kInputType, "text"); combo_box.AddState(ax::mojom::State::kFocusable); combo_box.SetValue(value1 + value2);
diff --git a/content/browser/accessibility/dump_accessibility_browsertest_base.cc b/content/browser/accessibility/dump_accessibility_browsertest_base.cc index ca2e335..1a4f85c 100644 --- a/content/browser/accessibility/dump_accessibility_browsertest_base.cc +++ b/content/browser/accessibility/dump_accessibility_browsertest_base.cc
@@ -321,15 +321,8 @@ // Get expectation lines from expectation file if any. base::FilePath expected_file = test_helper_.GetExpectationFilePath(file_path, expectations_qualifier); - if (!expected_file.empty()) { + if (!expected_file.empty()) expected_lines = test_helper_.LoadExpectationFile(expected_file); - } else if (GetParam() == ui::AXApiType::kWinUIA) { - // TODO: UIA is not yet supported, see crbug.com/1327652, crbug.com/1329523, - // crbug.com/1329847. - LOG(INFO) << "No expectation file present, ignoring test on this " - "platform."; - return; - } // Get the test URL. GURL url(embedded_test_server()->GetURL(
diff --git a/content/browser/attribution_reporting/attribution_manager_impl.cc b/content/browser/attribution_reporting/attribution_manager_impl.cc index e2f9590d..8104fcb 100644 --- a/content/browser/attribution_reporting/attribution_manager_impl.cc +++ b/content/browser/attribution_reporting/attribution_manager_impl.cc
@@ -97,14 +97,12 @@ AttributionReportScheduler& operator=(AttributionReportScheduler&&) = delete; private: - // TODO(crbug.com/1345751): Ensure that no reports are missed by using the - // `now` parameter in the following two calls. - // ReportSchedulerTimer::Delegate: void GetNextReportTime( base::OnceCallback<void(absl::optional<base::Time>)> callback, base::Time now) override { attribution_storage_.AsyncCall(&AttributionStorage::GetNextReportTime) + .WithArgs(now) .Then(std::move(callback)); }; void OnReportingTimeReached(base::Time now) override { send_reports_.Run(); };
diff --git a/content/browser/attribution_reporting/attribution_storage.h b/content/browser/attribution_reporting/attribution_storage.h index 4601b92a..b3c7bb6 100644 --- a/content/browser/attribution_reporting/attribution_storage.h +++ b/content/browser/attribution_reporting/attribution_storage.h
@@ -81,8 +81,8 @@ AttributionReport::ReportType::kEventLevel, AttributionReport::ReportType::kAggregatableAttribution}) = 0; - // Returns the first report time strictly after current time. - virtual absl::optional<base::Time> GetNextReportTime() = 0; + // Returns the first report time strictly after `time`. + virtual absl::optional<base::Time> GetNextReportTime(base::Time time) = 0; // Returns the reports with the given IDs. This call is logically const, and // does not modify the underlying storage.
diff --git a/content/browser/attribution_reporting/attribution_storage_sql.cc b/content/browser/attribution_reporting/attribution_storage_sql.cc index 9e03c5b..c2f37d4 100644 --- a/content/browser/attribution_reporting/attribution_storage_sql.cc +++ b/content/browser/attribution_reporting/attribution_storage_sql.cc
@@ -1382,17 +1382,16 @@ return reports; } -absl::optional<base::Time> AttributionStorageSql::GetNextReportTime() { +absl::optional<base::Time> AttributionStorageSql::GetNextReportTime( + base::Time time) { DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); if (!LazyInit(DbCreationPolicy::kIgnoreIfAbsent)) return absl::nullopt; - base::Time now = base::Time::Now(); - absl::optional<base::Time> next_event_level_report_time = - GetNextEventLevelReportTime(now); + GetNextEventLevelReportTime(time); absl::optional<base::Time> next_aggregatable_report_time = - GetNextAggregatableAttributionReportTime(now); + GetNextAggregatableAttributionReportTime(time); return AttributionReport::MinReportTime(next_event_level_report_time, next_aggregatable_report_time);
diff --git a/content/browser/attribution_reporting/attribution_storage_sql.h b/content/browser/attribution_reporting/attribution_storage_sql.h index 8457491f..f63bf7d 100644 --- a/content/browser/attribution_reporting/attribution_storage_sql.h +++ b/content/browser/attribution_reporting/attribution_storage_sql.h
@@ -112,7 +112,7 @@ AttributionReport::ReportTypes report_types = { AttributionReport::ReportType::kEventLevel, AttributionReport::ReportType::kAggregatableAttribution}) override; - absl::optional<base::Time> GetNextReportTime() override; + absl::optional<base::Time> GetNextReportTime(base::Time time) override; std::vector<AttributionReport> GetReports( const std::vector<AttributionReport::Id>& ids) override; std::vector<StoredSource> GetActiveSources(int limit = -1) override;
diff --git a/content/browser/attribution_reporting/attribution_storage_unittest.cc b/content/browser/attribution_reporting/attribution_storage_unittest.cc index f3775ca9..b101f049 100644 --- a/content/browser/attribution_reporting/attribution_storage_unittest.cc +++ b/content/browser/attribution_reporting/attribution_storage_unittest.cc
@@ -1934,7 +1934,7 @@ const auto origin_a = url::Origin::Create(GURL("https://a.example/")); const auto origin_b = url::Origin::Create(GURL("https://b.example/")); - EXPECT_EQ(storage()->GetNextReportTime(), absl::nullopt); + EXPECT_EQ(storage()->GetNextReportTime(base::Time::Min()), absl::nullopt); storage()->StoreSource(SourceBuilder().SetReportingOrigin(origin_a).Build()); EXPECT_EQ(AttributionTrigger::EventLevelResult::kSuccess, @@ -1943,6 +1943,9 @@ const base::Time report_time_a = base::Time::Now() + kReportDelay; + EXPECT_EQ(storage()->GetNextReportTime(base::Time::Min()), report_time_a); + EXPECT_EQ(storage()->GetNextReportTime(report_time_a), absl::nullopt); + task_environment_.FastForwardBy(base::Milliseconds(1)); storage()->StoreSource(SourceBuilder().SetReportingOrigin(origin_b).Build()); EXPECT_EQ(AttributionTrigger::EventLevelResult::kSuccess, @@ -1951,13 +1954,9 @@ const base::Time report_time_b = base::Time::Now() + kReportDelay; - EXPECT_EQ(storage()->GetNextReportTime(), report_time_a); - - task_environment_.FastForwardBy(report_time_a - base::Time::Now()); - EXPECT_EQ(storage()->GetNextReportTime(), report_time_b); - - task_environment_.FastForwardBy(report_time_b - base::Time::Now()); - EXPECT_EQ(storage()->GetNextReportTime(), absl::nullopt); + EXPECT_EQ(storage()->GetNextReportTime(base::Time::Min()), report_time_a); + EXPECT_EQ(storage()->GetNextReportTime(report_time_a), report_time_b); + EXPECT_EQ(storage()->GetNextReportTime(report_time_b), absl::nullopt); } TEST_F(AttributionStorageTest, GetAttributionReports_Shuffles) { @@ -2242,7 +2241,7 @@ TEST_F(AttributionStorageTest, GetNextReportTime) { delegate()->set_max_attributions_per_source(1); - EXPECT_EQ(storage()->GetNextReportTime(), absl::nullopt); + EXPECT_EQ(storage()->GetNextReportTime(base::Time::Min()), absl::nullopt); storage()->StoreSource(TestAggregatableSourceProvider().GetBuilder().Build()); @@ -2251,6 +2250,9 @@ const base::Time report_time_a = base::Time::Now() + kReportDelay; + EXPECT_EQ(storage()->GetNextReportTime(base::Time::Min()), report_time_a); + EXPECT_EQ(storage()->GetNextReportTime(report_time_a), absl::nullopt); + task_environment_.FastForwardBy(base::Milliseconds(1)); EXPECT_EQ(AttributionTrigger::AggregatableResult::kSuccess, @@ -2259,6 +2261,10 @@ const base::Time report_time_b = base::Time::Now() + kReportDelay; + EXPECT_EQ(storage()->GetNextReportTime(base::Time::Min()), report_time_a); + EXPECT_EQ(storage()->GetNextReportTime(report_time_a), report_time_b); + EXPECT_EQ(storage()->GetNextReportTime(report_time_b), absl::nullopt); + task_environment_.FastForwardBy(base::Milliseconds(1)); storage()->StoreSource(SourceBuilder().Build()); @@ -2268,16 +2274,10 @@ base::Time report_time_c = base::Time::Now() + kReportDelay; - EXPECT_EQ(storage()->GetNextReportTime(), report_time_a); - - task_environment_.FastForwardBy(report_time_a - base::Time::Now()); - EXPECT_EQ(storage()->GetNextReportTime(), report_time_b); - - task_environment_.FastForwardBy(report_time_b - base::Time::Now()); - EXPECT_EQ(storage()->GetNextReportTime(), report_time_c); - - task_environment_.FastForwardBy(report_time_c - base::Time::Now()); - EXPECT_EQ(storage()->GetNextReportTime(), absl::nullopt); + EXPECT_EQ(storage()->GetNextReportTime(base::Time::Min()), report_time_a); + EXPECT_EQ(storage()->GetNextReportTime(report_time_a), report_time_b); + EXPECT_EQ(storage()->GetNextReportTime(report_time_b), report_time_c); + EXPECT_EQ(storage()->GetNextReportTime(report_time_c), absl::nullopt); } TEST_F(AttributionStorageTest, SourceEventIdSanitized) {
diff --git a/content/browser/font_unique_name_lookup/font_unique_name_browsertest.cc b/content/browser/font_unique_name_lookup/font_unique_name_browsertest.cc index de99e59b..017ecf2b 100644 --- a/content/browser/font_unique_name_lookup/font_unique_name_browsertest.cc +++ b/content/browser/font_unique_name_lookup/font_unique_name_browsertest.cc
@@ -25,88 +25,88 @@ namespace { #if BUILDFLAG(IS_ANDROID) -const char* kExpectedFontFamilyNames[] = {"AndroidClock", - "Roboto", - "Droid Sans Mono", - "Roboto", - "Noto Color Emoji", - "Noto Sans Bengali", - "Noto Sans Bengali UI", - "Noto Sans Devanagari", - "Noto Sans Devanagari", - "Noto Sans Devanagari UI", - "Noto Sans Devanagari UI", - "Noto Sans Kannada", - "Noto Sans Kannada", - "Noto Sans Kannada UI", - "Noto Sans Kannada UI", - "Noto Sans Lao", - "Noto Sans Lao", - "Noto Sans Lao UI", - "Noto Sans Lao UI", - "Noto Sans Malayalam", - "Noto Sans Malayalam", - "Noto Sans Malayalam UI", - "Noto Sans Malayalam UI", - "Noto Sans Tamil", - "Noto Sans Tamil", - "Noto Sans Tamil UI", - "Noto Sans Tamil UI", - "Noto Sans Telugu", - "Noto Sans Telugu", - "Noto Sans Telugu UI", - "Noto Sans Telugu UI", - "Noto Sans Thai", - "Noto Sans Thai", - "Noto Sans Thai UI", - "Noto Sans Thai UI", - "Roboto", - "Roboto Condensed", - "Roboto Condensed", - "Roboto Condensed", - "Roboto Condensed", - "Roboto"}; +const char* const kExpectedFontFamilyNames[] = {"AndroidClock", + "Roboto", + "Droid Sans Mono", + "Roboto", + "Noto Color Emoji", + "Noto Sans Bengali", + "Noto Sans Bengali UI", + "Noto Sans Devanagari", + "Noto Sans Devanagari", + "Noto Sans Devanagari UI", + "Noto Sans Devanagari UI", + "Noto Sans Kannada", + "Noto Sans Kannada", + "Noto Sans Kannada UI", + "Noto Sans Kannada UI", + "Noto Sans Lao", + "Noto Sans Lao", + "Noto Sans Lao UI", + "Noto Sans Lao UI", + "Noto Sans Malayalam", + "Noto Sans Malayalam", + "Noto Sans Malayalam UI", + "Noto Sans Malayalam UI", + "Noto Sans Tamil", + "Noto Sans Tamil", + "Noto Sans Tamil UI", + "Noto Sans Tamil UI", + "Noto Sans Telugu", + "Noto Sans Telugu", + "Noto Sans Telugu UI", + "Noto Sans Telugu UI", + "Noto Sans Thai", + "Noto Sans Thai", + "Noto Sans Thai UI", + "Noto Sans Thai UI", + "Roboto", + "Roboto Condensed", + "Roboto Condensed", + "Roboto Condensed", + "Roboto Condensed", + "Roboto"}; #elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -const char* kExpectedFontFamilyNames[] = {"Ahem", - "Arimo", - "Arimo", - "Arimo", - "Arimo", - "Cousine", - "Cousine", - "Cousine", - "Cousine", - "DejaVu Sans", - "DejaVu Sans", - "Garuda", - "Gelasio", - "Gelasio", - "Gelasio", - "Gelasio", - "Lohit Devanagari", - "Lohit Gurmukhi", - "Lohit Tamil", - "Noto Sans Khmer", - "Tinos", - "Tinos", - "Tinos", - "Tinos", - "Mukti Narrow", - "Tinos"}; +const char* const kExpectedFontFamilyNames[] = {"Ahem", + "Arimo", + "Arimo", + "Arimo", + "Arimo", + "Cousine", + "Cousine", + "Cousine", + "Cousine", + "DejaVu Sans", + "DejaVu Sans", + "Garuda", + "Gelasio", + "Gelasio", + "Gelasio", + "Gelasio", + "Lohit Devanagari", + "Lohit Gurmukhi", + "Lohit Tamil", + "Noto Sans Khmer", + "Tinos", + "Tinos", + "Tinos", + "Tinos", + "Mukti Narrow", + "Tinos"}; #elif BUILDFLAG(IS_MAC) -const char* kExpectedFontFamilyNames[] = {"American Typewriter", - "Arial Narrow", - "Baskerville", - "Devanagari MT", - "DIN Alternate", - "Gill Sans", - "Iowan Old Style", - "Malayalam Sangam MN", - "Hiragino Maru Gothic Pro", - "Hiragino Kaku Gothic StdN"}; +const char* const kExpectedFontFamilyNames[] = {"American Typewriter", + "Arial Narrow", + "Baskerville", + "Devanagari MT", + "DIN Alternate", + "Gill Sans", + "Iowan Old Style", + "Malayalam Sangam MN", + "Hiragino Maru Gothic Pro", + "Hiragino Kaku Gothic StdN"}; #elif BUILDFLAG(IS_WIN) -const char* kExpectedFontFamilyNames[] = {"Cambria Math", "MingLiU_HKSCS-ExtB", - "NSimSun", "Calibri"}; +const char* const kExpectedFontFamilyNames[] = { + "Cambria Math", "MingLiU_HKSCS-ExtB", "NSimSun", "Calibri"}; #endif } // namespace @@ -148,35 +148,34 @@ LoadAndWait("/font_src_local_matching.html"); Attach(); - ASSERT_TRUE(SendCommand("DOM.enable", nullptr, true)); - ASSERT_TRUE(SendCommand("CSS.enable", nullptr, true)); + ASSERT_TRUE(SendCommand("DOM.enable", nullptr)); + ASSERT_TRUE(SendCommand("CSS.enable", nullptr)); - unsigned num_added_nodes = static_cast<unsigned>( - content::EvalJs(shell(), "addTestNodes()").ExtractInt()); + size_t num_added_nodes = + static_cast<size_t>(EvalJs(shell(), "addTestNodes()").ExtractInt()); ASSERT_EQ(num_added_nodes, std::size(kExpectedFontFamilyNames)); - std::unique_ptr<base::DictionaryValue> params = - std::make_unique<base::DictionaryValue>(); - params->SetInteger("depth", 0); + base::Value::Dict get_doc_params; + get_doc_params.Set("depth", 0); const base::Value::Dict* result = - SendCommand("DOM.getDocument", std::move(params)); - int nodeId = *result->FindIntByDottedPath("root.nodeId"); + SendCommand("DOM.getDocument", std::move(get_doc_params)); + int node_id = *result->FindIntByDottedPath("root.nodeId"); - params = std::make_unique<base::DictionaryValue>(); - params->SetInteger("nodeId", nodeId); - params->SetString("selector", ".testnode"); - result = SendCommand("DOM.querySelectorAll", std::move(params)); - // This needs a Clone() because node_list otherwise gets invalid after the + base::Value::Dict query_params; + query_params.Set("nodeId", node_id); + query_params.Set("selector", ".testnode"); + result = SendCommand("DOM.querySelectorAll", std::move(query_params)); + // This needs a Clone() because the node list otherwise gets invalid after the // next SendCommand call. - const base::Value::List nodes_view = result->FindList("nodeIds")->Clone(); - ASSERT_EQ(nodes_view.size(), num_added_nodes); - ASSERT_EQ(nodes_view.size(), std::size(kExpectedFontFamilyNames)); - for (size_t i = 0; i < nodes_view.size(); ++i) { - const base::Value& nodeId = nodes_view[i]; - params = std::make_unique<base::DictionaryValue>(); - params->SetInteger("nodeId", nodeId.GetInt()); + const base::Value::List nodes = result->FindList("nodeIds")->Clone(); + ASSERT_EQ(nodes.size(), num_added_nodes); + ASSERT_EQ(nodes.size(), std::size(kExpectedFontFamilyNames)); + for (size_t i = 0; i < nodes.size(); ++i) { + const base::Value& node = nodes[i]; + base::Value::Dict get_fonts_params; + get_fonts_params.Set("nodeId", node.GetInt()); const base::Value::Dict* font_info = - SendCommand("CSS.getPlatformFontsForNode", std::move(params)); + SendCommand("CSS.getPlatformFontsForNode", std::move(get_fonts_params)); ASSERT_TRUE(font_info); const base::Value::List* font_list = font_info->FindList("fonts"); ASSERT_TRUE(font_list);
diff --git a/content/browser/preloading/prefetch/prefetch_document_manager.cc b/content/browser/preloading/prefetch/prefetch_document_manager.cc index 814d7b6f..f035150 100644 --- a/content/browser/preloading/prefetch/prefetch_document_manager.cc +++ b/content/browser/preloading/prefetch/prefetch_document_manager.cc
@@ -9,6 +9,7 @@ #include "content/browser/browser_context_impl.h" #include "content/browser/preloading/prefetch/prefetch_container.h" +#include "content/browser/preloading/prefetch/prefetch_params.h" #include "content/browser/preloading/prefetch/prefetch_service.h" #include "content/public/browser/browser_context.h" #include "content/public/browser/navigation_handle.h" @@ -91,6 +92,14 @@ should_process_entry); candidates.erase(new_end, candidates.end()); + if (const auto& host_to_bypass = PrefetchBypassProxyForHost()) { + for (auto& [prefetch_url, prefetch_type] : prefetches) { + if (prefetch_type.IsProxyRequired() && + prefetch_url.host() == *host_to_bypass) + prefetch_type.SetProxyBypassedForTest(); + } + } + for (const auto& prefetch : prefetches) { PrefetchUrl(prefetch.first, prefetch.second, devtools_observer); }
diff --git a/content/browser/preloading/prefetch/prefetch_document_manager_unittest.cc b/content/browser/preloading/prefetch/prefetch_document_manager_unittest.cc index a786e57..8f03f46b 100644 --- a/content/browser/preloading/prefetch/prefetch_document_manager_unittest.cc +++ b/content/browser/preloading/prefetch/prefetch_document_manager_unittest.cc
@@ -137,7 +137,6 @@ // document. PrefetchDocumentManager::GetOrCreateForCurrentDocument(&GetPrimaryMainFrame()) ->ProcessCandidates(candidates, /*devtools_observer=*/nullptr); - ; // Check that the candidates that should be prefetched were sent to // |PrefetchService|.
diff --git a/content/browser/preloading/prefetch/prefetch_network_context.cc b/content/browser/preloading/prefetch/prefetch_network_context.cc index b04268e..208f23b 100644 --- a/content/browser/preloading/prefetch/prefetch_network_context.cc +++ b/content/browser/preloading/prefetch/prefetch_network_context.cc
@@ -104,7 +104,8 @@ context_params->http_cache_enabled = true; DCHECK(!context_params->http_cache_directory); - if (prefetch_type_.IsProxyRequired()) { + if (prefetch_type_.IsProxyRequired() && + !prefetch_type_.IsProxyBypassedForTesting()) { PrefetchProxyConfigurator* prefetch_proxy_configurator = prefetch_service_->GetPrefetchProxyConfigurator(); DCHECK(prefetch_proxy_configurator); @@ -132,7 +133,8 @@ CreateNetworkContextInNetworkService( network_context_.BindNewPipeAndPassReceiver(), std::move(context_params)); - if (prefetch_type_.IsProxyRequired()) { + if (prefetch_type_.IsProxyRequired() && + !prefetch_type_.IsProxyBypassedForTesting()) { // Configure a context client to ensure Web Reports and other privacy leak // surfaces won't be enabled. mojo::PendingRemote<network::mojom::NetworkContextClient> client_remote;
diff --git a/content/browser/preloading/prefetch/prefetch_params.cc b/content/browser/preloading/prefetch/prefetch_params.cc index 95e8427..ee5f573 100644 --- a/content/browser/preloading/prefetch/prefetch_params.cc +++ b/content/browser/preloading/prefetch/prefetch_params.cc
@@ -132,6 +132,15 @@ features::kPrefetchUseContentRefactor, "html_only", false); } +absl::optional<std::string> PrefetchBypassProxyForHost() { + absl::optional<std::string> value; + auto val_str = base::CommandLine::ForCurrentProcess()->GetSwitchValueASCII( + "bypass-prefetch-proxy-for-host"); + if (val_str.size()) + value = std::move(val_str); + return value; +} + base::TimeDelta PrefetchCacheableDuration() { return base::Seconds(base::GetFieldTrialParamByFeatureAsInt( features::kPrefetchUseContentRefactor, "cacheable_duration", 300));
diff --git a/content/browser/preloading/prefetch/prefetch_params.h b/content/browser/preloading/prefetch/prefetch_params.h index bd2a169..1494bac1 100644 --- a/content/browser/preloading/prefetch/prefetch_params.h +++ b/content/browser/preloading/prefetch/prefetch_params.h
@@ -7,6 +7,7 @@ #include "base/time/time.h" #include "content/common/content_export.h" +#include "third_party/abseil-cpp/absl/types/optional.h" #include "url/gurl.h" namespace content { @@ -64,6 +65,10 @@ // forever. base::TimeDelta PrefetchContainerLifetimeInPrefetchService(); +// Retrieves a host for which the prefetch proxy should be bypassed for testing +// purposes. +CONTENT_EXPORT absl::optional<std::string> PrefetchBypassProxyForHost(); + // Whether only prefetched resources with a text/html MIME type should be used. // If this is false, there is no MIME type restriction. bool PrefetchServiceHTMLOnly();
diff --git a/content/browser/preloading/prefetch/prefetch_params_unittest.cc b/content/browser/preloading/prefetch/prefetch_params_unittest.cc index abe19d9c..4bab5e2 100644 --- a/content/browser/preloading/prefetch/prefetch_params_unittest.cc +++ b/content/browser/preloading/prefetch/prefetch_params_unittest.cc
@@ -37,5 +37,13 @@ } } +TEST_F(PrefetchParamsTest, BypassProxyForHost) { + EXPECT_FALSE(PrefetchBypassProxyForHost().has_value()); + base::CommandLine::ForCurrentProcess()->AppendSwitchASCII( + "bypass-prefetch-proxy-for-host", "www.www1.hostname.test"); + EXPECT_TRUE(PrefetchBypassProxyForHost().has_value()); + EXPECT_EQ(PrefetchBypassProxyForHost().value(), "www.www1.hostname.test"); +} + } // namespace } // namespace content \ No newline at end of file
diff --git a/content/browser/preloading/prefetch/prefetch_service.cc b/content/browser/preloading/prefetch/prefetch_service.cc index 9307d21..007e78b 100644 --- a/content/browser/preloading/prefetch/prefetch_service.cc +++ b/content/browser/preloading/prefetch/prefetch_service.cc
@@ -249,7 +249,8 @@ prefetch_container->GetURL().HostNoBrackets()) : net::IsHostnameNonUnique( prefetch_container->GetURL().HostNoBrackets()); - if (prefetch_container->GetPrefetchType().IsProxyRequired() && + if (!prefetch_container->GetPrefetchType().IsProxyBypassedForTesting() && + prefetch_container->GetPrefetchType().IsProxyRequired() && is_host_non_unique) { std::move(result_callback) .Run(prefetch_container, false, @@ -275,6 +276,7 @@ } if (prefetch_container->GetPrefetchType().IsProxyRequired() && + !prefetch_container->GetPrefetchType().IsProxyBypassedForTesting() && (!prefetch_proxy_configurator_ || !prefetch_proxy_configurator_->IsPrefetchProxyAvailable())) { std::move(result_callback) @@ -736,8 +738,9 @@ // Verifies that the request was made using the prefetch proxy if required, // or made directly if the proxy was not required. - DCHECK(!head->proxy_server.is_direct() == - prefetch_container->GetPrefetchType().IsProxyRequired()); + DCHECK(prefetch_container->GetPrefetchType().IsProxyBypassedForTesting() || + !head->proxy_server.is_direct() == + prefetch_container->GetPrefetchType().IsProxyRequired()); HandlePrefetchedResponse(prefetch_container, isolation_info, std::move(head), std::move(body));
diff --git a/content/browser/preloading/prefetch/prefetch_type.cc b/content/browser/preloading/prefetch/prefetch_type.cc index 07f7839..6006da90 100644 --- a/content/browser/preloading/prefetch/prefetch_type.cc +++ b/content/browser/preloading/prefetch/prefetch_type.cc
@@ -23,6 +23,11 @@ PrefetchType& PrefetchType::operator=(const PrefetchType& prefetch_type) = default; +void PrefetchType::SetProxyBypassedForTest() { + DCHECK(use_prefetch_proxy_); + proxy_bypassed_for_testing_ = true; +} + bool operator==(const PrefetchType& prefetch_type_1, const PrefetchType& prefetch_type_2) { return std::tie(prefetch_type_1.use_isolated_network_context_,
diff --git a/content/browser/preloading/prefetch/prefetch_type.h b/content/browser/preloading/prefetch/prefetch_type.h index 59e44cb..3006dae 100644 --- a/content/browser/preloading/prefetch/prefetch_type.h +++ b/content/browser/preloading/prefetch/prefetch_type.h
@@ -25,6 +25,12 @@ return use_isolated_network_context_; } + // Whether this prefetch should bypass the proxy even though it would need to + // be proxied for anonymity. For use in test automation only. + bool IsProxyBypassedForTesting() const { return proxy_bypassed_for_testing_; } + + void SetProxyBypassedForTest(); + // Whether prefetches of this type need to use the Prefetch Proxy. bool IsProxyRequired() const { return use_prefetch_proxy_; } @@ -34,6 +40,7 @@ bool use_isolated_network_context_; bool use_prefetch_proxy_; + bool proxy_bypassed_for_testing_ = false; }; CONTENT_EXPORT bool operator==(const PrefetchType& prefetch_type_1,
diff --git a/content/browser/preloading/prefetch/prefetch_type_unittest.cc b/content/browser/preloading/prefetch/prefetch_type_unittest.cc index 680a738..dd865602 100644 --- a/content/browser/preloading/prefetch/prefetch_type_unittest.cc +++ b/content/browser/preloading/prefetch/prefetch_type_unittest.cc
@@ -45,5 +45,19 @@ EXPECT_TRUE(prefetch_type1 != prefetch_type4); } +TEST_F(PrefetchTypeTest, WptProxyTest) { + PrefetchType prefetch_types[] = {{/*isolated*/ true, /*use_proxy*/ true}, + {/*isolated*/ true, /*use_proxy*/ true}, + {/*isolated*/ true, /*use_proxy*/ false}, + {/*isolated*/ false, /*use_proxy*/ false}}; + for (auto& prefetch_type : prefetch_types) { + EXPECT_FALSE(prefetch_type.IsProxyBypassedForTesting()); + if (prefetch_type.IsProxyRequired()) { + prefetch_type.SetProxyBypassedForTest(); + EXPECT_TRUE(prefetch_type.IsProxyBypassedForTesting()); + } + } +} + } // namespace } // namespace content
diff --git a/content/browser/storage_partition_impl_browsertest.cc b/content/browser/storage_partition_impl_browsertest.cc index f76c1cc8..372ac71 100644 --- a/content/browser/storage_partition_impl_browsertest.cc +++ b/content/browser/storage_partition_impl_browsertest.cc
@@ -102,7 +102,10 @@ https_test_server_.ServeFilesFromSourceDirectory(GetTestDataFilePath()); } - ~ClientCertBrowserTest() override = default; + ~ClientCertBrowserTest() override { + // This is to avoid having a dangling pointer in `ContentClient`. + content::SetBrowserClientForTesting(nullptr); + } protected: void SetUpOnMainThread() override {
diff --git a/content/browser/tracing/cros_tracing_agent.cc b/content/browser/tracing/cros_tracing_agent.cc index 1e5ddbb..614ef2a 100644 --- a/content/browser/tracing/cros_tracing_agent.cc +++ b/content/browser/tracing/cros_tracing_agent.cc
@@ -45,7 +45,7 @@ } base::trace_event::TraceConfig trace_config(config); - debug_daemon_ = chromeos::DBusThreadManager::Get()->GetDebugDaemonClient(); + debug_daemon_ = chromeos::DebugDaemonClient::Get(); if (!trace_config.IsSystraceEnabled() || !debug_daemon_) { if (callback) std::move(callback).Run(/*success=*/false);
diff --git a/content/browser/tracing/tracing_controller_browsertest.cc b/content/browser/tracing/tracing_controller_browsertest.cc index 172202a..14b6c31a 100644 --- a/content/browser/tracing/tracing_controller_browsertest.cc +++ b/content/browser/tracing/tracing_controller_browsertest.cc
@@ -34,6 +34,7 @@ #include "third_party/abseil-cpp/absl/types/optional.h" #if BUILDFLAG(IS_CHROMEOS_ASH) +#include "chromeos/dbus/debug_daemon/debug_daemon_client.h" #include "chromeos/system/fake_statistics_provider.h" #include "chromeos/system/statistics_provider.h" #endif @@ -104,6 +105,7 @@ disable_recording_done_callback_count_ = 0; #if BUILDFLAG(IS_CHROMEOS_ASH) + chromeos::DebugDaemonClient::InitializeFake(); // Set statistic provider for hardware class tests. chromeos::system::StatisticsProvider::SetTestProvider( &fake_statistics_provider_); @@ -113,6 +115,13 @@ ContentBrowserTest::SetUp(); } + void TearDown() override { + ContentBrowserTest::TearDown(); +#if BUILDFLAG(IS_CHROMEOS_ASH) + chromeos::DebugDaemonClient::Shutdown(); +#endif + } + void Navigate(Shell* shell) { EXPECT_TRUE(NavigateToURL(shell, GetTestUrl("", "title1.html"))); }
diff --git a/content/browser/webid/federated_auth_request_impl.cc b/content/browser/webid/federated_auth_request_impl.cc index be8ffa3b..0b54a1cc 100644 --- a/content/browser/webid/federated_auth_request_impl.cc +++ b/content/browser/webid/federated_auth_request_impl.cc
@@ -25,7 +25,6 @@ #include "content/public/browser/web_contents.h" #include "content/public/common/content_client.h" #include "content/public/common/content_switches.h" -#include "content/public/common/page_visibility_state.h" #include "third_party/blink/public/mojom/devtools/console_message.mojom.h" #include "third_party/blink/public/mojom/devtools/inspector_issue.mojom.h" #include "ui/accessibility/ax_mode.h" @@ -660,9 +659,10 @@ return; } case IdpNetworkRequestManager::FetchStatus::kSuccess: { - bool is_visible = (render_frame_host().IsActive() && - render_frame_host().GetVisibilityState() == - content::PageVisibilityState::kVisible); + WebContents* rp_web_contents = + WebContents::FromRenderFrameHost(&render_frame_host()); + bool is_visible = rp_web_contents && (rp_web_contents->GetVisibility() == + Visibility::VISIBLE); RecordWebContentsVisibilityUponReadyToShowDialog(is_visible); // Does not show the dialog if the user has left the page. e.g. they may // open a new tab before browser is ready to show the dialog. @@ -672,9 +672,6 @@ return; } - WebContents* rp_web_contents = - WebContents::FromRenderFrameHost(&render_frame_host()); - // Populate the accounts login state. for (auto& account : accounts) { // Record when IDP and browser have different user sign-in states.
diff --git a/content/browser/webid/federated_auth_request_impl_unittest.cc b/content/browser/webid/federated_auth_request_impl_unittest.cc index 28baae4..95e34ba 100644 --- a/content/browser/webid/federated_auth_request_impl_unittest.cc +++ b/content/browser/webid/federated_auth_request_impl_unittest.cc
@@ -71,7 +71,6 @@ constexpr char kProviderUrl[] = "https://idp.example/"; constexpr char kProviderUrlFull[] = "https://idp.example/fedcm.json"; constexpr char kRpUrl[] = "https://rp.example/"; -constexpr char kRpOtherUrl[] = "https://rp.example/random/"; constexpr char kAccountsEndpoint[] = "https://idp.example/accounts"; constexpr char kCrossOriginAccountsEndpoint[] = "https://idp2.example/accounts"; constexpr char kTokenEndpoint[] = "https://idp.example/token"; @@ -833,8 +832,11 @@ std::unique_ptr<ukm::TestAutoSetUkmRecorder> ukm_recorder_; }; +class BasicFederatedAuthRequestImplTest : public FederatedAuthRequestImplTest { +}; + // Test successful FedCM request. -TEST_F(FederatedAuthRequestImplTest, SuccessfulRequest) { +TEST_F(BasicFederatedAuthRequestImplTest, SuccessfulRequest) { // Use IdpNetworkRequestManagerParamChecker to validate passed-in parameters // to IdpNetworkRequestManager methods. std::unique_ptr<IdpNetworkRequestManagerParamChecker> checker = @@ -849,7 +851,7 @@ } // Test successful manifest list fetching. -TEST_F(FederatedAuthRequestImplTest, ManifestListSuccess) { +TEST_F(BasicFederatedAuthRequestImplTest, ManifestListSuccess) { base::test::ScopedFeatureList list; list.InitAndEnableFeature(features::kFedCmManifestValidation); @@ -867,7 +869,7 @@ } // Test the provider url is not in the manifest list. -TEST_F(FederatedAuthRequestImplTest, ManifestListNotInList) { +TEST_F(BasicFederatedAuthRequestImplTest, ManifestListNotInList) { base::test::ScopedFeatureList list; list.InitAndEnableFeature(features::kFedCmManifestValidation); @@ -883,7 +885,7 @@ // Test that not having the filename in the manifest list fails // (kProviderUrl vs kProviderUrlFull). -TEST_F(FederatedAuthRequestImplTest, ManifestListHasNoFilename) { +TEST_F(BasicFederatedAuthRequestImplTest, ManifestListHasNoFilename) { base::test::ScopedFeatureList list; list.InitAndEnableFeature(features::kFedCmManifestValidation); @@ -900,7 +902,7 @@ } // Test that request fails if manifest is missing token endpoint. -TEST_F(FederatedAuthRequestImplTest, MissingTokenEndpoint) { +TEST_F(BasicFederatedAuthRequestImplTest, MissingTokenEndpoint) { MockConfiguration configuration = kConfigurationValid; configuration.manifest.token_endpoint = ""; RequestExpectations expectations = { @@ -921,7 +923,7 @@ } // Test that request fails if manifest is missing accounts endpoint. -TEST_F(FederatedAuthRequestImplTest, MissingAccountsEndpoint) { +TEST_F(BasicFederatedAuthRequestImplTest, MissingAccountsEndpoint) { MockConfiguration configuration = kConfigurationValid; configuration.manifest.accounts_endpoint = ""; RequestExpectations expectations = { @@ -942,7 +944,7 @@ } // Test that client metadata endpoint is not required in manifest. -TEST_F(FederatedAuthRequestImplTest, MissingClientMetadataEndpoint) { +TEST_F(BasicFederatedAuthRequestImplTest, MissingClientMetadataEndpoint) { MockConfiguration configuration = kConfigurationValid; configuration.manifest.client_metadata_endpoint = ""; RequestExpectations expectations = { @@ -953,7 +955,7 @@ // Test that request fails if the accounts endpoint is in a different origin // than identity provider. -TEST_F(FederatedAuthRequestImplTest, AccountEndpointDifferentOriginIdp) { +TEST_F(BasicFederatedAuthRequestImplTest, AccountEndpointDifferentOriginIdp) { MockConfiguration configuration = kConfigurationValid; configuration.manifest.accounts_endpoint = kCrossOriginAccountsEndpoint; RequestExpectations expectations = { @@ -964,7 +966,7 @@ } // Test that request fails if accounts endpoint cannot be reached. -TEST_F(FederatedAuthRequestImplTest, AccountEndpointCannotBeReached) { +TEST_F(BasicFederatedAuthRequestImplTest, AccountEndpointCannotBeReached) { MockConfiguration configuration = kConfigurationValid; configuration.accounts_response = FetchStatus::kNoResponseError; RequestExpectations expectations = { @@ -976,7 +978,7 @@ } // Test that request fails if account endpoint response cannot be parsed. -TEST_F(FederatedAuthRequestImplTest, AccountsCannotBeParsed) { +TEST_F(BasicFederatedAuthRequestImplTest, AccountsCannotBeParsed) { MockConfiguration configuration = kConfigurationValid; configuration.accounts_response = FetchStatus::kInvalidResponseError; RequestExpectations expectations = { @@ -989,7 +991,7 @@ // Test that privacy policy URL or terms of service is not required in client // metadata. -TEST_F(FederatedAuthRequestImplTest, +TEST_F(BasicFederatedAuthRequestImplTest, ClientMetadataNoPrivacyPolicyOrTermsOfServiceUrl) { MockConfiguration configuration = kConfigurationValid; configuration.client_metadata = kDefaultClientMetadata; @@ -999,7 +1001,7 @@ } // Test that privacy policy URL is not required in client metadata. -TEST_F(FederatedAuthRequestImplTest, ClientMetadataNoPrivacyPolicyUrl) { +TEST_F(BasicFederatedAuthRequestImplTest, ClientMetadataNoPrivacyPolicyUrl) { MockConfiguration configuration = kConfigurationValid; configuration.client_metadata = kDefaultClientMetadata; configuration.client_metadata.privacy_policy_url = ""; @@ -1007,7 +1009,7 @@ } // Test that terms of service URL is not required in client metadata. -TEST_F(FederatedAuthRequestImplTest, ClientMetadataNoTermsOfServiceUrl) { +TEST_F(BasicFederatedAuthRequestImplTest, ClientMetadataNoTermsOfServiceUrl) { MockConfiguration configuration = kConfigurationValid; configuration.client_metadata = kDefaultClientMetadata; configuration.client_metadata.terms_of_service_url = ""; @@ -1015,7 +1017,7 @@ } // Test that request fails if all of the endpoints in the manifest are invalid. -TEST_F(FederatedAuthRequestImplTest, AllInvalidEndpoints) { +TEST_F(BasicFederatedAuthRequestImplTest, AllInvalidEndpoints) { // Both an empty url and cross origin urls are invalid endpoints. MockConfiguration configuration = kConfigurationValid; configuration.manifest.accounts_endpoint = "https://cross-origin-1.com"; @@ -1038,7 +1040,7 @@ } // Test Logout method success with multiple relying parties. -TEST_F(FederatedAuthRequestImplTest, LogoutSuccessMultiple) { +TEST_F(BasicFederatedAuthRequestImplTest, LogoutSuccessMultiple) { base::test::ScopedFeatureList list; list.InitAndEnableFeatureWithParameters( features::kFedCm, @@ -1070,7 +1072,7 @@ } // Test Logout without session permission granted. -TEST_F(FederatedAuthRequestImplTest, LogoutWithoutPermission) { +TEST_F(BasicFederatedAuthRequestImplTest, LogoutWithoutPermission) { base::test::ScopedFeatureList list; list.InitAndEnableFeatureWithParameters( features::kFedCm, @@ -1088,7 +1090,7 @@ } // Test Logout method with an empty endpoint vector. -TEST_F(FederatedAuthRequestImplTest, LogoutNoEndpoints) { +TEST_F(BasicFederatedAuthRequestImplTest, LogoutNoEndpoints) { SetNetworkRequestManager( std::make_unique<TestLogoutIdpNetworkRequestManager>()); @@ -1098,13 +1100,15 @@ } // Tests for Login State -TEST_F(FederatedAuthRequestImplTest, LoginStateShouldBeSignUpForFirstTimeUser) { +TEST_F(BasicFederatedAuthRequestImplTest, + LoginStateShouldBeSignUpForFirstTimeUser) { RunAuthTest(kDefaultRequestParameters, kExpectationSuccess, kConfigurationValid); EXPECT_EQ(LoginState::kSignUp, displayed_accounts()[0].login_state); } -TEST_F(FederatedAuthRequestImplTest, LoginStateShouldBeSignInForReturningUser) { +TEST_F(BasicFederatedAuthRequestImplTest, + LoginStateShouldBeSignInForReturningUser) { // Pretend the sharing permission has been granted for this account. EXPECT_CALL(*mock_sharing_permission_delegate_, HasSharingPermission(url::Origin::Create(GURL(kRpUrl)), @@ -1116,7 +1120,7 @@ EXPECT_EQ(LoginState::kSignIn, displayed_accounts()[0].login_state); } -TEST_F(FederatedAuthRequestImplTest, +TEST_F(BasicFederatedAuthRequestImplTest, LoginStateSuccessfulSignUpGrantsSharingPermission) { EXPECT_CALL(*mock_sharing_permission_delegate_, HasSharingPermission(_, _, _)) .WillOnce(Return(false)); @@ -1129,7 +1133,7 @@ kConfigurationValid); } -TEST_F(FederatedAuthRequestImplTest, +TEST_F(BasicFederatedAuthRequestImplTest, LoginStateFailedSignUpNotGrantSharingPermission) { EXPECT_CALL(*mock_sharing_permission_delegate_, HasSharingPermission(_, _, _)) .WillOnce(Return(false)); @@ -1146,7 +1150,7 @@ RunAuthTest(kDefaultRequestParameters, expectations, configuration); } -TEST_F(FederatedAuthRequestImplTest, AutoSignInForReturningUser) { +TEST_F(BasicFederatedAuthRequestImplTest, AutoSignInForReturningUser) { base::test::ScopedFeatureList list; list.InitAndEnableFeatureWithParameters( features::kFedCm, @@ -1186,7 +1190,7 @@ EXPECT_EQ(displayed_accounts[0].login_state, LoginState::kSignIn); } -TEST_F(FederatedAuthRequestImplTest, AutoSignInForFirstTimeUser) { +TEST_F(BasicFederatedAuthRequestImplTest, AutoSignInForFirstTimeUser) { base::test::ScopedFeatureList list; list.InitAndEnableFeatureWithParameters( features::kFedCm, @@ -1217,7 +1221,7 @@ EXPECT_EQ(displayed_accounts[0].login_state, LoginState::kSignUp); } -TEST_F(FederatedAuthRequestImplTest, AutoSignInWithScreenReader) { +TEST_F(BasicFederatedAuthRequestImplTest, AutoSignInWithScreenReader) { base::test::ScopedFeatureList list; list.InitAndEnableFeatureWithParameters( features::kFedCm, @@ -1261,7 +1265,7 @@ EXPECT_EQ(displayed_accounts[0].login_state, LoginState::kSignIn); } -TEST_F(FederatedAuthRequestImplTest, MetricsForSuccessfulSignInCase) { +TEST_F(BasicFederatedAuthRequestImplTest, MetricsForSuccessfulSignInCase) { // Pretends that the sharing permission has been granted for this account. EXPECT_CALL(*mock_sharing_permission_delegate_, HasSharingPermission(_, url::Origin::Create(GURL(kIdpTestOrigin)), @@ -1300,7 +1304,7 @@ } // Test that request fails if UI is dismissed without an account being selected. -TEST_F(FederatedAuthRequestImplTest, +TEST_F(BasicFederatedAuthRequestImplTest, MetricsForUIDismissedWithoutSelectingAccount) { base::HistogramTester histogram_tester_; @@ -1358,7 +1362,7 @@ } // Test that request is not completed if user ignores the UI. -TEST_F(FederatedAuthRequestImplTest, UIIsIgnored) { +TEST_F(BasicFederatedAuthRequestImplTest, UIIsIgnored) { base::HistogramTester histogram_tester_; // The UI will not be destroyed during the test. @@ -1405,12 +1409,13 @@ EXPECT_CALL(*mock_dialog_controller(), DestructorCalled()).Times(1); } -TEST_F(FederatedAuthRequestImplTest, MetricsForWebContentsVisible) { +TEST_F(BasicFederatedAuthRequestImplTest, MetricsForWebContentsVisible) { base::HistogramTester histogram_tester; - // Sets RenderFrameHost to visible - test_rvh()->SimulateWasShown(); - ASSERT_EQ(test_rvh()->GetMainRenderFrameHost()->GetVisibilityState(), - content::PageVisibilityState::kVisible); + // Sets the WebContents to visible + WebContentsImpl* web_contents_impl = + static_cast<WebContentsImpl*>(web_contents()); + web_contents_impl->UpdateWebContentsVisibility(Visibility::VISIBLE); + ASSERT_EQ(web_contents_impl->GetVisibility(), Visibility::VISIBLE); // Pretends that the sharing permission has been granted for this account. EXPECT_CALL(*mock_sharing_permission_delegate_, @@ -1426,16 +1431,16 @@ } // Test that request fails if the web contents are hidden. -TEST_F(FederatedAuthRequestImplTest, MetricsForWebContentsInvisible) { +TEST_F(BasicFederatedAuthRequestImplTest, MetricsForWebContentsInvisible) { base::HistogramTester histogram_tester; - test_rvh()->SimulateWasShown(); - ASSERT_EQ(test_rvh()->GetMainRenderFrameHost()->GetVisibilityState(), - content::PageVisibilityState::kVisible); + WebContentsImpl* web_contents_impl = + static_cast<WebContentsImpl*>(web_contents()); + web_contents_impl->UpdateWebContentsVisibility(Visibility::VISIBLE); + ASSERT_EQ(web_contents_impl->GetVisibility(), Visibility::VISIBLE); - // Sets the RenderFrameHost to invisible - test_rvh()->SimulateWasHidden(); - ASSERT_NE(test_rvh()->GetMainRenderFrameHost()->GetVisibilityState(), - content::PageVisibilityState::kVisible); + // Sets the WebContents to invisible + web_contents_impl->UpdateWebContentsVisibility(Visibility::HIDDEN); + ASSERT_NE(web_contents_impl->GetVisibility(), Visibility::VISIBLE); MockConfiguration configuration = kConfigurationValid; configuration.customized_dialog = true; @@ -1447,7 +1452,8 @@ histogram_tester_.ExpectUniqueSample("Blink.FedCm.WebContentsVisible", 0, 1); } -TEST_F(FederatedAuthRequestImplTest, DisabledWhenThirdPartyCookiesBlocked) { +TEST_F(BasicFederatedAuthRequestImplTest, + DisabledWhenThirdPartyCookiesBlocked) { test_api_permission_delegate_->permission_override_ = std::make_pair(main_test_rfh()->GetLastCommittedOrigin(), ApiPermissionStatus::BLOCKED_THIRD_PARTY_COOKIES_BLOCKED); @@ -1463,7 +1469,7 @@ ExpectRequestTokenStatusUKM(TokenStatus::kThirdPartyCookiesBlocked); } -TEST_F(FederatedAuthRequestImplTest, MetricsForFeatureIsDisabled) { +TEST_F(BasicFederatedAuthRequestImplTest, MetricsForFeatureIsDisabled) { test_api_permission_delegate_->permission_override_ = std::make_pair(main_test_rfh()->GetLastCommittedOrigin(), ApiPermissionStatus::BLOCKED_VARIATIONS); @@ -1478,7 +1484,7 @@ ExpectRequestTokenStatusUKM(TokenStatus::kDisabledInFlags); } -TEST_F(FederatedAuthRequestImplTest, +TEST_F(BasicFederatedAuthRequestImplTest, MetricsForFeatureIsDisabledNotDoubleCountedWithUnhandledRequest) { test_api_permission_delegate_->permission_override_ = std::make_pair(main_test_rfh()->GetLastCommittedOrigin(), @@ -1501,7 +1507,7 @@ ExpectRequestTokenStatusUKM(TokenStatus::kDisabledInFlags); } -TEST_F(FederatedAuthRequestImplTest, +TEST_F(BasicFederatedAuthRequestImplTest, MetricsForFeatureIsDisabledNotDoubleCountedWithAbortedRequest) { test_api_permission_delegate_->permission_override_ = std::make_pair(main_test_rfh()->GetLastCommittedOrigin(), @@ -1526,7 +1532,8 @@ // Test that sign-in states match if IDP claims that user is signed in and // browser also observes that user is signed in. -TEST_F(FederatedAuthRequestImplTest, MetricsForSignedInOnBothIdpAndBrowser) { +TEST_F(BasicFederatedAuthRequestImplTest, + MetricsForSignedInOnBothIdpAndBrowser) { // Set browser observes user is signed in. EXPECT_CALL(*mock_sharing_permission_delegate_, HasSharingPermission(url::Origin::Create(GURL(kRpUrl)), @@ -1555,7 +1562,8 @@ // Test that sign-in states match if IDP claims that user is not signed in and // browser also observes that user is not signed in. -TEST_F(FederatedAuthRequestImplTest, MetricsForNotSignedInOnBothIdpAndBrowser) { +TEST_F(BasicFederatedAuthRequestImplTest, + MetricsForNotSignedInOnBothIdpAndBrowser) { // Set browser observes user is not signed in. EXPECT_CALL(*mock_sharing_permission_delegate_, HasSharingPermission(url::Origin::Create(GURL(kRpUrl)), @@ -1580,7 +1588,7 @@ // Test that sign-in states mismatch if IDP claims that user is signed in but // browser observes that user is not signed in. -TEST_F(FederatedAuthRequestImplTest, MetricsForOnlyIdpClaimedSignIn) { +TEST_F(BasicFederatedAuthRequestImplTest, MetricsForOnlyIdpClaimedSignIn) { // Set browser observes user is not signed in. EXPECT_CALL(*mock_sharing_permission_delegate_, HasSharingPermission(url::Origin::Create(GURL(kRpUrl)), @@ -1610,7 +1618,7 @@ // Test that sign-in states mismatch if IDP claims that user is not signed in // but browser observes that user is signed in. -TEST_F(FederatedAuthRequestImplTest, MetricsForOnlyBrowserObservedSignIn) { +TEST_F(BasicFederatedAuthRequestImplTest, MetricsForOnlyBrowserObservedSignIn) { // Set browser observes user is signed in. EXPECT_CALL(*mock_sharing_permission_delegate_, HasSharingPermission(url::Origin::Create(GURL(kRpUrl)), @@ -1637,7 +1645,7 @@ // Test that embargo is requested if the // IdentityRequestDialogController::ShowAccountsDialog() callback requests it. -TEST_F(FederatedAuthRequestImplTest, RequestEmbargo) { +TEST_F(BasicFederatedAuthRequestImplTest, RequestEmbargo) { RequestExpectations expectations = { RequestTokenStatus::kError, FederatedAuthRequestResult::kError, FETCH_ENDPOINT_ALL_REQUEST_TOKEN & ~FetchedEndpoint::TOKEN}; @@ -1667,7 +1675,7 @@ // Test that the embargo dismiss count is reset when the user grants consent via // the FedCM dialog. -TEST_F(FederatedAuthRequestImplTest, RemoveEmbargoOnUserConsent) { +TEST_F(BasicFederatedAuthRequestImplTest, RemoveEmbargoOnUserConsent) { RunAuthTest(kDefaultRequestParameters, kExpectationSuccess, kConfigurationValid); EXPECT_TRUE(test_api_permission_delegate_->embargoed_origins_.empty()); @@ -1675,7 +1683,7 @@ // Test that token request fails if FEDERATED_IDENTITY_API content setting is // disabled for the RP origin. -TEST_F(FederatedAuthRequestImplTest, ApiBlockedForOrigin) { +TEST_F(BasicFederatedAuthRequestImplTest, ApiBlockedForOrigin) { test_api_permission_delegate_->permission_override_ = std::make_pair(main_test_rfh()->GetLastCommittedOrigin(), ApiPermissionStatus::BLOCKED_SETTINGS); @@ -1688,7 +1696,7 @@ // Test that token request succeeds if FEDERATED_IDENTITY_API content setting is // enabled for RP origin but disabled for an unrelated origin. -TEST_F(FederatedAuthRequestImplTest, ApiBlockedForUnrelatedOrigin) { +TEST_F(BasicFederatedAuthRequestImplTest, ApiBlockedForUnrelatedOrigin) { const url::Origin kUnrelatedOrigin = url::Origin::Create(GURL("https://rp2.example/")); @@ -1740,7 +1748,7 @@ // Test that the request fails if user proceeds with the sign in workflow after // disabling the API while an existing accounts dialog is shown. -TEST_F(FederatedAuthRequestImplTest, ApiDisabledAfterAccountsDialogShown) { +TEST_F(BasicFederatedAuthRequestImplTest, ApiDisabledAfterAccountsDialogShown) { base::HistogramTester histogram_tester_; EXPECT_CALL(*mock_dialog_controller(), @@ -1795,7 +1803,7 @@ } // Test that disclosure text is shown for first time user. -TEST_F(FederatedAuthRequestImplTest, DisclosureTextShownForFirstTimeUser) { +TEST_F(BasicFederatedAuthRequestImplTest, DisclosureTextShownForFirstTimeUser) { MockConfiguration configuration = kConfigurationValid; configuration.post_request_body = "client_id=" + std::string(kClientId) + "&nonce=" + std::string(kNonce) + @@ -1806,7 +1814,8 @@ } // Test that disclosure text is not shown for returning user. -TEST_F(FederatedAuthRequestImplTest, DisclosureTextNotShownForReturningUser) { +TEST_F(BasicFederatedAuthRequestImplTest, + DisclosureTextNotShownForReturningUser) { // Pretend the sharing permission has been granted for this account. EXPECT_CALL(*mock_sharing_permission_delegate_, HasSharingPermission(url::Origin::Create(GURL(kRpUrl)), @@ -1822,60 +1831,4 @@ RunAuthTest(kDefaultRequestParameters, kExpectationSuccess, configuration); } -namespace { - -// TestIdpNetworkRequestManager subclass which runs the `account_list_task` -// passed-in to the constructor prior to the accounts endpoint returning. -class IdpNetworkRequestManagerAccountListTaskRunner - : public TestIdpNetworkRequestManager { - public: - IdpNetworkRequestManagerAccountListTaskRunner( - base::OnceClosure account_list_task) - : account_list_task_(std::move(account_list_task)) {} - - IdpNetworkRequestManagerAccountListTaskRunner( - const IdpNetworkRequestManagerAccountListTaskRunner&) = delete; - IdpNetworkRequestManagerAccountListTaskRunner& operator=( - const IdpNetworkRequestManagerAccountListTaskRunner&) = delete; - - void SendAccountsRequest(const GURL& accounts_url, - const std::string& client_id, - AccountsRequestCallback callback) override { - if (account_list_task_) - std::move(account_list_task_).Run(); - TestIdpNetworkRequestManager::SendAccountsRequest(accounts_url, client_id, - std::move(callback)); - } - - private: - base::OnceClosure account_list_task_; -}; - -void NavigateToUrl(content::WebContents* web_contents, const GURL& url) { - static_cast<TestWebContents*>(web_contents) - ->NavigateAndCommit(url, ui::PAGE_TRANSITION_LINK); -} - -} // namespace - -// Test that the account chooser is not shown if the page navigates prior to the -// accounts endpoint request completing. -TEST_F(FederatedAuthRequestImplTest, NavigateDuringAccountFetch) { - SetNetworkRequestManager( - std::make_unique<IdpNetworkRequestManagerAccountListTaskRunner>( - base::BindOnce(&NavigateToUrl, web_contents(), GURL(kRpOtherUrl)))); - - EXPECT_CALL(*mock_dialog_controller_, ShowAccountsDialog(_, _, _, _, _, _, _)) - .Times(0); - MockConfiguration configuration = kConfigurationValid; - configuration.customized_dialog = true; - - RequestExpectations expectations = { - RequestTokenStatus::kError, - /*devtools_issue_status*/ absl::nullopt, - FetchedEndpoint::MANIFEST | FetchedEndpoint::CLIENT_METADATA | - FetchedEndpoint::MANIFEST_LIST | FetchedEndpoint::ACCOUNTS}; - RunAuthTest(kDefaultRequestParameters, expectations, configuration); -} - } // namespace content
diff --git a/content/public/android/java/strings/translations/android_content_strings_te.xtb b/content/public/android/java/strings/translations/android_content_strings_te.xtb index befd494..1e12c402 100644 --- a/content/public/android/java/strings/translations/android_content_strings_te.xtb +++ b/content/public/android/java/strings/translations/android_content_strings_te.xtb
@@ -23,7 +23,7 @@ <translation id="6444070574980481588">తేదీ మరియు సమయాన్ని సెట్ చేయండి</translation> <translation id="6527303717912515753">షేర్ చేయండి</translation> <translation id="660254432468400466">Google ప్రసంగ ఇంజిన్ను కనుగొనడం సాధ్యం కాలేదు</translation> -<translation id="6643016212128521049">క్లియర్ చేయి</translation> +<translation id="6643016212128521049">క్లియర్ చేయండి</translation> <translation id="6727102863431372879">సెట్ చేయి</translation> <translation id="6849295950938417341">ప్రొఫైలర్ను ప్రారంభించడంలో విఫలమైంది</translation> <translation id="7102218676258945610">నిమిషం</translation>
diff --git a/content/public/common/content_client.h b/content/public/common/content_client.h index 89a5f06..aded7807 100644 --- a/content/public/common/content_client.h +++ b/content/public/common/content_client.h
@@ -219,7 +219,7 @@ friend class InternalTestInitializer; // The embedder API for participating in browser logic. - raw_ptr<ContentBrowserClient, DanglingUntriaged> browser_; + raw_ptr<ContentBrowserClient> browser_; // The embedder API for participating in gpu logic. raw_ptr<ContentGpuClient> gpu_; // The embedder API for participating in renderer logic.
diff --git a/content/test/BUILD.gn b/content/test/BUILD.gn index cbdf06c2..5e09dca 100644 --- a/content/test/BUILD.gn +++ b/content/test/BUILD.gn
@@ -1905,6 +1905,7 @@ deps += [ "//ash/components/audio", "//chromeos/ash/components/dbus/audio", + "//chromeos/dbus/debug_daemon", "//chromeos/system", ] }
diff --git a/content/test/data/accessibility/aria/aria-sort-html-table-expected-auralinux.txt b/content/test/data/accessibility/aria/aria-sort-html-table-expected-auralinux.txt index df1e7d4..255eefd 100644 --- a/content/test/data/accessibility/aria/aria-sort-html-table-expected-auralinux.txt +++ b/content/test/data/accessibility/aria/aria-sort-html-table-expected-auralinux.txt
@@ -100,4 +100,4 @@ ++++++[table cell] name='B' (row=2, col=0, row_span=1, col_span=1, n_row_headers=0, n_col_headers=1) ++++++++[static] name='B' ++[section] -++++[static] name='Alphabet' +++++[static] name='Alphabet' \ No newline at end of file
diff --git a/content/test/data/accessibility/html/action-verbs-expected-auralinux.txt b/content/test/data/accessibility/html/action-verbs-expected-auralinux.txt index 04705dcb..2901be7 100644 --- a/content/test/data/accessibility/html/action-verbs-expected-auralinux.txt +++ b/content/test/data/accessibility/html/action-verbs-expected-auralinux.txt
@@ -1,4 +1,4 @@ -[document web] name='Action verbs' actions=(showContextMenu, scrollUp, scrollDown, scrollLeft, scrollRight, scrollForward, scrollBackward) +[document web] name='Action verbs' actions=(showContextMenu, scrollBackward, scrollDown, scrollForward, scrollLeft, scrollRight, scrollUp) ++[section] actions=(showContextMenu) ++++[static] name='Generic div' actions=(showContextMenu) ++[heading] name='Heading' actions=(showContextMenu)
diff --git a/content/test/data/accessibility/html/input-list-expected-blink.txt b/content/test/data/accessibility/html/input-list-expected-blink.txt index 1af4800..3609011 100644 --- a/content/test/data/accessibility/html/input-list-expected-blink.txt +++ b/content/test/data/accessibility/html/input-list-expected-blink.txt
@@ -4,10 +4,10 @@ ++++++labelText ++++++++staticText name='Choose a pokemon ' ++++++++++inlineTextBox name='Choose a pokemon ' -++++++++textFieldWithComboBox editable focusable autoComplete='list' name='Choose a pokemon' haspopup=listbox +++++++++textFieldWithComboBox editable focusable autoComplete='list' inputType='text' name='Choose a pokemon' haspopup=listbox ++++++++++genericContainer ignored ++++++++++++genericContainer ignored ++++++++++++++genericContainer editable ++++++++++++listItem ignored invisible ++++++++++++++listMarker ignored invisible -++++++++++++++++staticText ignored invisible name='%E2%96%BE' +++++++++++++++++staticText ignored invisible name='%E2%96%BE' \ No newline at end of file
diff --git a/content/test/data/accessibility/html/input-text-value-changed-expected-blink.txt b/content/test/data/accessibility/html/input-text-value-changed-expected-blink.txt index 6741613..d5f6ca1 100644 --- a/content/test/data/accessibility/html/input-text-value-changed-expected-blink.txt +++ b/content/test/data/accessibility/html/input-text-value-changed-expected-blink.txt
@@ -1,15 +1,15 @@ rootWebArea ++genericContainer ignored ++++genericContainer -++++++textField value='aaYYYYbb' +++++++textField inputType='text' value='aaYYYYbb' ++++++++genericContainer ++++++++++staticText name='aaYYYYbb' ++++++++++++inlineTextBox name='aaYYYYbb' -++++++textField value='aa' +++++++textField inputType='text' value='aa' ++++++++genericContainer ++++++++++staticText name='aa' ++++++++++++inlineTextBox name='aa' -++++++textField value='After' +++++++textField inputType='text' value='After' ++++++++genericContainer ++++++++++staticText name='After' -++++++++++++inlineTextBox name='After' +++++++++++++inlineTextBox name='After' \ No newline at end of file
diff --git a/content/test/data/accessibility/html/input-text-value-expected-blink.txt b/content/test/data/accessibility/html/input-text-value-expected-blink.txt index a9fdcd3..6a8fa035 100644 --- a/content/test/data/accessibility/html/input-text-value-expected-blink.txt +++ b/content/test/data/accessibility/html/input-text-value-expected-blink.txt
@@ -4,18 +4,18 @@ ++++++labelText ++++++++staticText name='l1' ++++++++++inlineTextBox name='l1' -++++++textField focusable name='l1' +++++++textField focusable inputType='text' name='l1' ++++++++genericContainer ++++++labelText ++++++++staticText name='l2' ++++++++++inlineTextBox name='l2' -++++++textField focusable name='l2' value='value' +++++++textField focusable inputType='text' name='l2' value='value' ++++++++genericContainer ++++++++++staticText name='value' ++++++++++++inlineTextBox name='value' -++++++textField focusable name='l2' +++++++textField focusable inputType='text' name='l2' ++++++++genericContainer -++++++textField focusable name='l2' value='value *' +++++++textField focusable inputType='text' name='l2' value='value *' ++++++++genericContainer ++++++++++staticText name='value *' ++++++++++++inlineTextBox name='value *' @@ -23,9 +23,9 @@ ++++++++staticText name='Email' ++++++++++inlineTextBox name='Email' ++++++genericContainer -++++++textField focusable name='Email' +++++++textField focusable inputType='text' name='Email' ++++++++genericContainer -++++++textField focusable name='Email' value='value' +++++++textField focusable inputType='text' name='Email' value='value' ++++++++genericContainer ++++++++++staticText name='value' ++++++++++++inlineTextBox name='value' @@ -35,7 +35,7 @@ ++++++++genericContainer ++++++++++staticText name='Value' ++++++++++++inlineTextBox name='Value' -++++++textField focusable description='Description' name='Name' value='value' descriptionFrom=title +++++++textField focusable description='Description' inputType='text' name='Name' value='value' descriptionFrom=title ++++++++genericContainer ++++++++++staticText name='value' -++++++++++++inlineTextBox name='value' +++++++++++++inlineTextBox name='value' \ No newline at end of file
diff --git a/content/test/data/accessibility/html/input-types-expected-auralinux.txt b/content/test/data/accessibility/html/input-types-expected-auralinux.txt index 9502421..c55f761 100644 --- a/content/test/data/accessibility/html/input-types-expected-auralinux.txt +++ b/content/test/data/accessibility/html/input-types-expected-auralinux.txt
@@ -2,7 +2,7 @@ ++[section] ++++[label] label-for ++++++[static] name='Default: ' -++++++[entry] name='Default:' selectable-text labelled-by +++++++[entry] name='Default:' selectable-text labelled-by text-input-type:text ++++[label] label-for ++++++[static] name='Button: ' ++++++[push button] name='Button:' labelled-by @@ -49,4 +49,4 @@ ++++++[entry] name='Text:' selectable-text labelled-by text-input-type:text ++++[label] label-for ++++++[static] name='Url: ' -++++++[entry] name='Url:' selectable-text labelled-by text-input-type:url +++++++[entry] name='Url:' selectable-text labelled-by text-input-type:url \ No newline at end of file
diff --git a/content/test/data/accessibility/html/input-types-expected-win.txt b/content/test/data/accessibility/html/input-types-expected-win.txt index b459e064..5ebc06e 100644 --- a/content/test/data/accessibility/html/input-types-expected-win.txt +++ b/content/test/data/accessibility/html/input-types-expected-win.txt
@@ -2,7 +2,7 @@ ++IA2_ROLE_SECTION ++++IA2_ROLE_LABEL ++++++ROLE_SYSTEM_STATICTEXT name='Default: ' -++++++ROLE_SYSTEM_TEXT name='Default:' FOCUSABLE +++++++ROLE_SYSTEM_TEXT name='Default:' FOCUSABLE text-input-type:text ++++IA2_ROLE_LABEL ++++++ROLE_SYSTEM_STATICTEXT name='Button: ' ++++++ROLE_SYSTEM_PUSHBUTTON name='Button:' FOCUSABLE
diff --git a/dbus/message.cc b/dbus/message.cc index a580b361..ba8b081 100644 --- a/dbus/message.cc +++ b/dbus/message.cc
@@ -513,10 +513,10 @@ AppendBasic(DBUS_TYPE_DOUBLE, &value); } -void MessageWriter::AppendString(base::StringPiece value) { +void MessageWriter::AppendString(const std::string& value) { // D-Bus Specification (0.19) says a string "must be valid UTF-8". CHECK(base::IsStringUTF8(value)); - const char* pointer = value.data(); + const char* pointer = value.c_str(); AppendBasic(DBUS_TYPE_STRING, &pointer); // TODO(satorux): It may make sense to return an error here, as the // input string can be large. If needed, we could add something like
diff --git a/dbus/message.h b/dbus/message.h index a6e2958..7ff8c6ae 100644 --- a/dbus/message.h +++ b/dbus/message.h
@@ -15,7 +15,6 @@ #include "base/files/scoped_file.h" #include "base/memory/raw_ptr.h" -#include "base/strings/string_piece.h" #include "dbus/dbus_export.h" #include "dbus/object_path.h" @@ -288,7 +287,7 @@ void AppendInt64(int64_t value); void AppendUint64(uint64_t value); void AppendDouble(double value); - void AppendString(base::StringPiece value); + void AppendString(const std::string& value); void AppendObjectPath(const ObjectPath& value); // Appends a file descriptor to the message.
diff --git a/dbus/values_util.cc b/dbus/values_util.cc index 8fcbfda..56652e5 100644 --- a/dbus/values_util.cc +++ b/dbus/values_util.cc
@@ -68,28 +68,26 @@ } // Gets the D-Bus type signature for the value. -std::string GetTypeSignature(base::ValueView value) { - struct Visitor { - std::string operator()(absl::monostate) { - DLOG(ERROR) << "Unexpected type " << base::Value::Type::NONE; +std::string GetTypeSignature(const base::Value& value) { + switch (value.type()) { + case base::Value::Type::BOOLEAN: + return "b"; + case base::Value::Type::INTEGER: + return "i"; + case base::Value::Type::DOUBLE: + return "d"; + case base::Value::Type::STRING: + return "s"; + case base::Value::Type::BINARY: + return "ay"; + case base::Value::Type::DICTIONARY: + return "a{sv}"; + case base::Value::Type::LIST: + return "av"; + default: + DLOG(ERROR) << "Unexpected type " << value.type(); return std::string(); - } - - std::string operator()(bool) { return "b"; } - - std::string operator()(int) { return "i"; } - - std::string operator()(double) { return "d"; } - - std::string operator()(base::StringPiece) { return "s"; } - - std::string operator()(const base::Value::BlobStorage&) { return "ay"; } - - std::string operator()(const base::Value::Dict&) { return "a{sv}"; } - - std::string operator()(const base::Value::List&) { return "av"; } - }; - return value.Visit(Visitor()); + } } } // namespace @@ -219,78 +217,44 @@ return result; } -void AppendBasicTypeValueData(MessageWriter* writer, base::ValueView value) { - struct Visitor { - MessageWriter* writer; - - void operator()(absl::monostate) { - DLOG(ERROR) << "Unexpected type: " << base::Value::Type::NONE; +void AppendBasicTypeValueData(MessageWriter* writer, const base::Value& value) { + switch (value.type()) { + case base::Value::Type::BOOLEAN: { + writer->AppendBool(value.GetBool()); + break; } - - void operator()(bool value) { writer->AppendBool(value); } - - void operator()(int value) { writer->AppendInt32(value); } - - void operator()(double value) { writer->AppendDouble(value); } - - void operator()(base::StringPiece value) { writer->AppendString(value); } - - void operator()(const base::Value::BlobStorage&) { - DLOG(ERROR) << "Unexpected type: " << base::Value::Type::BINARY; + case base::Value::Type::INTEGER: { + writer->AppendInt32(value.GetInt()); + break; } - - void operator()(const base::Value::Dict&) { - DLOG(ERROR) << "Unexpected type: " << base::Value::Type::DICT; + case base::Value::Type::DOUBLE: { + writer->AppendDouble(value.GetDouble()); + break; } - - void operator()(const base::Value::List&) { - DLOG(ERROR) << "Unexpected type: " << base::Value::Type::LIST; + case base::Value::Type::STRING: { + writer->AppendString(value.GetString()); + break; } - }; - - value.Visit(Visitor{.writer = writer}); + default: + DLOG(ERROR) << "Unexpected type " << value.type(); + break; + } } void AppendBasicTypeValueDataAsVariant(MessageWriter* writer, - base::ValueView value) { + const base::Value& value) { MessageWriter sub_writer(nullptr); writer->OpenVariant(GetTypeSignature(value), &sub_writer); AppendBasicTypeValueData(&sub_writer, value); writer->CloseContainer(&sub_writer); } -void AppendValueData(MessageWriter* writer, base::ValueView value) { - struct Visitor { - MessageWriter* writer; - - void operator()(absl::monostate) { - DLOG(ERROR) << "Unexpected type: " << base::Value::Type::NONE; - } - - void operator()(bool value) { - return AppendBasicTypeValueData(writer, value); - } - - void operator()(int value) { - return AppendBasicTypeValueData(writer, value); - } - - void operator()(double value) { - return AppendBasicTypeValueData(writer, value); - } - - void operator()(base::StringPiece value) { - return AppendBasicTypeValueData(writer, value); - } - - void operator()(const base::Value::BlobStorage& value) { - DLOG(ERROR) << "Unexpected type: " << base::Value::Type::BINARY; - } - - void operator()(const base::Value::Dict& value) { +void AppendValueData(MessageWriter* writer, const base::Value& value) { + switch (value.type()) { + case base::Value::Type::DICTIONARY: { dbus::MessageWriter array_writer(nullptr); writer->OpenArray("{sv}", &array_writer); - for (auto item : value) { + for (auto item : value.DictItems()) { dbus::MessageWriter dict_entry_writer(nullptr); array_writer.OpenDictEntry(&dict_entry_writer); dict_entry_writer.AppendString(item.first); @@ -298,22 +262,29 @@ array_writer.CloseContainer(&dict_entry_writer); } writer->CloseContainer(&array_writer); + break; } - - void operator()(const base::Value::List& value) { + case base::Value::Type::LIST: { dbus::MessageWriter array_writer(nullptr); writer->OpenArray("v", &array_writer); - for (const auto& value_in_list : value) { + for (const auto& value_in_list : value.GetListDeprecated()) { AppendValueDataAsVariant(&array_writer, value_in_list); } writer->CloseContainer(&array_writer); + break; } - }; - - value.Visit(Visitor{.writer = writer}); + case base::Value::Type::BOOLEAN: + case base::Value::Type::INTEGER: + case base::Value::Type::DOUBLE: + case base::Value::Type::STRING: + AppendBasicTypeValueData(writer, value); + break; + default: + DLOG(ERROR) << "Unexpected type: " << value.type(); + } } -void AppendValueDataAsVariant(MessageWriter* writer, base::ValueView value) { +void AppendValueDataAsVariant(MessageWriter* writer, const base::Value& value) { MessageWriter variant_writer(nullptr); writer->OpenVariant(GetTypeSignature(value), &variant_writer); AppendValueData(&variant_writer, value);
diff --git a/dbus/values_util.h b/dbus/values_util.h index abee1dff..09432159 100644 --- a/dbus/values_util.h +++ b/dbus/values_util.h
@@ -11,7 +11,6 @@ namespace base { class Value; -class ValueView; } namespace dbus { @@ -30,7 +29,7 @@ // types and to handle basic type members of collections that should not // have type "a{sv}" or "av". Otherwise, use AppendValueData. CHROME_DBUS_EXPORT void AppendBasicTypeValueData(MessageWriter* writer, - base::ValueView value); + const base::Value& value); // Appends a basic type value to |writer| as a variant. Basic types are BOOLEAN, // INTEGER, DOUBLE, and STRING. Use this function for values that are known to @@ -38,7 +37,7 @@ // not have type "a{sv}" or "av". Otherwise, use AppendValueDataAsVariant. CHROME_DBUS_EXPORT void AppendBasicTypeValueDataAsVariant( MessageWriter* writer, - base::ValueView value); + const base::Value& value); // Appends a value to |writer|. Value can be a basic type, as well as a // collection type, such as dictionary or list. Collections will be recursively @@ -46,7 +45,7 @@ // a{sv} and lists with type av. Any sub-dictionaries or sub-lists will also // have these types. CHROME_DBUS_EXPORT void AppendValueData(MessageWriter* writer, - base::ValueView value); + const base::Value& value); // Appends a value to |writer| as a variant. Value can be a basic type, as well // as a collection type, such as dictionary or list. Collections will be @@ -54,7 +53,7 @@ // with type a{sv} and lists with type av. Any sub-dictionaries or sub-lists // will also have these types. CHROME_DBUS_EXPORT void AppendValueDataAsVariant(MessageWriter* writer, - base::ValueView value); + const base::Value& value); } // namespace dbus
diff --git a/device/bluetooth/dbus/bluetooth_adapter_client.cc b/device/bluetooth/dbus/bluetooth_adapter_client.cc index 29cd723..ef9b89e1 100644 --- a/device/bluetooth/dbus/bluetooth_adapter_client.cc +++ b/device/bluetooth/dbus/bluetooth_adapter_client.cc
@@ -464,8 +464,8 @@ bluetooth_adapter::kConnectDevice); dbus::MessageWriter writer(&method_call); - base::Value::Dict dict; - dict.Set(bluetooth_device::kAddressProperty, address); + base::DictionaryValue dict; + dict.SetStringKey(bluetooth_device::kAddressProperty, address); if (address_type) { std::string address_type_value; switch (*address_type) { @@ -479,7 +479,8 @@ NOTREACHED(); break; }; - dict.Set(bluetooth_device::kAddressTypeProperty, address_type_value); + dict.SetStringKey(bluetooth_device::kAddressTypeProperty, + address_type_value); } dbus::AppendValueData(&writer, dict);
diff --git a/device/bluetooth/dbus/bluetooth_gatt_characteristic_client.cc b/device/bluetooth/dbus/bluetooth_gatt_characteristic_client.cc index e466de6..1b4e4d96 100644 --- a/device/bluetooth/dbus/bluetooth_gatt_characteristic_client.cc +++ b/device/bluetooth/dbus/bluetooth_gatt_characteristic_client.cc
@@ -105,7 +105,8 @@ // Append empty option dict dbus::MessageWriter writer(&method_call); - dbus::AppendValueData(&writer, base::Value::Dict()); + base::DictionaryValue dict; + dbus::AppendValueData(&writer, dict); object_proxy->CallMethodWithErrorCallback( &method_call, dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, @@ -136,11 +137,12 @@ writer.AppendArrayOfBytes(value.data(), value.size()); // Append option dict - base::Value::Dict dict; + base::DictionaryValue dict; if (!type_option.empty()) { // NB: the "type" option was added in BlueZ 5.51. Older versions of BlueZ // will ignore this option. - dict.Set(bluetooth_gatt_characteristic::kOptionType, type_option); + dict.SetStringKey(bluetooth_gatt_characteristic::kOptionType, + type_option); } dbus::AppendValueData(&writer, dict); @@ -170,7 +172,8 @@ dbus::MessageWriter writer(&method_call); writer.AppendArrayOfBytes(value.data(), value.size()); - dbus::AppendValueData(&writer, base::Value::Dict()); + base::DictionaryValue dict; + dbus::AppendValueData(&writer, dict); object_proxy->CallMethodWithErrorCallback( &method_call, dbus::ObjectProxy::TIMEOUT_USE_DEFAULT,
diff --git a/device/bluetooth/dbus/bluetooth_gatt_descriptor_client.cc b/device/bluetooth/dbus/bluetooth_gatt_descriptor_client.cc index 69fce98..349ae53 100644 --- a/device/bluetooth/dbus/bluetooth_gatt_descriptor_client.cc +++ b/device/bluetooth/dbus/bluetooth_gatt_descriptor_client.cc
@@ -108,7 +108,8 @@ // Append empty option dict dbus::MessageWriter writer(&method_call); - dbus::AppendValueData(&writer, base::Value::Dict()); + base::DictionaryValue dict; + dbus::AppendValueData(&writer, dict); object_proxy->CallMethodWithErrorCallback( &method_call, dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, @@ -138,7 +139,8 @@ writer.AppendArrayOfBytes(value.data(), value.size()); // Append empty option dict - dbus::AppendValueData(&writer, base::Value::Dict()); + base::DictionaryValue dict; + dbus::AppendValueData(&writer, dict); object_proxy->CallMethodWithErrorCallback( &method_call, dbus::ObjectProxy::TIMEOUT_USE_DEFAULT,
diff --git a/docs/updater/functional_spec.md b/docs/updater/functional_spec.md index b2598b22..4d0ba052 100644 --- a/docs/updater/functional_spec.md +++ b/docs/updater/functional_spec.md
@@ -839,10 +839,10 @@ the value is propagated on the client so being able to verify that the updater picks up the policy can help debug propagation issues as well. -The IPolicyStatus interface therefore exposes this functionality that can be -queried and shown in chrome://policy. +The IPolicyStatus/IPolicyStatus2/IPolicyStatus3 interfaces therefore expose this +functionality that can be queried and shown in chrome://policy. -[IPolicyStatus members](https://source.chromium.org/chromium/chromium/src/+/main:chrome/updater/app/server/win/updater_legacy_idl.template?q=IPolicyStatus) +[IPolicyStatus/IPolicyStatus2/IPolicyStatus3 interface definition](https://source.chromium.org/chromium/chromium/src/+/main:chrome/updater/app/server/win/updater_legacy_idl.template?q=IPolicyStatus) ## Uninstallation On Mac and Linux, if the application was registered with an existence path
diff --git a/extensions/browser/api/diagnostics/diagnostics_api.cc b/extensions/browser/api/diagnostics/diagnostics_api.cc index ba92259a..cec79e0 100644 --- a/extensions/browser/api/diagnostics/diagnostics_api.cc +++ b/extensions/browser/api/diagnostics/diagnostics_api.cc
@@ -9,7 +9,6 @@ #include "base/json/json_reader.h" #include "base/strings/string_number_conversions.h" #include "base/values.h" -#include "chromeos/dbus/dbus_thread_manager.h" #include "chromeos/dbus/debug_daemon/debug_daemon_client.h" namespace extensions { @@ -67,12 +66,10 @@ if (params->options.size) config[kSize] = base::NumberToString(*params->options.size); - chromeos::DBusThreadManager::Get() - ->GetDebugDaemonClient() - ->TestICMPWithOptions( - params->options.ip, config, - base::BindOnce(&DiagnosticsSendPacketFunction::OnTestICMPCompleted, - this)); + chromeos::DebugDaemonClient::Get()->TestICMPWithOptions( + params->options.ip, config, + base::BindOnce(&DiagnosticsSendPacketFunction::OnTestICMPCompleted, + this)); return RespondLater(); }
diff --git a/infra/config/generated/builders/ci/GPU FYI Linux Builder/properties.json b/infra/config/generated/builders/ci/GPU FYI Linux Builder/properties.json index c01b8ac..7a8a1da 100644 --- a/infra/config/generated/builders/ci/GPU FYI Linux Builder/properties.json +++ b/infra/config/generated/builders/ci/GPU FYI Linux Builder/properties.json
@@ -1,4 +1,266 @@ { + "$build/chromium_tests_builder_config": { + "builder_config": { + "builder_db": { + "entries": [ + { + "builder_id": { + "bucket": "ci", + "builder": "GPU FYI Linux Builder", + "project": "chromium" + }, + "builder_spec": { + "builder_group": "chromium.gpu.fyi", + "execution_mode": "COMPILE_AND_TEST", + "legacy_chromium_config": { + "apply_configs": [ + "mb" + ], + "build_config": "Release", + "config": "chromium", + "target_bits": 64 + }, + "legacy_gclient_config": { + "apply_configs": [ + "enable_reclient" + ], + "config": "chromium" + } + } + }, + { + "builder_id": { + "bucket": "ci", + "builder": "Linux FYI Experimental Release (Intel HD 630)", + "project": "chromium" + }, + "builder_spec": { + "builder_group": "chromium.gpu.fyi", + "execution_mode": "TEST", + "legacy_chromium_config": { + "apply_configs": [ + "mb" + ], + "build_config": "Release", + "config": "chromium", + "target_bits": 64 + }, + "legacy_gclient_config": { + "config": "chromium" + }, + "parent": { + "bucket": "ci", + "builder": "GPU FYI Linux Builder", + "project": "chromium" + }, + "run_tests_serially": true + } + }, + { + "builder_id": { + "bucket": "ci", + "builder": "Linux FYI Experimental Release (NVIDIA)", + "project": "chromium" + }, + "builder_spec": { + "builder_group": "chromium.gpu.fyi", + "execution_mode": "TEST", + "legacy_chromium_config": { + "apply_configs": [ + "mb" + ], + "build_config": "Release", + "config": "chromium", + "target_bits": 64 + }, + "legacy_gclient_config": { + "config": "chromium" + }, + "parent": { + "bucket": "ci", + "builder": "GPU FYI Linux Builder", + "project": "chromium" + }, + "run_tests_serially": true + } + }, + { + "builder_id": { + "bucket": "ci", + "builder": "Linux FYI Release (AMD RX 5500 XT)", + "project": "chromium" + }, + "builder_spec": { + "builder_group": "chromium.gpu.fyi", + "execution_mode": "TEST", + "legacy_chromium_config": { + "apply_configs": [ + "mb" + ], + "build_config": "Release", + "config": "chromium", + "target_bits": 64 + }, + "legacy_gclient_config": { + "config": "chromium" + }, + "parent": { + "bucket": "ci", + "builder": "GPU FYI Linux Builder", + "project": "chromium" + }, + "run_tests_serially": true + } + }, + { + "builder_id": { + "bucket": "ci", + "builder": "Linux FYI Release (Intel HD 630)", + "project": "chromium" + }, + "builder_spec": { + "builder_group": "chromium.gpu.fyi", + "execution_mode": "TEST", + "legacy_chromium_config": { + "apply_configs": [ + "mb" + ], + "build_config": "Release", + "config": "chromium", + "target_bits": 64 + }, + "legacy_gclient_config": { + "config": "chromium" + }, + "parent": { + "bucket": "ci", + "builder": "GPU FYI Linux Builder", + "project": "chromium" + }, + "run_tests_serially": true + } + }, + { + "builder_id": { + "bucket": "ci", + "builder": "Linux FYI Release (Intel UHD 630)", + "project": "chromium" + }, + "builder_spec": { + "builder_group": "chromium.gpu.fyi", + "execution_mode": "TEST", + "legacy_chromium_config": { + "apply_configs": [ + "mb" + ], + "build_config": "Release", + "config": "chromium", + "target_bits": 64 + }, + "legacy_gclient_config": { + "config": "chromium" + }, + "parent": { + "bucket": "ci", + "builder": "GPU FYI Linux Builder", + "project": "chromium" + }, + "run_tests_serially": true + } + }, + { + "builder_id": { + "bucket": "ci", + "builder": "Linux FYI Release (NVIDIA)", + "project": "chromium" + }, + "builder_spec": { + "builder_group": "chromium.gpu.fyi", + "execution_mode": "TEST", + "legacy_chromium_config": { + "apply_configs": [ + "mb" + ], + "build_config": "Release", + "config": "chromium", + "target_bits": 64 + }, + "legacy_gclient_config": { + "config": "chromium" + }, + "parent": { + "bucket": "ci", + "builder": "GPU FYI Linux Builder", + "project": "chromium" + }, + "run_tests_serially": true + } + } + ] + }, + "builder_ids": [ + { + "bucket": "ci", + "builder": "GPU FYI Linux Builder", + "project": "chromium" + } + ], + "builder_ids_in_scope_for_testing": [ + { + "bucket": "ci", + "builder": "Linux FYI Experimental Release (Intel HD 630)", + "project": "chromium" + }, + { + "bucket": "ci", + "builder": "Linux FYI Experimental Release (NVIDIA)", + "project": "chromium" + }, + { + "bucket": "ci", + "builder": "Linux FYI Release (AMD RX 5500 XT)", + "project": "chromium" + }, + { + "bucket": "ci", + "builder": "Linux FYI Release (Intel HD 630)", + "project": "chromium" + }, + { + "bucket": "ci", + "builder": "Linux FYI Release (Intel UHD 630)", + "project": "chromium" + }, + { + "bucket": "ci", + "builder": "Linux FYI Release (NVIDIA)", + "project": "chromium" + } + ], + "mirroring_builder_group_and_names": [ + { + "builder": "gpu-fyi-try-linux-amd-rel", + "group": "tryserver.chromium.linux" + }, + { + "builder": "gpu-fyi-try-linux-intel-exp", + "group": "tryserver.chromium.linux" + }, + { + "builder": "gpu-fyi-try-linux-intel-rel", + "group": "tryserver.chromium.linux" + }, + { + "builder": "gpu-fyi-try-linux-nvidia-exp", + "group": "tryserver.chromium.linux" + }, + { + "builder": "gpu-fyi-try-linux-nvidia-rel", + "group": "tryserver.chromium.linux" + } + ] + } + }, "$build/reclient": { "instance": "rbe-chromium-trusted", "jobs": 500,
diff --git "a/infra/config/generated/builders/ci/Linux FYI Experimental Release \050Intel HD 630\051/properties.json" "b/infra/config/generated/builders/ci/Linux FYI Experimental Release \050Intel HD 630\051/properties.json" index ee8f716..ff91035e 100644 --- "a/infra/config/generated/builders/ci/Linux FYI Experimental Release \050Intel HD 630\051/properties.json" +++ "b/infra/config/generated/builders/ci/Linux FYI Experimental Release \050Intel HD 630\051/properties.json"
@@ -1,4 +1,78 @@ { + "$build/chromium_tests_builder_config": { + "builder_config": { + "builder_db": { + "entries": [ + { + "builder_id": { + "bucket": "ci", + "builder": "GPU FYI Linux Builder", + "project": "chromium" + }, + "builder_spec": { + "builder_group": "chromium.gpu.fyi", + "execution_mode": "COMPILE_AND_TEST", + "legacy_chromium_config": { + "apply_configs": [ + "mb" + ], + "build_config": "Release", + "config": "chromium", + "target_bits": 64 + }, + "legacy_gclient_config": { + "apply_configs": [ + "enable_reclient" + ], + "config": "chromium" + } + } + }, + { + "builder_id": { + "bucket": "ci", + "builder": "Linux FYI Experimental Release (Intel HD 630)", + "project": "chromium" + }, + "builder_spec": { + "builder_group": "chromium.gpu.fyi", + "execution_mode": "TEST", + "legacy_chromium_config": { + "apply_configs": [ + "mb" + ], + "build_config": "Release", + "config": "chromium", + "target_bits": 64 + }, + "legacy_gclient_config": { + "config": "chromium" + }, + "parent": { + "bucket": "ci", + "builder": "GPU FYI Linux Builder", + "project": "chromium" + }, + "run_tests_serially": true + } + } + ] + }, + "builder_ids": [ + { + "bucket": "ci", + "builder": "Linux FYI Experimental Release (Intel HD 630)", + "project": "chromium" + } + ], + "mirroring_builder_group_and_names": [ + { + "builder": "gpu-fyi-try-linux-intel-exp", + "group": "tryserver.chromium.linux" + } + ] + } + }, "$recipe_engine/resultdb/test_presentation": { "column_keys": [], "grouping_keys": [
diff --git "a/infra/config/generated/builders/ci/Linux FYI Experimental Release \050NVIDIA\051/properties.json" "b/infra/config/generated/builders/ci/Linux FYI Experimental Release \050NVIDIA\051/properties.json" index ee8f716..5861738f 100644 --- "a/infra/config/generated/builders/ci/Linux FYI Experimental Release \050NVIDIA\051/properties.json" +++ "b/infra/config/generated/builders/ci/Linux FYI Experimental Release \050NVIDIA\051/properties.json"
@@ -1,4 +1,78 @@ { + "$build/chromium_tests_builder_config": { + "builder_config": { + "builder_db": { + "entries": [ + { + "builder_id": { + "bucket": "ci", + "builder": "GPU FYI Linux Builder", + "project": "chromium" + }, + "builder_spec": { + "builder_group": "chromium.gpu.fyi", + "execution_mode": "COMPILE_AND_TEST", + "legacy_chromium_config": { + "apply_configs": [ + "mb" + ], + "build_config": "Release", + "config": "chromium", + "target_bits": 64 + }, + "legacy_gclient_config": { + "apply_configs": [ + "enable_reclient" + ], + "config": "chromium" + } + } + }, + { + "builder_id": { + "bucket": "ci", + "builder": "Linux FYI Experimental Release (NVIDIA)", + "project": "chromium" + }, + "builder_spec": { + "builder_group": "chromium.gpu.fyi", + "execution_mode": "TEST", + "legacy_chromium_config": { + "apply_configs": [ + "mb" + ], + "build_config": "Release", + "config": "chromium", + "target_bits": 64 + }, + "legacy_gclient_config": { + "config": "chromium" + }, + "parent": { + "bucket": "ci", + "builder": "GPU FYI Linux Builder", + "project": "chromium" + }, + "run_tests_serially": true + } + } + ] + }, + "builder_ids": [ + { + "bucket": "ci", + "builder": "Linux FYI Experimental Release (NVIDIA)", + "project": "chromium" + } + ], + "mirroring_builder_group_and_names": [ + { + "builder": "gpu-fyi-try-linux-nvidia-exp", + "group": "tryserver.chromium.linux" + } + ] + } + }, "$recipe_engine/resultdb/test_presentation": { "column_keys": [], "grouping_keys": [
diff --git "a/infra/config/generated/builders/ci/Linux FYI Release \050AMD RX 5500 XT\051/properties.json" "b/infra/config/generated/builders/ci/Linux FYI Release \050AMD RX 5500 XT\051/properties.json" index ee8f716..a4adea5 100644 --- "a/infra/config/generated/builders/ci/Linux FYI Release \050AMD RX 5500 XT\051/properties.json" +++ "b/infra/config/generated/builders/ci/Linux FYI Release \050AMD RX 5500 XT\051/properties.json"
@@ -1,4 +1,78 @@ { + "$build/chromium_tests_builder_config": { + "builder_config": { + "builder_db": { + "entries": [ + { + "builder_id": { + "bucket": "ci", + "builder": "GPU FYI Linux Builder", + "project": "chromium" + }, + "builder_spec": { + "builder_group": "chromium.gpu.fyi", + "execution_mode": "COMPILE_AND_TEST", + "legacy_chromium_config": { + "apply_configs": [ + "mb" + ], + "build_config": "Release", + "config": "chromium", + "target_bits": 64 + }, + "legacy_gclient_config": { + "apply_configs": [ + "enable_reclient" + ], + "config": "chromium" + } + } + }, + { + "builder_id": { + "bucket": "ci", + "builder": "Linux FYI Release (AMD RX 5500 XT)", + "project": "chromium" + }, + "builder_spec": { + "builder_group": "chromium.gpu.fyi", + "execution_mode": "TEST", + "legacy_chromium_config": { + "apply_configs": [ + "mb" + ], + "build_config": "Release", + "config": "chromium", + "target_bits": 64 + }, + "legacy_gclient_config": { + "config": "chromium" + }, + "parent": { + "bucket": "ci", + "builder": "GPU FYI Linux Builder", + "project": "chromium" + }, + "run_tests_serially": true + } + } + ] + }, + "builder_ids": [ + { + "bucket": "ci", + "builder": "Linux FYI Release (AMD RX 5500 XT)", + "project": "chromium" + } + ], + "mirroring_builder_group_and_names": [ + { + "builder": "gpu-fyi-try-linux-amd-rel", + "group": "tryserver.chromium.linux" + } + ] + } + }, "$recipe_engine/resultdb/test_presentation": { "column_keys": [], "grouping_keys": [
diff --git "a/infra/config/generated/builders/ci/Linux FYI Release \050Intel HD 630\051/properties.json" "b/infra/config/generated/builders/ci/Linux FYI Release \050Intel HD 630\051/properties.json" index ee8f716..9f1f6c9 100644 --- "a/infra/config/generated/builders/ci/Linux FYI Release \050Intel HD 630\051/properties.json" +++ "b/infra/config/generated/builders/ci/Linux FYI Release \050Intel HD 630\051/properties.json"
@@ -1,4 +1,78 @@ { + "$build/chromium_tests_builder_config": { + "builder_config": { + "builder_db": { + "entries": [ + { + "builder_id": { + "bucket": "ci", + "builder": "GPU FYI Linux Builder", + "project": "chromium" + }, + "builder_spec": { + "builder_group": "chromium.gpu.fyi", + "execution_mode": "COMPILE_AND_TEST", + "legacy_chromium_config": { + "apply_configs": [ + "mb" + ], + "build_config": "Release", + "config": "chromium", + "target_bits": 64 + }, + "legacy_gclient_config": { + "apply_configs": [ + "enable_reclient" + ], + "config": "chromium" + } + } + }, + { + "builder_id": { + "bucket": "ci", + "builder": "Linux FYI Release (Intel HD 630)", + "project": "chromium" + }, + "builder_spec": { + "builder_group": "chromium.gpu.fyi", + "execution_mode": "TEST", + "legacy_chromium_config": { + "apply_configs": [ + "mb" + ], + "build_config": "Release", + "config": "chromium", + "target_bits": 64 + }, + "legacy_gclient_config": { + "config": "chromium" + }, + "parent": { + "bucket": "ci", + "builder": "GPU FYI Linux Builder", + "project": "chromium" + }, + "run_tests_serially": true + } + } + ] + }, + "builder_ids": [ + { + "bucket": "ci", + "builder": "Linux FYI Release (Intel HD 630)", + "project": "chromium" + } + ], + "mirroring_builder_group_and_names": [ + { + "builder": "gpu-fyi-try-linux-intel-rel", + "group": "tryserver.chromium.linux" + } + ] + } + }, "$recipe_engine/resultdb/test_presentation": { "column_keys": [], "grouping_keys": [
diff --git "a/infra/config/generated/builders/ci/Linux FYI Release \050Intel UHD 630\051/properties.json" "b/infra/config/generated/builders/ci/Linux FYI Release \050Intel UHD 630\051/properties.json" index ee8f716..b2f0919 100644 --- "a/infra/config/generated/builders/ci/Linux FYI Release \050Intel UHD 630\051/properties.json" +++ "b/infra/config/generated/builders/ci/Linux FYI Release \050Intel UHD 630\051/properties.json"
@@ -1,4 +1,72 @@ { + "$build/chromium_tests_builder_config": { + "builder_config": { + "builder_db": { + "entries": [ + { + "builder_id": { + "bucket": "ci", + "builder": "GPU FYI Linux Builder", + "project": "chromium" + }, + "builder_spec": { + "builder_group": "chromium.gpu.fyi", + "execution_mode": "COMPILE_AND_TEST", + "legacy_chromium_config": { + "apply_configs": [ + "mb" + ], + "build_config": "Release", + "config": "chromium", + "target_bits": 64 + }, + "legacy_gclient_config": { + "apply_configs": [ + "enable_reclient" + ], + "config": "chromium" + } + } + }, + { + "builder_id": { + "bucket": "ci", + "builder": "Linux FYI Release (Intel UHD 630)", + "project": "chromium" + }, + "builder_spec": { + "builder_group": "chromium.gpu.fyi", + "execution_mode": "TEST", + "legacy_chromium_config": { + "apply_configs": [ + "mb" + ], + "build_config": "Release", + "config": "chromium", + "target_bits": 64 + }, + "legacy_gclient_config": { + "config": "chromium" + }, + "parent": { + "bucket": "ci", + "builder": "GPU FYI Linux Builder", + "project": "chromium" + }, + "run_tests_serially": true + } + } + ] + }, + "builder_ids": [ + { + "bucket": "ci", + "builder": "Linux FYI Release (Intel UHD 630)", + "project": "chromium" + } + ] + } + }, "$recipe_engine/resultdb/test_presentation": { "column_keys": [], "grouping_keys": [
diff --git "a/infra/config/generated/builders/ci/Linux FYI Release \050NVIDIA\051/properties.json" "b/infra/config/generated/builders/ci/Linux FYI Release \050NVIDIA\051/properties.json" index ee8f716..68b80861 100644 --- "a/infra/config/generated/builders/ci/Linux FYI Release \050NVIDIA\051/properties.json" +++ "b/infra/config/generated/builders/ci/Linux FYI Release \050NVIDIA\051/properties.json"
@@ -1,4 +1,78 @@ { + "$build/chromium_tests_builder_config": { + "builder_config": { + "builder_db": { + "entries": [ + { + "builder_id": { + "bucket": "ci", + "builder": "GPU FYI Linux Builder", + "project": "chromium" + }, + "builder_spec": { + "builder_group": "chromium.gpu.fyi", + "execution_mode": "COMPILE_AND_TEST", + "legacy_chromium_config": { + "apply_configs": [ + "mb" + ], + "build_config": "Release", + "config": "chromium", + "target_bits": 64 + }, + "legacy_gclient_config": { + "apply_configs": [ + "enable_reclient" + ], + "config": "chromium" + } + } + }, + { + "builder_id": { + "bucket": "ci", + "builder": "Linux FYI Release (NVIDIA)", + "project": "chromium" + }, + "builder_spec": { + "builder_group": "chromium.gpu.fyi", + "execution_mode": "TEST", + "legacy_chromium_config": { + "apply_configs": [ + "mb" + ], + "build_config": "Release", + "config": "chromium", + "target_bits": 64 + }, + "legacy_gclient_config": { + "config": "chromium" + }, + "parent": { + "bucket": "ci", + "builder": "GPU FYI Linux Builder", + "project": "chromium" + }, + "run_tests_serially": true + } + } + ] + }, + "builder_ids": [ + { + "bucket": "ci", + "builder": "Linux FYI Release (NVIDIA)", + "project": "chromium" + } + ], + "mirroring_builder_group_and_names": [ + { + "builder": "gpu-fyi-try-linux-nvidia-rel", + "group": "tryserver.chromium.linux" + } + ] + } + }, "$recipe_engine/resultdb/test_presentation": { "column_keys": [], "grouping_keys": [
diff --git a/infra/config/generated/builders/try/gpu-fyi-try-linux-amd-rel/properties.json b/infra/config/generated/builders/try/gpu-fyi-try-linux-amd-rel/properties.json index 19e0479..2f495e8 100644 --- a/infra/config/generated/builders/try/gpu-fyi-try-linux-amd-rel/properties.json +++ b/infra/config/generated/builders/try/gpu-fyi-try-linux-amd-rel/properties.json
@@ -1,4 +1,79 @@ { + "$build/chromium_tests_builder_config": { + "builder_config": { + "builder_db": { + "entries": [ + { + "builder_id": { + "bucket": "ci", + "builder": "GPU FYI Linux Builder", + "project": "chromium" + }, + "builder_spec": { + "builder_group": "chromium.gpu.fyi", + "execution_mode": "COMPILE_AND_TEST", + "legacy_chromium_config": { + "apply_configs": [ + "mb" + ], + "build_config": "Release", + "config": "chromium", + "target_bits": 64 + }, + "legacy_gclient_config": { + "apply_configs": [ + "enable_reclient" + ], + "config": "chromium" + } + } + }, + { + "builder_id": { + "bucket": "ci", + "builder": "Linux FYI Release (AMD RX 5500 XT)", + "project": "chromium" + }, + "builder_spec": { + "builder_group": "chromium.gpu.fyi", + "execution_mode": "TEST", + "legacy_chromium_config": { + "apply_configs": [ + "mb" + ], + "build_config": "Release", + "config": "chromium", + "target_bits": 64 + }, + "legacy_gclient_config": { + "config": "chromium" + }, + "parent": { + "bucket": "ci", + "builder": "GPU FYI Linux Builder", + "project": "chromium" + }, + "run_tests_serially": true + } + } + ] + }, + "builder_ids": [ + { + "bucket": "ci", + "builder": "GPU FYI Linux Builder", + "project": "chromium" + } + ], + "builder_ids_in_scope_for_testing": [ + { + "bucket": "ci", + "builder": "Linux FYI Release (AMD RX 5500 XT)", + "project": "chromium" + } + ] + } + }, "$build/goma": { "enable_ats": true, "rpc_extra_params": "?prod",
diff --git a/infra/config/generated/builders/try/gpu-fyi-try-linux-intel-exp/properties.json b/infra/config/generated/builders/try/gpu-fyi-try-linux-intel-exp/properties.json index 19e0479..9a48edcd 100644 --- a/infra/config/generated/builders/try/gpu-fyi-try-linux-intel-exp/properties.json +++ b/infra/config/generated/builders/try/gpu-fyi-try-linux-intel-exp/properties.json
@@ -1,4 +1,79 @@ { + "$build/chromium_tests_builder_config": { + "builder_config": { + "builder_db": { + "entries": [ + { + "builder_id": { + "bucket": "ci", + "builder": "GPU FYI Linux Builder", + "project": "chromium" + }, + "builder_spec": { + "builder_group": "chromium.gpu.fyi", + "execution_mode": "COMPILE_AND_TEST", + "legacy_chromium_config": { + "apply_configs": [ + "mb" + ], + "build_config": "Release", + "config": "chromium", + "target_bits": 64 + }, + "legacy_gclient_config": { + "apply_configs": [ + "enable_reclient" + ], + "config": "chromium" + } + } + }, + { + "builder_id": { + "bucket": "ci", + "builder": "Linux FYI Experimental Release (Intel HD 630)", + "project": "chromium" + }, + "builder_spec": { + "builder_group": "chromium.gpu.fyi", + "execution_mode": "TEST", + "legacy_chromium_config": { + "apply_configs": [ + "mb" + ], + "build_config": "Release", + "config": "chromium", + "target_bits": 64 + }, + "legacy_gclient_config": { + "config": "chromium" + }, + "parent": { + "bucket": "ci", + "builder": "GPU FYI Linux Builder", + "project": "chromium" + }, + "run_tests_serially": true + } + } + ] + }, + "builder_ids": [ + { + "bucket": "ci", + "builder": "GPU FYI Linux Builder", + "project": "chromium" + } + ], + "builder_ids_in_scope_for_testing": [ + { + "bucket": "ci", + "builder": "Linux FYI Experimental Release (Intel HD 630)", + "project": "chromium" + } + ] + } + }, "$build/goma": { "enable_ats": true, "rpc_extra_params": "?prod",
diff --git a/infra/config/generated/builders/try/gpu-fyi-try-linux-intel-rel/properties.json b/infra/config/generated/builders/try/gpu-fyi-try-linux-intel-rel/properties.json index 19e0479..fde876c 100644 --- a/infra/config/generated/builders/try/gpu-fyi-try-linux-intel-rel/properties.json +++ b/infra/config/generated/builders/try/gpu-fyi-try-linux-intel-rel/properties.json
@@ -1,4 +1,79 @@ { + "$build/chromium_tests_builder_config": { + "builder_config": { + "builder_db": { + "entries": [ + { + "builder_id": { + "bucket": "ci", + "builder": "GPU FYI Linux Builder", + "project": "chromium" + }, + "builder_spec": { + "builder_group": "chromium.gpu.fyi", + "execution_mode": "COMPILE_AND_TEST", + "legacy_chromium_config": { + "apply_configs": [ + "mb" + ], + "build_config": "Release", + "config": "chromium", + "target_bits": 64 + }, + "legacy_gclient_config": { + "apply_configs": [ + "enable_reclient" + ], + "config": "chromium" + } + } + }, + { + "builder_id": { + "bucket": "ci", + "builder": "Linux FYI Release (Intel HD 630)", + "project": "chromium" + }, + "builder_spec": { + "builder_group": "chromium.gpu.fyi", + "execution_mode": "TEST", + "legacy_chromium_config": { + "apply_configs": [ + "mb" + ], + "build_config": "Release", + "config": "chromium", + "target_bits": 64 + }, + "legacy_gclient_config": { + "config": "chromium" + }, + "parent": { + "bucket": "ci", + "builder": "GPU FYI Linux Builder", + "project": "chromium" + }, + "run_tests_serially": true + } + } + ] + }, + "builder_ids": [ + { + "bucket": "ci", + "builder": "GPU FYI Linux Builder", + "project": "chromium" + } + ], + "builder_ids_in_scope_for_testing": [ + { + "bucket": "ci", + "builder": "Linux FYI Release (Intel HD 630)", + "project": "chromium" + } + ] + } + }, "$build/goma": { "enable_ats": true, "rpc_extra_params": "?prod",
diff --git a/infra/config/generated/builders/try/gpu-fyi-try-linux-nvidia-exp/properties.json b/infra/config/generated/builders/try/gpu-fyi-try-linux-nvidia-exp/properties.json index 19e0479..b878943 100644 --- a/infra/config/generated/builders/try/gpu-fyi-try-linux-nvidia-exp/properties.json +++ b/infra/config/generated/builders/try/gpu-fyi-try-linux-nvidia-exp/properties.json
@@ -1,4 +1,79 @@ { + "$build/chromium_tests_builder_config": { + "builder_config": { + "builder_db": { + "entries": [ + { + "builder_id": { + "bucket": "ci", + "builder": "GPU FYI Linux Builder", + "project": "chromium" + }, + "builder_spec": { + "builder_group": "chromium.gpu.fyi", + "execution_mode": "COMPILE_AND_TEST", + "legacy_chromium_config": { + "apply_configs": [ + "mb" + ], + "build_config": "Release", + "config": "chromium", + "target_bits": 64 + }, + "legacy_gclient_config": { + "apply_configs": [ + "enable_reclient" + ], + "config": "chromium" + } + } + }, + { + "builder_id": { + "bucket": "ci", + "builder": "Linux FYI Experimental Release (NVIDIA)", + "project": "chromium" + }, + "builder_spec": { + "builder_group": "chromium.gpu.fyi", + "execution_mode": "TEST", + "legacy_chromium_config": { + "apply_configs": [ + "mb" + ], + "build_config": "Release", + "config": "chromium", + "target_bits": 64 + }, + "legacy_gclient_config": { + "config": "chromium" + }, + "parent": { + "bucket": "ci", + "builder": "GPU FYI Linux Builder", + "project": "chromium" + }, + "run_tests_serially": true + } + } + ] + }, + "builder_ids": [ + { + "bucket": "ci", + "builder": "GPU FYI Linux Builder", + "project": "chromium" + } + ], + "builder_ids_in_scope_for_testing": [ + { + "bucket": "ci", + "builder": "Linux FYI Experimental Release (NVIDIA)", + "project": "chromium" + } + ] + } + }, "$build/goma": { "enable_ats": true, "rpc_extra_params": "?prod",
diff --git a/infra/config/generated/builders/try/gpu-fyi-try-linux-nvidia-rel/properties.json b/infra/config/generated/builders/try/gpu-fyi-try-linux-nvidia-rel/properties.json index 19e0479..92bb490a 100644 --- a/infra/config/generated/builders/try/gpu-fyi-try-linux-nvidia-rel/properties.json +++ b/infra/config/generated/builders/try/gpu-fyi-try-linux-nvidia-rel/properties.json
@@ -1,4 +1,79 @@ { + "$build/chromium_tests_builder_config": { + "builder_config": { + "builder_db": { + "entries": [ + { + "builder_id": { + "bucket": "ci", + "builder": "GPU FYI Linux Builder", + "project": "chromium" + }, + "builder_spec": { + "builder_group": "chromium.gpu.fyi", + "execution_mode": "COMPILE_AND_TEST", + "legacy_chromium_config": { + "apply_configs": [ + "mb" + ], + "build_config": "Release", + "config": "chromium", + "target_bits": 64 + }, + "legacy_gclient_config": { + "apply_configs": [ + "enable_reclient" + ], + "config": "chromium" + } + } + }, + { + "builder_id": { + "bucket": "ci", + "builder": "Linux FYI Release (NVIDIA)", + "project": "chromium" + }, + "builder_spec": { + "builder_group": "chromium.gpu.fyi", + "execution_mode": "TEST", + "legacy_chromium_config": { + "apply_configs": [ + "mb" + ], + "build_config": "Release", + "config": "chromium", + "target_bits": 64 + }, + "legacy_gclient_config": { + "config": "chromium" + }, + "parent": { + "bucket": "ci", + "builder": "GPU FYI Linux Builder", + "project": "chromium" + }, + "run_tests_serially": true + } + } + ] + }, + "builder_ids": [ + { + "bucket": "ci", + "builder": "GPU FYI Linux Builder", + "project": "chromium" + } + ], + "builder_ids_in_scope_for_testing": [ + { + "bucket": "ci", + "builder": "Linux FYI Release (NVIDIA)", + "project": "chromium" + } + ] + } + }, "$build/goma": { "enable_ats": true, "rpc_extra_params": "?prod",
diff --git a/infra/config/generated/luci/cr-buildbucket.cfg b/infra/config/generated/luci/cr-buildbucket.cfg index d43ab26..ce2d9ee 100644 --- a/infra/config/generated/luci/cr-buildbucket.cfg +++ b/infra/config/generated/luci/cr-buildbucket.cfg
@@ -36178,7 +36178,7 @@ ' "chromium"' ' ]' '}' - execution_timeout_secs: 10800 + execution_timeout_secs: 14400 build_numbers: YES service_account: "chromium-ci-builder@chops-service-accounts.iam.gserviceaccount.com" experiments {
diff --git a/infra/config/subprojects/chromium/ci/chromium.chromiumos.star b/infra/config/subprojects/chromium/ci/chromium.chromiumos.star index c11c93e..a18bcb8 100644 --- a/infra/config/subprojects/chromium/ci/chromium.chromiumos.star +++ b/infra/config/subprojects/chromium/ci/chromium.chromiumos.star
@@ -698,6 +698,9 @@ cq_mirrors_console_view = "mirrors", main_console_view = "main", reclient_jobs = rbe_jobs.HIGH_JOBS_FOR_CI, + # This builder build 2 chrome(Ash and Lacros), so it need + # more time. + execution_timeout = 4 * time.hour, ) ci.builder(
diff --git a/infra/config/subprojects/chromium/ci/chromium.gpu.fyi.star b/infra/config/subprojects/chromium/ci/chromium.gpu.fyi.star index a3c9a60..895de85 100644 --- a/infra/config/subprojects/chromium/ci/chromium.gpu.fyi.star +++ b/infra/config/subprojects/chromium/ci/chromium.gpu.fyi.star
@@ -213,6 +213,22 @@ ci.gpu.linux_builder( name = "GPU FYI Linux Builder", + builder_spec = builder_config.builder_spec( + gclient_config = builder_config.gclient_config( + config = "chromium", + apply_configs = [ + "enable_reclient", + ], + ), + chromium_config = builder_config.chromium_config( + config = "chromium", + apply_configs = [ + "mb", + ], + build_config = builder_config.build_config.RELEASE, + target_bits = 64, + ), + ), console_view_entry = consoles.console_view_entry( category = "Linux|Builder", short_name = "rel", @@ -321,6 +337,21 @@ ci.thin_tester( name = "Linux FYI Experimental Release (Intel HD 630)", + builder_spec = builder_config.builder_spec( + execution_mode = builder_config.execution_mode.TEST, + gclient_config = builder_config.gclient_config( + config = "chromium", + ), + chromium_config = builder_config.chromium_config( + config = "chromium", + apply_configs = [ + "mb", + ], + build_config = builder_config.build_config.RELEASE, + target_bits = 64, + ), + run_tests_serially = True, + ), console_view_entry = consoles.console_view_entry( category = "Linux|Intel", short_name = "exp", @@ -331,6 +362,21 @@ ci.thin_tester( name = "Linux FYI Experimental Release (NVIDIA)", + builder_spec = builder_config.builder_spec( + execution_mode = builder_config.execution_mode.TEST, + gclient_config = builder_config.gclient_config( + config = "chromium", + ), + chromium_config = builder_config.chromium_config( + config = "chromium", + apply_configs = [ + "mb", + ], + build_config = builder_config.build_config.RELEASE, + target_bits = 64, + ), + run_tests_serially = True, + ), # Uncomment this entry when this experimental tester is actually in use. # console_view_entry = consoles.console_view_entry( # category = "Linux|Nvidia", @@ -342,6 +388,21 @@ ci.thin_tester( name = "Linux FYI Release (NVIDIA)", + builder_spec = builder_config.builder_spec( + execution_mode = builder_config.execution_mode.TEST, + gclient_config = builder_config.gclient_config( + config = "chromium", + ), + chromium_config = builder_config.chromium_config( + config = "chromium", + apply_configs = [ + "mb", + ], + build_config = builder_config.build_config.RELEASE, + target_bits = 64, + ), + run_tests_serially = True, + ), console_view_entry = consoles.console_view_entry( category = "Linux|Nvidia", short_name = "rel", @@ -351,6 +412,21 @@ ci.thin_tester( name = "Linux FYI Release (AMD RX 5500 XT)", + builder_spec = builder_config.builder_spec( + execution_mode = builder_config.execution_mode.TEST, + gclient_config = builder_config.gclient_config( + config = "chromium", + ), + chromium_config = builder_config.chromium_config( + config = "chromium", + apply_configs = [ + "mb", + ], + build_config = builder_config.build_config.RELEASE, + target_bits = 64, + ), + run_tests_serially = True, + ), console_view_entry = consoles.console_view_entry( category = "Linux|AMD", short_name = "rel", @@ -360,6 +436,21 @@ ci.thin_tester( name = "Linux FYI Release (Intel HD 630)", + builder_spec = builder_config.builder_spec( + execution_mode = builder_config.execution_mode.TEST, + gclient_config = builder_config.gclient_config( + config = "chromium", + ), + chromium_config = builder_config.chromium_config( + config = "chromium", + apply_configs = [ + "mb", + ], + build_config = builder_config.build_config.RELEASE, + target_bits = 64, + ), + run_tests_serially = True, + ), console_view_entry = consoles.console_view_entry( category = "Linux|Intel", short_name = "rel", @@ -369,6 +460,21 @@ ci.thin_tester( name = "Linux FYI Release (Intel UHD 630)", + builder_spec = builder_config.builder_spec( + execution_mode = builder_config.execution_mode.TEST, + gclient_config = builder_config.gclient_config( + config = "chromium", + ), + chromium_config = builder_config.chromium_config( + config = "chromium", + apply_configs = [ + "mb", + ], + build_config = builder_config.build_config.RELEASE, + target_bits = 64, + ), + run_tests_serially = True, + ), console_view_entry = consoles.console_view_entry( category = "Linux|Intel", short_name = "uhd",
diff --git a/infra/config/subprojects/chromium/gpu.try.star b/infra/config/subprojects/chromium/gpu.try.star index cf72253..c25d203 100644 --- a/infra/config/subprojects/chromium/gpu.try.star +++ b/infra/config/subprojects/chromium/gpu.try.star
@@ -147,16 +147,28 @@ gpu_linux_builder( name = "gpu-fyi-try-linux-amd-rel", + mirrors = [ + "ci/GPU FYI Linux Builder", + "ci/Linux FYI Release (AMD RX 5500 XT)", + ], pool = "luci.chromium.gpu.linux.amd.try", ) gpu_linux_builder( name = "gpu-fyi-try-linux-intel-exp", + mirrors = [ + "ci/GPU FYI Linux Builder", + "ci/Linux FYI Experimental Release (Intel HD 630)", + ], pool = "luci.chromium.gpu.linux.intel.try", ) gpu_linux_builder( name = "gpu-fyi-try-linux-intel-rel", + mirrors = [ + "ci/GPU FYI Linux Builder", + "ci/Linux FYI Release (Intel HD 630)", + ], pool = "luci.chromium.gpu.linux.intel.try", ) @@ -167,11 +179,19 @@ gpu_linux_builder( name = "gpu-fyi-try-linux-nvidia-exp", + mirrors = [ + "ci/GPU FYI Linux Builder", + "ci/Linux FYI Experimental Release (NVIDIA)", + ], pool = "luci.chromium.gpu.linux.nvidia.try", ) gpu_linux_builder( name = "gpu-fyi-try-linux-nvidia-rel", + mirrors = [ + "ci/GPU FYI Linux Builder", + "ci/Linux FYI Release (NVIDIA)", + ], pool = "luci.chromium.gpu.linux.nvidia.try", )
diff --git a/ios/chrome/app/strings/ios_chromium_strings.grd b/ios/chrome/app/strings/ios_chromium_strings.grd index 80c6a19..7cc8300 100644 --- a/ios/chrome/app/strings/ios_chromium_strings.grd +++ b/ios/chrome/app/strings/ios_chromium_strings.grd
@@ -216,8 +216,8 @@ <message name="IDS_IOS_CONSISTENCY_PROMO_DEFAULT_ACCOUNT_TITLE" desc="Dialog title to invite the user to sign-in on the web, related to IDS_IOS_CONSISTENCY_PROMO_DEFAULT_ACCOUNT_LABEL."> Sign In to Chromium </message> - <message name="IDS_IOS_CONSISTENCY_PROMO_DEFAULT_ACCOUNT_RESTRICTIONS_LABEL" desc="Dialog label to invite the user to sign-in on the web when account restrictions are enabled, related to IDS_IOS_CONSISTENCY_PROMO_DEFAULT_ACCOUNT_TITLE."> - Sign in to this site and Chromium. You can turn on sync later. + <message name="IDS_IOS_CONSISTENCY_PROMO_DEFAULT_ACCOUNT_RESTRICTIONS_LABEL" desc="Dialog label to invite the user to sign-in on the web when account restrictions are enabled, related to IDS_IOS_CONSISTENCY_PROMO_DEFAULT_ACCOUNT_TITLE. [iOS only]"> + Sign in to this site and Chromium. </message> <message name="IDS_IOS_DEFAULT_BROWSER_TITLE_CTA_EXPERIMENT_SWITCH" desc="Title of the default browser promotion modal. [iOS only]"> Switch to Chromium
diff --git a/ios/chrome/app/strings/ios_chromium_strings_grd/IDS_IOS_CONSISTENCY_PROMO_DEFAULT_ACCOUNT_RESTRICTIONS_LABEL.png.sha1 b/ios/chrome/app/strings/ios_chromium_strings_grd/IDS_IOS_CONSISTENCY_PROMO_DEFAULT_ACCOUNT_RESTRICTIONS_LABEL.png.sha1 index 1ce1dd3..c20bf95 100644 --- a/ios/chrome/app/strings/ios_chromium_strings_grd/IDS_IOS_CONSISTENCY_PROMO_DEFAULT_ACCOUNT_RESTRICTIONS_LABEL.png.sha1 +++ b/ios/chrome/app/strings/ios_chromium_strings_grd/IDS_IOS_CONSISTENCY_PROMO_DEFAULT_ACCOUNT_RESTRICTIONS_LABEL.png.sha1
@@ -1 +1 @@ -222f5e9db2f3e4e04a7311270087026221e78045 \ No newline at end of file +8d9b547ca5fd5436b2786894574696b96ca35c87 \ No newline at end of file
diff --git a/ios/chrome/app/strings/ios_google_chrome_strings.grd b/ios/chrome/app/strings/ios_google_chrome_strings.grd index a3cf4270..bc04cce 100644 --- a/ios/chrome/app/strings/ios_google_chrome_strings.grd +++ b/ios/chrome/app/strings/ios_google_chrome_strings.grd
@@ -216,8 +216,8 @@ <message name="IDS_IOS_CONSISTENCY_PROMO_DEFAULT_ACCOUNT_TITLE" desc="Dialog title to invite the user to sign-in on the web, related to IDS_IOS_CONSISTENCY_PROMO_DEFAULT_ACCOUNT_LABEL."> Sign In to Chrome </message> - <message name="IDS_IOS_CONSISTENCY_PROMO_DEFAULT_ACCOUNT_RESTRICTIONS_LABEL" desc="Dialog label to invite the user to sign-in on the web when account restrictions are enabled, related to IDS_IOS_CONSISTENCY_PROMO_DEFAULT_ACCOUNT_TITLE."> - Sign in to this site and Chrome. You can turn on sync later. + <message name="IDS_IOS_CONSISTENCY_PROMO_DEFAULT_ACCOUNT_RESTRICTIONS_LABEL" desc="Dialog label to invite the user to sign-in on the web when account restrictions are enabled, related to IDS_IOS_CONSISTENCY_PROMO_DEFAULT_ACCOUNT_TITLE. [iOS only]"> + Sign in to this site and Chrome. </message> <message name="IDS_IOS_DEFAULT_BROWSER_TITLE_CTA_EXPERIMENT_SWITCH" desc="Title of the default browser promotion modal. [iOS only]"> Switch to Chrome
diff --git a/ios/chrome/app/strings/ios_google_chrome_strings_grd/IDS_IOS_CONSISTENCY_PROMO_DEFAULT_ACCOUNT_RESTRICTIONS_LABEL.png.sha1 b/ios/chrome/app/strings/ios_google_chrome_strings_grd/IDS_IOS_CONSISTENCY_PROMO_DEFAULT_ACCOUNT_RESTRICTIONS_LABEL.png.sha1 index 1ce1dd3..c20bf95 100644 --- a/ios/chrome/app/strings/ios_google_chrome_strings_grd/IDS_IOS_CONSISTENCY_PROMO_DEFAULT_ACCOUNT_RESTRICTIONS_LABEL.png.sha1 +++ b/ios/chrome/app/strings/ios_google_chrome_strings_grd/IDS_IOS_CONSISTENCY_PROMO_DEFAULT_ACCOUNT_RESTRICTIONS_LABEL.png.sha1
@@ -1 +1 @@ -222f5e9db2f3e4e04a7311270087026221e78045 \ No newline at end of file +8d9b547ca5fd5436b2786894574696b96ca35c87 \ No newline at end of file
diff --git a/ios/chrome/app/strings/resources/ios_chromium_strings_te.xtb b/ios/chrome/app/strings/resources/ios_chromium_strings_te.xtb index 980fb4ba..1434fbbc 100644 --- a/ios/chrome/app/strings/resources/ios_chromium_strings_te.xtb +++ b/ios/chrome/app/strings/resources/ios_chromium_strings_te.xtb
@@ -113,7 +113,7 @@ <translation id="7931842119211730154">మీరు Chromiumను మూసివేసినప్పుడు అజ్ఞాత ట్యాబ్లను లాక్ చేయండి</translation> <translation id="7980860476903281594">మీరు అనుమతించే సైట్లతో Chromium మీ లొకేషన్ను షేర్ చేస్తుంది.</translation> <translation id="8013573822802650211">మీరు Chromiumను ఎక్కడ ఉపయోగించినా, అక్కడినుండి మీ ట్యాబ్లను చూసేందుకు, మీ పరికరాలన్నింటిలో సైన్ ఇన్ చేయండి</translation> -<translation id="8073677936375100957">ఈ పరికరం నుండి మీ Chromium డేటాని తీసివేయాలా?</translation> +<translation id="8073677936375100957">ఈ పరికరం నుండి మీ Chromium డేటాను తీసివేయాలా?</translation> <translation id="8175055321229419309">చిట్కా: <ph name="BEGIN_LINK" />Chromiumను మీ డాక్కు తరలించండి<ph name="END_LINK" /></translation> <translation id="8240981428553046115">Chromium అప్డేట్లు ఏమైనా ఉన్నాయో లేదో చెక్ చేయలేకపోయింది. తర్వాత మళ్లీ ట్రై చేయండి.</translation> <translation id="8308172444429103994">Chromium చిట్కా. కీబోర్డ్ ఎగువున సేవ్ చేసిన మీ పాస్వర్డ్లను ఎంచుకోవడం ద్వారా వేగంగా సైన్ ఇన్ చేయండి.</translation>
diff --git a/ios/chrome/app/strings/resources/ios_google_chrome_strings_te.xtb b/ios/chrome/app/strings/resources/ios_google_chrome_strings_te.xtb index 61df8fd5..21027ee8 100644 --- a/ios/chrome/app/strings/resources/ios_google_chrome_strings_te.xtb +++ b/ios/chrome/app/strings/resources/ios_google_chrome_strings_te.xtb
@@ -86,7 +86,7 @@ <translation id="6600954340915313787">Chromeకి కాపీ చేయబడింది</translation> <translation id="6634107063912726160">మీరు సైన్ అవుట్ చేసినప్పుడు, మీ Google ఖాతాకు ఎలాంటి కొత్త డేటాను Chrome సింక్ చేయదు. ఇంతకుముందు సింక్ చేయబడిన డేటా ఖాతాలో ఉండిపోతుంది.</translation> <translation id="6648150602980899529">మీరు <ph name="DOMAIN" /> నిర్వహణలో ఉన్న ఖాతా నుండి సైన్ ఇన్ చేస్తున్నారు. దీని నిర్వాహకుడికి మీ Chrome డేటాపై నియంత్రణను అందిస్తున్నారు. మీ డేటా శాశ్వతంగా ఈ ఖాతాకు అనుబంధించబడుతుంది. Chrome నుండి సైన్ అవుట్ చేయడం వల్ల ఈ పరికరం నుండి మీ డేటా తొలగించబడుతుంది. కానీ ఇది మీ Google ఖాతాలో అలాగే నిల్వ చేయబడి ఉంటుంది.</translation> -<translation id="6676840375528380067">ఈ పరికరం నుండి మీ Chrome డేటాని తీసివేయాలా?</translation> +<translation id="6676840375528380067">ఈ పరికరం నుండి మీ Chrome డేటాను తీసివేయాలా?</translation> <translation id="6709398533399187136">డేటా ఉల్లంఘన జరిగిన ఒక సంఘటనలో మీ పాస్వర్డ్ బహిర్గతమైంది. దానిని ఇప్పుడే మార్చమని Google పాస్వర్డ్ మేనేజర్ సిఫార్సు చేస్తోంది.</translation> <translation id="6822673484890854830">Chrome అన్ని పాస్వర్డ్లను చెక్ చేయలేకపోయింది. తర్వాత మళ్లీ ట్రై చేయండి.</translation> <translation id="6964931465519938134">మెసేజ్లు, డాక్యుమెంట్లు, అలాగే ఇతర యాప్లలో లింక్లపై ట్యాప్ చేయడం ద్వారా, మీరు ఎప్పుడైనా Chromeను ఉపయోగించవచ్చు.</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_af.xtb b/ios/chrome/app/strings/resources/ios_strings_af.xtb index a793adb..f924efc5 100644 --- a/ios/chrome/app/strings/resources/ios_strings_af.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_af.xtb
@@ -775,6 +775,7 @@ <translation id="7400418766976504921">URL</translation> <translation id="7409985198648820906"><ph name="UNREAD_COUNT" /> ongeleesde artikels.</translation> <translation id="7412027924265291969">Gaan voort</translation> +<translation id="7419565702166471774">Gebruik altyd veilige verbindings</translation> <translation id="7425346204213733349">Veranderinge aan jou boekmerke, geskiedenis, wagwoorde en ander instellings sal nie meer met jou Google-rekening gesinkroniseer word nie. Jou bestaande data sal egter in jou Google-rekening geberg bly.</translation> <translation id="7431991332293347422">Beheer hoe jou blaaigeskiedenis gebruik word om Search en meer te personaliseer</translation> <translation id="7435356471928173109">Afgeskakel deur jou administrateur</translation> @@ -814,7 +815,6 @@ <translation id="7781069478569868053">Nuwe oortjie-bladsy</translation> <translation id="7781829728241885113">Gister</translation> <translation id="778855399387580014">Begin 'n soektog in 'n nuwe Chrome-oortjie.</translation> -<translation id="7790892308048519147">Probeer om veilige verbindings te gebruik</translation> <translation id="7791543448312431591">Voeg by</translation> <translation id="7807060072011926525">Verskaf deur Google</translation> <translation id="7839985698273989086">Vanlyn bladsy</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_am.xtb b/ios/chrome/app/strings/resources/ios_strings_am.xtb index 128277b0..932e2f1 100644 --- a/ios/chrome/app/strings/resources/ios_strings_am.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_am.xtb
@@ -775,6 +775,7 @@ <translation id="7400418766976504921">URL</translation> <translation id="7409985198648820906"><ph name="UNREAD_COUNT" /> ያልተነበቡ ጽሑፎች።</translation> <translation id="7412027924265291969">ቀጥል</translation> +<translation id="7419565702166471774">ሁልጊዜ ደህንነታቸው የተጠበቁ ግንኙነቶችን ይጠቀሙ</translation> <translation id="7425346204213733349">በእርስዎ ዕልባቶች፣ ታሪክ፣ የይለፍ ቃላት እና ሌሎች ቅንብሮች ላይ የተደረጉ ለውጦች ከአሁን በኋላ ከእርስዎ የGoogle መለያ ጋር አይሠምሩም። ሆኖም ግን ነባር ውሂብዎ በእርስዎ የGoogle መለያ ላይ እንደተከማቸ ይቆያል።</translation> <translation id="7431991332293347422">ፍለጋን እና ተጨማሪ ነገሮችን ግላዊነት ለማላበስ የእርስዎ የአሰሳ ታሪክ እንዴት ጥቅም ላይ እንደሚውል ይቆጣጠሩ</translation> <translation id="7435356471928173109">በአስተዳዳሪዎ ጠፍቷል</translation> @@ -814,7 +815,6 @@ <translation id="7781069478569868053">የአዲስ ትር ገጽ</translation> <translation id="7781829728241885113">ትናንት</translation> <translation id="778855399387580014">በአዲስ የChrome ትር ውስጥ ፍለጋ ጀምር።</translation> -<translation id="7790892308048519147">ደህንነቱ የተጠበቀ ግንኙነቶችን ለመጠቀም ይሞክሩ</translation> <translation id="7791543448312431591">ያክሉ</translation> <translation id="7807060072011926525">በGoogle የቀረበ</translation> <translation id="7839985698273989086">ከመስመር ውጭ ገጽ</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_ar.xtb b/ios/chrome/app/strings/resources/ios_strings_ar.xtb index 7143039..f311a5c 100644 --- a/ios/chrome/app/strings/resources/ios_strings_ar.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_ar.xtb
@@ -777,6 +777,7 @@ <translation id="7400418766976504921">عنوان URL</translation> <translation id="7409985198648820906"><ph name="UNREAD_COUNT" /> مقالة غير مقروءة</translation> <translation id="7412027924265291969">متابعة</translation> +<translation id="7419565702166471774">استخدام الاتصالات الآمنة دائمًا</translation> <translation id="7425346204213733349">لن تتم بعد الآن مزامنة التغييرات التي تطرأ على الإشارات المرجعية والسجلّ وكلمات المرور وغيرها من الإعدادات مع حسابك على Google، ولكن ستظل بياناتك الحالية مخزّنة في حسابك على Google.</translation> <translation id="7431991332293347422">التحكُّم في كيفية استخدامنا لسِجل التصفُّح لتخصيص البحث والمزيد</translation> <translation id="7435356471928173109">أوقَف المشرف وضع "التصفُّح الآمن".</translation> @@ -816,7 +817,6 @@ <translation id="7781069478569868053">صفحة "علامة تبويب جديدة"</translation> <translation id="7781829728241885113">أمس</translation> <translation id="778855399387580014">يمكنك بدء البحث في علامة تبويب Chrome جديدة.</translation> -<translation id="7790892308048519147">تجربة استخدام اتصالات آمنة</translation> <translation id="7791543448312431591">إضافة</translation> <translation id="7807060072011926525">خلاصة مقدَّمة من Google</translation> <translation id="7839985698273989086">صفحة بلا إنترنت</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_as.xtb b/ios/chrome/app/strings/resources/ios_strings_as.xtb index f411a47..e49d5e0 100644 --- a/ios/chrome/app/strings/resources/ios_strings_as.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_as.xtb
@@ -775,6 +775,7 @@ <translation id="7400418766976504921">URL</translation> <translation id="7409985198648820906"><ph name="UNREAD_COUNT" />টা নপঢ়া প্ৰবন্ধ।</translation> <translation id="7412027924265291969">অব্যাহত ৰাখক</translation> +<translation id="7419565702166471774">সদায় সুৰক্ষিত সংযোগ ব্যৱহাৰ কৰক</translation> <translation id="7425346204213733349">আপোনাৰ বুকমাৰ্ক, ইতিহাস, পাছৱৰ্ড আৰু অন্য ছেটিংসমূহত কৰা সলনি কার্যসমূহ আপোনাৰ Google একাউণ্টত আৰু ছিংক কৰা নহয়। তথাপিও, আপোনাৰ পূর্বে থকা ডেটাসমূহ নিজৰ Google একাউণ্টত সঞ্চিত হৈ থাকিব।</translation> <translation id="7431991332293347422">আপোনাক Search আৰু অন্য সেৱাসমূহত ব্যক্তিগতকৰণ কৰা অভিজ্ঞতা প্ৰদান কৰিবলৈ কেনেকৈ আপোনাৰ ব্ৰাউজিংৰ ইতিহাস ব্যৱহাৰ কৰা হয় সেয়া নিয়ন্ত্ৰণ কৰক</translation> <translation id="7435356471928173109">আপোনাৰ প্ৰশাসকে অফ কৰিছে</translation> @@ -814,7 +815,6 @@ <translation id="7781069478569868053">নতুন টেব পৃষ্ঠা</translation> <translation id="7781829728241885113">কালি</translation> <translation id="778855399387580014">Chromeৰ নতুন টেবত সন্ধান আৰম্ভ কৰক।</translation> -<translation id="7790892308048519147">সুৰক্ষিত সংযোগ ব্যৱহাৰ কৰাৰ চেষ্টা কৰক</translation> <translation id="7791543448312431591">যোগ কৰক</translation> <translation id="7807060072011926525">Googleএ প্ৰদান কৰিছে</translation> <translation id="7839985698273989086">অফলাইন পৃষ্ঠা</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_az.xtb b/ios/chrome/app/strings/resources/ios_strings_az.xtb index dfdda90f..b8f64ff6 100644 --- a/ios/chrome/app/strings/resources/ios_strings_az.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_az.xtb
@@ -329,6 +329,7 @@ <translation id="3775743491439407556">Sinxronizasiya İşləmir</translation> <translation id="3779810277399252432">İnternet bağlantısı yoxdur.</translation> <translation id="3783017676699494206">Şəkli yadda saxlayın</translation> +<translation id="3789294999358192700">Aşağıdakı addımları izləyin:</translation> <translation id="3789841737615482174">Quraşdırın</translation> <translation id="380329542618494757">Ad</translation> <translation id="3803696231112616155">Bu saytı tərcümə etməyi təklif edin</translation> @@ -775,6 +776,7 @@ <translation id="7400418766976504921">URL</translation> <translation id="7409985198648820906"><ph name="UNREAD_COUNT" /> oxunmamış məqalə.</translation> <translation id="7412027924265291969">Davam edin</translation> +<translation id="7419565702166471774">Həmişə güvənli bağlantılardan istifadə edin</translation> <translation id="7425346204213733349">Əlfəcin, tarixçə, parol və digər ayarlarınızdakı dəyişikliklər artıq Google Hesabınıza sinxronizasiya olunmayacaq. Buna baxmayaraq, mövcud datanız Google hesabınızın yaddaşında qalacaq.</translation> <translation id="7431991332293347422">Axtarış tarixçəsinin Axtarış və sairəni necə fərdiləşdirdiyinə nəzarət edin</translation> <translation id="7435356471928173109">Administratorunuz tərəfindən deaktiv edilib</translation> @@ -814,7 +816,6 @@ <translation id="7781069478569868053">Yeni Panel Səhifəsi</translation> <translation id="7781829728241885113">Dünən</translation> <translation id="778855399387580014">Yeni Chrome tabında axtarışa başlayın.</translation> -<translation id="7790892308048519147">Təhlükəsiz bağlantılardan istifadə etməyə çalışın</translation> <translation id="7791543448312431591">Əlavə etmək</translation> <translation id="7807060072011926525">Google tərəfindən təmin edilib</translation> <translation id="7839985698273989086">Oflayn Səhifə</translation> @@ -942,6 +943,7 @@ <translation id="8870413625673593573">Son Qapadılan</translation> <translation id="8876882697946675716">Cihazlarınızı Sinxronlaşdırın</translation> <translation id="8881801611828450202">Bu Şəkil üçün <ph name="SEARCH_ENGINE" /> Axtarışı Edin</translation> +<translation id="8891935667620843985">Defolt Brauzer Tətbiqiniz etməklə, keçidləri Chrome'da avtomatik aça bilərsiniz.</translation> <translation id="8898822736010347272">Yeni təhlükələri aşkarlamaq və vebdə hər kəsi qorumağa yardım etmək üçün daxil olduğunuz bəzi səhifələrin URL'lərini, məhdud sistem məlumatlarını və bəzi səhifə məzmunlarını Google'a göndərin.</translation> <translation id="8909135823018751308">Paylaşın...</translation> <translation id="8917490105272468696">Bəli, razıyam</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_be.xtb b/ios/chrome/app/strings/resources/ios_strings_be.xtb index 0b6fb76..0537ff9 100644 --- a/ios/chrome/app/strings/resources/ios_strings_be.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_be.xtb
@@ -775,6 +775,7 @@ <translation id="7400418766976504921">URL-адрас</translation> <translation id="7409985198648820906">Непрачытаных артыкулаў: <ph name="UNREAD_COUNT" />.</translation> <translation id="7412027924265291969">Працягнуць</translation> +<translation id="7419565702166471774">Заўсёды выкарыстоўваць бяспечнае падключэнне</translation> <translation id="7425346204213733349">Змены ў закладках, гісторыі, паролях і іншых наладах больш не будуць сінхранізавацца з Уліковым запісам Google. Але існуючыя даныя застануцца ва Уліковым запісе Google.</translation> <translation id="7431991332293347422">Кіраванне тым, як ваша гісторыя прагляду сайтаў выкарыстоўваецца для персаналізацыі пошуку і ў іншых мэтах</translation> <translation id="7435356471928173109">Выключаны адміністратарам</translation> @@ -814,7 +815,6 @@ <translation id="7781069478569868053">Старонка новай укладкі</translation> <translation id="7781829728241885113">Учора</translation> <translation id="778855399387580014">Пачаць пошук у новай укладцы Chrome.</translation> -<translation id="7790892308048519147">Намагацца карыстацца бяспечнымі тыпамі падключэння</translation> <translation id="7791543448312431591">Дадаць</translation> <translation id="7807060072011926525">Ад кампаніі Google</translation> <translation id="7839985698273989086">Пазасеткавая старонка</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_bg.xtb b/ios/chrome/app/strings/resources/ios_strings_bg.xtb index b7f85f8d..e8e8f23 100644 --- a/ios/chrome/app/strings/resources/ios_strings_bg.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_bg.xtb
@@ -775,6 +775,7 @@ <translation id="7400418766976504921">URL адрес</translation> <translation id="7409985198648820906"><ph name="UNREAD_COUNT" /> непрочетени статии.</translation> <translation id="7412027924265291969">Напред</translation> +<translation id="7419565702166471774">Винаги да се използват сигурни връзки</translation> <translation id="7425346204213733349">Промените в отметките, историята, паролите и другите ви настройки вече няма да се синхронизират с профила ви в Google. Съществуващите ви данни обаче ще продължат да се съхраняват в него.</translation> <translation id="7431991332293347422">Контролирайте начина, по който историята ви на сърфиране се използва за персонализиране на търсенето и др.</translation> <translation id="7435356471928173109">Изключено от администратора ви</translation> @@ -814,7 +815,6 @@ <translation id="7781069478569868053">Нов раздел в браузъра</translation> <translation id="7781829728241885113">Вчера</translation> <translation id="778855399387580014">Започнете търсене в нов раздел в Chrome.</translation> -<translation id="7790892308048519147">Опит за използване на защитени връзки</translation> <translation id="7791543448312431591">Добавяне</translation> <translation id="7807060072011926525">Предоставено от Google</translation> <translation id="7839985698273989086">Офлайн страница</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_bn.xtb b/ios/chrome/app/strings/resources/ios_strings_bn.xtb index a82cfaa6..b842d4ce 100644 --- a/ios/chrome/app/strings/resources/ios_strings_bn.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_bn.xtb
@@ -329,6 +329,7 @@ <translation id="3775743491439407556">সিঙ্ক কাজ করছে না</translation> <translation id="3779810277399252432">কোনও ইন্টারনেট সংযোগ নেই৷</translation> <translation id="3783017676699494206">ছবি সেভ করুন</translation> +<translation id="3789294999358192700">নিচে দেওয়া ধাপগুলি অনুসরণ করুন:</translation> <translation id="3789841737615482174">ইনস্টল করুন</translation> <translation id="380329542618494757">নাম</translation> <translation id="3803696231112616155">এই সাইট অনুবাদ করার প্রস্তাব দিন</translation> @@ -776,6 +777,7 @@ <translation id="7400418766976504921">URL</translation> <translation id="7409985198648820906">পড়া হয়নি এমন <ph name="UNREAD_COUNT" />টি নিবন্ধ।</translation> <translation id="7412027924265291969">চালিয়ে যান</translation> +<translation id="7419565702166471774">সবসময় সুরক্ষিত কানেকশন ব্যবহার করুন</translation> <translation id="7425346204213733349">আপনার বুকমার্ক, ইতিহাস, পাসওয়ার্ড এবং অন্যান্য সেটিংসে করা পরিবর্তন আর আপনার Google অ্যাকাউন্টের সাথে সিঙ্ক করা হবে না। অবশ্য, আপনার বিদ্যমান ডেটা আপনার Google অ্যাকাউন্টে সঞ্চিত থাকবে।</translation> <translation id="7431991332293347422">সার্চ এবং আরও অনেক কিছু নিজের মত করে সাজিয়ে নেওয়ার জন্য আপনার ব্রাউজিং ইতিহাস কীভাবে ব্যবহার হবে তা নিয়ন্ত্রণ করুন</translation> <translation id="7435356471928173109">আপনার অ্যাডমিনিস্ট্রেটর বন্ধ করে দিয়েছে</translation> @@ -815,7 +817,6 @@ <translation id="7781069478569868053">নতুন ট্যাব পৃষ্ঠা</translation> <translation id="7781829728241885113">গতকাল</translation> <translation id="778855399387580014">নতুন Chrome ট্যাবে সার্চ করা শুরু করুন।</translation> -<translation id="7790892308048519147">নিরাপদ কানেকশন ব্যবহার করার চেষ্টা করুন</translation> <translation id="7791543448312431591">জুড়ুন</translation> <translation id="7807060072011926525">Google-এর প্রদান করা ফিড</translation> <translation id="7839985698273989086">অফলাইন পৃষ্ঠা</translation> @@ -943,6 +944,7 @@ <translation id="8870413625673593573">সম্প্রতি বন্ধ হয়েছে</translation> <translation id="8876882697946675716">আপনার ডিভাইস সিঙ্ক করে রাখুন</translation> <translation id="8881801611828450202">এই ইমেজটির জন্য <ph name="SEARCH_ENGINE" />-এ খুঁজুন</translation> +<translation id="8891935667620843985">Chrome-কে আপনার ডিফল্ট ব্রাউজার অ্যাপ হিসেবে সেট করে এতে অটোমেটিক লিঙ্ক খুলতে পারবেন।</translation> <translation id="8898822736010347272">আপনার দেখা কিছু পৃষ্ঠার ইউআরএল, সীমিত সিস্টেম সম্পর্কিত তথ্য এবং কিছু পৃষ্ঠার কন্টেন্ট Google-এর কাছে পাঠান যাতে নতুন ঝুঁকি চিহ্নিত করে ওয়েব ব্যবহারকারীর প্রত্যেককে সুরক্ষিত রাখা যায়।</translation> <translation id="8909135823018751308">শেয়ার করুন...</translation> <translation id="8917490105272468696">হ্যাঁ, আমি রাজি</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_bs.xtb b/ios/chrome/app/strings/resources/ios_strings_bs.xtb index 41be9b27..b4ed8a1e 100644 --- a/ios/chrome/app/strings/resources/ios_strings_bs.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_bs.xtb
@@ -329,6 +329,7 @@ <translation id="3775743491439407556">Sinhronizacija ne funkcionira</translation> <translation id="3779810277399252432">Nema internetske veze.</translation> <translation id="3783017676699494206">Sačuvaj sliku</translation> +<translation id="3789294999358192700">Slijedite upute u nastavku:</translation> <translation id="3789841737615482174">Instaliraj</translation> <translation id="380329542618494757">Ime</translation> <translation id="3803696231112616155">Ponudi prijevod ove web lokacije</translation> @@ -775,6 +776,7 @@ <translation id="7400418766976504921">URL</translation> <translation id="7409985198648820906">Broj nepročitanih članaka: <ph name="UNREAD_COUNT" />.</translation> <translation id="7412027924265291969">Nastavi</translation> +<translation id="7419565702166471774">Uvijek koristite sigurne veze</translation> <translation id="7425346204213733349">Promjene vaših oznaka, historije, lozinki i drugih postavki neće se više sinhronizirati s vašim Google računom. Međutim, vaši postojeći podaci će ostati pohranjeni na vašem Google računu.</translation> <translation id="7431991332293347422">Kontrolirajte kako se koristi vaša historija pregledanja za personalizaciju Pretraživanja i još mnogo toga</translation> <translation id="7435356471928173109">Funkciju je isključio vaš administrator</translation> @@ -814,7 +816,6 @@ <translation id="7781069478569868053">Stranica na novoj kartici</translation> <translation id="7781829728241885113">Jučer</translation> <translation id="778855399387580014">Započni pretraživanje na novoj Chrome kartici.</translation> -<translation id="7790892308048519147">Pokušajte koristiti sigurne veze</translation> <translation id="7791543448312431591">Dodaj</translation> <translation id="7807060072011926525">Pruža Google</translation> <translation id="7839985698273989086">Offline stranica</translation> @@ -942,6 +943,7 @@ <translation id="8870413625673593573">Nedavno zatvoreno</translation> <translation id="8876882697946675716">Kontinuirano sinhronizirajte uređaje</translation> <translation id="8881801611828450202">Pretraži <ph name="SEARCH_ENGINE" /> za ovu sliku</translation> +<translation id="8891935667620843985">Veze u Chromeu možete otvoriti automatski tako da ga postavite kao zadanu aplikaciju preglednika.</translation> <translation id="8898822736010347272">Šalje Googleu URL-ove nekih stranica koje posjetite, ograničene informacije sistema i sadržaj nekih stranica radi lakšeg otkrivanja novih prijetnji te zaštite svakoga na webu.</translation> <translation id="8909135823018751308">Dijeljenje…</translation> <translation id="8917490105272468696">Pristajem</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_ca.xtb b/ios/chrome/app/strings/resources/ios_strings_ca.xtb index ac25e1b1..be17492 100644 --- a/ios/chrome/app/strings/resources/ios_strings_ca.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_ca.xtb
@@ -775,6 +775,7 @@ <translation id="7400418766976504921">URL</translation> <translation id="7409985198648820906"><ph name="UNREAD_COUNT" /> articles sense llegir.</translation> <translation id="7412027924265291969">Continua</translation> +<translation id="7419565702166471774">Utilitza sempre connexions segures</translation> <translation id="7425346204213733349">Els canvis que es facin a les adreces d'interès, l'historial, les contrasenyes i altres opcions de configuració es deixaran de sincronitzar amb el Compte de Google. No obstant això, les dades actuals hi continuaran emmagatzemades.</translation> <translation id="7431991332293347422">Controla com s'utilitza l'historial de navegació per personalitzar la Cerca i més</translation> <translation id="7435356471928173109">Desactivada per l'administrador</translation> @@ -814,7 +815,6 @@ <translation id="7781069478569868053">Pàgina Pestanya nova</translation> <translation id="7781829728241885113">Ahir</translation> <translation id="778855399387580014">Inicia una cerca en una pestanya nova de Chrome.</translation> -<translation id="7790892308048519147">Prova d'utilitzar connexions segures</translation> <translation id="7791543448312431591">Afegeix</translation> <translation id="7807060072011926525">Proporcionat per Google</translation> <translation id="7839985698273989086">Pàgina sense connexió</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_cs.xtb b/ios/chrome/app/strings/resources/ios_strings_cs.xtb index cc54f68..554d8da 100644 --- a/ios/chrome/app/strings/resources/ios_strings_cs.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_cs.xtb
@@ -775,6 +775,7 @@ <translation id="7400418766976504921">Adresa URL</translation> <translation id="7409985198648820906">Nepřečtené články: <ph name="UNREAD_COUNT" />.</translation> <translation id="7412027924265291969">Pokračovat</translation> +<translation id="7419565702166471774">Vždy používat zabezpečená připojení</translation> <translation id="7425346204213733349">Změny záložek, historie, hesel a dalších nastavení se již nebudou synchronizovat do vašeho účtu Google. Vaše existující data však v účtu Google uložena zůstanou.</translation> <translation id="7431991332293347422">Nastavte, jak se má vaše historie prohlížení používat k personalizaci Vyhledávání a dalších služeb</translation> <translation id="7435356471928173109">Vypnuto administrátorem</translation> @@ -814,7 +815,6 @@ <translation id="7781069478569868053">Stránka Nová karta</translation> <translation id="7781829728241885113">Včera</translation> <translation id="778855399387580014">Spustit vyhledávání na nové kartě Chromu.</translation> -<translation id="7790892308048519147">Zkuste použít zabezpečené připojení</translation> <translation id="7791543448312431591">Přidat</translation> <translation id="7807060072011926525">Poskytuje Google</translation> <translation id="7839985698273989086">Stránka offline</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_cy.xtb b/ios/chrome/app/strings/resources/ios_strings_cy.xtb index bcd10da..ac34ba5 100644 --- a/ios/chrome/app/strings/resources/ios_strings_cy.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_cy.xtb
@@ -775,6 +775,7 @@ <translation id="7400418766976504921">URL</translation> <translation id="7409985198648820906">Mae <ph name="UNREAD_COUNT" /> erthygl sydd heb eu darllen</translation> <translation id="7412027924265291969">Parhau</translation> +<translation id="7419565702166471774">Defnyddio cysylltiadau diogel bob tro</translation> <translation id="7425346204213733349">Ni fydd newidiadau yn eich nodau tudalen, eich hanes, eich cyfrineiriau na'ch gosodiadau eraill yn cael eu cysoni â'ch Cyfrif Google mwyach. Fodd bynnag, bydd eich data presennol yn parhau i gael eu cadw yn eich Cyfrif Google.</translation> <translation id="7431991332293347422">Rheoli sut mae eich hanes pori yn cael ei ddefnyddio i bersonoleiddio Search a rhagor</translation> <translation id="7435356471928173109">Wedi'i ddiffodd gan eich gweinyddwr</translation> @@ -814,7 +815,6 @@ <translation id="7781069478569868053">Tudalen Tab Newydd</translation> <translation id="7781829728241885113">Ddoe</translation> <translation id="778855399387580014">Dechrau chwiliad mewn tab Chrome newydd.</translation> -<translation id="7790892308048519147">Ceisio defnyddio cysylltiadau diogel</translation> <translation id="7791543448312431591">Ychwanegu</translation> <translation id="7807060072011926525">Darperir gan Google</translation> <translation id="7839985698273989086">Tudalen All-lein</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_da.xtb b/ios/chrome/app/strings/resources/ios_strings_da.xtb index c01d0174..69b709f5 100644 --- a/ios/chrome/app/strings/resources/ios_strings_da.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_da.xtb
@@ -775,6 +775,7 @@ <translation id="7400418766976504921">Webadresse</translation> <translation id="7409985198648820906"><ph name="UNREAD_COUNT" /> ulæste artikler.</translation> <translation id="7412027924265291969">Fortsæt</translation> +<translation id="7419565702166471774">Brug altid sikre forbindelser</translation> <translation id="7425346204213733349">Ændringer af dine bogmærker, din historik, dine adgangskoder og andre indstillinger synkroniseres ikke længere til din Google-konto. Dine eksisterende data er dog stadig gemt på din Google-konto.</translation> <translation id="7431991332293347422">Bestem selv, hvordan din browserhistorik skal bruges til at tilpasse søgeresultater m.m.</translation> <translation id="7435356471928173109">Deaktiveret af din administrator</translation> @@ -814,7 +815,6 @@ <translation id="7781069478569868053">Siden Ny fane</translation> <translation id="7781829728241885113">I går</translation> <translation id="778855399387580014">Start en søgning i en ny Chrome-fane.</translation> -<translation id="7790892308048519147">Prøv at bruge sikre forbindelser</translation> <translation id="7791543448312431591">Tilføj</translation> <translation id="7807060072011926525">Leveret af Google</translation> <translation id="7839985698273989086">Offlineside</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_de.xtb b/ios/chrome/app/strings/resources/ios_strings_de.xtb index d62c3261..875193a 100644 --- a/ios/chrome/app/strings/resources/ios_strings_de.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_de.xtb
@@ -775,6 +775,7 @@ <translation id="7400418766976504921">URL</translation> <translation id="7409985198648820906"><ph name="UNREAD_COUNT" /> ungelesene Artikel.</translation> <translation id="7412027924265291969">Weiter</translation> +<translation id="7419565702166471774">Immer sichere Verbindungen verwenden</translation> <translation id="7425346204213733349">Änderungen an deinen Lesezeichen, dem Verlauf, deinen Passwörtern und anderen Einstellungen werden nicht mehr mit deinem Google-Konto synchronisiert. Deine vorhandenen Daten bleiben aber in deinem Google-Konto gespeichert.</translation> <translation id="7431991332293347422">Lege fest, wie dein Browserverlauf zur Personalisierung der Google Suche verwendet wird</translation> <translation id="7435356471928173109">Von deinem Administrator deaktiviert</translation> @@ -814,7 +815,6 @@ <translation id="7781069478569868053">"Neuer Tab"-Seite</translation> <translation id="7781829728241885113">Gestern</translation> <translation id="778855399387580014">Eine Suche in einem neuen Chrome-Tab starten.</translation> -<translation id="7790892308048519147">Versuchen, sichere Verbindungen zu nutzen</translation> <translation id="7791543448312431591">Hinzufügen</translation> <translation id="7807060072011926525">Von Google bereitgestellt</translation> <translation id="7839985698273989086">Offlineseite</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_el.xtb b/ios/chrome/app/strings/resources/ios_strings_el.xtb index 4d7f43b..13470ec 100644 --- a/ios/chrome/app/strings/resources/ios_strings_el.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_el.xtb
@@ -776,6 +776,7 @@ <translation id="7400418766976504921">URL</translation> <translation id="7409985198648820906"><ph name="UNREAD_COUNT" /> μη αναγνωσμένα άρθρα.</translation> <translation id="7412027924265291969">Συνέχεια</translation> +<translation id="7419565702166471774">Να χρησιμοποιούνται πάντα ασφαλείς συνδέσεις</translation> <translation id="7425346204213733349">Οι αλλαγές στους σελιδοδείκτες, το ιστορικό, τους κωδικούς πρόσβασης και σε άλλες ρυθμίσεις δεν θα συγχρονίζονται πλέον με το Λογαριασμό σας Google. Ωστόσο, τα υπάρχοντα δεδομένα σας θα παραμείνουν αποθηκευμένα στο Λογαριασμό σας Google.</translation> <translation id="7431991332293347422">Ελέγξτε τον τρόπο με τον οποίο χρησιμοποιείται το ιστορικό περιήγησής σας για την εξατομίκευση της Αναζήτησης και άλλων λειτουργιών</translation> <translation id="7435356471928173109">Απενεργοποιήθηκε από τον διαχειριστή σας.</translation> @@ -815,7 +816,6 @@ <translation id="7781069478569868053">Σελίδα σε νέα καρτέλα</translation> <translation id="7781829728241885113">Χθες</translation> <translation id="778855399387580014">Ξεκινήστε μια αναζήτηση σε μια νέα καρτέλα Chrome.</translation> -<translation id="7790892308048519147">Προσπάθεια χρήσης ασφαλών συνδέσεων</translation> <translation id="7791543448312431591">Προσθήκη</translation> <translation id="7807060072011926525">Παρέχεται από την Google</translation> <translation id="7839985698273989086">Σελίδα εκτός σύνδεσης</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_en-GB.xtb b/ios/chrome/app/strings/resources/ios_strings_en-GB.xtb index 2652d2e..27d2818 100644 --- a/ios/chrome/app/strings/resources/ios_strings_en-GB.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_en-GB.xtb
@@ -775,6 +775,7 @@ <translation id="7400418766976504921">URL</translation> <translation id="7409985198648820906"><ph name="UNREAD_COUNT" /> unread articles.</translation> <translation id="7412027924265291969">Continue</translation> +<translation id="7419565702166471774">Always use secure connections</translation> <translation id="7425346204213733349">Changes to your bookmarks, history, passwords and other settings will no longer be synced to your Google Account. However, your existing data will remain stored in your Google Account.</translation> <translation id="7431991332293347422">Control how your browsing history is used to personalise Search and more</translation> <translation id="7435356471928173109">Turned off by your administrator</translation> @@ -814,7 +815,6 @@ <translation id="7781069478569868053">New Tab Page</translation> <translation id="7781829728241885113">Yesterday</translation> <translation id="778855399387580014">Start a search in a new Chrome tab.</translation> -<translation id="7790892308048519147">Try to use secure connections</translation> <translation id="7791543448312431591">Add</translation> <translation id="7807060072011926525">Provided by Google</translation> <translation id="7839985698273989086">Offline page</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_es-419.xtb b/ios/chrome/app/strings/resources/ios_strings_es-419.xtb index 873dd41..08670519 100644 --- a/ios/chrome/app/strings/resources/ios_strings_es-419.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_es-419.xtb
@@ -775,6 +775,7 @@ <translation id="7400418766976504921">URL</translation> <translation id="7409985198648820906"><ph name="UNREAD_COUNT" /> artículos sin leer.</translation> <translation id="7412027924265291969">Continuar</translation> +<translation id="7419565702166471774">Usar siempre conexiones seguras</translation> <translation id="7425346204213733349">Los cambios de tus favoritos, historial, contraseñas y otras opciones de configuración ya no se sincronizarán con tu cuenta de Google. Sin embargo, los datos existentes permanecerán almacenados en tu cuenta de Google.</translation> <translation id="7431991332293347422">Controla cómo se usa tu historial de navegación para personalizar la Búsqueda y mucho más</translation> <translation id="7435356471928173109">El administrador desactivó la función</translation> @@ -814,7 +815,6 @@ <translation id="7781069478569868053">Página Nueva pestaña</translation> <translation id="7781829728241885113">Ayer</translation> <translation id="778855399387580014">Realiza una búsqueda en una nueva pestaña de Chrome.</translation> -<translation id="7790892308048519147">Usar conexiones seguras</translation> <translation id="7791543448312431591">Agregar</translation> <translation id="7807060072011926525">Proporcionado por Google</translation> <translation id="7839985698273989086">Página sin conexión</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_es.xtb b/ios/chrome/app/strings/resources/ios_strings_es.xtb index a5f57374..839940e 100644 --- a/ios/chrome/app/strings/resources/ios_strings_es.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_es.xtb
@@ -775,6 +775,7 @@ <translation id="7400418766976504921">URL</translation> <translation id="7409985198648820906"><ph name="UNREAD_COUNT" /> artículos no leídos.</translation> <translation id="7412027924265291969">Continuar</translation> +<translation id="7419565702166471774">Usar siempre conexiones seguras</translation> <translation id="7425346204213733349">Los cambios que hagas en los marcadores, el historial, las contraseñas y otras opciones no se sincronizarán con tu cuenta de Google. Sin embargo, tus datos actuales seguirán almacenados en tu cuenta.</translation> <translation id="7431991332293347422">Controla cómo se usa el historial de navegación para personalizar la Búsqueda y más</translation> <translation id="7435356471928173109">Desactivada por tu administrador</translation> @@ -814,7 +815,6 @@ <translation id="7781069478569868053">Página Nueva pestaña</translation> <translation id="7781829728241885113">Ayer</translation> <translation id="778855399387580014">Inicia una búsqueda en una nueva pestaña de Chrome.</translation> -<translation id="7790892308048519147">Intentar usar conexiones seguras</translation> <translation id="7791543448312431591">Añadir</translation> <translation id="7807060072011926525">Proporcionado por Google</translation> <translation id="7839985698273989086">Página sin conexión</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_et.xtb b/ios/chrome/app/strings/resources/ios_strings_et.xtb index 740f96c..411f2c9 100644 --- a/ios/chrome/app/strings/resources/ios_strings_et.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_et.xtb
@@ -775,6 +775,7 @@ <translation id="7400418766976504921">URL</translation> <translation id="7409985198648820906"><ph name="UNREAD_COUNT" /> lugemata artiklit.</translation> <translation id="7412027924265291969">Jätka</translation> +<translation id="7419565702166471774">Kasuta alati turvalist ühendust</translation> <translation id="7425346204213733349">Järjehoidjates, ajaloos, paroolides ja muudes seadetes tehtud muudatusi ei sünkroonita enam teie Google'i kontoga. Teie olemasolevad andmed jäävad siiski teie Google'i kontole.</translation> <translation id="7431991332293347422">Juhtige, kuidas kasutatakse teie sirvimisajalugu otsingu ja muu isikupärastamiseks</translation> <translation id="7435356471928173109">Administraator on välja lülitanud</translation> @@ -814,7 +815,6 @@ <translation id="7781069478569868053">Uus vaheleht</translation> <translation id="7781829728241885113">Eile</translation> <translation id="778855399387580014">Alustage otsingut uuel Chrome'i vahelehel.</translation> -<translation id="7790892308048519147">Proovige kasutada turvalisi ühendusi</translation> <translation id="7791543448312431591">Lisa</translation> <translation id="7807060072011926525">Pakub Google</translation> <translation id="7839985698273989086">Võrguühenduseta leht</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_eu.xtb b/ios/chrome/app/strings/resources/ios_strings_eu.xtb index f1f493e..cc0264a 100644 --- a/ios/chrome/app/strings/resources/ios_strings_eu.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_eu.xtb
@@ -775,6 +775,7 @@ <translation id="7400418766976504921">URLa</translation> <translation id="7409985198648820906">Irakurri gabeko <ph name="UNREAD_COUNT" /> artikulu.</translation> <translation id="7412027924265291969">Egin aurrera</translation> +<translation id="7419565702166471774">Erabili beti konexio seguruak</translation> <translation id="7425346204213733349">Aurrerantzean, ez dira Google-ko kontuarekin sinkronizatuko laster-marketan, historian, pasahitzetan eta bestelako ezarpenetan egiten dituzun aldaketak. Hala ere, orain arteko datuak Google-ko kontuan izaten jarraituko duzu.</translation> <translation id="7431991332293347422">Kontrolatu arakatze-historia nola erabiltzen den Bilaketa eta beste zerbitzu batzuk pertsonalizatzeko</translation> <translation id="7435356471928173109">Administratzaileak desaktibatu du</translation> @@ -814,7 +815,6 @@ <translation id="7781069478569868053">Fitxa berriaren orria</translation> <translation id="7781829728241885113">Atzo</translation> <translation id="778855399387580014">Hasi bilaketa Chrome-ren fitxa berri batean.</translation> -<translation id="7790892308048519147">Erabili konexio seguruak</translation> <translation id="7791543448312431591">Gehitu</translation> <translation id="7807060072011926525">Google-k eman du</translation> <translation id="7839985698273989086">Konexiorik gabeko orria</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_fa.xtb b/ios/chrome/app/strings/resources/ios_strings_fa.xtb index 55f4581..a0da4eb 100644 --- a/ios/chrome/app/strings/resources/ios_strings_fa.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_fa.xtb
@@ -775,6 +775,7 @@ <translation id="7400418766976504921">نشانی وب</translation> <translation id="7409985198648820906"><ph name="UNREAD_COUNT" /> مقاله خواندهنشده.</translation> <translation id="7412027924265291969">ادامه</translation> +<translation id="7419565702166471774">همیشه از اتصالهای امن استفاده شود</translation> <translation id="7425346204213733349">تغییرات در نشانکها، سابقه، گذرواژه و سایر تنظیمات دیگر با حساب Google شما همگامسازی نخواهند شد. با این حال، دادههای موجودتان در حساب Google شما باقی خواهند ماند.</translation> <translation id="7431991332293347422">کنترل نحوه استفاده از سابقه مرور برای شخصیسازی «جستجو» و موارد دیگر</translation> <translation id="7435356471928173109">سرپرستتان آن را خاموش کرده است</translation> @@ -814,7 +815,6 @@ <translation id="7781069478569868053">صفحه برگه جدید</translation> <translation id="7781829728241885113">دیروز</translation> <translation id="778855399387580014">جستجویی در برگه Chrome جدیدی شروع کنید.</translation> -<translation id="7790892308048519147">تلاش برای استفاده از اتصالهای امن</translation> <translation id="7791543448312431591">افزودن</translation> <translation id="7807060072011926525">ارائه از Google</translation> <translation id="7839985698273989086">صفحه آفلاین</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_fi.xtb b/ios/chrome/app/strings/resources/ios_strings_fi.xtb index 5523079..36b3bd8 100644 --- a/ios/chrome/app/strings/resources/ios_strings_fi.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_fi.xtb
@@ -775,6 +775,7 @@ <translation id="7400418766976504921">URL-osoite</translation> <translation id="7409985198648820906"><ph name="UNREAD_COUNT" /> lukematonta artikkelia</translation> <translation id="7412027924265291969">Jatka</translation> +<translation id="7419565702166471774">Käytä aina suojattuja yhteyksiä</translation> <translation id="7425346204213733349">Kirjanmerkkeihin, historiaan, salasanoihin ja muihin asetuksiin tehtäviä muutoksia ei enää synkronoida Google-tilillesi. Olemassa olevia tietojasi säilytetään kuitenkin Google-tililläsi.</translation> <translation id="7431991332293347422">Määritä, miten selaushistoria personoi Hakua ja muita</translation> <translation id="7435356471928173109">Järjestelmänvalvojasi on ottanut tämän pois päältä</translation> @@ -814,7 +815,6 @@ <translation id="7781069478569868053">Uusi välilehti -sivu</translation> <translation id="7781829728241885113">Eilen</translation> <translation id="778855399387580014">Aloita haku Chrome-välilehdellä.</translation> -<translation id="7790892308048519147">Yritä käyttää suojattuja yhteyksiä</translation> <translation id="7791543448312431591">Lisää</translation> <translation id="7807060072011926525">Googlen tarjoama</translation> <translation id="7839985698273989086">Offline-sivu</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_fil.xtb b/ios/chrome/app/strings/resources/ios_strings_fil.xtb index 97b1617a..98729d5 100644 --- a/ios/chrome/app/strings/resources/ios_strings_fil.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_fil.xtb
@@ -775,6 +775,7 @@ <translation id="7400418766976504921">URL</translation> <translation id="7409985198648820906"><ph name="UNREAD_COUNT" /> (na) hindi pa nababasang artikulo.</translation> <translation id="7412027924265291969">Magpatuloy</translation> +<translation id="7419565702166471774">Palaging gumamit ng mga secure na koneksyon</translation> <translation id="7425346204213733349">Hindi na masi-sync sa Google Account mo ang mga pagbabago sa iyong mga bookmark, history, password, at iba pang setting. Gayunpaman, mananatiling naka-store sa Google account mo ang iyong kasalukuyang data.</translation> <translation id="7431991332293347422">Kontrolin kung paano ginagamit ang iyong history ng pag-browse para i-personalize ang Paghahanap at higit pa</translation> <translation id="7435356471928173109">Na-off ng iyong administrator</translation> @@ -814,7 +815,6 @@ <translation id="7781069478569868053">Page ng Bagong Tab</translation> <translation id="7781829728241885113">Kahapon</translation> <translation id="778855399387580014">Start a search in a new Chrome tab.</translation> -<translation id="7790892308048519147">Subukang gumamit ng mga secure na koneksyon</translation> <translation id="7791543448312431591">Idagdag</translation> <translation id="7807060072011926525">Ibinibigay ng Google</translation> <translation id="7839985698273989086">Offline na Page</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_fr-CA.xtb b/ios/chrome/app/strings/resources/ios_strings_fr-CA.xtb index 03ba192..6b75f6c 100644 --- a/ios/chrome/app/strings/resources/ios_strings_fr-CA.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_fr-CA.xtb
@@ -775,6 +775,7 @@ <translation id="7400418766976504921">URL</translation> <translation id="7409985198648820906"><ph name="UNREAD_COUNT" /> articles non lus.</translation> <translation id="7412027924265291969">Continuer</translation> +<translation id="7419565702166471774">Toujours utiliser des connexions sécurisées</translation> <translation id="7425346204213733349">Les modifications apportées à vos favoris, à votre historique, à vos mots de passe et aux autres paramètres ne seront plus synchronisées avec votre compte Google. Cependant, vos données actuelles resteront stockées dans votre compte Google.</translation> <translation id="7431991332293347422">Gérez la façon dont votre historique de navigation est utilisé pour personnaliser, entre autres, la recherche</translation> <translation id="7435356471928173109">Désactivée par votre administrateur</translation> @@ -814,7 +815,6 @@ <translation id="7781069478569868053">Page Nouvel onglet</translation> <translation id="7781829728241885113">Hier</translation> <translation id="778855399387580014">Lancez une recherche dans un nouvel onglet Chrome.</translation> -<translation id="7790892308048519147">Essayer d'utiliser des connexions sécurisées</translation> <translation id="7791543448312431591">Ajouter</translation> <translation id="7807060072011926525">Fourni par Google</translation> <translation id="7839985698273989086">Page hors ligne</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_fr.xtb b/ios/chrome/app/strings/resources/ios_strings_fr.xtb index a1b814f5..c2ecad2 100644 --- a/ios/chrome/app/strings/resources/ios_strings_fr.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_fr.xtb
@@ -776,6 +776,7 @@ <translation id="7400418766976504921">URL</translation> <translation id="7409985198648820906"><ph name="UNREAD_COUNT" /> articles non lus.</translation> <translation id="7412027924265291969">Continuer</translation> +<translation id="7419565702166471774">Toujours utiliser une connexion sécurisée</translation> <translation id="7425346204213733349">Les modifications apportées à vos favoris, votre historique, vos mots de passe et d'autres paramètres ne seront plus synchronisées avec votre compte Google. Vos données seront cependant maintenues sur votre compte Google.</translation> <translation id="7431991332293347422">Contrôler la manière dont votre historique de navigation est utilisé pour personnaliser la recherche et plus encore</translation> <translation id="7435356471928173109">Mode désactivé par votre administrateur</translation> @@ -815,7 +816,6 @@ <translation id="7781069478569868053">Page Nouvel onglet</translation> <translation id="7781829728241885113">Hier</translation> <translation id="778855399387580014">Lancer une recherche dans un nouvel onglet Chrome.</translation> -<translation id="7790892308048519147">Essayer d'utiliser des connexions sécurisées</translation> <translation id="7791543448312431591">Ajouter</translation> <translation id="7807060072011926525">Fourni par Google</translation> <translation id="7839985698273989086">Page hors connexion</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_gl.xtb b/ios/chrome/app/strings/resources/ios_strings_gl.xtb index c3c8eef..f6bf733 100644 --- a/ios/chrome/app/strings/resources/ios_strings_gl.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_gl.xtb
@@ -775,6 +775,7 @@ <translation id="7400418766976504921">URL</translation> <translation id="7409985198648820906"><ph name="UNREAD_COUNT" /> artigos non lidos.</translation> <translation id="7412027924265291969">Continuar</translation> +<translation id="7419565702166471774">Usar sempre conexións seguras</translation> <translation id="7425346204213733349">Os cambios nos marcadores, no historial, nos contrasinais e noutras opcións de configuración deixarán de sincronizarse coa túa conta de Google. Non obstante, os teus datos actuais permanecerán almacenados na túa conta de Google.</translation> <translation id="7431991332293347422">Controla como se utiliza o historial de navegación para personalizar a Busca e moito máis</translation> <translation id="7435356471928173109">Desactivada polo teu administrador</translation> @@ -814,7 +815,6 @@ <translation id="7781069478569868053">Páxina Nova pestana</translation> <translation id="7781829728241885113">Onte</translation> <translation id="778855399387580014">Inicia unha busca nunha nova pestana de Chrome.</translation> -<translation id="7790892308048519147">Tenta usar conexións seguras</translation> <translation id="7791543448312431591">Engadir</translation> <translation id="7807060072011926525">Ofrecido por Google</translation> <translation id="7839985698273989086">Páxina sen conexión</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_gu.xtb b/ios/chrome/app/strings/resources/ios_strings_gu.xtb index 8b6b9a8..0399ac22 100644 --- a/ios/chrome/app/strings/resources/ios_strings_gu.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_gu.xtb
@@ -775,6 +775,7 @@ <translation id="7400418766976504921">URL</translation> <translation id="7409985198648820906"><ph name="UNREAD_COUNT" /> વાંચ્યા વગરના લેખ.</translation> <translation id="7412027924265291969">ચાલુ રાખો</translation> +<translation id="7419565702166471774">હંમેશાં સુરક્ષિત કનેક્શનનો ઉપયોગ કરો</translation> <translation id="7425346204213733349">તમારા બુકમાર્ક, ઇતિહાસ, પાસવર્ડ અને બીજા સેટિંગમાં ફેરફારને હવે તમારા Google એકાઉન્ટ પર સિંક કરવામાં આવશે નહીં. જોકે, તમારો હાલનો ડેટા તમારા Google એકાઉન્ટમાં સ્ટોર રહેશે.</translation> <translation id="7431991332293347422">શોધ અને અન્ય બાબતોને તમને મનગમતી બનાવવા માટે તમારા બ્રાઉઝિંગ ઇતિહાસનો ઉપયોગ કરવાની રીત નિયંત્રિત કરો</translation> <translation id="7435356471928173109">તમારા વ્યવસ્થાપક દ્વારા આ સુવિધા બંધ કરવામાં આવી છે</translation> @@ -814,7 +815,6 @@ <translation id="7781069478569868053">નવું ટૅબ પેજ</translation> <translation id="7781829728241885113">ગઈ કાલે</translation> <translation id="778855399387580014">નવા Chrome ટૅબમાં શોધ શરૂ કરો.</translation> -<translation id="7790892308048519147">સુરક્ષિત કનેક્શનનો ઉપયોગ કરવાનો પ્રયાસ કરો</translation> <translation id="7791543448312431591">ઉમેરો</translation> <translation id="7807060072011926525">Google દ્વારા પ્રદાન કરાયેલું</translation> <translation id="7839985698273989086">ઑફલાઇન પેજ</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_hi.xtb b/ios/chrome/app/strings/resources/ios_strings_hi.xtb index dcb215a..f70a5d1 100644 --- a/ios/chrome/app/strings/resources/ios_strings_hi.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_hi.xtb
@@ -775,6 +775,7 @@ <translation id="7400418766976504921">URL</translation> <translation id="7409985198648820906"><ph name="UNREAD_COUNT" /> लेख पढ़े नहीं गए हैं.</translation> <translation id="7412027924265291969">जारी रखें</translation> +<translation id="7419565702166471774">हमेशा सुरक्षित कनेक्शन इस्तेमाल करें</translation> <translation id="7425346204213733349">आपके बुकमार्क, इतिहास, पासवर्ड और अन्य सेटिंग में किए गए बदलाव अब आपके Google खाते में सिंक नहीं किए जाएंगे. हालांकि, आपका मौजूदा डेटा आपके Google खाते में संग्रहित रहेगा.</translation> <translation id="7431991332293347422">यह नियंत्रित करें कि खोज वगैरह को मनमुताबिक बनाने के लिए आपके ब्राउज़िंग इतिहास का इस्तेमाल कैसे किया जाए</translation> <translation id="7435356471928173109">आपके एडमिन ने ये सुविधा बंद की हुई है</translation> @@ -814,7 +815,6 @@ <translation id="7781069478569868053">नया टैब पेज</translation> <translation id="7781829728241885113">बीता कल</translation> <translation id="778855399387580014">नए Chrome टैब में खोज शुरू करें.</translation> -<translation id="7790892308048519147">असुरक्षित कनेक्शन का इस्तेमाल करने से बचें</translation> <translation id="7791543448312431591">जोड़ें</translation> <translation id="7807060072011926525">Google से मिला फ़ीड</translation> <translation id="7839985698273989086">ऑफ़लाइन पेज</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_hr.xtb b/ios/chrome/app/strings/resources/ios_strings_hr.xtb index 303d5c0..b280eb84 100644 --- a/ios/chrome/app/strings/resources/ios_strings_hr.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_hr.xtb
@@ -329,6 +329,7 @@ <translation id="3775743491439407556">Sinkronizacija ne funkcionira</translation> <translation id="3779810277399252432">Nema internetske veze.</translation> <translation id="3783017676699494206">Spremi sliku</translation> +<translation id="3789294999358192700">Slijedite upute u nastavku:</translation> <translation id="3789841737615482174">Instaliraj</translation> <translation id="380329542618494757">Ime</translation> <translation id="3803696231112616155">Ponudi prevođenje ove web-lokacije</translation> @@ -775,6 +776,7 @@ <translation id="7400418766976504921">URL</translation> <translation id="7409985198648820906">Nepročitanih članaka: <ph name="UNREAD_COUNT" />.</translation> <translation id="7412027924265291969">Nastavi</translation> +<translation id="7419565702166471774">Uvijek upotrebljavaj sigurne veze</translation> <translation id="7425346204213733349">Promjene oznaka, povijesti, zaporki i drugih postavki više se neće sinkronizirati s vašim Google računom. No vaši postojeći podaci ostat će pohranjeni na vašem Google računu.</translation> <translation id="7431991332293347422">Odredite na koji će se način vaša povijest pregledavanja upotrebljavati za prilagodbu Pretraživanja i drugih značajki</translation> <translation id="7435356471928173109">Isključio vaš administrator</translation> @@ -814,7 +816,6 @@ <translation id="7781069478569868053">Web-stranica nove kartice</translation> <translation id="7781829728241885113">Danas</translation> <translation id="778855399387580014">Pokrenite pretraživanje u novoj kartici Chromea.</translation> -<translation id="7790892308048519147">Pokušajte koristiti sigurne veze</translation> <translation id="7791543448312431591">Dodavanje</translation> <translation id="7807060072011926525">Omogućuje Google</translation> <translation id="7839985698273989086">Izvanmrežna stranica</translation> @@ -942,6 +943,7 @@ <translation id="8870413625673593573">Nedavno zatvoreno</translation> <translation id="8876882697946675716">Sinkronizacija uređaja</translation> <translation id="8881801611828450202">Potraži sliku na usluzi <ph name="SEARCH_ENGINE" /></translation> +<translation id="8891935667620843985">Veze u Chromeu možete otvoriti automatski tako da ga postavite kao zadanu aplikaciju preglednika.</translation> <translation id="8898822736010347272">Šalje URL-ove određenih stranica koje posjećujete, ograničene podatke o sustavu i sadržaj određenih stranica Googleu kako bi se pomoglo pri otkrivanju novih prijetnji i kako bi se zaštitili svi korisnici na webu.</translation> <translation id="8909135823018751308">Dijeljenje…</translation> <translation id="8917490105272468696">Da, pristajem</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_hu.xtb b/ios/chrome/app/strings/resources/ios_strings_hu.xtb index b681872b..f3dd279 100644 --- a/ios/chrome/app/strings/resources/ios_strings_hu.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_hu.xtb
@@ -329,6 +329,7 @@ <translation id="3775743491439407556">A szinkronizálás nem működik</translation> <translation id="3779810277399252432">Nincs internetkapcsolat.</translation> <translation id="3783017676699494206">Kép mentése</translation> +<translation id="3789294999358192700">Végezze el a következő lépéseket:</translation> <translation id="3789841737615482174">Telepítés</translation> <translation id="380329542618494757">Név</translation> <translation id="3803696231112616155">A webhely lefordításának felajánlása</translation> @@ -775,6 +776,7 @@ <translation id="7400418766976504921">URL</translation> <translation id="7409985198648820906"><ph name="UNREAD_COUNT" /> olvasatlan cikk.</translation> <translation id="7412027924265291969">Tovább</translation> +<translation id="7419565702166471774">Mindig használjon biztonságos kapcsolatokat</translation> <translation id="7425346204213733349">Könyvjelzői, előzményei, jelszavai és más beállításai a továbbiakban már nem lesznek szinkronizálva Google-fiókjával. Meglévő adatait azonban továbbra is tárolni fogja a fiók.</translation> <translation id="7431991332293347422">Beállíthatja, hogy a rendszer hogyan szabja személyre a Keresést és egyebeket a böngészési előzmények alapján</translation> <translation id="7435356471928173109">A rendszergazda kikapcsolta</translation> @@ -814,7 +816,6 @@ <translation id="7781069478569868053">Új lap oldal</translation> <translation id="7781829728241885113">Tegnap</translation> <translation id="778855399387580014">Keresés indítása új Chrome-lapon.</translation> -<translation id="7790892308048519147">Igyekezzen biztonságos kapcsolatot használni</translation> <translation id="7791543448312431591">Hozzáadás</translation> <translation id="7807060072011926525">A Google biztosítja</translation> <translation id="7839985698273989086">Offline oldal</translation> @@ -942,6 +943,7 @@ <translation id="8870413625673593573">Mostanában bezárt</translation> <translation id="8876882697946675716">Biztosítsa, hogy eszközei szinkronban maradjanak</translation> <translation id="8881801611828450202">Kép keresése a(z) <ph name="SEARCH_ENGINE" /> segítségével</translation> +<translation id="8891935667620843985">Ha szeretné, hogy automatikusan a Chrome nyissa meg a linkeket, állítsa be alapértelmezett böngészőként.</translation> <translation id="8898822736010347272">Egyes felkeresett oldalak URL-jeit, korlátozott rendszer-információkat és bizonyos oldaltartalmakat küld el a Google-nak, hogy könnyebben felfedezhetők legyenek az internetezőkre leselkedő új veszélyek, és meg lehessen védeni a felhasználókat.</translation> <translation id="8909135823018751308">Megosztás...</translation> <translation id="8917490105272468696">Igen, elfogadom</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_hy.xtb b/ios/chrome/app/strings/resources/ios_strings_hy.xtb index 9cae0fb0..3ce46c7 100644 --- a/ios/chrome/app/strings/resources/ios_strings_hy.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_hy.xtb
@@ -775,6 +775,7 @@ <translation id="7400418766976504921">URL</translation> <translation id="7409985198648820906"><ph name="UNREAD_COUNT" /> չընթերցված հոդված</translation> <translation id="7412027924265291969">Շարունակել</translation> +<translation id="7419565702166471774">Միշտ օգտագործել անվտանգ միացումներ</translation> <translation id="7425346204213733349">Ձեր էջանիշների, այցելությունների պատմության, գաղտնաբառերի և այլ կարգավորումների փոփոխությունները չեն համաժամացվի ձեր Google հաշվի հետ: Այդուհանդերձ, ձեր առկա տվյալները կպահվեն ձեր Google հաշվում:</translation> <translation id="7431991332293347422">Կառավարեք ձեր այցելությունների պատմության օգտագործումը՝ Որոնումը և այլ ծառայություններ անհատականացնելու համար</translation> <translation id="7435356471928173109">Անջատվել է ադմինիստրատորի կողմից</translation> @@ -814,7 +815,6 @@ <translation id="7781069478569868053">Նոր ներդիրի էջ</translation> <translation id="7781829728241885113">Երեկ</translation> <translation id="778855399387580014">Սկսեք որոնել Chrome-ի նոր ներդիրում:</translation> -<translation id="7790892308048519147">Օգտագործել անվտանգ միացումներ</translation> <translation id="7791543448312431591">Ավելացնել</translation> <translation id="7807060072011926525">Տրամադրված է Google-ի կողմից</translation> <translation id="7839985698273989086">Անցանց էջ</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_id.xtb b/ios/chrome/app/strings/resources/ios_strings_id.xtb index 12bf06a..8c7c83b1 100644 --- a/ios/chrome/app/strings/resources/ios_strings_id.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_id.xtb
@@ -775,6 +775,7 @@ <translation id="7400418766976504921">URL</translation> <translation id="7409985198648820906"><ph name="UNREAD_COUNT" /> artikel belum dibaca.</translation> <translation id="7412027924265291969">Lanjutkan</translation> +<translation id="7419565702166471774">Selalu gunakan koneksi aman</translation> <translation id="7425346204213733349">Perubahan pada bookmark, histori, sandi, dan setelan lainnya tidak akan disinkronkan lagi dengan Akun Google. Namun, data yang sudah ada akan tetap disimpan di Akun Google Anda.</translation> <translation id="7431991332293347422">Kontrol cara histori browsing digunakan untuk mempersonalisasi Penelusuran dan lainnya</translation> <translation id="7435356471928173109">Dinonaktifkan oleh administrator Anda</translation> @@ -814,7 +815,6 @@ <translation id="7781069478569868053">Halaman Tab Baru</translation> <translation id="7781829728241885113">Kemarin</translation> <translation id="778855399387580014">Mulai penelusuran di tab Chrome baru.</translation> -<translation id="7790892308048519147">Coba gunakan koneksi yang aman</translation> <translation id="7791543448312431591">Tambahkan</translation> <translation id="7807060072011926525">Disediakan oleh Google</translation> <translation id="7839985698273989086">Halaman Offline</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_is.xtb b/ios/chrome/app/strings/resources/ios_strings_is.xtb index 7d90e1f..b448641 100644 --- a/ios/chrome/app/strings/resources/ios_strings_is.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_is.xtb
@@ -775,6 +775,7 @@ <translation id="7400418766976504921">Vefslóð</translation> <translation id="7409985198648820906"><ph name="UNREAD_COUNT" /> ólesnar greinar.</translation> <translation id="7412027924265291969">Halda áfram</translation> +<translation id="7419565702166471774">Nota ávallt öruggar tengingar</translation> <translation id="7425346204213733349">Breytingar á bókamerkjunum þínum, ferlinum, aðgangsorðunum og öðrum stillingum verða ekki lengur samstilltar við Google reikninginn þinn. Þau gögn sem fyrir eru verða þó áfram vistuð á Google reikningnum þínum.</translation> <translation id="7431991332293347422">Stjórnaðu því hvernig vefskoðunarferillinn þinn er notaður til að sérsníða leit og fleira</translation> <translation id="7435356471928173109">Kerfisstjórinn slökkti á þessu</translation> @@ -814,7 +815,6 @@ <translation id="7781069478569868053">Síða nýrra flipa</translation> <translation id="7781829728241885113">Í gær</translation> <translation id="778855399387580014">Hefja leit í nýjum flipa í Chrome.</translation> -<translation id="7790892308048519147">Reyna að nota öruggar tengingar</translation> <translation id="7791543448312431591">Bæta við</translation> <translation id="7807060072011926525">Frá Google</translation> <translation id="7839985698273989086">Ótengd síða</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_it.xtb b/ios/chrome/app/strings/resources/ios_strings_it.xtb index becc078..f5ad075a 100644 --- a/ios/chrome/app/strings/resources/ios_strings_it.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_it.xtb
@@ -775,6 +775,7 @@ <translation id="7400418766976504921">URL</translation> <translation id="7409985198648820906"><ph name="UNREAD_COUNT" /> articoli da leggere.</translation> <translation id="7412027924265291969">Continua</translation> +<translation id="7419565702166471774">Utilizza sempre connessioni sicure</translation> <translation id="7425346204213733349">Le modifiche ai preferiti, alla cronologia, alle password e ad altre impostazioni non verranno più sincronizzate con il tuo Account Google. Tuttavia, i dati esistenti rimarranno memorizzati.</translation> <translation id="7431991332293347422">Controlla la modalità di utilizzo della cronologia di navigazione per personalizzare la Ricerca e non solo</translation> <translation id="7435356471928173109">Disattivata dall'amministratore</translation> @@ -814,7 +815,6 @@ <translation id="7781069478569868053">Pagina Nuova scheda</translation> <translation id="7781829728241885113">Ieri</translation> <translation id="778855399387580014">Avvia una ricerca in una nuova scheda di Chrome.</translation> -<translation id="7790892308048519147">Prova a usare connessioni sicure</translation> <translation id="7791543448312431591">Aggiungi</translation> <translation id="7807060072011926525">Fornito da Google</translation> <translation id="7839985698273989086">Pagina offline</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_iw.xtb b/ios/chrome/app/strings/resources/ios_strings_iw.xtb index 6544e834..da9d711d 100644 --- a/ios/chrome/app/strings/resources/ios_strings_iw.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_iw.xtb
@@ -774,6 +774,7 @@ <translation id="7400418766976504921">כתובת אתר</translation> <translation id="7409985198648820906"><ph name="UNREAD_COUNT" /> מאמרים שלא נקראו.</translation> <translation id="7412027924265291969">המשך</translation> +<translation id="7419565702166471774">להשתמש תמיד בחיבורים מאובטחים</translation> <translation id="7425346204213733349">שינויים בסימניות, בהיסטוריה, בסיסמאות ובהגדרות נוספות לא יסונכרנו עוד עם חשבון Google שלך. עם זאת, הנתונים הקיימים עדיין יאוחסנו בחשבון Google שלך.</translation> <translation id="7431991332293347422">קביעת אופן השימוש בהיסטוריית הגלישה להתאמה אישית של החיפוש ועוד</translation> <translation id="7435356471928173109">מנהל המערכת כיבה את התכונה הזו</translation> @@ -813,7 +814,6 @@ <translation id="7781069478569868053">דף 'כרטיסייה חדשה'</translation> <translation id="7781829728241885113">אתמול</translation> <translation id="778855399387580014">חיפוש בכרטיסיית Chrome חדשה.</translation> -<translation id="7790892308048519147">מתן עדיפות לשימוש בחיבורים מאובטחים</translation> <translation id="7791543448312431591">הוספה</translation> <translation id="7807060072011926525">סופק על ידי Google</translation> <translation id="7839985698273989086">הדף לא מחובר לאינטרנט</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_ja.xtb b/ios/chrome/app/strings/resources/ios_strings_ja.xtb index 61579393..aae2d6e 100644 --- a/ios/chrome/app/strings/resources/ios_strings_ja.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_ja.xtb
@@ -775,6 +775,7 @@ <translation id="7400418766976504921">URL</translation> <translation id="7409985198648820906"><ph name="UNREAD_COUNT" /> 件の未読記事があります。</translation> <translation id="7412027924265291969">続行</translation> +<translation id="7419565702166471774">常に安全な接続を使用する</translation> <translation id="7425346204213733349">今後、ブックマーク、履歴、パスワード、その他の設定に行った変更は Google アカウントに同期されません。ただし、既存のデータは Google アカウントに保存されたままとなります。</translation> <translation id="7431991332293347422">検索などのカスタマイズを目的とした閲覧履歴の使用方法を設定</translation> <translation id="7435356471928173109">管理者によってオフにされています</translation> @@ -814,7 +815,6 @@ <translation id="7781069478569868053">新しいタブページ</translation> <translation id="7781829728241885113">昨日</translation> <translation id="778855399387580014">新しい Chrome タブで検索を開始します。</translation> -<translation id="7790892308048519147">安全な接続を試す</translation> <translation id="7791543448312431591">追加</translation> <translation id="7807060072011926525">Google から提供</translation> <translation id="7839985698273989086">オフライン ページ</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_ka.xtb b/ios/chrome/app/strings/resources/ios_strings_ka.xtb index 1afd16c9..d16a010 100644 --- a/ios/chrome/app/strings/resources/ios_strings_ka.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_ka.xtb
@@ -329,6 +329,7 @@ <translation id="3775743491439407556">სინქრონიზაცია არ მუშაობს</translation> <translation id="3779810277399252432">ინტერნეტთან კავშირი არ არის.</translation> <translation id="3783017676699494206">გამოსახულების შენახვა</translation> +<translation id="3789294999358192700">ამისთვის:</translation> <translation id="3789841737615482174">ინსტალაცია</translation> <translation id="380329542618494757">სახელი</translation> <translation id="3803696231112616155">ამ საიტის თარგმნის შემოთავაზება</translation> @@ -775,6 +776,7 @@ <translation id="7400418766976504921">URL</translation> <translation id="7409985198648820906"><ph name="UNREAD_COUNT" /> წაუკითხავი სტატია.</translation> <translation id="7412027924265291969">გაგრძელება</translation> +<translation id="7419565702166471774">ყოველთვის დაცული კავშირების გამოყენება</translation> <translation id="7425346204213733349">თქვენი სანიშნეების, ისტორიის, პაროლებისა და სხვა პარამეტრების ცვლილებების სინქრონიზაცია თქვენს Google ანგარიშთან აღარ მოხდება. თუმცა არსებული მონაცემები კვლავ შეინახება თქვენს Google ანგარიშში.</translation> <translation id="7431991332293347422">მართეთ თქვენი დათვალიერების ისტორიის გამოყენების ხერხები Search-ისა და სხვა სერვისების პერსონალიზებისთვის</translation> <translation id="7435356471928173109">გამორთულია თქვენი ადმინისტრატორის მიერ</translation> @@ -814,7 +816,6 @@ <translation id="7781069478569868053">ახალი ჩანართის გვერდი</translation> <translation id="7781829728241885113">გუშინ</translation> <translation id="778855399387580014">ძიების დაწყება Chrome-ის ახალ ჩანართში.</translation> -<translation id="7790892308048519147">დაცული კავშირების შეძლებისდაგვარად გამოყენება</translation> <translation id="7791543448312431591">დამატება</translation> <translation id="7807060072011926525">უზრუნველყოფს Google</translation> <translation id="7839985698273989086">ხაზგარეშე გვერდი</translation> @@ -942,6 +943,7 @@ <translation id="8870413625673593573">ბოლოს დახურული</translation> <translation id="8876882697946675716">შეინარჩუნეთ მოწყობილობები სინქრონიზებულ მდგომარეობაში</translation> <translation id="8881801611828450202">ამ სურათის ძიება <ph name="SEARCH_ENGINE" />-ში</translation> +<translation id="8891935667620843985">Chrome-ში ბმულები ავტომატურად რომ გაიხსნას, აქციეთ ის ბრაუზერის ნაგულისხმევ აპად.</translation> <translation id="8898822736010347272">Google-ს გაუგზავნის თქვენ მიერ მონახულებული ზოგიერთი გვერდის URL-ებს, სისტემის შეზღუდულ ინფორმაციასა და გვერდების გარკვეულ კონტენტს ვების ყველა მომხმარებლისთვის ახალი საფრთხეების აღმოსაჩენად და დასაბლოკად.</translation> <translation id="8909135823018751308">გაზიარება…</translation> <translation id="8917490105272468696">დიახ, თანახმა ვარ</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_kk.xtb b/ios/chrome/app/strings/resources/ios_strings_kk.xtb index fa609e6..ceb6c7c 100644 --- a/ios/chrome/app/strings/resources/ios_strings_kk.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_kk.xtb
@@ -775,6 +775,7 @@ <translation id="7400418766976504921">URL</translation> <translation id="7409985198648820906"><ph name="UNREAD_COUNT" /> мақала оқылмаған.</translation> <translation id="7412027924265291969">Жалғастыру</translation> +<translation id="7419565702166471774">Әрдайым қауіпсіз байланысты пайдалану</translation> <translation id="7425346204213733349">Бетбелгілерге, тарихқа, құпия сөздерге және басқа параметрлерге енгізілген өзгертулер бұдан әрі Google аккаунтымен синхрондалмайды. Дегенмен, бұрыннан бар деректер Google аккаунтында сақтаулы қалады.</translation> <translation id="7431991332293347422">Search және т.б. қызметтерді жекелендіру үшін шолу тарихын қалай пайдалану керектігін көрсетіңіз</translation> <translation id="7435356471928173109">Әкімші өшіріп қойған.</translation> @@ -814,7 +815,6 @@ <translation id="7781069478569868053">Жаңа қойынды беті</translation> <translation id="7781829728241885113">Кеше</translation> <translation id="778855399387580014">Жаңа Chrome қойындысында іздеуді бастаңыз.</translation> -<translation id="7790892308048519147">Қауіпсіз байланысты пайдаланып көріңіз</translation> <translation id="7791543448312431591">Қосу</translation> <translation id="7807060072011926525">Google ұсынған деректер</translation> <translation id="7839985698273989086">Бет офлайн</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_km.xtb b/ios/chrome/app/strings/resources/ios_strings_km.xtb index 2cb5503f..abadc39 100644 --- a/ios/chrome/app/strings/resources/ios_strings_km.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_km.xtb
@@ -775,6 +775,7 @@ <translation id="7400418766976504921">URL</translation> <translation id="7409985198648820906">អត្ថបទមិនទាន់អាន <ph name="UNREAD_COUNT" />។</translation> <translation id="7412027924265291969">បន្ត</translation> +<translation id="7419565702166471774">ប្រើការតភ្ជាប់ដែលមានសុវត្ថិភាពជានិច្ច</translation> <translation id="7425346204213733349">ការផ្លាស់ប្តូរចំពោះចំណាំ ប្រវត្តិ ពាក្យសម្ងាត់ និងការកំណត់ផ្សេងទៀតរបស់អ្នកនឹងមិនត្រូវបានធ្វើសមកាលកម្មជាមួយគណនី Google របស់អ្នកទៀតទេ។ ទោះបីជាយ៉ាងណាក៏ដោយ ទិន្នន័យដែលមានសម្រាប់របស់អ្នកនឹងនៅតែផ្ទុកក្នុងគណនី Google របស់អ្នកដដែល។</translation> <translation id="7431991332293347422">គ្រប់គ្រងរបៀបដែលប្រវត្តិរុករករបស់អ្នកត្រូវបានប្រើប្រាស់ ដើម្បីកំណត់ឱ្យការស្វែងរក និងអ្វីៗជាច្រើនទៀតស្របនឹងអ្នក</translation> <translation id="7435356471928173109">បានបិទដោយអ្នកគ្រប់គ្រងរបស់អ្នក</translation> @@ -814,7 +815,6 @@ <translation id="7781069478569868053">ទំព័រផ្ទាំងថ្មី</translation> <translation id="7781829728241885113">ម្សិលមិញ</translation> <translation id="778855399387580014">ចាប់ផ្ដើមការស្វែងរកនៅក្នុងផ្ទាំង Chrome ថ្មី។</translation> -<translation id="7790892308048519147">ព្យាយាមប្រើការតភ្ជាប់ដែលមានសុវត្ថិភាព</translation> <translation id="7791543448312431591">បន្ថែម</translation> <translation id="7807060072011926525">បានផ្ដល់ដោយ Google</translation> <translation id="7839985698273989086">ទំព័រគ្មានអ៊ីនធឺណិត</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_kn.xtb b/ios/chrome/app/strings/resources/ios_strings_kn.xtb index efd6750b..e61bd09 100644 --- a/ios/chrome/app/strings/resources/ios_strings_kn.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_kn.xtb
@@ -775,6 +775,7 @@ <translation id="7400418766976504921">URL</translation> <translation id="7409985198648820906"><ph name="UNREAD_COUNT" /> ಓದದಿರುವ ಲೇಖನಗಳು.</translation> <translation id="7412027924265291969">ಮುಂದುವರಿಸಿ</translation> +<translation id="7419565702166471774">ಯಾವಾಗಲೂ ಸುರಕ್ಷಿತವಾದ ಕನೆಕ್ಷನ್ಗಳನ್ನು ಬಳಸಿ</translation> <translation id="7425346204213733349">ನಿಮ್ಮ ಬುಕ್ಮಾರ್ಕ್ಗಳು, ಇತಿಹಾಸ, ಪಾಸ್ವರ್ಡ್ಗಳು ಮತ್ತು ಇತರ ಸೆಟ್ಟಿಂಗ್ಗಳಲ್ಲಿ ಮಾಡಲಾಗುವ ಬದಲಾವಣೆಗಳನ್ನು ಇನ್ನು ಮುಂದೆ ನಿಮ್ಮ Google ಖಾತೆಯಲ್ಲಿ ಸಿಂಕ್ ಮಾಡಲಾಗುವುದಿಲ್ಲ. ಆದಾಗ್ಯೂ, ನಿಮ್ಮ ಪ್ರಸ್ತುತ ಡೇಟಾ ನಿಮ್ಮ Google ಖಾತೆಯಲ್ಲಿ ಸಂಗ್ರಹವಾಗಿಯೇ ಇರುತ್ತದೆ.</translation> <translation id="7431991332293347422">ಹುಡುಕಾಟ ಮತ್ತು ಇನ್ನೂ ಹೆಚ್ಚಿನವುಗಳನ್ನು ವೈಯಕ್ತೀಕರಿಸಲು ನಿಮ್ಮ ಬ್ರೌಸಿಂಗ್ ಇತಿಹಾಸವನ್ನು ಹೇಗೆ ಬಳಸಲಾಗುತ್ತದೆ ಎಂಬುದನ್ನು ನಿಯಂತ್ರಿಸಿ</translation> <translation id="7435356471928173109">ನಿಮ್ಮ ನಿರ್ವಾಹಕರು ಆಫ್ ಮಾಡಿದ್ದಾರೆ</translation> @@ -814,7 +815,6 @@ <translation id="7781069478569868053">ಹೊಸ ಟ್ಯಾಬ್ ಪುಟ</translation> <translation id="7781829728241885113">ನಿನ್ನೆ</translation> <translation id="778855399387580014">ಹೊಸ Chrome ಟ್ಯಾಬ್ನಲ್ಲಿ ಹುಡುಕಾಟವನ್ನು ಪ್ರಾರಂಭಿಸಿ.</translation> -<translation id="7790892308048519147">ಸುರಕ್ಷಿತವಾದ ಕನೆಕ್ಷನ್ಗಳನ್ನು ಬಳಸಿ ನೋಡಿ</translation> <translation id="7791543448312431591">ಸೇರಿಸು</translation> <translation id="7807060072011926525">Google ಮೂಲಕ ಒದಗಿಸಲಾಗಿದೆ</translation> <translation id="7839985698273989086">ಆಫ್ಲೈನ್ ಪುಟ</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_ko.xtb b/ios/chrome/app/strings/resources/ios_strings_ko.xtb index 57b616f..b48745f 100644 --- a/ios/chrome/app/strings/resources/ios_strings_ko.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_ko.xtb
@@ -775,6 +775,7 @@ <translation id="7400418766976504921">URL</translation> <translation id="7409985198648820906">읽지 않은 기사 <ph name="UNREAD_COUNT" />개 있음</translation> <translation id="7412027924265291969">계속</translation> +<translation id="7419565702166471774">항상 보안 연결 사용</translation> <translation id="7425346204213733349">북마크, 방문 기록, 비밀번호, 기타 설정이 더 이상 Google 계정에 동기화되지 않습니다. 하지만 기존 데이터는 Google 계정에 계속 저장됩니다.</translation> <translation id="7431991332293347422">검색 등을 맞춤설정하는 데 인터넷 방문 기록이 사용되는 방식 관리</translation> <translation id="7435356471928173109">관리자가 사용 중지했습니다.</translation> @@ -814,7 +815,6 @@ <translation id="7781069478569868053">새 탭 페이지</translation> <translation id="7781829728241885113">어제</translation> <translation id="778855399387580014">새 Chrome 탭에서 검색을 시작합니다.</translation> -<translation id="7790892308048519147">안전한 연결 사용 시도</translation> <translation id="7791543448312431591">추가</translation> <translation id="7807060072011926525">Google 제공</translation> <translation id="7839985698273989086">오프라인 페이지</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_ky.xtb b/ios/chrome/app/strings/resources/ios_strings_ky.xtb index dfd2809e..fd6fd3a 100644 --- a/ios/chrome/app/strings/resources/ios_strings_ky.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_ky.xtb
@@ -775,6 +775,7 @@ <translation id="7400418766976504921">URL</translation> <translation id="7409985198648820906"><ph name="UNREAD_COUNT" /> окула элек макала.</translation> <translation id="7412027924265291969">Улантуу</translation> +<translation id="7419565702166471774">Ар дайым коопсуз туташуулар колдонулсун</translation> <translation id="7425346204213733349">Кыстармаларыңызга, таржымалыңызга, сырсөздөрүңүзгө жана башка жөндөөлөргө киргизилген өзгөрүүлөр Google Аккаунтуңуз менен шайкештирилбейт. Ал эми учурдагы дайын-даректериңиз Google Аккаунтуңузде сакталып кала берет.</translation> <translation id="7431991332293347422">Издөөнү жана башка кызматтарды жекечелештирүү үчүн серептөө таржымалыңыз кандайча пайдаланыларын көзөмөлдөңүз</translation> <translation id="7435356471928173109">Администраторуңуз өчүрүп койду</translation> @@ -814,7 +815,6 @@ <translation id="7781069478569868053">Жаңы өтмөк бети</translation> <translation id="7781829728241885113">Кечээ</translation> <translation id="778855399387580014">Chrome'дун жаңы өтмөгүндө издеңиз.</translation> -<translation id="7790892308048519147">Коопсуз туташып көрүңүз</translation> <translation id="7791543448312431591">Кошуу</translation> <translation id="7807060072011926525">Google сунуштайт</translation> <translation id="7839985698273989086">Оффлайн барак</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_lo.xtb b/ios/chrome/app/strings/resources/ios_strings_lo.xtb index 6807eb2..ccd95c29 100644 --- a/ios/chrome/app/strings/resources/ios_strings_lo.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_lo.xtb
@@ -775,6 +775,7 @@ <translation id="7400418766976504921">URL</translation> <translation id="7409985198648820906"><ph name="UNREAD_COUNT" /> ບົດຄວາມທີ່ຍັງບໍ່ໄດ້ອ່ານ.</translation> <translation id="7412027924265291969">ສືບຕໍ່</translation> +<translation id="7419565702166471774">ໃຊ້ການເຊື່ອມຕໍ່ທີ່ປອດໄພທຸກເທື່ອ</translation> <translation id="7425346204213733349">ການປ່ຽນແປງຕໍ່ກັບບຸກມາກ, ປະຫວັດ, ລະຫັດຜ່ານ ແລະ ການຕັ້ງຄ່າອື່ນຂອງທ່ານຈະບໍ່ຖືກຊິ້ງກັບບັນຊີ Google ຂອງທ່ານອີກຕໍ່ໄປ. ແນວໃດກໍຕາມ, ຂໍ້ມູນທີ່ມີຢູ່ຂອງທ່ານຈະຍັງຄົງເກັບຮັກສາໄວ້ໃນບັນຊີ Google ຂອງທ່ານ.</translation> <translation id="7431991332293347422">ຄວບຄຸມວ່າຈະໃຫ້ໃຊ້ປະຫວັດການທ່ອງເວັບຂອງທ່ານແນວໃດເພື່ອປັບແຕ່ງການຊອກຫາ ແລະ ອື່ນໆອີກໃຫ້ເປັນແບບສ່ວນຕົວ</translation> <translation id="7435356471928173109">ປິດໄວ້ໂດຍຜູ້ເບິ່ງແຍງລະບົບຂອງທ່ານ</translation> @@ -814,7 +815,6 @@ <translation id="7781069478569868053">ໜ້າແຖບໃໝ່</translation> <translation id="7781829728241885113">ມື້ວານນີ້</translation> <translation id="778855399387580014">ເລີ່ມການຊອກຫາໃນແຖບ Chrome ໃໝ່.</translation> -<translation id="7790892308048519147">ໃຫ້ລອງໃຊ້ການເຊື່ອມຕໍ່ທີ່ປອດໄພ</translation> <translation id="7791543448312431591">ເພີ່ມ</translation> <translation id="7807060072011926525">ສະໜອງໃຫ້ໂດຍ Google</translation> <translation id="7839985698273989086">ໜ້າອອບລາຍ</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_lt.xtb b/ios/chrome/app/strings/resources/ios_strings_lt.xtb index 5256fe22..0a4f9df2 100644 --- a/ios/chrome/app/strings/resources/ios_strings_lt.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_lt.xtb
@@ -329,6 +329,7 @@ <translation id="3775743491439407556">Sinchronizavimas neveikia</translation> <translation id="3779810277399252432">Nėra interneto ryšio.</translation> <translation id="3783017676699494206">Išsaugoti vaizdą</translation> +<translation id="3789294999358192700">Atlikite toliau nurodytus veiksmus.</translation> <translation id="3789841737615482174">Įdiegti</translation> <translation id="380329542618494757">Vardas ir pavardė</translation> <translation id="3803696231112616155">Siūlyti versti šią svetainę</translation> @@ -775,6 +776,7 @@ <translation id="7400418766976504921">URL adresas</translation> <translation id="7409985198648820906">Neskaitytų straipsnių: <ph name="UNREAD_COUNT" />.</translation> <translation id="7412027924265291969">Tęsti</translation> +<translation id="7419565702166471774">Visada naudoti saugų ryšį</translation> <translation id="7425346204213733349">Žymių, istorijos, slaptažodžių ir kitų nustatymų pakeitimai nebebus sinchronizuojami su „Google“ paskyra. Tačiau esami duomenys ir toliau bus saugomi „Google“ paskyroje.</translation> <translation id="7431991332293347422">Naršymo istorijos naudojimo paieškai ir kitoms funkcijoms suasmeninti valdymas</translation> <translation id="7435356471928173109">Išjungė jūsų administratorius</translation> @@ -814,7 +816,6 @@ <translation id="7781069478569868053">Naujo skirtuko puslapis</translation> <translation id="7781829728241885113">Vakar</translation> <translation id="778855399387580014">Pradėti paiešką naujame „Chrome“ skirtuke.</translation> -<translation id="7790892308048519147">Stenkitės naudoti saugius ryšius</translation> <translation id="7791543448312431591">Pridėti</translation> <translation id="7807060072011926525">Pateikė „Google“</translation> <translation id="7839985698273989086">Neprisijungus pasiekiamas puslapis</translation> @@ -942,6 +943,7 @@ <translation id="8870413625673593573">Neseniai uždaryta</translation> <translation id="8876882697946675716">Įrenginių sinchronizavimas</translation> <translation id="8881801611828450202">Ieškoti „<ph name="SEARCH_ENGINE" />“ šio vaizdo</translation> +<translation id="8891935667620843985">Galite automatiškai atidaryti nuorodas naršyklėje „Chrome“, nustatę ją kaip numatytąją naršyklės programą.</translation> <translation id="8898822736010347272">„Google“ siunčiami kai kurių lankomų puslapių URL, ribota sistemos informacija ir kai kurių puslapių turinys, kad būtų galima aptikti naujas grėsmes ir apsaugoti visus žiniatinklio naudotojus.</translation> <translation id="8909135823018751308">Bendrinti…</translation> <translation id="8917490105272468696">Taip, sutinku</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_lv.xtb b/ios/chrome/app/strings/resources/ios_strings_lv.xtb index a4fdb285..e9f813d 100644 --- a/ios/chrome/app/strings/resources/ios_strings_lv.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_lv.xtb
@@ -775,6 +775,7 @@ <translation id="7400418766976504921">URL</translation> <translation id="7409985198648820906">Nelasīti raksti: <ph name="UNREAD_COUNT" />.</translation> <translation id="7412027924265291969">Turpināt</translation> +<translation id="7419565702166471774">Vienmēr izmantot drošus savienojumus</translation> <translation id="7425346204213733349">Grāmatzīmju, vēstures, paroļu un citu iestatījumu izmaiņas vairs netiks sinhronizētas ar jūsu Google kontu. Tomēr esošie dati joprojām tiks glabāti jūsu Google kontā.</translation> <translation id="7431991332293347422">Kontrolējiet, kā jūsu pārlūkošanas vēsture tiek izmantota Meklēšanas un cita satura personalizēšanai</translation> <translation id="7435356471928173109">Izslēdza jūsu administrators</translation> @@ -814,7 +815,6 @@ <translation id="7781069478569868053">Jaunas cilnes lapa</translation> <translation id="7781829728241885113">Vakar</translation> <translation id="778855399387580014">Meklējiet jaunā Chrome cilnē.</translation> -<translation id="7790892308048519147">Mēģināt izmantot drošus savienojumus</translation> <translation id="7791543448312431591">Pievienot</translation> <translation id="7807060072011926525">Nodrošina Google</translation> <translation id="7839985698273989086">Bezsaistes lapa</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_mk.xtb b/ios/chrome/app/strings/resources/ios_strings_mk.xtb index 2344baa..5eaf3dc3 100644 --- a/ios/chrome/app/strings/resources/ios_strings_mk.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_mk.xtb
@@ -775,6 +775,7 @@ <translation id="7400418766976504921">URL</translation> <translation id="7409985198648820906"><ph name="UNREAD_COUNT" /> непрочитани статии.</translation> <translation id="7412027924265291969">Продолжи</translation> +<translation id="7419565702166471774">Секогаш користи безбедни врски</translation> <translation id="7425346204213733349">Промените во обележувачите, историјата, лозинките и другите поставки нема веќе да се синхронизираат со вашата сметка на Google. Како и да е, постоечките податоци ќе останат зачувани на сметката на Google.</translation> <translation id="7431991332293347422">Контролирајте како вашата историја на прелистување се користи за персонализирање на „Пребарувањето“ и друго</translation> <translation id="7435356471928173109">Исклучено од администраторот</translation> @@ -814,7 +815,6 @@ <translation id="7781069478569868053">Страница во нова картичка</translation> <translation id="7781829728241885113">Вчера</translation> <translation id="778855399387580014">Започнете пребарување во нова картичка на Chrome.</translation> -<translation id="7790892308048519147">Пробајте да користите безбедни врски</translation> <translation id="7791543448312431591">Додај</translation> <translation id="7807060072011926525">Обезбедено од Google</translation> <translation id="7839985698273989086">Офлајн страница</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_ml.xtb b/ios/chrome/app/strings/resources/ios_strings_ml.xtb index 3770b2df..e27acd6 100644 --- a/ios/chrome/app/strings/resources/ios_strings_ml.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_ml.xtb
@@ -775,6 +775,7 @@ <translation id="7400418766976504921">URL</translation> <translation id="7409985198648820906">വായിക്കാത്ത <ph name="UNREAD_COUNT" /> ലേഖനങ്ങൾ.</translation> <translation id="7412027924265291969">തുടരുക</translation> +<translation id="7419565702166471774">എല്ലായ്പ്പോഴും സുരക്ഷിതമായ കണക്ഷനുകൾ ഉപയോഗിക്കുക</translation> <translation id="7425346204213733349">ബുക്ക്മാർക്കുകൾ, ചരിത്രം, പാസ്വേഡുകൾ, മറ്റ് ക്രമീകരണം എന്നിവയിലുള്ള മാറ്റങ്ങളെ ഇനി നിങ്ങളുടെ Google അക്കൗണ്ടിലേക്ക് സമന്വയിപ്പിക്കില്ല. എന്നിരുന്നാലും, നിങ്ങളുടെ നിലവിലെ വിവരം Google അക്കൗണ്ടിൽ തുടർന്നും സൂക്ഷിക്കും.</translation> <translation id="7431991332293347422">തിരയലും മറ്റും വ്യക്തിപരമാക്കുന്നതിന് നിങ്ങളുടെ ബ്രൗസിംഗ് ചരിത്രം ഉപയോഗിക്കുന്ന വിധം നിയന്ത്രിക്കുക</translation> <translation id="7435356471928173109">നിങ്ങളുടെ അഡ്മിൻ ഓഫാക്കിയിരിക്കുന്നു</translation> @@ -814,7 +815,6 @@ <translation id="7781069478569868053">പുതിയ ടാബ് പേജ്</translation> <translation id="7781829728241885113">ഇന്നലെ</translation> <translation id="778855399387580014">പുതിയ Chrome ടാബിൽ തിരയൽ ആരംഭിക്കുക.</translation> -<translation id="7790892308048519147">സുരക്ഷിത കണക്ഷനുകൾ ഉപയോഗിക്കാൻ ശ്രമിക്കുക</translation> <translation id="7791543448312431591">ചേര്ക്കൂ</translation> <translation id="7807060072011926525">Google നൽകുന്നത്</translation> <translation id="7839985698273989086">പേജ് ഓഫ്ലൈനാണ്</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_mn.xtb b/ios/chrome/app/strings/resources/ios_strings_mn.xtb index 4fca45e..3e59aa9 100644 --- a/ios/chrome/app/strings/resources/ios_strings_mn.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_mn.xtb
@@ -774,6 +774,7 @@ <translation id="7400418766976504921">URL</translation> <translation id="7409985198648820906">Уншаагүй <ph name="UNREAD_COUNT" /> нийтлэл.</translation> <translation id="7412027924265291969">Үргэлжлүүлэх</translation> +<translation id="7419565702166471774">Үргэлж аюулгүй холболт ашиглана</translation> <translation id="7425346204213733349">Таны хавчуурга, түүх, нууц үг, бусад тохиргоонд хийсэн өөрчлөлтийг цаашид таны Google Бүртгэлд синк хийхгүй. Харин таны одоо байгаа өгөгдлийг Google бүртгэлд хадгалах болно.</translation> <translation id="7431991332293347422">Таны хайлтын түүх Хайлт болон бусад зүйлийг хувийн болгоход хэрхэн ашигладгийг хянах</translation> <translation id="7435356471928173109">Танай администратор идэвхгүй болгосон</translation> @@ -813,7 +814,6 @@ <translation id="7781069478569868053">Цонх нээх хуудас</translation> <translation id="7781829728241885113">Өчигдөр</translation> <translation id="778855399387580014">Хайлтыг Chrome-н шинэ табад эхлүүлнэ үү.</translation> -<translation id="7790892308048519147">Аюулгүй холболт ашиглахаар оролдоно уу</translation> <translation id="7791543448312431591">Нэмэх</translation> <translation id="7807060072011926525">Google-с олгосон</translation> <translation id="7839985698273989086">Офлайн хуудас</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_mr.xtb b/ios/chrome/app/strings/resources/ios_strings_mr.xtb index bbe3b2a..0816828 100644 --- a/ios/chrome/app/strings/resources/ios_strings_mr.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_mr.xtb
@@ -777,6 +777,7 @@ <translation id="7400418766976504921">URL</translation> <translation id="7409985198648820906">न वाचलेले <ph name="UNREAD_COUNT" /> लेख.</translation> <translation id="7412027924265291969">पुढे सुरू ठेवा</translation> +<translation id="7419565702166471774">नेहमी सुरक्षित कनेक्शन वापरा</translation> <translation id="7425346204213733349">तुमचे बुकमार्क, इतिहास, पासवर्ड आणि अन्य सेटिंग्ज मधील बदल यापुढे आपल्या Google खात्यावर संकालित केले जाणार नाहीत. तथापि, तुमचा विद्यमान डेटा आपल्या Google खात्यामध्ये संचयित केलेला असेल.</translation> <translation id="7431991332293347422">शोध पर्सनलाइझ करण्यासाठी तुमचा ब्राउझिंग इतिहास कसा वापरला जातो ते आणि बरेच काही नियंत्रित करा</translation> <translation id="7435356471928173109">तुमच्या अॅडमिनिस्ट्रेटरने बंद केले</translation> @@ -816,7 +817,6 @@ <translation id="7781069478569868053">नवीन टॅब पृष्ठ</translation> <translation id="7781829728241885113">काल</translation> <translation id="778855399387580014">एका नवीन Chrome टॅबमध्ये शोध सुरू करा.</translation> -<translation id="7790892308048519147">सुरक्षित कनेक्शन वापरण्याचा प्रयत्न करा</translation> <translation id="7791543448312431591">जोडा</translation> <translation id="7807060072011926525">Google द्वारे पुरवलेली</translation> <translation id="7839985698273989086">ऑफलाइन पेज</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_ms.xtb b/ios/chrome/app/strings/resources/ios_strings_ms.xtb index b80f8de..6149b66 100644 --- a/ios/chrome/app/strings/resources/ios_strings_ms.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_ms.xtb
@@ -775,6 +775,7 @@ <translation id="7400418766976504921">URL</translation> <translation id="7409985198648820906"><ph name="UNREAD_COUNT" /> artikel belum dibaca.</translation> <translation id="7412027924265291969">Teruskan</translation> +<translation id="7419565702166471774">Sentiasa gunakan sambungan selamat</translation> <translation id="7425346204213733349">Perubahan kepada penanda halaman, sejarah, kata laluan dan tetapan anda yang lain tidak akan disegerakkan ke Akaun Google anda lagi. Walau bagaimanapun, data sedia ada akan kekal disimpan dalam Akaun Google anda.</translation> <translation id="7431991332293347422">Kawal cara sejarah penyemakan imbas anda digunakan untuk memperibadikan Carian dan pelbagai lagi</translation> <translation id="7435356471928173109">Dimatikan oleh pentadbir anda</translation> @@ -814,7 +815,6 @@ <translation id="7781069478569868053">Halaman Tab Baharu</translation> <translation id="7781829728241885113">Semalam</translation> <translation id="778855399387580014">Mulakan carian dalam tab Chrome baharu.</translation> -<translation id="7790892308048519147">Cuba gunakan sambungan selamat</translation> <translation id="7791543448312431591">Tambah</translation> <translation id="7807060072011926525">Disediakan oleh Google</translation> <translation id="7839985698273989086">Halaman Luar Talian</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_my.xtb b/ios/chrome/app/strings/resources/ios_strings_my.xtb index 5103db8..efcc558 100644 --- a/ios/chrome/app/strings/resources/ios_strings_my.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_my.xtb
@@ -329,6 +329,7 @@ <translation id="3775743491439407556">စင့်ခ်လုပ်၍ မရပါ</translation> <translation id="3779810277399252432">အင်တာနက် ချိတ်ဆက်မှု မရှိပါ။</translation> <translation id="3783017676699494206">ရုပ်ပုံသိမ်းဆည်းမည်။</translation> +<translation id="3789294999358192700">အောက်ပါအဆင့်များအတိုင်း လုပ်ဆောင်ပါ-</translation> <translation id="3789841737615482174">တပ်ဆင်ရန်</translation> <translation id="380329542618494757">အမည်</translation> <translation id="3803696231112616155">ဤဝဘ်ဆိုက်ကို ဘာသာပြန်ရန် ကမ်းလှမ်းချက်</translation> @@ -774,6 +775,7 @@ <translation id="7400418766976504921">URL</translation> <translation id="7409985198648820906">မဖတ်ရသေးသော ဆောင်းပါး <ph name="UNREAD_COUNT" /> ခု။</translation> <translation id="7412027924265291969">ရှေ့ဆက်ရန်</translation> +<translation id="7419565702166471774">လုံခြုံသော ချိတ်ဆက်မှုများ အမြဲသုံးရန်</translation> <translation id="7425346204213733349">သင့်စာညှပ်များ၊ မှတ်တမ်း၊ စကားဝှက်များနှင့် အခြားဆက်တင်များအပေါ် ပြောင်းလဲခြင်းများကို သင့် Google Account သို့စင့်ခ်လုပ်တော့မည် မဟုတ်ပါ။ သို့သော်၊ သင့်လက်ရှိဒေတာများကိုတော့ သင့် Google Account တွင်ဆက်လက်သိမ်းဆည်းထားပါမည်။</translation> <translation id="7431991332293347422">Search နှင့် အခြားအရာများကို ပုဂ္ဂိုလ်ရေးသီးသန့် သတ်မှတ်ရန်အတွက် အသုံးပြုမှုမှတ်တမ်းအား မည်သို့အသုံးချကြောင်း ထိန်းချုပ်ပါ</translation> <translation id="7435356471928173109">သင်၏စီမံခန့်ခွဲသူက ပိတ်ထားသည်</translation> @@ -813,7 +815,6 @@ <translation id="7781069478569868053">တဘ် စာမျက်နှာ အသစ်</translation> <translation id="7781829728241885113">မနေ့က</translation> <translation id="778855399387580014">Chrome တဘ်အသစ်တွင် ရှာဖွေမှု စတင်ပါ။</translation> -<translation id="7790892308048519147">လုံခြုံသည့်ချိတ်ဆက်မှုများကို သုံးကြည့်ပါ</translation> <translation id="7791543448312431591">ထည့်ရန်</translation> <translation id="7807060072011926525">Google က ပံ့ပိုးထားသည်</translation> <translation id="7839985698273989086">အော့ဖ်လိုင်း စာမျက်နှာ</translation> @@ -941,6 +942,7 @@ <translation id="8870413625673593573">မကြာမီက ပိတ်ခဲ့</translation> <translation id="8876882697946675716">သင့်စက်များကို စင့်ခ်လုပ်ထားခြင်း</translation> <translation id="8881801611828450202">ဤရုပ်ပုံကို <ph name="SEARCH_ENGINE" /> တွင်ရှာရန်</translation> +<translation id="8891935667620843985">Chrome ကို ‘မူရင်းဘရောင်ဇာအက်ပ်’ အဖြစ် သတ်မှတ်ပြီး ၎င်းဖြင့် လင့်ခ်များကို အလိုအလျောက် ဖွင့်နိုင်သည်။</translation> <translation id="8898822736010347272">အန္တရာယ်အသစ်များ ရှာဖွေရာ၌ အထောက်အကူဖြစ်စေရန်နှင့် ဝဘ်ပေါ်ရှိလူတိုင်းကို ကာကွယ်ရန် သင်ဝင်ကြည့်သည့် အချို့ဝဘ်ဆိုက်များ၏ URL များ၊ ကန့်သတ်ထားသည့် စနစ်အချက်အလက်များနှင့် အချို့သော ဝဘ်ဆိုက်ပါအကြောင်းအရာတို့ကို Google သို့ ပို့သည်။</translation> <translation id="8909135823018751308">ၐေမျှရန်...</translation> <translation id="8917490105272468696">သဘောတူပါသည်</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_ne.xtb b/ios/chrome/app/strings/resources/ios_strings_ne.xtb index 2a0a398..18d847b 100644 --- a/ios/chrome/app/strings/resources/ios_strings_ne.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_ne.xtb
@@ -775,6 +775,7 @@ <translation id="7400418766976504921">URL</translation> <translation id="7409985198648820906"><ph name="UNREAD_COUNT" /> वटा नपढिएका लेखहरू।</translation> <translation id="7412027924265291969">जारी राख्नुहोस्</translation> +<translation id="7419565702166471774">सधैँ सुरक्षित कनेक्सन प्रयोग गरियोस्</translation> <translation id="7425346204213733349">तपाईँका पुस्तक चिन्ह, इतिहास, पासवर्ड र अन्य सेटिङहरूका परिवर्तनहरू अब उप्रान्त तपाईँको Google खातामा सिंक हुने छैनन्। तैपनि तपाईँको विद्यमान डेटा तपाईँको Google खातामा भण्डारण गरिएको अवस्थामा रहिरहनेछ।</translation> <translation id="7431991332293347422">खोज र थप कुराहरू वैयक्तीकृत गर्ने प्रयोजनका लागि तपाईंको ब्राउजिङ इतिहासको प्रयोग गरिने तरिका नियन्त्रण गर्नुहोस्</translation> <translation id="7435356471928173109">तपाईंका एड्मिनले अफ गर्नुभएको</translation> @@ -814,7 +815,6 @@ <translation id="7781069478569868053">नयाँ ट्याब पृष्ठ</translation> <translation id="7781829728241885113">हिजो</translation> <translation id="778855399387580014">Chrome को नयाँ ट्याबमा खोज सुरु गर्नुहोस्।</translation> -<translation id="7790892308048519147">सुरक्षित कनेक्सन प्रयोग गर्ने प्रयास गरियोस्</translation> <translation id="7791543448312431591">थप्नुहोस्</translation> <translation id="7807060072011926525">Google ले प्रदान गरेको</translation> <translation id="7839985698273989086">अफलाइन पृष्ठ</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_nl.xtb b/ios/chrome/app/strings/resources/ios_strings_nl.xtb index a6a842f4..1a85920 100644 --- a/ios/chrome/app/strings/resources/ios_strings_nl.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_nl.xtb
@@ -775,6 +775,7 @@ <translation id="7400418766976504921">URL</translation> <translation id="7409985198648820906"><ph name="UNREAD_COUNT" /> ongelezen artikelen.</translation> <translation id="7412027924265291969">Doorgaan</translation> +<translation id="7419565702166471774">Altijd beveiligde verbindingen gebruiken</translation> <translation id="7425346204213733349">Wijzigingen in je bookmarks, geschiedenis, wachtwoorden en andere instellingen worden niet meer gesynchroniseerd met je Google-account. Je bestaande gegevens blijven echter opgeslagen in je Google-account.</translation> <translation id="7431991332293347422">Beheren hoe je browsegeschiedenis wordt gebruikt om Google Zoeken en meer te personaliseren</translation> <translation id="7435356471928173109">Uitgezet door je beheerder</translation> @@ -814,7 +815,6 @@ <translation id="7781069478569868053">Pagina 'Nieuw tabblad'</translation> <translation id="7781829728241885113">Gisteren</translation> <translation id="778855399387580014">Start een zoekopdracht op een nieuw Chrome-tabblad.</translation> -<translation id="7790892308048519147">Beveiligde verbindingen gebruiken</translation> <translation id="7791543448312431591">Toevoegen</translation> <translation id="7807060072011926525">Geleverd door Google</translation> <translation id="7839985698273989086">Offline pagina</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_no.xtb b/ios/chrome/app/strings/resources/ios_strings_no.xtb index b957d40..b1902c7dc 100644 --- a/ios/chrome/app/strings/resources/ios_strings_no.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_no.xtb
@@ -775,6 +775,7 @@ <translation id="7400418766976504921">Nettadresse</translation> <translation id="7409985198648820906"><ph name="UNREAD_COUNT" /> uleste artikler.</translation> <translation id="7412027924265291969">Fortsett</translation> +<translation id="7419565702166471774">Bruk alltid sikre tilkoblinger</translation> <translation id="7425346204213733349">Endringer i bokmerkene, loggoppføringene, passordene og de andre innstillingene dine blir ikke synkronisert med Google-kontoen din lenger. Data som allerede er lagret i Google-kontoen din, blir imidlertid ikke fjernet.</translation> <translation id="7431991332293347422">Kontrollér hvordan nettleserloggen din brukes til blant annet personlig tilpasning av søk</translation> <translation id="7435356471928173109">Slått av av administratoren din</translation> @@ -814,7 +815,6 @@ <translation id="7781069478569868053">Ny fane-siden</translation> <translation id="7781829728241885113">I går</translation> <translation id="778855399387580014">Start et søk i en ny Chrome-fane.</translation> -<translation id="7790892308048519147">Prøv å bruke sikre tilkoblinger</translation> <translation id="7791543448312431591">Legg til</translation> <translation id="7807060072011926525">Levert av Google</translation> <translation id="7839985698273989086">Side utenfor internett</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_or.xtb b/ios/chrome/app/strings/resources/ios_strings_or.xtb index 18f6615e..6d3a35f8 100644 --- a/ios/chrome/app/strings/resources/ios_strings_or.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_or.xtb
@@ -773,6 +773,7 @@ <translation id="7400418766976504921">URL</translation> <translation id="7409985198648820906"><ph name="UNREAD_COUNT" />ଟି ଅପଠିତ ନିବନ୍ଧ।</translation> <translation id="7412027924265291969">ଜାରି ରଖନ୍ତୁ</translation> +<translation id="7419565702166471774">ସର୍ବଦା ସୁରକ୍ଷିତ ସଂଯୋଗ ବ୍ୟବହାର କରନ୍ତୁ</translation> <translation id="7425346204213733349">ଆପଣଙ୍କର ବୁକ୍ମାର୍କ୍ସ, ଇତିବୃତ୍ତି, ପାସ୍ୱାର୍ଡ ଓ ଅନ୍ୟ ସେଟିଂସ୍ ଆଉ ଆପଣଙ୍କର Google ଆକାଉଣ୍ଟରେ ସିଙ୍କ୍ ହେବନାହିଁ। ତଥାପି ଆପଣଙ୍କର ବିଦ୍ୟମାନ ଥିବା ଡାଟା ଆପଣଙ୍କ Google ଆକାଉଣ୍ଟରେ ଷ୍ଟୋର୍ ହେବ।</translation> <translation id="7431991332293347422">Search ଏବଂ ଆହୁରି ଅନେକ କିଛିକୁ ବ୍ୟକ୍ତିଗତକୃତ କରିବା ପାଇଁ ଆପଣଙ୍କର ବ୍ରାଉଜିଂ ଇତିବୃତ୍ତି କିପରି ବ୍ୟବହାର ହେଉଛି ତାହା ନିୟନ୍ତ୍ରଣ କରନ୍ତୁ</translation> <translation id="7435356471928173109">ଆପଣଙ୍କ ଆଡମିନିଷ୍ଟ୍ରେଟରଙ୍କ ଦ୍ୱାରା ବନ୍ଦ କରାଯାଇଛି</translation> @@ -812,7 +813,6 @@ <translation id="7781069478569868053">ନୂଆ ଟାବ୍ ପୃଷ୍ଠା</translation> <translation id="7781829728241885113">ଗତକଲି</translation> <translation id="778855399387580014">ଗୋଟିଏ ନୂଆ Chrome ଟାବ୍ରେ ଏକ ସର୍ଚ୍ଚ କରନ୍ତୁ।</translation> -<translation id="7790892308048519147">ସୁରକ୍ଷିତ କନେକ୍ସନଗୁଡ଼ିକୁ ବ୍ୟବହାର କରିବା ପାଇଁ ଚେଷ୍ଟା କରନ୍ତୁ</translation> <translation id="7791543448312431591">ଯୋଡନ୍ତୁ</translation> <translation id="7807060072011926525">Google ଦ୍ୱାରା ପ୍ରଦାନ କରାଯାଇଛି</translation> <translation id="7839985698273989086">ଅଫଲାଇନ୍ ପୃଷ୍ଠା</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_pa.xtb b/ios/chrome/app/strings/resources/ios_strings_pa.xtb index 89dcc75..ed5337d 100644 --- a/ios/chrome/app/strings/resources/ios_strings_pa.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_pa.xtb
@@ -775,6 +775,7 @@ <translation id="7400418766976504921">URL</translation> <translation id="7409985198648820906"><ph name="UNREAD_COUNT" /> ਨਾ-ਪੜ੍ਹੇ ਲੇਖ।</translation> <translation id="7412027924265291969">ਜਾਰੀ ਰੱਖੋ</translation> +<translation id="7419565702166471774">ਹਮੇਸ਼ਾਂ ਸੁਰੱਖਿਅਤ ਕਨੈਕਸ਼ਨਾਂ ਨੂੰ ਵਰਤੋ</translation> <translation id="7425346204213733349">ਤੁਹਾਡੇ ਬੁੱਕਮਾਰਕਾਂ, ਇਤਿਹਾਸ, ਪਾਸਵਰਡਾਂ, ਅਤੇ ਹੋਰ ਸੈਟਿੰਗਾਂ ਵਿੱਚ ਕੀਤੀਆਂ ਤਬਦੀਲੀਆਂ ਨੂੰ ਹੁਣ ਤੁਹਾਡੇ Google ਖਾਤੇ ਨਾਲ ਸਿੰਕ ਨਹੀਂ ਕੀਤਾ ਜਾਵੇਗਾ। ਜਦਕਿ, ਤੁਹਾਡਾ ਮੌਜੂਦਾ ਡਾਟਾ ਤੁਹਾਡੇ Google ਖਾਤੇ ਵਿੱਚ ਹੀ ਸਟੋਰ ਰਹੇਗਾ।</translation> <translation id="7431991332293347422">'ਖੋਜ' ਅਤੇ ਹੋਰ ਚੀਜ਼ਾਂ ਨੂੰ ਵਿਅਕਤੀਗਤ ਬਣਾਉਣ ਲਈ ਤੁਹਾਡੇ ਬ੍ਰਾਊਜ਼ਿੰਗ ਇਤਿਹਾਸ ਦੇ ਵਰਤੇ ਜਾਣ ਦੇ ਤਰੀਕੇ ਨੂੰ ਕੰਟਰੋਲ ਕਰੋ</translation> <translation id="7435356471928173109">ਤੁਹਾਡੇ ਪ੍ਰਸ਼ਾਸਕ ਵੱਲੋਂ ਬੰਦ ਕੀਤਾ ਗਿਆ</translation> @@ -814,7 +815,6 @@ <translation id="7781069478569868053">ਨਵਾਂ ਟੈਬ ਪੰਨਾ</translation> <translation id="7781829728241885113">ਕੱਲ੍ਹ</translation> <translation id="778855399387580014">ਇੱਕ ਨਵੀਂ Chrome ਟੈਬ ਵਿੱਚ ਕੋਈ ਖੋਜ ਸ਼ੁਰੂ ਕਰੋ।</translation> -<translation id="7790892308048519147">ਸੁਰੱਖਿਅਤ ਕਨੈਕਸ਼ਨ ਵਰਤ ਕੇ ਦੇਖੋ</translation> <translation id="7791543448312431591">ਜੋੜੋ</translation> <translation id="7807060072011926525">Google ਵੱਲੋਂ ਮੁਹੱਈਆ ਕਰਵਾਈ ਗਈ</translation> <translation id="7839985698273989086">ਆਫ਼ਲਾਈਨ ਪੰਨਾ</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_pl.xtb b/ios/chrome/app/strings/resources/ios_strings_pl.xtb index c2266c05..32b7af4 100644 --- a/ios/chrome/app/strings/resources/ios_strings_pl.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_pl.xtb
@@ -329,6 +329,7 @@ <translation id="3775743491439407556">Synchronizacja nie działa</translation> <translation id="3779810277399252432">Brak połączenia z internetem.</translation> <translation id="3783017676699494206">Zapisz obraz</translation> +<translation id="3789294999358192700">Wykonaj te czynności:</translation> <translation id="3789841737615482174">Zainstaluj</translation> <translation id="380329542618494757">Imię i nazwisko</translation> <translation id="3803696231112616155">Proponuj tłumaczenie tej strony</translation> @@ -775,6 +776,7 @@ <translation id="7400418766976504921">Adres URL</translation> <translation id="7409985198648820906">Nieprzeczytane artykuły: <ph name="UNREAD_COUNT" />.</translation> <translation id="7412027924265291969">Dalej</translation> +<translation id="7419565702166471774">Zawsze używaj bezpiecznych połączeń</translation> <translation id="7425346204213733349">Zmiany w zakładkach, historii, hasłach i innych ustawieniach nie będą już synchronizowane z kontem Google. Twoje obecne dane będą jednak nadal na nim przechowywane.</translation> <translation id="7431991332293347422">Zarządzaj personalizacją wyszukiwarki i innych funkcji na podstawie historii przeglądania</translation> <translation id="7435356471928173109">Wyłączył administrator</translation> @@ -814,7 +816,6 @@ <translation id="7781069478569868053">Strona Nowa karta</translation> <translation id="7781829728241885113">Wczoraj</translation> <translation id="778855399387580014">Rozpocznij wyszukiwanie na nowej karcie Chrome.</translation> -<translation id="7790892308048519147">Staraj się używać bezpiecznych połączeń</translation> <translation id="7791543448312431591">Dodaj</translation> <translation id="7807060072011926525">Udostępniany przez Google</translation> <translation id="7839985698273989086">Strona offline</translation> @@ -942,6 +943,7 @@ <translation id="8870413625673593573">Ostatnio zamknięte</translation> <translation id="8876882697946675716">Synchronizacja urządzeń</translation> <translation id="8881801611828450202">Szukaj tego obrazu w: <ph name="SEARCH_ENGINE" /></translation> +<translation id="8891935667620843985">Ustaw Chrome jako przeglądarkę domyślną, aby linki otwierały się w niej automatycznie.</translation> <translation id="8898822736010347272">Wysyła do Google adresy URL niektórych odwiedzanych przez Ciebie stron, niektóre informacje o systemie i niektóre treści ze stron, by pomóc w wykrywaniu nowych zagrożeń i chronić wszystkich użytkowników internetu.</translation> <translation id="8909135823018751308">Udostępnij…</translation> <translation id="8917490105272468696">Tak, zgadzam się</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_pt-BR.xtb b/ios/chrome/app/strings/resources/ios_strings_pt-BR.xtb index bf1ef04..7220fb7 100644 --- a/ios/chrome/app/strings/resources/ios_strings_pt-BR.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_pt-BR.xtb
@@ -775,6 +775,7 @@ <translation id="7400418766976504921">URL</translation> <translation id="7409985198648820906"><ph name="UNREAD_COUNT" /> artigos não lidos.</translation> <translation id="7412027924265291969">Continuar</translation> +<translation id="7419565702166471774">Sempre usar conexões seguras</translation> <translation id="7425346204213733349">Alterações feitas nos seus favoritos, histórico, senhas e outras configurações não serão mais sincronizadas com sua Conta do Google. No entanto, os dados já existentes permanecerão armazenados na Conta do Google.</translation> <translation id="7431991332293347422">Controla como o histórico de navegação é usado para personalizar a Pesquisa e muito mais</translation> <translation id="7435356471928173109">Desativado pelo administrador</translation> @@ -814,7 +815,6 @@ <translation id="7781069478569868053">Página "Nova guia"</translation> <translation id="7781829728241885113">Ontem</translation> <translation id="778855399387580014">Inicie uma pesquisa em uma nova guia do Chrome.</translation> -<translation id="7790892308048519147">Tente usar conexões seguras</translation> <translation id="7791543448312431591">Adicionar</translation> <translation id="7807060072011926525">Fornecido pelo Google</translation> <translation id="7839985698273989086">Página offline</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_pt-PT.xtb b/ios/chrome/app/strings/resources/ios_strings_pt-PT.xtb index 9977eeb64..3c0233a 100644 --- a/ios/chrome/app/strings/resources/ios_strings_pt-PT.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_pt-PT.xtb
@@ -775,6 +775,7 @@ <translation id="7400418766976504921">URL</translation> <translation id="7409985198648820906"><ph name="UNREAD_COUNT" /> artigos não lidos.</translation> <translation id="7412027924265291969">Continuar</translation> +<translation id="7419565702166471774">Usar sempre ligações seguras</translation> <translation id="7425346204213733349">As alterações aos marcadores, ao histórico, às palavras-passe e a outras definições deixam de ser sincronizadas com a Conta Google. Contudo, os dados existentes permanecem armazenados na Conta Google.</translation> <translation id="7431991332293347422">Controle a forma como o histórico de navegação é utilizado para personalizar a Pesquisa e muito mais.</translation> <translation id="7435356471928173109">Desativada pelo seu administrador.</translation> @@ -814,7 +815,6 @@ <translation id="7781069478569868053">Página Novo separador</translation> <translation id="7781829728241885113">Ontem</translation> <translation id="778855399387580014">Inicie uma pesquisa no novo separador do Chrome.</translation> -<translation id="7790892308048519147">Tentar usar ligações seguras</translation> <translation id="7791543448312431591">Adicionar</translation> <translation id="7807060072011926525">Disponibilizados pela Google</translation> <translation id="7839985698273989086">Página offline</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_ro.xtb b/ios/chrome/app/strings/resources/ios_strings_ro.xtb index 6589529b..221c33c 100644 --- a/ios/chrome/app/strings/resources/ios_strings_ro.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_ro.xtb
@@ -775,6 +775,7 @@ <translation id="7400418766976504921">Adresă URL</translation> <translation id="7409985198648820906"><ph name="UNREAD_COUNT" /> articole necitite.</translation> <translation id="7412027924265291969">Continuă</translation> +<translation id="7419565702166471774">Folosește întotdeauna conexiuni securizate</translation> <translation id="7425346204213733349">Modificările marcajelor, istoricului, parolelor sau ale altor setări nu vor mai fi sincronizate cu Contul Google. Totuși, datele existente vor rămâne stocate în Contul Google.</translation> <translation id="7431991332293347422">Controlează modul în care istoricul de navigare este folosit pentru a personaliza Căutarea și alte servicii</translation> <translation id="7435356471928173109">Dezactivată de administrator</translation> @@ -814,7 +815,6 @@ <translation id="7781069478569868053">Pagina Filă nouă</translation> <translation id="7781829728241885113">Ieri</translation> <translation id="778855399387580014">Începe o căutare într-o filă Chrome nouă.</translation> -<translation id="7790892308048519147">Încearcă să folosești conexiuni securizate</translation> <translation id="7791543448312431591">Adaugă</translation> <translation id="7807060072011926525">Oferit de Google</translation> <translation id="7839985698273989086">Pagină offline</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_ru.xtb b/ios/chrome/app/strings/resources/ios_strings_ru.xtb index d67aae5..57d8558a 100644 --- a/ios/chrome/app/strings/resources/ios_strings_ru.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_ru.xtb
@@ -775,6 +775,7 @@ <translation id="7400418766976504921">URL</translation> <translation id="7409985198648820906">Непрочитанных статей: <ph name="UNREAD_COUNT" />.</translation> <translation id="7412027924265291969">Продолжить</translation> +<translation id="7419565702166471774">Всегда использовать безопасные соединения</translation> <translation id="7425346204213733349">Изменения в ваших закладках, паролях, истории и других настройках больше не будут синхронизироваться с аккаунтом Google. Это не повлияет на данные, сохраненные в аккаунте ранее.</translation> <translation id="7431991332293347422">Укажите, как Google может использовать историю браузера для персонализации Поиска и других сервисов.</translation> <translation id="7435356471928173109">Функцию отключил администратор.</translation> @@ -814,7 +815,6 @@ <translation id="7781069478569868053">Страница быстрого доступа</translation> <translation id="7781829728241885113">Вчера</translation> <translation id="778855399387580014">Запускайте поиск в новой вкладке Chrome.</translation> -<translation id="7790892308048519147">Использовать безопасное соединение</translation> <translation id="7791543448312431591">Добавить</translation> <translation id="7807060072011926525">Данные от Google</translation> <translation id="7839985698273989086">Офлайн-версия страницы</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_si.xtb b/ios/chrome/app/strings/resources/ios_strings_si.xtb index 1f02e4a..28df7e2e 100644 --- a/ios/chrome/app/strings/resources/ios_strings_si.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_si.xtb
@@ -775,6 +775,7 @@ <translation id="7400418766976504921">URL</translation> <translation id="7409985198648820906">නොකියවූ ලිපි <ph name="UNREAD_COUNT" /> ක්.</translation> <translation id="7412027924265291969">ඉදිරියට යන්න</translation> +<translation id="7419565702166471774">සෑම විටම ආරක්ෂිත සබැඳුම් භාවිත කරන්න.</translation> <translation id="7425346204213733349">ඔබගේ පිටුසන්, ඉතිහාසය, මුරපද, සහ අනෙකුත් සැකසීම්වලට සිදු කරන වෙනස් කිරීම් ඔබගේ Google ගිණුම වෙත තව දුරටත් සමමුහුර්ත වන්නේ නැත. කෙසේ වෙතත්, ඔබගේ පවතින දත්ත ඔබගේ Google ගිණුමේ ගබඩා කර තිබෙනු ඇත.</translation> <translation id="7431991332293347422">ඔබගේ බ්රවුස් කිරීමේ ඉතිහාසය සෙවීම, සහ තවත් දේ පුද්ගලායන කිරීමට භාවිත කරන ආකාරය පාලන කිරීම</translation> <translation id="7435356471928173109">ඔබේ පරිපාලක විසින් ක්රියාවිරහිත කරන ලදි</translation> @@ -814,7 +815,6 @@ <translation id="7781069478569868053">නව පටිති පිටුව</translation> <translation id="7781829728241885113">ඊයේ</translation> <translation id="778855399387580014">නව Chrome පටිත්තක් තුළ සෙවීම ආරම්භ කරන්න.</translation> -<translation id="7790892308048519147">ආරක්ෂිත සම්බන්ධතා භාවිත කිරීමට උත්සාහ කරන්න</translation> <translation id="7791543448312431591">එක් කරන්න</translation> <translation id="7807060072011926525">Google විසින් සපයනු ලැබේ</translation> <translation id="7839985698273989086">නොබැඳි පිටුව</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_sk.xtb b/ios/chrome/app/strings/resources/ios_strings_sk.xtb index 02e0cce..2b73eb0 100644 --- a/ios/chrome/app/strings/resources/ios_strings_sk.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_sk.xtb
@@ -775,6 +775,7 @@ <translation id="7400418766976504921">Webová adresa</translation> <translation id="7409985198648820906">Počet neprečítaných článkov: <ph name="UNREAD_COUNT" />.</translation> <translation id="7412027924265291969">Pokračovať</translation> +<translation id="7419565702166471774">Vždy používať zabezpečené pripojenia</translation> <translation id="7425346204213733349">Záložky, história, heslá a ďalšie nastavenia sa už nebudú ďalej synchronizovať do vášho účtu Google. Vaše súčasné údaje však zostanú uložené v účte Google.</translation> <translation id="7431991332293347422">Ovládajte, ako sa história prehliadania používa na prispôsobenie Vyhľadávania a ďalšieho obsahu</translation> <translation id="7435356471928173109">Vypnuté vaším správcom</translation> @@ -814,7 +815,6 @@ <translation id="7781069478569868053">Stránka na novej karte</translation> <translation id="7781829728241885113">Včera</translation> <translation id="778855399387580014">Začnite vyhľadávanie na novej karte Chrome.</translation> -<translation id="7790892308048519147">Pokúsiť sa používať zabezpečené pripojenia</translation> <translation id="7791543448312431591">Pridať</translation> <translation id="7807060072011926525">Poskytuje Google</translation> <translation id="7839985698273989086">Offline stránka</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_sl.xtb b/ios/chrome/app/strings/resources/ios_strings_sl.xtb index c4d3609..3bef4397 100644 --- a/ios/chrome/app/strings/resources/ios_strings_sl.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_sl.xtb
@@ -775,6 +775,7 @@ <translation id="7400418766976504921">URL</translation> <translation id="7409985198648820906">Št. neprebranih člankov: <ph name="UNREAD_COUNT" />.</translation> <translation id="7412027924265291969">Naprej</translation> +<translation id="7419565702166471774">Vedno dovoli varne povezave</translation> <translation id="7425346204213733349">Spremembe zaznamkov, zgodovine, gesel in drugih nastavitev ne bodo več sinhronizirane z Google Računom. Obstoječi podatki bodo še naprej shranjeni v Google Računu.</translation> <translation id="7431991332293347422">Nadziranje, kako se zgodovina brskanja uporabi za prilagajanje Iskanja Google in drugega</translation> <translation id="7435356471928173109">Izklopil skrbnik</translation> @@ -814,7 +815,6 @@ <translation id="7781069478569868053">Nov zavihek s povezavami</translation> <translation id="7781829728241885113">Včeraj</translation> <translation id="778855399387580014">Začnite iskanje na novem Chromovem zavihku.</translation> -<translation id="7790892308048519147">Poskusite uporabiti varne povezave</translation> <translation id="7791543448312431591">Dodaj</translation> <translation id="7807060072011926525">Zagotavlja Google</translation> <translation id="7839985698273989086">Stran brez povezave</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_sq.xtb b/ios/chrome/app/strings/resources/ios_strings_sq.xtb index 1e39dff..943688b7 100644 --- a/ios/chrome/app/strings/resources/ios_strings_sq.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_sq.xtb
@@ -775,6 +775,7 @@ <translation id="7400418766976504921">URL-ja</translation> <translation id="7409985198648820906"><ph name="UNREAD_COUNT" /> artikuj të palexuar.</translation> <translation id="7412027924265291969">Vazhdo</translation> +<translation id="7419565702166471774">Përdor gjithmonë lidhje të sigurta</translation> <translation id="7425346204213733349">Ndryshimet te faqeshënuesit, historiku, fjalëkalimet dhe cilësimet e tjera nuk do të sinkronizohen më te llogaria jote e Google. Sidoqoftë, të dhënat e tua ekzistuese do të qëndrojnë të ruajtura te llogaria jote e Google.</translation> <translation id="7431991332293347422">Kontrollo se si përdoret historiku i shfletimit për të personalizuar "Kërkimin" dhe shumë të tjera</translation> <translation id="7435356471928173109">Çaktivizuar nga administratori yt</translation> @@ -814,7 +815,6 @@ <translation id="7781069478569868053">Faqe e skedës së re</translation> <translation id="7781829728241885113">Dje</translation> <translation id="778855399387580014">Nis një kërkim në një skedë të re Chrome.</translation> -<translation id="7790892308048519147">Provo të përdorësh lidhje të sigurta</translation> <translation id="7791543448312431591">Shtoje</translation> <translation id="7807060072011926525">Ofruar nga Google</translation> <translation id="7839985698273989086">Faqe jashtë linje</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_sr-Latn.xtb b/ios/chrome/app/strings/resources/ios_strings_sr-Latn.xtb index 3fcb942..2d26e98e 100644 --- a/ios/chrome/app/strings/resources/ios_strings_sr-Latn.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_sr-Latn.xtb
@@ -775,6 +775,7 @@ <translation id="7400418766976504921">URL adresa</translation> <translation id="7409985198648820906">Nepročitanih članaka: <ph name="UNREAD_COUNT" />.</translation> <translation id="7412027924265291969">Nastavi</translation> +<translation id="7419565702166471774">Uvek koristi bezbedne veze</translation> <translation id="7425346204213733349">Promene obeleživača, istorije, lozinki i drugih podešavanja se više neće sinhronizovati sa Google nalogom. Međutim, postojeći podaci će ostati sačuvani na Google nalogu.</translation> <translation id="7431991332293347422">Kontrolišite kako se istorija pregledanja koristi za personalizovanje Pretrage i drugih usluga</translation> <translation id="7435356471928173109">Isključio je administrator</translation> @@ -814,7 +815,6 @@ <translation id="7781069478569868053">Stranica nove kartice</translation> <translation id="7781829728241885113">Juče</translation> <translation id="778855399387580014">Započnite pretragu na novoj Chrome kartici.</translation> -<translation id="7790892308048519147">Probaj da koristiš bezbedne veze</translation> <translation id="7791543448312431591">Dodaj</translation> <translation id="7807060072011926525">Pruža Google</translation> <translation id="7839985698273989086">Oflajn stranica</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_sr.xtb b/ios/chrome/app/strings/resources/ios_strings_sr.xtb index e20a9ae..ec6b8f4 100644 --- a/ios/chrome/app/strings/resources/ios_strings_sr.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_sr.xtb
@@ -775,6 +775,7 @@ <translation id="7400418766976504921">URL адреса</translation> <translation id="7409985198648820906">Непрочитаних чланака: <ph name="UNREAD_COUNT" />.</translation> <translation id="7412027924265291969">Настави</translation> +<translation id="7419565702166471774">Увек користи безбедне везе</translation> <translation id="7425346204213733349">Промене обележивача, историје, лозинки и других подешавања се више неће синхронизовати са Google налогом. Међутим, постојећи подаци ће остати сачувани на Google налогу.</translation> <translation id="7431991332293347422">Контролишите како се историја прегледања користи за персонализовање Претраге и других услуга</translation> <translation id="7435356471928173109">Искључио је администратор</translation> @@ -814,7 +815,6 @@ <translation id="7781069478569868053">Страница нове картице</translation> <translation id="7781829728241885113">Јуче</translation> <translation id="778855399387580014">Започните претрагу на новој Chrome картици.</translation> -<translation id="7790892308048519147">Пробај да користиш безбедне везе</translation> <translation id="7791543448312431591">Додај</translation> <translation id="7807060072011926525">Пружа Google</translation> <translation id="7839985698273989086">Офлајн страница</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_sv.xtb b/ios/chrome/app/strings/resources/ios_strings_sv.xtb index fbd8253..2c128d6 100644 --- a/ios/chrome/app/strings/resources/ios_strings_sv.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_sv.xtb
@@ -775,6 +775,7 @@ <translation id="7400418766976504921">Webbadress</translation> <translation id="7409985198648820906"><ph name="UNREAD_COUNT" /> olästa artiklar.</translation> <translation id="7412027924265291969">Fortsätt</translation> +<translation id="7419565702166471774">Använd alltid en säker anslutning</translation> <translation id="7425346204213733349">Ändringar i bokmärken, historik, lösenord och andra inställningar synkroniseras inte längre med ditt Google-konto. Befintlig data fortsätter dock att lagras i Google-kontot.</translation> <translation id="7431991332293347422">Styr hur webbhistoriken får användas för att anpassa Sök med mera</translation> <translation id="7435356471928173109">Inaktiverat av administratören</translation> @@ -814,7 +815,6 @@ <translation id="7781069478569868053">Sidan Ny flik</translation> <translation id="7781829728241885113">Igår</translation> <translation id="778855399387580014">Börja söka på en ny Chrome-flik.</translation> -<translation id="7790892308048519147">Försök att använda säkra anslutningar</translation> <translation id="7791543448312431591">Lägg till</translation> <translation id="7807060072011926525">Tillhandahålls av Google</translation> <translation id="7839985698273989086">Offlinesida</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_sw.xtb b/ios/chrome/app/strings/resources/ios_strings_sw.xtb index daa161c..e789f9a 100644 --- a/ios/chrome/app/strings/resources/ios_strings_sw.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_sw.xtb
@@ -775,6 +775,7 @@ <translation id="7400418766976504921">URL</translation> <translation id="7409985198648820906">Hujasoma makala <ph name="UNREAD_COUNT" />.</translation> <translation id="7412027924265291969">Endelea</translation> +<translation id="7419565702166471774">Tumia miunganisho salama kila wakati</translation> <translation id="7425346204213733349">Mabadiliko kwenye alamisho, historia, manenosiri na mipangilio yako mingine haitasawazishwa tena kwenye Akaunti yako ya Google. Hata hivyo, data yako iliyopo itaendelea kuhifadhiwa katika Akaunti yako ya Google.</translation> <translation id="7431991332293347422">Dhibiti namna historia yako ya kuvinjari inavyotumika kuweka mapendeleo kwenye huduma ya Tafuta na Google na zaidi</translation> <translation id="7435356471928173109">Kimezimwa na msimamizi wako</translation> @@ -814,7 +815,6 @@ <translation id="7781069478569868053">Ukurasa wa Kichupo Kipya</translation> <translation id="7781829728241885113">Jana</translation> <translation id="778855399387580014">Anza kutafuta ukitumia kichupo kipya cha Chrome.</translation> -<translation id="7790892308048519147">Jaribu kutumia miunganisho salama</translation> <translation id="7791543448312431591">Ongeza</translation> <translation id="7807060072011926525">Imetolewa na Google</translation> <translation id="7839985698273989086">Ukurasa wa Nje ya Mtandao</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_ta.xtb b/ios/chrome/app/strings/resources/ios_strings_ta.xtb index 6808b98..4223a38 100644 --- a/ios/chrome/app/strings/resources/ios_strings_ta.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_ta.xtb
@@ -775,6 +775,7 @@ <translation id="7400418766976504921">URL</translation> <translation id="7409985198648820906">படிக்காத கட்டுரைகள் <ph name="UNREAD_COUNT" /> உள்ளன.</translation> <translation id="7412027924265291969">தொடர்க</translation> +<translation id="7419565702166471774">பாதுகாப்பான இணைப்புகளை எப்போதும் பயன்படுத்து</translation> <translation id="7425346204213733349">புத்தகக்குறிகள், வரலாறு, கடவுச்சொற்கள் ஆகியவற்றிலும் பிற அமைப்புகளிலும் செய்யும் மாற்றங்கள், இனி உங்கள் Google கணக்குடன் ஒத்திசைக்கப்படாது. எனினும், ஏற்கனவே சேமிக்கப்பட்ட உங்கள் தரவு Google கணக்கில் அப்படியே இருக்கும்.</translation> <translation id="7431991332293347422">தேடல் மற்றும் பலவற்றைத் தனிப்பயனாக்க உங்கள் உலாவல் வரலாறு எப்படிப் பயன்படுத்தப்படுகிறது என்பதைக் கட்டுப்படுத்தலாம்</translation> <translation id="7435356471928173109">உங்கள் நிர்வாகி முடக்கியுள்ளார்</translation> @@ -814,7 +815,6 @@ <translation id="7781069478569868053">புதிய தாவல் பக்கம்</translation> <translation id="7781829728241885113">நேற்று</translation> <translation id="778855399387580014">புதிய Chrome தாவலில் தேடலைத் தொடங்கும்.</translation> -<translation id="7790892308048519147">பாதுகாப்பான இணைப்புகளைப் பயன்படுத்த முயலுங்கள்</translation> <translation id="7791543448312431591">சேர்</translation> <translation id="7807060072011926525">Google வழங்கியது</translation> <translation id="7839985698273989086">ஆஃப்லைன் பக்கம்</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_te.xtb b/ios/chrome/app/strings/resources/ios_strings_te.xtb index a50950f..4dab48b 100644 --- a/ios/chrome/app/strings/resources/ios_strings_te.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_te.xtb
@@ -33,7 +33,7 @@ <translation id="1165039591588034296">ఎర్రర్</translation> <translation id="1172898394251786223">తర్వాతి ఫీల్డ్</translation> <translation id="1176932207622159128">చిత్రాన్ని సేవ్ చేయడం సాధ్యపడలేదు</translation> -<translation id="1181037720776840403">తీసివేయి</translation> +<translation id="1181037720776840403">తీసివేయండి</translation> <translation id="1207113853726624428">కొత్త శోధన</translation> <translation id="1209206284964581585">ప్రస్తుతానికి దాచు</translation> <translation id="1219674500290482172">ఇంటర్నెట్కు కనెక్ట్ చేయడం సాధ్యపడలేదు.</translation> @@ -74,8 +74,8 @@ <translation id="1506063256525392513">ఫోటోలను తీసి, వాటిని అప్లోడ్ చేయడానికి, అలాగే QR కోడ్లను స్కాన్ చేయడానికి ఇది మిమ్మల్ని అనుమతిస్తుంది</translation> <translation id="1509486075633541495">వెబ్సైట్కు సైన్ ఇన్ చేయండి</translation> <translation id="1509960214886564027">చాలా సైట్లలోని ఫీచర్లు పని చేయకుండాపోవచ్చు</translation> -<translation id="152234381334907219">ఎప్పటికి సేవ్ చెయ్యబడవు</translation> -<translation id="1523341279170789507">అన్ని కుక్కీలను అనుమతించు</translation> +<translation id="152234381334907219">ఎప్పటికి సేవ్ చేయబడవు</translation> +<translation id="1523341279170789507">అన్ని కుక్కీలను అనుమతించండి</translation> <translation id="1524563461097350801">వద్దు, ధన్యవాదాలు</translation> <translation id="1535268707340844072">మీ ప్రస్తుత సెట్టింగ్ కారణంగా కొన్ని సైట్లను మీరు ఉపయోగించలేక పోవచ్చు. అన్ని సైట్లకు కుక్కీలను మేనేజ్ చేయడానికి, <ph name="BEGIN_LINK" />కుక్కీ సెట్టింగ్ల<ph name="END_LINK" />ను చూడండి.</translation> <translation id="1540800554400757039">అడ్రస్ 1</translation> @@ -107,7 +107,7 @@ <translation id="1753905327828125965">అధికంగా సందర్శించేది</translation> <translation id="1803264062614276815">కార్డుదారుని పేరు</translation> <translation id="1809939268435598390">ఫోల్డర్ను తొలగించు</translation> -<translation id="1813414402673211292">బ్రౌజింగ్ డేటాను క్లియర్ చేయి</translation> +<translation id="1813414402673211292">బ్రౌజింగ్ డేటాను క్లియర్ చేయండి</translation> <translation id="1815941218935345331">పాస్కోడ్</translation> <translation id="1820259098641718022">పఠన లిస్ట్కు జోడించబడింది</translation> <translation id="1832848789136765277">మీ సింక్ చేసిన డేటాను మీరు ఎల్లప్పుడూ యాక్సెస్ చేయగలరని నిర్ధారించుకోవడానికి, అది మీరేనని వెరిఫై చేయండి</translation> @@ -182,7 +182,7 @@ <translation id="2570206273416014374">అడ్రస్ బార్, సెర్చ్ బాక్స్లలో చేసే సెర్చ్లు, కొన్ని కుక్కీలను మీరు ఆటోమేటిక్ ఆప్షన్గా సెట్ చేసిన సెర్చ్ ఇంజిన్కు పంపుతుంది</translation> <translation id="2578571896248130439">వెబ్పేజీని పంపండి</translation> <translation id="2584132361465095047">ఖాతాను జోడించు…</translation> -<translation id="2600682495497606169">సైట్ కుక్కీలను క్లియర్ చేయి</translation> +<translation id="2600682495497606169">సైట్ కుక్కీలను క్లియర్ చేయండి</translation> <translation id="2625189173221582860">పాస్వర్డ్ కాపీ చేయబడింది</translation> <translation id="2626236249646841566">మీ కనెక్షన్ను చెక్ చేసి, మళ్లీ సైన్ ఇన్ చేయడానికి ట్రై చేయండి.</translation> <translation id="2637313651144986786">ట్యాబ్లలో సెర్చ్ చేయండి...</translation> @@ -236,10 +236,10 @@ <translation id="2952581218264071393">1. Chrome సెట్టింగ్లను తెరవండి</translation> <translation id="2958718410589002129">పాస్వర్డ్లు</translation> <translation id="2961210776189273067">టైటిల్</translation> -<translation id="2964349545761222050">థర్డ్-పార్టీ కుక్కీలను బ్లాక్ చేయి</translation> +<translation id="2964349545761222050">థర్డ్-పార్టీ కుక్కీలను బ్లాక్ చేయండి</translation> <translation id="2969979262385602596">సైన్ ఇన్ చేయడం విఫలమైంది. దయచేసి తర్వాత మళ్లీ ప్రయత్నించండి.</translation> <translation id="2975121486251958312">అజ్ఞాత మోడ్ మాత్రమే అందుబాటులో ఉంది</translation> -<translation id="2982481275546140226">డేటాను తీసివేయి</translation> +<translation id="2982481275546140226">డేటాను తీసివేయండి</translation> <translation id="298306318844797842">పేమెంట్ ఆప్షన్ను జోడించు...</translation> <translation id="2989805286512600854">కొత్త ట్యాబ్లో తెరువు</translation> <translation id="3020183492814296499">షార్ట్కట్లు</translation> @@ -254,7 +254,7 @@ <translation id="3103603146121354983">పాస్వర్డ్లను ఆటోఫిల్ చేయండి</translation> <translation id="3112556859945124369">గుర్తు పెట్టు…</translation> <translation id="3122484138405575719"><ph name="BEGIN_LINK" />మీరు వేటిని సింక్ చేయగలరో చూడండి<ph name="END_LINK" /></translation> -<translation id="3131206671572504478">అన్నీ బ్లాక్ చేయి</translation> +<translation id="3131206671572504478">అన్నీ బ్లాక్ చేయండి</translation> <translation id="313283613037595347">కొత్త అజ్ఞాత ట్యాబ్ను క్రియేట్ చేయండి.</translation> <translation id="3153862085237805241">కార్డ్ను సేవ్ చేయండి</translation> <translation id="3157387275655328056">పఠన లిస్ట్కు జోడించు</translation> @@ -449,7 +449,7 @@ <translation id="4818522717893377262">భాషను జోడించు...</translation> <translation id="481968316161811770">కుక్కీలు, సైట్ డేటా</translation> <translation id="4824497107140370669">{count,plural, =0{{domain}}=1{{domain}, ఇంకా మరో 1}other{{domain}, ఇంకా మరో {count}}}</translation> -<translation id="4826218269716039351">థర్డ్-పార్టీని బ్లాక్ చేయి</translation> +<translation id="4826218269716039351">థర్డ్-పార్టీని బ్లాక్ చేయండి</translation> <translation id="4826726074642088322">హైలైట్ను షేర్ చేయండి</translation> <translation id="48274138579728272">చదివినట్లు గుర్తు పెట్టు</translation> <translation id="4833686396768033263">ఇటీవలి ట్యాబ్లు అందుబాటులో లేవు</translation> @@ -476,7 +476,7 @@ <translation id="5005498671520578047">పాస్వర్డ్ కాపీచేయడం</translation> <translation id="5017828934289857214">నాకు తర్వాత గుర్తు చేయి</translation> <translation id="5037676449506322593">అన్నీ ఎంచుకోండి</translation> -<translation id="5039804452771397117">అనుమతించు</translation> +<translation id="5039804452771397117">అనుమతించండి</translation> <translation id="5056446788882570708">సమస్యలు కనుగొనబడింది: <ph name="TIME" />.</translation> <translation id="5059136629401106827">సరే</translation> <translation id="5062321486222145940">ఇన్స్టాల్ Google Drive</translation> @@ -522,7 +522,7 @@ <translation id="5443952882982198570">క్రెడిట్ కార్డ్లు</translation> <translation id="5457226814769348910">ఆఫ్లైన్ వెర్షన్ను తెరవండి</translation> <translation id="5489208564673669003">అన్ని సైట్లకు కుక్కీలను మేనేజ్ చేయడానికి, <ph name="BEGIN_LINK" />కుక్కీ సెట్టింగ్ల<ph name="END_LINK" />ను చూడండి.</translation> -<translation id="5490005495580364134">అన్ని కుక్కీలను బ్లాక్ చేయి (సిఫార్సు చేయడం లేదు)</translation> +<translation id="5490005495580364134">అన్ని కుక్కీలను బ్లాక్ చేయండి (సిఫార్సు చేయడం లేదు)</translation> <translation id="5513681519188741830"><ph name="TIME" /> గం. క్రితం</translation> <translation id="5525269841082836315">రహస్య పదబంధాన్ని క్రియేట్ చేయండి</translation> <translation id="5542540507657872337"><ph name="COUNT" /> కనుగొనబడ్డాయి</translation> @@ -579,7 +579,7 @@ <translation id="5957613098218939406">మరిన్ని ఎంపికలు</translation> <translation id="5963939892571022323">హైలైట్కు లింక్ను క్రియేట్ చేయడం సాధ్యం కాదు.</translation> <translation id="5965679971710331625">మీరు సైన్ ఇన్ చేశారు</translation> -<translation id="5979837087407522202">పాస్వర్డ్లను వెతుకు</translation> +<translation id="5979837087407522202">పాస్వర్డ్లను వెతకండి</translation> <translation id="5982717868370722439">ఇప్పటికే ఉన్న డేటాను <ph name="USER_EMAIL" />కి జోడించండి.</translation> <translation id="5984222099446776634">ఇటీవల సందర్శించినవి</translation> <translation id="5988097621740394599">మీ ట్యాబ్లలో ధర తగ్గింపు వివరాలను చూడండి.</translation> @@ -630,7 +630,7 @@ <translation id="6337234675334993532">ఎన్క్రిప్షన్</translation> <translation id="633809752005859102">వాస్తవంగా ఏదో తప్పు జరిగింది. మేము దానిపై పని చేస్తాము.</translation> <translation id="6342069812937806050">ఇప్పుడే</translation> -<translation id="6344783595350022745">వచనాన్ని క్లియర్ చేయి</translation> +<translation id="6344783595350022745">వచనాన్ని క్లియర్ చేయండి</translation> <translation id="6346549652287021269">కొత్త డౌన్లోడ్ ఆరంభించాలా?</translation> <translation id="634878792104344809">మీ పాస్వర్డ్లను, హిస్టరీని, అలాగే మరిన్నింటిని మీ అన్ని పరికరాలలోనూ సింక్ చేయండి</translation> <translation id="6361848730467328243"><ph name="DOMAIN_NAME" />ను ఫాలో అవ్వండి</translation> @@ -650,7 +650,7 @@ <ph name="TIME" />న మీ సింక్ రహస్య పదబంధంతో మీ డేటా ఎన్క్రిప్ట్ చేయబడింది. సింక్ను ప్రారంభించడానికి దీన్ని నమోదు చేయండి.</translation> <translation id="6418346271604475326">PDF సిద్ధపరు.</translation> <translation id="6434591244308415567">ఎర్రర్ ఏర్పడింది. తర్వాత మళ్లీ ప్రయత్నించండి.</translation> -<translation id="6439338047467462846">అన్నింటిని అనుమతించు</translation> +<translation id="6439338047467462846">అన్నింటిని అనుమతించండి</translation> <translation id="6445051938772793705">దేశం</translation> <translation id="6445981559479772097">మెసేజ్ పంపబడింది.</translation> <translation id="6447842834002726250">కుక్కీలు</translation> @@ -687,7 +687,7 @@ <translation id="6634432609054530164">మీ సంస్థ అజ్ఞాత మోడ్ను ఆఫ్ చేసింది</translation> <translation id="6638511529934826365">వచనాన్ని జూమ్ చేయి…</translation> <translation id="6642362222295953972">ప్రస్తుత ట్యాబ్కు మారు</translation> -<translation id="6643016212128521049">క్లియర్ చేయి</translation> +<translation id="6643016212128521049">క్లియర్ చేయండి</translation> <translation id="6645899968535965230">QR కోడ్: <ph name="PAGE_TITLE" /></translation> <translation id="6656103420185847513">ఫోల్డర్ను ఎడిట్ చేయండి</translation> <translation id="6657585470893396449">పాస్వర్డ్</translation> @@ -775,6 +775,7 @@ <translation id="7400418766976504921">URL</translation> <translation id="7409985198648820906"><ph name="UNREAD_COUNT" /> చదవని కథనాలు ఉన్నాయి.</translation> <translation id="7412027924265291969">కొనసాగించు</translation> +<translation id="7419565702166471774">ఎల్లప్పుడూ సురక్షిత కనెక్షన్లను ఉపయోగించండి</translation> <translation id="7425346204213733349">మీ బుక్మార్క్లు, చరిత్ర, పాస్వర్డ్లు, ఇతర సెట్టింగ్లకు చేసే మార్పులు ఇకపై మీ Google ఖాతాకు సింక్ చేయబడవు. అయితే, ఇప్పటికే ఉన్న మీ డేటా మీ Google ఖాతాలో అలాగే నిల్వ చేయబడి ఉంటుంది.</translation> <translation id="7431991332293347422">సెర్చ్లు మరియు మరిన్నింటిని వ్యక్తిగతీకరించడానికి మీ బ్రౌజింగ్ హిస్టరీ ఎలా ఉపయోగించబడుతుందో నియంత్రించండి</translation> <translation id="7435356471928173109">మీ అడ్మినిస్ట్రేటర్ ఆఫ్ చేశారు</translation> @@ -814,7 +815,6 @@ <translation id="7781069478569868053">కొత్త ట్యాబ్ పేజీ</translation> <translation id="7781829728241885113">నిన్న</translation> <translation id="778855399387580014">కొత్త Chrome ట్యాబ్లో శోధనను ప్రారంభించండి.</translation> -<translation id="7790892308048519147">సురక్షిత కనెక్షన్లను ఉపయోగించడానికి ట్రై చేయండి</translation> <translation id="7791543448312431591">జోడించు</translation> <translation id="7807060072011926525">దీనిని Google అందించినది</translation> <translation id="7839985698273989086">ఆఫ్లైన్ పేజీ</translation> @@ -838,7 +838,7 @@ వివిధ సైట్లలో మీ బ్రౌజింగ్ యాక్టివిటీని చూడటానికి సైట్లు కుక్కీలను ఉపయోగించవచ్చు, ఉదాహరణకు, యాడ్లను వ్యక్తిగతీకరించడం.</translation> <translation id="7966904497916178308">స్టాండర్డ్ రక్షణ ఆన్లో ఉంది</translation> -<translation id="7971521879845308059">పాప్-అప్లను బ్లాక్ చేయి</translation> +<translation id="7971521879845308059">పాప్-అప్లను బ్లాక్ చేయండి</translation> <translation id="797413074872316787">మీ అన్ని పరికరాలలోనూ సింక్, ఇంకా వ్యక్తిగతీకరణ చేయడం కోసం, సింక్ను ఆన్ చేయండి.</translation> <translation id="7978018860671536736">3. 'పాస్వర్డ్లను ఆటోఫిల్ చేయండి'ని ట్యాప్ చేయండి</translation> <translation id="7982789257301363584">నెట్వర్క్</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_th.xtb b/ios/chrome/app/strings/resources/ios_strings_th.xtb index 8bf3d0b..ce1a359 100644 --- a/ios/chrome/app/strings/resources/ios_strings_th.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_th.xtb
@@ -775,6 +775,7 @@ <translation id="7400418766976504921">URL</translation> <translation id="7409985198648820906">บทความที่ยังไม่ได้อ่าน <ph name="UNREAD_COUNT" /> รายการ</translation> <translation id="7412027924265291969">ดำเนินการต่อ</translation> +<translation id="7419565702166471774">ใช้การเชื่อมต่อที่ปลอดภัยทุกครั้ง</translation> <translation id="7425346204213733349">การเปลี่ยนแปลงบุ๊กมาร์ก ประวัติการเข้าชม รหัสผ่าน และการตั้งค่าอื่นๆ จะไม่ซิงค์กับบัญชี Google ของคุณอีกต่อไป อย่างไรก็ตาม ข้อมูลที่คุณมีจะยังคงจัดเก็บอยู่ในบัญชี Google</translation> <translation id="7431991332293347422">ควบคุมการใช้ประวัติการท่องเว็บเพื่อปรับเปลี่ยน Search และบริการอื่นๆ ในแบบของคุณ</translation> <translation id="7435356471928173109">ปิดโดยผู้ดูแลระบบ</translation> @@ -814,7 +815,6 @@ <translation id="7781069478569868053">หน้าแท็บใหม่</translation> <translation id="7781829728241885113">เมื่อวานนี้</translation> <translation id="778855399387580014">เริ่มการค้นหาในแท็บใหม่ของ Chrome</translation> -<translation id="7790892308048519147">พยายามใช้การเชื่อมต่อที่ปลอดภัย</translation> <translation id="7791543448312431591">เพิ่ม</translation> <translation id="7807060072011926525">ให้บริการโดย Google</translation> <translation id="7839985698273989086">หน้าแบบออฟไลน์</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_tr.xtb b/ios/chrome/app/strings/resources/ios_strings_tr.xtb index 48b5d98..cdf61d21 100644 --- a/ios/chrome/app/strings/resources/ios_strings_tr.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_tr.xtb
@@ -775,6 +775,7 @@ <translation id="7400418766976504921">URL</translation> <translation id="7409985198648820906">Okunmamış <ph name="UNREAD_COUNT" /> makale.</translation> <translation id="7412027924265291969">Devam</translation> +<translation id="7419565702166471774">Her zaman güvenli bağlantılar kullanın</translation> <translation id="7425346204213733349">Yer işaretleri, geçmiş, şifreler ve diğer ayarlarınızda yaptığınız değişiklikler artık Google Hesabınız ile senkronize edilmeyecek. Ancak, mevcut verileriniz Google Hesabınızda saklanmaya devam edecek.</translation> <translation id="7431991332293347422">Göz atma geçmişinizin Arama ve diğer hizmetleri kişiselleştirmek için nasıl kullanıldığını kontrol edin</translation> <translation id="7435356471928173109">Yöneticiniz tarafından kapatıldı</translation> @@ -814,7 +815,6 @@ <translation id="7781069478569868053">Yeni Sekme Sayfası</translation> <translation id="7781829728241885113">Dün</translation> <translation id="778855399387580014">Yeni bir Chrome sekmesinde arama başlatır.</translation> -<translation id="7790892308048519147">Güvenli bağlantılar kullanmayı deneyin</translation> <translation id="7791543448312431591">Ekle</translation> <translation id="7807060072011926525">Google tarafından sağlanır</translation> <translation id="7839985698273989086">Çevrimdışı Sayfa</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_uk.xtb b/ios/chrome/app/strings/resources/ios_strings_uk.xtb index 8ead83d9..eb70a23 100644 --- a/ios/chrome/app/strings/resources/ios_strings_uk.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_uk.xtb
@@ -775,6 +775,7 @@ <translation id="7400418766976504921">URL-адреса</translation> <translation id="7409985198648820906">Непрочитаних статей: <ph name="UNREAD_COUNT" />.</translation> <translation id="7412027924265291969">Продовжити</translation> +<translation id="7419565702166471774">Завжди використовувати надійні з’єднання</translation> <translation id="7425346204213733349">Зміни в закладках, історії, паролях та інших налаштуваннях більше не синхронізуватимуться з вашим обліковим записом Google. Однак наявні дані залишаться у вашому обліковому записі.</translation> <translation id="7431991332293347422">Указуйте, як використовувати історію веб-перегляду для персоналізації Пошуку тощо</translation> <translation id="7435356471928173109">Вимкнено адміністратором</translation> @@ -814,7 +815,6 @@ <translation id="7781069478569868053">Сторінка нової вкладки</translation> <translation id="7781829728241885113">Учора</translation> <translation id="778855399387580014">Пошук у новій вкладці Chrome.</translation> -<translation id="7790892308048519147">Намагатися використовувати надійні з’єднання</translation> <translation id="7791543448312431591">Додати</translation> <translation id="7807060072011926525">Надано компанією Google</translation> <translation id="7839985698273989086">Офлайн-сторінка</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_ur.xtb b/ios/chrome/app/strings/resources/ios_strings_ur.xtb index ffda990..53d75681 100644 --- a/ios/chrome/app/strings/resources/ios_strings_ur.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_ur.xtb
@@ -775,6 +775,7 @@ <translation id="7400418766976504921">URL</translation> <translation id="7409985198648820906"><ph name="UNREAD_COUNT" /> بغیر پڑھے ہوئے مضامین۔</translation> <translation id="7412027924265291969">جاری رکھیں</translation> +<translation id="7419565702166471774">ہمیشہ محفوظ کنکشنز کا استعمال کریں</translation> <translation id="7425346204213733349">آپ کے بُک مارکس، سرگزشت، پاس ورڈز اور دیگر ترتیبات کی تبدیلیوں کی مزید آپ کے Google اکاؤنٹ کے ساتھ مطابقت پذیری نہیں کی جائے گی۔ البتہ آپ کا موجودہ ڈیٹا آپ کے Google اکاؤنٹ میں اسٹور رہے گا۔</translation> <translation id="7431991332293347422">تلاش کو ذاتی نوعیت کا بنانے کیلئے آپ کی براؤزنگ کی سرگزشت جس طریقے سے استعمال کی جاتی ہے اسے کنٹرول کریں اور مزید بہت کچھ</translation> <translation id="7435356471928173109">آپ کے منتظم کے ذریعے آف کر دیا گیا</translation> @@ -814,7 +815,6 @@ <translation id="7781069478569868053">نئے ٹیب کا صفحہ</translation> <translation id="7781829728241885113">گزشتہ کل</translation> <translation id="778855399387580014">نئے Chrome ٹیب میں تلاش شروع کریں۔</translation> -<translation id="7790892308048519147">محفوظ کنکشنز استعمال کرنے کی کوشش کریں</translation> <translation id="7791543448312431591">شامل کریں</translation> <translation id="7807060072011926525">Google کے ذریعے فراہم کردہ</translation> <translation id="7839985698273989086">آف لائن صفحہ</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_uz.xtb b/ios/chrome/app/strings/resources/ios_strings_uz.xtb index 677b19d..83badd2 100644 --- a/ios/chrome/app/strings/resources/ios_strings_uz.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_uz.xtb
@@ -329,6 +329,7 @@ <translation id="3775743491439407556">Sinxronizatsiya ishlamayapti</translation> <translation id="3779810277399252432">Internetga ulanmagansiz</translation> <translation id="3783017676699494206">Tasvirni saqlash</translation> +<translation id="3789294999358192700">Quyidagi qadamlarni bajaring:</translation> <translation id="3789841737615482174">O‘rnatish</translation> <translation id="380329542618494757">Ism</translation> <translation id="3803696231112616155">Bu saytda tarjima taklif qilinsin</translation> @@ -775,6 +776,7 @@ <translation id="7400418766976504921">URL</translation> <translation id="7409985198648820906"><ph name="UNREAD_COUNT" /> ta maqola ochilmagan.</translation> <translation id="7412027924265291969">Davom etish</translation> +<translation id="7419565702166471774">Doim xavfsiz ulanish ishlatilsin</translation> <translation id="7425346204213733349">Endi xatcho‘plar, brauzer tarixi va boshqa sozlamalaringiz Google hisobingizga sinxronlanmaydi. Shunday bo‘lsa-da, mavjud ma’lumotlaringiz Google hisobingizda saqlanib qoladi.</translation> <translation id="7431991332293347422">Moslashtirilgan qidiruv, reklama va boshqa tashriflar tarixi parametrlarini tanlang</translation> <translation id="7435356471928173109">Administrator tomonidan faolsizlantirilgan</translation> @@ -814,7 +816,6 @@ <translation id="7781069478569868053">Tezkor kirish sahifasi</translation> <translation id="7781829728241885113">Kecha</translation> <translation id="778855399387580014">Yangi Chrome sahifasida qidirish.</translation> -<translation id="7790892308048519147">Xavfsiz aloqadan foydalanishga urining</translation> <translation id="7791543448312431591">Qo‘shish</translation> <translation id="7807060072011926525">Google taqdim qilgan</translation> <translation id="7839985698273989086">Oflayn sahifa</translation> @@ -942,6 +943,7 @@ <translation id="8870413625673593573">Yaqinda yopilganlar</translation> <translation id="8876882697946675716">Qurilmalaringizni sinxronlab boring</translation> <translation id="8881801611828450202">Bu rasmni <ph name="SEARCH_ENGINE" /> orqali qidirish</translation> +<translation id="8891935667620843985">Saytlar Chrome brauzerida avtomatik ochilishi uchun uni birlamchi brauzer etib tayinlash kifoya.</translation> <translation id="8898822736010347272">Ochilgan sahifalarning URL manzillari, cheklangan tizim va sahifalar axborotini anonim ravishda Google serverlariga yuboradi va internetdagi yangi tahdidlarni aniqlashga yordam berib, barcha foydalanuvchilarni bu tahdidlardan himoya qiladi.</translation> <translation id="8909135823018751308">Ulashish…</translation> <translation id="8917490105272468696">Ha, roziman</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_vi.xtb b/ios/chrome/app/strings/resources/ios_strings_vi.xtb index 1408589..5eea0697 100644 --- a/ios/chrome/app/strings/resources/ios_strings_vi.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_vi.xtb
@@ -775,6 +775,7 @@ <translation id="7400418766976504921">URL</translation> <translation id="7409985198648820906"><ph name="UNREAD_COUNT" /> bài viết chưa đọc.</translation> <translation id="7412027924265291969">Tiếp tục</translation> +<translation id="7419565702166471774">Luôn sử dụng kết nối an toàn</translation> <translation id="7425346204213733349">Các thay đổi đối với dấu trang, lịch sử, mật khẩu và các tùy chọn cài đặt khác sẽ không đồng bộ hóa với Tài khoản Google của bạn nữa. Tuy nhiên, dữ liệu hiện có của bạn sẽ vẫn được lưu trữ trong tài khoản Google của bạn.</translation> <translation id="7431991332293347422">Kiểm soát cách Google sử dụng nhật ký duyệt web của bạn để cá nhân hóa dịch vụ Tìm kiếm và các dịch vụ khác</translation> <translation id="7435356471928173109">Quản trị viên đã tắt</translation> @@ -814,7 +815,6 @@ <translation id="7781069478569868053">Trang thẻ mới</translation> <translation id="7781829728241885113">Hôm qua</translation> <translation id="778855399387580014">Bắt đầu tìm kiếm trong thẻ Chrome mới.</translation> -<translation id="7790892308048519147">Hãy sử dụng kết nối bảo mật</translation> <translation id="7791543448312431591">Thêm</translation> <translation id="7807060072011926525">Do Google cung cấp</translation> <translation id="7839985698273989086">Trang ngoại tuyến</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_zh-CN.xtb b/ios/chrome/app/strings/resources/ios_strings_zh-CN.xtb index e1fc91f..2fd2cd9a 100644 --- a/ios/chrome/app/strings/resources/ios_strings_zh-CN.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_zh-CN.xtb
@@ -775,6 +775,7 @@ <translation id="7400418766976504921">网址</translation> <translation id="7409985198648820906">有 <ph name="UNREAD_COUNT" /> 篇未读文章。</translation> <translation id="7412027924265291969">继续</translation> +<translation id="7419565702166471774">一律使用安全连接</translation> <translation id="7425346204213733349">对您的书签、历史记录、密码及其他设置所做的更改将不再同步到您的 Google 帐号。但现有数据将继续存储在您的 Google 帐号中。</translation> <translation id="7431991332293347422">控制 Google 如何利用您的浏览记录为您提供个性化的 Google 搜索和其他 Google 服务</translation> <translation id="7435356471928173109">已被您的管理员关闭</translation> @@ -814,7 +815,6 @@ <translation id="7781069478569868053">新标签页</translation> <translation id="7781829728241885113">昨天</translation> <translation id="778855399387580014">在新的 Chrome 标签页中发起搜索。</translation> -<translation id="7790892308048519147">尽可能使用安全连接</translation> <translation id="7791543448312431591">添加</translation> <translation id="7807060072011926525">由 Google 提供</translation> <translation id="7839985698273989086">离线网页</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_zh-HK.xtb b/ios/chrome/app/strings/resources/ios_strings_zh-HK.xtb index e718a0a..c66309d 100644 --- a/ios/chrome/app/strings/resources/ios_strings_zh-HK.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_zh-HK.xtb
@@ -773,6 +773,7 @@ <translation id="7400418766976504921">網址</translation> <translation id="7409985198648820906"><ph name="UNREAD_COUNT" /> 篇未讀嘅文章。</translation> <translation id="7412027924265291969">繼續</translation> +<translation id="7419565702166471774">一律使用安全連線</translation> <translation id="7425346204213733349">系統不會將您變更的書籤、記錄、密碼和其他設定繼續同步至您的 Google 帳戶,但 Google 帳戶內現有的資料仍會保留。</translation> <translation id="7431991332293347422">控制系統如何使用您的瀏覽記錄,為您提供個人化的搜尋內容和其他服務</translation> <translation id="7435356471928173109">已由管理員關閉</translation> @@ -812,7 +813,6 @@ <translation id="7781069478569868053">新分頁</translation> <translation id="7781829728241885113">昨天</translation> <translation id="778855399387580014">在新的 Chrome 分頁上開始搜尋。</translation> -<translation id="7790892308048519147">嘗試使用安全的連線</translation> <translation id="7791543448312431591">新增</translation> <translation id="7807060072011926525">由 Google 提供</translation> <translation id="7839985698273989086">離線頁面</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_zh-TW.xtb b/ios/chrome/app/strings/resources/ios_strings_zh-TW.xtb index 172d4b96..24c64ba 100644 --- a/ios/chrome/app/strings/resources/ios_strings_zh-TW.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_zh-TW.xtb
@@ -775,6 +775,7 @@ <translation id="7400418766976504921">網址</translation> <translation id="7409985198648820906"><ph name="UNREAD_COUNT" /> 篇未讀文章。</translation> <translation id="7412027924265291969">繼續</translation> +<translation id="7419565702166471774">一律使用安全連線</translation> <translation id="7425346204213733349">你更改過的書籤、歷史記錄、密碼和其他設定不會繼續與 Google 帳戶中的資料保持同步,但是 Google 帳戶現有的資料仍會保留。</translation> <translation id="7431991332293347422">控制 Google 使用瀏覽記錄提供個人化搜尋服務和其他內容的方式</translation> <translation id="7435356471928173109">已由系統管理員停用</translation> @@ -814,7 +815,6 @@ <translation id="7781069478569868053">新分頁</translation> <translation id="7781829728241885113">昨天</translation> <translation id="778855399387580014">在 Chrome 新分頁中進行搜尋。</translation> -<translation id="7790892308048519147">嘗試使用安全連線</translation> <translation id="7791543448312431591">新增</translation> <translation id="7807060072011926525">由 Google 提供</translation> <translation id="7839985698273989086">離線版網頁</translation>
diff --git a/ios/chrome/app/strings/resources/ios_strings_zu.xtb b/ios/chrome/app/strings/resources/ios_strings_zu.xtb index 4608dffc..5dfe20a 100644 --- a/ios/chrome/app/strings/resources/ios_strings_zu.xtb +++ b/ios/chrome/app/strings/resources/ios_strings_zu.xtb
@@ -775,6 +775,7 @@ <translation id="7400418766976504921">I-URL</translation> <translation id="7409985198648820906"><ph name="UNREAD_COUNT" /> ama-athikili angafundiwe.</translation> <translation id="7412027924265291969">Qhubeka</translation> +<translation id="7419565702166471774">Sebenzisa njalo uxhumano oluvikelekile</translation> <translation id="7425346204213733349">Izinguquko kumabhukhimakhi akho, umlando, amaphasiwedi, nezinye izilungiselelo ngeke kusavumelaniswa ku-akhawunti yakho ye-Google. Yize kunjalo, idatha yakho ekhona izohlala igcinwe ku-akhawunti yakho ye-Google.</translation> <translation id="7431991332293347422">Lawula ukuthi umlando wakho wokuphequlula usetshenziswa kanjani ukuze kwenziwe kube ngokwakho Usesho nokuningi</translation> <translation id="7435356471928173109">Ivalwe ngumlawuli wakho</translation> @@ -814,7 +815,6 @@ <translation id="7781069478569868053">Ikhasi lethebhu elisha</translation> <translation id="7781829728241885113">Izolo</translation> <translation id="778855399387580014">Qala usesho kuthebhu elisha le-Chrome.</translation> -<translation id="7790892308048519147">Zama ukusebenzisa uxhumo oluphephile</translation> <translation id="7791543448312431591">Engeza</translation> <translation id="7807060072011926525">Kuhlinzekwe yi-Google</translation> <translation id="7839985698273989086">Ikhasi Elingaxhunyiwe kwi-Intanethi</translation>
diff --git a/ios/chrome/browser/ui/authentication/signin/forced_signin/BUILD.gn b/ios/chrome/browser/ui/authentication/signin/forced_signin/BUILD.gn index ea73680..d3f1476 100644 --- a/ios/chrome/browser/ui/authentication/signin/forced_signin/BUILD.gn +++ b/ios/chrome/browser/ui/authentication/signin/forced_signin/BUILD.gn
@@ -51,6 +51,7 @@ "//ios/chrome/browser/ui/first_run:eg_test_support+eg2", "//ios/chrome/browser/ui/settings/google_services:constants", "//ios/chrome/common:string_util", + "//ios/chrome/common/ui/promo_style:constants", "//ios/chrome/test/earl_grey:eg_test_support+eg2", "//ios/public/provider/chrome/browser/signin:constants", "//ios/public/provider/chrome/browser/signin:fake_chrome_identity",
diff --git a/ios/chrome/browser/ui/authentication/signin/forced_signin/forced_signin_egtest.mm b/ios/chrome/browser/ui/authentication/signin/forced_signin/forced_signin_egtest.mm index 5fc8f45..e42e264e7 100644 --- a/ios/chrome/browser/ui/authentication/signin/forced_signin/forced_signin_egtest.mm +++ b/ios/chrome/browser/ui/authentication/signin/forced_signin/forced_signin_egtest.mm
@@ -20,6 +20,7 @@ #import "ios/chrome/browser/ui/settings/google_services/manage_sync_settings_constants.h" #include "ios/chrome/browser/ui/ui_feature_flags.h" #include "ios/chrome/common/string_util.h" +#import "ios/chrome/common/ui/promo_style/constants.h" #include "ios/chrome/grit/ios_chromium_strings.h" #include "ios/chrome/grit/ios_strings.h" #import "ios/chrome/test/earl_grey/chrome_earl_grey.h" @@ -54,10 +55,6 @@ namespace { -// Identifier for the main scroll view covering all the screen content. -NSString* const kScrollViewIdentifier = - @"kPromoStyleScrollViewAccessibilityIdentifier"; - // Returns a matcher for the sign-in screen "Continue as <identity>" button. id<GREYMatcher> GetContinueButtonWithIdentityMatcher( FakeChromeIdentity* fakeIdentity) { @@ -93,7 +90,8 @@ // Scrolls down to `elementMatcher` in the scrollable content of the first run // screen. void ScrollToElementAndAssertVisibility(id<GREYMatcher> elementMatcher) { - id<GREYMatcher> scrollView = grey_accessibilityID(kScrollViewIdentifier); + id<GREYMatcher> scrollView = + grey_accessibilityID(kPromoStyleScrollViewAccessibilityIdentifier); [[[EarlGrey selectElementWithMatcher:grey_allOf(elementMatcher,
diff --git a/ios/chrome/browser/ui/first_run/first_run_egtest.mm b/ios/chrome/browser/ui/first_run/first_run_egtest.mm index 50ef8e01..aca5c34 100644 --- a/ios/chrome/browser/ui/first_run/first_run_egtest.mm +++ b/ios/chrome/browser/ui/first_run/first_run_egtest.mm
@@ -48,9 +48,6 @@ namespace { -NSString* const kScrollViewIdentifier = - @"kPromoStyleScrollViewAccessibilityIdentifier"; - NSString* const kMetricsConsentCheckboxAccessibilityIdentifier = @"kMetricsConsentCheckboxAccessibilityIdentifier"; @@ -215,7 +212,8 @@ // Scrolls down to `elementMatcher` in the scrollable content of the first run // screen. - (void)scrollToElementAndAssertVisibility:(id<GREYMatcher>)elementMatcher { - id<GREYMatcher> scrollView = grey_accessibilityID(kScrollViewIdentifier); + id<GREYMatcher> scrollView = + grey_accessibilityID(kPromoStyleScrollViewAccessibilityIdentifier); [[[EarlGrey selectElementWithMatcher:grey_allOf(elementMatcher, @@ -491,7 +489,7 @@ // Scroll to ensure that the third instruction is visible. id<GREYMatcher> scrollViewMatcher = - grey_accessibilityID(kScrollViewIdentifier); + grey_accessibilityID(kPromoStyleScrollViewAccessibilityIdentifier); [[EarlGrey selectElementWithMatcher:thirdInstruction] usingSearchAction:grey_scrollInDirection(kGREYDirectionDown, 50) onElementWithMatcher:scrollViewMatcher];
diff --git a/ios/chrome/browser/ui/open_in/BUILD.gn b/ios/chrome/browser/ui/open_in/BUILD.gn index 30b8305..5b01d78 100644 --- a/ios/chrome/browser/ui/open_in/BUILD.gn +++ b/ios/chrome/browser/ui/open_in/BUILD.gn
@@ -5,6 +5,9 @@ source_set("open_in_ui") { configs += [ "//build/config/compiler:enable_arc" ] sources = [ + "open_in_activity_delegate.h", + "open_in_activity_view_controller.h", + "open_in_activity_view_controller.mm", "open_in_controller.h", "open_in_controller.mm", "open_in_controller_testing.h",
diff --git a/ios/chrome/browser/ui/open_in/open_in_activity_delegate.h b/ios/chrome/browser/ui/open_in/open_in_activity_delegate.h new file mode 100644 index 0000000..7dec0c32 --- /dev/null +++ b/ios/chrome/browser/ui/open_in/open_in_activity_delegate.h
@@ -0,0 +1,16 @@ +// Copyright 2022 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#ifndef IOS_CHROME_BROWSER_UI_OPEN_IN_OPEN_IN_ACTIVITY_DELEGATE_H_ +#define IOS_CHROME_BROWSER_UI_OPEN_IN_OPEN_IN_ACTIVITY_DELEGATE_H_ + +// Delegate for the OpenInActivityViewController class. +@protocol OpenInActivityDelegate + +// Method invoked when the OpenInActivityViewController is about to be removed. +- (void)openInActivityWillDisappearForFileAtURL:(NSURL*)fileURL; + +@end + +#endif // IOS_CHROME_BROWSER_UI_OPEN_IN_OPEN_IN_ACTIVITY_DELEGATE_H_
diff --git a/ios/chrome/browser/ui/open_in/open_in_activity_view_controller.h b/ios/chrome/browser/ui/open_in/open_in_activity_view_controller.h new file mode 100644 index 0000000..321677d --- /dev/null +++ b/ios/chrome/browser/ui/open_in/open_in_activity_view_controller.h
@@ -0,0 +1,27 @@ +// Copyright 2022 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#ifndef IOS_CHROME_BROWSER_UI_OPEN_IN_OPEN_IN_ACTIVITY_VIEW_CONTROLLER_H_ +#define IOS_CHROME_BROWSER_UI_OPEN_IN_OPEN_IN_ACTIVITY_VIEW_CONTROLLER_H_ + +#import <UIKit/UIKit.h> + +@protocol OpenInActivityDelegate; + +// View controller that provides an interface to perform actions on a file. +@interface OpenInActivityViewController : UIActivityViewController + +// Initializes an UIActivityViewController with the given `fileURL`. +- (instancetype)initWithURL:(NSURL*)fileURL NS_DESIGNATED_INITIALIZER; +- (instancetype)initWithActivityItems:(NSArray*)activityItems + applicationActivities: + (NSArray<__kindof UIActivity*>*)applicationActivities + NS_UNAVAILABLE; + +// Delegate used to handle presentation actions. +@property(nonatomic, weak) id<OpenInActivityDelegate> delegate; + +@end + +#endif // IOS_CHROME_BROWSER_UI_OPEN_IN_OPEN_IN_ACTIVITY_VIEW_CONTROLLER_H_
diff --git a/ios/chrome/browser/ui/open_in/open_in_activity_view_controller.mm b/ios/chrome/browser/ui/open_in/open_in_activity_view_controller.mm new file mode 100644 index 0000000..ea5d658 --- /dev/null +++ b/ios/chrome/browser/ui/open_in/open_in_activity_view_controller.mm
@@ -0,0 +1,37 @@ +// Copyright 2022 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#import "ios/chrome/browser/ui/open_in/open_in_activity_view_controller.h" + +#import "ios/chrome/browser/ui/open_in/open_in_activity_delegate.h" + +#if !defined(__has_feature) || !__has_feature(objc_arc) +#error "This file requires ARC support." +#endif + +@interface OpenInActivityViewController () + +// NSURL of the presented file. +@property(nonatomic, strong) NSURL* fileURL; + +@end + +@implementation OpenInActivityViewController + +- (instancetype)initWithURL:(NSURL*)fileURL { + NSArray* customActions = @[ fileURL ]; + NSArray* activities = nil; + if (self = [super initWithActivityItems:customActions + applicationActivities:activities]) { + self.fileURL = fileURL; + } + return self; +} + +- (void)viewWillDisappear:(BOOL)animated { + [super viewWillDisappear:animated]; + [self.delegate openInActivityWillDisappearForFileAtURL:self.fileURL]; +} + +@end
diff --git a/ios/chrome/browser/ui/open_in/open_in_controller.mm b/ios/chrome/browser/ui/open_in/open_in_controller.mm index 932cdbf..ea39d29a 100644 --- a/ios/chrome/browser/ui/open_in/open_in_controller.mm +++ b/ios/chrome/browser/ui/open_in/open_in_controller.mm
@@ -21,6 +21,8 @@ #include "base/threading/scoped_blocking_call.h" #include "components/strings/grit/components_strings.h" #import "ios/chrome/browser/ui/alert_coordinator/alert_coordinator.h" +#import "ios/chrome/browser/ui/open_in/open_in_activity_delegate.h" +#import "ios/chrome/browser/ui/open_in/open_in_activity_view_controller.h" #import "ios/chrome/browser/ui/open_in/open_in_controller_testing.h" #import "ios/chrome/browser/ui/util/uikit_ui_util.h" #import "ios/chrome/common/ui/util/constraints_ui_util.h" @@ -171,7 +173,8 @@ } // anonymous namespace -@interface OpenInController () <CRWWebViewScrollViewProxyObserver> { +@interface OpenInController () <CRWWebViewScrollViewProxyObserver, + OpenInActivityDelegate> { // AlertCoordinator for showing an alert if no applications were found to open // the current document. AlertCoordinator* _alertCoordinator; @@ -230,7 +233,7 @@ GURL _documentURL; // Controller for opening documents in other applications. - UIActivityViewController* activityViewController; + OpenInActivityViewController* activityViewController; // Toolbar overlay to be displayed on tap. OpenInToolbar* _openInToolbar; @@ -498,19 +501,9 @@ if (!_webState) return; - NSArray* customActions = @[ fileURL ]; - NSArray* activities = nil; - activityViewController = - [[UIActivityViewController alloc] initWithActivityItems:customActions - applicationActivities:activities]; - - // Set completion callback. - __weak OpenInController* weakSelf = self; - activityViewController.completionWithItemsHandler = - ^(NSString*, BOOL, NSArray*, NSError*) { - [weakSelf completedPresentOpenInMenuForFileAtURL:fileURL]; - }; + [[OpenInActivityViewController alloc] initWithURL:fileURL]; + activityViewController.delegate = self; // UIActivityViewController is presented in a popover on iPad. activityViewController.popoverPresentationController.sourceView = @@ -606,7 +599,12 @@ return _openInToolbar; } -#pragma mark - +#pragma mark - OpenInActivityDelegate + +- (void)openInActivityWillDisappearForFileAtURL:(NSURL*)fileURL { + [self completedPresentOpenInMenuForFileAtURL:fileURL]; +} + #pragma mark File management - (void)urlLoadDidComplete:(const base::FilePath&)filePath {
diff --git a/ios/chrome/browser/ui/settings/password/password_manager_view_controller.mm b/ios/chrome/browser/ui/settings/password/password_manager_view_controller.mm index 5b3912c..e197a13b 100644 --- a/ios/chrome/browser/ui/settings/password/password_manager_view_controller.mm +++ b/ios/chrome/browser/ui/settings/password/password_manager_view_controller.mm
@@ -156,6 +156,13 @@ password_manager::features::kEnableFaviconForPasswords); } +// Returns true if settings (e.g., "Offer To Save Passwords") should be visible +// in this UI, or false if they should be behind a link to a submenu. +bool ShouldShowSettingsUI() { + return !base::FeatureList::IsEnabled( + password_manager::features::kIOSPasswordUISplit); +} + } // namespace // TODO(crbug.com/1300569): Remove this when kEnableFaviconForPasswords flag is @@ -518,37 +525,39 @@ TableViewModel* model = self.tableViewModel; - // Save passwords switch and manage account message. Only show this section - // when the searchController is not active. - if (!self.navigationItem.searchController.active) { - [model addSectionWithIdentifier:SectionIdentifierSavePasswordsSwitch]; + if (ShouldShowSettingsUI()) { + // Save passwords switch and manage account message. Only show this section + // when the searchController is not active. + if (!self.navigationItem.searchController.active) { + [model addSectionWithIdentifier:SectionIdentifierSavePasswordsSwitch]; - if (_browserState->GetPrefs()->IsManagedPreference( - password_manager::prefs::kCredentialsEnableService)) { - // TODO(crbug.com/1082827): observe the managing status of the pref. - // Show managed settings UI when the pref is managed by the policy. - _managedSavePasswordItem = [self managedSavePasswordItem]; - [model addItem:_managedSavePasswordItem - toSectionWithIdentifier:SectionIdentifierSavePasswordsSwitch]; - } else { - _savePasswordsItem = [self savePasswordsItem]; - [model addItem:_savePasswordsItem - toSectionWithIdentifier:SectionIdentifierSavePasswordsSwitch]; + if (_browserState->GetPrefs()->IsManagedPreference( + password_manager::prefs::kCredentialsEnableService)) { + // TODO(crbug.com/1082827): observe the managing status of the pref. + // Show managed settings UI when the pref is managed by the policy. + _managedSavePasswordItem = [self managedSavePasswordItem]; + [model addItem:_managedSavePasswordItem + toSectionWithIdentifier:SectionIdentifierSavePasswordsSwitch]; + } else { + _savePasswordsItem = [self savePasswordsItem]; + [model addItem:_savePasswordsItem + toSectionWithIdentifier:SectionIdentifierSavePasswordsSwitch]; + } + + _manageAccountLinkItem = [self manageAccountLinkItem]; + [model setHeader:_manageAccountLinkItem + forSectionWithIdentifier:SectionIdentifierSavePasswordsSwitch]; } - _manageAccountLinkItem = [self manageAccountLinkItem]; - [model setHeader:_manageAccountLinkItem - forSectionWithIdentifier:SectionIdentifierSavePasswordsSwitch]; + // Passwords in other apps. + [model addSectionWithIdentifier:SectionIdentifierPasswordsInOtherApps]; + if (!_passwordsInOtherAppsItem) { + _passwordsInOtherAppsItem = [self passwordsInOtherAppsItem]; + } + [model addItem:_passwordsInOtherAppsItem + toSectionWithIdentifier:SectionIdentifierPasswordsInOtherApps]; } - // Passwords in other apps. - [model addSectionWithIdentifier:SectionIdentifierPasswordsInOtherApps]; - if (!_passwordsInOtherAppsItem) { - _passwordsInOtherAppsItem = [self passwordsInOtherAppsItem]; - } - [model addItem:_passwordsInOtherAppsItem - toSectionWithIdentifier:SectionIdentifierPasswordsInOtherApps]; - // Password check. [model addSectionWithIdentifier:SectionIdentifierPasswordCheck]; if (!_passwordProblemsItem) { @@ -624,6 +633,11 @@ withRowAnimation: (UITableViewRowAnimation) rowAnimation { + // Ignore these updates if this surface is not being used as the settings UI. + // This ensures the related content is never added (or re-added) to the menu. + if (!ShouldShowSettingsUI()) { + return; + } OnDeviceEncryptionState oldState = self.onDeviceEncryptionStateInModel; OnDeviceEncryptionState newState = [self.delegate onDeviceEncryptionState]; if (newState == oldState) { @@ -1221,52 +1235,65 @@ TableViewModel* model = self.tableViewModel; [self.tableView performBatchUpdates:^{ - // Add "Save Password Switch" section. - [model insertSectionWithIdentifier:SectionIdentifierSavePasswordsSwitch - atIndex:0]; - [model setHeader:_manageAccountLinkItem - forSectionWithIdentifier:SectionIdentifierSavePasswordsSwitch]; - [self.tableView insertSections:[NSIndexSet indexSetWithIndex:0] - withRowAnimation:UITableViewRowAnimationTop]; - if (_savePasswordsItem) { - [model addItem:_savePasswordsItem - toSectionWithIdentifier:SectionIdentifierSavePasswordsSwitch]; - } else { - [model addItem:_managedSavePasswordItem - toSectionWithIdentifier:SectionIdentifierSavePasswordsSwitch]; + int sectionIndex = 0; + NSMutableArray<NSIndexPath*>* rowsIndexPaths = + [[NSMutableArray alloc] init]; + + if (ShouldShowSettingsUI()) { + // Add "Save Password Switch" section. + [model + insertSectionWithIdentifier:SectionIdentifierSavePasswordsSwitch + atIndex:sectionIndex]; + [model setHeader:_manageAccountLinkItem + forSectionWithIdentifier:SectionIdentifierSavePasswordsSwitch]; + [self.tableView + insertSections:[NSIndexSet indexSetWithIndex:sectionIndex] + withRowAnimation:UITableViewRowAnimationTop]; + if (_savePasswordsItem) { + [model addItem:_savePasswordsItem + toSectionWithIdentifier:SectionIdentifierSavePasswordsSwitch]; + } else { + [model addItem:_managedSavePasswordItem + toSectionWithIdentifier:SectionIdentifierSavePasswordsSwitch]; + } + NSInteger switchSection = [model + sectionForSectionIdentifier:SectionIdentifierSavePasswordsSwitch]; + [rowsIndexPaths + addObject:[NSIndexPath indexPathForRow:0 + inSection:switchSection]]; + sectionIndex++; + + // Add "Password in other app" section. + [model + insertSectionWithIdentifier:SectionIdentifierPasswordsInOtherApps + atIndex:sectionIndex]; + NSInteger otherAppSection = + [model sectionForSectionIdentifier: + SectionIdentifierPasswordsInOtherApps]; + + [self.tableView + insertSections:[NSIndexSet indexSetWithIndex:sectionIndex] + withRowAnimation:UITableViewRowAnimationTop]; + [model addItem:_passwordsInOtherAppsItem + toSectionWithIdentifier:SectionIdentifierPasswordsInOtherApps]; + [rowsIndexPaths + addObject:[NSIndexPath indexPathForRow:0 + inSection:otherAppSection]]; + + [self.tableView insertRowsAtIndexPaths:rowsIndexPaths + withRowAnimation:UITableViewRowAnimationTop]; + sectionIndex++; } - NSInteger switchSection = [model - sectionForSectionIdentifier:SectionIdentifierSavePasswordsSwitch]; - NSMutableArray<NSIndexPath*>* rowsIndexPaths = [NSMutableArray - arrayWithObjects:[NSIndexPath indexPathForRow:0 - inSection:switchSection], - nil]; - - // Add "Password in other app" section. - [model insertSectionWithIdentifier:SectionIdentifierPasswordsInOtherApps - atIndex:1]; - NSInteger otherAppSection = [model - sectionForSectionIdentifier:SectionIdentifierPasswordsInOtherApps]; - - [self.tableView insertSections:[NSIndexSet indexSetWithIndex:1] - withRowAnimation:UITableViewRowAnimationTop]; - [model addItem:_passwordsInOtherAppsItem - toSectionWithIdentifier:SectionIdentifierPasswordsInOtherApps]; - [rowsIndexPaths - addObject:[NSIndexPath indexPathForRow:0 - inSection:otherAppSection]]; - - [self.tableView insertRowsAtIndexPaths:rowsIndexPaths - withRowAnimation:UITableViewRowAnimationTop]; // Add "Password check" section. [model insertSectionWithIdentifier:SectionIdentifierPasswordCheck - atIndex:2]; + atIndex:sectionIndex]; NSInteger checkSection = [model sectionForSectionIdentifier:SectionIdentifierPasswordCheck]; - [self.tableView insertSections:[NSIndexSet indexSetWithIndex:2] - withRowAnimation:UITableViewRowAnimationTop]; + [self.tableView + insertSections:[NSIndexSet indexSetWithIndex:sectionIndex] + withRowAnimation:UITableViewRowAnimationTop]; [model addItem:_passwordProblemsItem toSectionWithIdentifier:SectionIdentifierPasswordCheck]; [model addItem:_checkForProblemsItem
diff --git a/ios/chrome/common/ui/promo_style/constants.h b/ios/chrome/common/ui/promo_style/constants.h index bbced8f..7e5e242 100644 --- a/ios/chrome/common/ui/promo_style/constants.h +++ b/ios/chrome/common/ui/promo_style/constants.h
@@ -13,6 +13,9 @@ // A11y Identifier for subtitle label. extern NSString* const kPromoStyleSubtitleAccessibilityIdentifier; +// A11y Identifier for the read more action button. +extern NSString* const kPromoStyleReadMoreActionAccessibilityIdentifier; + // A11y Identifier for the primary action button. extern NSString* const kPromoStylePrimaryActionAccessibilityIdentifier;
diff --git a/ios/chrome/common/ui/promo_style/constants.mm b/ios/chrome/common/ui/promo_style/constants.mm index 2dc1dcf..4cf6340 100644 --- a/ios/chrome/common/ui/promo_style/constants.mm +++ b/ios/chrome/common/ui/promo_style/constants.mm
@@ -10,18 +10,20 @@ #endif NSString* const kPromoStyleTitleAccessibilityIdentifier = - @"kPromoStyleTitleAccessibilityIdentifier"; + @"PromoStyleTitleAccessibilityIdentifier"; NSString* const kPromoStyleSubtitleAccessibilityIdentifier = - @"kPromoStyleSubtitleAccessibilityIdentifier"; + @"PromoStyleSubtitleAccessibilityIdentifier"; +NSString* const kPromoStyleReadMoreActionAccessibilityIdentifier = + @"PromoStyleReadMoreActionAccessibilityIdentifier"; NSString* const kPromoStylePrimaryActionAccessibilityIdentifier = - @"kPromoStylePrimaryActionAccessibilityIdentifier"; + @"PromoStylePrimaryActionAccessibilityIdentifier"; NSString* const kPromoStyleSecondaryActionAccessibilityIdentifier = - @"kPromoStyleSecondaryActionAccessibilityIdentifier"; + @"PromoStyleSecondaryActionAccessibilityIdentifier"; NSString* const kPromoStyleTertiaryActionAccessibilityIdentifier = - @"kPromoStyleTertiaryActionAccessibilityIdentifier"; + @"PromoStyleTertiaryActionAccessibilityIdentifier"; NSString* const kPromoStyleLearnMoreActionAccessibilityIdentifier = - @"kPromoStyleLearnMoreActionAccessibilityIdentifier"; + @"PromoStyleLearnMoreActionAccessibilityIdentifier"; NSString* const kPromoStyleDisclaimerViewAccessibilityIdentifier = - @"kPromoStyleDisclaimerViewAccessibilityIdentifier"; + @"PromoStyleDisclaimerViewAccessibilityIdentifier"; NSString* const kPromoStyleScrollViewAccessibilityIdentifier = - @"kPromoStyleScrollViewAccessibilityIdentifier"; + @"PromoStyleScrollViewAccessibilityIdentifier";
diff --git a/ios/chrome/common/ui/promo_style/promo_style_view_controller.mm b/ios/chrome/common/ui/promo_style/promo_style_view_controller.mm index 633a9d5..cf9bcc6 100644 --- a/ios/chrome/common/ui/promo_style/promo_style_view_controller.mm +++ b/ios/chrome/common/ui/promo_style/promo_style_view_controller.mm
@@ -739,6 +739,8 @@ [attributedString appendAttributedString:[NSAttributedString attributedStringWithAttachment:attachment]]; + self.primaryActionButton.accessibilityIdentifier = + kPromoStyleReadMoreActionAccessibilityIdentifier; // Make the title change without animation, as the UIButton's default // animation when using setTitle:forState: doesn't handle adding a @@ -811,6 +813,8 @@ forState:UIControlStateNormal]; [self.primaryActionButton setTitle:self.primaryActionString forState:UIControlStateNormal]; + self.primaryActionButton.accessibilityIdentifier = + kPromoStylePrimaryActionAccessibilityIdentifier; // Reset the font to make sure it is properly scaled. [self setPrimaryActionButtonFont:self.primaryActionButton];
diff --git a/ios/web/download/download_native_task_bridge.mm b/ios/web/download/download_native_task_bridge.mm index a9de32e..776fd75 100644 --- a/ios/web/download/download_native_task_bridge.mm +++ b/ios/web/download/download_native_task_bridge.mm
@@ -6,8 +6,10 @@ #import "base/callback.h" #import "base/check.h" +#import "base/files/file_util.h" #import "base/mac/foundation_util.h" #import "base/strings/sys_string_conversions.h" +#import "base/task/thread_pool.h" #import "ios/web/download/download_result.h" #import "ios/web/web_view/error_translation_util.h" #import "net/base/net_errors.h" @@ -16,6 +18,35 @@ #error "This file requires ARC support." #endif +namespace { + +// Helper to get the size of file at `file_path`. Returns -1 in case of error. +int64_t FileSizeForFileAtPath(base::FilePath file_path) { + int64_t file_size = 0; + if (!base::GetFileSize(file_path, &file_size)) + return -1; + + return file_size; +} + +// Helper to invoke the download complete callback after getting the file +// size. +void DownloadDidFinishWithSize( + NativeDownloadTaskProgressCallback progress_callback, + NativeDownloadTaskCompleteCallback complete_callback, + int64_t file_size) { + if (file_size != -1 && !progress_callback.is_null()) { + progress_callback.Run( + /* bytes_received */ file_size, /* total_bytes */ file_size, + /* fraction_completed */ 1.0); + } + + web::DownloadResult download_result(net::OK); + std::move(complete_callback).Run(download_result); +} + +} // anonymous namespace + @interface DownloadNativeTaskBridge () @property(nonatomic, readwrite, strong) NSData* resumeData; @@ -181,10 +212,22 @@ - (void)downloadDidFinish:(WKDownload*)download API_AVAILABLE(ios(15)) { [self stopObservingDownloadProgress]; if (!_completeCallback.is_null()) { - _progressCallback.Reset(); - - web::DownloadResult download_result(net::OK); - std::move(_completeCallback).Run(download_result); + // The method -downloadDidFinish: will be called as soon as the + // download completes, even before the NSProgress item may have + // been updated. + // + // To prevent truncating the downloaded file, get the real size + // of the file from the disk and call `_progressCallback` first + // before calling `_completeCallback`. + // + // See https://crbug.com/1346030 for examples of truncation. + base::ThreadPool::PostTaskAndReplyWithResult( + FROM_HERE, {base::TaskPriority::USER_VISIBLE, base::MayBlock()}, + base::BindOnce( + &FileSizeForFileAtPath, + base::FilePath(base::SysNSStringToUTF8(_urlForDownload.path))), + base::BindOnce(&DownloadDidFinishWithSize, std::move(_progressCallback), + std::move(_completeCallback))); } }
diff --git a/media/capture/video/video_frame_receiver.h b/media/capture/video/video_frame_receiver.h index 3b79b2e..1268beb5 100644 --- a/media/capture/video/video_frame_receiver.h +++ b/media/capture/video/video_frame_receiver.h
@@ -55,7 +55,7 @@ // cannot be posted back to. The mostly equivalent interface // video_capture::mojom::VideoFrameHandler cannot be used by // VideoCaptureDeviceClient directly, because creating a -// video_catpure::mojom::ScopedAccessPermission for passing into +// video_capture::mojom::ScopedAccessPermission for passing into // OnFrameReadyInBuffer() requires a thread with a task runner. class CAPTURE_EXPORT VideoFrameReceiver { public:
diff --git a/media/renderers/paint_canvas_video_renderer_unittest.cc b/media/renderers/paint_canvas_video_renderer_unittest.cc index 08ba905..7fda503 100644 --- a/media/renderers/paint_canvas_video_renderer_unittest.cc +++ b/media/renderers/paint_canvas_video_renderer_unittest.cc
@@ -316,13 +316,13 @@ TEST_F(PaintCanvasVideoRendererTest, NoFrame) { // Test that black gets painted over canvas. - target_canvas()->clear(SK_ColorRED); + target_canvas()->clear(SkColors::kRed); PaintWithoutFrame(target_canvas()); EXPECT_EQ(SK_ColorBLACK, bitmap()->getColor(0, 0)); } TEST_F(PaintCanvasVideoRendererTest, TransparentFrame) { - target_canvas()->clear(SK_ColorRED); + target_canvas()->clear(SkColors::kRed); PaintRotated( VideoFrame::CreateTransparentFrame(gfx::Size(kWidth, kHeight)).get(), target_canvas(), kNaturalRect, kNone, SkBlendMode::kSrcOver, @@ -331,7 +331,7 @@ } TEST_F(PaintCanvasVideoRendererTest, TransparentFrameSrcMode) { - target_canvas()->clear(SK_ColorRED); + target_canvas()->clear(SkColors::kRed); // SRC mode completely overwrites the buffer. PaintRotated( VideoFrame::CreateTransparentFrame(gfx::Size(kWidth, kHeight)).get(), @@ -342,7 +342,7 @@ } TEST_F(PaintCanvasVideoRendererTest, TransparentFrameSrcMode1x1) { - target_canvas()->clear(SK_ColorRED); + target_canvas()->clear(SkColors::kRed); // SRC mode completely overwrites the buffer. auto frame = VideoFrame::CreateTransparentFrame(gfx::Size(1, 1)); PaintRotated(frame.get(), target_canvas(), gfx::RectF(1, 1), kNone, @@ -352,7 +352,7 @@ } TEST_F(PaintCanvasVideoRendererTest, CopyTransparentFrame) { - target_canvas()->clear(SK_ColorRED); + target_canvas()->clear(SkColors::kRed); Copy(VideoFrame::CreateTransparentFrame(gfx::Size(kWidth, kHeight)).get(), target_canvas()); EXPECT_EQ(static_cast<SkColor>(SK_ColorTRANSPARENT), @@ -525,7 +525,7 @@ TEST_F(PaintCanvasVideoRendererTest, Video_Translate) { SkBitmap bitmap = AllocBitmap(kWidth, kHeight); cc::SkiaPaintCanvas canvas(bitmap); - canvas.clear(SK_ColorMAGENTA); + canvas.clear(SkColors::kMagenta); PaintRotated(cropped_frame(), &canvas, gfx::RectF(kWidth / 2, kHeight / 2, kWidth / 2, kHeight / 2), @@ -545,7 +545,7 @@ TEST_F(PaintCanvasVideoRendererTest, Video_Translate_Rotation_90) { SkBitmap bitmap = AllocBitmap(kWidth, kHeight); cc::SkiaPaintCanvas canvas(bitmap); - canvas.clear(SK_ColorMAGENTA); + canvas.clear(SkColors::kMagenta); PaintRotated(cropped_frame(), &canvas, gfx::RectF(kWidth / 2, kHeight / 2, kWidth / 2, kHeight / 2), @@ -566,7 +566,7 @@ TEST_F(PaintCanvasVideoRendererTest, Video_Translate_Rotation_180) { SkBitmap bitmap = AllocBitmap(kWidth, kHeight); cc::SkiaPaintCanvas canvas(bitmap); - canvas.clear(SK_ColorMAGENTA); + canvas.clear(SkColors::kMagenta); PaintRotated(cropped_frame(), &canvas, gfx::RectF(kWidth / 2, kHeight / 2, kWidth / 2, kHeight / 2), @@ -587,7 +587,7 @@ TEST_F(PaintCanvasVideoRendererTest, Video_Translate_Rotation_270) { SkBitmap bitmap = AllocBitmap(kWidth, kHeight); cc::SkiaPaintCanvas canvas(bitmap); - canvas.clear(SK_ColorMAGENTA); + canvas.clear(SkColors::kMagenta); PaintRotated(cropped_frame(), &canvas, gfx::RectF(kWidth / 2, kHeight / 2, kWidth / 2, kHeight / 2), @@ -1119,7 +1119,7 @@ SkBitmap bitmap = AllocBitmap(expected_size.width(), expected_size.height()); cc::SkiaPaintCanvas canvas(bitmap); - canvas.clear(SK_ColorGRAY); + canvas.clear(SkColors::kGray); renderer_.Copy(frame, &canvas, media_context_.get()); auto get_color = base::BindRepeating(
diff --git a/net/http/transport_security_state_static.pins b/net/http/transport_security_state_static.pins index 676e0e81..a28b472 100644 --- a/net/http/transport_security_state_static.pins +++ b/net/http/transport_security_state_static.pins
@@ -43,9 +43,9 @@ # hash function for preloaded entries again (we have already done so once). # -# Last updated: 2022-07-20 12:55 UTC +# Last updated: 2022-07-21 12:57 UTC PinsListTimestamp -1658321725 +1658408220 TestSPKI sha256/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
diff --git a/rlz/chromeos/lib/rlz_value_store_chromeos.cc b/rlz/chromeos/lib/rlz_value_store_chromeos.cc index 3e15cb5a..82acc1d9 100644 --- a/rlz/chromeos/lib/rlz_value_store_chromeos.cc +++ b/rlz/chromeos/lib/rlz_value_store_chromeos.cc
@@ -137,7 +137,7 @@ return; } - chromeos::DBusThreadManager::Get()->GetDebugDaemonClient()->SetRlzPingSent( + chromeos::DebugDaemonClient::Get()->SetRlzPingSent( base::BindOnce(&OnSetRlzPingSent, retry_count + 1)); }
diff --git a/rlz/lib/rlz_lib_test.cc b/rlz/lib/rlz_lib_test.cc index 0297540..027b067d 100644 --- a/rlz/lib/rlz_lib_test.cc +++ b/rlz/lib/rlz_lib_test.cc
@@ -53,6 +53,7 @@ #include "base/cxx17_backports.h" #include "base/files/important_file_writer.h" #include "chromeos/dbus/dbus_thread_manager.h" +#include "chromeos/dbus/debug_daemon/debug_daemon_client.h" #include "chromeos/dbus/debug_daemon/fake_debug_daemon_client.h" #include "rlz/chromeos/lib/rlz_value_store_chromeos.h" #endif @@ -1078,14 +1079,19 @@ #endif #if BUILDFLAG(IS_CHROMEOS_ASH) -class TestDebugDaemonClient : public chromeos::FakeDebugDaemonClient { +class ScopedTestDebugDaemonClient : public chromeos::FakeDebugDaemonClient { public: - TestDebugDaemonClient() = default; + ScopedTestDebugDaemonClient() { + chromeos::DebugDaemonClient::SetInstanceForTest(this); + } - TestDebugDaemonClient(const TestDebugDaemonClient&) = delete; - TestDebugDaemonClient& operator=(const TestDebugDaemonClient&) = delete; + ScopedTestDebugDaemonClient(const ScopedTestDebugDaemonClient&) = delete; + ScopedTestDebugDaemonClient& operator=(const ScopedTestDebugDaemonClient&) = + delete; - ~TestDebugDaemonClient() override = default; + ~ScopedTestDebugDaemonClient() override { + chromeos::DebugDaemonClient::SetInstanceForTest(nullptr); + } int num_set_rlz_ping_sent() const { return num_set_rlz_ping_sent_; } @@ -1106,10 +1112,8 @@ }; TEST_F(RlzLibTest, SetRlzPingSent) { - TestDebugDaemonClient* debug_daemon_client = new TestDebugDaemonClient; chromeos::DBusThreadManager::Initialize(); - chromeos::DBusThreadManager::GetSetterForTesting()->SetDebugDaemonClient( - std::unique_ptr<chromeos::DebugDaemonClient>(debug_daemon_client)); + auto debug_daemon_client = std::make_unique<ScopedTestDebugDaemonClient>(); const char* kPingResponse = "stateful-events: CAF\r\n" "crc32: 3BB2FEAE\r\n"; @@ -1128,6 +1132,7 @@ rlz_lib::ParsePingResponse(rlz_lib::TOOLBAR_NOTIFIER, kPingResponse)); EXPECT_EQ(debug_daemon_client->num_set_rlz_ping_sent(), 1 + rlz_lib::RlzValueStoreChromeOS::kMaxRetryCount); + debug_daemon_client.reset(); chromeos::DBusThreadManager::Shutdown(); }
diff --git a/services/network/public/cpp/BUILD.gn b/services/network/public/cpp/BUILD.gn index 89052a5..97738fd 100644 --- a/services/network/public/cpp/BUILD.gn +++ b/services/network/public/cpp/BUILD.gn
@@ -500,5 +500,9 @@ fuzzer_test("client_hints_fuzzer") { sources = [ "client_hints_fuzzer.cc" ] - deps = [ ":cpp" ] + deps = [ + ":cpp", + "//base", + "//base:i18n", + ] }
diff --git a/services/network/public/cpp/client_hints_fuzzer.cc b/services/network/public/cpp/client_hints_fuzzer.cc index a48aca1..4c47bec 100644 --- a/services/network/public/cpp/client_hints_fuzzer.cc +++ b/services/network/public/cpp/client_hints_fuzzer.cc
@@ -4,6 +4,15 @@ #include "services/network/public/cpp/client_hints.h" +#include "base/at_exit.h" +#include "base/i18n/icu_util.h" + +// This is a workaround for https://crbug.com/778929. +struct Environment { + Environment() { CHECK(base::i18n::InitializeICU()); } + base::AtExitManager at_exit_manager; +}; + extern "C" int LLVMFuzzerTestOneInput(const uint8_t* data, size_t size) { const std::string test_data(reinterpret_cast<const char*>(data), size); network::ParseClientHintToDelegatedThirdPartiesHeader(
diff --git a/storage/browser/file_system/recursive_operation_delegate.h b/storage/browser/file_system/recursive_operation_delegate.h index 72b28fa..9b99b0dd 100644 --- a/storage/browser/file_system/recursive_operation_delegate.h +++ b/storage/browser/file_system/recursive_operation_delegate.h
@@ -150,7 +150,7 @@ // Called when all recursive operation is done (or an error occurs). void Done(base::File::Error error); - raw_ptr<FileSystemContext> file_system_context_; + raw_ptr<FileSystemContext, DanglingUntriaged> file_system_context_; StatusCallback callback_; base::stack<FileSystemURL> pending_directories_; base::stack<base::queue<FileSystemURL>> pending_directory_stack_;
diff --git a/testing/buildbot/chromium.chromiumos.json b/testing/buildbot/chromium.chromiumos.json index b826663a..1007443 100644 --- a/testing/buildbot/chromium.chromiumos.json +++ b/testing/buildbot/chromium.chromiumos.json
@@ -1061,7 +1061,7 @@ "--browser=cros-chrome", "--passthrough", "-v", - "--extra-browser-args=--log-level=0 --js-flags=--expose-gc --force_high_performance_gpu --disable-features=BackgroundVideoPauseOptimization", + "--extra-browser-args=--log-level=0 --js-flags=--expose-gc --force_high_performance_gpu --disable-features=BackgroundVideoPauseOptimization --disable-background-media-suspend", "--read-abbreviated-json-results-from=../../content/test/data/gpu/webgl_conformance_tests_output.json", "--jobs=1", "--remote=127.0.0.1",
diff --git a/testing/buildbot/chromium.linux.json b/testing/buildbot/chromium.linux.json index d999acd0..70fe789 100644 --- a/testing/buildbot/chromium.linux.json +++ b/testing/buildbot/chromium.linux.json
@@ -3726,6 +3726,29 @@ "test_id_prefix": "ninja://testing:fuchsia_pytype/" }, { + "isolate_name": "gold_common_pytype", + "isolate_profile_data": true, + "merge": { + "args": [], + "script": "//testing/merge_scripts/standard_isolated_script_merge.py" + }, + "name": "gold_common_pytype", + "resultdb": { + "enable": true, + "has_native_resultdb_integration": true + }, + "swarming": { + "can_use_on_swarming_builders": true, + "dimension_sets": [ + { + "os": "Ubuntu-18.04" + } + ], + "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com" + }, + "test_id_prefix": "ninja://build:gold_common_pytype/" + }, + { "isolate_name": "gpu_pytype", "isolate_profile_data": true, "merge": {
diff --git a/testing/buildbot/gn_isolate_map.pyl b/testing/buildbot/gn_isolate_map.pyl index 5722cc8..2d58dd5 100644 --- a/testing/buildbot/gn_isolate_map.pyl +++ b/testing/buildbot/gn_isolate_map.pyl
@@ -922,6 +922,11 @@ "label": "//:gn_all", "type": "additional_compile_target", }, + "gold_common_pytype": { + "label": "//build:gold_common_pytype", + "script": "//build/skia_gold_common/run_pytype.py", + "type": "script", + }, "google_apis_unittests": { "label": "//google_apis:google_apis_unittests", "type": "console_test_launcher",
diff --git a/testing/buildbot/test_suite_exceptions.pyl b/testing/buildbot/test_suite_exceptions.pyl index 7a2bb81d..5b910cad 100644 --- a/testing/buildbot/test_suite_exceptions.pyl +++ b/testing/buildbot/test_suite_exceptions.pyl
@@ -2157,6 +2157,11 @@ 'Linux ChromiumOS MSan Focal', ], }, + 'gold_common_pytype': { + 'remove_from': [ + 'linux-code-coverage', + ], + }, 'gpu_process_launch_tests': { # TODO(https://crbug.com/850107): Remove the Android FYI Release (Pixel 2) # exception once there is enough capacity to run these tests. @@ -3701,6 +3706,16 @@ }, }, }, + 'webgl_conformance_gl_passthrough_tests 1002:6821': { + 'modifications': { + 'mac_optional_gpu_tests_rel': { + 'args': [ + # Added to debug crbug.com/1293967. + '--extra-browser-args=--disable-background-media-suspend', + ], + }, + }, + }, 'webgl_conformance_metal_passthrough_tests': { 'remove_from': [ # crbug.com/1270755 @@ -3748,7 +3763,7 @@ 'chromeos-amd64-generic-rel': { 'args': [ # Added to debug crbug.com/1293967. - '--extra-browser-args=--disable-features=BackgroundVideoPauseOptimization', + '--extra-browser-args=--disable-features=BackgroundVideoPauseOptimization --disable-background-media-suspend', ], 'swarming': { 'quickrun_shards': 40,
diff --git a/testing/buildbot/test_suites.pyl b/testing/buildbot/test_suites.pyl index 8f4323c..1f1d3487 100644 --- a/testing/buildbot/test_suites.pyl +++ b/testing/buildbot/test_suites.pyl
@@ -4841,6 +4841,11 @@ 'has_native_resultdb_integration', ], }, + 'gold_common_pytype': { + 'mixins': [ + 'has_native_resultdb_integration', + ], + }, 'gpu_pytype': { 'mixins': [ 'has_native_resultdb_integration',
diff --git a/testing/buildbot/tryserver.chromium.mac.json b/testing/buildbot/tryserver.chromium.mac.json index 0e8585549..e113983a 100644 --- a/testing/buildbot/tryserver.chromium.mac.json +++ b/testing/buildbot/tryserver.chromium.mac.json
@@ -1258,7 +1258,7 @@ "--browser=release", "--passthrough", "-v", - "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc --use-gl=angle --use-angle=gl --use-cmd-decoder=passthrough --force_high_performance_gpu", + "--extra-browser-args=--enable-logging=stderr --js-flags=--expose-gc --use-gl=angle --use-angle=gl --use-cmd-decoder=passthrough --force_high_performance_gpu --disable-background-media-suspend", "--read-abbreviated-json-results-from=../../content/test/data/gpu/webgl_conformance_tests_output.json", "--jobs=4" ],
diff --git a/testing/scripts/test_traffic_annotation_auditor.py b/testing/scripts/test_traffic_annotation_auditor.py index 4d2c415f..d9b3d09e 100755 --- a/testing/scripts/test_traffic_annotation_auditor.py +++ b/testing/scripts/test_traffic_annotation_auditor.py
@@ -23,7 +23,7 @@ WINDOWS_SHEET_CONFIG = { "spreadsheet_id": "1TmBr9jnf1-hrjntiVBzT9EtkINGrtoBYFMWad2MBeaY", "annotations_sheet_name": "Annotations", - "changes_sheet_name": "Changes Stats", + "chrome_version_sheet_name": "Chrome Version", "silent_change_columns": [], "last_update_column_name": "Last Update", } @@ -32,7 +32,7 @@ CHROMEOS_SHEET_CONFIG = { "spreadsheet_id": "1928goWKy6LVdF9Nl5nV1OD260YC10dHsdrnHEGdGsg8", "annotations_sheet_name": "Annotations", - "changes_sheet_name": "Changes Stats", + "chrome_version_sheet_name": "Chrome Version", "silent_change_columns": [], "last_update_column_name": "Last Update", } @@ -105,7 +105,7 @@ vpython_path, os.path.join(common.SRC_DIR, 'tools', 'traffic_annotation', 'scripts', 'update_annotations_sheet.py'), - '--force', + '--yes', '--config-file', config_filename, '--annotations-file',
diff --git a/testing/variations/fieldtrial_testing_config.json b/testing/variations/fieldtrial_testing_config.json index 7a7f113..5a0ab1d 100644 --- a/testing/variations/fieldtrial_testing_config.json +++ b/testing/variations/fieldtrial_testing_config.json
@@ -3207,8 +3207,7 @@ "NtpChromeCartModule", "NtpDriveModule", "NtpModulesLoadTimeoutMilliseconds", - "NtpPhotosModule", - "NtpRecipeTasksModule" + "NtpPhotosModule" ], "disable_features": [ "NtpShoppingTasksModule" @@ -4141,6 +4140,21 @@ ] } ], + "ForceGpuMainThreadToNormalPriorityDrDc": [ + { + "platforms": [ + "android" + ], + "experiments": [ + { + "name": "ForceGpuMainThreadToNormalPriorityDrDc", + "enable_features": [ + "ForceGpuMainThreadToNormalPriorityDrDc" + ] + } + ] + } + ], "GMSCoreEmoji": [ { "platforms": [
diff --git a/third_party/arcore-android-sdk-client/BUILD.gn b/third_party/arcore-android-sdk-client/BUILD.gn index 9f824ec9..480cf358 100644 --- a/third_party/arcore-android-sdk-client/BUILD.gn +++ b/third_party/arcore-android-sdk-client/BUILD.gn
@@ -5,8 +5,8 @@ import("//build/config/android/rules.gni") android_aar_prebuilt("com_google_ar_core_java") { - aar_path = "core-1.22.0.aar" - info_path = "core-1.22.0.info" + aar_path = "core-1.32.0.aar" + info_path = "core-1.32.0.info" extract_native_libraries = true # Don't merge the manifest by default so we can exclude it for targets like
diff --git a/third_party/arcore-android-sdk-client/README.chromium b/third_party/arcore-android-sdk-client/README.chromium index 0ed6657..19be233 100644 --- a/third_party/arcore-android-sdk-client/README.chromium +++ b/third_party/arcore-android-sdk-client/README.chromium
@@ -1,7 +1,7 @@ Name: ARCore SDK client library for Chrome Short Name: com.google.ar:core-partner_chrome URL: https://developers.google.com/ar/develop/java/enable-arcore#dependencies -Version: 1.22 +Version: 1.32 License: Apache 2.0 License File: LICENSE Security Critical: yes @@ -27,6 +27,7 @@ * https://www.apache.org/licenses/LICENSE-2.0.txt Changes: +2022-07-18 - Upgraded SDK binaries to v1.32. 2021-06-23 - Ignoring Manifest changes so we don't include them in WebView. 2021-02-01 - Upgraded SDK binaries to v1.22. 2020-07-13 - Upgraded SDK binaries to v1.18.
diff --git a/third_party/arcore-android-sdk-client/cipd.yaml b/third_party/arcore-android-sdk-client/cipd.yaml index 21c384a7..2c2b163 100644 --- a/third_party/arcore-android-sdk-client/cipd.yaml +++ b/third_party/arcore-android-sdk-client/cipd.yaml
@@ -1,4 +1,4 @@ package: chromium/third_party/arcore-android-sdk-client description: ARCore SDK client binaries. data: - - file: core-1.22.0.aar + - file: core-1.32.0.aar
diff --git a/third_party/arcore-android-sdk-client/core-1.22.0.info b/third_party/arcore-android-sdk-client/core-1.32.0.info similarity index 100% rename from third_party/arcore-android-sdk-client/core-1.22.0.info rename to third_party/arcore-android-sdk-client/core-1.32.0.info
diff --git a/third_party/arcore-android-sdk/README.chromium b/third_party/arcore-android-sdk/README.chromium index fd4f7434..75cb944 100644 --- a/third_party/arcore-android-sdk/README.chromium +++ b/third_party/arcore-android-sdk/README.chromium
@@ -24,6 +24,7 @@ * https://github.com/google-ar/arcore-unity-sdk/blob/master/LICENSE Changes: +2022-07-11 - Upgrade test-apks/arcore_current.apk to v1.32. 2021-06-19 - Upgrade test-apks/arcore_current.apk to v1.25. 2021-02-19 - Upgrade test-apks/arcore_current.apk to v1.23. 2021-02-01 - Upgrade SDK to v1.22.
diff --git a/third_party/arcore-android-sdk/test-apks/arcore/apk_version_history.txt b/third_party/arcore-android-sdk/test-apks/arcore/apk_version_history.txt index 7a8ca32..69ef043b 100644 --- a/third_party/arcore-android-sdk/test-apks/arcore/apk_version_history.txt +++ b/third_party/arcore-android-sdk/test-apks/arcore/apk_version_history.txt
@@ -7,4 +7,5 @@ v1.18 2f386ac4b7b635354aa8390cc931e2fcc0fb57fc v1.22 2c47a27b9e8add6dc468f9b1f82740e4c0b1dd63 v1.23 28821c5ac2c1c6fc440d1080e7236762291013e5 -v1.25 ce9c9a16f442f9e08a0d2e7d5cc9882ae7ffacd3 \ No newline at end of file +v1.25 ce9c9a16f442f9e08a0d2e7d5cc9882ae7ffacd3 +v1.32 ac77b7fe064ac5faf87defec207b8b5d60bff9e7 \ No newline at end of file
diff --git a/third_party/arcore-android-sdk/test-apks/arcore/arcore_current.apk.sha1 b/third_party/arcore-android-sdk/test-apks/arcore/arcore_current.apk.sha1 index 6bdc62be..f418639 100644 --- a/third_party/arcore-android-sdk/test-apks/arcore/arcore_current.apk.sha1 +++ b/third_party/arcore-android-sdk/test-apks/arcore/arcore_current.apk.sha1
@@ -1 +1 @@ -ce9c9a16f442f9e08a0d2e7d5cc9882ae7ffacd3 \ No newline at end of file +ac77b7fe064ac5faf87defec207b8b5d60bff9e7 \ No newline at end of file
diff --git a/third_party/blink/public/strings/translations/blink_strings_te.xtb b/third_party/blink/public/strings/translations/blink_strings_te.xtb index 41e06986..882d901 100644 --- a/third_party/blink/public/strings/translations/blink_strings_te.xtb +++ b/third_party/blink/public/strings/translations/blink_strings_te.xtb
@@ -120,7 +120,7 @@ <translation id="6572309429103589720">చెల్లని వ్యాకరణం</translation> <translation id="658823671542763450">పూర్తి స్క్రీన్లోకి ప్రవేశించు</translation> <translation id="6606094904835912297">సిస్టమ్ రంగులు</translation> -<translation id="6643016212128521049">క్లియర్ చేయి</translation> +<translation id="6643016212128521049">క్లియర్ చేయండి</translation> <translation id="668171684555832681">ఇతర...</translation> <translation id="6709093583001123835">విలువ ఖచ్చితంగా <ph name="VALUE" /> అయ్యి ఉండాలి.</translation> <translation id="6709570249143506788">ప్లేబ్యాక్ క్వాలిటీ బాగాలేదు</translation>
diff --git a/third_party/blink/renderer/core/css/css_selector.cc b/third_party/blink/renderer/core/css/css_selector.cc index f8ed7f0..bb16700 100644 --- a/third_party/blink/renderer/core/css/css_selector.cc +++ b/third_party/blink/renderer/core/css/css_selector.cc
@@ -380,7 +380,6 @@ {"-internal-list-box", CSSSelector::kPseudoListBox}, {"-internal-media-controls-overlay-cast-button", CSSSelector::kPseudoWebKitCustomElement}, - {"-internal-modal", CSSSelector::kPseudoModal}, {"-internal-multi-select-focus", CSSSelector::kPseudoMultiSelectFocus}, {"-internal-popup-hidden", CSSSelector::kPseudoPopupHidden}, {"-internal-relative-anchor", CSSSelector::kPseudoRelativeAnchor}, @@ -449,6 +448,7 @@ {"left", CSSSelector::kPseudoLeftPage}, {"link", CSSSelector::kPseudoLink}, {"marker", CSSSelector::kPseudoMarker}, + {"modal", CSSSelector::kPseudoModal}, {"no-button", CSSSelector::kPseudoNoButton}, {"only-child", CSSSelector::kPseudoOnlyChild}, {"only-of-type", CSSSelector::kPseudoOnlyOfType}, @@ -693,7 +693,6 @@ case kPseudoHostHasAppearance: case kPseudoIsHtml: case kPseudoListBox: - case kPseudoModal: case kPseudoMultiSelectFocus: case kPseudoSpatialNavigationFocus: case kPseudoSpatialNavigationInterest: @@ -747,6 +746,7 @@ case kPseudoLastChild: case kPseudoLastOfType: case kPseudoLink: + case kPseudoModal: case kPseudoNoButton: case kPseudoNot: case kPseudoNthChild:
diff --git a/third_party/blink/renderer/core/css/selector_checker.cc b/third_party/blink/renderer/core/css/selector_checker.cc index 7153823..87d0438 100644 --- a/third_party/blink/renderer/core/css/selector_checker.cc +++ b/third_party/blink/renderer/core/css/selector_checker.cc
@@ -1504,7 +1504,8 @@ case CSSSelector::kPseudoCornerPresent: return false; case CSSSelector::kPseudoModal: - DCHECK(is_ua_rule_); + if (Fullscreen::IsFullscreenElement(element)) + return true; if (const auto* dialog_element = DynamicTo<HTMLDialogElement>(element)) return dialog_element->IsModal(); return false;
diff --git a/third_party/blink/renderer/core/fullscreen/fullscreen.cc b/third_party/blink/renderer/core/fullscreen/fullscreen.cc index 3333cb2..d4c2513 100644 --- a/third_party/blink/renderer/core/fullscreen/fullscreen.cc +++ b/third_party/blink/renderer/core/fullscreen/fullscreen.cc
@@ -77,6 +77,7 @@ old_element->PseudoStateChanged(CSSSelector::kPseudoFullScreen); old_element->PseudoStateChanged(CSSSelector::kPseudoFullscreen); + old_element->PseudoStateChanged(CSSSelector::kPseudoModal); old_element->SetContainsFullScreenElement(false); old_element->SetContainsFullScreenElementOnAncestorsCrossingFrameBoundaries( @@ -90,6 +91,7 @@ new_element->PseudoStateChanged(CSSSelector::kPseudoFullScreen); new_element->PseudoStateChanged(CSSSelector::kPseudoFullscreen); + new_element->PseudoStateChanged(CSSSelector::kPseudoModal); // OOPIF: For RequestType::kForCrossProcessDescendant, |new_element| // is the iframe element for the out-of-process frame that contains the
diff --git a/third_party/blink/renderer/core/html/parser/html_tree_builder.cc b/third_party/blink/renderer/core/html/parser/html_tree_builder.cc index dfa3804..535ff7f 100644 --- a/third_party/blink/renderer/core/html/parser/html_tree_builder.cc +++ b/third_party/blink/renderer/core/html/parser/html_tree_builder.cc
@@ -460,12 +460,13 @@ tree_.InsertHTMLElement(token); } +namespace { typedef HashMap<AtomicString, QualifiedName> PrefixedNameToQualifiedNameMap; template <typename TableQualifiedName> -static void MapLoweredLocalNameToName(PrefixedNameToQualifiedNameMap* map, - const TableQualifiedName* const* names, - size_t length) { +void MapLoweredLocalNameToName(PrefixedNameToQualifiedNameMap* map, + const TableQualifiedName* const* names, + size_t length) { for (size_t i = 0; i < length; ++i) { const QualifiedName& name = *names[i]; const AtomicString& local_name = name.LocalName(); @@ -475,14 +476,26 @@ } } +void AddManualLocalName(PrefixedNameToQualifiedNameMap* map, const char* name) { + const QualifiedName item(g_null_atom, name, g_null_atom); + const blink::QualifiedName* const names = &item; + MapLoweredLocalNameToName<QualifiedName>(map, &names, 1); +} + // "Any other start tag" bullet in // https://html.spec.whatwg.org/C/#parsing-main-inforeign -static void AdjustSVGTagNameCase(AtomicHTMLToken* token) { +void AdjustSVGTagNameCase(AtomicHTMLToken* token) { static PrefixedNameToQualifiedNameMap* case_map = nullptr; if (!case_map) { case_map = new PrefixedNameToQualifiedNameMap; std::unique_ptr<const SVGQualifiedName* []> svg_tags = svg_names::GetTags(); MapLoweredLocalNameToName(case_map, svg_tags.get(), svg_names::kTagsCount); + // These tags aren't implemented by Chromium, so they don't exist in + // svg_tag_names.json5. + AddManualLocalName(case_map, "altGlyph"); + AddManualLocalName(case_map, "altGlyphDef"); + AddManualLocalName(case_map, "altGlyphItem"); + AddManualLocalName(case_map, "glyphRef"); } const auto it = case_map->find(token->GetName()); @@ -492,13 +505,20 @@ } } -template <std::unique_ptr<const QualifiedName* []> getAttrs(), unsigned length> -static void AdjustAttributes(AtomicHTMLToken* token) { +template <std::unique_ptr<const QualifiedName* []> getAttrs(), + unsigned length, + bool forSVG> +void AdjustAttributes(AtomicHTMLToken* token) { static PrefixedNameToQualifiedNameMap* case_map = nullptr; if (!case_map) { case_map = new PrefixedNameToQualifiedNameMap; std::unique_ptr<const QualifiedName* []> attrs = getAttrs(); MapLoweredLocalNameToName(case_map, attrs.get(), length); + if (forSVG) { + // This attribute isn't implemented by Chromium, so it doesn't exist in + // svg_attribute_names.json5. + AddManualLocalName(case_map, "viewTarget"); + } } for (auto& token_attribute : token->Attributes()) { @@ -511,19 +531,21 @@ } // https://html.spec.whatwg.org/C/#adjust-svg-attributes -static void AdjustSVGAttributes(AtomicHTMLToken* token) { - AdjustAttributes<svg_names::GetAttrs, svg_names::kAttrsCount>(token); +void AdjustSVGAttributes(AtomicHTMLToken* token) { + AdjustAttributes<svg_names::GetAttrs, svg_names::kAttrsCount, + /*forSVG*/ true>(token); } // https://html.spec.whatwg.org/C/#adjust-mathml-attributes -static void AdjustMathMLAttributes(AtomicHTMLToken* token) { - AdjustAttributes<mathml_names::GetAttrs, mathml_names::kAttrsCount>(token); +void AdjustMathMLAttributes(AtomicHTMLToken* token) { + AdjustAttributes<mathml_names::GetAttrs, mathml_names::kAttrsCount, + /*forSVG*/ false>(token); } -static void AddNamesWithPrefix(PrefixedNameToQualifiedNameMap* map, - const AtomicString& prefix, - const QualifiedName* const* names, - size_t length) { +void AddNamesWithPrefix(PrefixedNameToQualifiedNameMap* map, + const AtomicString& prefix, + const QualifiedName* const* names, + size_t length) { for (size_t i = 0; i < length; ++i) { const QualifiedName* name = names[i]; const AtomicString& local_name = name->LocalName(); @@ -533,7 +555,7 @@ } } -static void AdjustForeignAttributes(AtomicHTMLToken* token) { +void AdjustForeignAttributes(AtomicHTMLToken* token) { static PrefixedNameToQualifiedNameMap* map = nullptr; if (!map) { map = new PrefixedNameToQualifiedNameMap; @@ -561,6 +583,8 @@ } } +} // namespace + void HTMLTreeBuilder::ProcessStartTagForInBody(AtomicHTMLToken* token) { DCHECK_EQ(token->GetType(), HTMLToken::kStartTag); if (token->GetName() == html_names::kHTMLTag) {
diff --git a/third_party/blink/renderer/core/html/resources/html.css b/third_party/blink/renderer/core/html/resources/html.css index cc3c359..4e9243e 100644 --- a/third_party/blink/renderer/core/html/resources/html.css +++ b/third_party/blink/renderer/core/html/resources/html.css
@@ -1385,7 +1385,7 @@ color: CanvasText; } -dialog:-internal-modal { +dialog:modal { position: fixed; overflow: auto; top: 0;
diff --git a/third_party/blink/renderer/core/layout/shapes/shape.cc b/third_party/blink/renderer/core/layout/shapes/shape.cc index c345dd2..d123c398 100644 --- a/third_party/blink/renderer/core/layout/shapes/shape.cc +++ b/third_party/blink/renderer/core/layout/shapes/shape.cc
@@ -251,7 +251,7 @@ gfx::RectF image_source_rect(gfx::SizeF(image->Size())); gfx::Rect image_dest_rect(image_size); SkiaPaintCanvas canvas(surface->getCanvas()); - canvas.clear(SK_ColorTRANSPARENT); + canvas.clear(SkColors::kTransparent); ImageDrawOptions draw_options; draw_options.respect_orientation = respect_orientation; draw_options.clamping_mode = Image::kDoNotClampImageToSourceRect;
diff --git a/third_party/blink/renderer/core/timing/window_performance_test.cc b/third_party/blink/renderer/core/timing/window_performance_test.cc index 0615d37..e54dc21 100644 --- a/third_party/blink/renderer/core/timing/window_performance_test.cc +++ b/third_party/blink/renderer/core/timing/window_performance_test.cc
@@ -9,6 +9,7 @@ #include "base/test/test_mock_time_task_runner.h" #include "base/test/trace_event_analyzer.h" #include "base/time/time.h" +#include "build/build_config.h" #include "services/metrics/public/cpp/ukm_builders.h" #include "testing/gtest/include/gtest/gtest.h" #include "third_party/blink/public/common/responsiveness_metrics/user_interaction_latency.h" @@ -1588,7 +1589,8 @@ class TimeOriginSyncTest : public testing::Test {}; -TEST_F(TimeOriginSyncTest, TimeOriginStableWhenSystemClockChanges) { +// Test is flaky on all platforms: https://crbug.com/1346004 +TEST_F(TimeOriginSyncTest, DISABLED_TimeOriginStableWhenSystemClockChanges) { base::subtle::ScopedTimeClockOverrides clock_overrides(&FakeTimeNow, nullptr, nullptr); base::TimeTicks before = base::TimeTicks::Now();
diff --git a/third_party/blink/renderer/modules/accessibility/ax_object.cc b/third_party/blink/renderer/modules/accessibility/ax_object.cc index c4c1409..3f6978d 100644 --- a/third_party/blink/renderer/modules/accessibility/ax_object.cc +++ b/third_party/blink/renderer/modules/accessibility/ax_object.cc
@@ -1732,11 +1732,12 @@ if (Node* node = GetNode()) { if (node->IsElementNode()) { Element* element = To<Element>(node); - if (element->IsHTMLWithTagName("input") && - element->hasAttribute("type")) { + if (element->IsHTMLWithTagName("input")) { + String type = element->getAttribute("type"); + if (type.IsEmpty()) + type = "text"; TruncateAndAddStringAttribute( - node_data, ax::mojom::blink::StringAttribute::kInputType, - element->getAttribute("type")); + node_data, ax::mojom::blink::StringAttribute::kInputType, type); } } }
diff --git a/third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.cc b/third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.cc index 2b9acb50..a179aff 100644 --- a/third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.cc +++ b/third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.cc
@@ -1701,7 +1701,7 @@ void BaseRenderingContext2D::ClearCanvasForSrcCompositeOp() { cc::PaintCanvas* c = GetOrCreatePaintCanvas(); if (c) - c->clear(HasAlpha() ? SK_ColorTRANSPARENT : SK_ColorBLACK); + c->clear(HasAlpha() ? SkColors::kTransparent : SkColors::kBlack); } bool BaseRenderingContext2D::RectContainsTransformedRect(
diff --git a/third_party/blink/renderer/modules/csspaint/nativepaint/background_color_paint_definition.cc b/third_party/blink/renderer/modules/csspaint/nativepaint/background_color_paint_definition.cc index 0c5016a..a32aab5 100644 --- a/third_party/blink/renderer/modules/csspaint/nativepaint/background_color_paint_definition.cc +++ b/third_party/blink/renderer/modules/csspaint/nativepaint/background_color_paint_definition.cc
@@ -249,7 +249,8 @@ animated_colors[result_index + 1]); from->Interpolate(*to, adjusted_progress, *result); Color rgba = CSSColorInterpolationType::GetRGBA(*(result.get())); - SkColor current_color = static_cast<SkColor>(rgba); + // TODO(crbug/1308932): Remove toSkColor4f and make all SkColor4f. + SkColor4f current_color = rgba.toSkColor4f(); // When render this element, we always do pixel snapping to its nearest pixel, // therefore we use rounded |container_size| to create the rendering context.
diff --git a/third_party/blink/renderer/modules/csspaint/paint_rendering_context_2d.cc b/third_party/blink/renderer/modules/csspaint/paint_rendering_context_2d.cc index 2d32a0d..829e16f5 100644 --- a/third_party/blink/renderer/modules/csspaint/paint_rendering_context_2d.cc +++ b/third_party/blink/renderer/modules/csspaint/paint_rendering_context_2d.cc
@@ -24,8 +24,8 @@ clip_antialiasing_ = kAntiAliased; GetState().SetShouldAntialias(true); - GetPaintCanvas()->clear(context_settings->alpha() ? SK_ColorTRANSPARENT - : SK_ColorBLACK); + GetPaintCanvas()->clear(context_settings->alpha() ? SkColors::kTransparent + : SkColors::kBlack); did_record_draw_commands_in_paint_recorder_ = true; }
diff --git a/third_party/blink/renderer/modules/mediastream/crop_target.idl b/third_party/blink/renderer/modules/mediastream/crop_target.idl index 0e5f7eac..0f45169 100644 --- a/third_party/blink/renderer/modules/mediastream/crop_target.idl +++ b/third_party/blink/renderer/modules/mediastream/crop_target.idl
@@ -7,6 +7,7 @@ [Exposed=(Window,Worker), Serializable, RuntimeEnabled = RegionCapture] interface CropTarget { [ + Exposed=Window, CallWith = ScriptState, RaisesException, MeasureAs = RegionCapture,
diff --git a/third_party/blink/renderer/modules/webgl/webgl_rendering_context_base.cc b/third_party/blink/renderer/modules/webgl/webgl_rendering_context_base.cc index 1efe3a13..94d2dfc 100644 --- a/third_party/blink/renderer/modules/webgl/webgl_rendering_context_base.cc +++ b/third_party/blink/renderer/modules/webgl/webgl_rendering_context_base.cc
@@ -5338,7 +5338,7 @@ } if (!image->CurrentFrameKnownToBeOpaque()) - resource_provider->Canvas()->clear(SK_ColorTRANSPARENT); + resource_provider->Canvas()->clear(SkColors::kTransparent); gfx::Rect src_rect(image->Size()); gfx::Rect dest_rect(0, 0, width, height);
diff --git a/third_party/blink/renderer/modules/webgpu/gpu_queue.cc b/third_party/blink/renderer/modules/webgpu/gpu_queue.cc index 24cb42b..cf79e8d 100644 --- a/third_party/blink/renderer/modules/webgpu/gpu_queue.cc +++ b/third_party/blink/renderer/modules/webgpu/gpu_queue.cc
@@ -403,8 +403,8 @@ // the data from 0 to offset would be copied over as well). const void* data_ptr = static_cast<const uint8_t*>(data) + dawn_data_layout.offset; - dawn_data_layout.offset = 0; data_size -= dawn_data_layout.offset; + dawn_data_layout.offset = 0; // Compute a tight upper bound of the number of bytes to send for this // WriteTexture. This can be 0 for some cases that produce validation errors,
diff --git a/third_party/blink/renderer/platform/fonts/win/font_fallback_win.cc b/third_party/blink/renderer/platform/fonts/win/font_fallback_win.cc index 84498e85..3443cc17 100644 --- a/third_party/blink/renderer/platform/fonts/win/font_fallback_win.cc +++ b/third_party/blink/renderer/platform/fonts/win/font_fallback_win.cc
@@ -35,6 +35,7 @@ #include <limits> +#include "base/check_op.h" #include "third_party/blink/renderer/platform/fonts/font_cache.h" #include "third_party/blink/renderer/platform/text/icu_error.h" #include "third_party/blink/renderer/platform/wtf/hash_map.h" @@ -77,7 +78,7 @@ struct FontMapping { const UChar* family_name; - const UChar* const* candidate_family_names; + base::span<const UChar* const> candidate_family_names; }; // A simple mapping from UScriptCode to family name. This is a sparse array, // which works well since the range of UScriptCode values is small. @@ -104,7 +105,7 @@ void InitializeScriptFontMap(ScriptToFontMap& script_font_map) { struct ScriptToFontFamilies { UScriptCode script; - const UChar* const* families; + base::span<const UChar* const> families; }; // For the following scripts, multiple fonts may be listed. They are tried @@ -117,112 +118,107 @@ // Based on the "Script and Font Support in Windows" MSDN documentation [1] // with overrides and additional fallbacks as needed. // 1: https://msdn.microsoft.com/en-us/goglobal/bb688099.aspx - static const UChar* const kArabicFonts[] = {u"Tahoma", u"Segoe UI", 0}; - static const UChar* const kArmenianFonts[] = {u"Segoe UI", u"Sylfaen", 0}; - static const UChar* const kBengaliFonts[] = {u"Nirmala UI", u"Vrinda", 0}; - static const UChar* const kBrahmiFonts[] = {u"Segoe UI Historic", 0}; - static const UChar* const kBrailleFonts[] = {u"Segoe UI Symbol", 0}; - static const UChar* const kBugineseFonts[] = {u"Leelawadee UI", 0}; + static const UChar* const kArabicFonts[] = {u"Tahoma", u"Segoe UI"}; + static const UChar* const kArmenianFonts[] = {u"Segoe UI", u"Sylfaen"}; + static const UChar* const kBengaliFonts[] = {u"Nirmala UI", u"Vrinda"}; + static const UChar* const kBrahmiFonts[] = {u"Segoe UI Historic"}; + static const UChar* const kBrailleFonts[] = {u"Segoe UI Symbol"}; + static const UChar* const kBugineseFonts[] = {u"Leelawadee UI"}; static const UChar* const kCanadianAaboriginalFonts[] = {u"Gadugi", - u"Euphemia", 0}; - static const UChar* const kCarianFonts[] = {u"Segoe UI Historic", 0}; - static const UChar* const kCherokeeFonts[] = {u"Gadugi", u"Plantagenet", 0}; - static const UChar* const kCopticFonts[] = {u"Segoe UI Symbol", 0}; - static const UChar* const kCuneiformFonts[] = {u"Segoe UI Historic", 0}; - static const UChar* const kCypriotFonts[] = {u"Segoe UI Historic", 0}; - static const UChar* const kCyrillicFonts[] = {u"Times New Roman", 0}; - static const UChar* const kDeseretFonts[] = {u"Segoe UI Symbol", 0}; - static const UChar* const kDevanagariFonts[] = {u"Nirmala UI", u"Mangal", 0}; - static const UChar* const kEgyptianHieroglyphsFonts[] = {u"Segoe UI Historic", - 0}; + u"Euphemia"}; + static const UChar* const kCarianFonts[] = {u"Segoe UI Historic"}; + static const UChar* const kCherokeeFonts[] = {u"Gadugi", u"Plantagenet"}; + static const UChar* const kCopticFonts[] = {u"Segoe UI Symbol"}; + static const UChar* const kCuneiformFonts[] = {u"Segoe UI Historic"}; + static const UChar* const kCypriotFonts[] = {u"Segoe UI Historic"}; + static const UChar* const kCyrillicFonts[] = {u"Times New Roman"}; + static const UChar* const kDeseretFonts[] = {u"Segoe UI Symbol"}; + static const UChar* const kDevanagariFonts[] = {u"Nirmala UI", u"Mangal"}; + static const UChar* const kEgyptianHieroglyphsFonts[] = { + u"Segoe UI Historic"}; static const UChar* const kEthiopicFonts[] = {u"Nyala", u"Abyssinica SIL", u"Ethiopia Jiret", u"Visual Geez Unicode", u"GF Zemen Unicode", - u"Ebrima", - 0}; - static const UChar* const kGeorgianFonts[] = {u"Sylfaen", u"Segoe UI", 0}; + u"Ebrima"}; + static const UChar* const kGeorgianFonts[] = {u"Sylfaen", u"Segoe UI"}; static const UChar* const kGlagoliticFonts[] = {u"Segoe UI Historic", - u"Segoe UI Symbol", 0}; + u"Segoe UI Symbol"}; static const UChar* const kGothicFonts[] = {u"Segoe UI Historic", - u"Segoe UI Symbol", 0}; - static const UChar* const kGreekFonts[] = {u"Times New Roman", 0}; - static const UChar* const kGujaratiFonts[] = {u"Nirmala UI", u"Shruti", 0}; - static const UChar* const kGurmukhiFonts[] = {u"Nirmala UI", u"Raavi", 0}; - static const UChar* const kHangulFonts[] = {u"Malgun Gothic", u"Gulim", 0}; - static const UChar* const kHebrewFonts[] = {u"David", u"Segoe UI", 0}; - static const UChar* const kImperialAramaicFonts[] = {u"Segoe UI Historic", 0}; + u"Segoe UI Symbol"}; + static const UChar* const kGreekFonts[] = {u"Times New Roman"}; + static const UChar* const kGujaratiFonts[] = {u"Nirmala UI", u"Shruti"}; + static const UChar* const kGurmukhiFonts[] = {u"Nirmala UI", u"Raavi"}; + static const UChar* const kHangulFonts[] = {u"Malgun Gothic", u"Gulim"}; + static const UChar* const kHebrewFonts[] = {u"David", u"Segoe UI"}; + static const UChar* const kImperialAramaicFonts[] = {u"Segoe UI Historic"}; static const UChar* const kInscriptionalPahlaviFonts[] = { - u"Segoe UI Historic", 0}; + u"Segoe UI Historic"}; static const UChar* const kInscriptionalParthianFonts[] = { - u"Segoe UI Historic", 0}; - static const UChar* const kJavaneseFonts[] = {u"Javanese Text", 0}; - static const UChar* const kKannadaFonts[] = {u"Tunga", u"Nirmala UI", 0}; + u"Segoe UI Historic"}; + static const UChar* const kJavaneseFonts[] = {u"Javanese Text"}; + static const UChar* const kKannadaFonts[] = {u"Tunga", u"Nirmala UI"}; static const UChar* const kKatakanaOrHiraganaFonts[] = { - u"Meiryo", u"Yu Gothic", u"MS PGothic", u"Microsoft YaHei", 0}; - static const UChar* const kKharoshthiFonts[] = {u"Segoe UI Historic", 0}; + u"Meiryo", u"Yu Gothic", u"MS PGothic", u"Microsoft YaHei"}; + static const UChar* const kKharoshthiFonts[] = {u"Segoe UI Historic"}; // Try Khmer OS before Vista fonts as it goes along better with Latin // and looks better/larger for the same size. static const UChar* const kKhmerFonts[] = { - u"Leelawadee UI", u"Khmer UI", u"Khmer OS", u"MoolBoran", u"DaunPenh", 0}; - static const UChar* const kLaoFonts[] = {u"Leelawadee UI", - u"Lao UI", - u"DokChampa", - u"Saysettha OT", - u"Phetsarath OT", - u"Code2000", - 0}; - static const UChar* const kLatinFonts[] = {u"Times New Roman", 0}; - static const UChar* const kLisuFonts[] = {u"Segoe UI", 0}; - static const UChar* const kLycianFonts[] = {u"Segoe UI Historic", 0}; - static const UChar* const kLydianFonts[] = {u"Segoe UI Historic", 0}; - static const UChar* const kMalayalamFonts[] = {u"Nirmala UI", u"Kartika", 0}; + u"Leelawadee UI", u"Khmer UI", u"Khmer OS", u"MoolBoran", u"DaunPenh"}; + static const UChar* const kLaoFonts[] = {u"Leelawadee UI", u"Lao UI", + u"DokChampa", u"Saysettha OT", + u"Phetsarath OT", u"Code2000"}; + static const UChar* const kLatinFonts[] = {u"Times New Roman"}; + static const UChar* const kLisuFonts[] = {u"Segoe UI"}; + static const UChar* const kLycianFonts[] = {u"Segoe UI Historic"}; + static const UChar* const kLydianFonts[] = {u"Segoe UI Historic"}; + static const UChar* const kMalayalamFonts[] = {u"Nirmala UI", u"Kartika"}; static const UChar* const kMeroiticCursiveFonts[] = {u"Segoe UI Historic", - u"Segoe UI Symbol", 0}; - static const UChar* const kMongolianFonts[] = {u"Mongolian Baiti", 0}; + u"Segoe UI Symbol"}; + static const UChar* const kMongolianFonts[] = {u"Mongolian Baiti"}; static const UChar* const kMyanmarFonts[] = { - u"Myanmar Text", u"Padauk", u"Parabaik", u"Myanmar3", u"Code2000", 0}; - static const UChar* const kNewTaiLueFonts[] = {u"Microsoft New Tai Lue", 0}; - static const UChar* const kNkoFonts[] = {u"Ebrima", 0}; + u"Myanmar Text", u"Padauk", u"Parabaik", u"Myanmar3", u"Code2000"}; + static const UChar* const kNewTaiLueFonts[] = {u"Microsoft New Tai Lue"}; + static const UChar* const kNkoFonts[] = {u"Ebrima"}; static const UChar* const kOghamFonts[] = {u"Segoe UI Historic", - u"Segoe UI Symbol", 0}; - static const UChar* const kOlChikiFonts[] = {u"Nirmala UI", 0}; + u"Segoe UI Symbol"}; + static const UChar* const kOlChikiFonts[] = {u"Nirmala UI"}; static const UChar* const kOldItalicFonts[] = {u"Segoe UI Historic", - u"Segoe UI Symbol", 0}; - static const UChar* const kOldPersianFonts[] = {u"Segoe UI Historic", 0}; - static const UChar* const kOldSouthArabianFonts[] = {u"Segoe UI Historic", 0}; + u"Segoe UI Symbol"}; + static const UChar* const kOldPersianFonts[] = {u"Segoe UI Historic"}; + static const UChar* const kOldSouthArabianFonts[] = {u"Segoe UI Historic"}; static const UChar* const kOriyaFonts[] = {u"Kalinga", u"ori1Uni", - u"Lohit Oriya", u"Nirmala UI", 0}; + u"Lohit Oriya", u"Nirmala UI"}; static const UChar* const kOrkhonFonts[] = {u"Segoe UI Historic", - u"Segoe UI Symbol", 0}; - static const UChar* const kOsmanyaFonts[] = {u"Ebrima", 0}; - static const UChar* const kPhagsPaFonts[] = {u"Microsoft PhagsPa", 0}; + u"Segoe UI Symbol"}; + static const UChar* const kOsmanyaFonts[] = {u"Ebrima"}; + static const UChar* const kPhagsPaFonts[] = {u"Microsoft PhagsPa"}; static const UChar* const kRunicFonts[] = {u"Segoe UI Historic", - u"Segoe UI Symbol", 0}; - static const UChar* const kShavianFonts[] = {u"Segoe UI Historic", 0}; + u"Segoe UI Symbol"}; + static const UChar* const kShavianFonts[] = {u"Segoe UI Historic"}; static const UChar* const kSimplifiedHanFonts[] = {u"Microsoft YaHei", - u"simsun", 0}; - static const UChar* const kSinhalaFonts[] = { - u"Iskoola Pota", u"AksharUnicode", u"Nirmala UI", 0}; - static const UChar* const kSoraSompengFonts[] = {u"Nirmala UI", 0}; - static const UChar* const kSymbolsFonts[] = {u"Segoe UI Symbol", 0}; + u"simsun"}; + static const UChar* const kSinhalaFonts[] = {u"Iskoola Pota", + u"AksharUnicode", u"Nirmala UI"}; + static const UChar* const kSoraSompengFonts[] = {u"Nirmala UI"}; + static const UChar* const kSymbolsFonts[] = {u"Segoe UI Symbol"}; static const UChar* const kSyriacFonts[] = { - u"Estrangelo Edessa", u"Estrangelo Nisibin", u"Code2000", 0}; - static const UChar* const kTaiLeFonts[] = {u"Microsoft Tai Le", 0}; - static const UChar* const kTamilFonts[] = {u"Nirmala UI", u"Latha", 0}; - static const UChar* const kTeluguFonts[] = {u"Nirmala UI", u"Gautami", 0}; - static const UChar* const kThaanaFonts[] = {u"MV Boli", 0}; + u"Estrangelo Edessa", u"Estrangelo Nisibin", u"Code2000"}; + static const UChar* const kTaiLeFonts[] = {u"Microsoft Tai Le"}; + static const UChar* const kTamilFonts[] = {u"Nirmala UI", u"Latha"}; + static const UChar* const kTeluguFonts[] = {u"Nirmala UI", u"Gautami"}; + static const UChar* const kThaanaFonts[] = {u"MV Boli"}; static const UChar* const kThaiFonts[] = {u"Tahoma", u"Leelawadee UI", - u"Leelawadee", 0}; + u"Leelawadee"}; static const UChar* const kTibetanFonts[] = { - u"Microsoft Himalaya", u"Jomolhari", u"Tibetan Machine Uni", 0}; - static const UChar* const kTifinaghFonts[] = {u"Ebrima", 0}; + u"Microsoft Himalaya", u"Jomolhari", u"Tibetan Machine Uni"}; + static const UChar* const kTifinaghFonts[] = {u"Ebrima"}; static const UChar* const kTraditionalHanFonts[] = {u"Microsoft JhengHei", - u"pmingliu", 0}; - static const UChar* const kVaiFonts[] = {u"Ebrima", 0}; + u"pmingliu"}; + static const UChar* const kVaiFonts[] = {u"Ebrima"}; static const UChar* const kYiFonts[] = {u"Microsoft Yi Baiti", u"Nuosu SIL", - u"Code2000", 0}; + u"Code2000"}; static const ScriptToFontFamilies kScriptToFontFamilies[] = { {USCRIPT_ARABIC, kArabicFonts}, @@ -305,8 +301,8 @@ // Initialize the locale-dependent mapping from system locale. UScriptCode han_script = LayoutLocale::GetSystem().GetScriptForHan(); - DCHECK(han_script != USCRIPT_HAN); - if (script_font_map[han_script].candidate_family_names) { + DCHECK_NE(han_script, USCRIPT_HAN); + if (!script_font_map[han_script].candidate_family_names.empty()) { script_font_map[USCRIPT_HAN].candidate_family_names = script_font_map[han_script].candidate_family_names; } @@ -314,15 +310,13 @@ void FindFirstExistingCandidateFont(FontMapping& script_font_mapping, SkFontMgr* font_manager) { - for (const UChar* const* family_ptr = - script_font_mapping.candidate_family_names; - *family_ptr; family_ptr++) { - if (IsFontPresent(*family_ptr, font_manager)) { - script_font_mapping.family_name = *family_ptr; + for (const UChar* family : script_font_mapping.candidate_family_names) { + if (IsFontPresent(family, font_manager)) { + script_font_mapping.family_name = family; break; } } - script_font_mapping.candidate_family_names = nullptr; + script_font_mapping.candidate_family_names = {}; } // There are a lot of characters in USCRIPT_COMMON that can be covered @@ -382,15 +376,15 @@ static const UChar* math_font = 0; static bool initialized = false; if (!initialized) { - for (size_t i = 0; i < std::size(kEmojiFonts); i++) { - if (IsFontPresent(kEmojiFonts[i], font_manager)) { - emoji_font = kEmojiFonts[i]; + for (const UChar* font : kEmojiFonts) { + if (IsFontPresent(font, font_manager)) { + emoji_font = font; break; } } - for (size_t i = 0; i < std::size(kMathFonts); i++) { - if (IsFontPresent(kMathFonts[i], font_manager)) { - math_font = kMathFonts[i]; + for (const UChar* font : kMathFonts) { + if (IsFontPresent(font, font_manager)) { + math_font = font; break; } } @@ -425,7 +419,7 @@ return math_font; default: return 0; - }; + } } } // namespace @@ -463,7 +457,7 @@ if (monospace_family) return monospace_family; } - if (script_font_map[script].candidate_family_names) + if (!script_font_map[script].candidate_family_names.empty()) FindFirstExistingCandidateFont(script_font_map[script], font_manager); return script_font_map[script].family_name; }
diff --git a/third_party/blink/renderer/platform/graphics/canvas_2d_layer_bridge_test.cc b/third_party/blink/renderer/platform/graphics/canvas_2d_layer_bridge_test.cc index 999fda85..5bd19439 100644 --- a/third_party/blink/renderer/platform/graphics/canvas_2d_layer_bridge_test.cc +++ b/third_party/blink/renderer/platform/graphics/canvas_2d_layer_bridge_test.cc
@@ -914,7 +914,7 @@ std::unique_ptr<Canvas2DLayerBridge> bridge = MakeBridge(size, RasterMode::kGPU, kNonOpaque); - bridge->GetPaintCanvas()->clear(SK_ColorRED); + bridge->GetPaintCanvas()->clear(SkColors::kRed); DrawSomething(bridge.get()); ASSERT_TRUE(bridge->layer_for_testing());
diff --git a/third_party/blink/renderer/platform/graphics/canvas_resource_provider.cc b/third_party/blink/renderer/platform/graphics/canvas_resource_provider.cc index 7ad6c511..6872d14 100644 --- a/third_party/blink/renderer/platform/graphics/canvas_resource_provider.cc +++ b/third_party/blink/renderer/platform/graphics/canvas_resource_provider.cc
@@ -1512,9 +1512,9 @@ // printing operations. See crbug.com/1003114 DCHECK(IsValid()); if (info_.alphaType() == kOpaque_SkAlphaType) - Canvas()->clear(SK_ColorBLACK); + Canvas()->clear(SkColors::kBlack); else - Canvas()->clear(SK_ColorTRANSPARENT); + Canvas()->clear(SkColors::kTransparent); FlushCanvas(); ClearFrame();
diff --git a/third_party/blink/renderer/platform/graphics/canvas_resource_provider_test.cc b/third_party/blink/renderer/platform/graphics/canvas_resource_provider_test.cc index 10003d9..5e4ed7f 100644 --- a/third_party/blink/renderer/platform/graphics/canvas_resource_provider_test.cc +++ b/third_party/blink/renderer/platform/graphics/canvas_resource_provider_test.cc
@@ -191,7 +191,7 @@ EXPECT_EQ(sync_token, resource->GetSyncToken()); // Resource updated after draw. - provider->Canvas()->clear(SK_ColorWHITE); + provider->Canvas()->clear(SkColors::kWhite); auto new_resource = provider->ProduceCanvasResource(); EXPECT_NE(resource, new_resource); EXPECT_NE(sync_token, new_resource->GetSyncToken()); @@ -205,7 +205,7 @@ resource = nullptr; std::move(release_callback).Run(sync_token, false); - provider->Canvas()->clear(SK_ColorBLACK); + provider->Canvas()->clear(SkColors::kBlack); auto resource_again = provider->ProduceCanvasResource(); EXPECT_EQ(resource_ptr, resource_again); EXPECT_NE(sync_token, resource_again->GetSyncToken()); @@ -237,7 +237,7 @@ image->GetMailboxHolder().mailbox); // Resource updated after draw. - provider->Canvas()->clear(SK_ColorWHITE); + provider->Canvas()->clear(SkColors::kWhite); provider->FlushCanvas(); new_image = provider->Snapshot(); EXPECT_NE(new_image->GetMailboxHolder().mailbox, @@ -246,7 +246,7 @@ // Resource recycled. auto original_mailbox = image->GetMailboxHolder().mailbox; image.reset(); - provider->Canvas()->clear(SK_ColorBLACK); + provider->Canvas()->clear(SkColors::kBlack); provider->FlushCanvas(); EXPECT_EQ(original_mailbox, provider->Snapshot()->GetMailboxHolder().mailbox); } @@ -532,10 +532,10 @@ EXPECT_TRUE(dst_canvas->IsCachingImage(src_content_id)); - src_provider->Canvas()->clear( - SK_ColorWHITE); // Modify the canvas to trigger OnFlushForImage - src_provider - ->ProduceCanvasResource(); // So that all the cached draws are executed + // Modify the canvas to trigger OnFlushForImage + src_provider->Canvas()->clear(SkColors::kWhite); + // So that all the cached draws are executed + src_provider->ProduceCanvasResource(); // The paint canvas may have moved dst_canvas = static_cast<MemoryManagedPaintCanvas*>(dst_provider->Canvas());
diff --git a/third_party/blink/renderer/platform/graphics/filters/paint_filter_builder.cc b/third_party/blink/renderer/platform/graphics/filters/paint_filter_builder.cc index 66a9034..227bc6c 100644 --- a/third_party/blink/renderer/platform/graphics/filters/paint_filter_builder.cc +++ b/third_party/blink/renderer/platform/graphics/filters/paint_filter_builder.cc
@@ -126,7 +126,7 @@ bitmap.allocPixels(SkImageInfo::MakeN32Premul( mask_bounds_rounded.width(), mask_bounds_rounded.height())); SkiaPaintCanvas canvas(bitmap); - canvas.clear(SK_ColorTRANSPARENT); + canvas.clear(SkColors::kTransparent); canvas.translate(-mask_record_bounds.x(), -mask_record_bounds.y()); canvas.drawPicture(mask_record); PaintImage image = PaintImageBuilder::WithDefault()
diff --git a/third_party/blink/renderer/platform/graphics/paint/drawing_display_item.cc b/third_party/blink/renderer/platform/graphics/paint/drawing_display_item.cc index 745472d..0fe3037 100644 --- a/third_party/blink/renderer/platform/graphics/paint/drawing_display_item.cc +++ b/third_party/blink/renderer/platform/graphics/paint/drawing_display_item.cc
@@ -28,7 +28,7 @@ return bitmap; SkiaPaintCanvas canvas(bitmap); - canvas.clear(SK_ColorTRANSPARENT); + canvas.clear(SkColors::kTransparent); canvas.translate(-bounds.x(), -bounds.y()); canvas.drawPicture(std::move(record)); return bitmap;
diff --git a/third_party/blink/renderer/platform/graphics/paint/raster_invalidation_tracking.cc b/third_party/blink/renderer/platform/graphics/paint/raster_invalidation_tracking.cc index 08ec76e..4c09e7042 100644 --- a/third_party/blink/renderer/platform/graphics/paint/raster_invalidation_tracking.cc +++ b/third_party/blink/renderer/platform/graphics/paint/raster_invalidation_tracking.cc
@@ -179,7 +179,7 @@ return; { SkiaPaintCanvas canvas(old_bitmap); - canvas.clear(SK_ColorTRANSPARENT); + canvas.clear(SkColors::kTransparent); canvas.translate(-rect.x(), -rect.y()); canvas.drawPicture(std::move(old_record)); } @@ -190,7 +190,7 @@ return; { SkiaPaintCanvas canvas(new_bitmap); - canvas.clear(SK_ColorTRANSPARENT); + canvas.clear(SkColors::kTransparent); canvas.translate(-rect.x(), -rect.y()); canvas.drawPicture(std::move(new_record)); }
diff --git a/third_party/blink/renderer/platform/graphics/test/mock_paint_canvas.h b/third_party/blink/renderer/platform/graphics/test/mock_paint_canvas.h index b8f9f2c5..5751a413 100644 --- a/third_party/blink/renderer/platform/graphics/test/mock_paint_canvas.h +++ b/third_party/blink/renderer/platform/graphics/test/mock_paint_canvas.h
@@ -52,9 +52,8 @@ MOCK_CONST_METHOD1(getLocalClipBounds, bool(SkRect* bounds)); MOCK_CONST_METHOD0(getDeviceClipBounds, SkIRect()); MOCK_CONST_METHOD1(getDeviceClipBounds, bool(SkIRect* bounds)); - MOCK_METHOD2(drawColor, void(SkColor color, SkBlendMode mode)); MOCK_METHOD2(drawColor, void(SkColor4f color, SkBlendMode mode)); - MOCK_METHOD1(clear, void(SkColor color)); + MOCK_METHOD1(clearInt, void(SkColor color)); MOCK_METHOD1(clear, void(SkColor4f color)); MOCK_METHOD5(drawLine, void(SkScalar x0,
diff --git a/third_party/blink/renderer/platform/peerconnection/coalesced_tasks_test.cc b/third_party/blink/renderer/platform/peerconnection/coalesced_tasks_test.cc index fcb3174..3af42e8 100644 --- a/third_party/blink/renderer/platform/peerconnection/coalesced_tasks_test.cc +++ b/third_party/blink/renderer/platform/peerconnection/coalesced_tasks_test.cc
@@ -10,7 +10,6 @@ #include "base/time/time.h" #include "testing/gmock/include/gmock/gmock.h" #include "testing/gtest/include/gtest/gtest.h" -#include "third_party/webrtc/rtc_base/task_utils/to_queued_task.h" namespace blink { @@ -37,15 +36,15 @@ base::TimeTicks scheduled_time = now + base::Milliseconds(10); CoalescedTasks coalesced_tasks; - coalesced_tasks.QueueDelayedTask( - now + base::Milliseconds(5), - webrtc::ToQueuedTask(second_callback.AsStdFunction()), scheduled_time); - coalesced_tasks.QueueDelayedTask( - now + base::Milliseconds(1), - webrtc::ToQueuedTask(first_callback.AsStdFunction()), scheduled_time); - coalesced_tasks.QueueDelayedTask( - now + base::Milliseconds(9), - webrtc::ToQueuedTask(third_callback.AsStdFunction()), scheduled_time); + coalesced_tasks.QueueDelayedTask(now + base::Milliseconds(5), + second_callback.AsStdFunction(), + scheduled_time); + coalesced_tasks.QueueDelayedTask(now + base::Milliseconds(1), + first_callback.AsStdFunction(), + scheduled_time); + coalesced_tasks.QueueDelayedTask(now + base::Milliseconds(9), + third_callback.AsStdFunction(), + scheduled_time); coalesced_tasks.RunScheduledTasks(scheduled_time); EXPECT_THAT(run_tasks, ElementsAre("first", "second", "third")); @@ -72,18 +71,15 @@ base::TimeTicks second_scheduled_time = now + base::Milliseconds(20); CoalescedTasks coalesced_tasks; - coalesced_tasks.QueueDelayedTask( - now + base::Milliseconds(11), - webrtc::ToQueuedTask(third_callback.AsStdFunction()), - second_scheduled_time); - coalesced_tasks.QueueDelayedTask( - now + base::Milliseconds(9), - webrtc::ToQueuedTask(first_callback.AsStdFunction()), - first_scheduled_time); - coalesced_tasks.QueueDelayedTask( - now + base::Milliseconds(10), - webrtc::ToQueuedTask(second_callback.AsStdFunction()), - first_scheduled_time); + coalesced_tasks.QueueDelayedTask(now + base::Milliseconds(11), + third_callback.AsStdFunction(), + second_scheduled_time); + coalesced_tasks.QueueDelayedTask(now + base::Milliseconds(9), + first_callback.AsStdFunction(), + first_scheduled_time); + coalesced_tasks.QueueDelayedTask(now + base::Milliseconds(10), + second_callback.AsStdFunction(), + first_scheduled_time); coalesced_tasks.RunScheduledTasks(first_scheduled_time); EXPECT_THAT(run_tasks, ElementsAre("first", "second")); @@ -104,44 +100,37 @@ CoalescedTasks coalesced_tasks; // `second_scheduled_time` needs to be scheduled. - EXPECT_TRUE(coalesced_tasks.QueueDelayedTask( - second_scheduled_time, - webrtc::ToQueuedTask(dummy_callback.AsStdFunction()), - second_scheduled_time)); + EXPECT_TRUE(coalesced_tasks.QueueDelayedTask(second_scheduled_time, + dummy_callback.AsStdFunction(), + second_scheduled_time)); // `second_scheduled_time` does not need to be scheduled multiple times. - EXPECT_FALSE(coalesced_tasks.QueueDelayedTask( - second_scheduled_time, - webrtc::ToQueuedTask(dummy_callback.AsStdFunction()), - second_scheduled_time)); + EXPECT_FALSE(coalesced_tasks.QueueDelayedTask(second_scheduled_time, + dummy_callback.AsStdFunction(), + second_scheduled_time)); // `first_scheduled_time` needs to be scheduled. - EXPECT_TRUE(coalesced_tasks.QueueDelayedTask( - first_scheduled_time, - webrtc::ToQueuedTask(dummy_callback.AsStdFunction()), - first_scheduled_time)); + EXPECT_TRUE(coalesced_tasks.QueueDelayedTask(first_scheduled_time, + dummy_callback.AsStdFunction(), + first_scheduled_time)); // `first_scheduled_time` does not need to be scheduled multiple times. - EXPECT_FALSE(coalesced_tasks.QueueDelayedTask( - first_scheduled_time, - webrtc::ToQueuedTask(dummy_callback.AsStdFunction()), - first_scheduled_time)); + EXPECT_FALSE(coalesced_tasks.QueueDelayedTask(first_scheduled_time, + dummy_callback.AsStdFunction(), + first_scheduled_time)); coalesced_tasks.RunScheduledTasks(first_scheduled_time); // `first_scheduled_time` is no longer scheduled, so this returns true. - EXPECT_TRUE(coalesced_tasks.QueueDelayedTask( - first_scheduled_time, - webrtc::ToQueuedTask(dummy_callback.AsStdFunction()), - first_scheduled_time)); + EXPECT_TRUE(coalesced_tasks.QueueDelayedTask(first_scheduled_time, + dummy_callback.AsStdFunction(), + first_scheduled_time)); // `second_scheduled_time` is still scheduled. - EXPECT_FALSE(coalesced_tasks.QueueDelayedTask( - second_scheduled_time, - webrtc::ToQueuedTask(dummy_callback.AsStdFunction()), - second_scheduled_time)); + EXPECT_FALSE(coalesced_tasks.QueueDelayedTask(second_scheduled_time, + dummy_callback.AsStdFunction(), + second_scheduled_time)); coalesced_tasks.RunScheduledTasks(second_scheduled_time); // `second_scheduled_time` is no longer scheduled, so this returns true. - EXPECT_TRUE(coalesced_tasks.QueueDelayedTask( - second_scheduled_time, - webrtc::ToQueuedTask(dummy_callback.AsStdFunction()), - second_scheduled_time)); + EXPECT_TRUE(coalesced_tasks.QueueDelayedTask(second_scheduled_time, + dummy_callback.AsStdFunction(), + second_scheduled_time)); coalesced_tasks.Clear(); } @@ -174,8 +163,7 @@ base::TimeTicks now; CoalescedTasks coalesced_tasks; - coalesced_tasks.QueueDelayedTask( - now, webrtc::ToQueuedTask(task_callback.AsStdFunction()), now); + coalesced_tasks.QueueDelayedTask(now, task_callback.AsStdFunction(), now); coalesced_tasks.RunScheduledTasks(now, prepare_callback, finalize_callback); EXPECT_THAT(run_tasks, ElementsAre("prepare", "task", "finalize"));
diff --git a/third_party/blink/renderer/platform/peerconnection/metronome_source_test.cc b/third_party/blink/renderer/platform/peerconnection/metronome_source_test.cc index 9b7581c..aaf78c7 100644 --- a/third_party/blink/renderer/platform/peerconnection/metronome_source_test.cc +++ b/third_party/blink/renderer/platform/peerconnection/metronome_source_test.cc
@@ -15,7 +15,6 @@ #include "base/test/task_environment.h" #include "base/time/time.h" #include "testing/gtest/include/gtest/gtest.h" -#include "third_party/webrtc/api/task_queue/queued_task.h" #include "third_party/webrtc/api/task_queue/task_queue_base.h" namespace blink { @@ -47,12 +46,17 @@ void Delete() override { NOTREACHED(); } - void PostDelayedTask(std::unique_ptr<webrtc::QueuedTask> task, - uint32_t milliseconds) override { + void PostDelayedTask(absl::AnyInvocable<void() &&> task, + webrtc::TimeDelta delay) override { NOTREACHED(); } - void PostTask(std::unique_ptr<webrtc::QueuedTask> task) override { + void PostDelayedHighPrecisionTask(absl::AnyInvocable<void() &&> task, + webrtc::TimeDelta delay) override { + NOTREACHED(); + } + + void PostTask(absl::AnyInvocable<void() &&> task) override { last_task_ = std::move(task); if (!retain_tasks_) PostLastTask(); @@ -60,14 +64,14 @@ void PostLastTask() { if (last_task_) { - PostOnRunner(FROM_HERE, - base::BindOnce( - [](FakeTaskQueue* thiz, - std::unique_ptr<webrtc::QueuedTask> task) { - if (!task->Run()) - task.release(); - }, - base::Unretained(this), std::move(last_task_))); + PostOnRunner( + FROM_HERE, + base::BindOnce( + [](FakeTaskQueue* thiz, absl::AnyInvocable<void() &&> task) { + webrtc::TaskQueueBase::CurrentTaskQueueSetter setter(thiz); + std::move(task)(); + }, + base::Unretained(this), std::move(last_task_))); } } @@ -85,7 +89,7 @@ private: const bool retain_tasks_; scoped_refptr<base::SequencedTaskRunner> runner_; - std::unique_ptr<webrtc::QueuedTask> last_task_; + absl::AnyInvocable<void() &&> last_task_; }; class FakeTickListener : public webrtc::Metronome::TickListener {
diff --git a/third_party/blink/renderer/platform/peerconnection/task_queue_factory_test.cc b/third_party/blink/renderer/platform/peerconnection/task_queue_factory_test.cc index 2f991f09..9e1392b9 100644 --- a/third_party/blink/renderer/platform/peerconnection/task_queue_factory_test.cc +++ b/third_party/blink/renderer/platform/peerconnection/task_queue_factory_test.cc
@@ -13,7 +13,6 @@ #include "testing/gmock/include/gmock/gmock.h" #include "testing/gtest/include/gtest/gtest.h" #include "third_party/webrtc/api/task_queue/task_queue_test.h" -#include "third_party/webrtc/rtc_base/task_utils/to_queued_task.h" #include "third_party/webrtc_overrides/metronome_source.h" #include "third_party/webrtc_overrides/test/metronome_like_task_queue_test.h"
diff --git a/third_party/blink/web_tests/SlowTests b/third_party/blink/web_tests/SlowTests index f6c6cc4..f597791e 100644 --- a/third_party/blink/web_tests/SlowTests +++ b/third_party/blink/web_tests/SlowTests
@@ -820,3 +820,8 @@ crbug.com/1300811 [ Debug Linux ] animations/interpolation/webkit-column-width-interpolation.html [ Slow ] crbug.com/1228246 http/tests/inspector-protocol/network-fetch-content-with-error-status-code.js [ Slow ] +crbug.com/1228246 http/tests/inspector-protocol/network/disable-interception-midway.js [ Slow ] +crbug.com/1228246 http/tests/inspector-protocol/fetch/request-paused-network-id-cors.js [ Slow ] +crbug.com/1228246 http/tests/inspector-protocol/fetch/fetch-cors-preflight-sw.js [ Slow ] +crbug.com/1228246 http/tests/inspector-protocol/network/request-interception-patterns.js [ Slow ] +crbug.com/1228246 http/tests/inspector-protocol/fetch/disable-with-response-in-flight.js [ Slow ]
diff --git a/third_party/blink/web_tests/TestExpectations b/third_party/blink/web_tests/TestExpectations index a45b250..35d7cb1 100644 --- a/third_party/blink/web_tests/TestExpectations +++ b/third_party/blink/web_tests/TestExpectations
@@ -206,14 +206,6 @@ # --- Skia roll test suppressions -crbug.com/1320294 virtual/oopr-canvas2d/fast/canvas/canvas-arc-circumference.html [ Failure Pass ] -crbug.com/1320294 virtual/oopr-canvas2d/fast/canvas/canvas-ellipse-circumference.html [ Failure Pass ] -crbug.com/1320294 virtual/oopr-canvas2d/fast/canvas/canvas-ellipse-connecting-line.html [ Failure Pass ] -crbug.com/1320294 virtual/oopr-canvas2d/fast/canvas/canvas-zero-length-lineCap.html [ Failure Pass ] - -crbug.com/1344252 svg/W3C-SVG-1.1/pservers-grad-05-b.svg [ Failure Pass ] -crbug.com/1344252 svg/wicd/test-scalable-background-image2.xhtml [ Failure Pass ] - # --- END Skia roll test suppresions @@ -284,7 +276,8 @@ # These tests require the experimental speculative prefetch feature, and requires extra switches to enable content implementation of speculation rules prefetch. # This expectation and the virtual suite can be removed once that is enabled by default. crbug.com/1343590 external/wpt/speculation-rules/prefetch/* [ Skip ] -crbug.com/1343590 virtual/prefetch/external/wpt/speculation-rules/prefetch/* [ Skip ] +crbug.com/1343590 virtual/prefetch/external/wpt/speculation-rules/prefetch/* [ Pass ] +crbug.com/1343590 virtual/prefetch/external/wpt/speculation-rules/prefetch/redirect-url.https.html [ Failure ] crbug.com/1343590 http/tests/inspector-protocol/prefetch/* [ Skip ] crbug.com/1343590 virtual/prefetch/http/tests/inspector-protocol/prefetch/* [ Pass ] @@ -1780,22 +1773,24 @@ virtual/layout_ng_table_frag/external/wpt/css/css-break/table/table-section-paint-vrl-rtl.html [ Pass ] virtual/layout_ng_table_frag/external/wpt/css/css-multicol/table/table-cell-multicol-nested-002.html [ Pass ] virtual/layout_ng_table_frag/external/wpt/css/css-multicol/table/table-cell-multicol-nested-003.html [ Pass ] +virtual/layout_ng_table_frag/fragmentation/break-in-second-table-section.html [ Pass ] +virtual/layout_ng_table_frag/fragmentation/break-in-tbody-after-caption.html [ Pass ] virtual/layout_ng_table_frag/fragmentation/repeating-thead-under-repeating-thead.html [ Pass ] +virtual/layout_ng_table_frag/fragmentation/single-cells-multiple-tables-no-repeating-thead.html [ Pass ] virtual/layout_ng_table_frag/fragmentation/single-line-cells-repeating-thead-cell-straddles-page-unsplittable-div.html [ Pass ] +virtual/layout_ng_table_frag/fragmentation/table-row-dimensions-break-freely.html [ Pass ] +virtual/layout_ng_table_frag/fragmentation/table-row-dimensions-with-thead.html [ Pass ] virtual/layout_ng_table_frag/fragmentation/table-row-page-break-collapsed-border.html [ Pass ] ### Tests failing with LayoutNGTableFragmentation enabled: crbug.com/1295905 [ Mac11-arm64 ] virtual/layout_ng_table_frag/external/wpt/css/css-break/table/sections-and-captions-mixed-order.html [ Failure ] crbug.com/1078927 virtual/layout_ng_table_frag/external/wpt/css/css-multicol/table/balance-table-with-border-spacing.html [ Failure ] crbug.com/1078927 virtual/layout_ng_table_frag/fragmentation/border-spacing-break-before-unbreakable-row.html [ Failure ] -crbug.com/1078927 virtual/layout_ng_table_frag/fragmentation/break-in-second-table-section.html [ Failure ] -crbug.com/1078927 virtual/layout_ng_table_frag/fragmentation/break-in-tbody-after-caption.html [ Failure ] crbug.com/1078927 virtual/layout_ng_table_frag/fragmentation/fragmented-rowspan-alignment.html [ Failure ] crbug.com/1078927 virtual/layout_ng_table_frag/fragmentation/fragmented-rowspan.html [ Failure ] crbug.com/1078927 virtual/layout_ng_table_frag/fragmentation/nested-repeating-thead-2.html [ Failure ] crbug.com/1078927 virtual/layout_ng_table_frag/fragmentation/nested-repeating-thead-3.html [ Failure ] crbug.com/1078927 virtual/layout_ng_table_frag/fragmentation/no-repeating-table-header-after-sections.html [ Failure ] -crbug.com/1078927 virtual/layout_ng_table_frag/fragmentation/single-cells-multiple-tables-no-repeating-thead.html [ Failure ] crbug.com/1078927 virtual/layout_ng_table_frag/fragmentation/single-line-cells-multiple-tables-caption-repeating-thead-tfoot-with-border-spacing-at-top-of-row-2.html [ Failure ] crbug.com/1078927 virtual/layout_ng_table_frag/fragmentation/single-line-cells-multiple-tables-caption-repeating-thead-tfoot-with-border-spacing-at-top-of-row-3.html [ Failure ] crbug.com/1078927 virtual/layout_ng_table_frag/fragmentation/single-line-cells-multiple-tables-caption-repeating-thead-tfoot-with-border-spacing-at-top-of-row-4.html [ Failure ] @@ -1812,8 +1807,6 @@ crbug.com/1078927 virtual/layout_ng_table_frag/fragmentation/single-line-cells-repeating-thead-tfoot-with-two-captions.html [ Failure ] crbug.com/1078927 virtual/layout_ng_table_frag/fragmentation/single-line-cells-repeating-thead-tfoot.html [ Failure ] crbug.com/1078927 virtual/layout_ng_table_frag/fragmentation/table-overlapping-rowspan.html [ Failure ] -crbug.com/1078927 virtual/layout_ng_table_frag/fragmentation/table-row-dimensions-break-freely.html [ Failure ] -crbug.com/1078927 virtual/layout_ng_table_frag/fragmentation/table-row-dimensions-with-thead.html [ Failure ] ### With LayoutNGPrinting enabled: @@ -4047,8 +4040,13 @@ crbug.com/1224888 external/wpt/css/css-multicol/spanner-in-opacity.html [ Failure ] crbug.com/1078927 external/wpt/css/css-multicol/table/table-cell-multicol-nested-002.html [ Failure ] crbug.com/1078927 external/wpt/css/css-multicol/table/table-cell-multicol-nested-003.html [ Failure ] +crbug.com/1078927 fragmentation/break-in-second-table-section.html [ Failure ] +crbug.com/1078927 fragmentation/break-in-tbody-after-caption.html [ Failure ] crbug.com/849459 fragmentation/repeating-thead-under-repeating-thead.html [ Failure ] +crbug.com/1078927 fragmentation/single-cells-multiple-tables-no-repeating-thead.html [ Failure ] crbug.com/1078927 fragmentation/single-line-cells-repeating-thead-cell-straddles-page-unsplittable-div.html [ Failure ] +crbug.com/1078927 fragmentation/table-row-dimensions-break-freely.html [ Failure ] +crbug.com/1078927 fragmentation/table-row-dimensions-with-thead.html [ Failure ] crbug.com/1078927 fragmentation/table-row-page-break-collapsed-border.html [ Failure ] crbug.com/1031667 external/wpt/css/css-pseudo/marker-content-007.tentative.html [ Failure ] @@ -7150,3 +7148,5 @@ # Sheriff 2022-07-21 crbug.com/1346043 crbug.com/626703 [ Win10.20h2 ] external/wpt/credential-management/fedcm-network-requests.sub.https.html [ Skip ] +crbug.com/1346158 crbug.com/1346158 external/wpt/dom/events/non-cancelable-when-passive/non-passive-mousewheel-event-listener-on-window.html [ Pass Failure ] +crbug.com/1310202 [ Mac11 ] wpt_internal/navigation-api/ordering-and-transition/navigate-cross-document-double.html [ Pass Failure ]
diff --git a/third_party/blink/web_tests/android/ChromeWPTOverrideExpectations b/third_party/blink/web_tests/android/ChromeWPTOverrideExpectations index 0d7c0df5..3d7c94e1 100644 --- a/third_party/blink/web_tests/android/ChromeWPTOverrideExpectations +++ b/third_party/blink/web_tests/android/ChromeWPTOverrideExpectations
@@ -319,7 +319,6 @@ crbug.com/1050754 external/wpt/IndexedDB/key-generators/reading-autoincrement-store.any.sharedworker.html [ Failure ] crbug.com/1050754 external/wpt/IndexedDB/transaction-abort-generator-revert.html [ Failure Pass ] crbug.com/1050754 external/wpt/WebCryptoAPI/historical.any.sharedworker.html [ Failure ] -crbug.com/1050754 external/wpt/WebIDL/ecmascript-binding/global-immutable-prototype.any.sharedworker.html [ Failure ] crbug.com/1050754 external/wpt/accelerometer/Accelerometer.https.html [ Failure ] crbug.com/1050754 external/wpt/animation-worklet/inactive-timeline.https.html [ Timeout ] crbug.com/1050754 external/wpt/animation-worklet/scroll-timeline-writing-modes.https.html [ Failure ]
diff --git a/third_party/blink/web_tests/android/WebLayerWPTOverrideExpectations b/third_party/blink/web_tests/android/WebLayerWPTOverrideExpectations index e5865391..e265653 100644 --- a/third_party/blink/web_tests/android/WebLayerWPTOverrideExpectations +++ b/third_party/blink/web_tests/android/WebLayerWPTOverrideExpectations
@@ -374,11 +374,6 @@ crbug.com/1050754 external/wpt/IndexedDB/key-generators/reading-autoincrement-store.any.sharedworker.html [ Failure ] crbug.com/1050754 external/wpt/IndexedDB/transaction-abort-generator-revert.html [ Failure Pass ] crbug.com/1050754 external/wpt/WebCryptoAPI/historical.any.sharedworker.html [ Failure ] -crbug.com/1050754 external/wpt/WebIDL/ecmascript-binding/global-immutable-prototype.any.sharedworker.html [ Failure ] -crbug.com/1050754 external/wpt/WebIDL/ecmascript-binding/global-object-implicit-this-value.any.serviceworker.html [ Failure ] -crbug.com/1050754 external/wpt/WebIDL/ecmascript-binding/global-object-implicit-this-value.any.sharedworker.html [ Failure ] -crbug.com/1050754 external/wpt/WebIDL/ecmascript-binding/global-object-implicit-this-value.any.worker.html [ Failure ] -crbug.com/1050754 external/wpt/WebIDL/ecmascript-binding/window-named-properties-object.html [ Failure ] crbug.com/1050754 external/wpt/accelerometer/Accelerometer.https.html [ Failure ] crbug.com/1050754 external/wpt/animation-worklet/inactive-timeline.https.html [ Timeout ] crbug.com/1050754 external/wpt/animation-worklet/scroll-timeline-writing-modes.https.html [ Failure ]
diff --git a/third_party/blink/web_tests/android/WebviewWPTExpectations b/third_party/blink/web_tests/android/WebviewWPTExpectations index 953ea438..d6a830ea 100644 --- a/third_party/blink/web_tests/android/WebviewWPTExpectations +++ b/third_party/blink/web_tests/android/WebviewWPTExpectations
@@ -208,17 +208,6 @@ crbug.com/1050754 external/wpt/WebCryptoAPI/import_export/symmetric_importKey.https.worker.html [ Failure Pass ] crbug.com/1050754 external/wpt/WebCryptoAPI/import_export/test_rsa_importKey.https.html [ Pass Timeout ] crbug.com/1050754 external/wpt/WebCryptoAPI/import_export/test_symmetric_importKey.https.html [ Failure Pass ] -crbug.com/1050754 external/wpt/WebIDL/current-realm.html [ Failure Pass ] -crbug.com/1050754 external/wpt/WebIDL/ecmascript-binding/constructors.html [ Failure Pass ] -crbug.com/1050754 external/wpt/WebIDL/ecmascript-binding/default-iterator-object.html [ Failure Pass ] -crbug.com/1050754 external/wpt/WebIDL/ecmascript-binding/es-exceptions/DOMException-custom-bindings.any.html [ Failure Pass ] -crbug.com/1050754 external/wpt/WebIDL/ecmascript-binding/es-exceptions/DOMException-custom-bindings.any.worker.html [ Failure Pass ] -crbug.com/1050754 external/wpt/WebIDL/ecmascript-binding/global-immutable-prototype.any.sharedworker.html [ Failure ] -crbug.com/1050754 external/wpt/WebIDL/ecmascript-binding/interface-prototype-object.html [ Failure Pass ] -crbug.com/1050754 external/wpt/WebIDL/ecmascript-binding/iterator-prototype-object.html [ Failure Pass ] -crbug.com/1050754 external/wpt/WebIDL/ecmascript-binding/legacy-platform-object/OwnPropertyKeys.html [ Failure Pass ] -crbug.com/1050754 external/wpt/WebIDL/ecmascript-binding/put-forwards.html [ Failure Pass ] -crbug.com/1050754 external/wpt/WebIDL/ecmascript-binding/sequence-conversion.html [ Failure Pass ] crbug.com/1050754 external/wpt/accelerometer/Accelerometer-disabled-by-feature-policy.https.html [ Failure Pass ] crbug.com/1050754 external/wpt/accelerometer/Accelerometer-enabled-by-feature-policy-attribute-redirect-on-load.https.html [ Failure Pass ] crbug.com/1050754 external/wpt/accelerometer/Accelerometer-enabled-by-feature-policy-attribute.https.html [ Failure Pass ]
diff --git a/third_party/blink/web_tests/external/wpt/css/selectors/modal-pseudo-class.html b/third_party/blink/web_tests/external/wpt/css/selectors/modal-pseudo-class.html index 94b7b20..59dd257 100644 --- a/third_party/blink/web_tests/external/wpt/css/selectors/modal-pseudo-class.html +++ b/third_party/blink/web_tests/external/wpt/css/selectors/modal-pseudo-class.html
@@ -2,15 +2,22 @@ <meta charset="utf-8"/> <title>:modal pseudo-class</title> <link rel="author" title="Tim Nguyen" href="https://github.com/nt1m"> +<link rel="author" title="Jihwan Marc Kim" href="mailto:bluewhale.marc@gmail.com" /> <link rel="help" href="https://drafts.csswg.org/selectors/#modal-state"> <script src="/resources/testharness.js"></script> <script src="/resources/testharnessreport.js"></script> +<script src="/resources/testdriver.js"></script> +<script src="/resources/testdriver-vendor.js"></script> <dialog id="dialog">Just another dialog.</dialog> +<div id="container"> + <button id="btn"/> +</div> <script> setup({ single_test: true }); + // dialog element test const dialog = document.getElementById("dialog"); assert_false(dialog.matches(":modal"), "dialog is initially closed (does not match :modal)"); @@ -34,5 +41,19 @@ dialog.close(); - done(); + // fullscreen element test + const container = document.getElementById("container"); + const btn = document.getElementById("btn"); + + assert_false(container.matches(":modal"), "before requestFullscreen (does not match :modal)"); + + test_driver.click(btn).then(() => { + return container.requestFullscreen(); + }).then(() => { + assert_true(container.matches(":modal"), ":fullscreen should match :modal"); + return document.exitFullscreen(); + }).then(() => { + assert_false(container.matches(":modal"), "after exitFullscreen (does not match :modal)"); + done(); + }); </script>
diff --git a/third_party/blink/web_tests/flag-specific/disable-layout-ng/svg/W3C-SVG-1.1/pservers-grad-05-b-expected.png b/third_party/blink/web_tests/flag-specific/disable-layout-ng/svg/W3C-SVG-1.1/pservers-grad-05-b-expected.png new file mode 100644 index 0000000..1288626 --- /dev/null +++ b/third_party/blink/web_tests/flag-specific/disable-layout-ng/svg/W3C-SVG-1.1/pservers-grad-05-b-expected.png Binary files differ
diff --git a/third_party/blink/web_tests/flag-specific/disable-layout-ng/svg/wicd/test-scalable-background-image2-expected.png b/third_party/blink/web_tests/flag-specific/disable-layout-ng/svg/wicd/test-scalable-background-image2-expected.png index 75488ebca..aee06d9 100644 --- a/third_party/blink/web_tests/flag-specific/disable-layout-ng/svg/wicd/test-scalable-background-image2-expected.png +++ b/third_party/blink/web_tests/flag-specific/disable-layout-ng/svg/wicd/test-scalable-background-image2-expected.png Binary files differ
diff --git a/third_party/blink/web_tests/flag-specific/disable-layout-ng/virtual/oopr-canvas2d/fast/canvas/canvas-arc-circumference-expected.png b/third_party/blink/web_tests/flag-specific/disable-layout-ng/virtual/oopr-canvas2d/fast/canvas/canvas-arc-circumference-expected.png new file mode 100644 index 0000000..242ff5ea --- /dev/null +++ b/third_party/blink/web_tests/flag-specific/disable-layout-ng/virtual/oopr-canvas2d/fast/canvas/canvas-arc-circumference-expected.png Binary files differ
diff --git a/third_party/blink/web_tests/flag-specific/disable-layout-ng/virtual/oopr-canvas2d/fast/canvas/canvas-ellipse-circumference-expected.png b/third_party/blink/web_tests/flag-specific/disable-layout-ng/virtual/oopr-canvas2d/fast/canvas/canvas-ellipse-circumference-expected.png new file mode 100644 index 0000000..14574ee0 --- /dev/null +++ b/third_party/blink/web_tests/flag-specific/disable-layout-ng/virtual/oopr-canvas2d/fast/canvas/canvas-ellipse-circumference-expected.png Binary files differ
diff --git a/third_party/blink/web_tests/flag-specific/disable-layout-ng/virtual/oopr-canvas2d/fast/canvas/canvas-ellipse-connecting-line-expected.png b/third_party/blink/web_tests/flag-specific/disable-layout-ng/virtual/oopr-canvas2d/fast/canvas/canvas-ellipse-connecting-line-expected.png new file mode 100644 index 0000000..84fc034 --- /dev/null +++ b/third_party/blink/web_tests/flag-specific/disable-layout-ng/virtual/oopr-canvas2d/fast/canvas/canvas-ellipse-connecting-line-expected.png Binary files differ
diff --git a/third_party/blink/web_tests/platform/generic/virtual/oopr-canvas2d/fast/canvas/canvas-zero-length-lineCap-expected.png b/third_party/blink/web_tests/flag-specific/disable-layout-ng/virtual/oopr-canvas2d/fast/canvas/canvas-zero-length-lineCap-expected.png similarity index 76% rename from third_party/blink/web_tests/platform/generic/virtual/oopr-canvas2d/fast/canvas/canvas-zero-length-lineCap-expected.png rename to third_party/blink/web_tests/flag-specific/disable-layout-ng/virtual/oopr-canvas2d/fast/canvas/canvas-zero-length-lineCap-expected.png index 0b31a0d..61fb575 100644 --- a/third_party/blink/web_tests/platform/generic/virtual/oopr-canvas2d/fast/canvas/canvas-zero-length-lineCap-expected.png +++ b/third_party/blink/web_tests/flag-specific/disable-layout-ng/virtual/oopr-canvas2d/fast/canvas/canvas-zero-length-lineCap-expected.png Binary files differ
diff --git a/third_party/blink/web_tests/flag-specific/disable-site-isolation-trials/svg/W3C-SVG-1.1/pservers-grad-05-b-expected.png b/third_party/blink/web_tests/flag-specific/disable-site-isolation-trials/svg/W3C-SVG-1.1/pservers-grad-05-b-expected.png new file mode 100644 index 0000000..1288626 --- /dev/null +++ b/third_party/blink/web_tests/flag-specific/disable-site-isolation-trials/svg/W3C-SVG-1.1/pservers-grad-05-b-expected.png Binary files differ
diff --git a/third_party/blink/web_tests/flag-specific/disable-site-isolation-trials/svg/wicd/test-scalable-background-image2-expected.png b/third_party/blink/web_tests/flag-specific/disable-site-isolation-trials/svg/wicd/test-scalable-background-image2-expected.png new file mode 100644 index 0000000..4b7e081 --- /dev/null +++ b/third_party/blink/web_tests/flag-specific/disable-site-isolation-trials/svg/wicd/test-scalable-background-image2-expected.png Binary files differ
diff --git a/third_party/blink/web_tests/flag-specific/disable-site-isolation-trials/virtual/oopr-canvas2d/fast/canvas/canvas-arc-circumference-expected.png b/third_party/blink/web_tests/flag-specific/disable-site-isolation-trials/virtual/oopr-canvas2d/fast/canvas/canvas-arc-circumference-expected.png new file mode 100644 index 0000000..242ff5ea --- /dev/null +++ b/third_party/blink/web_tests/flag-specific/disable-site-isolation-trials/virtual/oopr-canvas2d/fast/canvas/canvas-arc-circumference-expected.png Binary files differ
diff --git a/third_party/blink/web_tests/flag-specific/disable-site-isolation-trials/virtual/oopr-canvas2d/fast/canvas/canvas-ellipse-circumference-expected.png b/third_party/blink/web_tests/flag-specific/disable-site-isolation-trials/virtual/oopr-canvas2d/fast/canvas/canvas-ellipse-circumference-expected.png new file mode 100644 index 0000000..14574ee0 --- /dev/null +++ b/third_party/blink/web_tests/flag-specific/disable-site-isolation-trials/virtual/oopr-canvas2d/fast/canvas/canvas-ellipse-circumference-expected.png Binary files differ
diff --git a/third_party/blink/web_tests/flag-specific/disable-site-isolation-trials/virtual/oopr-canvas2d/fast/canvas/canvas-ellipse-connecting-line-expected.png b/third_party/blink/web_tests/flag-specific/disable-site-isolation-trials/virtual/oopr-canvas2d/fast/canvas/canvas-ellipse-connecting-line-expected.png new file mode 100644 index 0000000..84fc034 --- /dev/null +++ b/third_party/blink/web_tests/flag-specific/disable-site-isolation-trials/virtual/oopr-canvas2d/fast/canvas/canvas-ellipse-connecting-line-expected.png Binary files differ
diff --git a/third_party/blink/web_tests/platform/generic/virtual/oopr-canvas2d/fast/canvas/canvas-zero-length-lineCap-expected.png b/third_party/blink/web_tests/flag-specific/disable-site-isolation-trials/virtual/oopr-canvas2d/fast/canvas/canvas-zero-length-lineCap-expected.png similarity index 76% copy from third_party/blink/web_tests/platform/generic/virtual/oopr-canvas2d/fast/canvas/canvas-zero-length-lineCap-expected.png copy to third_party/blink/web_tests/flag-specific/disable-site-isolation-trials/virtual/oopr-canvas2d/fast/canvas/canvas-zero-length-lineCap-expected.png index 0b31a0d..61fb575 100644 --- a/third_party/blink/web_tests/platform/generic/virtual/oopr-canvas2d/fast/canvas/canvas-zero-length-lineCap-expected.png +++ b/third_party/blink/web_tests/flag-specific/disable-site-isolation-trials/virtual/oopr-canvas2d/fast/canvas/canvas-zero-length-lineCap-expected.png Binary files differ
diff --git a/third_party/blink/web_tests/fragmentation/break-in-second-table-section.html b/third_party/blink/web_tests/fragmentation/break-in-second-table-section.html index 720eb6c..0aa65e6f 100644 --- a/third_party/blink/web_tests/fragmentation/break-in-second-table-section.html +++ b/third_party/blink/web_tests/fragmentation/break-in-second-table-section.html
@@ -20,14 +20,14 @@ </tr> </thead> <tbody> - <tr data-expected-height="79"> - <td data-expected-height="79" style="vertical-align:top;"> + <tr data-expected-height="60"> + <td data-expected-height="60" style="vertical-align:top;"> <br> <div data-offset-y="20" style="position:relative; background:blue;"> <br><br> </div> </td> - <td data-expected-height="79" style="vertical-align:top; background:blue;"> + <td data-expected-height="60" style="vertical-align:top; background:blue;"> <div style="background:white;"><br></div> <div data-offset-y="20" style="position:relative;"></div> </td>
diff --git a/third_party/blink/web_tests/fragmentation/break-in-tbody-after-caption.html b/third_party/blink/web_tests/fragmentation/break-in-tbody-after-caption.html index 59d8065..eb060a9 100644 --- a/third_party/blink/web_tests/fragmentation/break-in-tbody-after-caption.html +++ b/third_party/blink/web_tests/fragmentation/break-in-tbody-after-caption.html
@@ -17,14 +17,14 @@ <col style="width:20px;"> <col style="width:20px;"> <tbody> - <tr data-expected-height="79"> - <td data-expected-height="79" style="vertical-align:top;"> + <tr data-expected-height="60"> + <td data-expected-height="60" style="position: relative; vertical-align:top;"> <br> <div data-offset-y="20" style="position:relative; background:blue;"> <br><br> </div> </td> - <td data-expected-height="79" style="vertical-align:top; background:blue;"> + <td data-expected-height="60" style="position: relative; vertical-align:top; background:blue;"> <div style="background:white;"><br></div> <div data-offset-y="20" style="position:relative;"></div> </td>
diff --git a/third_party/blink/web_tests/fragmentation/single-cells-multiple-tables-no-repeating-thead.html b/third_party/blink/web_tests/fragmentation/single-cells-multiple-tables-no-repeating-thead.html index 1adda7f0..305df05 100644 --- a/third_party/blink/web_tests/fragmentation/single-cells-multiple-tables-no-repeating-thead.html +++ b/third_party/blink/web_tests/fragmentation/single-cells-multiple-tables-no-repeating-thead.html
@@ -36,7 +36,7 @@ <tr><td>Te</td><td>xt</td></tr> <tr><td>Te</td><td>xt</td></tr> <tr><td>Te</td><td>xt</td></tr> - <tr><td id="cell" data-total-y=204>Te</td><td>xt</td></tr> + <tr><td id="cell" data-total-y=190>Te</td><td>xt</td></tr> </table> </div> <div id="console"></div>
diff --git a/third_party/blink/web_tests/fragmentation/table-row-dimensions-break-freely.html b/third_party/blink/web_tests/fragmentation/table-row-dimensions-break-freely.html index 044a77f..cf6f353d 100644 --- a/third_party/blink/web_tests/fragmentation/table-row-dimensions-break-freely.html +++ b/third_party/blink/web_tests/fragmentation/table-row-dimensions-break-freely.html
@@ -8,15 +8,15 @@ <tr data-offset-y="0" data-expected-height="60"> <td><br><br><br></td> </tr> - <tr data-offset-y="60" data-expected-height="70"> + <tr data-offset-y="70" data-expected-height="60"> <td><br><br><br></td> </tr> - <tr data-offset-y="130" data-expected-height="70"> + <tr data-offset-y="140" data-expected-height="60"> <td><br><br><br></td> </tr> </tbody> <tfoot> - <tr data-offset-y="200" data-expected-height="70"> + <tr data-offset-y="210" data-expected-height="60"> <td><br><br><br></td> </tr> </tfoot>
diff --git a/third_party/blink/web_tests/fragmentation/table-row-dimensions-with-thead.html b/third_party/blink/web_tests/fragmentation/table-row-dimensions-with-thead.html index 1914b91..f5c24cfc 100644 --- a/third_party/blink/web_tests/fragmentation/table-row-dimensions-with-thead.html +++ b/third_party/blink/web_tests/fragmentation/table-row-dimensions-with-thead.html
@@ -15,10 +15,10 @@ <tr data-offset-y="20" data-expected-height="60"> <td><br><br><br></td> </tr> - <tr data-offset-y="110" data-expected-height="60"> + <tr data-offset-y="90" data-expected-height="60"> <td><br><br><br></td> </tr> - <tr data-offset-y="200" data-expected-height="60"> + <tr data-offset-y="160" data-expected-height="60"> <td><br><br><br></td> </tr> </tbody>
diff --git a/third_party/blink/web_tests/platform/generic/external/wpt/css/selectors/invalidation/modal-pseudo-class-in-has-expected.txt b/third_party/blink/web_tests/platform/generic/external/wpt/css/selectors/invalidation/modal-pseudo-class-in-has-expected.txt deleted file mode 100644 index 747048f..0000000 --- a/third_party/blink/web_tests/platform/generic/external/wpt/css/selectors/invalidation/modal-pseudo-class-in-has-expected.txt +++ /dev/null
@@ -1,6 +0,0 @@ -This is a testharness.js-based test. -PASS :modal pseudo-class is not active with dialog.show() -FAIL :modal pseudo-class invalidation with showModal+close assert_equals: ancestor should be green since dialog is shown modally expected "rgb(0, 128, 0)" but got "rgb(0, 0, 0)" -FAIL :modal pseudo-class invalidation with showModal+remove Failed to execute 'showModal' on 'HTMLDialogElement': The element already has an 'open' attribute, and therefore cannot be opened modally. -Harness: the test ran to completion. -
diff --git a/third_party/blink/web_tests/platform/generic/external/wpt/css/selectors/modal-pseudo-class-expected.txt b/third_party/blink/web_tests/platform/generic/external/wpt/css/selectors/modal-pseudo-class-expected.txt deleted file mode 100644 index a67fcac..0000000 --- a/third_party/blink/web_tests/platform/generic/external/wpt/css/selectors/modal-pseudo-class-expected.txt +++ /dev/null
@@ -1,4 +0,0 @@ -This is a testharness.js-based test. -FAIL :modal pseudo-class Uncaught SyntaxError: Failed to execute 'matches' on 'Element': ':modal' is not a valid selector. -Harness: the test ran to completion. -
diff --git a/third_party/blink/web_tests/platform/generic/external/wpt/html/syntax/parsing/Document.getElementsByTagName-foreign-01-expected.txt b/third_party/blink/web_tests/platform/generic/external/wpt/html/syntax/parsing/Document.getElementsByTagName-foreign-01-expected.txt deleted file mode 100644 index 9056603..0000000 --- a/third_party/blink/web_tests/platform/generic/external/wpt/html/syntax/parsing/Document.getElementsByTagName-foreign-01-expected.txt +++ /dev/null
@@ -1,41 +0,0 @@ -This is a testharness.js-based test. -PASS document.getElementsByTagName and foreign parser-inserted -elements -FAIL Testing altGlyph assert_equals: expected 2 but got 0 -FAIL Testing altGlyphDef assert_equals: expected 2 but got 0 -FAIL Testing altGlyphItem assert_equals: expected 2 but got 0 -PASS Testing animateColor -PASS Testing animateMotion -PASS Testing animateTransform -PASS Testing clipPath -PASS Testing feBlend -PASS Testing feColorMatrix -PASS Testing feComponentTransfer -PASS Testing feComposite -PASS Testing feConvolveMatrix -PASS Testing feDiffuseLighting -PASS Testing feDisplacementMap -PASS Testing feDistantLight -PASS Testing feFlood -PASS Testing feFuncA -PASS Testing feFuncB -PASS Testing feFuncG -PASS Testing feFuncR -PASS Testing feGaussianBlur -PASS Testing feImage -PASS Testing feMerge -PASS Testing feMergeNode -PASS Testing feMorphology -PASS Testing feOffset -PASS Testing fePointLight -PASS Testing feSpecularLighting -PASS Testing feSpotLight -PASS Testing feTile -PASS Testing feTurbulence -PASS Testing foreignObject -FAIL Testing glyphRef assert_equals: expected 2 but got 0 -PASS Testing linearGradient -PASS Testing radialGradient -PASS Testing textPath -Harness: the test ran to completion. -
diff --git a/third_party/blink/web_tests/platform/generic/external/wpt/html/syntax/parsing/html5lib_tests11_run_type=uri-expected.txt b/third_party/blink/web_tests/platform/generic/external/wpt/html/syntax/parsing/html5lib_tests11_run_type=uri-expected.txt deleted file mode 100644 index 447004f..0000000 --- a/third_party/blink/web_tests/platform/generic/external/wpt/html/syntax/parsing/html5lib_tests11_run_type=uri-expected.txt +++ /dev/null
@@ -1,16 +0,0 @@ -This is a testharness.js-based test. -FAIL html5lib_tests11.html ba7a66dfcf59885c08e8638d15b01df3878531e7 assert_equals: expected "#document\n| <!DOCTYPE html>\n| <html>\n| <head>\n| <body>\n| <svg svg>\n| attributeName=\"\"\n| attributeType=\"\"\n| baseFrequency=\"\"\n| baseProfile=\"\"\n| calcMode=\"\"\n| clipPathUnits=\"\"\n| diffuseConstant=\"\"\n| edgeMode=\"\"\n| filterUnits=\"\"\n| glyphRef=\"\"\n| gradientTransform=\"\"\n| gradientUnits=\"\"\n| kernelMatrix=\"\"\n| kernelUnitLength=\"\"\n| keyPoints=\"\"\n| keySplines=\"\"\n| keyTimes=\"\"\n| lengthAdjust=\"\"\n| limitingConeAngle=\"\"\n| markerHeight=\"\"\n| markerUnits=\"\"\n| markerWidth=\"\"\n| maskContentUnits=\"\"\n| maskUnits=\"\"\n| numOctaves=\"\"\n| pathLength=\"\"\n| patternContentUnits=\"\"\n| patternTransform=\"\"\n| patternUnits=\"\"\n| pointsAtX=\"\"\n| pointsAtY=\"\"\n| pointsAtZ=\"\"\n| preserveAlpha=\"\"\n| preserveAspectRatio=\"\"\n| primitiveUnits=\"\"\n| refX=\"\"\n| refY=\"\"\n| repeatCount=\"\"\n| repeatDur=\"\"\n| requiredExtensions=\"\"\n| requiredFeatures=\"\"\n| specularConstant=\"\"\n| specularExponent=\"\"\n| spreadMethod=\"\"\n| startOffset=\"\"\n| stdDeviation=\"\"\n| stitchTiles=\"\"\n| surfaceScale=\"\"\n| systemLanguage=\"\"\n| tableValues=\"\"\n| targetX=\"\"\n| targetY=\"\"\n| textLength=\"\"\n| viewBox=\"\"\n| viewTarget=\"\"\n| xChannelSelector=\"\"\n| yChannelSelector=\"\"\n| zoomAndPan=\"\"" but got "#document\n| <!DOCTYPE html>\n| <html>\n| <head>\n| <body>\n| <svg svg>\n| attributeName=\"\"\n| attributeType=\"\"\n| baseFrequency=\"\"\n| baseProfile=\"\"\n| calcMode=\"\"\n| clipPathUnits=\"\"\n| diffuseConstant=\"\"\n| edgeMode=\"\"\n| filterUnits=\"\"\n| glyphRef=\"\"\n| gradientTransform=\"\"\n| gradientUnits=\"\"\n| kernelMatrix=\"\"\n| kernelUnitLength=\"\"\n| keyPoints=\"\"\n| keySplines=\"\"\n| keyTimes=\"\"\n| lengthAdjust=\"\"\n| limitingConeAngle=\"\"\n| markerHeight=\"\"\n| markerUnits=\"\"\n| markerWidth=\"\"\n| maskContentUnits=\"\"\n| maskUnits=\"\"\n| numOctaves=\"\"\n| pathLength=\"\"\n| patternContentUnits=\"\"\n| patternTransform=\"\"\n| patternUnits=\"\"\n| pointsAtX=\"\"\n| pointsAtY=\"\"\n| pointsAtZ=\"\"\n| preserveAlpha=\"\"\n| preserveAspectRatio=\"\"\n| primitiveUnits=\"\"\n| refX=\"\"\n| refY=\"\"\n| repeatCount=\"\"\n| repeatDur=\"\"\n| requiredExtensions=\"\"\n| requiredFeatures=\"\"\n| specularConstant=\"\"\n| specularExponent=\"\"\n| spreadMethod=\"\"\n| startOffset=\"\"\n| stdDeviation=\"\"\n| stitchTiles=\"\"\n| surfaceScale=\"\"\n| systemLanguage=\"\"\n| tableValues=\"\"\n| targetX=\"\"\n| targetY=\"\"\n| textLength=\"\"\n| viewBox=\"\"\n| viewtarget=\"\"\n| xChannelSelector=\"\"\n| yChannelSelector=\"\"\n| zoomAndPan=\"\"" -FAIL html5lib_tests11.html e69c7c08a54ca868ab33b2825d998fa6c3cac90e assert_equals: expected "#document\n| <!DOCTYPE html>\n| <html>\n| <head>\n| <body>\n| <svg svg>\n| attributeName=\"\"\n| attributeType=\"\"\n| baseFrequency=\"\"\n| baseProfile=\"\"\n| calcMode=\"\"\n| clipPathUnits=\"\"\n| diffuseConstant=\"\"\n| edgeMode=\"\"\n| filterUnits=\"\"\n| glyphRef=\"\"\n| gradientTransform=\"\"\n| gradientUnits=\"\"\n| kernelMatrix=\"\"\n| kernelUnitLength=\"\"\n| keyPoints=\"\"\n| keySplines=\"\"\n| keyTimes=\"\"\n| lengthAdjust=\"\"\n| limitingConeAngle=\"\"\n| markerHeight=\"\"\n| markerUnits=\"\"\n| markerWidth=\"\"\n| maskContentUnits=\"\"\n| maskUnits=\"\"\n| numOctaves=\"\"\n| pathLength=\"\"\n| patternContentUnits=\"\"\n| patternTransform=\"\"\n| patternUnits=\"\"\n| pointsAtX=\"\"\n| pointsAtY=\"\"\n| pointsAtZ=\"\"\n| preserveAlpha=\"\"\n| preserveAspectRatio=\"\"\n| primitiveUnits=\"\"\n| refX=\"\"\n| refY=\"\"\n| repeatCount=\"\"\n| repeatDur=\"\"\n| requiredExtensions=\"\"\n| requiredFeatures=\"\"\n| specularConstant=\"\"\n| specularExponent=\"\"\n| spreadMethod=\"\"\n| startOffset=\"\"\n| stdDeviation=\"\"\n| stitchTiles=\"\"\n| surfaceScale=\"\"\n| systemLanguage=\"\"\n| tableValues=\"\"\n| targetX=\"\"\n| targetY=\"\"\n| textLength=\"\"\n| viewBox=\"\"\n| viewTarget=\"\"\n| xChannelSelector=\"\"\n| yChannelSelector=\"\"\n| zoomAndPan=\"\"" but got "#document\n| <!DOCTYPE html>\n| <html>\n| <head>\n| <body>\n| <svg svg>\n| attributeName=\"\"\n| attributeType=\"\"\n| baseFrequency=\"\"\n| baseProfile=\"\"\n| calcMode=\"\"\n| clipPathUnits=\"\"\n| diffuseConstant=\"\"\n| edgeMode=\"\"\n| filterUnits=\"\"\n| glyphRef=\"\"\n| gradientTransform=\"\"\n| gradientUnits=\"\"\n| kernelMatrix=\"\"\n| kernelUnitLength=\"\"\n| keyPoints=\"\"\n| keySplines=\"\"\n| keyTimes=\"\"\n| lengthAdjust=\"\"\n| limitingConeAngle=\"\"\n| markerHeight=\"\"\n| markerUnits=\"\"\n| markerWidth=\"\"\n| maskContentUnits=\"\"\n| maskUnits=\"\"\n| numOctaves=\"\"\n| pathLength=\"\"\n| patternContentUnits=\"\"\n| patternTransform=\"\"\n| patternUnits=\"\"\n| pointsAtX=\"\"\n| pointsAtY=\"\"\n| pointsAtZ=\"\"\n| preserveAlpha=\"\"\n| preserveAspectRatio=\"\"\n| primitiveUnits=\"\"\n| refX=\"\"\n| refY=\"\"\n| repeatCount=\"\"\n| repeatDur=\"\"\n| requiredExtensions=\"\"\n| requiredFeatures=\"\"\n| specularConstant=\"\"\n| specularExponent=\"\"\n| spreadMethod=\"\"\n| startOffset=\"\"\n| stdDeviation=\"\"\n| stitchTiles=\"\"\n| surfaceScale=\"\"\n| systemLanguage=\"\"\n| tableValues=\"\"\n| targetX=\"\"\n| targetY=\"\"\n| textLength=\"\"\n| viewBox=\"\"\n| viewtarget=\"\"\n| xChannelSelector=\"\"\n| yChannelSelector=\"\"\n| zoomAndPan=\"\"" -FAIL html5lib_tests11.html 0e5897aafe87e460f84576c2d1d983504d12a7db assert_equals: expected "#document\n| <!DOCTYPE html>\n| <html>\n| <head>\n| <body>\n| <svg svg>\n| attributeName=\"\"\n| attributeType=\"\"\n| baseFrequency=\"\"\n| baseProfile=\"\"\n| calcMode=\"\"\n| clipPathUnits=\"\"\n| diffuseConstant=\"\"\n| edgeMode=\"\"\n| filterUnits=\"\"\n| filterres=\"\"\n| glyphRef=\"\"\n| gradientTransform=\"\"\n| gradientUnits=\"\"\n| kernelMatrix=\"\"\n| kernelUnitLength=\"\"\n| keyPoints=\"\"\n| keySplines=\"\"\n| keyTimes=\"\"\n| lengthAdjust=\"\"\n| limitingConeAngle=\"\"\n| markerHeight=\"\"\n| markerUnits=\"\"\n| markerWidth=\"\"\n| maskContentUnits=\"\"\n| maskUnits=\"\"\n| numOctaves=\"\"\n| pathLength=\"\"\n| patternContentUnits=\"\"\n| patternTransform=\"\"\n| patternUnits=\"\"\n| pointsAtX=\"\"\n| pointsAtY=\"\"\n| pointsAtZ=\"\"\n| preserveAlpha=\"\"\n| preserveAspectRatio=\"\"\n| primitiveUnits=\"\"\n| refX=\"\"\n| refY=\"\"\n| repeatCount=\"\"\n| repeatDur=\"\"\n| requiredExtensions=\"\"\n| requiredFeatures=\"\"\n| specularConstant=\"\"\n| specularExponent=\"\"\n| spreadMethod=\"\"\n| startOffset=\"\"\n| stdDeviation=\"\"\n| stitchTiles=\"\"\n| surfaceScale=\"\"\n| systemLanguage=\"\"\n| tableValues=\"\"\n| targetX=\"\"\n| targetY=\"\"\n| textLength=\"\"\n| viewBox=\"\"\n| viewTarget=\"\"\n| xChannelSelector=\"\"\n| yChannelSelector=\"\"\n| zoomAndPan=\"\"" but got "#document\n| <!DOCTYPE html>\n| <html>\n| <head>\n| <body>\n| <svg svg>\n| attributeName=\"\"\n| attributeType=\"\"\n| baseFrequency=\"\"\n| baseProfile=\"\"\n| calcMode=\"\"\n| clipPathUnits=\"\"\n| diffuseConstant=\"\"\n| edgeMode=\"\"\n| filterUnits=\"\"\n| filterres=\"\"\n| glyphRef=\"\"\n| gradientTransform=\"\"\n| gradientUnits=\"\"\n| kernelMatrix=\"\"\n| kernelUnitLength=\"\"\n| keyPoints=\"\"\n| keySplines=\"\"\n| keyTimes=\"\"\n| lengthAdjust=\"\"\n| limitingConeAngle=\"\"\n| markerHeight=\"\"\n| markerUnits=\"\"\n| markerWidth=\"\"\n| maskContentUnits=\"\"\n| maskUnits=\"\"\n| numOctaves=\"\"\n| pathLength=\"\"\n| patternContentUnits=\"\"\n| patternTransform=\"\"\n| patternUnits=\"\"\n| pointsAtX=\"\"\n| pointsAtY=\"\"\n| pointsAtZ=\"\"\n| preserveAlpha=\"\"\n| preserveAspectRatio=\"\"\n| primitiveUnits=\"\"\n| refX=\"\"\n| refY=\"\"\n| repeatCount=\"\"\n| repeatDur=\"\"\n| requiredExtensions=\"\"\n| requiredFeatures=\"\"\n| specularConstant=\"\"\n| specularExponent=\"\"\n| spreadMethod=\"\"\n| startOffset=\"\"\n| stdDeviation=\"\"\n| stitchTiles=\"\"\n| surfaceScale=\"\"\n| systemLanguage=\"\"\n| tableValues=\"\"\n| targetX=\"\"\n| targetY=\"\"\n| textLength=\"\"\n| viewBox=\"\"\n| viewtarget=\"\"\n| xChannelSelector=\"\"\n| yChannelSelector=\"\"\n| zoomAndPan=\"\"" -PASS html5lib_tests11.html f71dd198831309fc9ccd66ef91cde63fda9b9bda -PASS html5lib_tests11.html a8f7a23601363454b4a13f66aed99ec9708ae87b -PASS html5lib_tests11.html f8f7f6c576acc9eb874acb0dce6988f0f7b6fc5f -PASS html5lib_tests11.html fb4dc9f70129a8a045fca3a1e3acee052d0990b3 -PASS html5lib_tests11.html 8f77b846acce75edf1988ea655c79f1de4321de9 -FAIL html5lib_tests11.html 39c50f080b2b9ae9e7a1070679ab97d7b814f9ec assert_equals: expected "#document\n| <!DOCTYPE html>\n| <html>\n| <head>\n| <body>\n| <svg svg>\n| <svg altGlyph>\n| <svg altGlyphDef>\n| <svg altGlyphItem>\n| <svg animateColor>\n| <svg animateMotion>\n| <svg animateTransform>\n| <svg clipPath>\n| <svg feBlend>\n| <svg feColorMatrix>\n| <svg feComponentTransfer>\n| <svg feComposite>\n| <svg feConvolveMatrix>\n| <svg feDiffuseLighting>\n| <svg feDisplacementMap>\n| <svg feDistantLight>\n| <svg feFlood>\n| <svg feFuncA>\n| <svg feFuncB>\n| <svg feFuncG>\n| <svg feFuncR>\n| <svg feGaussianBlur>\n| <svg feImage>\n| <svg feMerge>\n| <svg feMergeNode>\n| <svg feMorphology>\n| <svg feOffset>\n| <svg fePointLight>\n| <svg feSpecularLighting>\n| <svg feSpotLight>\n| <svg feTile>\n| <svg feTurbulence>\n| <svg foreignObject>\n| <svg glyphRef>\n| <svg linearGradient>\n| <svg radialGradient>\n| <svg textPath>" but got "#document\n| <!DOCTYPE html>\n| <html>\n| <head>\n| <body>\n| <svg svg>\n| <svg altglyph>\n| <svg altglyphdef>\n| <svg altglyphitem>\n| <svg animateColor>\n| <svg animateMotion>\n| <svg animateTransform>\n| <svg clipPath>\n| <svg feBlend>\n| <svg feColorMatrix>\n| <svg feComponentTransfer>\n| <svg feComposite>\n| <svg feConvolveMatrix>\n| <svg feDiffuseLighting>\n| <svg feDisplacementMap>\n| <svg feDistantLight>\n| <svg feFlood>\n| <svg feFuncA>\n| <svg feFuncB>\n| <svg feFuncG>\n| <svg feFuncR>\n| <svg feGaussianBlur>\n| <svg feImage>\n| <svg feMerge>\n| <svg feMergeNode>\n| <svg feMorphology>\n| <svg feOffset>\n| <svg fePointLight>\n| <svg feSpecularLighting>\n| <svg feSpotLight>\n| <svg feTile>\n| <svg feTurbulence>\n| <svg foreignObject>\n| <svg glyphref>\n| <svg linearGradient>\n| <svg radialGradient>\n| <svg textPath>" -FAIL html5lib_tests11.html 6d1fa1599f75625fe4d019abb04a064cf6ed39e8 assert_equals: expected "#document\n| <!DOCTYPE html>\n| <html>\n| <head>\n| <body>\n| <svg svg>\n| <svg altGlyph>\n| <svg altGlyphDef>\n| <svg altGlyphItem>\n| <svg animateColor>\n| <svg animateMotion>\n| <svg animateTransform>\n| <svg clipPath>\n| <svg feBlend>\n| <svg feColorMatrix>\n| <svg feComponentTransfer>\n| <svg feComposite>\n| <svg feConvolveMatrix>\n| <svg feDiffuseLighting>\n| <svg feDisplacementMap>\n| <svg feDistantLight>\n| <svg feFlood>\n| <svg feFuncA>\n| <svg feFuncB>\n| <svg feFuncG>\n| <svg feFuncR>\n| <svg feGaussianBlur>\n| <svg feImage>\n| <svg feMerge>\n| <svg feMergeNode>\n| <svg feMorphology>\n| <svg feOffset>\n| <svg fePointLight>\n| <svg feSpecularLighting>\n| <svg feSpotLight>\n| <svg feTile>\n| <svg feTurbulence>\n| <svg foreignObject>\n| <svg glyphRef>\n| <svg linearGradient>\n| <svg radialGradient>\n| <svg textPath>" but got "#document\n| <!DOCTYPE html>\n| <html>\n| <head>\n| <body>\n| <svg svg>\n| <svg altglyph>\n| <svg altglyphdef>\n| <svg altglyphitem>\n| <svg animateColor>\n| <svg animateMotion>\n| <svg animateTransform>\n| <svg clipPath>\n| <svg feBlend>\n| <svg feColorMatrix>\n| <svg feComponentTransfer>\n| <svg feComposite>\n| <svg feConvolveMatrix>\n| <svg feDiffuseLighting>\n| <svg feDisplacementMap>\n| <svg feDistantLight>\n| <svg feFlood>\n| <svg feFuncA>\n| <svg feFuncB>\n| <svg feFuncG>\n| <svg feFuncR>\n| <svg feGaussianBlur>\n| <svg feImage>\n| <svg feMerge>\n| <svg feMergeNode>\n| <svg feMorphology>\n| <svg feOffset>\n| <svg fePointLight>\n| <svg feSpecularLighting>\n| <svg feSpotLight>\n| <svg feTile>\n| <svg feTurbulence>\n| <svg foreignObject>\n| <svg glyphref>\n| <svg linearGradient>\n| <svg radialGradient>\n| <svg textPath>" -FAIL html5lib_tests11.html 791437ece7ba684e00162d1dd79dfe540e3621a7 assert_equals: expected "#document\n| <!DOCTYPE html>\n| <html>\n| <head>\n| <body>\n| <svg svg>\n| <svg altGlyph>\n| <svg altGlyphDef>\n| <svg altGlyphItem>\n| <svg animateColor>\n| <svg animateMotion>\n| <svg animateTransform>\n| <svg clipPath>\n| <svg feBlend>\n| <svg feColorMatrix>\n| <svg feComponentTransfer>\n| <svg feComposite>\n| <svg feConvolveMatrix>\n| <svg feDiffuseLighting>\n| <svg feDisplacementMap>\n| <svg feDistantLight>\n| <svg feFlood>\n| <svg feFuncA>\n| <svg feFuncB>\n| <svg feFuncG>\n| <svg feFuncR>\n| <svg feGaussianBlur>\n| <svg feImage>\n| <svg feMerge>\n| <svg feMergeNode>\n| <svg feMorphology>\n| <svg feOffset>\n| <svg fePointLight>\n| <svg feSpecularLighting>\n| <svg feSpotLight>\n| <svg feTile>\n| <svg feTurbulence>\n| <svg foreignObject>\n| <svg glyphRef>\n| <svg linearGradient>\n| <svg radialGradient>\n| <svg textPath>" but got "#document\n| <!DOCTYPE html>\n| <html>\n| <head>\n| <body>\n| <svg svg>\n| <svg altglyph>\n| <svg altglyphdef>\n| <svg altglyphitem>\n| <svg animateColor>\n| <svg animateMotion>\n| <svg animateTransform>\n| <svg clipPath>\n| <svg feBlend>\n| <svg feColorMatrix>\n| <svg feComponentTransfer>\n| <svg feComposite>\n| <svg feConvolveMatrix>\n| <svg feDiffuseLighting>\n| <svg feDisplacementMap>\n| <svg feDistantLight>\n| <svg feFlood>\n| <svg feFuncA>\n| <svg feFuncB>\n| <svg feFuncG>\n| <svg feFuncR>\n| <svg feGaussianBlur>\n| <svg feImage>\n| <svg feMerge>\n| <svg feMergeNode>\n| <svg feMorphology>\n| <svg feOffset>\n| <svg fePointLight>\n| <svg feSpecularLighting>\n| <svg feSpotLight>\n| <svg feTile>\n| <svg feTurbulence>\n| <svg foreignObject>\n| <svg glyphref>\n| <svg linearGradient>\n| <svg radialGradient>\n| <svg textPath>" -PASS html5lib_tests11.html af40d26164229c29b9be77ed6dd7dda780cba55c -PASS html5lib_tests11.html 16e68d18f8f0fb81013fe77a30b7d396c5081e5e -Harness: the test ran to completion. -
diff --git a/third_party/blink/web_tests/platform/generic/external/wpt/html/syntax/parsing/html5lib_tests11_run_type=write-expected.txt b/third_party/blink/web_tests/platform/generic/external/wpt/html/syntax/parsing/html5lib_tests11_run_type=write-expected.txt deleted file mode 100644 index 447004f..0000000 --- a/third_party/blink/web_tests/platform/generic/external/wpt/html/syntax/parsing/html5lib_tests11_run_type=write-expected.txt +++ /dev/null
@@ -1,16 +0,0 @@ -This is a testharness.js-based test. -FAIL html5lib_tests11.html ba7a66dfcf59885c08e8638d15b01df3878531e7 assert_equals: expected "#document\n| <!DOCTYPE html>\n| <html>\n| <head>\n| <body>\n| <svg svg>\n| attributeName=\"\"\n| attributeType=\"\"\n| baseFrequency=\"\"\n| baseProfile=\"\"\n| calcMode=\"\"\n| clipPathUnits=\"\"\n| diffuseConstant=\"\"\n| edgeMode=\"\"\n| filterUnits=\"\"\n| glyphRef=\"\"\n| gradientTransform=\"\"\n| gradientUnits=\"\"\n| kernelMatrix=\"\"\n| kernelUnitLength=\"\"\n| keyPoints=\"\"\n| keySplines=\"\"\n| keyTimes=\"\"\n| lengthAdjust=\"\"\n| limitingConeAngle=\"\"\n| markerHeight=\"\"\n| markerUnits=\"\"\n| markerWidth=\"\"\n| maskContentUnits=\"\"\n| maskUnits=\"\"\n| numOctaves=\"\"\n| pathLength=\"\"\n| patternContentUnits=\"\"\n| patternTransform=\"\"\n| patternUnits=\"\"\n| pointsAtX=\"\"\n| pointsAtY=\"\"\n| pointsAtZ=\"\"\n| preserveAlpha=\"\"\n| preserveAspectRatio=\"\"\n| primitiveUnits=\"\"\n| refX=\"\"\n| refY=\"\"\n| repeatCount=\"\"\n| repeatDur=\"\"\n| requiredExtensions=\"\"\n| requiredFeatures=\"\"\n| specularConstant=\"\"\n| specularExponent=\"\"\n| spreadMethod=\"\"\n| startOffset=\"\"\n| stdDeviation=\"\"\n| stitchTiles=\"\"\n| surfaceScale=\"\"\n| systemLanguage=\"\"\n| tableValues=\"\"\n| targetX=\"\"\n| targetY=\"\"\n| textLength=\"\"\n| viewBox=\"\"\n| viewTarget=\"\"\n| xChannelSelector=\"\"\n| yChannelSelector=\"\"\n| zoomAndPan=\"\"" but got "#document\n| <!DOCTYPE html>\n| <html>\n| <head>\n| <body>\n| <svg svg>\n| attributeName=\"\"\n| attributeType=\"\"\n| baseFrequency=\"\"\n| baseProfile=\"\"\n| calcMode=\"\"\n| clipPathUnits=\"\"\n| diffuseConstant=\"\"\n| edgeMode=\"\"\n| filterUnits=\"\"\n| glyphRef=\"\"\n| gradientTransform=\"\"\n| gradientUnits=\"\"\n| kernelMatrix=\"\"\n| kernelUnitLength=\"\"\n| keyPoints=\"\"\n| keySplines=\"\"\n| keyTimes=\"\"\n| lengthAdjust=\"\"\n| limitingConeAngle=\"\"\n| markerHeight=\"\"\n| markerUnits=\"\"\n| markerWidth=\"\"\n| maskContentUnits=\"\"\n| maskUnits=\"\"\n| numOctaves=\"\"\n| pathLength=\"\"\n| patternContentUnits=\"\"\n| patternTransform=\"\"\n| patternUnits=\"\"\n| pointsAtX=\"\"\n| pointsAtY=\"\"\n| pointsAtZ=\"\"\n| preserveAlpha=\"\"\n| preserveAspectRatio=\"\"\n| primitiveUnits=\"\"\n| refX=\"\"\n| refY=\"\"\n| repeatCount=\"\"\n| repeatDur=\"\"\n| requiredExtensions=\"\"\n| requiredFeatures=\"\"\n| specularConstant=\"\"\n| specularExponent=\"\"\n| spreadMethod=\"\"\n| startOffset=\"\"\n| stdDeviation=\"\"\n| stitchTiles=\"\"\n| surfaceScale=\"\"\n| systemLanguage=\"\"\n| tableValues=\"\"\n| targetX=\"\"\n| targetY=\"\"\n| textLength=\"\"\n| viewBox=\"\"\n| viewtarget=\"\"\n| xChannelSelector=\"\"\n| yChannelSelector=\"\"\n| zoomAndPan=\"\"" -FAIL html5lib_tests11.html e69c7c08a54ca868ab33b2825d998fa6c3cac90e assert_equals: expected "#document\n| <!DOCTYPE html>\n| <html>\n| <head>\n| <body>\n| <svg svg>\n| attributeName=\"\"\n| attributeType=\"\"\n| baseFrequency=\"\"\n| baseProfile=\"\"\n| calcMode=\"\"\n| clipPathUnits=\"\"\n| diffuseConstant=\"\"\n| edgeMode=\"\"\n| filterUnits=\"\"\n| glyphRef=\"\"\n| gradientTransform=\"\"\n| gradientUnits=\"\"\n| kernelMatrix=\"\"\n| kernelUnitLength=\"\"\n| keyPoints=\"\"\n| keySplines=\"\"\n| keyTimes=\"\"\n| lengthAdjust=\"\"\n| limitingConeAngle=\"\"\n| markerHeight=\"\"\n| markerUnits=\"\"\n| markerWidth=\"\"\n| maskContentUnits=\"\"\n| maskUnits=\"\"\n| numOctaves=\"\"\n| pathLength=\"\"\n| patternContentUnits=\"\"\n| patternTransform=\"\"\n| patternUnits=\"\"\n| pointsAtX=\"\"\n| pointsAtY=\"\"\n| pointsAtZ=\"\"\n| preserveAlpha=\"\"\n| preserveAspectRatio=\"\"\n| primitiveUnits=\"\"\n| refX=\"\"\n| refY=\"\"\n| repeatCount=\"\"\n| repeatDur=\"\"\n| requiredExtensions=\"\"\n| requiredFeatures=\"\"\n| specularConstant=\"\"\n| specularExponent=\"\"\n| spreadMethod=\"\"\n| startOffset=\"\"\n| stdDeviation=\"\"\n| stitchTiles=\"\"\n| surfaceScale=\"\"\n| systemLanguage=\"\"\n| tableValues=\"\"\n| targetX=\"\"\n| targetY=\"\"\n| textLength=\"\"\n| viewBox=\"\"\n| viewTarget=\"\"\n| xChannelSelector=\"\"\n| yChannelSelector=\"\"\n| zoomAndPan=\"\"" but got "#document\n| <!DOCTYPE html>\n| <html>\n| <head>\n| <body>\n| <svg svg>\n| attributeName=\"\"\n| attributeType=\"\"\n| baseFrequency=\"\"\n| baseProfile=\"\"\n| calcMode=\"\"\n| clipPathUnits=\"\"\n| diffuseConstant=\"\"\n| edgeMode=\"\"\n| filterUnits=\"\"\n| glyphRef=\"\"\n| gradientTransform=\"\"\n| gradientUnits=\"\"\n| kernelMatrix=\"\"\n| kernelUnitLength=\"\"\n| keyPoints=\"\"\n| keySplines=\"\"\n| keyTimes=\"\"\n| lengthAdjust=\"\"\n| limitingConeAngle=\"\"\n| markerHeight=\"\"\n| markerUnits=\"\"\n| markerWidth=\"\"\n| maskContentUnits=\"\"\n| maskUnits=\"\"\n| numOctaves=\"\"\n| pathLength=\"\"\n| patternContentUnits=\"\"\n| patternTransform=\"\"\n| patternUnits=\"\"\n| pointsAtX=\"\"\n| pointsAtY=\"\"\n| pointsAtZ=\"\"\n| preserveAlpha=\"\"\n| preserveAspectRatio=\"\"\n| primitiveUnits=\"\"\n| refX=\"\"\n| refY=\"\"\n| repeatCount=\"\"\n| repeatDur=\"\"\n| requiredExtensions=\"\"\n| requiredFeatures=\"\"\n| specularConstant=\"\"\n| specularExponent=\"\"\n| spreadMethod=\"\"\n| startOffset=\"\"\n| stdDeviation=\"\"\n| stitchTiles=\"\"\n| surfaceScale=\"\"\n| systemLanguage=\"\"\n| tableValues=\"\"\n| targetX=\"\"\n| targetY=\"\"\n| textLength=\"\"\n| viewBox=\"\"\n| viewtarget=\"\"\n| xChannelSelector=\"\"\n| yChannelSelector=\"\"\n| zoomAndPan=\"\"" -FAIL html5lib_tests11.html 0e5897aafe87e460f84576c2d1d983504d12a7db assert_equals: expected "#document\n| <!DOCTYPE html>\n| <html>\n| <head>\n| <body>\n| <svg svg>\n| attributeName=\"\"\n| attributeType=\"\"\n| baseFrequency=\"\"\n| baseProfile=\"\"\n| calcMode=\"\"\n| clipPathUnits=\"\"\n| diffuseConstant=\"\"\n| edgeMode=\"\"\n| filterUnits=\"\"\n| filterres=\"\"\n| glyphRef=\"\"\n| gradientTransform=\"\"\n| gradientUnits=\"\"\n| kernelMatrix=\"\"\n| kernelUnitLength=\"\"\n| keyPoints=\"\"\n| keySplines=\"\"\n| keyTimes=\"\"\n| lengthAdjust=\"\"\n| limitingConeAngle=\"\"\n| markerHeight=\"\"\n| markerUnits=\"\"\n| markerWidth=\"\"\n| maskContentUnits=\"\"\n| maskUnits=\"\"\n| numOctaves=\"\"\n| pathLength=\"\"\n| patternContentUnits=\"\"\n| patternTransform=\"\"\n| patternUnits=\"\"\n| pointsAtX=\"\"\n| pointsAtY=\"\"\n| pointsAtZ=\"\"\n| preserveAlpha=\"\"\n| preserveAspectRatio=\"\"\n| primitiveUnits=\"\"\n| refX=\"\"\n| refY=\"\"\n| repeatCount=\"\"\n| repeatDur=\"\"\n| requiredExtensions=\"\"\n| requiredFeatures=\"\"\n| specularConstant=\"\"\n| specularExponent=\"\"\n| spreadMethod=\"\"\n| startOffset=\"\"\n| stdDeviation=\"\"\n| stitchTiles=\"\"\n| surfaceScale=\"\"\n| systemLanguage=\"\"\n| tableValues=\"\"\n| targetX=\"\"\n| targetY=\"\"\n| textLength=\"\"\n| viewBox=\"\"\n| viewTarget=\"\"\n| xChannelSelector=\"\"\n| yChannelSelector=\"\"\n| zoomAndPan=\"\"" but got "#document\n| <!DOCTYPE html>\n| <html>\n| <head>\n| <body>\n| <svg svg>\n| attributeName=\"\"\n| attributeType=\"\"\n| baseFrequency=\"\"\n| baseProfile=\"\"\n| calcMode=\"\"\n| clipPathUnits=\"\"\n| diffuseConstant=\"\"\n| edgeMode=\"\"\n| filterUnits=\"\"\n| filterres=\"\"\n| glyphRef=\"\"\n| gradientTransform=\"\"\n| gradientUnits=\"\"\n| kernelMatrix=\"\"\n| kernelUnitLength=\"\"\n| keyPoints=\"\"\n| keySplines=\"\"\n| keyTimes=\"\"\n| lengthAdjust=\"\"\n| limitingConeAngle=\"\"\n| markerHeight=\"\"\n| markerUnits=\"\"\n| markerWidth=\"\"\n| maskContentUnits=\"\"\n| maskUnits=\"\"\n| numOctaves=\"\"\n| pathLength=\"\"\n| patternContentUnits=\"\"\n| patternTransform=\"\"\n| patternUnits=\"\"\n| pointsAtX=\"\"\n| pointsAtY=\"\"\n| pointsAtZ=\"\"\n| preserveAlpha=\"\"\n| preserveAspectRatio=\"\"\n| primitiveUnits=\"\"\n| refX=\"\"\n| refY=\"\"\n| repeatCount=\"\"\n| repeatDur=\"\"\n| requiredExtensions=\"\"\n| requiredFeatures=\"\"\n| specularConstant=\"\"\n| specularExponent=\"\"\n| spreadMethod=\"\"\n| startOffset=\"\"\n| stdDeviation=\"\"\n| stitchTiles=\"\"\n| surfaceScale=\"\"\n| systemLanguage=\"\"\n| tableValues=\"\"\n| targetX=\"\"\n| targetY=\"\"\n| textLength=\"\"\n| viewBox=\"\"\n| viewtarget=\"\"\n| xChannelSelector=\"\"\n| yChannelSelector=\"\"\n| zoomAndPan=\"\"" -PASS html5lib_tests11.html f71dd198831309fc9ccd66ef91cde63fda9b9bda -PASS html5lib_tests11.html a8f7a23601363454b4a13f66aed99ec9708ae87b -PASS html5lib_tests11.html f8f7f6c576acc9eb874acb0dce6988f0f7b6fc5f -PASS html5lib_tests11.html fb4dc9f70129a8a045fca3a1e3acee052d0990b3 -PASS html5lib_tests11.html 8f77b846acce75edf1988ea655c79f1de4321de9 -FAIL html5lib_tests11.html 39c50f080b2b9ae9e7a1070679ab97d7b814f9ec assert_equals: expected "#document\n| <!DOCTYPE html>\n| <html>\n| <head>\n| <body>\n| <svg svg>\n| <svg altGlyph>\n| <svg altGlyphDef>\n| <svg altGlyphItem>\n| <svg animateColor>\n| <svg animateMotion>\n| <svg animateTransform>\n| <svg clipPath>\n| <svg feBlend>\n| <svg feColorMatrix>\n| <svg feComponentTransfer>\n| <svg feComposite>\n| <svg feConvolveMatrix>\n| <svg feDiffuseLighting>\n| <svg feDisplacementMap>\n| <svg feDistantLight>\n| <svg feFlood>\n| <svg feFuncA>\n| <svg feFuncB>\n| <svg feFuncG>\n| <svg feFuncR>\n| <svg feGaussianBlur>\n| <svg feImage>\n| <svg feMerge>\n| <svg feMergeNode>\n| <svg feMorphology>\n| <svg feOffset>\n| <svg fePointLight>\n| <svg feSpecularLighting>\n| <svg feSpotLight>\n| <svg feTile>\n| <svg feTurbulence>\n| <svg foreignObject>\n| <svg glyphRef>\n| <svg linearGradient>\n| <svg radialGradient>\n| <svg textPath>" but got "#document\n| <!DOCTYPE html>\n| <html>\n| <head>\n| <body>\n| <svg svg>\n| <svg altglyph>\n| <svg altglyphdef>\n| <svg altglyphitem>\n| <svg animateColor>\n| <svg animateMotion>\n| <svg animateTransform>\n| <svg clipPath>\n| <svg feBlend>\n| <svg feColorMatrix>\n| <svg feComponentTransfer>\n| <svg feComposite>\n| <svg feConvolveMatrix>\n| <svg feDiffuseLighting>\n| <svg feDisplacementMap>\n| <svg feDistantLight>\n| <svg feFlood>\n| <svg feFuncA>\n| <svg feFuncB>\n| <svg feFuncG>\n| <svg feFuncR>\n| <svg feGaussianBlur>\n| <svg feImage>\n| <svg feMerge>\n| <svg feMergeNode>\n| <svg feMorphology>\n| <svg feOffset>\n| <svg fePointLight>\n| <svg feSpecularLighting>\n| <svg feSpotLight>\n| <svg feTile>\n| <svg feTurbulence>\n| <svg foreignObject>\n| <svg glyphref>\n| <svg linearGradient>\n| <svg radialGradient>\n| <svg textPath>" -FAIL html5lib_tests11.html 6d1fa1599f75625fe4d019abb04a064cf6ed39e8 assert_equals: expected "#document\n| <!DOCTYPE html>\n| <html>\n| <head>\n| <body>\n| <svg svg>\n| <svg altGlyph>\n| <svg altGlyphDef>\n| <svg altGlyphItem>\n| <svg animateColor>\n| <svg animateMotion>\n| <svg animateTransform>\n| <svg clipPath>\n| <svg feBlend>\n| <svg feColorMatrix>\n| <svg feComponentTransfer>\n| <svg feComposite>\n| <svg feConvolveMatrix>\n| <svg feDiffuseLighting>\n| <svg feDisplacementMap>\n| <svg feDistantLight>\n| <svg feFlood>\n| <svg feFuncA>\n| <svg feFuncB>\n| <svg feFuncG>\n| <svg feFuncR>\n| <svg feGaussianBlur>\n| <svg feImage>\n| <svg feMerge>\n| <svg feMergeNode>\n| <svg feMorphology>\n| <svg feOffset>\n| <svg fePointLight>\n| <svg feSpecularLighting>\n| <svg feSpotLight>\n| <svg feTile>\n| <svg feTurbulence>\n| <svg foreignObject>\n| <svg glyphRef>\n| <svg linearGradient>\n| <svg radialGradient>\n| <svg textPath>" but got "#document\n| <!DOCTYPE html>\n| <html>\n| <head>\n| <body>\n| <svg svg>\n| <svg altglyph>\n| <svg altglyphdef>\n| <svg altglyphitem>\n| <svg animateColor>\n| <svg animateMotion>\n| <svg animateTransform>\n| <svg clipPath>\n| <svg feBlend>\n| <svg feColorMatrix>\n| <svg feComponentTransfer>\n| <svg feComposite>\n| <svg feConvolveMatrix>\n| <svg feDiffuseLighting>\n| <svg feDisplacementMap>\n| <svg feDistantLight>\n| <svg feFlood>\n| <svg feFuncA>\n| <svg feFuncB>\n| <svg feFuncG>\n| <svg feFuncR>\n| <svg feGaussianBlur>\n| <svg feImage>\n| <svg feMerge>\n| <svg feMergeNode>\n| <svg feMorphology>\n| <svg feOffset>\n| <svg fePointLight>\n| <svg feSpecularLighting>\n| <svg feSpotLight>\n| <svg feTile>\n| <svg feTurbulence>\n| <svg foreignObject>\n| <svg glyphref>\n| <svg linearGradient>\n| <svg radialGradient>\n| <svg textPath>" -FAIL html5lib_tests11.html 791437ece7ba684e00162d1dd79dfe540e3621a7 assert_equals: expected "#document\n| <!DOCTYPE html>\n| <html>\n| <head>\n| <body>\n| <svg svg>\n| <svg altGlyph>\n| <svg altGlyphDef>\n| <svg altGlyphItem>\n| <svg animateColor>\n| <svg animateMotion>\n| <svg animateTransform>\n| <svg clipPath>\n| <svg feBlend>\n| <svg feColorMatrix>\n| <svg feComponentTransfer>\n| <svg feComposite>\n| <svg feConvolveMatrix>\n| <svg feDiffuseLighting>\n| <svg feDisplacementMap>\n| <svg feDistantLight>\n| <svg feFlood>\n| <svg feFuncA>\n| <svg feFuncB>\n| <svg feFuncG>\n| <svg feFuncR>\n| <svg feGaussianBlur>\n| <svg feImage>\n| <svg feMerge>\n| <svg feMergeNode>\n| <svg feMorphology>\n| <svg feOffset>\n| <svg fePointLight>\n| <svg feSpecularLighting>\n| <svg feSpotLight>\n| <svg feTile>\n| <svg feTurbulence>\n| <svg foreignObject>\n| <svg glyphRef>\n| <svg linearGradient>\n| <svg radialGradient>\n| <svg textPath>" but got "#document\n| <!DOCTYPE html>\n| <html>\n| <head>\n| <body>\n| <svg svg>\n| <svg altglyph>\n| <svg altglyphdef>\n| <svg altglyphitem>\n| <svg animateColor>\n| <svg animateMotion>\n| <svg animateTransform>\n| <svg clipPath>\n| <svg feBlend>\n| <svg feColorMatrix>\n| <svg feComponentTransfer>\n| <svg feComposite>\n| <svg feConvolveMatrix>\n| <svg feDiffuseLighting>\n| <svg feDisplacementMap>\n| <svg feDistantLight>\n| <svg feFlood>\n| <svg feFuncA>\n| <svg feFuncB>\n| <svg feFuncG>\n| <svg feFuncR>\n| <svg feGaussianBlur>\n| <svg feImage>\n| <svg feMerge>\n| <svg feMergeNode>\n| <svg feMorphology>\n| <svg feOffset>\n| <svg fePointLight>\n| <svg feSpecularLighting>\n| <svg feSpotLight>\n| <svg feTile>\n| <svg feTurbulence>\n| <svg foreignObject>\n| <svg glyphref>\n| <svg linearGradient>\n| <svg radialGradient>\n| <svg textPath>" -PASS html5lib_tests11.html af40d26164229c29b9be77ed6dd7dda780cba55c -PASS html5lib_tests11.html 16e68d18f8f0fb81013fe77a30b7d396c5081e5e -Harness: the test ran to completion. -
diff --git a/third_party/blink/web_tests/platform/generic/external/wpt/html/syntax/parsing/html5lib_tests11_run_type=write_single-expected.txt b/third_party/blink/web_tests/platform/generic/external/wpt/html/syntax/parsing/html5lib_tests11_run_type=write_single-expected.txt deleted file mode 100644 index 447004f..0000000 --- a/third_party/blink/web_tests/platform/generic/external/wpt/html/syntax/parsing/html5lib_tests11_run_type=write_single-expected.txt +++ /dev/null
@@ -1,16 +0,0 @@ -This is a testharness.js-based test. -FAIL html5lib_tests11.html ba7a66dfcf59885c08e8638d15b01df3878531e7 assert_equals: expected "#document\n| <!DOCTYPE html>\n| <html>\n| <head>\n| <body>\n| <svg svg>\n| attributeName=\"\"\n| attributeType=\"\"\n| baseFrequency=\"\"\n| baseProfile=\"\"\n| calcMode=\"\"\n| clipPathUnits=\"\"\n| diffuseConstant=\"\"\n| edgeMode=\"\"\n| filterUnits=\"\"\n| glyphRef=\"\"\n| gradientTransform=\"\"\n| gradientUnits=\"\"\n| kernelMatrix=\"\"\n| kernelUnitLength=\"\"\n| keyPoints=\"\"\n| keySplines=\"\"\n| keyTimes=\"\"\n| lengthAdjust=\"\"\n| limitingConeAngle=\"\"\n| markerHeight=\"\"\n| markerUnits=\"\"\n| markerWidth=\"\"\n| maskContentUnits=\"\"\n| maskUnits=\"\"\n| numOctaves=\"\"\n| pathLength=\"\"\n| patternContentUnits=\"\"\n| patternTransform=\"\"\n| patternUnits=\"\"\n| pointsAtX=\"\"\n| pointsAtY=\"\"\n| pointsAtZ=\"\"\n| preserveAlpha=\"\"\n| preserveAspectRatio=\"\"\n| primitiveUnits=\"\"\n| refX=\"\"\n| refY=\"\"\n| repeatCount=\"\"\n| repeatDur=\"\"\n| requiredExtensions=\"\"\n| requiredFeatures=\"\"\n| specularConstant=\"\"\n| specularExponent=\"\"\n| spreadMethod=\"\"\n| startOffset=\"\"\n| stdDeviation=\"\"\n| stitchTiles=\"\"\n| surfaceScale=\"\"\n| systemLanguage=\"\"\n| tableValues=\"\"\n| targetX=\"\"\n| targetY=\"\"\n| textLength=\"\"\n| viewBox=\"\"\n| viewTarget=\"\"\n| xChannelSelector=\"\"\n| yChannelSelector=\"\"\n| zoomAndPan=\"\"" but got "#document\n| <!DOCTYPE html>\n| <html>\n| <head>\n| <body>\n| <svg svg>\n| attributeName=\"\"\n| attributeType=\"\"\n| baseFrequency=\"\"\n| baseProfile=\"\"\n| calcMode=\"\"\n| clipPathUnits=\"\"\n| diffuseConstant=\"\"\n| edgeMode=\"\"\n| filterUnits=\"\"\n| glyphRef=\"\"\n| gradientTransform=\"\"\n| gradientUnits=\"\"\n| kernelMatrix=\"\"\n| kernelUnitLength=\"\"\n| keyPoints=\"\"\n| keySplines=\"\"\n| keyTimes=\"\"\n| lengthAdjust=\"\"\n| limitingConeAngle=\"\"\n| markerHeight=\"\"\n| markerUnits=\"\"\n| markerWidth=\"\"\n| maskContentUnits=\"\"\n| maskUnits=\"\"\n| numOctaves=\"\"\n| pathLength=\"\"\n| patternContentUnits=\"\"\n| patternTransform=\"\"\n| patternUnits=\"\"\n| pointsAtX=\"\"\n| pointsAtY=\"\"\n| pointsAtZ=\"\"\n| preserveAlpha=\"\"\n| preserveAspectRatio=\"\"\n| primitiveUnits=\"\"\n| refX=\"\"\n| refY=\"\"\n| repeatCount=\"\"\n| repeatDur=\"\"\n| requiredExtensions=\"\"\n| requiredFeatures=\"\"\n| specularConstant=\"\"\n| specularExponent=\"\"\n| spreadMethod=\"\"\n| startOffset=\"\"\n| stdDeviation=\"\"\n| stitchTiles=\"\"\n| surfaceScale=\"\"\n| systemLanguage=\"\"\n| tableValues=\"\"\n| targetX=\"\"\n| targetY=\"\"\n| textLength=\"\"\n| viewBox=\"\"\n| viewtarget=\"\"\n| xChannelSelector=\"\"\n| yChannelSelector=\"\"\n| zoomAndPan=\"\"" -FAIL html5lib_tests11.html e69c7c08a54ca868ab33b2825d998fa6c3cac90e assert_equals: expected "#document\n| <!DOCTYPE html>\n| <html>\n| <head>\n| <body>\n| <svg svg>\n| attributeName=\"\"\n| attributeType=\"\"\n| baseFrequency=\"\"\n| baseProfile=\"\"\n| calcMode=\"\"\n| clipPathUnits=\"\"\n| diffuseConstant=\"\"\n| edgeMode=\"\"\n| filterUnits=\"\"\n| glyphRef=\"\"\n| gradientTransform=\"\"\n| gradientUnits=\"\"\n| kernelMatrix=\"\"\n| kernelUnitLength=\"\"\n| keyPoints=\"\"\n| keySplines=\"\"\n| keyTimes=\"\"\n| lengthAdjust=\"\"\n| limitingConeAngle=\"\"\n| markerHeight=\"\"\n| markerUnits=\"\"\n| markerWidth=\"\"\n| maskContentUnits=\"\"\n| maskUnits=\"\"\n| numOctaves=\"\"\n| pathLength=\"\"\n| patternContentUnits=\"\"\n| patternTransform=\"\"\n| patternUnits=\"\"\n| pointsAtX=\"\"\n| pointsAtY=\"\"\n| pointsAtZ=\"\"\n| preserveAlpha=\"\"\n| preserveAspectRatio=\"\"\n| primitiveUnits=\"\"\n| refX=\"\"\n| refY=\"\"\n| repeatCount=\"\"\n| repeatDur=\"\"\n| requiredExtensions=\"\"\n| requiredFeatures=\"\"\n| specularConstant=\"\"\n| specularExponent=\"\"\n| spreadMethod=\"\"\n| startOffset=\"\"\n| stdDeviation=\"\"\n| stitchTiles=\"\"\n| surfaceScale=\"\"\n| systemLanguage=\"\"\n| tableValues=\"\"\n| targetX=\"\"\n| targetY=\"\"\n| textLength=\"\"\n| viewBox=\"\"\n| viewTarget=\"\"\n| xChannelSelector=\"\"\n| yChannelSelector=\"\"\n| zoomAndPan=\"\"" but got "#document\n| <!DOCTYPE html>\n| <html>\n| <head>\n| <body>\n| <svg svg>\n| attributeName=\"\"\n| attributeType=\"\"\n| baseFrequency=\"\"\n| baseProfile=\"\"\n| calcMode=\"\"\n| clipPathUnits=\"\"\n| diffuseConstant=\"\"\n| edgeMode=\"\"\n| filterUnits=\"\"\n| glyphRef=\"\"\n| gradientTransform=\"\"\n| gradientUnits=\"\"\n| kernelMatrix=\"\"\n| kernelUnitLength=\"\"\n| keyPoints=\"\"\n| keySplines=\"\"\n| keyTimes=\"\"\n| lengthAdjust=\"\"\n| limitingConeAngle=\"\"\n| markerHeight=\"\"\n| markerUnits=\"\"\n| markerWidth=\"\"\n| maskContentUnits=\"\"\n| maskUnits=\"\"\n| numOctaves=\"\"\n| pathLength=\"\"\n| patternContentUnits=\"\"\n| patternTransform=\"\"\n| patternUnits=\"\"\n| pointsAtX=\"\"\n| pointsAtY=\"\"\n| pointsAtZ=\"\"\n| preserveAlpha=\"\"\n| preserveAspectRatio=\"\"\n| primitiveUnits=\"\"\n| refX=\"\"\n| refY=\"\"\n| repeatCount=\"\"\n| repeatDur=\"\"\n| requiredExtensions=\"\"\n| requiredFeatures=\"\"\n| specularConstant=\"\"\n| specularExponent=\"\"\n| spreadMethod=\"\"\n| startOffset=\"\"\n| stdDeviation=\"\"\n| stitchTiles=\"\"\n| surfaceScale=\"\"\n| systemLanguage=\"\"\n| tableValues=\"\"\n| targetX=\"\"\n| targetY=\"\"\n| textLength=\"\"\n| viewBox=\"\"\n| viewtarget=\"\"\n| xChannelSelector=\"\"\n| yChannelSelector=\"\"\n| zoomAndPan=\"\"" -FAIL html5lib_tests11.html 0e5897aafe87e460f84576c2d1d983504d12a7db assert_equals: expected "#document\n| <!DOCTYPE html>\n| <html>\n| <head>\n| <body>\n| <svg svg>\n| attributeName=\"\"\n| attributeType=\"\"\n| baseFrequency=\"\"\n| baseProfile=\"\"\n| calcMode=\"\"\n| clipPathUnits=\"\"\n| diffuseConstant=\"\"\n| edgeMode=\"\"\n| filterUnits=\"\"\n| filterres=\"\"\n| glyphRef=\"\"\n| gradientTransform=\"\"\n| gradientUnits=\"\"\n| kernelMatrix=\"\"\n| kernelUnitLength=\"\"\n| keyPoints=\"\"\n| keySplines=\"\"\n| keyTimes=\"\"\n| lengthAdjust=\"\"\n| limitingConeAngle=\"\"\n| markerHeight=\"\"\n| markerUnits=\"\"\n| markerWidth=\"\"\n| maskContentUnits=\"\"\n| maskUnits=\"\"\n| numOctaves=\"\"\n| pathLength=\"\"\n| patternContentUnits=\"\"\n| patternTransform=\"\"\n| patternUnits=\"\"\n| pointsAtX=\"\"\n| pointsAtY=\"\"\n| pointsAtZ=\"\"\n| preserveAlpha=\"\"\n| preserveAspectRatio=\"\"\n| primitiveUnits=\"\"\n| refX=\"\"\n| refY=\"\"\n| repeatCount=\"\"\n| repeatDur=\"\"\n| requiredExtensions=\"\"\n| requiredFeatures=\"\"\n| specularConstant=\"\"\n| specularExponent=\"\"\n| spreadMethod=\"\"\n| startOffset=\"\"\n| stdDeviation=\"\"\n| stitchTiles=\"\"\n| surfaceScale=\"\"\n| systemLanguage=\"\"\n| tableValues=\"\"\n| targetX=\"\"\n| targetY=\"\"\n| textLength=\"\"\n| viewBox=\"\"\n| viewTarget=\"\"\n| xChannelSelector=\"\"\n| yChannelSelector=\"\"\n| zoomAndPan=\"\"" but got "#document\n| <!DOCTYPE html>\n| <html>\n| <head>\n| <body>\n| <svg svg>\n| attributeName=\"\"\n| attributeType=\"\"\n| baseFrequency=\"\"\n| baseProfile=\"\"\n| calcMode=\"\"\n| clipPathUnits=\"\"\n| diffuseConstant=\"\"\n| edgeMode=\"\"\n| filterUnits=\"\"\n| filterres=\"\"\n| glyphRef=\"\"\n| gradientTransform=\"\"\n| gradientUnits=\"\"\n| kernelMatrix=\"\"\n| kernelUnitLength=\"\"\n| keyPoints=\"\"\n| keySplines=\"\"\n| keyTimes=\"\"\n| lengthAdjust=\"\"\n| limitingConeAngle=\"\"\n| markerHeight=\"\"\n| markerUnits=\"\"\n| markerWidth=\"\"\n| maskContentUnits=\"\"\n| maskUnits=\"\"\n| numOctaves=\"\"\n| pathLength=\"\"\n| patternContentUnits=\"\"\n| patternTransform=\"\"\n| patternUnits=\"\"\n| pointsAtX=\"\"\n| pointsAtY=\"\"\n| pointsAtZ=\"\"\n| preserveAlpha=\"\"\n| preserveAspectRatio=\"\"\n| primitiveUnits=\"\"\n| refX=\"\"\n| refY=\"\"\n| repeatCount=\"\"\n| repeatDur=\"\"\n| requiredExtensions=\"\"\n| requiredFeatures=\"\"\n| specularConstant=\"\"\n| specularExponent=\"\"\n| spreadMethod=\"\"\n| startOffset=\"\"\n| stdDeviation=\"\"\n| stitchTiles=\"\"\n| surfaceScale=\"\"\n| systemLanguage=\"\"\n| tableValues=\"\"\n| targetX=\"\"\n| targetY=\"\"\n| textLength=\"\"\n| viewBox=\"\"\n| viewtarget=\"\"\n| xChannelSelector=\"\"\n| yChannelSelector=\"\"\n| zoomAndPan=\"\"" -PASS html5lib_tests11.html f71dd198831309fc9ccd66ef91cde63fda9b9bda -PASS html5lib_tests11.html a8f7a23601363454b4a13f66aed99ec9708ae87b -PASS html5lib_tests11.html f8f7f6c576acc9eb874acb0dce6988f0f7b6fc5f -PASS html5lib_tests11.html fb4dc9f70129a8a045fca3a1e3acee052d0990b3 -PASS html5lib_tests11.html 8f77b846acce75edf1988ea655c79f1de4321de9 -FAIL html5lib_tests11.html 39c50f080b2b9ae9e7a1070679ab97d7b814f9ec assert_equals: expected "#document\n| <!DOCTYPE html>\n| <html>\n| <head>\n| <body>\n| <svg svg>\n| <svg altGlyph>\n| <svg altGlyphDef>\n| <svg altGlyphItem>\n| <svg animateColor>\n| <svg animateMotion>\n| <svg animateTransform>\n| <svg clipPath>\n| <svg feBlend>\n| <svg feColorMatrix>\n| <svg feComponentTransfer>\n| <svg feComposite>\n| <svg feConvolveMatrix>\n| <svg feDiffuseLighting>\n| <svg feDisplacementMap>\n| <svg feDistantLight>\n| <svg feFlood>\n| <svg feFuncA>\n| <svg feFuncB>\n| <svg feFuncG>\n| <svg feFuncR>\n| <svg feGaussianBlur>\n| <svg feImage>\n| <svg feMerge>\n| <svg feMergeNode>\n| <svg feMorphology>\n| <svg feOffset>\n| <svg fePointLight>\n| <svg feSpecularLighting>\n| <svg feSpotLight>\n| <svg feTile>\n| <svg feTurbulence>\n| <svg foreignObject>\n| <svg glyphRef>\n| <svg linearGradient>\n| <svg radialGradient>\n| <svg textPath>" but got "#document\n| <!DOCTYPE html>\n| <html>\n| <head>\n| <body>\n| <svg svg>\n| <svg altglyph>\n| <svg altglyphdef>\n| <svg altglyphitem>\n| <svg animateColor>\n| <svg animateMotion>\n| <svg animateTransform>\n| <svg clipPath>\n| <svg feBlend>\n| <svg feColorMatrix>\n| <svg feComponentTransfer>\n| <svg feComposite>\n| <svg feConvolveMatrix>\n| <svg feDiffuseLighting>\n| <svg feDisplacementMap>\n| <svg feDistantLight>\n| <svg feFlood>\n| <svg feFuncA>\n| <svg feFuncB>\n| <svg feFuncG>\n| <svg feFuncR>\n| <svg feGaussianBlur>\n| <svg feImage>\n| <svg feMerge>\n| <svg feMergeNode>\n| <svg feMorphology>\n| <svg feOffset>\n| <svg fePointLight>\n| <svg feSpecularLighting>\n| <svg feSpotLight>\n| <svg feTile>\n| <svg feTurbulence>\n| <svg foreignObject>\n| <svg glyphref>\n| <svg linearGradient>\n| <svg radialGradient>\n| <svg textPath>" -FAIL html5lib_tests11.html 6d1fa1599f75625fe4d019abb04a064cf6ed39e8 assert_equals: expected "#document\n| <!DOCTYPE html>\n| <html>\n| <head>\n| <body>\n| <svg svg>\n| <svg altGlyph>\n| <svg altGlyphDef>\n| <svg altGlyphItem>\n| <svg animateColor>\n| <svg animateMotion>\n| <svg animateTransform>\n| <svg clipPath>\n| <svg feBlend>\n| <svg feColorMatrix>\n| <svg feComponentTransfer>\n| <svg feComposite>\n| <svg feConvolveMatrix>\n| <svg feDiffuseLighting>\n| <svg feDisplacementMap>\n| <svg feDistantLight>\n| <svg feFlood>\n| <svg feFuncA>\n| <svg feFuncB>\n| <svg feFuncG>\n| <svg feFuncR>\n| <svg feGaussianBlur>\n| <svg feImage>\n| <svg feMerge>\n| <svg feMergeNode>\n| <svg feMorphology>\n| <svg feOffset>\n| <svg fePointLight>\n| <svg feSpecularLighting>\n| <svg feSpotLight>\n| <svg feTile>\n| <svg feTurbulence>\n| <svg foreignObject>\n| <svg glyphRef>\n| <svg linearGradient>\n| <svg radialGradient>\n| <svg textPath>" but got "#document\n| <!DOCTYPE html>\n| <html>\n| <head>\n| <body>\n| <svg svg>\n| <svg altglyph>\n| <svg altglyphdef>\n| <svg altglyphitem>\n| <svg animateColor>\n| <svg animateMotion>\n| <svg animateTransform>\n| <svg clipPath>\n| <svg feBlend>\n| <svg feColorMatrix>\n| <svg feComponentTransfer>\n| <svg feComposite>\n| <svg feConvolveMatrix>\n| <svg feDiffuseLighting>\n| <svg feDisplacementMap>\n| <svg feDistantLight>\n| <svg feFlood>\n| <svg feFuncA>\n| <svg feFuncB>\n| <svg feFuncG>\n| <svg feFuncR>\n| <svg feGaussianBlur>\n| <svg feImage>\n| <svg feMerge>\n| <svg feMergeNode>\n| <svg feMorphology>\n| <svg feOffset>\n| <svg fePointLight>\n| <svg feSpecularLighting>\n| <svg feSpotLight>\n| <svg feTile>\n| <svg feTurbulence>\n| <svg foreignObject>\n| <svg glyphref>\n| <svg linearGradient>\n| <svg radialGradient>\n| <svg textPath>" -FAIL html5lib_tests11.html 791437ece7ba684e00162d1dd79dfe540e3621a7 assert_equals: expected "#document\n| <!DOCTYPE html>\n| <html>\n| <head>\n| <body>\n| <svg svg>\n| <svg altGlyph>\n| <svg altGlyphDef>\n| <svg altGlyphItem>\n| <svg animateColor>\n| <svg animateMotion>\n| <svg animateTransform>\n| <svg clipPath>\n| <svg feBlend>\n| <svg feColorMatrix>\n| <svg feComponentTransfer>\n| <svg feComposite>\n| <svg feConvolveMatrix>\n| <svg feDiffuseLighting>\n| <svg feDisplacementMap>\n| <svg feDistantLight>\n| <svg feFlood>\n| <svg feFuncA>\n| <svg feFuncB>\n| <svg feFuncG>\n| <svg feFuncR>\n| <svg feGaussianBlur>\n| <svg feImage>\n| <svg feMerge>\n| <svg feMergeNode>\n| <svg feMorphology>\n| <svg feOffset>\n| <svg fePointLight>\n| <svg feSpecularLighting>\n| <svg feSpotLight>\n| <svg feTile>\n| <svg feTurbulence>\n| <svg foreignObject>\n| <svg glyphRef>\n| <svg linearGradient>\n| <svg radialGradient>\n| <svg textPath>" but got "#document\n| <!DOCTYPE html>\n| <html>\n| <head>\n| <body>\n| <svg svg>\n| <svg altglyph>\n| <svg altglyphdef>\n| <svg altglyphitem>\n| <svg animateColor>\n| <svg animateMotion>\n| <svg animateTransform>\n| <svg clipPath>\n| <svg feBlend>\n| <svg feColorMatrix>\n| <svg feComponentTransfer>\n| <svg feComposite>\n| <svg feConvolveMatrix>\n| <svg feDiffuseLighting>\n| <svg feDisplacementMap>\n| <svg feDistantLight>\n| <svg feFlood>\n| <svg feFuncA>\n| <svg feFuncB>\n| <svg feFuncG>\n| <svg feFuncR>\n| <svg feGaussianBlur>\n| <svg feImage>\n| <svg feMerge>\n| <svg feMergeNode>\n| <svg feMorphology>\n| <svg feOffset>\n| <svg fePointLight>\n| <svg feSpecularLighting>\n| <svg feSpotLight>\n| <svg feTile>\n| <svg feTurbulence>\n| <svg foreignObject>\n| <svg glyphref>\n| <svg linearGradient>\n| <svg radialGradient>\n| <svg textPath>" -PASS html5lib_tests11.html af40d26164229c29b9be77ed6dd7dda780cba55c -PASS html5lib_tests11.html 16e68d18f8f0fb81013fe77a30b7d396c5081e5e -Harness: the test ran to completion. -
diff --git a/third_party/blink/web_tests/platform/generic/http/tests/serviceworker/webexposed/global-interface-listing-service-worker-expected.txt b/third_party/blink/web_tests/platform/generic/http/tests/serviceworker/webexposed/global-interface-listing-service-worker-expected.txt index 2c7866d..f11be43 100644 --- a/third_party/blink/web_tests/platform/generic/http/tests/serviceworker/webexposed/global-interface-listing-service-worker-expected.txt +++ b/third_party/blink/web_tests/platform/generic/http/tests/serviceworker/webexposed/global-interface-listing-service-worker-expected.txt
@@ -180,7 +180,6 @@ getter size method constructor interface CropTarget - static method fromElement attribute @@toStringTag method constructor interface Crypto
diff --git a/third_party/blink/web_tests/platform/generic/virtual/oopr-canvas2d/fast/canvas/canvas-arc-circumference-expected.png b/third_party/blink/web_tests/platform/generic/virtual/oopr-canvas2d/fast/canvas/canvas-arc-circumference-expected.png deleted file mode 100644 index 4d9c5ba..0000000 --- a/third_party/blink/web_tests/platform/generic/virtual/oopr-canvas2d/fast/canvas/canvas-arc-circumference-expected.png +++ /dev/null Binary files differ
diff --git a/third_party/blink/web_tests/platform/generic/virtual/oopr-canvas2d/fast/canvas/canvas-ellipse-circumference-expected.png b/third_party/blink/web_tests/platform/generic/virtual/oopr-canvas2d/fast/canvas/canvas-ellipse-circumference-expected.png deleted file mode 100644 index 6b204fb..0000000 --- a/third_party/blink/web_tests/platform/generic/virtual/oopr-canvas2d/fast/canvas/canvas-ellipse-circumference-expected.png +++ /dev/null Binary files differ
diff --git a/third_party/blink/web_tests/platform/generic/virtual/oopr-canvas2d/fast/canvas/canvas-ellipse-connecting-line-expected.png b/third_party/blink/web_tests/platform/generic/virtual/oopr-canvas2d/fast/canvas/canvas-ellipse-connecting-line-expected.png deleted file mode 100644 index b2fec4c2..0000000 --- a/third_party/blink/web_tests/platform/generic/virtual/oopr-canvas2d/fast/canvas/canvas-ellipse-connecting-line-expected.png +++ /dev/null Binary files differ
diff --git a/third_party/blink/web_tests/platform/generic/virtual/stable/http/tests/serviceworker/webexposed/global-interface-listing-service-worker-expected.txt b/third_party/blink/web_tests/platform/generic/virtual/stable/http/tests/serviceworker/webexposed/global-interface-listing-service-worker-expected.txt index 9ea7291b..4a905b2 100644 --- a/third_party/blink/web_tests/platform/generic/virtual/stable/http/tests/serviceworker/webexposed/global-interface-listing-service-worker-expected.txt +++ b/third_party/blink/web_tests/platform/generic/virtual/stable/http/tests/serviceworker/webexposed/global-interface-listing-service-worker-expected.txt
@@ -169,7 +169,6 @@ getter size method constructor interface CropTarget - static method fromElement attribute @@toStringTag method constructor interface Crypto
diff --git a/third_party/blink/web_tests/platform/generic/virtual/stable/webexposed/global-interface-listing-dedicated-worker-expected.txt b/third_party/blink/web_tests/platform/generic/virtual/stable/webexposed/global-interface-listing-dedicated-worker-expected.txt index de3f790..18915aff 100644 --- a/third_party/blink/web_tests/platform/generic/virtual/stable/webexposed/global-interface-listing-dedicated-worker-expected.txt +++ b/third_party/blink/web_tests/platform/generic/virtual/stable/webexposed/global-interface-listing-dedicated-worker-expected.txt
@@ -161,7 +161,6 @@ [Worker] getter size [Worker] method constructor [Worker] interface CropTarget -[Worker] static method fromElement [Worker] attribute @@toStringTag [Worker] method constructor [Worker] interface Crypto
diff --git a/third_party/blink/web_tests/platform/generic/virtual/stable/webexposed/global-interface-listing-shared-worker-expected.txt b/third_party/blink/web_tests/platform/generic/virtual/stable/webexposed/global-interface-listing-shared-worker-expected.txt index 733d28c..b9905dd 100644 --- a/third_party/blink/web_tests/platform/generic/virtual/stable/webexposed/global-interface-listing-shared-worker-expected.txt +++ b/third_party/blink/web_tests/platform/generic/virtual/stable/webexposed/global-interface-listing-shared-worker-expected.txt
@@ -126,7 +126,6 @@ [Worker] getter size [Worker] method constructor [Worker] interface CropTarget -[Worker] static method fromElement [Worker] attribute @@toStringTag [Worker] method constructor [Worker] interface Crypto
diff --git a/third_party/blink/web_tests/platform/generic/webexposed/global-interface-listing-dedicated-worker-expected.txt b/third_party/blink/web_tests/platform/generic/webexposed/global-interface-listing-dedicated-worker-expected.txt index a1d64a7..08c8d1a3 100644 --- a/third_party/blink/web_tests/platform/generic/webexposed/global-interface-listing-dedicated-worker-expected.txt +++ b/third_party/blink/web_tests/platform/generic/webexposed/global-interface-listing-dedicated-worker-expected.txt
@@ -169,7 +169,6 @@ [Worker] getter size [Worker] method constructor [Worker] interface CropTarget -[Worker] static method fromElement [Worker] attribute @@toStringTag [Worker] method constructor [Worker] interface Crypto
diff --git a/third_party/blink/web_tests/platform/generic/webexposed/global-interface-listing-shared-worker-expected.txt b/third_party/blink/web_tests/platform/generic/webexposed/global-interface-listing-shared-worker-expected.txt index f896702..5c557a45 100644 --- a/third_party/blink/web_tests/platform/generic/webexposed/global-interface-listing-shared-worker-expected.txt +++ b/third_party/blink/web_tests/platform/generic/webexposed/global-interface-listing-shared-worker-expected.txt
@@ -132,7 +132,6 @@ [Worker] getter size [Worker] method constructor [Worker] interface CropTarget -[Worker] static method fromElement [Worker] attribute @@toStringTag [Worker] method constructor [Worker] interface Crypto
diff --git a/third_party/blink/web_tests/platform/linux/svg/W3C-SVG-1.1/pservers-grad-05-b-expected.png b/third_party/blink/web_tests/platform/linux/svg/W3C-SVG-1.1/pservers-grad-05-b-expected.png index 74d48502..1288626 100644 --- a/third_party/blink/web_tests/platform/linux/svg/W3C-SVG-1.1/pservers-grad-05-b-expected.png +++ b/third_party/blink/web_tests/platform/linux/svg/W3C-SVG-1.1/pservers-grad-05-b-expected.png Binary files differ
diff --git a/third_party/blink/web_tests/platform/linux/svg/wicd/test-scalable-background-image2-expected.png b/third_party/blink/web_tests/platform/linux/svg/wicd/test-scalable-background-image2-expected.png index 45c03282..4b7e081 100644 --- a/third_party/blink/web_tests/platform/linux/svg/wicd/test-scalable-background-image2-expected.png +++ b/third_party/blink/web_tests/platform/linux/svg/wicd/test-scalable-background-image2-expected.png Binary files differ
diff --git a/third_party/blink/web_tests/platform/linux/virtual/oopr-canvas2d/fast/canvas/canvas-ellipse-connecting-line-expected.png b/third_party/blink/web_tests/platform/linux/virtual/oopr-canvas2d/fast/canvas/canvas-ellipse-connecting-line-expected.png new file mode 100644 index 0000000..84fc034 --- /dev/null +++ b/third_party/blink/web_tests/platform/linux/virtual/oopr-canvas2d/fast/canvas/canvas-ellipse-connecting-line-expected.png Binary files differ
diff --git a/third_party/blink/web_tests/platform/generic/virtual/oopr-canvas2d/fast/canvas/canvas-zero-length-lineCap-expected.png b/third_party/blink/web_tests/platform/linux/virtual/oopr-canvas2d/fast/canvas/canvas-zero-length-lineCap-expected.png similarity index 76% copy from third_party/blink/web_tests/platform/generic/virtual/oopr-canvas2d/fast/canvas/canvas-zero-length-lineCap-expected.png copy to third_party/blink/web_tests/platform/linux/virtual/oopr-canvas2d/fast/canvas/canvas-zero-length-lineCap-expected.png index 0b31a0d..61fb575 100644 --- a/third_party/blink/web_tests/platform/generic/virtual/oopr-canvas2d/fast/canvas/canvas-zero-length-lineCap-expected.png +++ b/third_party/blink/web_tests/platform/linux/virtual/oopr-canvas2d/fast/canvas/canvas-zero-length-lineCap-expected.png Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac-mac10.13/svg/wicd/test-scalable-background-image2-expected.png b/third_party/blink/web_tests/platform/mac-mac10.13/svg/wicd/test-scalable-background-image2-expected.png index 832ca090..0b63e472 100644 --- a/third_party/blink/web_tests/platform/mac-mac10.13/svg/wicd/test-scalable-background-image2-expected.png +++ b/third_party/blink/web_tests/platform/mac-mac10.13/svg/wicd/test-scalable-background-image2-expected.png Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac-mac10.13/virtual/oopr-canvas2d/fast/canvas/canvas-arc-circumference-expected.png b/third_party/blink/web_tests/platform/mac-mac10.13/virtual/oopr-canvas2d/fast/canvas/canvas-arc-circumference-expected.png deleted file mode 100644 index 2a09fd9..0000000 --- a/third_party/blink/web_tests/platform/mac-mac10.13/virtual/oopr-canvas2d/fast/canvas/canvas-arc-circumference-expected.png +++ /dev/null Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac-mac10.13/virtual/oopr-canvas2d/fast/canvas/canvas-ellipse-circumference-expected.png b/third_party/blink/web_tests/platform/mac-mac10.13/virtual/oopr-canvas2d/fast/canvas/canvas-ellipse-circumference-expected.png deleted file mode 100644 index b3cbc604..0000000 --- a/third_party/blink/web_tests/platform/mac-mac10.13/virtual/oopr-canvas2d/fast/canvas/canvas-ellipse-circumference-expected.png +++ /dev/null Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac-mac10.13/virtual/oopr-canvas2d/fast/canvas/canvas-ellipse-connecting-line-expected.png b/third_party/blink/web_tests/platform/mac-mac10.13/virtual/oopr-canvas2d/fast/canvas/canvas-ellipse-connecting-line-expected.png deleted file mode 100644 index b4021b6..0000000 --- a/third_party/blink/web_tests/platform/mac-mac10.13/virtual/oopr-canvas2d/fast/canvas/canvas-ellipse-connecting-line-expected.png +++ /dev/null Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac-mac10.14/virtual/oopr-canvas2d/fast/canvas/canvas-arc-circumference-expected.png b/third_party/blink/web_tests/platform/mac-mac10.14/virtual/oopr-canvas2d/fast/canvas/canvas-arc-circumference-expected.png deleted file mode 100644 index 2a09fd9..0000000 --- a/third_party/blink/web_tests/platform/mac-mac10.14/virtual/oopr-canvas2d/fast/canvas/canvas-arc-circumference-expected.png +++ /dev/null Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac-mac10.14/virtual/oopr-canvas2d/fast/canvas/canvas-ellipse-circumference-expected.png b/third_party/blink/web_tests/platform/mac-mac10.14/virtual/oopr-canvas2d/fast/canvas/canvas-ellipse-circumference-expected.png deleted file mode 100644 index b3cbc604..0000000 --- a/third_party/blink/web_tests/platform/mac-mac10.14/virtual/oopr-canvas2d/fast/canvas/canvas-ellipse-circumference-expected.png +++ /dev/null Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac-mac10.14/virtual/oopr-canvas2d/fast/canvas/canvas-ellipse-connecting-line-expected.png b/third_party/blink/web_tests/platform/mac-mac10.14/virtual/oopr-canvas2d/fast/canvas/canvas-ellipse-connecting-line-expected.png deleted file mode 100644 index b4021b6..0000000 --- a/third_party/blink/web_tests/platform/mac-mac10.14/virtual/oopr-canvas2d/fast/canvas/canvas-ellipse-connecting-line-expected.png +++ /dev/null Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac-mac10.14/virtual/oopr-canvas2d/fast/canvas/canvas-zero-length-lineCap-expected.png b/third_party/blink/web_tests/platform/mac-mac10.14/virtual/oopr-canvas2d/fast/canvas/canvas-zero-length-lineCap-expected.png deleted file mode 100644 index b84e40c640..0000000 --- a/third_party/blink/web_tests/platform/mac-mac10.14/virtual/oopr-canvas2d/fast/canvas/canvas-zero-length-lineCap-expected.png +++ /dev/null Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac-mac10.15/virtual/oopr-canvas2d/fast/canvas/canvas-arc-circumference-expected.png b/third_party/blink/web_tests/platform/mac-mac10.15/virtual/oopr-canvas2d/fast/canvas/canvas-arc-circumference-expected.png deleted file mode 100644 index 2a09fd9..0000000 --- a/third_party/blink/web_tests/platform/mac-mac10.15/virtual/oopr-canvas2d/fast/canvas/canvas-arc-circumference-expected.png +++ /dev/null Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac-mac10.15/virtual/oopr-canvas2d/fast/canvas/canvas-ellipse-circumference-expected.png b/third_party/blink/web_tests/platform/mac-mac10.15/virtual/oopr-canvas2d/fast/canvas/canvas-ellipse-circumference-expected.png deleted file mode 100644 index b3cbc604..0000000 --- a/third_party/blink/web_tests/platform/mac-mac10.15/virtual/oopr-canvas2d/fast/canvas/canvas-ellipse-circumference-expected.png +++ /dev/null Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac-mac10.15/virtual/oopr-canvas2d/fast/canvas/canvas-ellipse-connecting-line-expected.png b/third_party/blink/web_tests/platform/mac-mac10.15/virtual/oopr-canvas2d/fast/canvas/canvas-ellipse-connecting-line-expected.png deleted file mode 100644 index b4021b6..0000000 --- a/third_party/blink/web_tests/platform/mac-mac10.15/virtual/oopr-canvas2d/fast/canvas/canvas-ellipse-connecting-line-expected.png +++ /dev/null Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac-mac10.15/virtual/oopr-canvas2d/fast/canvas/canvas-zero-length-lineCap-expected.png b/third_party/blink/web_tests/platform/mac-mac10.15/virtual/oopr-canvas2d/fast/canvas/canvas-zero-length-lineCap-expected.png deleted file mode 100644 index b84e40c640..0000000 --- a/third_party/blink/web_tests/platform/mac-mac10.15/virtual/oopr-canvas2d/fast/canvas/canvas-zero-length-lineCap-expected.png +++ /dev/null Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac-mac11-arm64/svg/W3C-SVG-1.1/pservers-grad-05-b-expected.png b/third_party/blink/web_tests/platform/mac-mac11-arm64/svg/W3C-SVG-1.1/pservers-grad-05-b-expected.png index 5ebde91..edf04a7 100644 --- a/third_party/blink/web_tests/platform/mac-mac11-arm64/svg/W3C-SVG-1.1/pservers-grad-05-b-expected.png +++ b/third_party/blink/web_tests/platform/mac-mac11-arm64/svg/W3C-SVG-1.1/pservers-grad-05-b-expected.png Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac-mac11-arm64/virtual/oopr-canvas2d/fast/canvas/canvas-arc-circumference-expected.png b/third_party/blink/web_tests/platform/mac-mac11-arm64/virtual/oopr-canvas2d/fast/canvas/canvas-arc-circumference-expected.png deleted file mode 100644 index 2a09fd9..0000000 --- a/third_party/blink/web_tests/platform/mac-mac11-arm64/virtual/oopr-canvas2d/fast/canvas/canvas-arc-circumference-expected.png +++ /dev/null Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac-mac11-arm64/virtual/oopr-canvas2d/fast/canvas/canvas-ellipse-circumference-expected.png b/third_party/blink/web_tests/platform/mac-mac11-arm64/virtual/oopr-canvas2d/fast/canvas/canvas-ellipse-circumference-expected.png deleted file mode 100644 index b3cbc604..0000000 --- a/third_party/blink/web_tests/platform/mac-mac11-arm64/virtual/oopr-canvas2d/fast/canvas/canvas-ellipse-circumference-expected.png +++ /dev/null Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac-mac11-arm64/virtual/oopr-canvas2d/fast/canvas/canvas-ellipse-connecting-line-expected.png b/third_party/blink/web_tests/platform/mac-mac11-arm64/virtual/oopr-canvas2d/fast/canvas/canvas-ellipse-connecting-line-expected.png deleted file mode 100644 index b4021b6..0000000 --- a/third_party/blink/web_tests/platform/mac-mac11-arm64/virtual/oopr-canvas2d/fast/canvas/canvas-ellipse-connecting-line-expected.png +++ /dev/null Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac-mac11-arm64/virtual/oopr-canvas2d/fast/canvas/canvas-zero-length-lineCap-expected.png b/third_party/blink/web_tests/platform/mac-mac11-arm64/virtual/oopr-canvas2d/fast/canvas/canvas-zero-length-lineCap-expected.png deleted file mode 100644 index b84e40c640..0000000 --- a/third_party/blink/web_tests/platform/mac-mac11-arm64/virtual/oopr-canvas2d/fast/canvas/canvas-zero-length-lineCap-expected.png +++ /dev/null Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac-mac11/svg/wicd/test-scalable-background-image2-expected.png b/third_party/blink/web_tests/platform/mac-mac11/svg/wicd/test-scalable-background-image2-expected.png index 6aa6242..ee020111 100644 --- a/third_party/blink/web_tests/platform/mac-mac11/svg/wicd/test-scalable-background-image2-expected.png +++ b/third_party/blink/web_tests/platform/mac-mac11/svg/wicd/test-scalable-background-image2-expected.png Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac-mac12-arm64/svg/W3C-SVG-1.1/pservers-grad-05-b-expected.png b/third_party/blink/web_tests/platform/mac-mac12-arm64/svg/W3C-SVG-1.1/pservers-grad-05-b-expected.png index 5ebde91..edf04a7 100644 --- a/third_party/blink/web_tests/platform/mac-mac12-arm64/svg/W3C-SVG-1.1/pservers-grad-05-b-expected.png +++ b/third_party/blink/web_tests/platform/mac-mac12-arm64/svg/W3C-SVG-1.1/pservers-grad-05-b-expected.png Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac/svg/W3C-SVG-1.1/pservers-grad-05-b-expected.png b/third_party/blink/web_tests/platform/mac/svg/W3C-SVG-1.1/pservers-grad-05-b-expected.png index 8d4c83f8..61cb831 100644 --- a/third_party/blink/web_tests/platform/mac/svg/W3C-SVG-1.1/pservers-grad-05-b-expected.png +++ b/third_party/blink/web_tests/platform/mac/svg/W3C-SVG-1.1/pservers-grad-05-b-expected.png Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac/svg/wicd/test-scalable-background-image2-expected.png b/third_party/blink/web_tests/platform/mac/svg/wicd/test-scalable-background-image2-expected.png index 40e022c6..60ae031 100644 --- a/third_party/blink/web_tests/platform/mac/svg/wicd/test-scalable-background-image2-expected.png +++ b/third_party/blink/web_tests/platform/mac/svg/wicd/test-scalable-background-image2-expected.png Binary files differ
diff --git a/third_party/blink/web_tests/platform/win/svg/W3C-SVG-1.1/pservers-grad-05-b-expected.png b/third_party/blink/web_tests/platform/win/svg/W3C-SVG-1.1/pservers-grad-05-b-expected.png index db6b095..c967e8e2 100644 --- a/third_party/blink/web_tests/platform/win/svg/W3C-SVG-1.1/pservers-grad-05-b-expected.png +++ b/third_party/blink/web_tests/platform/win/svg/W3C-SVG-1.1/pservers-grad-05-b-expected.png Binary files differ
diff --git a/third_party/blink/web_tests/platform/win/svg/wicd/test-scalable-background-image2-expected.png b/third_party/blink/web_tests/platform/win/svg/wicd/test-scalable-background-image2-expected.png index 48894f5..3fefd83f 100644 --- a/third_party/blink/web_tests/platform/win/svg/wicd/test-scalable-background-image2-expected.png +++ b/third_party/blink/web_tests/platform/win/svg/wicd/test-scalable-background-image2-expected.png Binary files differ
diff --git a/third_party/blink/web_tests/platform/win/virtual/oopr-canvas2d/fast/canvas/canvas-arc-circumference-expected.png b/third_party/blink/web_tests/platform/win/virtual/oopr-canvas2d/fast/canvas/canvas-arc-circumference-expected.png new file mode 100644 index 0000000..242ff5ea --- /dev/null +++ b/third_party/blink/web_tests/platform/win/virtual/oopr-canvas2d/fast/canvas/canvas-arc-circumference-expected.png Binary files differ
diff --git a/third_party/blink/web_tests/platform/win/virtual/oopr-canvas2d/fast/canvas/canvas-ellipse-circumference-expected.png b/third_party/blink/web_tests/platform/win/virtual/oopr-canvas2d/fast/canvas/canvas-ellipse-circumference-expected.png new file mode 100644 index 0000000..14574ee0 --- /dev/null +++ b/third_party/blink/web_tests/platform/win/virtual/oopr-canvas2d/fast/canvas/canvas-ellipse-circumference-expected.png Binary files differ
diff --git a/third_party/blink/web_tests/platform/win/virtual/oopr-canvas2d/fast/canvas/canvas-ellipse-connecting-line-expected.png b/third_party/blink/web_tests/platform/win/virtual/oopr-canvas2d/fast/canvas/canvas-ellipse-connecting-line-expected.png new file mode 100644 index 0000000..3693990 --- /dev/null +++ b/third_party/blink/web_tests/platform/win/virtual/oopr-canvas2d/fast/canvas/canvas-ellipse-connecting-line-expected.png Binary files differ
diff --git a/third_party/blink/web_tests/platform/mac-mac10.13/virtual/oopr-canvas2d/fast/canvas/canvas-zero-length-lineCap-expected.png b/third_party/blink/web_tests/platform/win/virtual/oopr-canvas2d/fast/canvas/canvas-zero-length-lineCap-expected.png similarity index 72% rename from third_party/blink/web_tests/platform/mac-mac10.13/virtual/oopr-canvas2d/fast/canvas/canvas-zero-length-lineCap-expected.png rename to third_party/blink/web_tests/platform/win/virtual/oopr-canvas2d/fast/canvas/canvas-zero-length-lineCap-expected.png index b84e40c640..0b30d9b5 100644 --- a/third_party/blink/web_tests/platform/mac-mac10.13/virtual/oopr-canvas2d/fast/canvas/canvas-zero-length-lineCap-expected.png +++ b/third_party/blink/web_tests/platform/win/virtual/oopr-canvas2d/fast/canvas/canvas-zero-length-lineCap-expected.png Binary files differ
diff --git a/third_party/libavif/README.chromium b/third_party/libavif/README.chromium index 1aa95fd7..cfe4f91 100644 --- a/third_party/libavif/README.chromium +++ b/third_party/libavif/README.chromium
@@ -1,12 +1,12 @@ Name: libavif - Library for encoding and decoding .avif files -Short Name: avif +Short Name: libavif URL: https://github.com/AOMediaCodec/libavif -Version: master +Version: v0.10.1 +Revision: DEPS controlled License: 2-Clause BSD License File: LICENSE Security Critical: yes -Source: https://github.com/AOMediaCodec/libavif ---[ DESCRIPTION ] ------------------ +Description: This contains the source to the AV1 image format demuxer; used for demuxing and decoding .avif files in Chromium.
diff --git a/third_party/opus/BUILD.gn b/third_party/opus/BUILD.gn index 2394f5c..e54e0f8f 100644 --- a/third_party/opus/BUILD.gn +++ b/third_party/opus/BUILD.gn
@@ -610,20 +610,23 @@ deps = [ ":opus" ] } -# Compilation fails on windows due to wstring/string mistmatch. -# This is not worth looking at it since the benchmark is tailored for android. -# It is ok to run it on linux though, for experimentation purpose. -if (is_android || is_linux || is_chromeos) { - test("opus_tests") { - sources = [ "tests/opus_benchmark.cc" ] +# Not all checkouts have a //base directory. +if (build_with_chromium) { + # Compilation fails on windows due to wstring/string mistmatch. + # This is not worth looking at it since the benchmark is tailored for android. + # It is ok to run it on linux though, for experimentation purpose. + if (is_android || is_linux || is_chromeos) { + test("opus_tests") { + sources = [ "tests/opus_benchmark.cc" ] - data = [ "tests/resources/speech_mono_32_48kHz.pcm" ] + data = [ "tests/resources/speech_mono_32_48kHz.pcm" ] - deps = [ - ":opus", - "//base", - "//testing/gtest", - "//testing/gtest:gtest_main", - ] + deps = [ + ":opus", + "//base", + "//testing/gtest", + "//testing/gtest:gtest_main", + ] + } } }
diff --git a/third_party/opus/README.chromium b/third_party/opus/README.chromium index a3f9744..450e748 100644 --- a/third_party/opus/README.chromium +++ b/third_party/opus/README.chromium
@@ -18,4 +18,5 @@ * add workaround to ignore some int-overflows when fuzzing (see crbug/1146174) Opus' own unit tests are located in ./src/tests -Additional chromium tests are located in ./tests +Additional chromium tests are located in ./tests, and require chromium +checkout to run the tests.
diff --git a/third_party/puffin/README.chromium b/third_party/puffin/README.chromium index 6832d48..3efc1be0 100644 --- a/third_party/puffin/README.chromium +++ b/third_party/puffin/README.chromium
@@ -30,3 +30,6 @@ so it will build and run cross-platform. - Removed dependence of libpuffpatch on libpuffdiff as the puffin patching service we plant to implement only requires libpuffpatch. +- Added puffin::Status enum to help disambiguate errors from puffin::PuffPatch +- Added puffin::ApplyPuffPatch API which allows chromium libraries to call + puffin::PuffPatch without having worry about UniqueStreamPtr's and Buffer's. \ No newline at end of file
diff --git a/third_party/puffin/src/chromium_main.cc b/third_party/puffin/src/chromium_main.cc index ae0613f..679f0e5 100644 --- a/third_party/puffin/src/chromium_main.cc +++ b/third_party/puffin/src/chromium_main.cc
@@ -54,8 +54,6 @@ "<input_patch_file_path>"; } -const uint64_t kDefaultPuffCacheSize = 50 * 1024 * 1024; // 50 MB - // An enum representing the type of compressed files. enum class FileType { kDeflate, kZlib, kGzip, kZip, kRaw, kUnknown }; @@ -279,10 +277,11 @@ } // Apply the patch. Use 50MB cache, it should be enough for most of the // operations. - if (!puffin::PuffPatch(std::move(src_stream), std::move(dst_stream), - puffdiff_delta.data(), puffdiff_delta.size(), - kDefaultPuffCacheSize)) { - LOG(ERROR) << "Unable to patch file, an unknown error occurred."; + auto status = puffin::PuffPatch(std::move(src_stream), std::move(dst_stream), + puffdiff_delta.data(), puffdiff_delta.size(), + puffin::kDefaultPuffCacheSize); + if (status != puffin::Status::P_OK) { + LOG(ERROR) << "Unable to patch file, failed with error: " << status << "."; return false; } LOG(INFO) << "File Patched successfully!";
diff --git a/third_party/puffin/src/include/puffin/puffpatch.h b/third_party/puffin/src/include/puffin/puffpatch.h index 4eaa14b..b7a6ac71 100644 --- a/third_party/puffin/src/include/puffin/puffpatch.h +++ b/third_party/puffin/src/include/puffin/puffpatch.h
@@ -5,6 +5,7 @@ #ifndef SRC_INCLUDE_PUFFIN_PUFFPATCH_H_ #define SRC_INCLUDE_PUFFIN_PUFFPATCH_H_ +#include "base/files/file_path.h" #include "puffin/common.h" #include "puffin/stream.h" @@ -12,6 +13,43 @@ extern const char kMagic[]; extern const size_t kMagicLength; +constexpr uint64_t kDefaultPuffCacheSize = 50 * 1024 * 1024; // 50 MB + +// Status codes for Puffin APIs. +// +// Client code should only rely on the distinction between P_OK and the other +// status codes. +// +enum Status { + P_OK = 1, // Successful operation. + + P_UNKNOWN_ERROR = 2, // Error other than listed below. + + P_READ_OPEN_ERROR = 3, // Could not open input file for reading. + P_READ_ERROR = 4, // Could not read from opened input file. + + P_WRITE_OPEN_ERROR = 5, // Could not open output file for writing. + P_WRITE_ERROR = 6, // Could not write to opened output file. + + P_BAD_PUFFIN_MAGIC = 7, // Puffin patch has bad magic. + P_BAD_PUFFIN_VERSION = 8, // Puffin patch has wrong version. + P_BAD_PUFFIN_HEADER = 9, // Puffin patch has corrupt header. + P_BAD_PUFFIN_PATCH_TYPE = + 10, // Puffin patch provided an unsupported patch type. + P_BAD_PUFFIN_CORRUPT = 11, // Zucchini patch has corrupt data. + P_BAD_ZUCC_CORRUPT = 12, // Zucchini patch has corrupt data. + P_BAD_ZUCC_OLD_IMAGE = 13, // Old zucchini image invalid. + P_BAD_ZUCC_NEW_IMAGE = 14, // New image invalid. + + P_BAD_TRANSFORM = 15, // Transform mis-specified. + + P_STREAM_ERROR = 20, // Unexpected error from file_stream.h + P_STREAM_NOT_CONSUMED = 21, // Stream has extra data, is expected to be + // used up. + P_SERIALIZATION_FAILED = 22, // + P_DESERIALIZATION_FAILED = 23, // + P_INPUT_NOT_RECOGNIZED = 24, // Unrecognized input (not a crx) +}; // Applies the puffin patch to deflate stream |src| to create deflate stream // |dst|. This function is used in the client and internally uses bspatch to @@ -25,11 +63,15 @@ // |patch| IN The input patch. // |patch_length| IN The length of the patch. // |max_cache_size|IN The maximum amount of memory to cache puff buffers. -bool PuffPatch(UniqueStreamPtr src, - UniqueStreamPtr dst, - const uint8_t* patch, - size_t patch_length, - size_t max_cache_size = 0); +Status PuffPatch(UniqueStreamPtr src, + UniqueStreamPtr dst, + const uint8_t* patch, + size_t patch_length, + size_t max_cache_size = 0); + +Status ApplyPuffPatch(const base::FilePath& input_path, + const base::FilePath& patch_path, + const base::FilePath& output_path); } // namespace puffin
diff --git a/third_party/puffin/src/patching_unittest.cc b/third_party/puffin/src/patching_unittest.cc index 3a73ac2..c9fc1316 100644 --- a/third_party/puffin/src/patching_unittest.cc +++ b/third_party/puffin/src/patching_unittest.cc
@@ -117,8 +117,9 @@ auto src_stream = MemoryStream::CreateForRead(src_buf); Buffer dst_buf_out(dst_buf.size()); auto dst_stream = MemoryStream::CreateForWrite(&dst_buf_out); - ASSERT_TRUE(PuffPatch(std::move(src_stream), std::move(dst_stream), - patch.data(), patch.size())); + ASSERT_EQ(PuffPatch(std::move(src_stream), std::move(dst_stream), + patch.data(), patch.size()), + Status::P_OK); EXPECT_EQ(dst_buf_out, dst_buf); }
diff --git a/third_party/puffin/src/puffpatch.cc b/third_party/puffin/src/puffpatch.cc index ea3ae72d..93e52a19 100644 --- a/third_party/puffin/src/puffpatch.cc +++ b/third_party/puffin/src/puffpatch.cc
@@ -8,6 +8,7 @@ #include <algorithm> #include <string> +#include <utility> #include <vector> #include "base/big_endian.h" @@ -17,6 +18,7 @@ #include "puffin/memory_stream.h" #include "puffin/src/include/puffin/brotli_util.h" #include "puffin/src/include/puffin/common.h" +#include "puffin/src/include/puffin/file_stream.h" #include "puffin/src/include/puffin/huffer.h" #include "puffin/src/include/puffin/puffer.h" #include "puffin/src/include/puffin/stream.h" @@ -46,25 +48,26 @@ } } -bool DecodePatch(const uint8_t* patch, - size_t patch_length, - size_t* bsdiff_patch_offset, - size_t* bsdiff_patch_size, - vector<BitExtent>* src_deflates, - vector<BitExtent>* dst_deflates, - vector<ByteExtent>* src_puffs, - vector<ByteExtent>* dst_puffs, - uint64_t* src_puff_size, - uint64_t* dst_puff_size, - metadata::PatchHeader_PatchType* patch_type) { +Status DecodePatch(const uint8_t* patch, + size_t patch_length, + size_t* bsdiff_patch_offset, + size_t* bsdiff_patch_size, + vector<BitExtent>* src_deflates, + vector<BitExtent>* dst_deflates, + vector<ByteExtent>* src_puffs, + vector<ByteExtent>* dst_puffs, + uint64_t* src_puff_size, + uint64_t* dst_puff_size, + metadata::PatchHeader_PatchType* patch_type) { size_t offset = 0; uint32_t header_size = 0; - TEST_AND_RETURN_FALSE(patch_length >= (kMagicLength + sizeof(header_size))); + TEST_AND_RETURN_VALUE(patch_length >= (kMagicLength + sizeof(header_size)), + Status::P_BAD_PUFFIN_CORRUPT); string patch_magic(reinterpret_cast<const char*>(patch), kMagicLength); if (patch_magic != kMagic) { LOG(ERROR) << "Magic number for Puffin patch is incorrect: " << patch_magic; - return false; + return Status::P_BAD_PUFFIN_MAGIC; } offset += kMagicLength; @@ -72,10 +75,12 @@ memcpy(&header_size, patch + offset, sizeof(header_size)); base::WriteBigEndian(reinterpret_cast<char*>(&header_size), header_size); offset += sizeof(header_size); - TEST_AND_RETURN_FALSE(header_size <= (patch_length - offset)); + TEST_AND_RETURN_VALUE(header_size <= (patch_length - offset), + Status::P_BAD_PUFFIN_HEADER); metadata::PatchHeader header; - TEST_AND_RETURN_FALSE(header.ParseFromArray(patch + offset, header_size)); + TEST_AND_RETURN_VALUE(header.ParseFromArray(patch + offset, header_size), + Status::P_BAD_PUFFIN_HEADER); offset += header_size; CopyRpfToVector(header.src().deflates(), src_deflates, 1); @@ -90,14 +95,14 @@ *bsdiff_patch_size = patch_length - offset; *patch_type = header.type(); - return true; + return Status::P_OK; } -bool ApplyZucchiniPatch(UniqueStreamPtr src_stream, - size_t src_size, - const uint8_t* patch_start, - size_t patch_size, - UniqueStreamPtr dst_stream) { +Status ApplyZucchiniPatch(UniqueStreamPtr src_stream, + size_t src_size, + const uint8_t* patch_start, + size_t patch_size, + UniqueStreamPtr dst_stream) { // Read the source data Buffer puffed_src(src_size); Buffer buffer(1024 * 1024); @@ -105,19 +110,21 @@ while (bytes_wrote < src_size) { auto write_size = std::min(static_cast<uint64_t>(buffer.size()), src_size - bytes_wrote); - TEST_AND_RETURN_FALSE(src_stream->Read(buffer.data(), write_size)); + TEST_AND_RETURN_VALUE(src_stream->Read(buffer.data(), write_size), + Status::P_READ_ERROR); std::copy(buffer.data(), buffer.data() + write_size, puffed_src.data() + bytes_wrote); bytes_wrote += write_size; } // Read the patch Buffer zucchini_patch; - TEST_AND_RETURN_FALSE(BrotliDecode(patch_start, patch_size, &zucchini_patch)); + TEST_AND_RETURN_VALUE(BrotliDecode(patch_start, patch_size, &zucchini_patch), + Status::P_BAD_PUFFIN_CORRUPT); auto patch_reader = zucchini::EnsemblePatchReader::Create( {zucchini_patch.data(), zucchini_patch.size()}); if (!patch_reader.has_value()) { LOG(ERROR) << "Failed to parse the zucchini patch."; - return false; + return Status::P_BAD_ZUCC_CORRUPT; } // TODO(197361113) Stream the patched result once zucchini supports it. So we @@ -126,23 +133,39 @@ auto status = zucchini::ApplyBuffer( {puffed_src.data(), puffed_src.size()}, *patch_reader, {patched_data.data(), patched_data.size()}); - if (status != zucchini::status::kStatusSuccess) { - LOG(ERROR) << "Failed to parse the zucchini patch: " << status; - return false; + switch (status) { + case zucchini::status::kStatusSuccess: + break; + case zucchini::status::kStatusInvalidParam: + return Status::P_INPUT_NOT_RECOGNIZED; + case zucchini::status::kStatusFileReadError: + case zucchini::status::kStatusPatchReadError: + return Status::P_READ_ERROR; + case zucchini::status::kStatusFileWriteError: + case zucchini::status::kStatusPatchWriteError: + return Status::P_WRITE_ERROR; + case zucchini::status::kStatusInvalidOldImage: + return Status::P_BAD_ZUCC_OLD_IMAGE; + case zucchini::status::kStatusInvalidNewImage: + return Status::P_BAD_ZUCC_NEW_IMAGE; + case zucchini::status::kStatusFatal: + default: + return Status::P_UNKNOWN_ERROR; } - TEST_AND_RETURN_FALSE( - dst_stream->Write(patched_data.data(), patched_data.size())); - return true; + TEST_AND_RETURN_VALUE( + dst_stream->Write(patched_data.data(), patched_data.size()), + Status::P_WRITE_ERROR); + return Status::P_OK; } } // namespace -bool PuffPatch(UniqueStreamPtr src, - UniqueStreamPtr dst, - const uint8_t* patch, - size_t patch_length, - size_t max_cache_size) { +Status PuffPatch(UniqueStreamPtr src, + UniqueStreamPtr dst, + const uint8_t* patch, + size_t patch_length, + size_t max_cache_size) { size_t patch_offset; // raw patch offset in puffin |patch|. size_t raw_patch_size = 0; vector<BitExtent> src_deflates, dst_deflates; @@ -152,29 +175,66 @@ metadata::PatchHeader_PatchType patch_type; // Decode the patch and get the raw patch (e.g. bsdiff, zucchini). - TEST_AND_RETURN_FALSE( + auto decode_status = DecodePatch(patch, patch_length, &patch_offset, &raw_patch_size, &src_deflates, &dst_deflates, &src_puffs, &dst_puffs, - &src_puff_size, &dst_puff_size, &patch_type)); + &src_puff_size, &dst_puff_size, &patch_type); + if (Status::P_OK != decode_status) { + return decode_status; + } auto puffer = std::make_shared<Puffer>(); auto huffer = std::make_shared<Huffer>(); auto src_stream = PuffinStream::CreateForPuff(std::move(src), puffer, src_puff_size, src_deflates, src_puffs, max_cache_size); - TEST_AND_RETURN_FALSE(src_stream); + TEST_AND_RETURN_VALUE(src_stream, Status::P_READ_ERROR); auto dst_stream = PuffinStream::CreateForHuff( std::move(dst), huffer, dst_puff_size, dst_deflates, dst_puffs); - TEST_AND_RETURN_FALSE(dst_stream); + TEST_AND_RETURN_VALUE(dst_stream, Status::P_WRITE_ERROR); if (patch_type == metadata::PatchHeader_PatchType_ZUCCHINI) { - TEST_AND_RETURN_FALSE(ApplyZucchiniPatch( - std::move(src_stream), src_puff_size, patch + patch_offset, - raw_patch_size, std::move(dst_stream))); + auto zucc_status = ApplyZucchiniPatch(std::move(src_stream), src_puff_size, + patch + patch_offset, raw_patch_size, + std::move(dst_stream)); + if (Status::P_OK != zucc_status) { + return zucc_status; + } } else { LOG(ERROR) << "Unsupported patch type " << patch_type; - return false; + return Status::P_BAD_PUFFIN_PATCH_TYPE; } - return true; + return Status::P_OK; +} + +Status ApplyPuffPatch(const base::FilePath& input_path, + const base::FilePath& patch_path, + const base::FilePath& output_path) { + puffin::UniqueStreamPtr input_stream = + puffin::FileStream::Open(input_path.AsUTF8Unsafe(), true, false); + if (!input_stream) { + return Status::P_READ_OPEN_ERROR; + } + puffin::UniqueStreamPtr output_stream = + puffin::FileStream::Open(output_path.AsUTF8Unsafe(), false, true); + if (!output_stream) { + return Status::P_WRITE_OPEN_ERROR; + } + puffin::UniqueStreamPtr patch_stream = + puffin::FileStream::Open(patch_path.AsUTF8Unsafe(), true, false); + if (!patch_stream) { + return Status::P_READ_OPEN_ERROR; + } + uint64_t patch_size = 0; + if (!patch_stream->GetSize(&patch_size)) { + return Status::P_STREAM_ERROR; + } + puffin::Buffer puffdiff_delta(patch_size); + if (!patch_stream->Read(puffdiff_delta.data(), puffdiff_delta.size())) { + return Status::P_READ_ERROR; + } + return puffin::PuffPatch(std::move(input_stream), std::move(output_stream), + std::move(puffdiff_delta.data()), + puffdiff_delta.size(), kDefaultPuffCacheSize); } } // namespace puffin
diff --git a/third_party/webrtc_overrides/BUILD.gn b/third_party/webrtc_overrides/BUILD.gn index f37aee7..7001043 100644 --- a/third_party/webrtc_overrides/BUILD.gn +++ b/third_party/webrtc_overrides/BUILD.gn
@@ -108,7 +108,6 @@ "//third_party/webrtc/rtc_base:timestamp_aligner", "//third_party/webrtc/rtc_base:timeutils", "//third_party/webrtc/rtc_base/system:rtc_export", - "//third_party/webrtc/rtc_base/task_utils:to_queued_task", "//third_party/webrtc/rtc_base/third_party/base64", "//third_party/webrtc/rtc_base/third_party/sigslot", "//third_party/webrtc/rtc_base/third_party/sigslot:sigslot", @@ -226,8 +225,9 @@ "//base", "//third_party/webrtc/api/metronome", "//third_party/webrtc/api/task_queue", + "//third_party/webrtc/api/task_queue:pending_task_safety_flag", + "//third_party/webrtc/api/units:time_delta", "//third_party/webrtc/rtc_base/system:rtc_export", - "//third_party/webrtc/rtc_base/task_utils:to_queued_task", ] }
diff --git a/third_party/webrtc_overrides/coalesced_tasks.cc b/third_party/webrtc_overrides/coalesced_tasks.cc index de606e0c..0f2ccad5 100644 --- a/third_party/webrtc_overrides/coalesced_tasks.cc +++ b/third_party/webrtc_overrides/coalesced_tasks.cc
@@ -22,7 +22,7 @@ } bool CoalescedTasks::QueueDelayedTask(base::TimeTicks task_time, - std::unique_ptr<webrtc::QueuedTask> task, + absl::AnyInvocable<void() &&> task, base::TimeTicks scheduled_time) { DCHECK_GE(scheduled_time, task_time); base::AutoLock auto_lock(lock_); @@ -40,7 +40,7 @@ base::TimeTicks scheduled_time, PrepareRunTaskCallback prepare_run_task_callback, FinalizeRunTaskCallback finalize_run_task_callback) { - std::vector<std::unique_ptr<webrtc::QueuedTask>> ready_tasks; + std::vector<absl::AnyInvocable<void() &&>> ready_tasks; { base::AutoLock auto_lock(lock_); // `scheduled_time` is no longer scheduled. @@ -66,9 +66,7 @@ task_start_timestamp = prepare_run_task_callback.Run(); } - if (!ready_task->Run()) { - ready_task.release(); - } + std::move(ready_task)(); if (finalize_run_task_callback) { finalize_run_task_callback.Run(std::move(task_start_timestamp));
diff --git a/third_party/webrtc_overrides/coalesced_tasks.h b/third_party/webrtc_overrides/coalesced_tasks.h index ad9c451f..73a507c5 100644 --- a/third_party/webrtc_overrides/coalesced_tasks.h +++ b/third_party/webrtc_overrides/coalesced_tasks.h
@@ -12,8 +12,8 @@ #include "base/callback.h" #include "base/synchronization/lock.h" #include "base/time/time.h" +#include "third_party/abseil-cpp/absl/functional/any_invocable.h" #include "third_party/abseil-cpp/absl/types/optional.h" -#include "third_party/webrtc/api/task_queue/queued_task.h" #include "third_party/webrtc/rtc_base/system/rtc_export.h" namespace blink { @@ -37,7 +37,7 @@ // `scheduled_time`. In this case, the caller is responsible for scheduling a // call to RunScheduledTasks() at `scheduled_time`. bool QueueDelayedTask(base::TimeTicks task_time, - std::unique_ptr<webrtc::QueuedTask> task, + absl::AnyInvocable<void() &&> task, base::TimeTicks scheduled_time); // Run all queued tasks up to and including `scheduled_time`. If multiple // tasks were queued onto the same `scheduled_time` they will execute in order @@ -68,7 +68,7 @@ base::Lock lock_; std::set<base::TimeTicks> scheduled_ticks_ GUARDED_BY(lock_); uint64_t next_unique_id_ GUARDED_BY(lock_) = 0; - std::map<UniqueTimeTicks, std::unique_ptr<webrtc::QueuedTask>> delayed_tasks_ + std::map<UniqueTimeTicks, absl::AnyInvocable<void() &&>> delayed_tasks_ GUARDED_BY(lock_); };
diff --git a/third_party/webrtc_overrides/metronome_source.cc b/third_party/webrtc_overrides/metronome_source.cc index c064801..8bc2971 100644 --- a/third_party/webrtc_overrides/metronome_source.cc +++ b/third_party/webrtc_overrides/metronome_source.cc
@@ -20,7 +20,7 @@ #include "base/time/time.h" #include "base/trace_event/typed_macros.h" #include "third_party/webrtc/api/metronome/metronome.h" -#include "third_party/webrtc/rtc_base/task_utils/to_queued_task.h" +#include "third_party/webrtc/api/task_queue/pending_task_safety_flag.h" namespace blink { @@ -51,7 +51,7 @@ void InvokeOnTickOnWebRtcTaskQueue( webrtc::Metronome::TickListener* listener, rtc::scoped_refptr<webrtc::PendingTaskSafetyFlag> task_safety) { - listener->OnTickTaskQueue()->PostTask(webrtc::ToQueuedTask( + listener->OnTickTaskQueue()->PostTask(webrtc::SafeTask( std::move(task_safety), [listener] { listener->OnTick(); })); }
diff --git a/third_party/webrtc_overrides/task_queue_factory.cc b/third_party/webrtc_overrides/task_queue_factory.cc index d57492cd0..66f78fb 100644 --- a/third_party/webrtc_overrides/task_queue_factory.cc +++ b/third_party/webrtc_overrides/task_queue_factory.cc
@@ -13,8 +13,10 @@ #include "base/task/thread_pool.h" #include "base/thread_annotations.h" #include "base/time/time.h" +#include "third_party/abseil-cpp/absl/functional/any_invocable.h" #include "third_party/webrtc/api/task_queue/task_queue_base.h" #include "third_party/webrtc/api/task_queue/task_queue_factory.h" +#include "third_party/webrtc/api/units/time_delta.h" #include "third_party/webrtc_overrides/coalesced_tasks.h" #include "third_party/webrtc_overrides/metronome_source.h" @@ -26,18 +28,18 @@ // webrtc::TaskQueueBase implementation. void Delete() override; - void PostTask(std::unique_ptr<webrtc::QueuedTask> task) override; - void PostDelayedTask(std::unique_ptr<webrtc::QueuedTask> task, - uint32_t milliseconds) override; - void PostDelayedHighPrecisionTask(std::unique_ptr<webrtc::QueuedTask> task, - uint32_t milliseconds) override; + void PostTask(absl::AnyInvocable<void() &&> task) override; + void PostDelayedTask(absl::AnyInvocable<void() &&> task, + webrtc::TimeDelta delay) override; + void PostDelayedHighPrecisionTask(absl::AnyInvocable<void() &&> task, + webrtc::TimeDelta delay) override; private: // Runs a single PostTask-task. static void MaybeRunTask(WebRtcTaskQueue* task_queue, scoped_refptr<base::RefCountedData<bool>> is_active, - std::unique_ptr<webrtc::QueuedTask> task); - void RunTask(std::unique_ptr<webrtc::QueuedTask> task); + absl::AnyInvocable<void() &&> task); + void RunTask(absl::AnyInvocable<void() &&> task); // Runs all ready PostDelayedTask-tasks that have been scheduled to run at // |scheduled_time_now|. static void MaybeRunCoalescedTasks( @@ -75,7 +77,7 @@ delete this; } -void WebRtcTaskQueue::PostTask(std::unique_ptr<webrtc::QueuedTask> task) { +void WebRtcTaskQueue::PostTask(absl::AnyInvocable<void() &&> task) { // Delete() ensures there are no in-flight tasks at destruction, so passing an // unretained pointer to |this| is safe. task_runner_->PostTask( @@ -87,17 +89,15 @@ void WebRtcTaskQueue::MaybeRunTask( WebRtcTaskQueue* task_queue, scoped_refptr<base::RefCountedData<bool>> is_active, - std::unique_ptr<webrtc::QueuedTask> task) { + absl::AnyInvocable<void() &&> task) { if (!is_active->data) return; task_queue->RunTask(std::move(task)); } -void WebRtcTaskQueue::RunTask(std::unique_ptr<webrtc::QueuedTask> task) { +void WebRtcTaskQueue::RunTask(absl::AnyInvocable<void() &&> task) { CurrentTaskQueueSetter set_current(this); - if (!task->Run()) { - task.release(); - } + std::move(task)(); } // static @@ -111,10 +111,10 @@ task_queue->coalesced_tasks_.RunScheduledTasks(scheduled_time_now); } -void WebRtcTaskQueue::PostDelayedTask(std::unique_ptr<webrtc::QueuedTask> task, - uint32_t milliseconds) { +void WebRtcTaskQueue::PostDelayedTask(absl::AnyInvocable<void() &&> task, + webrtc::TimeDelta delay) { base::TimeTicks target_time = - base::TimeTicks::Now() + base::Milliseconds(milliseconds); + base::TimeTicks::Now() + base::Microseconds(delay.us()); base::TimeTicks snapped_target_time = MetronomeSource::TimeSnappedToNextTick(target_time); // Queue to run the delayed task at |snapped_target_time|. If the snapped time @@ -132,10 +132,10 @@ } void WebRtcTaskQueue::PostDelayedHighPrecisionTask( - std::unique_ptr<webrtc::QueuedTask> task, - uint32_t milliseconds) { + absl::AnyInvocable<void() &&> task, + webrtc::TimeDelta delay) { base::TimeTicks target_time = - base::TimeTicks::Now() + base::Milliseconds(milliseconds); + base::TimeTicks::Now() + base::Microseconds(delay.us()); // The posted task might outlive |this|, but access to |this| is guarded by // the ref-counted |is_active_| flag. task_runner_->PostDelayedTaskAt(
diff --git a/third_party/webrtc_overrides/test/metronome_like_task_queue_test.cc b/third_party/webrtc_overrides/test/metronome_like_task_queue_test.cc index 00ec0e4..bf02b768 100644 --- a/third_party/webrtc_overrides/test/metronome_like_task_queue_test.cc +++ b/third_party/webrtc_overrides/test/metronome_like_task_queue_test.cc
@@ -10,9 +10,8 @@ #include "base/time/time.h" #include "testing/gmock/include/gmock/gmock.h" #include "testing/gtest/include/gtest/gtest.h" -#include "third_party/webrtc/api/task_queue/queued_task.h" +#include "third_party/abseil-cpp/absl/functional/any_invocable.h" #include "third_party/webrtc/api/task_queue/task_queue_factory.h" -#include "third_party/webrtc/rtc_base/task_utils/to_queued_task.h" namespace blink { @@ -21,11 +20,6 @@ namespace { -std::unique_ptr<webrtc::QueuedTask> MockFunctionAsQueuedTask( - MockFunction<void()>& mock_function) { - return webrtc::ToQueuedTask(mock_function.AsStdFunction()); -} - class MockCallback { public: MockCallback() { @@ -35,15 +29,17 @@ size_t callback_count() const { return callback_count_; } bool was_called() const { return callback_count_ > 0; } - std::unique_ptr<webrtc::QueuedTask> ToQueuedTask() { - return MockFunctionAsQueuedTask(callback_); - } + absl::AnyInvocable<void() &&> ToTask() { return callback_.AsStdFunction(); } private: MockFunction<void()> callback_; size_t callback_count_ = 0; }; +webrtc::TimeDelta ToWebrtc(base::TimeDelta delta) { + return webrtc::TimeDelta::Micros(delta.InMicroseconds()); +} + } // namespace TEST_P(MetronomeLikeTaskQueueTest, PostTaskRunsPriorToTick) { @@ -51,7 +47,7 @@ MockCallback callback; EXPECT_FALSE(callback.was_called()); - task_queue->PostTask(callback.ToQueuedTask()); + task_queue->PostTask(callback.ToTask()); // The task environment uses multiple threads so it's possible for the // callback to be invoked as soon as we call PostTask(), but by advancing time @@ -65,16 +61,15 @@ // Delay task until next tick. MockCallback callback; - task_queue->PostDelayedTask(callback.ToQueuedTask(), - provider_->MetronomeTick().InMilliseconds()); + task_queue->PostDelayedTask(callback.ToTask(), + ToWebrtc(provider_->MetronomeTick())); EXPECT_EQ(callback.callback_count(), 0u); task_environment_.FastForwardBy(provider_->MetronomeTick()); EXPECT_EQ(callback.callback_count(), 1u); // Delay half a tick. A full tick must pass before it runs. - task_queue->PostDelayedTask( - callback.ToQueuedTask(), - (provider_->MetronomeTick() / 2).InMilliseconds()); + task_queue->PostDelayedTask(callback.ToTask(), + ToWebrtc(provider_->MetronomeTick() / 2)); task_environment_.FastForwardBy(provider_->MetronomeTick() - base::Milliseconds(1)); EXPECT_EQ(callback.callback_count(), 1u); @@ -82,9 +77,8 @@ EXPECT_EQ(callback.callback_count(), 2u); // Delay several ticks. - task_queue->PostDelayedTask( - callback.ToQueuedTask(), - (provider_->MetronomeTick() * 3).InMilliseconds()); + task_queue->PostDelayedTask(callback.ToTask(), + ToWebrtc(provider_->MetronomeTick() * 3)); task_environment_.FastForwardBy(provider_->MetronomeTick() * 2); EXPECT_EQ(callback.callback_count(), 2u); task_environment_.FastForwardBy(provider_->MetronomeTick()); @@ -96,8 +90,8 @@ auto* task_queue = provider_->TaskQueue(); MockCallback callback; - task_queue->PostDelayedHighPrecisionTask(callback.ToQueuedTask(), - /*milliseconds=*/1); + task_queue->PostDelayedHighPrecisionTask(callback.ToTask(), + webrtc::TimeDelta::Millis(1)); EXPECT_FALSE(callback.was_called()); task_environment_.FastForwardBy(base::Milliseconds(1)); @@ -107,34 +101,22 @@ TEST_P(MetronomeLikeTaskQueueTest, DelayedTasksRunInOrder) { auto* task_queue = provider_->TaskQueue(); - constexpr uint32_t kTime0Ms = 1; - constexpr uint32_t kTime1Ms = 2; + constexpr webrtc::TimeDelta kTime0 = webrtc::TimeDelta::Millis(1); + constexpr webrtc::TimeDelta kTime1 = webrtc::TimeDelta::Millis(2); std::vector<std::string> run_tasks; - task_queue->PostDelayedTask(webrtc::ToQueuedTask([&run_tasks]() { - run_tasks.emplace_back("Time0_First"); - }), - kTime0Ms); - task_queue->PostDelayedTask(webrtc::ToQueuedTask([&run_tasks]() { - run_tasks.emplace_back("Time1_First"); - }), - kTime1Ms); - task_queue->PostDelayedTask(webrtc::ToQueuedTask([&run_tasks]() { - run_tasks.emplace_back("Time1_Second"); - }), - kTime1Ms); - task_queue->PostDelayedTask(webrtc::ToQueuedTask([&run_tasks]() { - run_tasks.emplace_back("Time0_Second"); - }), - kTime0Ms); - task_queue->PostDelayedTask(webrtc::ToQueuedTask([&run_tasks]() { - run_tasks.emplace_back("Time0_Third"); - }), - kTime0Ms); - task_queue->PostDelayedTask(webrtc::ToQueuedTask([&run_tasks]() { - run_tasks.emplace_back("Time1_Third"); - }), - kTime1Ms); + task_queue->PostDelayedTask( + [&run_tasks]() { run_tasks.emplace_back("Time0_First"); }, kTime0); + task_queue->PostDelayedTask( + [&run_tasks]() { run_tasks.emplace_back("Time1_First"); }, kTime1); + task_queue->PostDelayedTask( + [&run_tasks]() { run_tasks.emplace_back("Time1_Second"); }, kTime1); + task_queue->PostDelayedTask( + [&run_tasks]() { run_tasks.emplace_back("Time0_Second"); }, kTime0); + task_queue->PostDelayedTask( + [&run_tasks]() { run_tasks.emplace_back("Time0_Third"); }, kTime0); + task_queue->PostDelayedTask( + [&run_tasks]() { run_tasks.emplace_back("Time1_Third"); }, kTime1); task_environment_.FastForwardBy(provider_->MetronomeTick()); EXPECT_THAT(run_tasks, @@ -149,16 +131,14 @@ bool task1_ran = false; task_queue->PostDelayedTask( - webrtc::ToQueuedTask( - [tick = provider_->MetronomeTick(), &task_queue, &task0_ran, - &task1_ran]() { - task0_ran = true; - // Inception! - task_queue->PostDelayedTask( - webrtc::ToQueuedTask([&task1_ran]() { task1_ran = true; }), - tick.InMilliseconds()); - }), - provider_->MetronomeTick().InMilliseconds()); + [tick = provider_->MetronomeTick(), &task_queue, &task0_ran, + &task1_ran]() { + task0_ran = true; + // Inception! + task_queue->PostDelayedTask([&task1_ran]() { task1_ran = true; }, + ToWebrtc(tick)); + }, + ToWebrtc(provider_->MetronomeTick())); task_environment_.FastForwardBy(provider_->MetronomeTick()); EXPECT_TRUE(task0_ran);
diff --git a/third_party/webrtc_overrides/test/metronome_like_task_queue_test.h b/third_party/webrtc_overrides/test/metronome_like_task_queue_test.h index b5931fe..5792aed 100644 --- a/third_party/webrtc_overrides/test/metronome_like_task_queue_test.h +++ b/third_party/webrtc_overrides/test/metronome_like_task_queue_test.h
@@ -13,7 +13,6 @@ #include "testing/gtest/include/gtest/gtest.h" #include "third_party/webrtc/api/task_queue/task_queue_factory.h" #include "third_party/webrtc/rtc_base/system/rtc_export.h" -#include "third_party/webrtc/rtc_base/task_utils/to_queued_task.h" namespace blink {
diff --git a/third_party/win_build_output/midl/chrome/updater/app/server/win/arm64/updater_legacy_idl.h b/third_party/win_build_output/midl/chrome/updater/app/server/win/arm64/updater_legacy_idl.h index 1e0a147..adfb166 100644 --- a/third_party/win_build_output/midl/chrome/updater/app/server/win/arm64/updater_legacy_idl.h +++ b/third_party/win_build_output/midl/chrome/updater/app/server/win/arm64/updater_legacy_idl.h
@@ -95,6 +95,27 @@ #endif /* __IPolicyStatus_FWD_DEFINED__ */ +#ifndef __IPolicyStatusValue_FWD_DEFINED__ +#define __IPolicyStatusValue_FWD_DEFINED__ +typedef interface IPolicyStatusValue IPolicyStatusValue; + +#endif /* __IPolicyStatusValue_FWD_DEFINED__ */ + + +#ifndef __IPolicyStatus2_FWD_DEFINED__ +#define __IPolicyStatus2_FWD_DEFINED__ +typedef interface IPolicyStatus2 IPolicyStatus2; + +#endif /* __IPolicyStatus2_FWD_DEFINED__ */ + + +#ifndef __IPolicyStatus3_FWD_DEFINED__ +#define __IPolicyStatus3_FWD_DEFINED__ +typedef interface IPolicyStatus3 IPolicyStatus3; + +#endif /* __IPolicyStatus3_FWD_DEFINED__ */ + + #ifndef __IProcessLauncher_FWD_DEFINED__ #define __IProcessLauncher_FWD_DEFINED__ typedef interface IProcessLauncher IProcessLauncher; @@ -187,6 +208,27 @@ #endif /* __IPolicyStatus_FWD_DEFINED__ */ +#ifndef __IPolicyStatus2_FWD_DEFINED__ +#define __IPolicyStatus2_FWD_DEFINED__ +typedef interface IPolicyStatus2 IPolicyStatus2; + +#endif /* __IPolicyStatus2_FWD_DEFINED__ */ + + +#ifndef __IPolicyStatus3_FWD_DEFINED__ +#define __IPolicyStatus3_FWD_DEFINED__ +typedef interface IPolicyStatus3 IPolicyStatus3; + +#endif /* __IPolicyStatus3_FWD_DEFINED__ */ + + +#ifndef __IPolicyStatusValue_FWD_DEFINED__ +#define __IPolicyStatusValue_FWD_DEFINED__ +typedef interface IPolicyStatusValue IPolicyStatusValue; + +#endif /* __IPolicyStatusValue_FWD_DEFINED__ */ + + #ifndef __IProcessLauncher_FWD_DEFINED__ #define __IProcessLauncher_FWD_DEFINED__ typedef interface IProcessLauncher IProcessLauncher; @@ -1668,6 +1710,775 @@ #endif /* __IPolicyStatus_INTERFACE_DEFINED__ */ +#ifndef __IPolicyStatusValue_INTERFACE_DEFINED__ +#define __IPolicyStatusValue_INTERFACE_DEFINED__ + +/* interface IPolicyStatusValue */ +/* [unique][helpstring][uuid][dual][object] */ + + +EXTERN_C const IID IID_IPolicyStatusValue; + +#if defined(__cplusplus) && !defined(CINTERFACE) + + MIDL_INTERFACE("27634814-8E41-4C35-8577-980134A96544") + IPolicyStatusValue : public IDispatch + { + public: + virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_source( + /* [retval][out] */ BSTR *__MIDL__IPolicyStatusValue0000) = 0; + + virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_value( + /* [retval][out] */ BSTR *__MIDL__IPolicyStatusValue0001) = 0; + + virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_hasConflict( + /* [retval][out] */ VARIANT_BOOL *has_conflict) = 0; + + virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_conflictSource( + /* [retval][out] */ BSTR *__MIDL__IPolicyStatusValue0002) = 0; + + virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_conflictValue( + /* [retval][out] */ BSTR *__MIDL__IPolicyStatusValue0003) = 0; + + }; + + +#else /* C style interface */ + + typedef struct IPolicyStatusValueVtbl + { + BEGIN_INTERFACE + + DECLSPEC_XFGVIRT(IUnknown, QueryInterface) + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + IPolicyStatusValue * This, + /* [in] */ REFIID riid, + /* [annotation][iid_is][out] */ + _COM_Outptr_ void **ppvObject); + + DECLSPEC_XFGVIRT(IUnknown, AddRef) + ULONG ( STDMETHODCALLTYPE *AddRef )( + IPolicyStatusValue * This); + + DECLSPEC_XFGVIRT(IUnknown, Release) + ULONG ( STDMETHODCALLTYPE *Release )( + IPolicyStatusValue * This); + + DECLSPEC_XFGVIRT(IDispatch, GetTypeInfoCount) + HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( + IPolicyStatusValue * This, + /* [out] */ UINT *pctinfo); + + DECLSPEC_XFGVIRT(IDispatch, GetTypeInfo) + HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( + IPolicyStatusValue * This, + /* [in] */ UINT iTInfo, + /* [in] */ LCID lcid, + /* [out] */ ITypeInfo **ppTInfo); + + DECLSPEC_XFGVIRT(IDispatch, GetIDsOfNames) + HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( + IPolicyStatusValue * This, + /* [in] */ REFIID riid, + /* [size_is][in] */ LPOLESTR *rgszNames, + /* [range][in] */ UINT cNames, + /* [in] */ LCID lcid, + /* [size_is][out] */ DISPID *rgDispId); + + DECLSPEC_XFGVIRT(IDispatch, Invoke) + /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( + IPolicyStatusValue * This, + /* [annotation][in] */ + _In_ DISPID dispIdMember, + /* [annotation][in] */ + _In_ REFIID riid, + /* [annotation][in] */ + _In_ LCID lcid, + /* [annotation][in] */ + _In_ WORD wFlags, + /* [annotation][out][in] */ + _In_ DISPPARAMS *pDispParams, + /* [annotation][out] */ + _Out_opt_ VARIANT *pVarResult, + /* [annotation][out] */ + _Out_opt_ EXCEPINFO *pExcepInfo, + /* [annotation][out] */ + _Out_opt_ UINT *puArgErr); + + DECLSPEC_XFGVIRT(IPolicyStatusValue, get_source) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_source )( + IPolicyStatusValue * This, + /* [retval][out] */ BSTR *__MIDL__IPolicyStatusValue0000); + + DECLSPEC_XFGVIRT(IPolicyStatusValue, get_value) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_value )( + IPolicyStatusValue * This, + /* [retval][out] */ BSTR *__MIDL__IPolicyStatusValue0001); + + DECLSPEC_XFGVIRT(IPolicyStatusValue, get_hasConflict) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_hasConflict )( + IPolicyStatusValue * This, + /* [retval][out] */ VARIANT_BOOL *has_conflict); + + DECLSPEC_XFGVIRT(IPolicyStatusValue, get_conflictSource) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_conflictSource )( + IPolicyStatusValue * This, + /* [retval][out] */ BSTR *__MIDL__IPolicyStatusValue0002); + + DECLSPEC_XFGVIRT(IPolicyStatusValue, get_conflictValue) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_conflictValue )( + IPolicyStatusValue * This, + /* [retval][out] */ BSTR *__MIDL__IPolicyStatusValue0003); + + END_INTERFACE + } IPolicyStatusValueVtbl; + + interface IPolicyStatusValue + { + CONST_VTBL struct IPolicyStatusValueVtbl *lpVtbl; + }; + + + +#ifdef COBJMACROS + + +#define IPolicyStatusValue_QueryInterface(This,riid,ppvObject) \ + ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) + +#define IPolicyStatusValue_AddRef(This) \ + ( (This)->lpVtbl -> AddRef(This) ) + +#define IPolicyStatusValue_Release(This) \ + ( (This)->lpVtbl -> Release(This) ) + + +#define IPolicyStatusValue_GetTypeInfoCount(This,pctinfo) \ + ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) + +#define IPolicyStatusValue_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \ + ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) + +#define IPolicyStatusValue_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \ + ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) + +#define IPolicyStatusValue_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \ + ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) + + +#define IPolicyStatusValue_get_source(This,__MIDL__IPolicyStatusValue0000) \ + ( (This)->lpVtbl -> get_source(This,__MIDL__IPolicyStatusValue0000) ) + +#define IPolicyStatusValue_get_value(This,__MIDL__IPolicyStatusValue0001) \ + ( (This)->lpVtbl -> get_value(This,__MIDL__IPolicyStatusValue0001) ) + +#define IPolicyStatusValue_get_hasConflict(This,has_conflict) \ + ( (This)->lpVtbl -> get_hasConflict(This,has_conflict) ) + +#define IPolicyStatusValue_get_conflictSource(This,__MIDL__IPolicyStatusValue0002) \ + ( (This)->lpVtbl -> get_conflictSource(This,__MIDL__IPolicyStatusValue0002) ) + +#define IPolicyStatusValue_get_conflictValue(This,__MIDL__IPolicyStatusValue0003) \ + ( (This)->lpVtbl -> get_conflictValue(This,__MIDL__IPolicyStatusValue0003) ) + +#endif /* COBJMACROS */ + + +#endif /* C style interface */ + + + + +#endif /* __IPolicyStatusValue_INTERFACE_DEFINED__ */ + + +#ifndef __IPolicyStatus2_INTERFACE_DEFINED__ +#define __IPolicyStatus2_INTERFACE_DEFINED__ + +/* interface IPolicyStatus2 */ +/* [unique][helpstring][uuid][dual][object] */ + + +EXTERN_C const IID IID_IPolicyStatus2; + +#if defined(__cplusplus) && !defined(CINTERFACE) + + MIDL_INTERFACE("34527502-D3DB-4205-A69B-789B27EE0414") + IPolicyStatus2 : public IDispatch + { + public: + virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_updaterVersion( + /* [retval][out] */ BSTR *version) = 0; + + virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_lastCheckedTime( + /* [retval][out] */ DATE *last_checked) = 0; + + virtual HRESULT STDMETHODCALLTYPE refreshPolicies( void) = 0; + + virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_lastCheckPeriodMinutes( + /* [retval][out] */ IPolicyStatusValue **value) = 0; + + virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_updatesSuppressedTimes( + /* [out] */ IPolicyStatusValue **value, + VARIANT_BOOL *are_updates_suppressed) = 0; + + virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_downloadPreferenceGroupPolicy( + /* [retval][out] */ IPolicyStatusValue **value) = 0; + + virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_packageCacheSizeLimitMBytes( + /* [retval][out] */ IPolicyStatusValue **value) = 0; + + virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_packageCacheExpirationTimeDays( + /* [retval][out] */ IPolicyStatusValue **value) = 0; + + virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_proxyMode( + /* [retval][out] */ IPolicyStatusValue **value) = 0; + + virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_proxyPacUrl( + /* [retval][out] */ IPolicyStatusValue **value) = 0; + + virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_proxyServer( + /* [retval][out] */ IPolicyStatusValue **value) = 0; + + virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_effectivePolicyForAppInstalls( + /* [in] */ BSTR app_id, + /* [retval][out] */ IPolicyStatusValue **value) = 0; + + virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_effectivePolicyForAppUpdates( + /* [in] */ BSTR app_id, + /* [retval][out] */ IPolicyStatusValue **value) = 0; + + virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_targetVersionPrefix( + /* [in] */ BSTR app_id, + /* [retval][out] */ IPolicyStatusValue **value) = 0; + + virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_isRollbackToTargetVersionAllowed( + /* [in] */ BSTR app_id, + /* [retval][out] */ IPolicyStatusValue **value) = 0; + + virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_targetChannel( + /* [in] */ BSTR app_id, + /* [retval][out] */ IPolicyStatusValue **value) = 0; + + }; + + +#else /* C style interface */ + + typedef struct IPolicyStatus2Vtbl + { + BEGIN_INTERFACE + + DECLSPEC_XFGVIRT(IUnknown, QueryInterface) + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + IPolicyStatus2 * This, + /* [in] */ REFIID riid, + /* [annotation][iid_is][out] */ + _COM_Outptr_ void **ppvObject); + + DECLSPEC_XFGVIRT(IUnknown, AddRef) + ULONG ( STDMETHODCALLTYPE *AddRef )( + IPolicyStatus2 * This); + + DECLSPEC_XFGVIRT(IUnknown, Release) + ULONG ( STDMETHODCALLTYPE *Release )( + IPolicyStatus2 * This); + + DECLSPEC_XFGVIRT(IDispatch, GetTypeInfoCount) + HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( + IPolicyStatus2 * This, + /* [out] */ UINT *pctinfo); + + DECLSPEC_XFGVIRT(IDispatch, GetTypeInfo) + HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( + IPolicyStatus2 * This, + /* [in] */ UINT iTInfo, + /* [in] */ LCID lcid, + /* [out] */ ITypeInfo **ppTInfo); + + DECLSPEC_XFGVIRT(IDispatch, GetIDsOfNames) + HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( + IPolicyStatus2 * This, + /* [in] */ REFIID riid, + /* [size_is][in] */ LPOLESTR *rgszNames, + /* [range][in] */ UINT cNames, + /* [in] */ LCID lcid, + /* [size_is][out] */ DISPID *rgDispId); + + DECLSPEC_XFGVIRT(IDispatch, Invoke) + /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( + IPolicyStatus2 * This, + /* [annotation][in] */ + _In_ DISPID dispIdMember, + /* [annotation][in] */ + _In_ REFIID riid, + /* [annotation][in] */ + _In_ LCID lcid, + /* [annotation][in] */ + _In_ WORD wFlags, + /* [annotation][out][in] */ + _In_ DISPPARAMS *pDispParams, + /* [annotation][out] */ + _Out_opt_ VARIANT *pVarResult, + /* [annotation][out] */ + _Out_opt_ EXCEPINFO *pExcepInfo, + /* [annotation][out] */ + _Out_opt_ UINT *puArgErr); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_updaterVersion) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_updaterVersion )( + IPolicyStatus2 * This, + /* [retval][out] */ BSTR *version); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_lastCheckedTime) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_lastCheckedTime )( + IPolicyStatus2 * This, + /* [retval][out] */ DATE *last_checked); + + DECLSPEC_XFGVIRT(IPolicyStatus2, refreshPolicies) + HRESULT ( STDMETHODCALLTYPE *refreshPolicies )( + IPolicyStatus2 * This); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_lastCheckPeriodMinutes) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_lastCheckPeriodMinutes )( + IPolicyStatus2 * This, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_updatesSuppressedTimes) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_updatesSuppressedTimes )( + IPolicyStatus2 * This, + /* [out] */ IPolicyStatusValue **value, + VARIANT_BOOL *are_updates_suppressed); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_downloadPreferenceGroupPolicy) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_downloadPreferenceGroupPolicy )( + IPolicyStatus2 * This, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_packageCacheSizeLimitMBytes) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_packageCacheSizeLimitMBytes )( + IPolicyStatus2 * This, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_packageCacheExpirationTimeDays) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_packageCacheExpirationTimeDays )( + IPolicyStatus2 * This, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_proxyMode) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_proxyMode )( + IPolicyStatus2 * This, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_proxyPacUrl) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_proxyPacUrl )( + IPolicyStatus2 * This, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_proxyServer) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_proxyServer )( + IPolicyStatus2 * This, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_effectivePolicyForAppInstalls) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_effectivePolicyForAppInstalls )( + IPolicyStatus2 * This, + /* [in] */ BSTR app_id, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_effectivePolicyForAppUpdates) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_effectivePolicyForAppUpdates )( + IPolicyStatus2 * This, + /* [in] */ BSTR app_id, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_targetVersionPrefix) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_targetVersionPrefix )( + IPolicyStatus2 * This, + /* [in] */ BSTR app_id, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_isRollbackToTargetVersionAllowed) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_isRollbackToTargetVersionAllowed )( + IPolicyStatus2 * This, + /* [in] */ BSTR app_id, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_targetChannel) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_targetChannel )( + IPolicyStatus2 * This, + /* [in] */ BSTR app_id, + /* [retval][out] */ IPolicyStatusValue **value); + + END_INTERFACE + } IPolicyStatus2Vtbl; + + interface IPolicyStatus2 + { + CONST_VTBL struct IPolicyStatus2Vtbl *lpVtbl; + }; + + + +#ifdef COBJMACROS + + +#define IPolicyStatus2_QueryInterface(This,riid,ppvObject) \ + ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) + +#define IPolicyStatus2_AddRef(This) \ + ( (This)->lpVtbl -> AddRef(This) ) + +#define IPolicyStatus2_Release(This) \ + ( (This)->lpVtbl -> Release(This) ) + + +#define IPolicyStatus2_GetTypeInfoCount(This,pctinfo) \ + ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) + +#define IPolicyStatus2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \ + ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) + +#define IPolicyStatus2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \ + ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) + +#define IPolicyStatus2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \ + ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) + + +#define IPolicyStatus2_get_updaterVersion(This,version) \ + ( (This)->lpVtbl -> get_updaterVersion(This,version) ) + +#define IPolicyStatus2_get_lastCheckedTime(This,last_checked) \ + ( (This)->lpVtbl -> get_lastCheckedTime(This,last_checked) ) + +#define IPolicyStatus2_refreshPolicies(This) \ + ( (This)->lpVtbl -> refreshPolicies(This) ) + +#define IPolicyStatus2_get_lastCheckPeriodMinutes(This,value) \ + ( (This)->lpVtbl -> get_lastCheckPeriodMinutes(This,value) ) + +#define IPolicyStatus2_get_updatesSuppressedTimes(This,value,are_updates_suppressed) \ + ( (This)->lpVtbl -> get_updatesSuppressedTimes(This,value,are_updates_suppressed) ) + +#define IPolicyStatus2_get_downloadPreferenceGroupPolicy(This,value) \ + ( (This)->lpVtbl -> get_downloadPreferenceGroupPolicy(This,value) ) + +#define IPolicyStatus2_get_packageCacheSizeLimitMBytes(This,value) \ + ( (This)->lpVtbl -> get_packageCacheSizeLimitMBytes(This,value) ) + +#define IPolicyStatus2_get_packageCacheExpirationTimeDays(This,value) \ + ( (This)->lpVtbl -> get_packageCacheExpirationTimeDays(This,value) ) + +#define IPolicyStatus2_get_proxyMode(This,value) \ + ( (This)->lpVtbl -> get_proxyMode(This,value) ) + +#define IPolicyStatus2_get_proxyPacUrl(This,value) \ + ( (This)->lpVtbl -> get_proxyPacUrl(This,value) ) + +#define IPolicyStatus2_get_proxyServer(This,value) \ + ( (This)->lpVtbl -> get_proxyServer(This,value) ) + +#define IPolicyStatus2_get_effectivePolicyForAppInstalls(This,app_id,value) \ + ( (This)->lpVtbl -> get_effectivePolicyForAppInstalls(This,app_id,value) ) + +#define IPolicyStatus2_get_effectivePolicyForAppUpdates(This,app_id,value) \ + ( (This)->lpVtbl -> get_effectivePolicyForAppUpdates(This,app_id,value) ) + +#define IPolicyStatus2_get_targetVersionPrefix(This,app_id,value) \ + ( (This)->lpVtbl -> get_targetVersionPrefix(This,app_id,value) ) + +#define IPolicyStatus2_get_isRollbackToTargetVersionAllowed(This,app_id,value) \ + ( (This)->lpVtbl -> get_isRollbackToTargetVersionAllowed(This,app_id,value) ) + +#define IPolicyStatus2_get_targetChannel(This,app_id,value) \ + ( (This)->lpVtbl -> get_targetChannel(This,app_id,value) ) + +#endif /* COBJMACROS */ + + +#endif /* C style interface */ + + + + +#endif /* __IPolicyStatus2_INTERFACE_DEFINED__ */ + + +#ifndef __IPolicyStatus3_INTERFACE_DEFINED__ +#define __IPolicyStatus3_INTERFACE_DEFINED__ + +/* interface IPolicyStatus3 */ +/* [unique][helpstring][uuid][dual][object] */ + + +EXTERN_C const IID IID_IPolicyStatus3; + +#if defined(__cplusplus) && !defined(CINTERFACE) + + MIDL_INTERFACE("05A30352-EB25-45B6-8449-BCA7B0542CE5") + IPolicyStatus3 : public IPolicyStatus2 + { + public: + virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_forceInstallApps( + /* [in] */ VARIANT_BOOL is_machine, + /* [retval][out] */ IPolicyStatusValue **value) = 0; + + }; + + +#else /* C style interface */ + + typedef struct IPolicyStatus3Vtbl + { + BEGIN_INTERFACE + + DECLSPEC_XFGVIRT(IUnknown, QueryInterface) + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + IPolicyStatus3 * This, + /* [in] */ REFIID riid, + /* [annotation][iid_is][out] */ + _COM_Outptr_ void **ppvObject); + + DECLSPEC_XFGVIRT(IUnknown, AddRef) + ULONG ( STDMETHODCALLTYPE *AddRef )( + IPolicyStatus3 * This); + + DECLSPEC_XFGVIRT(IUnknown, Release) + ULONG ( STDMETHODCALLTYPE *Release )( + IPolicyStatus3 * This); + + DECLSPEC_XFGVIRT(IDispatch, GetTypeInfoCount) + HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( + IPolicyStatus3 * This, + /* [out] */ UINT *pctinfo); + + DECLSPEC_XFGVIRT(IDispatch, GetTypeInfo) + HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( + IPolicyStatus3 * This, + /* [in] */ UINT iTInfo, + /* [in] */ LCID lcid, + /* [out] */ ITypeInfo **ppTInfo); + + DECLSPEC_XFGVIRT(IDispatch, GetIDsOfNames) + HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( + IPolicyStatus3 * This, + /* [in] */ REFIID riid, + /* [size_is][in] */ LPOLESTR *rgszNames, + /* [range][in] */ UINT cNames, + /* [in] */ LCID lcid, + /* [size_is][out] */ DISPID *rgDispId); + + DECLSPEC_XFGVIRT(IDispatch, Invoke) + /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( + IPolicyStatus3 * This, + /* [annotation][in] */ + _In_ DISPID dispIdMember, + /* [annotation][in] */ + _In_ REFIID riid, + /* [annotation][in] */ + _In_ LCID lcid, + /* [annotation][in] */ + _In_ WORD wFlags, + /* [annotation][out][in] */ + _In_ DISPPARAMS *pDispParams, + /* [annotation][out] */ + _Out_opt_ VARIANT *pVarResult, + /* [annotation][out] */ + _Out_opt_ EXCEPINFO *pExcepInfo, + /* [annotation][out] */ + _Out_opt_ UINT *puArgErr); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_updaterVersion) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_updaterVersion )( + IPolicyStatus3 * This, + /* [retval][out] */ BSTR *version); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_lastCheckedTime) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_lastCheckedTime )( + IPolicyStatus3 * This, + /* [retval][out] */ DATE *last_checked); + + DECLSPEC_XFGVIRT(IPolicyStatus2, refreshPolicies) + HRESULT ( STDMETHODCALLTYPE *refreshPolicies )( + IPolicyStatus3 * This); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_lastCheckPeriodMinutes) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_lastCheckPeriodMinutes )( + IPolicyStatus3 * This, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_updatesSuppressedTimes) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_updatesSuppressedTimes )( + IPolicyStatus3 * This, + /* [out] */ IPolicyStatusValue **value, + VARIANT_BOOL *are_updates_suppressed); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_downloadPreferenceGroupPolicy) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_downloadPreferenceGroupPolicy )( + IPolicyStatus3 * This, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_packageCacheSizeLimitMBytes) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_packageCacheSizeLimitMBytes )( + IPolicyStatus3 * This, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_packageCacheExpirationTimeDays) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_packageCacheExpirationTimeDays )( + IPolicyStatus3 * This, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_proxyMode) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_proxyMode )( + IPolicyStatus3 * This, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_proxyPacUrl) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_proxyPacUrl )( + IPolicyStatus3 * This, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_proxyServer) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_proxyServer )( + IPolicyStatus3 * This, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_effectivePolicyForAppInstalls) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_effectivePolicyForAppInstalls )( + IPolicyStatus3 * This, + /* [in] */ BSTR app_id, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_effectivePolicyForAppUpdates) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_effectivePolicyForAppUpdates )( + IPolicyStatus3 * This, + /* [in] */ BSTR app_id, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_targetVersionPrefix) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_targetVersionPrefix )( + IPolicyStatus3 * This, + /* [in] */ BSTR app_id, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_isRollbackToTargetVersionAllowed) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_isRollbackToTargetVersionAllowed )( + IPolicyStatus3 * This, + /* [in] */ BSTR app_id, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_targetChannel) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_targetChannel )( + IPolicyStatus3 * This, + /* [in] */ BSTR app_id, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus3, get_forceInstallApps) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_forceInstallApps )( + IPolicyStatus3 * This, + /* [in] */ VARIANT_BOOL is_machine, + /* [retval][out] */ IPolicyStatusValue **value); + + END_INTERFACE + } IPolicyStatus3Vtbl; + + interface IPolicyStatus3 + { + CONST_VTBL struct IPolicyStatus3Vtbl *lpVtbl; + }; + + + +#ifdef COBJMACROS + + +#define IPolicyStatus3_QueryInterface(This,riid,ppvObject) \ + ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) + +#define IPolicyStatus3_AddRef(This) \ + ( (This)->lpVtbl -> AddRef(This) ) + +#define IPolicyStatus3_Release(This) \ + ( (This)->lpVtbl -> Release(This) ) + + +#define IPolicyStatus3_GetTypeInfoCount(This,pctinfo) \ + ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) + +#define IPolicyStatus3_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \ + ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) + +#define IPolicyStatus3_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \ + ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) + +#define IPolicyStatus3_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \ + ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) + + +#define IPolicyStatus3_get_updaterVersion(This,version) \ + ( (This)->lpVtbl -> get_updaterVersion(This,version) ) + +#define IPolicyStatus3_get_lastCheckedTime(This,last_checked) \ + ( (This)->lpVtbl -> get_lastCheckedTime(This,last_checked) ) + +#define IPolicyStatus3_refreshPolicies(This) \ + ( (This)->lpVtbl -> refreshPolicies(This) ) + +#define IPolicyStatus3_get_lastCheckPeriodMinutes(This,value) \ + ( (This)->lpVtbl -> get_lastCheckPeriodMinutes(This,value) ) + +#define IPolicyStatus3_get_updatesSuppressedTimes(This,value,are_updates_suppressed) \ + ( (This)->lpVtbl -> get_updatesSuppressedTimes(This,value,are_updates_suppressed) ) + +#define IPolicyStatus3_get_downloadPreferenceGroupPolicy(This,value) \ + ( (This)->lpVtbl -> get_downloadPreferenceGroupPolicy(This,value) ) + +#define IPolicyStatus3_get_packageCacheSizeLimitMBytes(This,value) \ + ( (This)->lpVtbl -> get_packageCacheSizeLimitMBytes(This,value) ) + +#define IPolicyStatus3_get_packageCacheExpirationTimeDays(This,value) \ + ( (This)->lpVtbl -> get_packageCacheExpirationTimeDays(This,value) ) + +#define IPolicyStatus3_get_proxyMode(This,value) \ + ( (This)->lpVtbl -> get_proxyMode(This,value) ) + +#define IPolicyStatus3_get_proxyPacUrl(This,value) \ + ( (This)->lpVtbl -> get_proxyPacUrl(This,value) ) + +#define IPolicyStatus3_get_proxyServer(This,value) \ + ( (This)->lpVtbl -> get_proxyServer(This,value) ) + +#define IPolicyStatus3_get_effectivePolicyForAppInstalls(This,app_id,value) \ + ( (This)->lpVtbl -> get_effectivePolicyForAppInstalls(This,app_id,value) ) + +#define IPolicyStatus3_get_effectivePolicyForAppUpdates(This,app_id,value) \ + ( (This)->lpVtbl -> get_effectivePolicyForAppUpdates(This,app_id,value) ) + +#define IPolicyStatus3_get_targetVersionPrefix(This,app_id,value) \ + ( (This)->lpVtbl -> get_targetVersionPrefix(This,app_id,value) ) + +#define IPolicyStatus3_get_isRollbackToTargetVersionAllowed(This,app_id,value) \ + ( (This)->lpVtbl -> get_isRollbackToTargetVersionAllowed(This,app_id,value) ) + +#define IPolicyStatus3_get_targetChannel(This,app_id,value) \ + ( (This)->lpVtbl -> get_targetChannel(This,app_id,value) ) + + +#define IPolicyStatus3_get_forceInstallApps(This,is_machine,value) \ + ( (This)->lpVtbl -> get_forceInstallApps(This,is_machine,value) ) + +#endif /* COBJMACROS */ + + +#endif /* C style interface */ + + + + +#endif /* __IPolicyStatus3_INTERFACE_DEFINED__ */ + + #ifndef __IProcessLauncher_INTERFACE_DEFINED__ #define __IProcessLauncher_INTERFACE_DEFINED__ @@ -1917,6 +2728,9 @@ + + + EXTERN_C const IID LIBID_UpdaterLegacyLib; EXTERN_C const CLSID CLSID_GoogleUpdate3WebUserClass;
diff --git a/third_party/win_build_output/midl/chrome/updater/app/server/win/arm64/updater_legacy_idl.tlb b/third_party/win_build_output/midl/chrome/updater/app/server/win/arm64/updater_legacy_idl.tlb index 575556c..7522809 100644 --- a/third_party/win_build_output/midl/chrome/updater/app/server/win/arm64/updater_legacy_idl.tlb +++ b/third_party/win_build_output/midl/chrome/updater/app/server/win/arm64/updater_legacy_idl.tlb Binary files differ
diff --git a/third_party/win_build_output/midl/chrome/updater/app/server/win/arm64/updater_legacy_idl_i.c b/third_party/win_build_output/midl/chrome/updater/app/server/win/arm64/updater_legacy_idl_i.c index 3f7c854..2eebddd 100644 --- a/third_party/win_build_output/midl/chrome/updater/app/server/win/arm64/updater_legacy_idl_i.c +++ b/third_party/win_build_output/midl/chrome/updater/app/server/win/arm64/updater_legacy_idl_i.c
@@ -85,6 +85,15 @@ MIDL_DEFINE_GUID(IID, IID_IPolicyStatus,0xF63F6F8B,0xACD5,0x413C,0xA4,0x4B,0x04,0x09,0x13,0x6D,0x26,0xCB); +MIDL_DEFINE_GUID(IID, IID_IPolicyStatusValue,0x27634814,0x8E41,0x4C35,0x85,0x77,0x98,0x01,0x34,0xA9,0x65,0x44); + + +MIDL_DEFINE_GUID(IID, IID_IPolicyStatus2,0x34527502,0xD3DB,0x4205,0xA6,0x9B,0x78,0x9B,0x27,0xEE,0x04,0x14); + + +MIDL_DEFINE_GUID(IID, IID_IPolicyStatus3,0x05A30352,0xEB25,0x45B6,0x84,0x49,0xBC,0xA7,0xB0,0x54,0x2C,0xE5); + + MIDL_DEFINE_GUID(IID, IID_IProcessLauncher,0x128C2DA6,0x2BC0,0x44c0,0xB3,0xF6,0x4E,0xC2,0x2E,0x64,0x79,0x64);
diff --git a/third_party/win_build_output/midl/chrome/updater/app/server/win/arm64/updater_legacy_idl_p.c b/third_party/win_build_output/midl/chrome/updater/app/server/win/arm64/updater_legacy_idl_p.c index 08d582a5..704ed84 100644 --- a/third_party/win_build_output/midl/chrome/updater/app/server/win/arm64/updater_legacy_idl_p.c +++ b/third_party/win_build_output/midl/chrome/updater/app/server/win/arm64/updater_legacy_idl_p.c
@@ -46,8 +46,8 @@ #include "updater_legacy_idl.h" -#define TYPE_FORMAT_STRING_SIZE 1059 -#define PROC_FORMAT_STRING_SIZE 2449 +#define TYPE_FORMAT_STRING_SIZE 1089 +#define PROC_FORMAT_STRING_SIZE 3205 #define EXPR_FORMAT_STRING_SIZE 1 #define TRANSMIT_AS_TABLE_SIZE 0 #define WIRE_MARSHAL_TABLE_SIZE 2 @@ -177,6 +177,27 @@ extern const MIDL_STUB_DESC Object_StubDesc; +extern const MIDL_SERVER_INFO IPolicyStatusValue_ServerInfo; +extern const MIDL_STUBLESS_PROXY_INFO IPolicyStatusValue_ProxyInfo; + + +extern const MIDL_STUB_DESC Object_StubDesc; + + +extern const MIDL_SERVER_INFO IPolicyStatus2_ServerInfo; +extern const MIDL_STUBLESS_PROXY_INFO IPolicyStatus2_ProxyInfo; + + +extern const MIDL_STUB_DESC Object_StubDesc; + + +extern const MIDL_SERVER_INFO IPolicyStatus3_ServerInfo; +extern const MIDL_STUBLESS_PROXY_INFO IPolicyStatus3_ProxyInfo; + + +extern const MIDL_STUB_DESC Object_StubDesc; + + extern const MIDL_SERVER_INFO IProcessLauncher_ServerInfo; extern const MIDL_STUBLESS_PROXY_INFO IProcessLauncher_ProxyInfo; @@ -253,6 +274,9 @@ /* 40 */ 0x8, /* FC_LONG */ 0x0, /* 0 */ + /* Procedure get_value */ + + /* Procedure get_availableVersion */ /* 42 */ 0x33, /* FC_AUTO_HANDLE */ @@ -275,6 +299,9 @@ /* 70 */ 0x81, /* 129 */ 0x0, /* 0 */ + /* Parameter __MIDL__IPolicyStatusValue0001 */ + + /* Parameter __MIDL__ICurrentState0001 */ /* 72 */ NdrFcShort( 0x2113 ), /* Flags: must size, must free, out, simple ref, srv alloc size=8 */ @@ -283,6 +310,9 @@ /* Return value */ + + /* Return value */ + /* 78 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ /* 80 */ NdrFcShort( 0x10 ), /* ARM64 Stack size/offset = 16 */ /* 82 */ 0x8, /* FC_LONG */ @@ -977,6 +1007,9 @@ /* 858 */ 0x8, /* FC_LONG */ 0x0, /* 0 */ + /* Procedure refreshPolicies */ + + /* Procedure createAllInstalledApps */ /* 860 */ 0x33, /* FC_AUTO_HANDLE */ @@ -999,11 +1032,17 @@ /* Return value */ + + /* Return value */ + /* 888 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ /* 890 */ NdrFcShort( 0x8 ), /* ARM64 Stack size/offset = 8 */ /* 892 */ 0x8, /* FC_LONG */ 0x0, /* 0 */ + /* Procedure get_conflictSource */ + + /* Procedure get_displayLanguage */ /* 894 */ 0x33, /* FC_AUTO_HANDLE */ @@ -1026,6 +1065,9 @@ /* 922 */ 0x81, /* 129 */ 0x0, /* 0 */ + /* Parameter __MIDL__IPolicyStatusValue0002 */ + + /* Parameter __MIDL__IAppBundleWeb0000 */ /* 924 */ NdrFcShort( 0x2113 ), /* Flags: must size, must free, out, simple ref, srv alloc size=8 */ @@ -1034,6 +1076,9 @@ /* Return value */ + + /* Return value */ + /* 930 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ /* 932 */ NdrFcShort( 0x10 ), /* ARM64 Stack size/offset = 16 */ /* 934 */ 0x8, /* FC_LONG */ @@ -1417,6 +1462,12 @@ /* 1394 */ 0x8, /* FC_LONG */ 0x0, /* 0 */ + /* Procedure get_updaterVersion */ + + + /* Procedure get_source */ + + /* Procedure get_appId */ /* 1396 */ 0x33, /* FC_AUTO_HANDLE */ @@ -1439,6 +1490,12 @@ /* 1424 */ 0x81, /* 129 */ 0x0, /* 0 */ + /* Parameter version */ + + + /* Parameter __MIDL__IPolicyStatusValue0000 */ + + /* Parameter __MIDL__IAppWeb0000 */ /* 1426 */ NdrFcShort( 0x2113 ), /* Flags: must size, must free, out, simple ref, srv alloc size=8 */ @@ -1447,6 +1504,12 @@ /* Return value */ + + /* Return value */ + + + /* Return value */ + /* 1432 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ /* 1434 */ NdrFcShort( 0x10 ), /* ARM64 Stack size/offset = 16 */ /* 1436 */ 0x8, /* FC_LONG */ @@ -2146,16 +2209,16 @@ /* 2232 */ 0x8, /* FC_LONG */ 0x0, /* 0 */ - /* Procedure LaunchCmdLine */ + /* Procedure get_hasConflict */ /* 2234 */ 0x33, /* FC_AUTO_HANDLE */ 0x6c, /* Old Flags: object, Oi2 */ /* 2236 */ NdrFcLong( 0x0 ), /* 0 */ -/* 2240 */ NdrFcShort( 0x3 ), /* 3 */ +/* 2240 */ NdrFcShort( 0x9 ), /* 9 */ /* 2242 */ NdrFcShort( 0x18 ), /* ARM64 Stack size/offset = 24 */ /* 2244 */ NdrFcShort( 0x0 ), /* 0 */ -/* 2246 */ NdrFcShort( 0x8 ), /* 8 */ -/* 2248 */ 0x46, /* Oi2 Flags: clt must size, has return, has ext, */ +/* 2246 */ NdrFcShort( 0x22 ), /* 34 */ +/* 2248 */ 0x44, /* Oi2 Flags: has return, has ext, */ 0x2, /* 2 */ /* 2250 */ 0xe, /* 14 */ 0x1, /* Ext Flags: new corr desc, */ @@ -2168,11 +2231,12 @@ /* 2262 */ 0x81, /* 129 */ 0x0, /* 0 */ - /* Parameter cmd_line */ + /* Parameter has_conflict */ -/* 2264 */ NdrFcShort( 0x10b ), /* Flags: must size, must free, in, simple ref, */ +/* 2264 */ NdrFcShort( 0x2150 ), /* Flags: out, base type, simple ref, srv alloc size=8 */ /* 2266 */ NdrFcShort( 0x8 ), /* ARM64 Stack size/offset = 8 */ -/* 2268 */ NdrFcShort( 0x41c ), /* Type Offset=1052 */ +/* 2268 */ 0x6, /* FC_SHORT */ + 0x0, /* 0 */ /* Return value */ @@ -2181,161 +2245,801 @@ /* 2274 */ 0x8, /* FC_LONG */ 0x0, /* 0 */ - /* Procedure LaunchBrowser */ + /* Procedure get_conflictValue */ /* 2276 */ 0x33, /* FC_AUTO_HANDLE */ 0x6c, /* Old Flags: object, Oi2 */ /* 2278 */ NdrFcLong( 0x0 ), /* 0 */ -/* 2282 */ NdrFcShort( 0x4 ), /* 4 */ -/* 2284 */ NdrFcShort( 0x20 ), /* ARM64 Stack size/offset = 32 */ -/* 2286 */ NdrFcShort( 0x8 ), /* 8 */ +/* 2282 */ NdrFcShort( 0xb ), /* 11 */ +/* 2284 */ NdrFcShort( 0x18 ), /* ARM64 Stack size/offset = 24 */ +/* 2286 */ NdrFcShort( 0x0 ), /* 0 */ /* 2288 */ NdrFcShort( 0x8 ), /* 8 */ -/* 2290 */ 0x46, /* Oi2 Flags: clt must size, has return, has ext, */ - 0x3, /* 3 */ +/* 2290 */ 0x45, /* Oi2 Flags: srv must size, has return, has ext, */ + 0x2, /* 2 */ /* 2292 */ 0xe, /* 14 */ - 0x1, /* Ext Flags: new corr desc, */ -/* 2294 */ NdrFcShort( 0x0 ), /* 0 */ + 0x3, /* Ext Flags: new corr desc, clt corr check, */ +/* 2294 */ NdrFcShort( 0x1 ), /* 1 */ /* 2296 */ NdrFcShort( 0x0 ), /* 0 */ /* 2298 */ NdrFcShort( 0x0 ), /* 0 */ -/* 2300 */ NdrFcShort( 0x3 ), /* 3 */ -/* 2302 */ 0x3, /* 3 */ +/* 2300 */ NdrFcShort( 0x2 ), /* 2 */ +/* 2302 */ 0x2, /* 2 */ 0x80, /* 128 */ /* 2304 */ 0x81, /* 129 */ + 0x0, /* 0 */ + + /* Parameter __MIDL__IPolicyStatusValue0003 */ + +/* 2306 */ NdrFcShort( 0x2113 ), /* Flags: must size, must free, out, simple ref, srv alloc size=8 */ +/* 2308 */ NdrFcShort( 0x8 ), /* ARM64 Stack size/offset = 8 */ +/* 2310 */ NdrFcShort( 0x24 ), /* Type Offset=36 */ + + /* Return value */ + +/* 2312 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ +/* 2314 */ NdrFcShort( 0x10 ), /* ARM64 Stack size/offset = 16 */ +/* 2316 */ 0x8, /* FC_LONG */ + 0x0, /* 0 */ + + /* Procedure get_lastCheckedTime */ + +/* 2318 */ 0x33, /* FC_AUTO_HANDLE */ + 0x6c, /* Old Flags: object, Oi2 */ +/* 2320 */ NdrFcLong( 0x0 ), /* 0 */ +/* 2324 */ NdrFcShort( 0x8 ), /* 8 */ +/* 2326 */ NdrFcShort( 0x18 ), /* ARM64 Stack size/offset = 24 */ +/* 2328 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2330 */ NdrFcShort( 0x2c ), /* 44 */ +/* 2332 */ 0x44, /* Oi2 Flags: has return, has ext, */ + 0x2, /* 2 */ +/* 2334 */ 0xe, /* 14 */ + 0x1, /* Ext Flags: new corr desc, */ +/* 2336 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2338 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2340 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2342 */ NdrFcShort( 0x2 ), /* 2 */ +/* 2344 */ 0x2, /* 2 */ + 0x80, /* 128 */ +/* 2346 */ 0x81, /* 129 */ + 0x0, /* 0 */ + + /* Parameter last_checked */ + +/* 2348 */ NdrFcShort( 0x2150 ), /* Flags: out, base type, simple ref, srv alloc size=8 */ +/* 2350 */ NdrFcShort( 0x8 ), /* ARM64 Stack size/offset = 8 */ +/* 2352 */ 0xc, /* FC_DOUBLE */ + 0x0, /* 0 */ + + /* Return value */ + +/* 2354 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ +/* 2356 */ NdrFcShort( 0x10 ), /* ARM64 Stack size/offset = 16 */ +/* 2358 */ 0x8, /* FC_LONG */ + 0x0, /* 0 */ + + /* Procedure get_lastCheckPeriodMinutes */ + +/* 2360 */ 0x33, /* FC_AUTO_HANDLE */ + 0x6c, /* Old Flags: object, Oi2 */ +/* 2362 */ NdrFcLong( 0x0 ), /* 0 */ +/* 2366 */ NdrFcShort( 0xa ), /* 10 */ +/* 2368 */ NdrFcShort( 0x18 ), /* ARM64 Stack size/offset = 24 */ +/* 2370 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2372 */ NdrFcShort( 0x8 ), /* 8 */ +/* 2374 */ 0x45, /* Oi2 Flags: srv must size, has return, has ext, */ + 0x2, /* 2 */ +/* 2376 */ 0xe, /* 14 */ + 0x1, /* Ext Flags: new corr desc, */ +/* 2378 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2380 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2382 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2384 */ NdrFcShort( 0x2 ), /* 2 */ +/* 2386 */ 0x2, /* 2 */ + 0x80, /* 128 */ +/* 2388 */ 0x81, /* 129 */ + 0x0, /* 0 */ + + /* Parameter value */ + +/* 2390 */ NdrFcShort( 0x13 ), /* Flags: must size, must free, out, */ +/* 2392 */ NdrFcShort( 0x8 ), /* ARM64 Stack size/offset = 8 */ +/* 2394 */ NdrFcShort( 0x41e ), /* Type Offset=1054 */ + + /* Return value */ + +/* 2396 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ +/* 2398 */ NdrFcShort( 0x10 ), /* ARM64 Stack size/offset = 16 */ +/* 2400 */ 0x8, /* FC_LONG */ + 0x0, /* 0 */ + + /* Procedure get_updatesSuppressedTimes */ + +/* 2402 */ 0x33, /* FC_AUTO_HANDLE */ + 0x6c, /* Old Flags: object, Oi2 */ +/* 2404 */ NdrFcLong( 0x0 ), /* 0 */ +/* 2408 */ NdrFcShort( 0xb ), /* 11 */ +/* 2410 */ NdrFcShort( 0x20 ), /* ARM64 Stack size/offset = 32 */ +/* 2412 */ NdrFcShort( 0x1a ), /* 26 */ +/* 2414 */ NdrFcShort( 0x8 ), /* 8 */ +/* 2416 */ 0x45, /* Oi2 Flags: srv must size, has return, has ext, */ + 0x3, /* 3 */ +/* 2418 */ 0xe, /* 14 */ + 0x1, /* Ext Flags: new corr desc, */ +/* 2420 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2422 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2424 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2426 */ NdrFcShort( 0x3 ), /* 3 */ +/* 2428 */ 0x3, /* 3 */ + 0x80, /* 128 */ +/* 2430 */ 0x81, /* 129 */ + 0x82, /* 130 */ + + /* Parameter value */ + +/* 2432 */ NdrFcShort( 0x13 ), /* Flags: must size, must free, out, */ +/* 2434 */ NdrFcShort( 0x8 ), /* ARM64 Stack size/offset = 8 */ +/* 2436 */ NdrFcShort( 0x41e ), /* Type Offset=1054 */ + + /* Parameter are_updates_suppressed */ + +/* 2438 */ NdrFcShort( 0x148 ), /* Flags: in, base type, simple ref, */ +/* 2440 */ NdrFcShort( 0x10 ), /* ARM64 Stack size/offset = 16 */ +/* 2442 */ 0x6, /* FC_SHORT */ + 0x0, /* 0 */ + + /* Return value */ + +/* 2444 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ +/* 2446 */ NdrFcShort( 0x18 ), /* ARM64 Stack size/offset = 24 */ +/* 2448 */ 0x8, /* FC_LONG */ + 0x0, /* 0 */ + + /* Procedure get_downloadPreferenceGroupPolicy */ + +/* 2450 */ 0x33, /* FC_AUTO_HANDLE */ + 0x6c, /* Old Flags: object, Oi2 */ +/* 2452 */ NdrFcLong( 0x0 ), /* 0 */ +/* 2456 */ NdrFcShort( 0xc ), /* 12 */ +/* 2458 */ NdrFcShort( 0x18 ), /* ARM64 Stack size/offset = 24 */ +/* 2460 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2462 */ NdrFcShort( 0x8 ), /* 8 */ +/* 2464 */ 0x45, /* Oi2 Flags: srv must size, has return, has ext, */ + 0x2, /* 2 */ +/* 2466 */ 0xe, /* 14 */ + 0x1, /* Ext Flags: new corr desc, */ +/* 2468 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2470 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2472 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2474 */ NdrFcShort( 0x2 ), /* 2 */ +/* 2476 */ 0x2, /* 2 */ + 0x80, /* 128 */ +/* 2478 */ 0x81, /* 129 */ + 0x0, /* 0 */ + + /* Parameter value */ + +/* 2480 */ NdrFcShort( 0x13 ), /* Flags: must size, must free, out, */ +/* 2482 */ NdrFcShort( 0x8 ), /* ARM64 Stack size/offset = 8 */ +/* 2484 */ NdrFcShort( 0x41e ), /* Type Offset=1054 */ + + /* Return value */ + +/* 2486 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ +/* 2488 */ NdrFcShort( 0x10 ), /* ARM64 Stack size/offset = 16 */ +/* 2490 */ 0x8, /* FC_LONG */ + 0x0, /* 0 */ + + /* Procedure get_packageCacheSizeLimitMBytes */ + +/* 2492 */ 0x33, /* FC_AUTO_HANDLE */ + 0x6c, /* Old Flags: object, Oi2 */ +/* 2494 */ NdrFcLong( 0x0 ), /* 0 */ +/* 2498 */ NdrFcShort( 0xd ), /* 13 */ +/* 2500 */ NdrFcShort( 0x18 ), /* ARM64 Stack size/offset = 24 */ +/* 2502 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2504 */ NdrFcShort( 0x8 ), /* 8 */ +/* 2506 */ 0x45, /* Oi2 Flags: srv must size, has return, has ext, */ + 0x2, /* 2 */ +/* 2508 */ 0xe, /* 14 */ + 0x1, /* Ext Flags: new corr desc, */ +/* 2510 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2512 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2514 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2516 */ NdrFcShort( 0x2 ), /* 2 */ +/* 2518 */ 0x2, /* 2 */ + 0x80, /* 128 */ +/* 2520 */ 0x81, /* 129 */ + 0x0, /* 0 */ + + /* Parameter value */ + +/* 2522 */ NdrFcShort( 0x13 ), /* Flags: must size, must free, out, */ +/* 2524 */ NdrFcShort( 0x8 ), /* ARM64 Stack size/offset = 8 */ +/* 2526 */ NdrFcShort( 0x41e ), /* Type Offset=1054 */ + + /* Return value */ + +/* 2528 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ +/* 2530 */ NdrFcShort( 0x10 ), /* ARM64 Stack size/offset = 16 */ +/* 2532 */ 0x8, /* FC_LONG */ + 0x0, /* 0 */ + + /* Procedure get_packageCacheExpirationTimeDays */ + +/* 2534 */ 0x33, /* FC_AUTO_HANDLE */ + 0x6c, /* Old Flags: object, Oi2 */ +/* 2536 */ NdrFcLong( 0x0 ), /* 0 */ +/* 2540 */ NdrFcShort( 0xe ), /* 14 */ +/* 2542 */ NdrFcShort( 0x18 ), /* ARM64 Stack size/offset = 24 */ +/* 2544 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2546 */ NdrFcShort( 0x8 ), /* 8 */ +/* 2548 */ 0x45, /* Oi2 Flags: srv must size, has return, has ext, */ + 0x2, /* 2 */ +/* 2550 */ 0xe, /* 14 */ + 0x1, /* Ext Flags: new corr desc, */ +/* 2552 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2554 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2556 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2558 */ NdrFcShort( 0x2 ), /* 2 */ +/* 2560 */ 0x2, /* 2 */ + 0x80, /* 128 */ +/* 2562 */ 0x81, /* 129 */ + 0x0, /* 0 */ + + /* Parameter value */ + +/* 2564 */ NdrFcShort( 0x13 ), /* Flags: must size, must free, out, */ +/* 2566 */ NdrFcShort( 0x8 ), /* ARM64 Stack size/offset = 8 */ +/* 2568 */ NdrFcShort( 0x41e ), /* Type Offset=1054 */ + + /* Return value */ + +/* 2570 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ +/* 2572 */ NdrFcShort( 0x10 ), /* ARM64 Stack size/offset = 16 */ +/* 2574 */ 0x8, /* FC_LONG */ + 0x0, /* 0 */ + + /* Procedure get_proxyMode */ + +/* 2576 */ 0x33, /* FC_AUTO_HANDLE */ + 0x6c, /* Old Flags: object, Oi2 */ +/* 2578 */ NdrFcLong( 0x0 ), /* 0 */ +/* 2582 */ NdrFcShort( 0xf ), /* 15 */ +/* 2584 */ NdrFcShort( 0x18 ), /* ARM64 Stack size/offset = 24 */ +/* 2586 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2588 */ NdrFcShort( 0x8 ), /* 8 */ +/* 2590 */ 0x45, /* Oi2 Flags: srv must size, has return, has ext, */ + 0x2, /* 2 */ +/* 2592 */ 0xe, /* 14 */ + 0x1, /* Ext Flags: new corr desc, */ +/* 2594 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2596 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2598 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2600 */ NdrFcShort( 0x2 ), /* 2 */ +/* 2602 */ 0x2, /* 2 */ + 0x80, /* 128 */ +/* 2604 */ 0x81, /* 129 */ + 0x0, /* 0 */ + + /* Parameter value */ + +/* 2606 */ NdrFcShort( 0x13 ), /* Flags: must size, must free, out, */ +/* 2608 */ NdrFcShort( 0x8 ), /* ARM64 Stack size/offset = 8 */ +/* 2610 */ NdrFcShort( 0x41e ), /* Type Offset=1054 */ + + /* Return value */ + +/* 2612 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ +/* 2614 */ NdrFcShort( 0x10 ), /* ARM64 Stack size/offset = 16 */ +/* 2616 */ 0x8, /* FC_LONG */ + 0x0, /* 0 */ + + /* Procedure get_proxyPacUrl */ + +/* 2618 */ 0x33, /* FC_AUTO_HANDLE */ + 0x6c, /* Old Flags: object, Oi2 */ +/* 2620 */ NdrFcLong( 0x0 ), /* 0 */ +/* 2624 */ NdrFcShort( 0x10 ), /* 16 */ +/* 2626 */ NdrFcShort( 0x18 ), /* ARM64 Stack size/offset = 24 */ +/* 2628 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2630 */ NdrFcShort( 0x8 ), /* 8 */ +/* 2632 */ 0x45, /* Oi2 Flags: srv must size, has return, has ext, */ + 0x2, /* 2 */ +/* 2634 */ 0xe, /* 14 */ + 0x1, /* Ext Flags: new corr desc, */ +/* 2636 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2638 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2640 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2642 */ NdrFcShort( 0x2 ), /* 2 */ +/* 2644 */ 0x2, /* 2 */ + 0x80, /* 128 */ +/* 2646 */ 0x81, /* 129 */ + 0x0, /* 0 */ + + /* Parameter value */ + +/* 2648 */ NdrFcShort( 0x13 ), /* Flags: must size, must free, out, */ +/* 2650 */ NdrFcShort( 0x8 ), /* ARM64 Stack size/offset = 8 */ +/* 2652 */ NdrFcShort( 0x41e ), /* Type Offset=1054 */ + + /* Return value */ + +/* 2654 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ +/* 2656 */ NdrFcShort( 0x10 ), /* ARM64 Stack size/offset = 16 */ +/* 2658 */ 0x8, /* FC_LONG */ + 0x0, /* 0 */ + + /* Procedure get_proxyServer */ + +/* 2660 */ 0x33, /* FC_AUTO_HANDLE */ + 0x6c, /* Old Flags: object, Oi2 */ +/* 2662 */ NdrFcLong( 0x0 ), /* 0 */ +/* 2666 */ NdrFcShort( 0x11 ), /* 17 */ +/* 2668 */ NdrFcShort( 0x18 ), /* ARM64 Stack size/offset = 24 */ +/* 2670 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2672 */ NdrFcShort( 0x8 ), /* 8 */ +/* 2674 */ 0x45, /* Oi2 Flags: srv must size, has return, has ext, */ + 0x2, /* 2 */ +/* 2676 */ 0xe, /* 14 */ + 0x1, /* Ext Flags: new corr desc, */ +/* 2678 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2680 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2682 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2684 */ NdrFcShort( 0x2 ), /* 2 */ +/* 2686 */ 0x2, /* 2 */ + 0x80, /* 128 */ +/* 2688 */ 0x81, /* 129 */ + 0x0, /* 0 */ + + /* Parameter value */ + +/* 2690 */ NdrFcShort( 0x13 ), /* Flags: must size, must free, out, */ +/* 2692 */ NdrFcShort( 0x8 ), /* ARM64 Stack size/offset = 8 */ +/* 2694 */ NdrFcShort( 0x41e ), /* Type Offset=1054 */ + + /* Return value */ + +/* 2696 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ +/* 2698 */ NdrFcShort( 0x10 ), /* ARM64 Stack size/offset = 16 */ +/* 2700 */ 0x8, /* FC_LONG */ + 0x0, /* 0 */ + + /* Procedure get_effectivePolicyForAppInstalls */ + +/* 2702 */ 0x33, /* FC_AUTO_HANDLE */ + 0x6c, /* Old Flags: object, Oi2 */ +/* 2704 */ NdrFcLong( 0x0 ), /* 0 */ +/* 2708 */ NdrFcShort( 0x12 ), /* 18 */ +/* 2710 */ NdrFcShort( 0x20 ), /* ARM64 Stack size/offset = 32 */ +/* 2712 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2714 */ NdrFcShort( 0x8 ), /* 8 */ +/* 2716 */ 0x47, /* Oi2 Flags: srv must size, clt must size, has return, has ext, */ + 0x3, /* 3 */ +/* 2718 */ 0xe, /* 14 */ + 0x5, /* Ext Flags: new corr desc, srv corr check, */ +/* 2720 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2722 */ NdrFcShort( 0x1 ), /* 1 */ +/* 2724 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2726 */ NdrFcShort( 0x3 ), /* 3 */ +/* 2728 */ 0x3, /* 3 */ + 0x80, /* 128 */ +/* 2730 */ 0x81, /* 129 */ + 0x82, /* 130 */ + + /* Parameter app_id */ + +/* 2732 */ NdrFcShort( 0x8b ), /* Flags: must size, must free, in, by val, */ +/* 2734 */ NdrFcShort( 0x8 ), /* ARM64 Stack size/offset = 8 */ +/* 2736 */ NdrFcShort( 0x50 ), /* Type Offset=80 */ + + /* Parameter value */ + +/* 2738 */ NdrFcShort( 0x13 ), /* Flags: must size, must free, out, */ +/* 2740 */ NdrFcShort( 0x10 ), /* ARM64 Stack size/offset = 16 */ +/* 2742 */ NdrFcShort( 0x41e ), /* Type Offset=1054 */ + + /* Return value */ + +/* 2744 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ +/* 2746 */ NdrFcShort( 0x18 ), /* ARM64 Stack size/offset = 24 */ +/* 2748 */ 0x8, /* FC_LONG */ + 0x0, /* 0 */ + + /* Procedure get_effectivePolicyForAppUpdates */ + +/* 2750 */ 0x33, /* FC_AUTO_HANDLE */ + 0x6c, /* Old Flags: object, Oi2 */ +/* 2752 */ NdrFcLong( 0x0 ), /* 0 */ +/* 2756 */ NdrFcShort( 0x13 ), /* 19 */ +/* 2758 */ NdrFcShort( 0x20 ), /* ARM64 Stack size/offset = 32 */ +/* 2760 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2762 */ NdrFcShort( 0x8 ), /* 8 */ +/* 2764 */ 0x47, /* Oi2 Flags: srv must size, clt must size, has return, has ext, */ + 0x3, /* 3 */ +/* 2766 */ 0xe, /* 14 */ + 0x5, /* Ext Flags: new corr desc, srv corr check, */ +/* 2768 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2770 */ NdrFcShort( 0x1 ), /* 1 */ +/* 2772 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2774 */ NdrFcShort( 0x3 ), /* 3 */ +/* 2776 */ 0x3, /* 3 */ + 0x80, /* 128 */ +/* 2778 */ 0x81, /* 129 */ + 0x82, /* 130 */ + + /* Parameter app_id */ + +/* 2780 */ NdrFcShort( 0x8b ), /* Flags: must size, must free, in, by val, */ +/* 2782 */ NdrFcShort( 0x8 ), /* ARM64 Stack size/offset = 8 */ +/* 2784 */ NdrFcShort( 0x50 ), /* Type Offset=80 */ + + /* Parameter value */ + +/* 2786 */ NdrFcShort( 0x13 ), /* Flags: must size, must free, out, */ +/* 2788 */ NdrFcShort( 0x10 ), /* ARM64 Stack size/offset = 16 */ +/* 2790 */ NdrFcShort( 0x41e ), /* Type Offset=1054 */ + + /* Return value */ + +/* 2792 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ +/* 2794 */ NdrFcShort( 0x18 ), /* ARM64 Stack size/offset = 24 */ +/* 2796 */ 0x8, /* FC_LONG */ + 0x0, /* 0 */ + + /* Procedure get_targetVersionPrefix */ + +/* 2798 */ 0x33, /* FC_AUTO_HANDLE */ + 0x6c, /* Old Flags: object, Oi2 */ +/* 2800 */ NdrFcLong( 0x0 ), /* 0 */ +/* 2804 */ NdrFcShort( 0x14 ), /* 20 */ +/* 2806 */ NdrFcShort( 0x20 ), /* ARM64 Stack size/offset = 32 */ +/* 2808 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2810 */ NdrFcShort( 0x8 ), /* 8 */ +/* 2812 */ 0x47, /* Oi2 Flags: srv must size, clt must size, has return, has ext, */ + 0x3, /* 3 */ +/* 2814 */ 0xe, /* 14 */ + 0x5, /* Ext Flags: new corr desc, srv corr check, */ +/* 2816 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2818 */ NdrFcShort( 0x1 ), /* 1 */ +/* 2820 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2822 */ NdrFcShort( 0x3 ), /* 3 */ +/* 2824 */ 0x3, /* 3 */ + 0x80, /* 128 */ +/* 2826 */ 0x81, /* 129 */ + 0x82, /* 130 */ + + /* Parameter app_id */ + +/* 2828 */ NdrFcShort( 0x8b ), /* Flags: must size, must free, in, by val, */ +/* 2830 */ NdrFcShort( 0x8 ), /* ARM64 Stack size/offset = 8 */ +/* 2832 */ NdrFcShort( 0x50 ), /* Type Offset=80 */ + + /* Parameter value */ + +/* 2834 */ NdrFcShort( 0x13 ), /* Flags: must size, must free, out, */ +/* 2836 */ NdrFcShort( 0x10 ), /* ARM64 Stack size/offset = 16 */ +/* 2838 */ NdrFcShort( 0x41e ), /* Type Offset=1054 */ + + /* Return value */ + +/* 2840 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ +/* 2842 */ NdrFcShort( 0x18 ), /* ARM64 Stack size/offset = 24 */ +/* 2844 */ 0x8, /* FC_LONG */ + 0x0, /* 0 */ + + /* Procedure get_isRollbackToTargetVersionAllowed */ + +/* 2846 */ 0x33, /* FC_AUTO_HANDLE */ + 0x6c, /* Old Flags: object, Oi2 */ +/* 2848 */ NdrFcLong( 0x0 ), /* 0 */ +/* 2852 */ NdrFcShort( 0x15 ), /* 21 */ +/* 2854 */ NdrFcShort( 0x20 ), /* ARM64 Stack size/offset = 32 */ +/* 2856 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2858 */ NdrFcShort( 0x8 ), /* 8 */ +/* 2860 */ 0x47, /* Oi2 Flags: srv must size, clt must size, has return, has ext, */ + 0x3, /* 3 */ +/* 2862 */ 0xe, /* 14 */ + 0x5, /* Ext Flags: new corr desc, srv corr check, */ +/* 2864 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2866 */ NdrFcShort( 0x1 ), /* 1 */ +/* 2868 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2870 */ NdrFcShort( 0x3 ), /* 3 */ +/* 2872 */ 0x3, /* 3 */ + 0x80, /* 128 */ +/* 2874 */ 0x81, /* 129 */ + 0x82, /* 130 */ + + /* Parameter app_id */ + +/* 2876 */ NdrFcShort( 0x8b ), /* Flags: must size, must free, in, by val, */ +/* 2878 */ NdrFcShort( 0x8 ), /* ARM64 Stack size/offset = 8 */ +/* 2880 */ NdrFcShort( 0x50 ), /* Type Offset=80 */ + + /* Parameter value */ + +/* 2882 */ NdrFcShort( 0x13 ), /* Flags: must size, must free, out, */ +/* 2884 */ NdrFcShort( 0x10 ), /* ARM64 Stack size/offset = 16 */ +/* 2886 */ NdrFcShort( 0x41e ), /* Type Offset=1054 */ + + /* Return value */ + +/* 2888 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ +/* 2890 */ NdrFcShort( 0x18 ), /* ARM64 Stack size/offset = 24 */ +/* 2892 */ 0x8, /* FC_LONG */ + 0x0, /* 0 */ + + /* Procedure get_targetChannel */ + +/* 2894 */ 0x33, /* FC_AUTO_HANDLE */ + 0x6c, /* Old Flags: object, Oi2 */ +/* 2896 */ NdrFcLong( 0x0 ), /* 0 */ +/* 2900 */ NdrFcShort( 0x16 ), /* 22 */ +/* 2902 */ NdrFcShort( 0x20 ), /* ARM64 Stack size/offset = 32 */ +/* 2904 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2906 */ NdrFcShort( 0x8 ), /* 8 */ +/* 2908 */ 0x47, /* Oi2 Flags: srv must size, clt must size, has return, has ext, */ + 0x3, /* 3 */ +/* 2910 */ 0xe, /* 14 */ + 0x5, /* Ext Flags: new corr desc, srv corr check, */ +/* 2912 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2914 */ NdrFcShort( 0x1 ), /* 1 */ +/* 2916 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2918 */ NdrFcShort( 0x3 ), /* 3 */ +/* 2920 */ 0x3, /* 3 */ + 0x80, /* 128 */ +/* 2922 */ 0x81, /* 129 */ + 0x82, /* 130 */ + + /* Parameter app_id */ + +/* 2924 */ NdrFcShort( 0x8b ), /* Flags: must size, must free, in, by val, */ +/* 2926 */ NdrFcShort( 0x8 ), /* ARM64 Stack size/offset = 8 */ +/* 2928 */ NdrFcShort( 0x50 ), /* Type Offset=80 */ + + /* Parameter value */ + +/* 2930 */ NdrFcShort( 0x13 ), /* Flags: must size, must free, out, */ +/* 2932 */ NdrFcShort( 0x10 ), /* ARM64 Stack size/offset = 16 */ +/* 2934 */ NdrFcShort( 0x41e ), /* Type Offset=1054 */ + + /* Return value */ + +/* 2936 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ +/* 2938 */ NdrFcShort( 0x18 ), /* ARM64 Stack size/offset = 24 */ +/* 2940 */ 0x8, /* FC_LONG */ + 0x0, /* 0 */ + + /* Procedure get_forceInstallApps */ + +/* 2942 */ 0x33, /* FC_AUTO_HANDLE */ + 0x6c, /* Old Flags: object, Oi2 */ +/* 2944 */ NdrFcLong( 0x0 ), /* 0 */ +/* 2948 */ NdrFcShort( 0x17 ), /* 23 */ +/* 2950 */ NdrFcShort( 0x20 ), /* ARM64 Stack size/offset = 32 */ +/* 2952 */ NdrFcShort( 0x6 ), /* 6 */ +/* 2954 */ NdrFcShort( 0x8 ), /* 8 */ +/* 2956 */ 0x45, /* Oi2 Flags: srv must size, has return, has ext, */ + 0x3, /* 3 */ +/* 2958 */ 0xe, /* 14 */ + 0x1, /* Ext Flags: new corr desc, */ +/* 2960 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2962 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2964 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2966 */ NdrFcShort( 0x3 ), /* 3 */ +/* 2968 */ 0x3, /* 3 */ + 0x80, /* 128 */ +/* 2970 */ 0x81, /* 129 */ + 0x82, /* 130 */ + + /* Parameter is_machine */ + +/* 2972 */ NdrFcShort( 0x48 ), /* Flags: in, base type, */ +/* 2974 */ NdrFcShort( 0x8 ), /* ARM64 Stack size/offset = 8 */ +/* 2976 */ 0x6, /* FC_SHORT */ + 0x0, /* 0 */ + + /* Parameter value */ + +/* 2978 */ NdrFcShort( 0x13 ), /* Flags: must size, must free, out, */ +/* 2980 */ NdrFcShort( 0x10 ), /* ARM64 Stack size/offset = 16 */ +/* 2982 */ NdrFcShort( 0x41e ), /* Type Offset=1054 */ + + /* Return value */ + +/* 2984 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ +/* 2986 */ NdrFcShort( 0x18 ), /* ARM64 Stack size/offset = 24 */ +/* 2988 */ 0x8, /* FC_LONG */ + 0x0, /* 0 */ + + /* Procedure LaunchCmdLine */ + +/* 2990 */ 0x33, /* FC_AUTO_HANDLE */ + 0x6c, /* Old Flags: object, Oi2 */ +/* 2992 */ NdrFcLong( 0x0 ), /* 0 */ +/* 2996 */ NdrFcShort( 0x3 ), /* 3 */ +/* 2998 */ NdrFcShort( 0x18 ), /* ARM64 Stack size/offset = 24 */ +/* 3000 */ NdrFcShort( 0x0 ), /* 0 */ +/* 3002 */ NdrFcShort( 0x8 ), /* 8 */ +/* 3004 */ 0x46, /* Oi2 Flags: clt must size, has return, has ext, */ + 0x2, /* 2 */ +/* 3006 */ 0xe, /* 14 */ + 0x1, /* Ext Flags: new corr desc, */ +/* 3008 */ NdrFcShort( 0x0 ), /* 0 */ +/* 3010 */ NdrFcShort( 0x0 ), /* 0 */ +/* 3012 */ NdrFcShort( 0x0 ), /* 0 */ +/* 3014 */ NdrFcShort( 0x2 ), /* 2 */ +/* 3016 */ 0x2, /* 2 */ + 0x80, /* 128 */ +/* 3018 */ 0x81, /* 129 */ + 0x0, /* 0 */ + + /* Parameter cmd_line */ + +/* 3020 */ NdrFcShort( 0x10b ), /* Flags: must size, must free, in, simple ref, */ +/* 3022 */ NdrFcShort( 0x8 ), /* ARM64 Stack size/offset = 8 */ +/* 3024 */ NdrFcShort( 0x43a ), /* Type Offset=1082 */ + + /* Return value */ + +/* 3026 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ +/* 3028 */ NdrFcShort( 0x10 ), /* ARM64 Stack size/offset = 16 */ +/* 3030 */ 0x8, /* FC_LONG */ + 0x0, /* 0 */ + + /* Procedure LaunchBrowser */ + +/* 3032 */ 0x33, /* FC_AUTO_HANDLE */ + 0x6c, /* Old Flags: object, Oi2 */ +/* 3034 */ NdrFcLong( 0x0 ), /* 0 */ +/* 3038 */ NdrFcShort( 0x4 ), /* 4 */ +/* 3040 */ NdrFcShort( 0x20 ), /* ARM64 Stack size/offset = 32 */ +/* 3042 */ NdrFcShort( 0x8 ), /* 8 */ +/* 3044 */ NdrFcShort( 0x8 ), /* 8 */ +/* 3046 */ 0x46, /* Oi2 Flags: clt must size, has return, has ext, */ + 0x3, /* 3 */ +/* 3048 */ 0xe, /* 14 */ + 0x1, /* Ext Flags: new corr desc, */ +/* 3050 */ NdrFcShort( 0x0 ), /* 0 */ +/* 3052 */ NdrFcShort( 0x0 ), /* 0 */ +/* 3054 */ NdrFcShort( 0x0 ), /* 0 */ +/* 3056 */ NdrFcShort( 0x3 ), /* 3 */ +/* 3058 */ 0x3, /* 3 */ + 0x80, /* 128 */ +/* 3060 */ 0x81, /* 129 */ 0x82, /* 130 */ /* Parameter browser_type */ -/* 2306 */ NdrFcShort( 0x48 ), /* Flags: in, base type, */ -/* 2308 */ NdrFcShort( 0x8 ), /* ARM64 Stack size/offset = 8 */ -/* 2310 */ 0x8, /* FC_LONG */ +/* 3062 */ NdrFcShort( 0x48 ), /* Flags: in, base type, */ +/* 3064 */ NdrFcShort( 0x8 ), /* ARM64 Stack size/offset = 8 */ +/* 3066 */ 0x8, /* FC_LONG */ 0x0, /* 0 */ /* Parameter url */ -/* 2312 */ NdrFcShort( 0x10b ), /* Flags: must size, must free, in, simple ref, */ -/* 2314 */ NdrFcShort( 0x10 ), /* ARM64 Stack size/offset = 16 */ -/* 2316 */ NdrFcShort( 0x41c ), /* Type Offset=1052 */ +/* 3068 */ NdrFcShort( 0x10b ), /* Flags: must size, must free, in, simple ref, */ +/* 3070 */ NdrFcShort( 0x10 ), /* ARM64 Stack size/offset = 16 */ +/* 3072 */ NdrFcShort( 0x43a ), /* Type Offset=1082 */ /* Return value */ -/* 2318 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ -/* 2320 */ NdrFcShort( 0x18 ), /* ARM64 Stack size/offset = 24 */ -/* 2322 */ 0x8, /* FC_LONG */ +/* 3074 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ +/* 3076 */ NdrFcShort( 0x18 ), /* ARM64 Stack size/offset = 24 */ +/* 3078 */ 0x8, /* FC_LONG */ 0x0, /* 0 */ /* Procedure LaunchCmdElevated */ -/* 2324 */ 0x33, /* FC_AUTO_HANDLE */ +/* 3080 */ 0x33, /* FC_AUTO_HANDLE */ 0x6c, /* Old Flags: object, Oi2 */ -/* 2326 */ NdrFcLong( 0x0 ), /* 0 */ -/* 2330 */ NdrFcShort( 0x5 ), /* 5 */ -/* 2332 */ NdrFcShort( 0x30 ), /* ARM64 Stack size/offset = 48 */ -/* 2334 */ NdrFcShort( 0x8 ), /* 8 */ -/* 2336 */ NdrFcShort( 0x24 ), /* 36 */ -/* 2338 */ 0x46, /* Oi2 Flags: clt must size, has return, has ext, */ +/* 3082 */ NdrFcLong( 0x0 ), /* 0 */ +/* 3086 */ NdrFcShort( 0x5 ), /* 5 */ +/* 3088 */ NdrFcShort( 0x30 ), /* ARM64 Stack size/offset = 48 */ +/* 3090 */ NdrFcShort( 0x8 ), /* 8 */ +/* 3092 */ NdrFcShort( 0x24 ), /* 36 */ +/* 3094 */ 0x46, /* Oi2 Flags: clt must size, has return, has ext, */ 0x5, /* 5 */ -/* 2340 */ 0x10, /* 16 */ +/* 3096 */ 0x10, /* 16 */ 0x1, /* Ext Flags: new corr desc, */ -/* 2342 */ NdrFcShort( 0x0 ), /* 0 */ -/* 2344 */ NdrFcShort( 0x0 ), /* 0 */ -/* 2346 */ NdrFcShort( 0x0 ), /* 0 */ -/* 2348 */ NdrFcShort( 0x5 ), /* 5 */ -/* 2350 */ 0x5, /* 5 */ +/* 3098 */ NdrFcShort( 0x0 ), /* 0 */ +/* 3100 */ NdrFcShort( 0x0 ), /* 0 */ +/* 3102 */ NdrFcShort( 0x0 ), /* 0 */ +/* 3104 */ NdrFcShort( 0x5 ), /* 5 */ +/* 3106 */ 0x5, /* 5 */ 0x80, /* 128 */ -/* 2352 */ 0x81, /* 129 */ +/* 3108 */ 0x81, /* 129 */ 0x82, /* 130 */ -/* 2354 */ 0x83, /* 131 */ +/* 3110 */ 0x83, /* 131 */ 0x84, /* 132 */ /* Parameter app_guid */ -/* 2356 */ NdrFcShort( 0x10b ), /* Flags: must size, must free, in, simple ref, */ -/* 2358 */ NdrFcShort( 0x8 ), /* ARM64 Stack size/offset = 8 */ -/* 2360 */ NdrFcShort( 0x41c ), /* Type Offset=1052 */ +/* 3112 */ NdrFcShort( 0x10b ), /* Flags: must size, must free, in, simple ref, */ +/* 3114 */ NdrFcShort( 0x8 ), /* ARM64 Stack size/offset = 8 */ +/* 3116 */ NdrFcShort( 0x43a ), /* Type Offset=1082 */ /* Parameter cmd_id */ -/* 2362 */ NdrFcShort( 0x10b ), /* Flags: must size, must free, in, simple ref, */ -/* 2364 */ NdrFcShort( 0x10 ), /* ARM64 Stack size/offset = 16 */ -/* 2366 */ NdrFcShort( 0x41c ), /* Type Offset=1052 */ +/* 3118 */ NdrFcShort( 0x10b ), /* Flags: must size, must free, in, simple ref, */ +/* 3120 */ NdrFcShort( 0x10 ), /* ARM64 Stack size/offset = 16 */ +/* 3122 */ NdrFcShort( 0x43a ), /* Type Offset=1082 */ /* Parameter caller_proc_id */ -/* 2368 */ NdrFcShort( 0x48 ), /* Flags: in, base type, */ -/* 2370 */ NdrFcShort( 0x18 ), /* ARM64 Stack size/offset = 24 */ -/* 2372 */ 0x8, /* FC_LONG */ +/* 3124 */ NdrFcShort( 0x48 ), /* Flags: in, base type, */ +/* 3126 */ NdrFcShort( 0x18 ), /* ARM64 Stack size/offset = 24 */ +/* 3128 */ 0x8, /* FC_LONG */ 0x0, /* 0 */ /* Parameter proc_handle */ -/* 2374 */ NdrFcShort( 0x2150 ), /* Flags: out, base type, simple ref, srv alloc size=8 */ -/* 2376 */ NdrFcShort( 0x20 ), /* ARM64 Stack size/offset = 32 */ -/* 2378 */ 0xb9, /* FC_UINT3264 */ +/* 3130 */ NdrFcShort( 0x2150 ), /* Flags: out, base type, simple ref, srv alloc size=8 */ +/* 3132 */ NdrFcShort( 0x20 ), /* ARM64 Stack size/offset = 32 */ +/* 3134 */ 0xb9, /* FC_UINT3264 */ 0x0, /* 0 */ /* Return value */ -/* 2380 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ -/* 2382 */ NdrFcShort( 0x28 ), /* ARM64 Stack size/offset = 40 */ -/* 2384 */ 0x8, /* FC_LONG */ +/* 3136 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ +/* 3138 */ NdrFcShort( 0x28 ), /* ARM64 Stack size/offset = 40 */ +/* 3140 */ 0x8, /* FC_LONG */ 0x0, /* 0 */ /* Procedure LaunchCmdLineEx */ -/* 2386 */ 0x33, /* FC_AUTO_HANDLE */ +/* 3142 */ 0x33, /* FC_AUTO_HANDLE */ 0x6c, /* Old Flags: object, Oi2 */ -/* 2388 */ NdrFcLong( 0x0 ), /* 0 */ -/* 2392 */ NdrFcShort( 0x6 ), /* 6 */ -/* 2394 */ NdrFcShort( 0x30 ), /* ARM64 Stack size/offset = 48 */ -/* 2396 */ NdrFcShort( 0x0 ), /* 0 */ -/* 2398 */ NdrFcShort( 0x5c ), /* 92 */ -/* 2400 */ 0x46, /* Oi2 Flags: clt must size, has return, has ext, */ +/* 3144 */ NdrFcLong( 0x0 ), /* 0 */ +/* 3148 */ NdrFcShort( 0x6 ), /* 6 */ +/* 3150 */ NdrFcShort( 0x30 ), /* ARM64 Stack size/offset = 48 */ +/* 3152 */ NdrFcShort( 0x0 ), /* 0 */ +/* 3154 */ NdrFcShort( 0x5c ), /* 92 */ +/* 3156 */ 0x46, /* Oi2 Flags: clt must size, has return, has ext, */ 0x5, /* 5 */ -/* 2402 */ 0x10, /* 16 */ +/* 3158 */ 0x10, /* 16 */ 0x1, /* Ext Flags: new corr desc, */ -/* 2404 */ NdrFcShort( 0x0 ), /* 0 */ -/* 2406 */ NdrFcShort( 0x0 ), /* 0 */ -/* 2408 */ NdrFcShort( 0x0 ), /* 0 */ -/* 2410 */ NdrFcShort( 0x5 ), /* 5 */ -/* 2412 */ 0x5, /* 5 */ +/* 3160 */ NdrFcShort( 0x0 ), /* 0 */ +/* 3162 */ NdrFcShort( 0x0 ), /* 0 */ +/* 3164 */ NdrFcShort( 0x0 ), /* 0 */ +/* 3166 */ NdrFcShort( 0x5 ), /* 5 */ +/* 3168 */ 0x5, /* 5 */ 0x80, /* 128 */ -/* 2414 */ 0x81, /* 129 */ +/* 3170 */ 0x81, /* 129 */ 0x82, /* 130 */ -/* 2416 */ 0x83, /* 131 */ +/* 3172 */ 0x83, /* 131 */ 0x84, /* 132 */ /* Parameter cmd_line */ -/* 2418 */ NdrFcShort( 0x10b ), /* Flags: must size, must free, in, simple ref, */ -/* 2420 */ NdrFcShort( 0x8 ), /* ARM64 Stack size/offset = 8 */ -/* 2422 */ NdrFcShort( 0x41c ), /* Type Offset=1052 */ +/* 3174 */ NdrFcShort( 0x10b ), /* Flags: must size, must free, in, simple ref, */ +/* 3176 */ NdrFcShort( 0x8 ), /* ARM64 Stack size/offset = 8 */ +/* 3178 */ NdrFcShort( 0x43a ), /* Type Offset=1082 */ /* Parameter server_proc_id */ -/* 2424 */ NdrFcShort( 0x2150 ), /* Flags: out, base type, simple ref, srv alloc size=8 */ -/* 2426 */ NdrFcShort( 0x10 ), /* ARM64 Stack size/offset = 16 */ -/* 2428 */ 0x8, /* FC_LONG */ +/* 3180 */ NdrFcShort( 0x2150 ), /* Flags: out, base type, simple ref, srv alloc size=8 */ +/* 3182 */ NdrFcShort( 0x10 ), /* ARM64 Stack size/offset = 16 */ +/* 3184 */ 0x8, /* FC_LONG */ 0x0, /* 0 */ /* Parameter proc_handle */ -/* 2430 */ NdrFcShort( 0x2150 ), /* Flags: out, base type, simple ref, srv alloc size=8 */ -/* 2432 */ NdrFcShort( 0x18 ), /* ARM64 Stack size/offset = 24 */ -/* 2434 */ 0xb9, /* FC_UINT3264 */ +/* 3186 */ NdrFcShort( 0x2150 ), /* Flags: out, base type, simple ref, srv alloc size=8 */ +/* 3188 */ NdrFcShort( 0x18 ), /* ARM64 Stack size/offset = 24 */ +/* 3190 */ 0xb9, /* FC_UINT3264 */ 0x0, /* 0 */ /* Parameter stdout_handle */ -/* 2436 */ NdrFcShort( 0x2150 ), /* Flags: out, base type, simple ref, srv alloc size=8 */ -/* 2438 */ NdrFcShort( 0x20 ), /* ARM64 Stack size/offset = 32 */ -/* 2440 */ 0xb9, /* FC_UINT3264 */ +/* 3192 */ NdrFcShort( 0x2150 ), /* Flags: out, base type, simple ref, srv alloc size=8 */ +/* 3194 */ NdrFcShort( 0x20 ), /* ARM64 Stack size/offset = 32 */ +/* 3196 */ 0xb9, /* FC_UINT3264 */ 0x0, /* 0 */ /* Return value */ -/* 2442 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ -/* 2444 */ NdrFcShort( 0x28 ), /* ARM64 Stack size/offset = 40 */ -/* 2446 */ 0x8, /* FC_LONG */ +/* 3198 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ +/* 3200 */ NdrFcShort( 0x28 ), /* ARM64 Stack size/offset = 40 */ +/* 3202 */ 0x8, /* FC_LONG */ 0x0, /* 0 */ 0x0 @@ -3021,13 +3725,38 @@ /* 1046 */ NdrFcShort( 0x0 ), /* 0 */ /* 1048 */ NdrFcShort( 0xfff4 ), /* Offset= -12 (1036) */ /* 1050 */ - 0x11, 0x8, /* FC_RP [simple_pointer] */ -/* 1052 */ - 0x25, /* FC_C_WSTRING */ + 0x11, 0xc, /* FC_RP [alloced_on_stack] [simple_pointer] */ +/* 1052 */ 0xc, /* FC_DOUBLE */ 0x5c, /* FC_PAD */ /* 1054 */ + 0x11, 0x10, /* FC_RP [pointer_deref] */ +/* 1056 */ NdrFcShort( 0x2 ), /* Offset= 2 (1058) */ +/* 1058 */ + 0x2f, /* FC_IP */ + 0x5a, /* FC_CONSTANT_IID */ +/* 1060 */ NdrFcLong( 0x27634814 ), /* 660817940 */ +/* 1064 */ NdrFcShort( 0x8e41 ), /* -29119 */ +/* 1066 */ NdrFcShort( 0x4c35 ), /* 19509 */ +/* 1068 */ 0x85, /* 133 */ + 0x77, /* 119 */ +/* 1070 */ 0x98, /* 152 */ + 0x1, /* 1 */ +/* 1072 */ 0x34, /* 52 */ + 0xa9, /* 169 */ +/* 1074 */ 0x65, /* 101 */ + 0x44, /* 68 */ +/* 1076 */ + 0x11, 0x8, /* FC_RP [simple_pointer] */ +/* 1078 */ 0x6, /* FC_SHORT */ + 0x5c, /* FC_PAD */ +/* 1080 */ + 0x11, 0x8, /* FC_RP [simple_pointer] */ +/* 1082 */ + 0x25, /* FC_C_WSTRING */ + 0x5c, /* FC_PAD */ +/* 1084 */ 0x11, 0xc, /* FC_RP [alloced_on_stack] [simple_pointer] */ -/* 1056 */ 0xb9, /* FC_UINT3264 */ +/* 1086 */ 0xb9, /* FC_UINT3264 */ 0x5c, /* FC_PAD */ 0x0 @@ -3637,15 +4366,324 @@ }; +/* Object interface: IPolicyStatusValue, ver. 0.0, + GUID={0x27634814,0x8E41,0x4C35,{0x85,0x77,0x98,0x01,0x34,0xA9,0x65,0x44}} */ + +#pragma code_seg(".orpc") +static const unsigned short IPolicyStatusValue_FormatStringOffsetTable[] = + { + (unsigned short) -1, + (unsigned short) -1, + (unsigned short) -1, + (unsigned short) -1, + 1396, + 42, + 2234, + 894, + 2276 + }; + +static const MIDL_STUBLESS_PROXY_INFO IPolicyStatusValue_ProxyInfo = + { + &Object_StubDesc, + updater_legacy_idl__MIDL_ProcFormatString.Format, + &IPolicyStatusValue_FormatStringOffsetTable[-3], + 0, + 0, + 0 + }; + + +static const MIDL_SERVER_INFO IPolicyStatusValue_ServerInfo = + { + &Object_StubDesc, + 0, + updater_legacy_idl__MIDL_ProcFormatString.Format, + &IPolicyStatusValue_FormatStringOffsetTable[-3], + 0, + 0, + 0, + 0}; +CINTERFACE_PROXY_VTABLE(12) _IPolicyStatusValueProxyVtbl = +{ + &IPolicyStatusValue_ProxyInfo, + &IID_IPolicyStatusValue, + IUnknown_QueryInterface_Proxy, + IUnknown_AddRef_Proxy, + IUnknown_Release_Proxy , + 0 /* IDispatch::GetTypeInfoCount */ , + 0 /* IDispatch::GetTypeInfo */ , + 0 /* IDispatch::GetIDsOfNames */ , + 0 /* IDispatch_Invoke_Proxy */ , + (void *) (INT_PTR) -1 /* IPolicyStatusValue::get_source */ , + (void *) (INT_PTR) -1 /* IPolicyStatusValue::get_value */ , + (void *) (INT_PTR) -1 /* IPolicyStatusValue::get_hasConflict */ , + (void *) (INT_PTR) -1 /* IPolicyStatusValue::get_conflictSource */ , + (void *) (INT_PTR) -1 /* IPolicyStatusValue::get_conflictValue */ +}; + + +static const PRPC_STUB_FUNCTION IPolicyStatusValue_table[] = +{ + STUB_FORWARDING_FUNCTION, + STUB_FORWARDING_FUNCTION, + STUB_FORWARDING_FUNCTION, + STUB_FORWARDING_FUNCTION, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2 +}; + +CInterfaceStubVtbl _IPolicyStatusValueStubVtbl = +{ + &IID_IPolicyStatusValue, + &IPolicyStatusValue_ServerInfo, + 12, + &IPolicyStatusValue_table[-3], + CStdStubBuffer_DELEGATING_METHODS +}; + + +/* Object interface: IPolicyStatus2, ver. 0.0, + GUID={0x34527502,0xD3DB,0x4205,{0xA6,0x9B,0x78,0x9B,0x27,0xEE,0x04,0x14}} */ + +#pragma code_seg(".orpc") +static const unsigned short IPolicyStatus2_FormatStringOffsetTable[] = + { + (unsigned short) -1, + (unsigned short) -1, + (unsigned short) -1, + (unsigned short) -1, + 1396, + 2318, + 860, + 2360, + 2402, + 2450, + 2492, + 2534, + 2576, + 2618, + 2660, + 2702, + 2750, + 2798, + 2846, + 2894 + }; + +static const MIDL_STUBLESS_PROXY_INFO IPolicyStatus2_ProxyInfo = + { + &Object_StubDesc, + updater_legacy_idl__MIDL_ProcFormatString.Format, + &IPolicyStatus2_FormatStringOffsetTable[-3], + 0, + 0, + 0 + }; + + +static const MIDL_SERVER_INFO IPolicyStatus2_ServerInfo = + { + &Object_StubDesc, + 0, + updater_legacy_idl__MIDL_ProcFormatString.Format, + &IPolicyStatus2_FormatStringOffsetTable[-3], + 0, + 0, + 0, + 0}; +CINTERFACE_PROXY_VTABLE(23) _IPolicyStatus2ProxyVtbl = +{ + &IPolicyStatus2_ProxyInfo, + &IID_IPolicyStatus2, + IUnknown_QueryInterface_Proxy, + IUnknown_AddRef_Proxy, + IUnknown_Release_Proxy , + 0 /* IDispatch::GetTypeInfoCount */ , + 0 /* IDispatch::GetTypeInfo */ , + 0 /* IDispatch::GetIDsOfNames */ , + 0 /* IDispatch_Invoke_Proxy */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_updaterVersion */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_lastCheckedTime */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::refreshPolicies */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_lastCheckPeriodMinutes */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_updatesSuppressedTimes */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_downloadPreferenceGroupPolicy */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_packageCacheSizeLimitMBytes */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_packageCacheExpirationTimeDays */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_proxyMode */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_proxyPacUrl */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_proxyServer */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_effectivePolicyForAppInstalls */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_effectivePolicyForAppUpdates */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_targetVersionPrefix */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_isRollbackToTargetVersionAllowed */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_targetChannel */ +}; + + +static const PRPC_STUB_FUNCTION IPolicyStatus2_table[] = +{ + STUB_FORWARDING_FUNCTION, + STUB_FORWARDING_FUNCTION, + STUB_FORWARDING_FUNCTION, + STUB_FORWARDING_FUNCTION, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2 +}; + +CInterfaceStubVtbl _IPolicyStatus2StubVtbl = +{ + &IID_IPolicyStatus2, + &IPolicyStatus2_ServerInfo, + 23, + &IPolicyStatus2_table[-3], + CStdStubBuffer_DELEGATING_METHODS +}; + + +/* Object interface: IPolicyStatus3, ver. 0.0, + GUID={0x05A30352,0xEB25,0x45B6,{0x84,0x49,0xBC,0xA7,0xB0,0x54,0x2C,0xE5}} */ + +#pragma code_seg(".orpc") +static const unsigned short IPolicyStatus3_FormatStringOffsetTable[] = + { + (unsigned short) -1, + (unsigned short) -1, + (unsigned short) -1, + (unsigned short) -1, + 1396, + 2318, + 860, + 2360, + 2402, + 2450, + 2492, + 2534, + 2576, + 2618, + 2660, + 2702, + 2750, + 2798, + 2846, + 2894, + 2942 + }; + +static const MIDL_STUBLESS_PROXY_INFO IPolicyStatus3_ProxyInfo = + { + &Object_StubDesc, + updater_legacy_idl__MIDL_ProcFormatString.Format, + &IPolicyStatus3_FormatStringOffsetTable[-3], + 0, + 0, + 0 + }; + + +static const MIDL_SERVER_INFO IPolicyStatus3_ServerInfo = + { + &Object_StubDesc, + 0, + updater_legacy_idl__MIDL_ProcFormatString.Format, + &IPolicyStatus3_FormatStringOffsetTable[-3], + 0, + 0, + 0, + 0}; +CINTERFACE_PROXY_VTABLE(24) _IPolicyStatus3ProxyVtbl = +{ + &IPolicyStatus3_ProxyInfo, + &IID_IPolicyStatus3, + IUnknown_QueryInterface_Proxy, + IUnknown_AddRef_Proxy, + IUnknown_Release_Proxy , + 0 /* IDispatch::GetTypeInfoCount */ , + 0 /* IDispatch::GetTypeInfo */ , + 0 /* IDispatch::GetIDsOfNames */ , + 0 /* IDispatch_Invoke_Proxy */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_updaterVersion */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_lastCheckedTime */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::refreshPolicies */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_lastCheckPeriodMinutes */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_updatesSuppressedTimes */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_downloadPreferenceGroupPolicy */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_packageCacheSizeLimitMBytes */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_packageCacheExpirationTimeDays */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_proxyMode */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_proxyPacUrl */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_proxyServer */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_effectivePolicyForAppInstalls */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_effectivePolicyForAppUpdates */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_targetVersionPrefix */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_isRollbackToTargetVersionAllowed */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_targetChannel */ , + (void *) (INT_PTR) -1 /* IPolicyStatus3::get_forceInstallApps */ +}; + + +static const PRPC_STUB_FUNCTION IPolicyStatus3_table[] = +{ + STUB_FORWARDING_FUNCTION, + STUB_FORWARDING_FUNCTION, + STUB_FORWARDING_FUNCTION, + STUB_FORWARDING_FUNCTION, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2 +}; + +CInterfaceStubVtbl _IPolicyStatus3StubVtbl = +{ + &IID_IPolicyStatus3, + &IPolicyStatus3_ServerInfo, + 24, + &IPolicyStatus3_table[-3], + CStdStubBuffer_DELEGATING_METHODS +}; + + /* Object interface: IProcessLauncher, ver. 0.0, GUID={0x128C2DA6,0x2BC0,0x44c0,{0xB3,0xF6,0x4E,0xC2,0x2E,0x64,0x79,0x64}} */ #pragma code_seg(".orpc") static const unsigned short IProcessLauncher_FormatStringOffsetTable[] = { - 2234, - 2276, - 2324 + 2990, + 3032, + 3080 }; static const MIDL_STUBLESS_PROXY_INFO IProcessLauncher_ProxyInfo = @@ -3697,10 +4735,10 @@ #pragma code_seg(".orpc") static const unsigned short IProcessLauncher2_FormatStringOffsetTable[] = { - 2234, - 2276, - 2324, - 2386 + 2990, + 3032, + 3080, + 3142 }; static const MIDL_STUBLESS_PROXY_INFO IProcessLauncher2_ProxyInfo = @@ -3772,7 +4810,10 @@ const CInterfaceProxyVtbl * const _updater_legacy_idl_ProxyVtblList[] = { + ( CInterfaceProxyVtbl *) &_IPolicyStatus2ProxyVtbl, ( CInterfaceProxyVtbl *) &_IAppCommandWebProxyVtbl, + ( CInterfaceProxyVtbl *) &_IPolicyStatusValueProxyVtbl, + ( CInterfaceProxyVtbl *) &_IPolicyStatus3ProxyVtbl, ( CInterfaceProxyVtbl *) &_IAppBundleWebProxyVtbl, ( CInterfaceProxyVtbl *) &_IProcessLauncher2ProxyVtbl, ( CInterfaceProxyVtbl *) &_IAppWebProxyVtbl, @@ -3785,7 +4826,10 @@ const CInterfaceStubVtbl * const _updater_legacy_idl_StubVtblList[] = { + ( CInterfaceStubVtbl *) &_IPolicyStatus2StubVtbl, ( CInterfaceStubVtbl *) &_IAppCommandWebStubVtbl, + ( CInterfaceStubVtbl *) &_IPolicyStatusValueStubVtbl, + ( CInterfaceStubVtbl *) &_IPolicyStatus3StubVtbl, ( CInterfaceStubVtbl *) &_IAppBundleWebStubVtbl, ( CInterfaceStubVtbl *) &_IProcessLauncher2StubVtbl, ( CInterfaceStubVtbl *) &_IAppWebStubVtbl, @@ -3798,7 +4842,10 @@ PCInterfaceName const _updater_legacy_idl_InterfaceNamesList[] = { + "IPolicyStatus2", "IAppCommandWeb", + "IPolicyStatusValue", + "IPolicyStatus3", "IAppBundleWeb", "IProcessLauncher2", "IAppWeb", @@ -3813,6 +4860,9 @@ { &IID_IDispatch, &IID_IDispatch, + &IID_IDispatch, + &IID_IDispatch, + &IID_IDispatch, 0, &IID_IDispatch, &IID_IDispatch, @@ -3829,10 +4879,11 @@ { IID_BS_LOOKUP_SETUP - IID_BS_LOOKUP_INITIAL_TEST( _updater_legacy_idl, 8, 4 ) + IID_BS_LOOKUP_INITIAL_TEST( _updater_legacy_idl, 11, 8 ) + IID_BS_LOOKUP_NEXT_TEST( _updater_legacy_idl, 4 ) IID_BS_LOOKUP_NEXT_TEST( _updater_legacy_idl, 2 ) IID_BS_LOOKUP_NEXT_TEST( _updater_legacy_idl, 1 ) - IID_BS_LOOKUP_RETURN_RESULT( _updater_legacy_idl, 8, *pIndex ) + IID_BS_LOOKUP_RETURN_RESULT( _updater_legacy_idl, 11, *pIndex ) } @@ -3843,7 +4894,7 @@ (const PCInterfaceName * ) & _updater_legacy_idl_InterfaceNamesList, (const IID ** ) & _updater_legacy_idl_BaseIIDList, & _updater_legacy_idl_IID_Lookup, - 8, + 11, 2, 0, /* table of [async_uuid] interfaces */ 0, /* Filler1 */
diff --git a/third_party/win_build_output/midl/chrome/updater/app/server/win/x64/updater_legacy_idl.h b/third_party/win_build_output/midl/chrome/updater/app/server/win/x64/updater_legacy_idl.h index 58f5f2c..463b15e 100644 --- a/third_party/win_build_output/midl/chrome/updater/app/server/win/x64/updater_legacy_idl.h +++ b/third_party/win_build_output/midl/chrome/updater/app/server/win/x64/updater_legacy_idl.h
@@ -95,6 +95,27 @@ #endif /* __IPolicyStatus_FWD_DEFINED__ */ +#ifndef __IPolicyStatusValue_FWD_DEFINED__ +#define __IPolicyStatusValue_FWD_DEFINED__ +typedef interface IPolicyStatusValue IPolicyStatusValue; + +#endif /* __IPolicyStatusValue_FWD_DEFINED__ */ + + +#ifndef __IPolicyStatus2_FWD_DEFINED__ +#define __IPolicyStatus2_FWD_DEFINED__ +typedef interface IPolicyStatus2 IPolicyStatus2; + +#endif /* __IPolicyStatus2_FWD_DEFINED__ */ + + +#ifndef __IPolicyStatus3_FWD_DEFINED__ +#define __IPolicyStatus3_FWD_DEFINED__ +typedef interface IPolicyStatus3 IPolicyStatus3; + +#endif /* __IPolicyStatus3_FWD_DEFINED__ */ + + #ifndef __IProcessLauncher_FWD_DEFINED__ #define __IProcessLauncher_FWD_DEFINED__ typedef interface IProcessLauncher IProcessLauncher; @@ -187,6 +208,27 @@ #endif /* __IPolicyStatus_FWD_DEFINED__ */ +#ifndef __IPolicyStatus2_FWD_DEFINED__ +#define __IPolicyStatus2_FWD_DEFINED__ +typedef interface IPolicyStatus2 IPolicyStatus2; + +#endif /* __IPolicyStatus2_FWD_DEFINED__ */ + + +#ifndef __IPolicyStatus3_FWD_DEFINED__ +#define __IPolicyStatus3_FWD_DEFINED__ +typedef interface IPolicyStatus3 IPolicyStatus3; + +#endif /* __IPolicyStatus3_FWD_DEFINED__ */ + + +#ifndef __IPolicyStatusValue_FWD_DEFINED__ +#define __IPolicyStatusValue_FWD_DEFINED__ +typedef interface IPolicyStatusValue IPolicyStatusValue; + +#endif /* __IPolicyStatusValue_FWD_DEFINED__ */ + + #ifndef __IProcessLauncher_FWD_DEFINED__ #define __IProcessLauncher_FWD_DEFINED__ typedef interface IProcessLauncher IProcessLauncher; @@ -1668,6 +1710,775 @@ #endif /* __IPolicyStatus_INTERFACE_DEFINED__ */ +#ifndef __IPolicyStatusValue_INTERFACE_DEFINED__ +#define __IPolicyStatusValue_INTERFACE_DEFINED__ + +/* interface IPolicyStatusValue */ +/* [unique][helpstring][uuid][dual][object] */ + + +EXTERN_C const IID IID_IPolicyStatusValue; + +#if defined(__cplusplus) && !defined(CINTERFACE) + + MIDL_INTERFACE("27634814-8E41-4C35-8577-980134A96544") + IPolicyStatusValue : public IDispatch + { + public: + virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_source( + /* [retval][out] */ BSTR *__MIDL__IPolicyStatusValue0000) = 0; + + virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_value( + /* [retval][out] */ BSTR *__MIDL__IPolicyStatusValue0001) = 0; + + virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_hasConflict( + /* [retval][out] */ VARIANT_BOOL *has_conflict) = 0; + + virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_conflictSource( + /* [retval][out] */ BSTR *__MIDL__IPolicyStatusValue0002) = 0; + + virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_conflictValue( + /* [retval][out] */ BSTR *__MIDL__IPolicyStatusValue0003) = 0; + + }; + + +#else /* C style interface */ + + typedef struct IPolicyStatusValueVtbl + { + BEGIN_INTERFACE + + DECLSPEC_XFGVIRT(IUnknown, QueryInterface) + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + IPolicyStatusValue * This, + /* [in] */ REFIID riid, + /* [annotation][iid_is][out] */ + _COM_Outptr_ void **ppvObject); + + DECLSPEC_XFGVIRT(IUnknown, AddRef) + ULONG ( STDMETHODCALLTYPE *AddRef )( + IPolicyStatusValue * This); + + DECLSPEC_XFGVIRT(IUnknown, Release) + ULONG ( STDMETHODCALLTYPE *Release )( + IPolicyStatusValue * This); + + DECLSPEC_XFGVIRT(IDispatch, GetTypeInfoCount) + HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( + IPolicyStatusValue * This, + /* [out] */ UINT *pctinfo); + + DECLSPEC_XFGVIRT(IDispatch, GetTypeInfo) + HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( + IPolicyStatusValue * This, + /* [in] */ UINT iTInfo, + /* [in] */ LCID lcid, + /* [out] */ ITypeInfo **ppTInfo); + + DECLSPEC_XFGVIRT(IDispatch, GetIDsOfNames) + HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( + IPolicyStatusValue * This, + /* [in] */ REFIID riid, + /* [size_is][in] */ LPOLESTR *rgszNames, + /* [range][in] */ UINT cNames, + /* [in] */ LCID lcid, + /* [size_is][out] */ DISPID *rgDispId); + + DECLSPEC_XFGVIRT(IDispatch, Invoke) + /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( + IPolicyStatusValue * This, + /* [annotation][in] */ + _In_ DISPID dispIdMember, + /* [annotation][in] */ + _In_ REFIID riid, + /* [annotation][in] */ + _In_ LCID lcid, + /* [annotation][in] */ + _In_ WORD wFlags, + /* [annotation][out][in] */ + _In_ DISPPARAMS *pDispParams, + /* [annotation][out] */ + _Out_opt_ VARIANT *pVarResult, + /* [annotation][out] */ + _Out_opt_ EXCEPINFO *pExcepInfo, + /* [annotation][out] */ + _Out_opt_ UINT *puArgErr); + + DECLSPEC_XFGVIRT(IPolicyStatusValue, get_source) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_source )( + IPolicyStatusValue * This, + /* [retval][out] */ BSTR *__MIDL__IPolicyStatusValue0000); + + DECLSPEC_XFGVIRT(IPolicyStatusValue, get_value) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_value )( + IPolicyStatusValue * This, + /* [retval][out] */ BSTR *__MIDL__IPolicyStatusValue0001); + + DECLSPEC_XFGVIRT(IPolicyStatusValue, get_hasConflict) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_hasConflict )( + IPolicyStatusValue * This, + /* [retval][out] */ VARIANT_BOOL *has_conflict); + + DECLSPEC_XFGVIRT(IPolicyStatusValue, get_conflictSource) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_conflictSource )( + IPolicyStatusValue * This, + /* [retval][out] */ BSTR *__MIDL__IPolicyStatusValue0002); + + DECLSPEC_XFGVIRT(IPolicyStatusValue, get_conflictValue) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_conflictValue )( + IPolicyStatusValue * This, + /* [retval][out] */ BSTR *__MIDL__IPolicyStatusValue0003); + + END_INTERFACE + } IPolicyStatusValueVtbl; + + interface IPolicyStatusValue + { + CONST_VTBL struct IPolicyStatusValueVtbl *lpVtbl; + }; + + + +#ifdef COBJMACROS + + +#define IPolicyStatusValue_QueryInterface(This,riid,ppvObject) \ + ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) + +#define IPolicyStatusValue_AddRef(This) \ + ( (This)->lpVtbl -> AddRef(This) ) + +#define IPolicyStatusValue_Release(This) \ + ( (This)->lpVtbl -> Release(This) ) + + +#define IPolicyStatusValue_GetTypeInfoCount(This,pctinfo) \ + ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) + +#define IPolicyStatusValue_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \ + ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) + +#define IPolicyStatusValue_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \ + ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) + +#define IPolicyStatusValue_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \ + ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) + + +#define IPolicyStatusValue_get_source(This,__MIDL__IPolicyStatusValue0000) \ + ( (This)->lpVtbl -> get_source(This,__MIDL__IPolicyStatusValue0000) ) + +#define IPolicyStatusValue_get_value(This,__MIDL__IPolicyStatusValue0001) \ + ( (This)->lpVtbl -> get_value(This,__MIDL__IPolicyStatusValue0001) ) + +#define IPolicyStatusValue_get_hasConflict(This,has_conflict) \ + ( (This)->lpVtbl -> get_hasConflict(This,has_conflict) ) + +#define IPolicyStatusValue_get_conflictSource(This,__MIDL__IPolicyStatusValue0002) \ + ( (This)->lpVtbl -> get_conflictSource(This,__MIDL__IPolicyStatusValue0002) ) + +#define IPolicyStatusValue_get_conflictValue(This,__MIDL__IPolicyStatusValue0003) \ + ( (This)->lpVtbl -> get_conflictValue(This,__MIDL__IPolicyStatusValue0003) ) + +#endif /* COBJMACROS */ + + +#endif /* C style interface */ + + + + +#endif /* __IPolicyStatusValue_INTERFACE_DEFINED__ */ + + +#ifndef __IPolicyStatus2_INTERFACE_DEFINED__ +#define __IPolicyStatus2_INTERFACE_DEFINED__ + +/* interface IPolicyStatus2 */ +/* [unique][helpstring][uuid][dual][object] */ + + +EXTERN_C const IID IID_IPolicyStatus2; + +#if defined(__cplusplus) && !defined(CINTERFACE) + + MIDL_INTERFACE("34527502-D3DB-4205-A69B-789B27EE0414") + IPolicyStatus2 : public IDispatch + { + public: + virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_updaterVersion( + /* [retval][out] */ BSTR *version) = 0; + + virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_lastCheckedTime( + /* [retval][out] */ DATE *last_checked) = 0; + + virtual HRESULT STDMETHODCALLTYPE refreshPolicies( void) = 0; + + virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_lastCheckPeriodMinutes( + /* [retval][out] */ IPolicyStatusValue **value) = 0; + + virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_updatesSuppressedTimes( + /* [out] */ IPolicyStatusValue **value, + VARIANT_BOOL *are_updates_suppressed) = 0; + + virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_downloadPreferenceGroupPolicy( + /* [retval][out] */ IPolicyStatusValue **value) = 0; + + virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_packageCacheSizeLimitMBytes( + /* [retval][out] */ IPolicyStatusValue **value) = 0; + + virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_packageCacheExpirationTimeDays( + /* [retval][out] */ IPolicyStatusValue **value) = 0; + + virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_proxyMode( + /* [retval][out] */ IPolicyStatusValue **value) = 0; + + virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_proxyPacUrl( + /* [retval][out] */ IPolicyStatusValue **value) = 0; + + virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_proxyServer( + /* [retval][out] */ IPolicyStatusValue **value) = 0; + + virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_effectivePolicyForAppInstalls( + /* [in] */ BSTR app_id, + /* [retval][out] */ IPolicyStatusValue **value) = 0; + + virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_effectivePolicyForAppUpdates( + /* [in] */ BSTR app_id, + /* [retval][out] */ IPolicyStatusValue **value) = 0; + + virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_targetVersionPrefix( + /* [in] */ BSTR app_id, + /* [retval][out] */ IPolicyStatusValue **value) = 0; + + virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_isRollbackToTargetVersionAllowed( + /* [in] */ BSTR app_id, + /* [retval][out] */ IPolicyStatusValue **value) = 0; + + virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_targetChannel( + /* [in] */ BSTR app_id, + /* [retval][out] */ IPolicyStatusValue **value) = 0; + + }; + + +#else /* C style interface */ + + typedef struct IPolicyStatus2Vtbl + { + BEGIN_INTERFACE + + DECLSPEC_XFGVIRT(IUnknown, QueryInterface) + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + IPolicyStatus2 * This, + /* [in] */ REFIID riid, + /* [annotation][iid_is][out] */ + _COM_Outptr_ void **ppvObject); + + DECLSPEC_XFGVIRT(IUnknown, AddRef) + ULONG ( STDMETHODCALLTYPE *AddRef )( + IPolicyStatus2 * This); + + DECLSPEC_XFGVIRT(IUnknown, Release) + ULONG ( STDMETHODCALLTYPE *Release )( + IPolicyStatus2 * This); + + DECLSPEC_XFGVIRT(IDispatch, GetTypeInfoCount) + HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( + IPolicyStatus2 * This, + /* [out] */ UINT *pctinfo); + + DECLSPEC_XFGVIRT(IDispatch, GetTypeInfo) + HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( + IPolicyStatus2 * This, + /* [in] */ UINT iTInfo, + /* [in] */ LCID lcid, + /* [out] */ ITypeInfo **ppTInfo); + + DECLSPEC_XFGVIRT(IDispatch, GetIDsOfNames) + HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( + IPolicyStatus2 * This, + /* [in] */ REFIID riid, + /* [size_is][in] */ LPOLESTR *rgszNames, + /* [range][in] */ UINT cNames, + /* [in] */ LCID lcid, + /* [size_is][out] */ DISPID *rgDispId); + + DECLSPEC_XFGVIRT(IDispatch, Invoke) + /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( + IPolicyStatus2 * This, + /* [annotation][in] */ + _In_ DISPID dispIdMember, + /* [annotation][in] */ + _In_ REFIID riid, + /* [annotation][in] */ + _In_ LCID lcid, + /* [annotation][in] */ + _In_ WORD wFlags, + /* [annotation][out][in] */ + _In_ DISPPARAMS *pDispParams, + /* [annotation][out] */ + _Out_opt_ VARIANT *pVarResult, + /* [annotation][out] */ + _Out_opt_ EXCEPINFO *pExcepInfo, + /* [annotation][out] */ + _Out_opt_ UINT *puArgErr); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_updaterVersion) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_updaterVersion )( + IPolicyStatus2 * This, + /* [retval][out] */ BSTR *version); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_lastCheckedTime) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_lastCheckedTime )( + IPolicyStatus2 * This, + /* [retval][out] */ DATE *last_checked); + + DECLSPEC_XFGVIRT(IPolicyStatus2, refreshPolicies) + HRESULT ( STDMETHODCALLTYPE *refreshPolicies )( + IPolicyStatus2 * This); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_lastCheckPeriodMinutes) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_lastCheckPeriodMinutes )( + IPolicyStatus2 * This, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_updatesSuppressedTimes) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_updatesSuppressedTimes )( + IPolicyStatus2 * This, + /* [out] */ IPolicyStatusValue **value, + VARIANT_BOOL *are_updates_suppressed); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_downloadPreferenceGroupPolicy) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_downloadPreferenceGroupPolicy )( + IPolicyStatus2 * This, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_packageCacheSizeLimitMBytes) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_packageCacheSizeLimitMBytes )( + IPolicyStatus2 * This, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_packageCacheExpirationTimeDays) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_packageCacheExpirationTimeDays )( + IPolicyStatus2 * This, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_proxyMode) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_proxyMode )( + IPolicyStatus2 * This, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_proxyPacUrl) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_proxyPacUrl )( + IPolicyStatus2 * This, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_proxyServer) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_proxyServer )( + IPolicyStatus2 * This, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_effectivePolicyForAppInstalls) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_effectivePolicyForAppInstalls )( + IPolicyStatus2 * This, + /* [in] */ BSTR app_id, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_effectivePolicyForAppUpdates) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_effectivePolicyForAppUpdates )( + IPolicyStatus2 * This, + /* [in] */ BSTR app_id, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_targetVersionPrefix) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_targetVersionPrefix )( + IPolicyStatus2 * This, + /* [in] */ BSTR app_id, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_isRollbackToTargetVersionAllowed) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_isRollbackToTargetVersionAllowed )( + IPolicyStatus2 * This, + /* [in] */ BSTR app_id, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_targetChannel) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_targetChannel )( + IPolicyStatus2 * This, + /* [in] */ BSTR app_id, + /* [retval][out] */ IPolicyStatusValue **value); + + END_INTERFACE + } IPolicyStatus2Vtbl; + + interface IPolicyStatus2 + { + CONST_VTBL struct IPolicyStatus2Vtbl *lpVtbl; + }; + + + +#ifdef COBJMACROS + + +#define IPolicyStatus2_QueryInterface(This,riid,ppvObject) \ + ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) + +#define IPolicyStatus2_AddRef(This) \ + ( (This)->lpVtbl -> AddRef(This) ) + +#define IPolicyStatus2_Release(This) \ + ( (This)->lpVtbl -> Release(This) ) + + +#define IPolicyStatus2_GetTypeInfoCount(This,pctinfo) \ + ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) + +#define IPolicyStatus2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \ + ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) + +#define IPolicyStatus2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \ + ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) + +#define IPolicyStatus2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \ + ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) + + +#define IPolicyStatus2_get_updaterVersion(This,version) \ + ( (This)->lpVtbl -> get_updaterVersion(This,version) ) + +#define IPolicyStatus2_get_lastCheckedTime(This,last_checked) \ + ( (This)->lpVtbl -> get_lastCheckedTime(This,last_checked) ) + +#define IPolicyStatus2_refreshPolicies(This) \ + ( (This)->lpVtbl -> refreshPolicies(This) ) + +#define IPolicyStatus2_get_lastCheckPeriodMinutes(This,value) \ + ( (This)->lpVtbl -> get_lastCheckPeriodMinutes(This,value) ) + +#define IPolicyStatus2_get_updatesSuppressedTimes(This,value,are_updates_suppressed) \ + ( (This)->lpVtbl -> get_updatesSuppressedTimes(This,value,are_updates_suppressed) ) + +#define IPolicyStatus2_get_downloadPreferenceGroupPolicy(This,value) \ + ( (This)->lpVtbl -> get_downloadPreferenceGroupPolicy(This,value) ) + +#define IPolicyStatus2_get_packageCacheSizeLimitMBytes(This,value) \ + ( (This)->lpVtbl -> get_packageCacheSizeLimitMBytes(This,value) ) + +#define IPolicyStatus2_get_packageCacheExpirationTimeDays(This,value) \ + ( (This)->lpVtbl -> get_packageCacheExpirationTimeDays(This,value) ) + +#define IPolicyStatus2_get_proxyMode(This,value) \ + ( (This)->lpVtbl -> get_proxyMode(This,value) ) + +#define IPolicyStatus2_get_proxyPacUrl(This,value) \ + ( (This)->lpVtbl -> get_proxyPacUrl(This,value) ) + +#define IPolicyStatus2_get_proxyServer(This,value) \ + ( (This)->lpVtbl -> get_proxyServer(This,value) ) + +#define IPolicyStatus2_get_effectivePolicyForAppInstalls(This,app_id,value) \ + ( (This)->lpVtbl -> get_effectivePolicyForAppInstalls(This,app_id,value) ) + +#define IPolicyStatus2_get_effectivePolicyForAppUpdates(This,app_id,value) \ + ( (This)->lpVtbl -> get_effectivePolicyForAppUpdates(This,app_id,value) ) + +#define IPolicyStatus2_get_targetVersionPrefix(This,app_id,value) \ + ( (This)->lpVtbl -> get_targetVersionPrefix(This,app_id,value) ) + +#define IPolicyStatus2_get_isRollbackToTargetVersionAllowed(This,app_id,value) \ + ( (This)->lpVtbl -> get_isRollbackToTargetVersionAllowed(This,app_id,value) ) + +#define IPolicyStatus2_get_targetChannel(This,app_id,value) \ + ( (This)->lpVtbl -> get_targetChannel(This,app_id,value) ) + +#endif /* COBJMACROS */ + + +#endif /* C style interface */ + + + + +#endif /* __IPolicyStatus2_INTERFACE_DEFINED__ */ + + +#ifndef __IPolicyStatus3_INTERFACE_DEFINED__ +#define __IPolicyStatus3_INTERFACE_DEFINED__ + +/* interface IPolicyStatus3 */ +/* [unique][helpstring][uuid][dual][object] */ + + +EXTERN_C const IID IID_IPolicyStatus3; + +#if defined(__cplusplus) && !defined(CINTERFACE) + + MIDL_INTERFACE("05A30352-EB25-45B6-8449-BCA7B0542CE5") + IPolicyStatus3 : public IPolicyStatus2 + { + public: + virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_forceInstallApps( + /* [in] */ VARIANT_BOOL is_machine, + /* [retval][out] */ IPolicyStatusValue **value) = 0; + + }; + + +#else /* C style interface */ + + typedef struct IPolicyStatus3Vtbl + { + BEGIN_INTERFACE + + DECLSPEC_XFGVIRT(IUnknown, QueryInterface) + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + IPolicyStatus3 * This, + /* [in] */ REFIID riid, + /* [annotation][iid_is][out] */ + _COM_Outptr_ void **ppvObject); + + DECLSPEC_XFGVIRT(IUnknown, AddRef) + ULONG ( STDMETHODCALLTYPE *AddRef )( + IPolicyStatus3 * This); + + DECLSPEC_XFGVIRT(IUnknown, Release) + ULONG ( STDMETHODCALLTYPE *Release )( + IPolicyStatus3 * This); + + DECLSPEC_XFGVIRT(IDispatch, GetTypeInfoCount) + HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( + IPolicyStatus3 * This, + /* [out] */ UINT *pctinfo); + + DECLSPEC_XFGVIRT(IDispatch, GetTypeInfo) + HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( + IPolicyStatus3 * This, + /* [in] */ UINT iTInfo, + /* [in] */ LCID lcid, + /* [out] */ ITypeInfo **ppTInfo); + + DECLSPEC_XFGVIRT(IDispatch, GetIDsOfNames) + HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( + IPolicyStatus3 * This, + /* [in] */ REFIID riid, + /* [size_is][in] */ LPOLESTR *rgszNames, + /* [range][in] */ UINT cNames, + /* [in] */ LCID lcid, + /* [size_is][out] */ DISPID *rgDispId); + + DECLSPEC_XFGVIRT(IDispatch, Invoke) + /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( + IPolicyStatus3 * This, + /* [annotation][in] */ + _In_ DISPID dispIdMember, + /* [annotation][in] */ + _In_ REFIID riid, + /* [annotation][in] */ + _In_ LCID lcid, + /* [annotation][in] */ + _In_ WORD wFlags, + /* [annotation][out][in] */ + _In_ DISPPARAMS *pDispParams, + /* [annotation][out] */ + _Out_opt_ VARIANT *pVarResult, + /* [annotation][out] */ + _Out_opt_ EXCEPINFO *pExcepInfo, + /* [annotation][out] */ + _Out_opt_ UINT *puArgErr); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_updaterVersion) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_updaterVersion )( + IPolicyStatus3 * This, + /* [retval][out] */ BSTR *version); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_lastCheckedTime) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_lastCheckedTime )( + IPolicyStatus3 * This, + /* [retval][out] */ DATE *last_checked); + + DECLSPEC_XFGVIRT(IPolicyStatus2, refreshPolicies) + HRESULT ( STDMETHODCALLTYPE *refreshPolicies )( + IPolicyStatus3 * This); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_lastCheckPeriodMinutes) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_lastCheckPeriodMinutes )( + IPolicyStatus3 * This, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_updatesSuppressedTimes) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_updatesSuppressedTimes )( + IPolicyStatus3 * This, + /* [out] */ IPolicyStatusValue **value, + VARIANT_BOOL *are_updates_suppressed); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_downloadPreferenceGroupPolicy) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_downloadPreferenceGroupPolicy )( + IPolicyStatus3 * This, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_packageCacheSizeLimitMBytes) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_packageCacheSizeLimitMBytes )( + IPolicyStatus3 * This, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_packageCacheExpirationTimeDays) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_packageCacheExpirationTimeDays )( + IPolicyStatus3 * This, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_proxyMode) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_proxyMode )( + IPolicyStatus3 * This, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_proxyPacUrl) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_proxyPacUrl )( + IPolicyStatus3 * This, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_proxyServer) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_proxyServer )( + IPolicyStatus3 * This, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_effectivePolicyForAppInstalls) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_effectivePolicyForAppInstalls )( + IPolicyStatus3 * This, + /* [in] */ BSTR app_id, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_effectivePolicyForAppUpdates) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_effectivePolicyForAppUpdates )( + IPolicyStatus3 * This, + /* [in] */ BSTR app_id, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_targetVersionPrefix) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_targetVersionPrefix )( + IPolicyStatus3 * This, + /* [in] */ BSTR app_id, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_isRollbackToTargetVersionAllowed) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_isRollbackToTargetVersionAllowed )( + IPolicyStatus3 * This, + /* [in] */ BSTR app_id, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_targetChannel) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_targetChannel )( + IPolicyStatus3 * This, + /* [in] */ BSTR app_id, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus3, get_forceInstallApps) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_forceInstallApps )( + IPolicyStatus3 * This, + /* [in] */ VARIANT_BOOL is_machine, + /* [retval][out] */ IPolicyStatusValue **value); + + END_INTERFACE + } IPolicyStatus3Vtbl; + + interface IPolicyStatus3 + { + CONST_VTBL struct IPolicyStatus3Vtbl *lpVtbl; + }; + + + +#ifdef COBJMACROS + + +#define IPolicyStatus3_QueryInterface(This,riid,ppvObject) \ + ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) + +#define IPolicyStatus3_AddRef(This) \ + ( (This)->lpVtbl -> AddRef(This) ) + +#define IPolicyStatus3_Release(This) \ + ( (This)->lpVtbl -> Release(This) ) + + +#define IPolicyStatus3_GetTypeInfoCount(This,pctinfo) \ + ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) + +#define IPolicyStatus3_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \ + ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) + +#define IPolicyStatus3_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \ + ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) + +#define IPolicyStatus3_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \ + ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) + + +#define IPolicyStatus3_get_updaterVersion(This,version) \ + ( (This)->lpVtbl -> get_updaterVersion(This,version) ) + +#define IPolicyStatus3_get_lastCheckedTime(This,last_checked) \ + ( (This)->lpVtbl -> get_lastCheckedTime(This,last_checked) ) + +#define IPolicyStatus3_refreshPolicies(This) \ + ( (This)->lpVtbl -> refreshPolicies(This) ) + +#define IPolicyStatus3_get_lastCheckPeriodMinutes(This,value) \ + ( (This)->lpVtbl -> get_lastCheckPeriodMinutes(This,value) ) + +#define IPolicyStatus3_get_updatesSuppressedTimes(This,value,are_updates_suppressed) \ + ( (This)->lpVtbl -> get_updatesSuppressedTimes(This,value,are_updates_suppressed) ) + +#define IPolicyStatus3_get_downloadPreferenceGroupPolicy(This,value) \ + ( (This)->lpVtbl -> get_downloadPreferenceGroupPolicy(This,value) ) + +#define IPolicyStatus3_get_packageCacheSizeLimitMBytes(This,value) \ + ( (This)->lpVtbl -> get_packageCacheSizeLimitMBytes(This,value) ) + +#define IPolicyStatus3_get_packageCacheExpirationTimeDays(This,value) \ + ( (This)->lpVtbl -> get_packageCacheExpirationTimeDays(This,value) ) + +#define IPolicyStatus3_get_proxyMode(This,value) \ + ( (This)->lpVtbl -> get_proxyMode(This,value) ) + +#define IPolicyStatus3_get_proxyPacUrl(This,value) \ + ( (This)->lpVtbl -> get_proxyPacUrl(This,value) ) + +#define IPolicyStatus3_get_proxyServer(This,value) \ + ( (This)->lpVtbl -> get_proxyServer(This,value) ) + +#define IPolicyStatus3_get_effectivePolicyForAppInstalls(This,app_id,value) \ + ( (This)->lpVtbl -> get_effectivePolicyForAppInstalls(This,app_id,value) ) + +#define IPolicyStatus3_get_effectivePolicyForAppUpdates(This,app_id,value) \ + ( (This)->lpVtbl -> get_effectivePolicyForAppUpdates(This,app_id,value) ) + +#define IPolicyStatus3_get_targetVersionPrefix(This,app_id,value) \ + ( (This)->lpVtbl -> get_targetVersionPrefix(This,app_id,value) ) + +#define IPolicyStatus3_get_isRollbackToTargetVersionAllowed(This,app_id,value) \ + ( (This)->lpVtbl -> get_isRollbackToTargetVersionAllowed(This,app_id,value) ) + +#define IPolicyStatus3_get_targetChannel(This,app_id,value) \ + ( (This)->lpVtbl -> get_targetChannel(This,app_id,value) ) + + +#define IPolicyStatus3_get_forceInstallApps(This,is_machine,value) \ + ( (This)->lpVtbl -> get_forceInstallApps(This,is_machine,value) ) + +#endif /* COBJMACROS */ + + +#endif /* C style interface */ + + + + +#endif /* __IPolicyStatus3_INTERFACE_DEFINED__ */ + + #ifndef __IProcessLauncher_INTERFACE_DEFINED__ #define __IProcessLauncher_INTERFACE_DEFINED__ @@ -1917,6 +2728,9 @@ + + + EXTERN_C const IID LIBID_UpdaterLegacyLib; EXTERN_C const CLSID CLSID_GoogleUpdate3WebUserClass;
diff --git a/third_party/win_build_output/midl/chrome/updater/app/server/win/x64/updater_legacy_idl.tlb b/third_party/win_build_output/midl/chrome/updater/app/server/win/x64/updater_legacy_idl.tlb index 575556c..7522809 100644 --- a/third_party/win_build_output/midl/chrome/updater/app/server/win/x64/updater_legacy_idl.tlb +++ b/third_party/win_build_output/midl/chrome/updater/app/server/win/x64/updater_legacy_idl.tlb Binary files differ
diff --git a/third_party/win_build_output/midl/chrome/updater/app/server/win/x64/updater_legacy_idl_i.c b/third_party/win_build_output/midl/chrome/updater/app/server/win/x64/updater_legacy_idl_i.c index 5ad01bce..6214bf5a 100644 --- a/third_party/win_build_output/midl/chrome/updater/app/server/win/x64/updater_legacy_idl_i.c +++ b/third_party/win_build_output/midl/chrome/updater/app/server/win/x64/updater_legacy_idl_i.c
@@ -85,6 +85,15 @@ MIDL_DEFINE_GUID(IID, IID_IPolicyStatus,0xF63F6F8B,0xACD5,0x413C,0xA4,0x4B,0x04,0x09,0x13,0x6D,0x26,0xCB); +MIDL_DEFINE_GUID(IID, IID_IPolicyStatusValue,0x27634814,0x8E41,0x4C35,0x85,0x77,0x98,0x01,0x34,0xA9,0x65,0x44); + + +MIDL_DEFINE_GUID(IID, IID_IPolicyStatus2,0x34527502,0xD3DB,0x4205,0xA6,0x9B,0x78,0x9B,0x27,0xEE,0x04,0x14); + + +MIDL_DEFINE_GUID(IID, IID_IPolicyStatus3,0x05A30352,0xEB25,0x45B6,0x84,0x49,0xBC,0xA7,0xB0,0x54,0x2C,0xE5); + + MIDL_DEFINE_GUID(IID, IID_IProcessLauncher,0x128C2DA6,0x2BC0,0x44c0,0xB3,0xF6,0x4E,0xC2,0x2E,0x64,0x79,0x64);
diff --git a/third_party/win_build_output/midl/chrome/updater/app/server/win/x64/updater_legacy_idl_p.c b/third_party/win_build_output/midl/chrome/updater/app/server/win/x64/updater_legacy_idl_p.c index 422415e0..e0d8836 100644 --- a/third_party/win_build_output/midl/chrome/updater/app/server/win/x64/updater_legacy_idl_p.c +++ b/third_party/win_build_output/midl/chrome/updater/app/server/win/x64/updater_legacy_idl_p.c
@@ -46,8 +46,8 @@ #include "updater_legacy_idl.h" -#define TYPE_FORMAT_STRING_SIZE 1059 -#define PROC_FORMAT_STRING_SIZE 2231 +#define TYPE_FORMAT_STRING_SIZE 1089 +#define PROC_FORMAT_STRING_SIZE 2919 #define EXPR_FORMAT_STRING_SIZE 1 #define TRANSMIT_AS_TABLE_SIZE 0 #define WIRE_MARSHAL_TABLE_SIZE 2 @@ -177,6 +177,27 @@ extern const MIDL_STUB_DESC Object_StubDesc; +extern const MIDL_SERVER_INFO IPolicyStatusValue_ServerInfo; +extern const MIDL_STUBLESS_PROXY_INFO IPolicyStatusValue_ProxyInfo; + + +extern const MIDL_STUB_DESC Object_StubDesc; + + +extern const MIDL_SERVER_INFO IPolicyStatus2_ServerInfo; +extern const MIDL_STUBLESS_PROXY_INFO IPolicyStatus2_ProxyInfo; + + +extern const MIDL_STUB_DESC Object_StubDesc; + + +extern const MIDL_SERVER_INFO IPolicyStatus3_ServerInfo; +extern const MIDL_STUBLESS_PROXY_INFO IPolicyStatus3_ProxyInfo; + + +extern const MIDL_STUB_DESC Object_StubDesc; + + extern const MIDL_SERVER_INFO IProcessLauncher_ServerInfo; extern const MIDL_STUBLESS_PROXY_INFO IProcessLauncher_ProxyInfo; @@ -249,6 +270,9 @@ /* 36 */ 0x8, /* FC_LONG */ 0x0, /* 0 */ + /* Procedure get_value */ + + /* Procedure get_availableVersion */ /* 38 */ 0x33, /* FC_AUTO_HANDLE */ @@ -267,6 +291,9 @@ /* 60 */ NdrFcShort( 0x0 ), /* 0 */ /* 62 */ NdrFcShort( 0x0 ), /* 0 */ + /* Parameter __MIDL__IPolicyStatusValue0001 */ + + /* Parameter __MIDL__ICurrentState0001 */ /* 64 */ NdrFcShort( 0x2113 ), /* Flags: must size, must free, out, simple ref, srv alloc size=8 */ @@ -275,6 +302,9 @@ /* Return value */ + + /* Return value */ + /* 70 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ /* 72 */ NdrFcShort( 0x10 ), /* X64 Stack size/offset = 16 */ /* 74 */ 0x8, /* FC_LONG */ @@ -895,6 +925,9 @@ /* 776 */ 0x8, /* FC_LONG */ 0x0, /* 0 */ + /* Procedure refreshPolicies */ + + /* Procedure createAllInstalledApps */ /* 778 */ 0x33, /* FC_AUTO_HANDLE */ @@ -915,11 +948,17 @@ /* Return value */ + + /* Return value */ + /* 804 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ /* 806 */ NdrFcShort( 0x8 ), /* X64 Stack size/offset = 8 */ /* 808 */ 0x8, /* FC_LONG */ 0x0, /* 0 */ + /* Procedure get_conflictSource */ + + /* Procedure get_displayLanguage */ /* 810 */ 0x33, /* FC_AUTO_HANDLE */ @@ -938,6 +977,9 @@ /* 832 */ NdrFcShort( 0x0 ), /* 0 */ /* 834 */ NdrFcShort( 0x0 ), /* 0 */ + /* Parameter __MIDL__IPolicyStatusValue0002 */ + + /* Parameter __MIDL__IAppBundleWeb0000 */ /* 836 */ NdrFcShort( 0x2113 ), /* Flags: must size, must free, out, simple ref, srv alloc size=8 */ @@ -946,6 +988,9 @@ /* Return value */ + + /* Return value */ + /* 842 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ /* 844 */ NdrFcShort( 0x10 ), /* X64 Stack size/offset = 16 */ /* 846 */ 0x8, /* FC_LONG */ @@ -1295,6 +1340,12 @@ /* 1272 */ 0x8, /* FC_LONG */ 0x0, /* 0 */ + /* Procedure get_updaterVersion */ + + + /* Procedure get_source */ + + /* Procedure get_appId */ /* 1274 */ 0x33, /* FC_AUTO_HANDLE */ @@ -1313,6 +1364,12 @@ /* 1296 */ NdrFcShort( 0x0 ), /* 0 */ /* 1298 */ NdrFcShort( 0x0 ), /* 0 */ + /* Parameter version */ + + + /* Parameter __MIDL__IPolicyStatusValue0000 */ + + /* Parameter __MIDL__IAppWeb0000 */ /* 1300 */ NdrFcShort( 0x2113 ), /* Flags: must size, must free, out, simple ref, srv alloc size=8 */ @@ -1321,6 +1378,12 @@ /* Return value */ + + /* Return value */ + + + /* Return value */ + /* 1306 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ /* 1308 */ NdrFcShort( 0x10 ), /* X64 Stack size/offset = 16 */ /* 1310 */ 0x8, /* FC_LONG */ @@ -1948,16 +2011,16 @@ /* 2034 */ 0x8, /* FC_LONG */ 0x0, /* 0 */ - /* Procedure LaunchCmdLine */ + /* Procedure get_hasConflict */ /* 2036 */ 0x33, /* FC_AUTO_HANDLE */ 0x6c, /* Old Flags: object, Oi2 */ /* 2038 */ NdrFcLong( 0x0 ), /* 0 */ -/* 2042 */ NdrFcShort( 0x3 ), /* 3 */ +/* 2042 */ NdrFcShort( 0x9 ), /* 9 */ /* 2044 */ NdrFcShort( 0x18 ), /* X64 Stack size/offset = 24 */ /* 2046 */ NdrFcShort( 0x0 ), /* 0 */ -/* 2048 */ NdrFcShort( 0x8 ), /* 8 */ -/* 2050 */ 0x46, /* Oi2 Flags: clt must size, has return, has ext, */ +/* 2048 */ NdrFcShort( 0x22 ), /* 34 */ +/* 2050 */ 0x44, /* Oi2 Flags: has return, has ext, */ 0x2, /* 2 */ /* 2052 */ 0xa, /* 10 */ 0x1, /* Ext Flags: new corr desc, */ @@ -1966,11 +2029,12 @@ /* 2058 */ NdrFcShort( 0x0 ), /* 0 */ /* 2060 */ NdrFcShort( 0x0 ), /* 0 */ - /* Parameter cmd_line */ + /* Parameter has_conflict */ -/* 2062 */ NdrFcShort( 0x10b ), /* Flags: must size, must free, in, simple ref, */ +/* 2062 */ NdrFcShort( 0x2150 ), /* Flags: out, base type, simple ref, srv alloc size=8 */ /* 2064 */ NdrFcShort( 0x8 ), /* X64 Stack size/offset = 8 */ -/* 2066 */ NdrFcShort( 0x41c ), /* Type Offset=1052 */ +/* 2066 */ 0x6, /* FC_SHORT */ + 0x0, /* 0 */ /* Return value */ @@ -1979,145 +2043,717 @@ /* 2072 */ 0x8, /* FC_LONG */ 0x0, /* 0 */ - /* Procedure LaunchBrowser */ + /* Procedure get_conflictValue */ /* 2074 */ 0x33, /* FC_AUTO_HANDLE */ 0x6c, /* Old Flags: object, Oi2 */ /* 2076 */ NdrFcLong( 0x0 ), /* 0 */ -/* 2080 */ NdrFcShort( 0x4 ), /* 4 */ -/* 2082 */ NdrFcShort( 0x20 ), /* X64 Stack size/offset = 32 */ -/* 2084 */ NdrFcShort( 0x8 ), /* 8 */ +/* 2080 */ NdrFcShort( 0xb ), /* 11 */ +/* 2082 */ NdrFcShort( 0x18 ), /* X64 Stack size/offset = 24 */ +/* 2084 */ NdrFcShort( 0x0 ), /* 0 */ /* 2086 */ NdrFcShort( 0x8 ), /* 8 */ -/* 2088 */ 0x46, /* Oi2 Flags: clt must size, has return, has ext, */ - 0x3, /* 3 */ +/* 2088 */ 0x45, /* Oi2 Flags: srv must size, has return, has ext, */ + 0x2, /* 2 */ /* 2090 */ 0xa, /* 10 */ - 0x1, /* Ext Flags: new corr desc, */ -/* 2092 */ NdrFcShort( 0x0 ), /* 0 */ + 0x3, /* Ext Flags: new corr desc, clt corr check, */ +/* 2092 */ NdrFcShort( 0x1 ), /* 1 */ /* 2094 */ NdrFcShort( 0x0 ), /* 0 */ /* 2096 */ NdrFcShort( 0x0 ), /* 0 */ /* 2098 */ NdrFcShort( 0x0 ), /* 0 */ + /* Parameter __MIDL__IPolicyStatusValue0003 */ + +/* 2100 */ NdrFcShort( 0x2113 ), /* Flags: must size, must free, out, simple ref, srv alloc size=8 */ +/* 2102 */ NdrFcShort( 0x8 ), /* X64 Stack size/offset = 8 */ +/* 2104 */ NdrFcShort( 0x24 ), /* Type Offset=36 */ + + /* Return value */ + +/* 2106 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ +/* 2108 */ NdrFcShort( 0x10 ), /* X64 Stack size/offset = 16 */ +/* 2110 */ 0x8, /* FC_LONG */ + 0x0, /* 0 */ + + /* Procedure get_lastCheckedTime */ + +/* 2112 */ 0x33, /* FC_AUTO_HANDLE */ + 0x6c, /* Old Flags: object, Oi2 */ +/* 2114 */ NdrFcLong( 0x0 ), /* 0 */ +/* 2118 */ NdrFcShort( 0x8 ), /* 8 */ +/* 2120 */ NdrFcShort( 0x18 ), /* X64 Stack size/offset = 24 */ +/* 2122 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2124 */ NdrFcShort( 0x2c ), /* 44 */ +/* 2126 */ 0x44, /* Oi2 Flags: has return, has ext, */ + 0x2, /* 2 */ +/* 2128 */ 0xa, /* 10 */ + 0x1, /* Ext Flags: new corr desc, */ +/* 2130 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2132 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2134 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2136 */ NdrFcShort( 0x0 ), /* 0 */ + + /* Parameter last_checked */ + +/* 2138 */ NdrFcShort( 0x2150 ), /* Flags: out, base type, simple ref, srv alloc size=8 */ +/* 2140 */ NdrFcShort( 0x8 ), /* X64 Stack size/offset = 8 */ +/* 2142 */ 0xc, /* FC_DOUBLE */ + 0x0, /* 0 */ + + /* Return value */ + +/* 2144 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ +/* 2146 */ NdrFcShort( 0x10 ), /* X64 Stack size/offset = 16 */ +/* 2148 */ 0x8, /* FC_LONG */ + 0x0, /* 0 */ + + /* Procedure get_lastCheckPeriodMinutes */ + +/* 2150 */ 0x33, /* FC_AUTO_HANDLE */ + 0x6c, /* Old Flags: object, Oi2 */ +/* 2152 */ NdrFcLong( 0x0 ), /* 0 */ +/* 2156 */ NdrFcShort( 0xa ), /* 10 */ +/* 2158 */ NdrFcShort( 0x18 ), /* X64 Stack size/offset = 24 */ +/* 2160 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2162 */ NdrFcShort( 0x8 ), /* 8 */ +/* 2164 */ 0x45, /* Oi2 Flags: srv must size, has return, has ext, */ + 0x2, /* 2 */ +/* 2166 */ 0xa, /* 10 */ + 0x1, /* Ext Flags: new corr desc, */ +/* 2168 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2170 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2172 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2174 */ NdrFcShort( 0x0 ), /* 0 */ + + /* Parameter value */ + +/* 2176 */ NdrFcShort( 0x13 ), /* Flags: must size, must free, out, */ +/* 2178 */ NdrFcShort( 0x8 ), /* X64 Stack size/offset = 8 */ +/* 2180 */ NdrFcShort( 0x41e ), /* Type Offset=1054 */ + + /* Return value */ + +/* 2182 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ +/* 2184 */ NdrFcShort( 0x10 ), /* X64 Stack size/offset = 16 */ +/* 2186 */ 0x8, /* FC_LONG */ + 0x0, /* 0 */ + + /* Procedure get_updatesSuppressedTimes */ + +/* 2188 */ 0x33, /* FC_AUTO_HANDLE */ + 0x6c, /* Old Flags: object, Oi2 */ +/* 2190 */ NdrFcLong( 0x0 ), /* 0 */ +/* 2194 */ NdrFcShort( 0xb ), /* 11 */ +/* 2196 */ NdrFcShort( 0x20 ), /* X64 Stack size/offset = 32 */ +/* 2198 */ NdrFcShort( 0x1a ), /* 26 */ +/* 2200 */ NdrFcShort( 0x8 ), /* 8 */ +/* 2202 */ 0x45, /* Oi2 Flags: srv must size, has return, has ext, */ + 0x3, /* 3 */ +/* 2204 */ 0xa, /* 10 */ + 0x1, /* Ext Flags: new corr desc, */ +/* 2206 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2208 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2210 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2212 */ NdrFcShort( 0x0 ), /* 0 */ + + /* Parameter value */ + +/* 2214 */ NdrFcShort( 0x13 ), /* Flags: must size, must free, out, */ +/* 2216 */ NdrFcShort( 0x8 ), /* X64 Stack size/offset = 8 */ +/* 2218 */ NdrFcShort( 0x41e ), /* Type Offset=1054 */ + + /* Parameter are_updates_suppressed */ + +/* 2220 */ NdrFcShort( 0x148 ), /* Flags: in, base type, simple ref, */ +/* 2222 */ NdrFcShort( 0x10 ), /* X64 Stack size/offset = 16 */ +/* 2224 */ 0x6, /* FC_SHORT */ + 0x0, /* 0 */ + + /* Return value */ + +/* 2226 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ +/* 2228 */ NdrFcShort( 0x18 ), /* X64 Stack size/offset = 24 */ +/* 2230 */ 0x8, /* FC_LONG */ + 0x0, /* 0 */ + + /* Procedure get_downloadPreferenceGroupPolicy */ + +/* 2232 */ 0x33, /* FC_AUTO_HANDLE */ + 0x6c, /* Old Flags: object, Oi2 */ +/* 2234 */ NdrFcLong( 0x0 ), /* 0 */ +/* 2238 */ NdrFcShort( 0xc ), /* 12 */ +/* 2240 */ NdrFcShort( 0x18 ), /* X64 Stack size/offset = 24 */ +/* 2242 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2244 */ NdrFcShort( 0x8 ), /* 8 */ +/* 2246 */ 0x45, /* Oi2 Flags: srv must size, has return, has ext, */ + 0x2, /* 2 */ +/* 2248 */ 0xa, /* 10 */ + 0x1, /* Ext Flags: new corr desc, */ +/* 2250 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2252 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2254 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2256 */ NdrFcShort( 0x0 ), /* 0 */ + + /* Parameter value */ + +/* 2258 */ NdrFcShort( 0x13 ), /* Flags: must size, must free, out, */ +/* 2260 */ NdrFcShort( 0x8 ), /* X64 Stack size/offset = 8 */ +/* 2262 */ NdrFcShort( 0x41e ), /* Type Offset=1054 */ + + /* Return value */ + +/* 2264 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ +/* 2266 */ NdrFcShort( 0x10 ), /* X64 Stack size/offset = 16 */ +/* 2268 */ 0x8, /* FC_LONG */ + 0x0, /* 0 */ + + /* Procedure get_packageCacheSizeLimitMBytes */ + +/* 2270 */ 0x33, /* FC_AUTO_HANDLE */ + 0x6c, /* Old Flags: object, Oi2 */ +/* 2272 */ NdrFcLong( 0x0 ), /* 0 */ +/* 2276 */ NdrFcShort( 0xd ), /* 13 */ +/* 2278 */ NdrFcShort( 0x18 ), /* X64 Stack size/offset = 24 */ +/* 2280 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2282 */ NdrFcShort( 0x8 ), /* 8 */ +/* 2284 */ 0x45, /* Oi2 Flags: srv must size, has return, has ext, */ + 0x2, /* 2 */ +/* 2286 */ 0xa, /* 10 */ + 0x1, /* Ext Flags: new corr desc, */ +/* 2288 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2290 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2292 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2294 */ NdrFcShort( 0x0 ), /* 0 */ + + /* Parameter value */ + +/* 2296 */ NdrFcShort( 0x13 ), /* Flags: must size, must free, out, */ +/* 2298 */ NdrFcShort( 0x8 ), /* X64 Stack size/offset = 8 */ +/* 2300 */ NdrFcShort( 0x41e ), /* Type Offset=1054 */ + + /* Return value */ + +/* 2302 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ +/* 2304 */ NdrFcShort( 0x10 ), /* X64 Stack size/offset = 16 */ +/* 2306 */ 0x8, /* FC_LONG */ + 0x0, /* 0 */ + + /* Procedure get_packageCacheExpirationTimeDays */ + +/* 2308 */ 0x33, /* FC_AUTO_HANDLE */ + 0x6c, /* Old Flags: object, Oi2 */ +/* 2310 */ NdrFcLong( 0x0 ), /* 0 */ +/* 2314 */ NdrFcShort( 0xe ), /* 14 */ +/* 2316 */ NdrFcShort( 0x18 ), /* X64 Stack size/offset = 24 */ +/* 2318 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2320 */ NdrFcShort( 0x8 ), /* 8 */ +/* 2322 */ 0x45, /* Oi2 Flags: srv must size, has return, has ext, */ + 0x2, /* 2 */ +/* 2324 */ 0xa, /* 10 */ + 0x1, /* Ext Flags: new corr desc, */ +/* 2326 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2328 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2330 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2332 */ NdrFcShort( 0x0 ), /* 0 */ + + /* Parameter value */ + +/* 2334 */ NdrFcShort( 0x13 ), /* Flags: must size, must free, out, */ +/* 2336 */ NdrFcShort( 0x8 ), /* X64 Stack size/offset = 8 */ +/* 2338 */ NdrFcShort( 0x41e ), /* Type Offset=1054 */ + + /* Return value */ + +/* 2340 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ +/* 2342 */ NdrFcShort( 0x10 ), /* X64 Stack size/offset = 16 */ +/* 2344 */ 0x8, /* FC_LONG */ + 0x0, /* 0 */ + + /* Procedure get_proxyMode */ + +/* 2346 */ 0x33, /* FC_AUTO_HANDLE */ + 0x6c, /* Old Flags: object, Oi2 */ +/* 2348 */ NdrFcLong( 0x0 ), /* 0 */ +/* 2352 */ NdrFcShort( 0xf ), /* 15 */ +/* 2354 */ NdrFcShort( 0x18 ), /* X64 Stack size/offset = 24 */ +/* 2356 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2358 */ NdrFcShort( 0x8 ), /* 8 */ +/* 2360 */ 0x45, /* Oi2 Flags: srv must size, has return, has ext, */ + 0x2, /* 2 */ +/* 2362 */ 0xa, /* 10 */ + 0x1, /* Ext Flags: new corr desc, */ +/* 2364 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2366 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2368 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2370 */ NdrFcShort( 0x0 ), /* 0 */ + + /* Parameter value */ + +/* 2372 */ NdrFcShort( 0x13 ), /* Flags: must size, must free, out, */ +/* 2374 */ NdrFcShort( 0x8 ), /* X64 Stack size/offset = 8 */ +/* 2376 */ NdrFcShort( 0x41e ), /* Type Offset=1054 */ + + /* Return value */ + +/* 2378 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ +/* 2380 */ NdrFcShort( 0x10 ), /* X64 Stack size/offset = 16 */ +/* 2382 */ 0x8, /* FC_LONG */ + 0x0, /* 0 */ + + /* Procedure get_proxyPacUrl */ + +/* 2384 */ 0x33, /* FC_AUTO_HANDLE */ + 0x6c, /* Old Flags: object, Oi2 */ +/* 2386 */ NdrFcLong( 0x0 ), /* 0 */ +/* 2390 */ NdrFcShort( 0x10 ), /* 16 */ +/* 2392 */ NdrFcShort( 0x18 ), /* X64 Stack size/offset = 24 */ +/* 2394 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2396 */ NdrFcShort( 0x8 ), /* 8 */ +/* 2398 */ 0x45, /* Oi2 Flags: srv must size, has return, has ext, */ + 0x2, /* 2 */ +/* 2400 */ 0xa, /* 10 */ + 0x1, /* Ext Flags: new corr desc, */ +/* 2402 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2404 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2406 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2408 */ NdrFcShort( 0x0 ), /* 0 */ + + /* Parameter value */ + +/* 2410 */ NdrFcShort( 0x13 ), /* Flags: must size, must free, out, */ +/* 2412 */ NdrFcShort( 0x8 ), /* X64 Stack size/offset = 8 */ +/* 2414 */ NdrFcShort( 0x41e ), /* Type Offset=1054 */ + + /* Return value */ + +/* 2416 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ +/* 2418 */ NdrFcShort( 0x10 ), /* X64 Stack size/offset = 16 */ +/* 2420 */ 0x8, /* FC_LONG */ + 0x0, /* 0 */ + + /* Procedure get_proxyServer */ + +/* 2422 */ 0x33, /* FC_AUTO_HANDLE */ + 0x6c, /* Old Flags: object, Oi2 */ +/* 2424 */ NdrFcLong( 0x0 ), /* 0 */ +/* 2428 */ NdrFcShort( 0x11 ), /* 17 */ +/* 2430 */ NdrFcShort( 0x18 ), /* X64 Stack size/offset = 24 */ +/* 2432 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2434 */ NdrFcShort( 0x8 ), /* 8 */ +/* 2436 */ 0x45, /* Oi2 Flags: srv must size, has return, has ext, */ + 0x2, /* 2 */ +/* 2438 */ 0xa, /* 10 */ + 0x1, /* Ext Flags: new corr desc, */ +/* 2440 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2442 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2444 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2446 */ NdrFcShort( 0x0 ), /* 0 */ + + /* Parameter value */ + +/* 2448 */ NdrFcShort( 0x13 ), /* Flags: must size, must free, out, */ +/* 2450 */ NdrFcShort( 0x8 ), /* X64 Stack size/offset = 8 */ +/* 2452 */ NdrFcShort( 0x41e ), /* Type Offset=1054 */ + + /* Return value */ + +/* 2454 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ +/* 2456 */ NdrFcShort( 0x10 ), /* X64 Stack size/offset = 16 */ +/* 2458 */ 0x8, /* FC_LONG */ + 0x0, /* 0 */ + + /* Procedure get_effectivePolicyForAppInstalls */ + +/* 2460 */ 0x33, /* FC_AUTO_HANDLE */ + 0x6c, /* Old Flags: object, Oi2 */ +/* 2462 */ NdrFcLong( 0x0 ), /* 0 */ +/* 2466 */ NdrFcShort( 0x12 ), /* 18 */ +/* 2468 */ NdrFcShort( 0x20 ), /* X64 Stack size/offset = 32 */ +/* 2470 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2472 */ NdrFcShort( 0x8 ), /* 8 */ +/* 2474 */ 0x47, /* Oi2 Flags: srv must size, clt must size, has return, has ext, */ + 0x3, /* 3 */ +/* 2476 */ 0xa, /* 10 */ + 0x5, /* Ext Flags: new corr desc, srv corr check, */ +/* 2478 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2480 */ NdrFcShort( 0x1 ), /* 1 */ +/* 2482 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2484 */ NdrFcShort( 0x0 ), /* 0 */ + + /* Parameter app_id */ + +/* 2486 */ NdrFcShort( 0x8b ), /* Flags: must size, must free, in, by val, */ +/* 2488 */ NdrFcShort( 0x8 ), /* X64 Stack size/offset = 8 */ +/* 2490 */ NdrFcShort( 0x50 ), /* Type Offset=80 */ + + /* Parameter value */ + +/* 2492 */ NdrFcShort( 0x13 ), /* Flags: must size, must free, out, */ +/* 2494 */ NdrFcShort( 0x10 ), /* X64 Stack size/offset = 16 */ +/* 2496 */ NdrFcShort( 0x41e ), /* Type Offset=1054 */ + + /* Return value */ + +/* 2498 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ +/* 2500 */ NdrFcShort( 0x18 ), /* X64 Stack size/offset = 24 */ +/* 2502 */ 0x8, /* FC_LONG */ + 0x0, /* 0 */ + + /* Procedure get_effectivePolicyForAppUpdates */ + +/* 2504 */ 0x33, /* FC_AUTO_HANDLE */ + 0x6c, /* Old Flags: object, Oi2 */ +/* 2506 */ NdrFcLong( 0x0 ), /* 0 */ +/* 2510 */ NdrFcShort( 0x13 ), /* 19 */ +/* 2512 */ NdrFcShort( 0x20 ), /* X64 Stack size/offset = 32 */ +/* 2514 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2516 */ NdrFcShort( 0x8 ), /* 8 */ +/* 2518 */ 0x47, /* Oi2 Flags: srv must size, clt must size, has return, has ext, */ + 0x3, /* 3 */ +/* 2520 */ 0xa, /* 10 */ + 0x5, /* Ext Flags: new corr desc, srv corr check, */ +/* 2522 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2524 */ NdrFcShort( 0x1 ), /* 1 */ +/* 2526 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2528 */ NdrFcShort( 0x0 ), /* 0 */ + + /* Parameter app_id */ + +/* 2530 */ NdrFcShort( 0x8b ), /* Flags: must size, must free, in, by val, */ +/* 2532 */ NdrFcShort( 0x8 ), /* X64 Stack size/offset = 8 */ +/* 2534 */ NdrFcShort( 0x50 ), /* Type Offset=80 */ + + /* Parameter value */ + +/* 2536 */ NdrFcShort( 0x13 ), /* Flags: must size, must free, out, */ +/* 2538 */ NdrFcShort( 0x10 ), /* X64 Stack size/offset = 16 */ +/* 2540 */ NdrFcShort( 0x41e ), /* Type Offset=1054 */ + + /* Return value */ + +/* 2542 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ +/* 2544 */ NdrFcShort( 0x18 ), /* X64 Stack size/offset = 24 */ +/* 2546 */ 0x8, /* FC_LONG */ + 0x0, /* 0 */ + + /* Procedure get_targetVersionPrefix */ + +/* 2548 */ 0x33, /* FC_AUTO_HANDLE */ + 0x6c, /* Old Flags: object, Oi2 */ +/* 2550 */ NdrFcLong( 0x0 ), /* 0 */ +/* 2554 */ NdrFcShort( 0x14 ), /* 20 */ +/* 2556 */ NdrFcShort( 0x20 ), /* X64 Stack size/offset = 32 */ +/* 2558 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2560 */ NdrFcShort( 0x8 ), /* 8 */ +/* 2562 */ 0x47, /* Oi2 Flags: srv must size, clt must size, has return, has ext, */ + 0x3, /* 3 */ +/* 2564 */ 0xa, /* 10 */ + 0x5, /* Ext Flags: new corr desc, srv corr check, */ +/* 2566 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2568 */ NdrFcShort( 0x1 ), /* 1 */ +/* 2570 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2572 */ NdrFcShort( 0x0 ), /* 0 */ + + /* Parameter app_id */ + +/* 2574 */ NdrFcShort( 0x8b ), /* Flags: must size, must free, in, by val, */ +/* 2576 */ NdrFcShort( 0x8 ), /* X64 Stack size/offset = 8 */ +/* 2578 */ NdrFcShort( 0x50 ), /* Type Offset=80 */ + + /* Parameter value */ + +/* 2580 */ NdrFcShort( 0x13 ), /* Flags: must size, must free, out, */ +/* 2582 */ NdrFcShort( 0x10 ), /* X64 Stack size/offset = 16 */ +/* 2584 */ NdrFcShort( 0x41e ), /* Type Offset=1054 */ + + /* Return value */ + +/* 2586 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ +/* 2588 */ NdrFcShort( 0x18 ), /* X64 Stack size/offset = 24 */ +/* 2590 */ 0x8, /* FC_LONG */ + 0x0, /* 0 */ + + /* Procedure get_isRollbackToTargetVersionAllowed */ + +/* 2592 */ 0x33, /* FC_AUTO_HANDLE */ + 0x6c, /* Old Flags: object, Oi2 */ +/* 2594 */ NdrFcLong( 0x0 ), /* 0 */ +/* 2598 */ NdrFcShort( 0x15 ), /* 21 */ +/* 2600 */ NdrFcShort( 0x20 ), /* X64 Stack size/offset = 32 */ +/* 2602 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2604 */ NdrFcShort( 0x8 ), /* 8 */ +/* 2606 */ 0x47, /* Oi2 Flags: srv must size, clt must size, has return, has ext, */ + 0x3, /* 3 */ +/* 2608 */ 0xa, /* 10 */ + 0x5, /* Ext Flags: new corr desc, srv corr check, */ +/* 2610 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2612 */ NdrFcShort( 0x1 ), /* 1 */ +/* 2614 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2616 */ NdrFcShort( 0x0 ), /* 0 */ + + /* Parameter app_id */ + +/* 2618 */ NdrFcShort( 0x8b ), /* Flags: must size, must free, in, by val, */ +/* 2620 */ NdrFcShort( 0x8 ), /* X64 Stack size/offset = 8 */ +/* 2622 */ NdrFcShort( 0x50 ), /* Type Offset=80 */ + + /* Parameter value */ + +/* 2624 */ NdrFcShort( 0x13 ), /* Flags: must size, must free, out, */ +/* 2626 */ NdrFcShort( 0x10 ), /* X64 Stack size/offset = 16 */ +/* 2628 */ NdrFcShort( 0x41e ), /* Type Offset=1054 */ + + /* Return value */ + +/* 2630 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ +/* 2632 */ NdrFcShort( 0x18 ), /* X64 Stack size/offset = 24 */ +/* 2634 */ 0x8, /* FC_LONG */ + 0x0, /* 0 */ + + /* Procedure get_targetChannel */ + +/* 2636 */ 0x33, /* FC_AUTO_HANDLE */ + 0x6c, /* Old Flags: object, Oi2 */ +/* 2638 */ NdrFcLong( 0x0 ), /* 0 */ +/* 2642 */ NdrFcShort( 0x16 ), /* 22 */ +/* 2644 */ NdrFcShort( 0x20 ), /* X64 Stack size/offset = 32 */ +/* 2646 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2648 */ NdrFcShort( 0x8 ), /* 8 */ +/* 2650 */ 0x47, /* Oi2 Flags: srv must size, clt must size, has return, has ext, */ + 0x3, /* 3 */ +/* 2652 */ 0xa, /* 10 */ + 0x5, /* Ext Flags: new corr desc, srv corr check, */ +/* 2654 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2656 */ NdrFcShort( 0x1 ), /* 1 */ +/* 2658 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2660 */ NdrFcShort( 0x0 ), /* 0 */ + + /* Parameter app_id */ + +/* 2662 */ NdrFcShort( 0x8b ), /* Flags: must size, must free, in, by val, */ +/* 2664 */ NdrFcShort( 0x8 ), /* X64 Stack size/offset = 8 */ +/* 2666 */ NdrFcShort( 0x50 ), /* Type Offset=80 */ + + /* Parameter value */ + +/* 2668 */ NdrFcShort( 0x13 ), /* Flags: must size, must free, out, */ +/* 2670 */ NdrFcShort( 0x10 ), /* X64 Stack size/offset = 16 */ +/* 2672 */ NdrFcShort( 0x41e ), /* Type Offset=1054 */ + + /* Return value */ + +/* 2674 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ +/* 2676 */ NdrFcShort( 0x18 ), /* X64 Stack size/offset = 24 */ +/* 2678 */ 0x8, /* FC_LONG */ + 0x0, /* 0 */ + + /* Procedure get_forceInstallApps */ + +/* 2680 */ 0x33, /* FC_AUTO_HANDLE */ + 0x6c, /* Old Flags: object, Oi2 */ +/* 2682 */ NdrFcLong( 0x0 ), /* 0 */ +/* 2686 */ NdrFcShort( 0x17 ), /* 23 */ +/* 2688 */ NdrFcShort( 0x20 ), /* X64 Stack size/offset = 32 */ +/* 2690 */ NdrFcShort( 0x6 ), /* 6 */ +/* 2692 */ NdrFcShort( 0x8 ), /* 8 */ +/* 2694 */ 0x45, /* Oi2 Flags: srv must size, has return, has ext, */ + 0x3, /* 3 */ +/* 2696 */ 0xa, /* 10 */ + 0x1, /* Ext Flags: new corr desc, */ +/* 2698 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2700 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2702 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2704 */ NdrFcShort( 0x0 ), /* 0 */ + + /* Parameter is_machine */ + +/* 2706 */ NdrFcShort( 0x48 ), /* Flags: in, base type, */ +/* 2708 */ NdrFcShort( 0x8 ), /* X64 Stack size/offset = 8 */ +/* 2710 */ 0x6, /* FC_SHORT */ + 0x0, /* 0 */ + + /* Parameter value */ + +/* 2712 */ NdrFcShort( 0x13 ), /* Flags: must size, must free, out, */ +/* 2714 */ NdrFcShort( 0x10 ), /* X64 Stack size/offset = 16 */ +/* 2716 */ NdrFcShort( 0x41e ), /* Type Offset=1054 */ + + /* Return value */ + +/* 2718 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ +/* 2720 */ NdrFcShort( 0x18 ), /* X64 Stack size/offset = 24 */ +/* 2722 */ 0x8, /* FC_LONG */ + 0x0, /* 0 */ + + /* Procedure LaunchCmdLine */ + +/* 2724 */ 0x33, /* FC_AUTO_HANDLE */ + 0x6c, /* Old Flags: object, Oi2 */ +/* 2726 */ NdrFcLong( 0x0 ), /* 0 */ +/* 2730 */ NdrFcShort( 0x3 ), /* 3 */ +/* 2732 */ NdrFcShort( 0x18 ), /* X64 Stack size/offset = 24 */ +/* 2734 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2736 */ NdrFcShort( 0x8 ), /* 8 */ +/* 2738 */ 0x46, /* Oi2 Flags: clt must size, has return, has ext, */ + 0x2, /* 2 */ +/* 2740 */ 0xa, /* 10 */ + 0x1, /* Ext Flags: new corr desc, */ +/* 2742 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2744 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2746 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2748 */ NdrFcShort( 0x0 ), /* 0 */ + + /* Parameter cmd_line */ + +/* 2750 */ NdrFcShort( 0x10b ), /* Flags: must size, must free, in, simple ref, */ +/* 2752 */ NdrFcShort( 0x8 ), /* X64 Stack size/offset = 8 */ +/* 2754 */ NdrFcShort( 0x43a ), /* Type Offset=1082 */ + + /* Return value */ + +/* 2756 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ +/* 2758 */ NdrFcShort( 0x10 ), /* X64 Stack size/offset = 16 */ +/* 2760 */ 0x8, /* FC_LONG */ + 0x0, /* 0 */ + + /* Procedure LaunchBrowser */ + +/* 2762 */ 0x33, /* FC_AUTO_HANDLE */ + 0x6c, /* Old Flags: object, Oi2 */ +/* 2764 */ NdrFcLong( 0x0 ), /* 0 */ +/* 2768 */ NdrFcShort( 0x4 ), /* 4 */ +/* 2770 */ NdrFcShort( 0x20 ), /* X64 Stack size/offset = 32 */ +/* 2772 */ NdrFcShort( 0x8 ), /* 8 */ +/* 2774 */ NdrFcShort( 0x8 ), /* 8 */ +/* 2776 */ 0x46, /* Oi2 Flags: clt must size, has return, has ext, */ + 0x3, /* 3 */ +/* 2778 */ 0xa, /* 10 */ + 0x1, /* Ext Flags: new corr desc, */ +/* 2780 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2782 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2784 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2786 */ NdrFcShort( 0x0 ), /* 0 */ + /* Parameter browser_type */ -/* 2100 */ NdrFcShort( 0x48 ), /* Flags: in, base type, */ -/* 2102 */ NdrFcShort( 0x8 ), /* X64 Stack size/offset = 8 */ -/* 2104 */ 0x8, /* FC_LONG */ +/* 2788 */ NdrFcShort( 0x48 ), /* Flags: in, base type, */ +/* 2790 */ NdrFcShort( 0x8 ), /* X64 Stack size/offset = 8 */ +/* 2792 */ 0x8, /* FC_LONG */ 0x0, /* 0 */ /* Parameter url */ -/* 2106 */ NdrFcShort( 0x10b ), /* Flags: must size, must free, in, simple ref, */ -/* 2108 */ NdrFcShort( 0x10 ), /* X64 Stack size/offset = 16 */ -/* 2110 */ NdrFcShort( 0x41c ), /* Type Offset=1052 */ +/* 2794 */ NdrFcShort( 0x10b ), /* Flags: must size, must free, in, simple ref, */ +/* 2796 */ NdrFcShort( 0x10 ), /* X64 Stack size/offset = 16 */ +/* 2798 */ NdrFcShort( 0x43a ), /* Type Offset=1082 */ /* Return value */ -/* 2112 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ -/* 2114 */ NdrFcShort( 0x18 ), /* X64 Stack size/offset = 24 */ -/* 2116 */ 0x8, /* FC_LONG */ +/* 2800 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ +/* 2802 */ NdrFcShort( 0x18 ), /* X64 Stack size/offset = 24 */ +/* 2804 */ 0x8, /* FC_LONG */ 0x0, /* 0 */ /* Procedure LaunchCmdElevated */ -/* 2118 */ 0x33, /* FC_AUTO_HANDLE */ +/* 2806 */ 0x33, /* FC_AUTO_HANDLE */ 0x6c, /* Old Flags: object, Oi2 */ -/* 2120 */ NdrFcLong( 0x0 ), /* 0 */ -/* 2124 */ NdrFcShort( 0x5 ), /* 5 */ -/* 2126 */ NdrFcShort( 0x30 ), /* X64 Stack size/offset = 48 */ -/* 2128 */ NdrFcShort( 0x8 ), /* 8 */ -/* 2130 */ NdrFcShort( 0x24 ), /* 36 */ -/* 2132 */ 0x46, /* Oi2 Flags: clt must size, has return, has ext, */ +/* 2808 */ NdrFcLong( 0x0 ), /* 0 */ +/* 2812 */ NdrFcShort( 0x5 ), /* 5 */ +/* 2814 */ NdrFcShort( 0x30 ), /* X64 Stack size/offset = 48 */ +/* 2816 */ NdrFcShort( 0x8 ), /* 8 */ +/* 2818 */ NdrFcShort( 0x24 ), /* 36 */ +/* 2820 */ 0x46, /* Oi2 Flags: clt must size, has return, has ext, */ 0x5, /* 5 */ -/* 2134 */ 0xa, /* 10 */ +/* 2822 */ 0xa, /* 10 */ 0x1, /* Ext Flags: new corr desc, */ -/* 2136 */ NdrFcShort( 0x0 ), /* 0 */ -/* 2138 */ NdrFcShort( 0x0 ), /* 0 */ -/* 2140 */ NdrFcShort( 0x0 ), /* 0 */ -/* 2142 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2824 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2826 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2828 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2830 */ NdrFcShort( 0x0 ), /* 0 */ /* Parameter app_guid */ -/* 2144 */ NdrFcShort( 0x10b ), /* Flags: must size, must free, in, simple ref, */ -/* 2146 */ NdrFcShort( 0x8 ), /* X64 Stack size/offset = 8 */ -/* 2148 */ NdrFcShort( 0x41c ), /* Type Offset=1052 */ +/* 2832 */ NdrFcShort( 0x10b ), /* Flags: must size, must free, in, simple ref, */ +/* 2834 */ NdrFcShort( 0x8 ), /* X64 Stack size/offset = 8 */ +/* 2836 */ NdrFcShort( 0x43a ), /* Type Offset=1082 */ /* Parameter cmd_id */ -/* 2150 */ NdrFcShort( 0x10b ), /* Flags: must size, must free, in, simple ref, */ -/* 2152 */ NdrFcShort( 0x10 ), /* X64 Stack size/offset = 16 */ -/* 2154 */ NdrFcShort( 0x41c ), /* Type Offset=1052 */ +/* 2838 */ NdrFcShort( 0x10b ), /* Flags: must size, must free, in, simple ref, */ +/* 2840 */ NdrFcShort( 0x10 ), /* X64 Stack size/offset = 16 */ +/* 2842 */ NdrFcShort( 0x43a ), /* Type Offset=1082 */ /* Parameter caller_proc_id */ -/* 2156 */ NdrFcShort( 0x48 ), /* Flags: in, base type, */ -/* 2158 */ NdrFcShort( 0x18 ), /* X64 Stack size/offset = 24 */ -/* 2160 */ 0x8, /* FC_LONG */ +/* 2844 */ NdrFcShort( 0x48 ), /* Flags: in, base type, */ +/* 2846 */ NdrFcShort( 0x18 ), /* X64 Stack size/offset = 24 */ +/* 2848 */ 0x8, /* FC_LONG */ 0x0, /* 0 */ /* Parameter proc_handle */ -/* 2162 */ NdrFcShort( 0x2150 ), /* Flags: out, base type, simple ref, srv alloc size=8 */ -/* 2164 */ NdrFcShort( 0x20 ), /* X64 Stack size/offset = 32 */ -/* 2166 */ 0xb9, /* FC_UINT3264 */ +/* 2850 */ NdrFcShort( 0x2150 ), /* Flags: out, base type, simple ref, srv alloc size=8 */ +/* 2852 */ NdrFcShort( 0x20 ), /* X64 Stack size/offset = 32 */ +/* 2854 */ 0xb9, /* FC_UINT3264 */ 0x0, /* 0 */ /* Return value */ -/* 2168 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ -/* 2170 */ NdrFcShort( 0x28 ), /* X64 Stack size/offset = 40 */ -/* 2172 */ 0x8, /* FC_LONG */ +/* 2856 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ +/* 2858 */ NdrFcShort( 0x28 ), /* X64 Stack size/offset = 40 */ +/* 2860 */ 0x8, /* FC_LONG */ 0x0, /* 0 */ /* Procedure LaunchCmdLineEx */ -/* 2174 */ 0x33, /* FC_AUTO_HANDLE */ +/* 2862 */ 0x33, /* FC_AUTO_HANDLE */ 0x6c, /* Old Flags: object, Oi2 */ -/* 2176 */ NdrFcLong( 0x0 ), /* 0 */ -/* 2180 */ NdrFcShort( 0x6 ), /* 6 */ -/* 2182 */ NdrFcShort( 0x30 ), /* X64 Stack size/offset = 48 */ -/* 2184 */ NdrFcShort( 0x0 ), /* 0 */ -/* 2186 */ NdrFcShort( 0x5c ), /* 92 */ -/* 2188 */ 0x46, /* Oi2 Flags: clt must size, has return, has ext, */ +/* 2864 */ NdrFcLong( 0x0 ), /* 0 */ +/* 2868 */ NdrFcShort( 0x6 ), /* 6 */ +/* 2870 */ NdrFcShort( 0x30 ), /* X64 Stack size/offset = 48 */ +/* 2872 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2874 */ NdrFcShort( 0x5c ), /* 92 */ +/* 2876 */ 0x46, /* Oi2 Flags: clt must size, has return, has ext, */ 0x5, /* 5 */ -/* 2190 */ 0xa, /* 10 */ +/* 2878 */ 0xa, /* 10 */ 0x1, /* Ext Flags: new corr desc, */ -/* 2192 */ NdrFcShort( 0x0 ), /* 0 */ -/* 2194 */ NdrFcShort( 0x0 ), /* 0 */ -/* 2196 */ NdrFcShort( 0x0 ), /* 0 */ -/* 2198 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2880 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2882 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2884 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2886 */ NdrFcShort( 0x0 ), /* 0 */ /* Parameter cmd_line */ -/* 2200 */ NdrFcShort( 0x10b ), /* Flags: must size, must free, in, simple ref, */ -/* 2202 */ NdrFcShort( 0x8 ), /* X64 Stack size/offset = 8 */ -/* 2204 */ NdrFcShort( 0x41c ), /* Type Offset=1052 */ +/* 2888 */ NdrFcShort( 0x10b ), /* Flags: must size, must free, in, simple ref, */ +/* 2890 */ NdrFcShort( 0x8 ), /* X64 Stack size/offset = 8 */ +/* 2892 */ NdrFcShort( 0x43a ), /* Type Offset=1082 */ /* Parameter server_proc_id */ -/* 2206 */ NdrFcShort( 0x2150 ), /* Flags: out, base type, simple ref, srv alloc size=8 */ -/* 2208 */ NdrFcShort( 0x10 ), /* X64 Stack size/offset = 16 */ -/* 2210 */ 0x8, /* FC_LONG */ +/* 2894 */ NdrFcShort( 0x2150 ), /* Flags: out, base type, simple ref, srv alloc size=8 */ +/* 2896 */ NdrFcShort( 0x10 ), /* X64 Stack size/offset = 16 */ +/* 2898 */ 0x8, /* FC_LONG */ 0x0, /* 0 */ /* Parameter proc_handle */ -/* 2212 */ NdrFcShort( 0x2150 ), /* Flags: out, base type, simple ref, srv alloc size=8 */ -/* 2214 */ NdrFcShort( 0x18 ), /* X64 Stack size/offset = 24 */ -/* 2216 */ 0xb9, /* FC_UINT3264 */ +/* 2900 */ NdrFcShort( 0x2150 ), /* Flags: out, base type, simple ref, srv alloc size=8 */ +/* 2902 */ NdrFcShort( 0x18 ), /* X64 Stack size/offset = 24 */ +/* 2904 */ 0xb9, /* FC_UINT3264 */ 0x0, /* 0 */ /* Parameter stdout_handle */ -/* 2218 */ NdrFcShort( 0x2150 ), /* Flags: out, base type, simple ref, srv alloc size=8 */ -/* 2220 */ NdrFcShort( 0x20 ), /* X64 Stack size/offset = 32 */ -/* 2222 */ 0xb9, /* FC_UINT3264 */ +/* 2906 */ NdrFcShort( 0x2150 ), /* Flags: out, base type, simple ref, srv alloc size=8 */ +/* 2908 */ NdrFcShort( 0x20 ), /* X64 Stack size/offset = 32 */ +/* 2910 */ 0xb9, /* FC_UINT3264 */ 0x0, /* 0 */ /* Return value */ -/* 2224 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ -/* 2226 */ NdrFcShort( 0x28 ), /* X64 Stack size/offset = 40 */ -/* 2228 */ 0x8, /* FC_LONG */ +/* 2912 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ +/* 2914 */ NdrFcShort( 0x28 ), /* X64 Stack size/offset = 40 */ +/* 2916 */ 0x8, /* FC_LONG */ 0x0, /* 0 */ 0x0 @@ -2803,13 +3439,38 @@ /* 1046 */ NdrFcShort( 0x0 ), /* 0 */ /* 1048 */ NdrFcShort( 0xfff4 ), /* Offset= -12 (1036) */ /* 1050 */ - 0x11, 0x8, /* FC_RP [simple_pointer] */ -/* 1052 */ - 0x25, /* FC_C_WSTRING */ + 0x11, 0xc, /* FC_RP [alloced_on_stack] [simple_pointer] */ +/* 1052 */ 0xc, /* FC_DOUBLE */ 0x5c, /* FC_PAD */ /* 1054 */ + 0x11, 0x10, /* FC_RP [pointer_deref] */ +/* 1056 */ NdrFcShort( 0x2 ), /* Offset= 2 (1058) */ +/* 1058 */ + 0x2f, /* FC_IP */ + 0x5a, /* FC_CONSTANT_IID */ +/* 1060 */ NdrFcLong( 0x27634814 ), /* 660817940 */ +/* 1064 */ NdrFcShort( 0x8e41 ), /* -29119 */ +/* 1066 */ NdrFcShort( 0x4c35 ), /* 19509 */ +/* 1068 */ 0x85, /* 133 */ + 0x77, /* 119 */ +/* 1070 */ 0x98, /* 152 */ + 0x1, /* 1 */ +/* 1072 */ 0x34, /* 52 */ + 0xa9, /* 169 */ +/* 1074 */ 0x65, /* 101 */ + 0x44, /* 68 */ +/* 1076 */ + 0x11, 0x8, /* FC_RP [simple_pointer] */ +/* 1078 */ 0x6, /* FC_SHORT */ + 0x5c, /* FC_PAD */ +/* 1080 */ + 0x11, 0x8, /* FC_RP [simple_pointer] */ +/* 1082 */ + 0x25, /* FC_C_WSTRING */ + 0x5c, /* FC_PAD */ +/* 1084 */ 0x11, 0xc, /* FC_RP [alloced_on_stack] [simple_pointer] */ -/* 1056 */ 0xb9, /* FC_UINT3264 */ +/* 1086 */ 0xb9, /* FC_UINT3264 */ 0x5c, /* FC_PAD */ 0x0 @@ -3419,15 +4080,324 @@ }; +/* Object interface: IPolicyStatusValue, ver. 0.0, + GUID={0x27634814,0x8E41,0x4C35,{0x85,0x77,0x98,0x01,0x34,0xA9,0x65,0x44}} */ + +#pragma code_seg(".orpc") +static const unsigned short IPolicyStatusValue_FormatStringOffsetTable[] = + { + (unsigned short) -1, + (unsigned short) -1, + (unsigned short) -1, + (unsigned short) -1, + 1274, + 38, + 2036, + 810, + 2074 + }; + +static const MIDL_STUBLESS_PROXY_INFO IPolicyStatusValue_ProxyInfo = + { + &Object_StubDesc, + updater_legacy_idl__MIDL_ProcFormatString.Format, + &IPolicyStatusValue_FormatStringOffsetTable[-3], + 0, + 0, + 0 + }; + + +static const MIDL_SERVER_INFO IPolicyStatusValue_ServerInfo = + { + &Object_StubDesc, + 0, + updater_legacy_idl__MIDL_ProcFormatString.Format, + &IPolicyStatusValue_FormatStringOffsetTable[-3], + 0, + 0, + 0, + 0}; +CINTERFACE_PROXY_VTABLE(12) _IPolicyStatusValueProxyVtbl = +{ + &IPolicyStatusValue_ProxyInfo, + &IID_IPolicyStatusValue, + IUnknown_QueryInterface_Proxy, + IUnknown_AddRef_Proxy, + IUnknown_Release_Proxy , + 0 /* IDispatch::GetTypeInfoCount */ , + 0 /* IDispatch::GetTypeInfo */ , + 0 /* IDispatch::GetIDsOfNames */ , + 0 /* IDispatch_Invoke_Proxy */ , + (void *) (INT_PTR) -1 /* IPolicyStatusValue::get_source */ , + (void *) (INT_PTR) -1 /* IPolicyStatusValue::get_value */ , + (void *) (INT_PTR) -1 /* IPolicyStatusValue::get_hasConflict */ , + (void *) (INT_PTR) -1 /* IPolicyStatusValue::get_conflictSource */ , + (void *) (INT_PTR) -1 /* IPolicyStatusValue::get_conflictValue */ +}; + + +static const PRPC_STUB_FUNCTION IPolicyStatusValue_table[] = +{ + STUB_FORWARDING_FUNCTION, + STUB_FORWARDING_FUNCTION, + STUB_FORWARDING_FUNCTION, + STUB_FORWARDING_FUNCTION, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2 +}; + +CInterfaceStubVtbl _IPolicyStatusValueStubVtbl = +{ + &IID_IPolicyStatusValue, + &IPolicyStatusValue_ServerInfo, + 12, + &IPolicyStatusValue_table[-3], + CStdStubBuffer_DELEGATING_METHODS +}; + + +/* Object interface: IPolicyStatus2, ver. 0.0, + GUID={0x34527502,0xD3DB,0x4205,{0xA6,0x9B,0x78,0x9B,0x27,0xEE,0x04,0x14}} */ + +#pragma code_seg(".orpc") +static const unsigned short IPolicyStatus2_FormatStringOffsetTable[] = + { + (unsigned short) -1, + (unsigned short) -1, + (unsigned short) -1, + (unsigned short) -1, + 1274, + 2112, + 778, + 2150, + 2188, + 2232, + 2270, + 2308, + 2346, + 2384, + 2422, + 2460, + 2504, + 2548, + 2592, + 2636 + }; + +static const MIDL_STUBLESS_PROXY_INFO IPolicyStatus2_ProxyInfo = + { + &Object_StubDesc, + updater_legacy_idl__MIDL_ProcFormatString.Format, + &IPolicyStatus2_FormatStringOffsetTable[-3], + 0, + 0, + 0 + }; + + +static const MIDL_SERVER_INFO IPolicyStatus2_ServerInfo = + { + &Object_StubDesc, + 0, + updater_legacy_idl__MIDL_ProcFormatString.Format, + &IPolicyStatus2_FormatStringOffsetTable[-3], + 0, + 0, + 0, + 0}; +CINTERFACE_PROXY_VTABLE(23) _IPolicyStatus2ProxyVtbl = +{ + &IPolicyStatus2_ProxyInfo, + &IID_IPolicyStatus2, + IUnknown_QueryInterface_Proxy, + IUnknown_AddRef_Proxy, + IUnknown_Release_Proxy , + 0 /* IDispatch::GetTypeInfoCount */ , + 0 /* IDispatch::GetTypeInfo */ , + 0 /* IDispatch::GetIDsOfNames */ , + 0 /* IDispatch_Invoke_Proxy */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_updaterVersion */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_lastCheckedTime */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::refreshPolicies */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_lastCheckPeriodMinutes */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_updatesSuppressedTimes */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_downloadPreferenceGroupPolicy */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_packageCacheSizeLimitMBytes */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_packageCacheExpirationTimeDays */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_proxyMode */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_proxyPacUrl */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_proxyServer */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_effectivePolicyForAppInstalls */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_effectivePolicyForAppUpdates */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_targetVersionPrefix */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_isRollbackToTargetVersionAllowed */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_targetChannel */ +}; + + +static const PRPC_STUB_FUNCTION IPolicyStatus2_table[] = +{ + STUB_FORWARDING_FUNCTION, + STUB_FORWARDING_FUNCTION, + STUB_FORWARDING_FUNCTION, + STUB_FORWARDING_FUNCTION, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2 +}; + +CInterfaceStubVtbl _IPolicyStatus2StubVtbl = +{ + &IID_IPolicyStatus2, + &IPolicyStatus2_ServerInfo, + 23, + &IPolicyStatus2_table[-3], + CStdStubBuffer_DELEGATING_METHODS +}; + + +/* Object interface: IPolicyStatus3, ver. 0.0, + GUID={0x05A30352,0xEB25,0x45B6,{0x84,0x49,0xBC,0xA7,0xB0,0x54,0x2C,0xE5}} */ + +#pragma code_seg(".orpc") +static const unsigned short IPolicyStatus3_FormatStringOffsetTable[] = + { + (unsigned short) -1, + (unsigned short) -1, + (unsigned short) -1, + (unsigned short) -1, + 1274, + 2112, + 778, + 2150, + 2188, + 2232, + 2270, + 2308, + 2346, + 2384, + 2422, + 2460, + 2504, + 2548, + 2592, + 2636, + 2680 + }; + +static const MIDL_STUBLESS_PROXY_INFO IPolicyStatus3_ProxyInfo = + { + &Object_StubDesc, + updater_legacy_idl__MIDL_ProcFormatString.Format, + &IPolicyStatus3_FormatStringOffsetTable[-3], + 0, + 0, + 0 + }; + + +static const MIDL_SERVER_INFO IPolicyStatus3_ServerInfo = + { + &Object_StubDesc, + 0, + updater_legacy_idl__MIDL_ProcFormatString.Format, + &IPolicyStatus3_FormatStringOffsetTable[-3], + 0, + 0, + 0, + 0}; +CINTERFACE_PROXY_VTABLE(24) _IPolicyStatus3ProxyVtbl = +{ + &IPolicyStatus3_ProxyInfo, + &IID_IPolicyStatus3, + IUnknown_QueryInterface_Proxy, + IUnknown_AddRef_Proxy, + IUnknown_Release_Proxy , + 0 /* IDispatch::GetTypeInfoCount */ , + 0 /* IDispatch::GetTypeInfo */ , + 0 /* IDispatch::GetIDsOfNames */ , + 0 /* IDispatch_Invoke_Proxy */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_updaterVersion */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_lastCheckedTime */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::refreshPolicies */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_lastCheckPeriodMinutes */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_updatesSuppressedTimes */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_downloadPreferenceGroupPolicy */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_packageCacheSizeLimitMBytes */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_packageCacheExpirationTimeDays */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_proxyMode */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_proxyPacUrl */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_proxyServer */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_effectivePolicyForAppInstalls */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_effectivePolicyForAppUpdates */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_targetVersionPrefix */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_isRollbackToTargetVersionAllowed */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_targetChannel */ , + (void *) (INT_PTR) -1 /* IPolicyStatus3::get_forceInstallApps */ +}; + + +static const PRPC_STUB_FUNCTION IPolicyStatus3_table[] = +{ + STUB_FORWARDING_FUNCTION, + STUB_FORWARDING_FUNCTION, + STUB_FORWARDING_FUNCTION, + STUB_FORWARDING_FUNCTION, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2 +}; + +CInterfaceStubVtbl _IPolicyStatus3StubVtbl = +{ + &IID_IPolicyStatus3, + &IPolicyStatus3_ServerInfo, + 24, + &IPolicyStatus3_table[-3], + CStdStubBuffer_DELEGATING_METHODS +}; + + /* Object interface: IProcessLauncher, ver. 0.0, GUID={0x128C2DA6,0x2BC0,0x44c0,{0xB3,0xF6,0x4E,0xC2,0x2E,0x64,0x79,0x64}} */ #pragma code_seg(".orpc") static const unsigned short IProcessLauncher_FormatStringOffsetTable[] = { - 2036, - 2074, - 2118 + 2724, + 2762, + 2806 }; static const MIDL_STUBLESS_PROXY_INFO IProcessLauncher_ProxyInfo = @@ -3479,10 +4449,10 @@ #pragma code_seg(".orpc") static const unsigned short IProcessLauncher2_FormatStringOffsetTable[] = { - 2036, - 2074, - 2118, - 2174 + 2724, + 2762, + 2806, + 2862 }; static const MIDL_STUBLESS_PROXY_INFO IProcessLauncher2_ProxyInfo = @@ -3554,7 +4524,10 @@ const CInterfaceProxyVtbl * const _updater_legacy_idl_ProxyVtblList[] = { + ( CInterfaceProxyVtbl *) &_IPolicyStatus2ProxyVtbl, ( CInterfaceProxyVtbl *) &_IAppCommandWebProxyVtbl, + ( CInterfaceProxyVtbl *) &_IPolicyStatusValueProxyVtbl, + ( CInterfaceProxyVtbl *) &_IPolicyStatus3ProxyVtbl, ( CInterfaceProxyVtbl *) &_IAppBundleWebProxyVtbl, ( CInterfaceProxyVtbl *) &_IProcessLauncher2ProxyVtbl, ( CInterfaceProxyVtbl *) &_IAppWebProxyVtbl, @@ -3567,7 +4540,10 @@ const CInterfaceStubVtbl * const _updater_legacy_idl_StubVtblList[] = { + ( CInterfaceStubVtbl *) &_IPolicyStatus2StubVtbl, ( CInterfaceStubVtbl *) &_IAppCommandWebStubVtbl, + ( CInterfaceStubVtbl *) &_IPolicyStatusValueStubVtbl, + ( CInterfaceStubVtbl *) &_IPolicyStatus3StubVtbl, ( CInterfaceStubVtbl *) &_IAppBundleWebStubVtbl, ( CInterfaceStubVtbl *) &_IProcessLauncher2StubVtbl, ( CInterfaceStubVtbl *) &_IAppWebStubVtbl, @@ -3580,7 +4556,10 @@ PCInterfaceName const _updater_legacy_idl_InterfaceNamesList[] = { + "IPolicyStatus2", "IAppCommandWeb", + "IPolicyStatusValue", + "IPolicyStatus3", "IAppBundleWeb", "IProcessLauncher2", "IAppWeb", @@ -3595,6 +4574,9 @@ { &IID_IDispatch, &IID_IDispatch, + &IID_IDispatch, + &IID_IDispatch, + &IID_IDispatch, 0, &IID_IDispatch, &IID_IDispatch, @@ -3611,10 +4593,11 @@ { IID_BS_LOOKUP_SETUP - IID_BS_LOOKUP_INITIAL_TEST( _updater_legacy_idl, 8, 4 ) + IID_BS_LOOKUP_INITIAL_TEST( _updater_legacy_idl, 11, 8 ) + IID_BS_LOOKUP_NEXT_TEST( _updater_legacy_idl, 4 ) IID_BS_LOOKUP_NEXT_TEST( _updater_legacy_idl, 2 ) IID_BS_LOOKUP_NEXT_TEST( _updater_legacy_idl, 1 ) - IID_BS_LOOKUP_RETURN_RESULT( _updater_legacy_idl, 8, *pIndex ) + IID_BS_LOOKUP_RETURN_RESULT( _updater_legacy_idl, 11, *pIndex ) } @@ -3625,7 +4608,7 @@ (const PCInterfaceName * ) & _updater_legacy_idl_InterfaceNamesList, (const IID ** ) & _updater_legacy_idl_BaseIIDList, & _updater_legacy_idl_IID_Lookup, - 8, + 11, 2, 0, /* table of [async_uuid] interfaces */ 0, /* Filler1 */
diff --git a/third_party/win_build_output/midl/chrome/updater/app/server/win/x86/updater_legacy_idl.h b/third_party/win_build_output/midl/chrome/updater/app/server/win/x86/updater_legacy_idl.h index 6b1e4eeb..5f8f78e361 100644 --- a/third_party/win_build_output/midl/chrome/updater/app/server/win/x86/updater_legacy_idl.h +++ b/third_party/win_build_output/midl/chrome/updater/app/server/win/x86/updater_legacy_idl.h
@@ -95,6 +95,27 @@ #endif /* __IPolicyStatus_FWD_DEFINED__ */ +#ifndef __IPolicyStatusValue_FWD_DEFINED__ +#define __IPolicyStatusValue_FWD_DEFINED__ +typedef interface IPolicyStatusValue IPolicyStatusValue; + +#endif /* __IPolicyStatusValue_FWD_DEFINED__ */ + + +#ifndef __IPolicyStatus2_FWD_DEFINED__ +#define __IPolicyStatus2_FWD_DEFINED__ +typedef interface IPolicyStatus2 IPolicyStatus2; + +#endif /* __IPolicyStatus2_FWD_DEFINED__ */ + + +#ifndef __IPolicyStatus3_FWD_DEFINED__ +#define __IPolicyStatus3_FWD_DEFINED__ +typedef interface IPolicyStatus3 IPolicyStatus3; + +#endif /* __IPolicyStatus3_FWD_DEFINED__ */ + + #ifndef __IProcessLauncher_FWD_DEFINED__ #define __IProcessLauncher_FWD_DEFINED__ typedef interface IProcessLauncher IProcessLauncher; @@ -187,6 +208,27 @@ #endif /* __IPolicyStatus_FWD_DEFINED__ */ +#ifndef __IPolicyStatus2_FWD_DEFINED__ +#define __IPolicyStatus2_FWD_DEFINED__ +typedef interface IPolicyStatus2 IPolicyStatus2; + +#endif /* __IPolicyStatus2_FWD_DEFINED__ */ + + +#ifndef __IPolicyStatus3_FWD_DEFINED__ +#define __IPolicyStatus3_FWD_DEFINED__ +typedef interface IPolicyStatus3 IPolicyStatus3; + +#endif /* __IPolicyStatus3_FWD_DEFINED__ */ + + +#ifndef __IPolicyStatusValue_FWD_DEFINED__ +#define __IPolicyStatusValue_FWD_DEFINED__ +typedef interface IPolicyStatusValue IPolicyStatusValue; + +#endif /* __IPolicyStatusValue_FWD_DEFINED__ */ + + #ifndef __IProcessLauncher_FWD_DEFINED__ #define __IProcessLauncher_FWD_DEFINED__ typedef interface IProcessLauncher IProcessLauncher; @@ -1668,6 +1710,775 @@ #endif /* __IPolicyStatus_INTERFACE_DEFINED__ */ +#ifndef __IPolicyStatusValue_INTERFACE_DEFINED__ +#define __IPolicyStatusValue_INTERFACE_DEFINED__ + +/* interface IPolicyStatusValue */ +/* [unique][helpstring][uuid][dual][object] */ + + +EXTERN_C const IID IID_IPolicyStatusValue; + +#if defined(__cplusplus) && !defined(CINTERFACE) + + MIDL_INTERFACE("27634814-8E41-4C35-8577-980134A96544") + IPolicyStatusValue : public IDispatch + { + public: + virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_source( + /* [retval][out] */ BSTR *__MIDL__IPolicyStatusValue0000) = 0; + + virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_value( + /* [retval][out] */ BSTR *__MIDL__IPolicyStatusValue0001) = 0; + + virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_hasConflict( + /* [retval][out] */ VARIANT_BOOL *has_conflict) = 0; + + virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_conflictSource( + /* [retval][out] */ BSTR *__MIDL__IPolicyStatusValue0002) = 0; + + virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_conflictValue( + /* [retval][out] */ BSTR *__MIDL__IPolicyStatusValue0003) = 0; + + }; + + +#else /* C style interface */ + + typedef struct IPolicyStatusValueVtbl + { + BEGIN_INTERFACE + + DECLSPEC_XFGVIRT(IUnknown, QueryInterface) + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + IPolicyStatusValue * This, + /* [in] */ REFIID riid, + /* [annotation][iid_is][out] */ + _COM_Outptr_ void **ppvObject); + + DECLSPEC_XFGVIRT(IUnknown, AddRef) + ULONG ( STDMETHODCALLTYPE *AddRef )( + IPolicyStatusValue * This); + + DECLSPEC_XFGVIRT(IUnknown, Release) + ULONG ( STDMETHODCALLTYPE *Release )( + IPolicyStatusValue * This); + + DECLSPEC_XFGVIRT(IDispatch, GetTypeInfoCount) + HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( + IPolicyStatusValue * This, + /* [out] */ UINT *pctinfo); + + DECLSPEC_XFGVIRT(IDispatch, GetTypeInfo) + HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( + IPolicyStatusValue * This, + /* [in] */ UINT iTInfo, + /* [in] */ LCID lcid, + /* [out] */ ITypeInfo **ppTInfo); + + DECLSPEC_XFGVIRT(IDispatch, GetIDsOfNames) + HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( + IPolicyStatusValue * This, + /* [in] */ REFIID riid, + /* [size_is][in] */ LPOLESTR *rgszNames, + /* [range][in] */ UINT cNames, + /* [in] */ LCID lcid, + /* [size_is][out] */ DISPID *rgDispId); + + DECLSPEC_XFGVIRT(IDispatch, Invoke) + /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( + IPolicyStatusValue * This, + /* [annotation][in] */ + _In_ DISPID dispIdMember, + /* [annotation][in] */ + _In_ REFIID riid, + /* [annotation][in] */ + _In_ LCID lcid, + /* [annotation][in] */ + _In_ WORD wFlags, + /* [annotation][out][in] */ + _In_ DISPPARAMS *pDispParams, + /* [annotation][out] */ + _Out_opt_ VARIANT *pVarResult, + /* [annotation][out] */ + _Out_opt_ EXCEPINFO *pExcepInfo, + /* [annotation][out] */ + _Out_opt_ UINT *puArgErr); + + DECLSPEC_XFGVIRT(IPolicyStatusValue, get_source) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_source )( + IPolicyStatusValue * This, + /* [retval][out] */ BSTR *__MIDL__IPolicyStatusValue0000); + + DECLSPEC_XFGVIRT(IPolicyStatusValue, get_value) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_value )( + IPolicyStatusValue * This, + /* [retval][out] */ BSTR *__MIDL__IPolicyStatusValue0001); + + DECLSPEC_XFGVIRT(IPolicyStatusValue, get_hasConflict) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_hasConflict )( + IPolicyStatusValue * This, + /* [retval][out] */ VARIANT_BOOL *has_conflict); + + DECLSPEC_XFGVIRT(IPolicyStatusValue, get_conflictSource) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_conflictSource )( + IPolicyStatusValue * This, + /* [retval][out] */ BSTR *__MIDL__IPolicyStatusValue0002); + + DECLSPEC_XFGVIRT(IPolicyStatusValue, get_conflictValue) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_conflictValue )( + IPolicyStatusValue * This, + /* [retval][out] */ BSTR *__MIDL__IPolicyStatusValue0003); + + END_INTERFACE + } IPolicyStatusValueVtbl; + + interface IPolicyStatusValue + { + CONST_VTBL struct IPolicyStatusValueVtbl *lpVtbl; + }; + + + +#ifdef COBJMACROS + + +#define IPolicyStatusValue_QueryInterface(This,riid,ppvObject) \ + ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) + +#define IPolicyStatusValue_AddRef(This) \ + ( (This)->lpVtbl -> AddRef(This) ) + +#define IPolicyStatusValue_Release(This) \ + ( (This)->lpVtbl -> Release(This) ) + + +#define IPolicyStatusValue_GetTypeInfoCount(This,pctinfo) \ + ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) + +#define IPolicyStatusValue_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \ + ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) + +#define IPolicyStatusValue_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \ + ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) + +#define IPolicyStatusValue_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \ + ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) + + +#define IPolicyStatusValue_get_source(This,__MIDL__IPolicyStatusValue0000) \ + ( (This)->lpVtbl -> get_source(This,__MIDL__IPolicyStatusValue0000) ) + +#define IPolicyStatusValue_get_value(This,__MIDL__IPolicyStatusValue0001) \ + ( (This)->lpVtbl -> get_value(This,__MIDL__IPolicyStatusValue0001) ) + +#define IPolicyStatusValue_get_hasConflict(This,has_conflict) \ + ( (This)->lpVtbl -> get_hasConflict(This,has_conflict) ) + +#define IPolicyStatusValue_get_conflictSource(This,__MIDL__IPolicyStatusValue0002) \ + ( (This)->lpVtbl -> get_conflictSource(This,__MIDL__IPolicyStatusValue0002) ) + +#define IPolicyStatusValue_get_conflictValue(This,__MIDL__IPolicyStatusValue0003) \ + ( (This)->lpVtbl -> get_conflictValue(This,__MIDL__IPolicyStatusValue0003) ) + +#endif /* COBJMACROS */ + + +#endif /* C style interface */ + + + + +#endif /* __IPolicyStatusValue_INTERFACE_DEFINED__ */ + + +#ifndef __IPolicyStatus2_INTERFACE_DEFINED__ +#define __IPolicyStatus2_INTERFACE_DEFINED__ + +/* interface IPolicyStatus2 */ +/* [unique][helpstring][uuid][dual][object] */ + + +EXTERN_C const IID IID_IPolicyStatus2; + +#if defined(__cplusplus) && !defined(CINTERFACE) + + MIDL_INTERFACE("34527502-D3DB-4205-A69B-789B27EE0414") + IPolicyStatus2 : public IDispatch + { + public: + virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_updaterVersion( + /* [retval][out] */ BSTR *version) = 0; + + virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_lastCheckedTime( + /* [retval][out] */ DATE *last_checked) = 0; + + virtual HRESULT STDMETHODCALLTYPE refreshPolicies( void) = 0; + + virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_lastCheckPeriodMinutes( + /* [retval][out] */ IPolicyStatusValue **value) = 0; + + virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_updatesSuppressedTimes( + /* [out] */ IPolicyStatusValue **value, + VARIANT_BOOL *are_updates_suppressed) = 0; + + virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_downloadPreferenceGroupPolicy( + /* [retval][out] */ IPolicyStatusValue **value) = 0; + + virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_packageCacheSizeLimitMBytes( + /* [retval][out] */ IPolicyStatusValue **value) = 0; + + virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_packageCacheExpirationTimeDays( + /* [retval][out] */ IPolicyStatusValue **value) = 0; + + virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_proxyMode( + /* [retval][out] */ IPolicyStatusValue **value) = 0; + + virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_proxyPacUrl( + /* [retval][out] */ IPolicyStatusValue **value) = 0; + + virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_proxyServer( + /* [retval][out] */ IPolicyStatusValue **value) = 0; + + virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_effectivePolicyForAppInstalls( + /* [in] */ BSTR app_id, + /* [retval][out] */ IPolicyStatusValue **value) = 0; + + virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_effectivePolicyForAppUpdates( + /* [in] */ BSTR app_id, + /* [retval][out] */ IPolicyStatusValue **value) = 0; + + virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_targetVersionPrefix( + /* [in] */ BSTR app_id, + /* [retval][out] */ IPolicyStatusValue **value) = 0; + + virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_isRollbackToTargetVersionAllowed( + /* [in] */ BSTR app_id, + /* [retval][out] */ IPolicyStatusValue **value) = 0; + + virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_targetChannel( + /* [in] */ BSTR app_id, + /* [retval][out] */ IPolicyStatusValue **value) = 0; + + }; + + +#else /* C style interface */ + + typedef struct IPolicyStatus2Vtbl + { + BEGIN_INTERFACE + + DECLSPEC_XFGVIRT(IUnknown, QueryInterface) + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + IPolicyStatus2 * This, + /* [in] */ REFIID riid, + /* [annotation][iid_is][out] */ + _COM_Outptr_ void **ppvObject); + + DECLSPEC_XFGVIRT(IUnknown, AddRef) + ULONG ( STDMETHODCALLTYPE *AddRef )( + IPolicyStatus2 * This); + + DECLSPEC_XFGVIRT(IUnknown, Release) + ULONG ( STDMETHODCALLTYPE *Release )( + IPolicyStatus2 * This); + + DECLSPEC_XFGVIRT(IDispatch, GetTypeInfoCount) + HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( + IPolicyStatus2 * This, + /* [out] */ UINT *pctinfo); + + DECLSPEC_XFGVIRT(IDispatch, GetTypeInfo) + HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( + IPolicyStatus2 * This, + /* [in] */ UINT iTInfo, + /* [in] */ LCID lcid, + /* [out] */ ITypeInfo **ppTInfo); + + DECLSPEC_XFGVIRT(IDispatch, GetIDsOfNames) + HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( + IPolicyStatus2 * This, + /* [in] */ REFIID riid, + /* [size_is][in] */ LPOLESTR *rgszNames, + /* [range][in] */ UINT cNames, + /* [in] */ LCID lcid, + /* [size_is][out] */ DISPID *rgDispId); + + DECLSPEC_XFGVIRT(IDispatch, Invoke) + /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( + IPolicyStatus2 * This, + /* [annotation][in] */ + _In_ DISPID dispIdMember, + /* [annotation][in] */ + _In_ REFIID riid, + /* [annotation][in] */ + _In_ LCID lcid, + /* [annotation][in] */ + _In_ WORD wFlags, + /* [annotation][out][in] */ + _In_ DISPPARAMS *pDispParams, + /* [annotation][out] */ + _Out_opt_ VARIANT *pVarResult, + /* [annotation][out] */ + _Out_opt_ EXCEPINFO *pExcepInfo, + /* [annotation][out] */ + _Out_opt_ UINT *puArgErr); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_updaterVersion) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_updaterVersion )( + IPolicyStatus2 * This, + /* [retval][out] */ BSTR *version); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_lastCheckedTime) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_lastCheckedTime )( + IPolicyStatus2 * This, + /* [retval][out] */ DATE *last_checked); + + DECLSPEC_XFGVIRT(IPolicyStatus2, refreshPolicies) + HRESULT ( STDMETHODCALLTYPE *refreshPolicies )( + IPolicyStatus2 * This); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_lastCheckPeriodMinutes) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_lastCheckPeriodMinutes )( + IPolicyStatus2 * This, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_updatesSuppressedTimes) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_updatesSuppressedTimes )( + IPolicyStatus2 * This, + /* [out] */ IPolicyStatusValue **value, + VARIANT_BOOL *are_updates_suppressed); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_downloadPreferenceGroupPolicy) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_downloadPreferenceGroupPolicy )( + IPolicyStatus2 * This, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_packageCacheSizeLimitMBytes) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_packageCacheSizeLimitMBytes )( + IPolicyStatus2 * This, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_packageCacheExpirationTimeDays) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_packageCacheExpirationTimeDays )( + IPolicyStatus2 * This, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_proxyMode) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_proxyMode )( + IPolicyStatus2 * This, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_proxyPacUrl) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_proxyPacUrl )( + IPolicyStatus2 * This, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_proxyServer) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_proxyServer )( + IPolicyStatus2 * This, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_effectivePolicyForAppInstalls) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_effectivePolicyForAppInstalls )( + IPolicyStatus2 * This, + /* [in] */ BSTR app_id, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_effectivePolicyForAppUpdates) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_effectivePolicyForAppUpdates )( + IPolicyStatus2 * This, + /* [in] */ BSTR app_id, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_targetVersionPrefix) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_targetVersionPrefix )( + IPolicyStatus2 * This, + /* [in] */ BSTR app_id, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_isRollbackToTargetVersionAllowed) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_isRollbackToTargetVersionAllowed )( + IPolicyStatus2 * This, + /* [in] */ BSTR app_id, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_targetChannel) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_targetChannel )( + IPolicyStatus2 * This, + /* [in] */ BSTR app_id, + /* [retval][out] */ IPolicyStatusValue **value); + + END_INTERFACE + } IPolicyStatus2Vtbl; + + interface IPolicyStatus2 + { + CONST_VTBL struct IPolicyStatus2Vtbl *lpVtbl; + }; + + + +#ifdef COBJMACROS + + +#define IPolicyStatus2_QueryInterface(This,riid,ppvObject) \ + ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) + +#define IPolicyStatus2_AddRef(This) \ + ( (This)->lpVtbl -> AddRef(This) ) + +#define IPolicyStatus2_Release(This) \ + ( (This)->lpVtbl -> Release(This) ) + + +#define IPolicyStatus2_GetTypeInfoCount(This,pctinfo) \ + ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) + +#define IPolicyStatus2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \ + ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) + +#define IPolicyStatus2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \ + ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) + +#define IPolicyStatus2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \ + ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) + + +#define IPolicyStatus2_get_updaterVersion(This,version) \ + ( (This)->lpVtbl -> get_updaterVersion(This,version) ) + +#define IPolicyStatus2_get_lastCheckedTime(This,last_checked) \ + ( (This)->lpVtbl -> get_lastCheckedTime(This,last_checked) ) + +#define IPolicyStatus2_refreshPolicies(This) \ + ( (This)->lpVtbl -> refreshPolicies(This) ) + +#define IPolicyStatus2_get_lastCheckPeriodMinutes(This,value) \ + ( (This)->lpVtbl -> get_lastCheckPeriodMinutes(This,value) ) + +#define IPolicyStatus2_get_updatesSuppressedTimes(This,value,are_updates_suppressed) \ + ( (This)->lpVtbl -> get_updatesSuppressedTimes(This,value,are_updates_suppressed) ) + +#define IPolicyStatus2_get_downloadPreferenceGroupPolicy(This,value) \ + ( (This)->lpVtbl -> get_downloadPreferenceGroupPolicy(This,value) ) + +#define IPolicyStatus2_get_packageCacheSizeLimitMBytes(This,value) \ + ( (This)->lpVtbl -> get_packageCacheSizeLimitMBytes(This,value) ) + +#define IPolicyStatus2_get_packageCacheExpirationTimeDays(This,value) \ + ( (This)->lpVtbl -> get_packageCacheExpirationTimeDays(This,value) ) + +#define IPolicyStatus2_get_proxyMode(This,value) \ + ( (This)->lpVtbl -> get_proxyMode(This,value) ) + +#define IPolicyStatus2_get_proxyPacUrl(This,value) \ + ( (This)->lpVtbl -> get_proxyPacUrl(This,value) ) + +#define IPolicyStatus2_get_proxyServer(This,value) \ + ( (This)->lpVtbl -> get_proxyServer(This,value) ) + +#define IPolicyStatus2_get_effectivePolicyForAppInstalls(This,app_id,value) \ + ( (This)->lpVtbl -> get_effectivePolicyForAppInstalls(This,app_id,value) ) + +#define IPolicyStatus2_get_effectivePolicyForAppUpdates(This,app_id,value) \ + ( (This)->lpVtbl -> get_effectivePolicyForAppUpdates(This,app_id,value) ) + +#define IPolicyStatus2_get_targetVersionPrefix(This,app_id,value) \ + ( (This)->lpVtbl -> get_targetVersionPrefix(This,app_id,value) ) + +#define IPolicyStatus2_get_isRollbackToTargetVersionAllowed(This,app_id,value) \ + ( (This)->lpVtbl -> get_isRollbackToTargetVersionAllowed(This,app_id,value) ) + +#define IPolicyStatus2_get_targetChannel(This,app_id,value) \ + ( (This)->lpVtbl -> get_targetChannel(This,app_id,value) ) + +#endif /* COBJMACROS */ + + +#endif /* C style interface */ + + + + +#endif /* __IPolicyStatus2_INTERFACE_DEFINED__ */ + + +#ifndef __IPolicyStatus3_INTERFACE_DEFINED__ +#define __IPolicyStatus3_INTERFACE_DEFINED__ + +/* interface IPolicyStatus3 */ +/* [unique][helpstring][uuid][dual][object] */ + + +EXTERN_C const IID IID_IPolicyStatus3; + +#if defined(__cplusplus) && !defined(CINTERFACE) + + MIDL_INTERFACE("05A30352-EB25-45B6-8449-BCA7B0542CE5") + IPolicyStatus3 : public IPolicyStatus2 + { + public: + virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_forceInstallApps( + /* [in] */ VARIANT_BOOL is_machine, + /* [retval][out] */ IPolicyStatusValue **value) = 0; + + }; + + +#else /* C style interface */ + + typedef struct IPolicyStatus3Vtbl + { + BEGIN_INTERFACE + + DECLSPEC_XFGVIRT(IUnknown, QueryInterface) + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + IPolicyStatus3 * This, + /* [in] */ REFIID riid, + /* [annotation][iid_is][out] */ + _COM_Outptr_ void **ppvObject); + + DECLSPEC_XFGVIRT(IUnknown, AddRef) + ULONG ( STDMETHODCALLTYPE *AddRef )( + IPolicyStatus3 * This); + + DECLSPEC_XFGVIRT(IUnknown, Release) + ULONG ( STDMETHODCALLTYPE *Release )( + IPolicyStatus3 * This); + + DECLSPEC_XFGVIRT(IDispatch, GetTypeInfoCount) + HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( + IPolicyStatus3 * This, + /* [out] */ UINT *pctinfo); + + DECLSPEC_XFGVIRT(IDispatch, GetTypeInfo) + HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( + IPolicyStatus3 * This, + /* [in] */ UINT iTInfo, + /* [in] */ LCID lcid, + /* [out] */ ITypeInfo **ppTInfo); + + DECLSPEC_XFGVIRT(IDispatch, GetIDsOfNames) + HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( + IPolicyStatus3 * This, + /* [in] */ REFIID riid, + /* [size_is][in] */ LPOLESTR *rgszNames, + /* [range][in] */ UINT cNames, + /* [in] */ LCID lcid, + /* [size_is][out] */ DISPID *rgDispId); + + DECLSPEC_XFGVIRT(IDispatch, Invoke) + /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( + IPolicyStatus3 * This, + /* [annotation][in] */ + _In_ DISPID dispIdMember, + /* [annotation][in] */ + _In_ REFIID riid, + /* [annotation][in] */ + _In_ LCID lcid, + /* [annotation][in] */ + _In_ WORD wFlags, + /* [annotation][out][in] */ + _In_ DISPPARAMS *pDispParams, + /* [annotation][out] */ + _Out_opt_ VARIANT *pVarResult, + /* [annotation][out] */ + _Out_opt_ EXCEPINFO *pExcepInfo, + /* [annotation][out] */ + _Out_opt_ UINT *puArgErr); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_updaterVersion) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_updaterVersion )( + IPolicyStatus3 * This, + /* [retval][out] */ BSTR *version); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_lastCheckedTime) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_lastCheckedTime )( + IPolicyStatus3 * This, + /* [retval][out] */ DATE *last_checked); + + DECLSPEC_XFGVIRT(IPolicyStatus2, refreshPolicies) + HRESULT ( STDMETHODCALLTYPE *refreshPolicies )( + IPolicyStatus3 * This); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_lastCheckPeriodMinutes) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_lastCheckPeriodMinutes )( + IPolicyStatus3 * This, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_updatesSuppressedTimes) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_updatesSuppressedTimes )( + IPolicyStatus3 * This, + /* [out] */ IPolicyStatusValue **value, + VARIANT_BOOL *are_updates_suppressed); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_downloadPreferenceGroupPolicy) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_downloadPreferenceGroupPolicy )( + IPolicyStatus3 * This, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_packageCacheSizeLimitMBytes) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_packageCacheSizeLimitMBytes )( + IPolicyStatus3 * This, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_packageCacheExpirationTimeDays) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_packageCacheExpirationTimeDays )( + IPolicyStatus3 * This, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_proxyMode) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_proxyMode )( + IPolicyStatus3 * This, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_proxyPacUrl) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_proxyPacUrl )( + IPolicyStatus3 * This, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_proxyServer) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_proxyServer )( + IPolicyStatus3 * This, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_effectivePolicyForAppInstalls) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_effectivePolicyForAppInstalls )( + IPolicyStatus3 * This, + /* [in] */ BSTR app_id, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_effectivePolicyForAppUpdates) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_effectivePolicyForAppUpdates )( + IPolicyStatus3 * This, + /* [in] */ BSTR app_id, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_targetVersionPrefix) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_targetVersionPrefix )( + IPolicyStatus3 * This, + /* [in] */ BSTR app_id, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_isRollbackToTargetVersionAllowed) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_isRollbackToTargetVersionAllowed )( + IPolicyStatus3 * This, + /* [in] */ BSTR app_id, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus2, get_targetChannel) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_targetChannel )( + IPolicyStatus3 * This, + /* [in] */ BSTR app_id, + /* [retval][out] */ IPolicyStatusValue **value); + + DECLSPEC_XFGVIRT(IPolicyStatus3, get_forceInstallApps) + /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_forceInstallApps )( + IPolicyStatus3 * This, + /* [in] */ VARIANT_BOOL is_machine, + /* [retval][out] */ IPolicyStatusValue **value); + + END_INTERFACE + } IPolicyStatus3Vtbl; + + interface IPolicyStatus3 + { + CONST_VTBL struct IPolicyStatus3Vtbl *lpVtbl; + }; + + + +#ifdef COBJMACROS + + +#define IPolicyStatus3_QueryInterface(This,riid,ppvObject) \ + ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) + +#define IPolicyStatus3_AddRef(This) \ + ( (This)->lpVtbl -> AddRef(This) ) + +#define IPolicyStatus3_Release(This) \ + ( (This)->lpVtbl -> Release(This) ) + + +#define IPolicyStatus3_GetTypeInfoCount(This,pctinfo) \ + ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) + +#define IPolicyStatus3_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \ + ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) + +#define IPolicyStatus3_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \ + ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) + +#define IPolicyStatus3_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \ + ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) + + +#define IPolicyStatus3_get_updaterVersion(This,version) \ + ( (This)->lpVtbl -> get_updaterVersion(This,version) ) + +#define IPolicyStatus3_get_lastCheckedTime(This,last_checked) \ + ( (This)->lpVtbl -> get_lastCheckedTime(This,last_checked) ) + +#define IPolicyStatus3_refreshPolicies(This) \ + ( (This)->lpVtbl -> refreshPolicies(This) ) + +#define IPolicyStatus3_get_lastCheckPeriodMinutes(This,value) \ + ( (This)->lpVtbl -> get_lastCheckPeriodMinutes(This,value) ) + +#define IPolicyStatus3_get_updatesSuppressedTimes(This,value,are_updates_suppressed) \ + ( (This)->lpVtbl -> get_updatesSuppressedTimes(This,value,are_updates_suppressed) ) + +#define IPolicyStatus3_get_downloadPreferenceGroupPolicy(This,value) \ + ( (This)->lpVtbl -> get_downloadPreferenceGroupPolicy(This,value) ) + +#define IPolicyStatus3_get_packageCacheSizeLimitMBytes(This,value) \ + ( (This)->lpVtbl -> get_packageCacheSizeLimitMBytes(This,value) ) + +#define IPolicyStatus3_get_packageCacheExpirationTimeDays(This,value) \ + ( (This)->lpVtbl -> get_packageCacheExpirationTimeDays(This,value) ) + +#define IPolicyStatus3_get_proxyMode(This,value) \ + ( (This)->lpVtbl -> get_proxyMode(This,value) ) + +#define IPolicyStatus3_get_proxyPacUrl(This,value) \ + ( (This)->lpVtbl -> get_proxyPacUrl(This,value) ) + +#define IPolicyStatus3_get_proxyServer(This,value) \ + ( (This)->lpVtbl -> get_proxyServer(This,value) ) + +#define IPolicyStatus3_get_effectivePolicyForAppInstalls(This,app_id,value) \ + ( (This)->lpVtbl -> get_effectivePolicyForAppInstalls(This,app_id,value) ) + +#define IPolicyStatus3_get_effectivePolicyForAppUpdates(This,app_id,value) \ + ( (This)->lpVtbl -> get_effectivePolicyForAppUpdates(This,app_id,value) ) + +#define IPolicyStatus3_get_targetVersionPrefix(This,app_id,value) \ + ( (This)->lpVtbl -> get_targetVersionPrefix(This,app_id,value) ) + +#define IPolicyStatus3_get_isRollbackToTargetVersionAllowed(This,app_id,value) \ + ( (This)->lpVtbl -> get_isRollbackToTargetVersionAllowed(This,app_id,value) ) + +#define IPolicyStatus3_get_targetChannel(This,app_id,value) \ + ( (This)->lpVtbl -> get_targetChannel(This,app_id,value) ) + + +#define IPolicyStatus3_get_forceInstallApps(This,is_machine,value) \ + ( (This)->lpVtbl -> get_forceInstallApps(This,is_machine,value) ) + +#endif /* COBJMACROS */ + + +#endif /* C style interface */ + + + + +#endif /* __IPolicyStatus3_INTERFACE_DEFINED__ */ + + #ifndef __IProcessLauncher_INTERFACE_DEFINED__ #define __IProcessLauncher_INTERFACE_DEFINED__ @@ -1917,6 +2728,9 @@ + + + EXTERN_C const IID LIBID_UpdaterLegacyLib; EXTERN_C const CLSID CLSID_GoogleUpdate3WebUserClass;
diff --git a/third_party/win_build_output/midl/chrome/updater/app/server/win/x86/updater_legacy_idl.tlb b/third_party/win_build_output/midl/chrome/updater/app/server/win/x86/updater_legacy_idl.tlb index 43d2c1d..c6f21b8 100644 --- a/third_party/win_build_output/midl/chrome/updater/app/server/win/x86/updater_legacy_idl.tlb +++ b/third_party/win_build_output/midl/chrome/updater/app/server/win/x86/updater_legacy_idl.tlb Binary files differ
diff --git a/third_party/win_build_output/midl/chrome/updater/app/server/win/x86/updater_legacy_idl_i.c b/third_party/win_build_output/midl/chrome/updater/app/server/win/x86/updater_legacy_idl_i.c index 9a93f8bf..38114430 100644 --- a/third_party/win_build_output/midl/chrome/updater/app/server/win/x86/updater_legacy_idl_i.c +++ b/third_party/win_build_output/midl/chrome/updater/app/server/win/x86/updater_legacy_idl_i.c
@@ -85,6 +85,15 @@ MIDL_DEFINE_GUID(IID, IID_IPolicyStatus,0xF63F6F8B,0xACD5,0x413C,0xA4,0x4B,0x04,0x09,0x13,0x6D,0x26,0xCB); +MIDL_DEFINE_GUID(IID, IID_IPolicyStatusValue,0x27634814,0x8E41,0x4C35,0x85,0x77,0x98,0x01,0x34,0xA9,0x65,0x44); + + +MIDL_DEFINE_GUID(IID, IID_IPolicyStatus2,0x34527502,0xD3DB,0x4205,0xA6,0x9B,0x78,0x9B,0x27,0xEE,0x04,0x14); + + +MIDL_DEFINE_GUID(IID, IID_IPolicyStatus3,0x05A30352,0xEB25,0x45B6,0x84,0x49,0xBC,0xA7,0xB0,0x54,0x2C,0xE5); + + MIDL_DEFINE_GUID(IID, IID_IProcessLauncher,0x128C2DA6,0x2BC0,0x44c0,0xB3,0xF6,0x4E,0xC2,0x2E,0x64,0x79,0x64);
diff --git a/third_party/win_build_output/midl/chrome/updater/app/server/win/x86/updater_legacy_idl_p.c b/third_party/win_build_output/midl/chrome/updater/app/server/win/x86/updater_legacy_idl_p.c index 78980a48..d3ebd1b 100644 --- a/third_party/win_build_output/midl/chrome/updater/app/server/win/x86/updater_legacy_idl_p.c +++ b/third_party/win_build_output/midl/chrome/updater/app/server/win/x86/updater_legacy_idl_p.c
@@ -49,8 +49,8 @@ #include "updater_legacy_idl.h" -#define TYPE_FORMAT_STRING_SIZE 1101 -#define PROC_FORMAT_STRING_SIZE 2119 +#define TYPE_FORMAT_STRING_SIZE 1131 +#define PROC_FORMAT_STRING_SIZE 2773 #define EXPR_FORMAT_STRING_SIZE 1 #define TRANSMIT_AS_TABLE_SIZE 0 #define WIRE_MARSHAL_TABLE_SIZE 2 @@ -180,6 +180,27 @@ extern const MIDL_STUB_DESC Object_StubDesc; +extern const MIDL_SERVER_INFO IPolicyStatusValue_ServerInfo; +extern const MIDL_STUBLESS_PROXY_INFO IPolicyStatusValue_ProxyInfo; + + +extern const MIDL_STUB_DESC Object_StubDesc; + + +extern const MIDL_SERVER_INFO IPolicyStatus2_ServerInfo; +extern const MIDL_STUBLESS_PROXY_INFO IPolicyStatus2_ProxyInfo; + + +extern const MIDL_STUB_DESC Object_StubDesc; + + +extern const MIDL_SERVER_INFO IPolicyStatus3_ServerInfo; +extern const MIDL_STUBLESS_PROXY_INFO IPolicyStatus3_ProxyInfo; + + +extern const MIDL_STUB_DESC Object_StubDesc; + + extern const MIDL_SERVER_INFO IProcessLauncher_ServerInfo; extern const MIDL_STUBLESS_PROXY_INFO IProcessLauncher_ProxyInfo; @@ -259,6 +280,9 @@ /* 34 */ 0x8, /* FC_LONG */ 0x0, /* 0 */ + /* Procedure get_value */ + + /* Procedure get_availableVersion */ /* 36 */ 0x33, /* FC_AUTO_HANDLE */ @@ -276,6 +300,9 @@ /* 56 */ NdrFcShort( 0x0 ), /* 0 */ /* 58 */ NdrFcShort( 0x0 ), /* 0 */ + /* Parameter __MIDL__IPolicyStatusValue0001 */ + + /* Parameter __MIDL__ICurrentState0001 */ /* 60 */ NdrFcShort( 0x2113 ), /* Flags: must size, must free, out, simple ref, srv alloc size=8 */ @@ -284,6 +311,9 @@ /* Return value */ + + /* Return value */ + /* 66 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ /* 68 */ NdrFcShort( 0x8 ), /* x86 Stack size/offset = 8 */ /* 70 */ 0x8, /* FC_LONG */ @@ -886,6 +916,9 @@ /* 736 */ 0x8, /* FC_LONG */ 0x0, /* 0 */ + /* Procedure refreshPolicies */ + + /* Procedure createAllInstalledApps */ /* 738 */ 0x33, /* FC_AUTO_HANDLE */ @@ -905,11 +938,17 @@ /* Return value */ + + /* Return value */ + /* 762 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ /* 764 */ NdrFcShort( 0x4 ), /* x86 Stack size/offset = 4 */ /* 766 */ 0x8, /* FC_LONG */ 0x0, /* 0 */ + /* Procedure get_conflictSource */ + + /* Procedure get_displayLanguage */ /* 768 */ 0x33, /* FC_AUTO_HANDLE */ @@ -927,6 +966,9 @@ /* 788 */ NdrFcShort( 0x0 ), /* 0 */ /* 790 */ NdrFcShort( 0x0 ), /* 0 */ + /* Parameter __MIDL__IPolicyStatusValue0002 */ + + /* Parameter __MIDL__IAppBundleWeb0000 */ /* 792 */ NdrFcShort( 0x2113 ), /* Flags: must size, must free, out, simple ref, srv alloc size=8 */ @@ -935,6 +977,9 @@ /* Return value */ + + /* Return value */ + /* 798 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ /* 800 */ NdrFcShort( 0x8 ), /* x86 Stack size/offset = 8 */ /* 802 */ 0x8, /* FC_LONG */ @@ -1272,6 +1317,12 @@ /* 1204 */ 0x8, /* FC_LONG */ 0x0, /* 0 */ + /* Procedure get_updaterVersion */ + + + /* Procedure get_source */ + + /* Procedure get_appId */ /* 1206 */ 0x33, /* FC_AUTO_HANDLE */ @@ -1289,6 +1340,12 @@ /* 1226 */ NdrFcShort( 0x0 ), /* 0 */ /* 1228 */ NdrFcShort( 0x0 ), /* 0 */ + /* Parameter version */ + + + /* Parameter __MIDL__IPolicyStatusValue0000 */ + + /* Parameter __MIDL__IAppWeb0000 */ /* 1230 */ NdrFcShort( 0x2113 ), /* Flags: must size, must free, out, simple ref, srv alloc size=8 */ @@ -1297,6 +1354,12 @@ /* Return value */ + + /* Return value */ + + + /* Return value */ + /* 1236 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ /* 1238 */ NdrFcShort( 0x8 ), /* x86 Stack size/offset = 8 */ /* 1240 */ 0x8, /* FC_LONG */ @@ -1907,16 +1970,16 @@ /* 1930 */ 0x8, /* FC_LONG */ 0x0, /* 0 */ - /* Procedure LaunchCmdLine */ + /* Procedure get_hasConflict */ /* 1932 */ 0x33, /* FC_AUTO_HANDLE */ 0x6c, /* Old Flags: object, Oi2 */ /* 1934 */ NdrFcLong( 0x0 ), /* 0 */ -/* 1938 */ NdrFcShort( 0x3 ), /* 3 */ +/* 1938 */ NdrFcShort( 0x9 ), /* 9 */ /* 1940 */ NdrFcShort( 0xc ), /* x86 Stack size/offset = 12 */ /* 1942 */ NdrFcShort( 0x0 ), /* 0 */ -/* 1944 */ NdrFcShort( 0x8 ), /* 8 */ -/* 1946 */ 0x46, /* Oi2 Flags: clt must size, has return, has ext, */ +/* 1944 */ NdrFcShort( 0x22 ), /* 34 */ +/* 1946 */ 0x44, /* Oi2 Flags: has return, has ext, */ 0x2, /* 2 */ /* 1948 */ 0x8, /* 8 */ 0x1, /* Ext Flags: new corr desc, */ @@ -1924,11 +1987,12 @@ /* 1952 */ NdrFcShort( 0x0 ), /* 0 */ /* 1954 */ NdrFcShort( 0x0 ), /* 0 */ - /* Parameter cmd_line */ + /* Parameter has_conflict */ -/* 1956 */ NdrFcShort( 0x10b ), /* Flags: must size, must free, in, simple ref, */ +/* 1956 */ NdrFcShort( 0x2150 ), /* Flags: out, base type, simple ref, srv alloc size=8 */ /* 1958 */ NdrFcShort( 0x4 ), /* x86 Stack size/offset = 4 */ -/* 1960 */ NdrFcShort( 0x44a ), /* Type Offset=1098 */ +/* 1960 */ 0x6, /* FC_SHORT */ + 0x0, /* 0 */ /* Return value */ @@ -1937,144 +2001,699 @@ /* 1966 */ 0x8, /* FC_LONG */ 0x0, /* 0 */ - /* Procedure LaunchBrowser */ + /* Procedure get_conflictValue */ /* 1968 */ 0x33, /* FC_AUTO_HANDLE */ 0x6c, /* Old Flags: object, Oi2 */ /* 1970 */ NdrFcLong( 0x0 ), /* 0 */ -/* 1974 */ NdrFcShort( 0x4 ), /* 4 */ -/* 1976 */ NdrFcShort( 0x10 ), /* x86 Stack size/offset = 16 */ -/* 1978 */ NdrFcShort( 0x8 ), /* 8 */ +/* 1974 */ NdrFcShort( 0xb ), /* 11 */ +/* 1976 */ NdrFcShort( 0xc ), /* x86 Stack size/offset = 12 */ +/* 1978 */ NdrFcShort( 0x0 ), /* 0 */ /* 1980 */ NdrFcShort( 0x8 ), /* 8 */ -/* 1982 */ 0x46, /* Oi2 Flags: clt must size, has return, has ext, */ - 0x3, /* 3 */ +/* 1982 */ 0x45, /* Oi2 Flags: srv must size, has return, has ext, */ + 0x2, /* 2 */ /* 1984 */ 0x8, /* 8 */ - 0x1, /* Ext Flags: new corr desc, */ -/* 1986 */ NdrFcShort( 0x0 ), /* 0 */ + 0x3, /* Ext Flags: new corr desc, clt corr check, */ +/* 1986 */ NdrFcShort( 0x1 ), /* 1 */ /* 1988 */ NdrFcShort( 0x0 ), /* 0 */ /* 1990 */ NdrFcShort( 0x0 ), /* 0 */ - /* Parameter browser_type */ + /* Parameter __MIDL__IPolicyStatusValue0003 */ -/* 1992 */ NdrFcShort( 0x48 ), /* Flags: in, base type, */ +/* 1992 */ NdrFcShort( 0x2113 ), /* Flags: must size, must free, out, simple ref, srv alloc size=8 */ /* 1994 */ NdrFcShort( 0x4 ), /* x86 Stack size/offset = 4 */ -/* 1996 */ 0x8, /* FC_LONG */ - 0x0, /* 0 */ +/* 1996 */ NdrFcShort( 0x24 ), /* Type Offset=36 */ - /* Parameter url */ + /* Return value */ -/* 1998 */ NdrFcShort( 0x10b ), /* Flags: must size, must free, in, simple ref, */ +/* 1998 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ /* 2000 */ NdrFcShort( 0x8 ), /* x86 Stack size/offset = 8 */ -/* 2002 */ NdrFcShort( 0x44a ), /* Type Offset=1098 */ +/* 2002 */ 0x8, /* FC_LONG */ + 0x0, /* 0 */ + + /* Procedure get_lastCheckedTime */ + +/* 2004 */ 0x33, /* FC_AUTO_HANDLE */ + 0x6c, /* Old Flags: object, Oi2 */ +/* 2006 */ NdrFcLong( 0x0 ), /* 0 */ +/* 2010 */ NdrFcShort( 0x8 ), /* 8 */ +/* 2012 */ NdrFcShort( 0xc ), /* x86 Stack size/offset = 12 */ +/* 2014 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2016 */ NdrFcShort( 0x2c ), /* 44 */ +/* 2018 */ 0x44, /* Oi2 Flags: has return, has ext, */ + 0x2, /* 2 */ +/* 2020 */ 0x8, /* 8 */ + 0x1, /* Ext Flags: new corr desc, */ +/* 2022 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2024 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2026 */ NdrFcShort( 0x0 ), /* 0 */ + + /* Parameter last_checked */ + +/* 2028 */ NdrFcShort( 0x2150 ), /* Flags: out, base type, simple ref, srv alloc size=8 */ +/* 2030 */ NdrFcShort( 0x4 ), /* x86 Stack size/offset = 4 */ +/* 2032 */ 0xc, /* FC_DOUBLE */ + 0x0, /* 0 */ /* Return value */ -/* 2004 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ -/* 2006 */ NdrFcShort( 0xc ), /* x86 Stack size/offset = 12 */ -/* 2008 */ 0x8, /* FC_LONG */ +/* 2034 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ +/* 2036 */ NdrFcShort( 0x8 ), /* x86 Stack size/offset = 8 */ +/* 2038 */ 0x8, /* FC_LONG */ 0x0, /* 0 */ - /* Procedure LaunchCmdElevated */ + /* Procedure get_lastCheckPeriodMinutes */ -/* 2010 */ 0x33, /* FC_AUTO_HANDLE */ +/* 2040 */ 0x33, /* FC_AUTO_HANDLE */ 0x6c, /* Old Flags: object, Oi2 */ -/* 2012 */ NdrFcLong( 0x0 ), /* 0 */ -/* 2016 */ NdrFcShort( 0x5 ), /* 5 */ -/* 2018 */ NdrFcShort( 0x18 ), /* x86 Stack size/offset = 24 */ -/* 2020 */ NdrFcShort( 0x8 ), /* 8 */ -/* 2022 */ NdrFcShort( 0x24 ), /* 36 */ -/* 2024 */ 0x46, /* Oi2 Flags: clt must size, has return, has ext, */ - 0x5, /* 5 */ -/* 2026 */ 0x8, /* 8 */ - 0x1, /* Ext Flags: new corr desc, */ -/* 2028 */ NdrFcShort( 0x0 ), /* 0 */ -/* 2030 */ NdrFcShort( 0x0 ), /* 0 */ -/* 2032 */ NdrFcShort( 0x0 ), /* 0 */ - - /* Parameter app_guid */ - -/* 2034 */ NdrFcShort( 0x10b ), /* Flags: must size, must free, in, simple ref, */ -/* 2036 */ NdrFcShort( 0x4 ), /* x86 Stack size/offset = 4 */ -/* 2038 */ NdrFcShort( 0x44a ), /* Type Offset=1098 */ - - /* Parameter cmd_id */ - -/* 2040 */ NdrFcShort( 0x10b ), /* Flags: must size, must free, in, simple ref, */ -/* 2042 */ NdrFcShort( 0x8 ), /* x86 Stack size/offset = 8 */ -/* 2044 */ NdrFcShort( 0x44a ), /* Type Offset=1098 */ - - /* Parameter caller_proc_id */ - -/* 2046 */ NdrFcShort( 0x48 ), /* Flags: in, base type, */ +/* 2042 */ NdrFcLong( 0x0 ), /* 0 */ +/* 2046 */ NdrFcShort( 0xa ), /* 10 */ /* 2048 */ NdrFcShort( 0xc ), /* x86 Stack size/offset = 12 */ -/* 2050 */ 0x8, /* FC_LONG */ - 0x0, /* 0 */ +/* 2050 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2052 */ NdrFcShort( 0x8 ), /* 8 */ +/* 2054 */ 0x45, /* Oi2 Flags: srv must size, has return, has ext, */ + 0x2, /* 2 */ +/* 2056 */ 0x8, /* 8 */ + 0x1, /* Ext Flags: new corr desc, */ +/* 2058 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2060 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2062 */ NdrFcShort( 0x0 ), /* 0 */ - /* Parameter proc_handle */ + /* Parameter value */ -/* 2052 */ NdrFcShort( 0x2150 ), /* Flags: out, base type, simple ref, srv alloc size=8 */ -/* 2054 */ NdrFcShort( 0x10 ), /* x86 Stack size/offset = 16 */ -/* 2056 */ 0x8, /* FC_LONG */ - 0x0, /* 0 */ +/* 2064 */ NdrFcShort( 0x13 ), /* Flags: must size, must free, out, */ +/* 2066 */ NdrFcShort( 0x4 ), /* x86 Stack size/offset = 4 */ +/* 2068 */ NdrFcShort( 0x44c ), /* Type Offset=1100 */ /* Return value */ -/* 2058 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ -/* 2060 */ NdrFcShort( 0x14 ), /* x86 Stack size/offset = 20 */ -/* 2062 */ 0x8, /* FC_LONG */ +/* 2070 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ +/* 2072 */ NdrFcShort( 0x8 ), /* x86 Stack size/offset = 8 */ +/* 2074 */ 0x8, /* FC_LONG */ 0x0, /* 0 */ - /* Procedure LaunchCmdLineEx */ + /* Procedure get_updatesSuppressedTimes */ -/* 2064 */ 0x33, /* FC_AUTO_HANDLE */ +/* 2076 */ 0x33, /* FC_AUTO_HANDLE */ 0x6c, /* Old Flags: object, Oi2 */ -/* 2066 */ NdrFcLong( 0x0 ), /* 0 */ -/* 2070 */ NdrFcShort( 0x6 ), /* 6 */ -/* 2072 */ NdrFcShort( 0x18 ), /* x86 Stack size/offset = 24 */ -/* 2074 */ NdrFcShort( 0x0 ), /* 0 */ -/* 2076 */ NdrFcShort( 0x5c ), /* 92 */ -/* 2078 */ 0x46, /* Oi2 Flags: clt must size, has return, has ext, */ - 0x5, /* 5 */ -/* 2080 */ 0x8, /* 8 */ +/* 2078 */ NdrFcLong( 0x0 ), /* 0 */ +/* 2082 */ NdrFcShort( 0xb ), /* 11 */ +/* 2084 */ NdrFcShort( 0x10 ), /* x86 Stack size/offset = 16 */ +/* 2086 */ NdrFcShort( 0x1a ), /* 26 */ +/* 2088 */ NdrFcShort( 0x8 ), /* 8 */ +/* 2090 */ 0x45, /* Oi2 Flags: srv must size, has return, has ext, */ + 0x3, /* 3 */ +/* 2092 */ 0x8, /* 8 */ 0x1, /* Ext Flags: new corr desc, */ -/* 2082 */ NdrFcShort( 0x0 ), /* 0 */ -/* 2084 */ NdrFcShort( 0x0 ), /* 0 */ -/* 2086 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2094 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2096 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2098 */ NdrFcShort( 0x0 ), /* 0 */ - /* Parameter cmd_line */ + /* Parameter value */ -/* 2088 */ NdrFcShort( 0x10b ), /* Flags: must size, must free, in, simple ref, */ -/* 2090 */ NdrFcShort( 0x4 ), /* x86 Stack size/offset = 4 */ -/* 2092 */ NdrFcShort( 0x44a ), /* Type Offset=1098 */ +/* 2100 */ NdrFcShort( 0x13 ), /* Flags: must size, must free, out, */ +/* 2102 */ NdrFcShort( 0x4 ), /* x86 Stack size/offset = 4 */ +/* 2104 */ NdrFcShort( 0x44c ), /* Type Offset=1100 */ - /* Parameter server_proc_id */ + /* Parameter are_updates_suppressed */ -/* 2094 */ NdrFcShort( 0x2150 ), /* Flags: out, base type, simple ref, srv alloc size=8 */ -/* 2096 */ NdrFcShort( 0x8 ), /* x86 Stack size/offset = 8 */ -/* 2098 */ 0x8, /* FC_LONG */ - 0x0, /* 0 */ - - /* Parameter proc_handle */ - -/* 2100 */ NdrFcShort( 0x2150 ), /* Flags: out, base type, simple ref, srv alloc size=8 */ -/* 2102 */ NdrFcShort( 0xc ), /* x86 Stack size/offset = 12 */ -/* 2104 */ 0x8, /* FC_LONG */ - 0x0, /* 0 */ - - /* Parameter stdout_handle */ - -/* 2106 */ NdrFcShort( 0x2150 ), /* Flags: out, base type, simple ref, srv alloc size=8 */ -/* 2108 */ NdrFcShort( 0x10 ), /* x86 Stack size/offset = 16 */ -/* 2110 */ 0x8, /* FC_LONG */ +/* 2106 */ NdrFcShort( 0x148 ), /* Flags: in, base type, simple ref, */ +/* 2108 */ NdrFcShort( 0x8 ), /* x86 Stack size/offset = 8 */ +/* 2110 */ 0x6, /* FC_SHORT */ 0x0, /* 0 */ /* Return value */ /* 2112 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ -/* 2114 */ NdrFcShort( 0x14 ), /* x86 Stack size/offset = 20 */ +/* 2114 */ NdrFcShort( 0xc ), /* x86 Stack size/offset = 12 */ /* 2116 */ 0x8, /* FC_LONG */ 0x0, /* 0 */ + /* Procedure get_downloadPreferenceGroupPolicy */ + +/* 2118 */ 0x33, /* FC_AUTO_HANDLE */ + 0x6c, /* Old Flags: object, Oi2 */ +/* 2120 */ NdrFcLong( 0x0 ), /* 0 */ +/* 2124 */ NdrFcShort( 0xc ), /* 12 */ +/* 2126 */ NdrFcShort( 0xc ), /* x86 Stack size/offset = 12 */ +/* 2128 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2130 */ NdrFcShort( 0x8 ), /* 8 */ +/* 2132 */ 0x45, /* Oi2 Flags: srv must size, has return, has ext, */ + 0x2, /* 2 */ +/* 2134 */ 0x8, /* 8 */ + 0x1, /* Ext Flags: new corr desc, */ +/* 2136 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2138 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2140 */ NdrFcShort( 0x0 ), /* 0 */ + + /* Parameter value */ + +/* 2142 */ NdrFcShort( 0x13 ), /* Flags: must size, must free, out, */ +/* 2144 */ NdrFcShort( 0x4 ), /* x86 Stack size/offset = 4 */ +/* 2146 */ NdrFcShort( 0x44c ), /* Type Offset=1100 */ + + /* Return value */ + +/* 2148 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ +/* 2150 */ NdrFcShort( 0x8 ), /* x86 Stack size/offset = 8 */ +/* 2152 */ 0x8, /* FC_LONG */ + 0x0, /* 0 */ + + /* Procedure get_packageCacheSizeLimitMBytes */ + +/* 2154 */ 0x33, /* FC_AUTO_HANDLE */ + 0x6c, /* Old Flags: object, Oi2 */ +/* 2156 */ NdrFcLong( 0x0 ), /* 0 */ +/* 2160 */ NdrFcShort( 0xd ), /* 13 */ +/* 2162 */ NdrFcShort( 0xc ), /* x86 Stack size/offset = 12 */ +/* 2164 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2166 */ NdrFcShort( 0x8 ), /* 8 */ +/* 2168 */ 0x45, /* Oi2 Flags: srv must size, has return, has ext, */ + 0x2, /* 2 */ +/* 2170 */ 0x8, /* 8 */ + 0x1, /* Ext Flags: new corr desc, */ +/* 2172 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2174 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2176 */ NdrFcShort( 0x0 ), /* 0 */ + + /* Parameter value */ + +/* 2178 */ NdrFcShort( 0x13 ), /* Flags: must size, must free, out, */ +/* 2180 */ NdrFcShort( 0x4 ), /* x86 Stack size/offset = 4 */ +/* 2182 */ NdrFcShort( 0x44c ), /* Type Offset=1100 */ + + /* Return value */ + +/* 2184 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ +/* 2186 */ NdrFcShort( 0x8 ), /* x86 Stack size/offset = 8 */ +/* 2188 */ 0x8, /* FC_LONG */ + 0x0, /* 0 */ + + /* Procedure get_packageCacheExpirationTimeDays */ + +/* 2190 */ 0x33, /* FC_AUTO_HANDLE */ + 0x6c, /* Old Flags: object, Oi2 */ +/* 2192 */ NdrFcLong( 0x0 ), /* 0 */ +/* 2196 */ NdrFcShort( 0xe ), /* 14 */ +/* 2198 */ NdrFcShort( 0xc ), /* x86 Stack size/offset = 12 */ +/* 2200 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2202 */ NdrFcShort( 0x8 ), /* 8 */ +/* 2204 */ 0x45, /* Oi2 Flags: srv must size, has return, has ext, */ + 0x2, /* 2 */ +/* 2206 */ 0x8, /* 8 */ + 0x1, /* Ext Flags: new corr desc, */ +/* 2208 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2210 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2212 */ NdrFcShort( 0x0 ), /* 0 */ + + /* Parameter value */ + +/* 2214 */ NdrFcShort( 0x13 ), /* Flags: must size, must free, out, */ +/* 2216 */ NdrFcShort( 0x4 ), /* x86 Stack size/offset = 4 */ +/* 2218 */ NdrFcShort( 0x44c ), /* Type Offset=1100 */ + + /* Return value */ + +/* 2220 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ +/* 2222 */ NdrFcShort( 0x8 ), /* x86 Stack size/offset = 8 */ +/* 2224 */ 0x8, /* FC_LONG */ + 0x0, /* 0 */ + + /* Procedure get_proxyMode */ + +/* 2226 */ 0x33, /* FC_AUTO_HANDLE */ + 0x6c, /* Old Flags: object, Oi2 */ +/* 2228 */ NdrFcLong( 0x0 ), /* 0 */ +/* 2232 */ NdrFcShort( 0xf ), /* 15 */ +/* 2234 */ NdrFcShort( 0xc ), /* x86 Stack size/offset = 12 */ +/* 2236 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2238 */ NdrFcShort( 0x8 ), /* 8 */ +/* 2240 */ 0x45, /* Oi2 Flags: srv must size, has return, has ext, */ + 0x2, /* 2 */ +/* 2242 */ 0x8, /* 8 */ + 0x1, /* Ext Flags: new corr desc, */ +/* 2244 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2246 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2248 */ NdrFcShort( 0x0 ), /* 0 */ + + /* Parameter value */ + +/* 2250 */ NdrFcShort( 0x13 ), /* Flags: must size, must free, out, */ +/* 2252 */ NdrFcShort( 0x4 ), /* x86 Stack size/offset = 4 */ +/* 2254 */ NdrFcShort( 0x44c ), /* Type Offset=1100 */ + + /* Return value */ + +/* 2256 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ +/* 2258 */ NdrFcShort( 0x8 ), /* x86 Stack size/offset = 8 */ +/* 2260 */ 0x8, /* FC_LONG */ + 0x0, /* 0 */ + + /* Procedure get_proxyPacUrl */ + +/* 2262 */ 0x33, /* FC_AUTO_HANDLE */ + 0x6c, /* Old Flags: object, Oi2 */ +/* 2264 */ NdrFcLong( 0x0 ), /* 0 */ +/* 2268 */ NdrFcShort( 0x10 ), /* 16 */ +/* 2270 */ NdrFcShort( 0xc ), /* x86 Stack size/offset = 12 */ +/* 2272 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2274 */ NdrFcShort( 0x8 ), /* 8 */ +/* 2276 */ 0x45, /* Oi2 Flags: srv must size, has return, has ext, */ + 0x2, /* 2 */ +/* 2278 */ 0x8, /* 8 */ + 0x1, /* Ext Flags: new corr desc, */ +/* 2280 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2282 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2284 */ NdrFcShort( 0x0 ), /* 0 */ + + /* Parameter value */ + +/* 2286 */ NdrFcShort( 0x13 ), /* Flags: must size, must free, out, */ +/* 2288 */ NdrFcShort( 0x4 ), /* x86 Stack size/offset = 4 */ +/* 2290 */ NdrFcShort( 0x44c ), /* Type Offset=1100 */ + + /* Return value */ + +/* 2292 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ +/* 2294 */ NdrFcShort( 0x8 ), /* x86 Stack size/offset = 8 */ +/* 2296 */ 0x8, /* FC_LONG */ + 0x0, /* 0 */ + + /* Procedure get_proxyServer */ + +/* 2298 */ 0x33, /* FC_AUTO_HANDLE */ + 0x6c, /* Old Flags: object, Oi2 */ +/* 2300 */ NdrFcLong( 0x0 ), /* 0 */ +/* 2304 */ NdrFcShort( 0x11 ), /* 17 */ +/* 2306 */ NdrFcShort( 0xc ), /* x86 Stack size/offset = 12 */ +/* 2308 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2310 */ NdrFcShort( 0x8 ), /* 8 */ +/* 2312 */ 0x45, /* Oi2 Flags: srv must size, has return, has ext, */ + 0x2, /* 2 */ +/* 2314 */ 0x8, /* 8 */ + 0x1, /* Ext Flags: new corr desc, */ +/* 2316 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2318 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2320 */ NdrFcShort( 0x0 ), /* 0 */ + + /* Parameter value */ + +/* 2322 */ NdrFcShort( 0x13 ), /* Flags: must size, must free, out, */ +/* 2324 */ NdrFcShort( 0x4 ), /* x86 Stack size/offset = 4 */ +/* 2326 */ NdrFcShort( 0x44c ), /* Type Offset=1100 */ + + /* Return value */ + +/* 2328 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ +/* 2330 */ NdrFcShort( 0x8 ), /* x86 Stack size/offset = 8 */ +/* 2332 */ 0x8, /* FC_LONG */ + 0x0, /* 0 */ + + /* Procedure get_effectivePolicyForAppInstalls */ + +/* 2334 */ 0x33, /* FC_AUTO_HANDLE */ + 0x6c, /* Old Flags: object, Oi2 */ +/* 2336 */ NdrFcLong( 0x0 ), /* 0 */ +/* 2340 */ NdrFcShort( 0x12 ), /* 18 */ +/* 2342 */ NdrFcShort( 0x10 ), /* x86 Stack size/offset = 16 */ +/* 2344 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2346 */ NdrFcShort( 0x8 ), /* 8 */ +/* 2348 */ 0x47, /* Oi2 Flags: srv must size, clt must size, has return, has ext, */ + 0x3, /* 3 */ +/* 2350 */ 0x8, /* 8 */ + 0x5, /* Ext Flags: new corr desc, srv corr check, */ +/* 2352 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2354 */ NdrFcShort( 0x1 ), /* 1 */ +/* 2356 */ NdrFcShort( 0x0 ), /* 0 */ + + /* Parameter app_id */ + +/* 2358 */ NdrFcShort( 0x8b ), /* Flags: must size, must free, in, by val, */ +/* 2360 */ NdrFcShort( 0x4 ), /* x86 Stack size/offset = 4 */ +/* 2362 */ NdrFcShort( 0x50 ), /* Type Offset=80 */ + + /* Parameter value */ + +/* 2364 */ NdrFcShort( 0x13 ), /* Flags: must size, must free, out, */ +/* 2366 */ NdrFcShort( 0x8 ), /* x86 Stack size/offset = 8 */ +/* 2368 */ NdrFcShort( 0x44c ), /* Type Offset=1100 */ + + /* Return value */ + +/* 2370 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ +/* 2372 */ NdrFcShort( 0xc ), /* x86 Stack size/offset = 12 */ +/* 2374 */ 0x8, /* FC_LONG */ + 0x0, /* 0 */ + + /* Procedure get_effectivePolicyForAppUpdates */ + +/* 2376 */ 0x33, /* FC_AUTO_HANDLE */ + 0x6c, /* Old Flags: object, Oi2 */ +/* 2378 */ NdrFcLong( 0x0 ), /* 0 */ +/* 2382 */ NdrFcShort( 0x13 ), /* 19 */ +/* 2384 */ NdrFcShort( 0x10 ), /* x86 Stack size/offset = 16 */ +/* 2386 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2388 */ NdrFcShort( 0x8 ), /* 8 */ +/* 2390 */ 0x47, /* Oi2 Flags: srv must size, clt must size, has return, has ext, */ + 0x3, /* 3 */ +/* 2392 */ 0x8, /* 8 */ + 0x5, /* Ext Flags: new corr desc, srv corr check, */ +/* 2394 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2396 */ NdrFcShort( 0x1 ), /* 1 */ +/* 2398 */ NdrFcShort( 0x0 ), /* 0 */ + + /* Parameter app_id */ + +/* 2400 */ NdrFcShort( 0x8b ), /* Flags: must size, must free, in, by val, */ +/* 2402 */ NdrFcShort( 0x4 ), /* x86 Stack size/offset = 4 */ +/* 2404 */ NdrFcShort( 0x50 ), /* Type Offset=80 */ + + /* Parameter value */ + +/* 2406 */ NdrFcShort( 0x13 ), /* Flags: must size, must free, out, */ +/* 2408 */ NdrFcShort( 0x8 ), /* x86 Stack size/offset = 8 */ +/* 2410 */ NdrFcShort( 0x44c ), /* Type Offset=1100 */ + + /* Return value */ + +/* 2412 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ +/* 2414 */ NdrFcShort( 0xc ), /* x86 Stack size/offset = 12 */ +/* 2416 */ 0x8, /* FC_LONG */ + 0x0, /* 0 */ + + /* Procedure get_targetVersionPrefix */ + +/* 2418 */ 0x33, /* FC_AUTO_HANDLE */ + 0x6c, /* Old Flags: object, Oi2 */ +/* 2420 */ NdrFcLong( 0x0 ), /* 0 */ +/* 2424 */ NdrFcShort( 0x14 ), /* 20 */ +/* 2426 */ NdrFcShort( 0x10 ), /* x86 Stack size/offset = 16 */ +/* 2428 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2430 */ NdrFcShort( 0x8 ), /* 8 */ +/* 2432 */ 0x47, /* Oi2 Flags: srv must size, clt must size, has return, has ext, */ + 0x3, /* 3 */ +/* 2434 */ 0x8, /* 8 */ + 0x5, /* Ext Flags: new corr desc, srv corr check, */ +/* 2436 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2438 */ NdrFcShort( 0x1 ), /* 1 */ +/* 2440 */ NdrFcShort( 0x0 ), /* 0 */ + + /* Parameter app_id */ + +/* 2442 */ NdrFcShort( 0x8b ), /* Flags: must size, must free, in, by val, */ +/* 2444 */ NdrFcShort( 0x4 ), /* x86 Stack size/offset = 4 */ +/* 2446 */ NdrFcShort( 0x50 ), /* Type Offset=80 */ + + /* Parameter value */ + +/* 2448 */ NdrFcShort( 0x13 ), /* Flags: must size, must free, out, */ +/* 2450 */ NdrFcShort( 0x8 ), /* x86 Stack size/offset = 8 */ +/* 2452 */ NdrFcShort( 0x44c ), /* Type Offset=1100 */ + + /* Return value */ + +/* 2454 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ +/* 2456 */ NdrFcShort( 0xc ), /* x86 Stack size/offset = 12 */ +/* 2458 */ 0x8, /* FC_LONG */ + 0x0, /* 0 */ + + /* Procedure get_isRollbackToTargetVersionAllowed */ + +/* 2460 */ 0x33, /* FC_AUTO_HANDLE */ + 0x6c, /* Old Flags: object, Oi2 */ +/* 2462 */ NdrFcLong( 0x0 ), /* 0 */ +/* 2466 */ NdrFcShort( 0x15 ), /* 21 */ +/* 2468 */ NdrFcShort( 0x10 ), /* x86 Stack size/offset = 16 */ +/* 2470 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2472 */ NdrFcShort( 0x8 ), /* 8 */ +/* 2474 */ 0x47, /* Oi2 Flags: srv must size, clt must size, has return, has ext, */ + 0x3, /* 3 */ +/* 2476 */ 0x8, /* 8 */ + 0x5, /* Ext Flags: new corr desc, srv corr check, */ +/* 2478 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2480 */ NdrFcShort( 0x1 ), /* 1 */ +/* 2482 */ NdrFcShort( 0x0 ), /* 0 */ + + /* Parameter app_id */ + +/* 2484 */ NdrFcShort( 0x8b ), /* Flags: must size, must free, in, by val, */ +/* 2486 */ NdrFcShort( 0x4 ), /* x86 Stack size/offset = 4 */ +/* 2488 */ NdrFcShort( 0x50 ), /* Type Offset=80 */ + + /* Parameter value */ + +/* 2490 */ NdrFcShort( 0x13 ), /* Flags: must size, must free, out, */ +/* 2492 */ NdrFcShort( 0x8 ), /* x86 Stack size/offset = 8 */ +/* 2494 */ NdrFcShort( 0x44c ), /* Type Offset=1100 */ + + /* Return value */ + +/* 2496 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ +/* 2498 */ NdrFcShort( 0xc ), /* x86 Stack size/offset = 12 */ +/* 2500 */ 0x8, /* FC_LONG */ + 0x0, /* 0 */ + + /* Procedure get_targetChannel */ + +/* 2502 */ 0x33, /* FC_AUTO_HANDLE */ + 0x6c, /* Old Flags: object, Oi2 */ +/* 2504 */ NdrFcLong( 0x0 ), /* 0 */ +/* 2508 */ NdrFcShort( 0x16 ), /* 22 */ +/* 2510 */ NdrFcShort( 0x10 ), /* x86 Stack size/offset = 16 */ +/* 2512 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2514 */ NdrFcShort( 0x8 ), /* 8 */ +/* 2516 */ 0x47, /* Oi2 Flags: srv must size, clt must size, has return, has ext, */ + 0x3, /* 3 */ +/* 2518 */ 0x8, /* 8 */ + 0x5, /* Ext Flags: new corr desc, srv corr check, */ +/* 2520 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2522 */ NdrFcShort( 0x1 ), /* 1 */ +/* 2524 */ NdrFcShort( 0x0 ), /* 0 */ + + /* Parameter app_id */ + +/* 2526 */ NdrFcShort( 0x8b ), /* Flags: must size, must free, in, by val, */ +/* 2528 */ NdrFcShort( 0x4 ), /* x86 Stack size/offset = 4 */ +/* 2530 */ NdrFcShort( 0x50 ), /* Type Offset=80 */ + + /* Parameter value */ + +/* 2532 */ NdrFcShort( 0x13 ), /* Flags: must size, must free, out, */ +/* 2534 */ NdrFcShort( 0x8 ), /* x86 Stack size/offset = 8 */ +/* 2536 */ NdrFcShort( 0x44c ), /* Type Offset=1100 */ + + /* Return value */ + +/* 2538 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ +/* 2540 */ NdrFcShort( 0xc ), /* x86 Stack size/offset = 12 */ +/* 2542 */ 0x8, /* FC_LONG */ + 0x0, /* 0 */ + + /* Procedure get_forceInstallApps */ + +/* 2544 */ 0x33, /* FC_AUTO_HANDLE */ + 0x6c, /* Old Flags: object, Oi2 */ +/* 2546 */ NdrFcLong( 0x0 ), /* 0 */ +/* 2550 */ NdrFcShort( 0x17 ), /* 23 */ +/* 2552 */ NdrFcShort( 0x10 ), /* x86 Stack size/offset = 16 */ +/* 2554 */ NdrFcShort( 0x6 ), /* 6 */ +/* 2556 */ NdrFcShort( 0x8 ), /* 8 */ +/* 2558 */ 0x45, /* Oi2 Flags: srv must size, has return, has ext, */ + 0x3, /* 3 */ +/* 2560 */ 0x8, /* 8 */ + 0x1, /* Ext Flags: new corr desc, */ +/* 2562 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2564 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2566 */ NdrFcShort( 0x0 ), /* 0 */ + + /* Parameter is_machine */ + +/* 2568 */ NdrFcShort( 0x48 ), /* Flags: in, base type, */ +/* 2570 */ NdrFcShort( 0x4 ), /* x86 Stack size/offset = 4 */ +/* 2572 */ 0x6, /* FC_SHORT */ + 0x0, /* 0 */ + + /* Parameter value */ + +/* 2574 */ NdrFcShort( 0x13 ), /* Flags: must size, must free, out, */ +/* 2576 */ NdrFcShort( 0x8 ), /* x86 Stack size/offset = 8 */ +/* 2578 */ NdrFcShort( 0x44c ), /* Type Offset=1100 */ + + /* Return value */ + +/* 2580 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ +/* 2582 */ NdrFcShort( 0xc ), /* x86 Stack size/offset = 12 */ +/* 2584 */ 0x8, /* FC_LONG */ + 0x0, /* 0 */ + + /* Procedure LaunchCmdLine */ + +/* 2586 */ 0x33, /* FC_AUTO_HANDLE */ + 0x6c, /* Old Flags: object, Oi2 */ +/* 2588 */ NdrFcLong( 0x0 ), /* 0 */ +/* 2592 */ NdrFcShort( 0x3 ), /* 3 */ +/* 2594 */ NdrFcShort( 0xc ), /* x86 Stack size/offset = 12 */ +/* 2596 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2598 */ NdrFcShort( 0x8 ), /* 8 */ +/* 2600 */ 0x46, /* Oi2 Flags: clt must size, has return, has ext, */ + 0x2, /* 2 */ +/* 2602 */ 0x8, /* 8 */ + 0x1, /* Ext Flags: new corr desc, */ +/* 2604 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2606 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2608 */ NdrFcShort( 0x0 ), /* 0 */ + + /* Parameter cmd_line */ + +/* 2610 */ NdrFcShort( 0x10b ), /* Flags: must size, must free, in, simple ref, */ +/* 2612 */ NdrFcShort( 0x4 ), /* x86 Stack size/offset = 4 */ +/* 2614 */ NdrFcShort( 0x468 ), /* Type Offset=1128 */ + + /* Return value */ + +/* 2616 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ +/* 2618 */ NdrFcShort( 0x8 ), /* x86 Stack size/offset = 8 */ +/* 2620 */ 0x8, /* FC_LONG */ + 0x0, /* 0 */ + + /* Procedure LaunchBrowser */ + +/* 2622 */ 0x33, /* FC_AUTO_HANDLE */ + 0x6c, /* Old Flags: object, Oi2 */ +/* 2624 */ NdrFcLong( 0x0 ), /* 0 */ +/* 2628 */ NdrFcShort( 0x4 ), /* 4 */ +/* 2630 */ NdrFcShort( 0x10 ), /* x86 Stack size/offset = 16 */ +/* 2632 */ NdrFcShort( 0x8 ), /* 8 */ +/* 2634 */ NdrFcShort( 0x8 ), /* 8 */ +/* 2636 */ 0x46, /* Oi2 Flags: clt must size, has return, has ext, */ + 0x3, /* 3 */ +/* 2638 */ 0x8, /* 8 */ + 0x1, /* Ext Flags: new corr desc, */ +/* 2640 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2642 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2644 */ NdrFcShort( 0x0 ), /* 0 */ + + /* Parameter browser_type */ + +/* 2646 */ NdrFcShort( 0x48 ), /* Flags: in, base type, */ +/* 2648 */ NdrFcShort( 0x4 ), /* x86 Stack size/offset = 4 */ +/* 2650 */ 0x8, /* FC_LONG */ + 0x0, /* 0 */ + + /* Parameter url */ + +/* 2652 */ NdrFcShort( 0x10b ), /* Flags: must size, must free, in, simple ref, */ +/* 2654 */ NdrFcShort( 0x8 ), /* x86 Stack size/offset = 8 */ +/* 2656 */ NdrFcShort( 0x468 ), /* Type Offset=1128 */ + + /* Return value */ + +/* 2658 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ +/* 2660 */ NdrFcShort( 0xc ), /* x86 Stack size/offset = 12 */ +/* 2662 */ 0x8, /* FC_LONG */ + 0x0, /* 0 */ + + /* Procedure LaunchCmdElevated */ + +/* 2664 */ 0x33, /* FC_AUTO_HANDLE */ + 0x6c, /* Old Flags: object, Oi2 */ +/* 2666 */ NdrFcLong( 0x0 ), /* 0 */ +/* 2670 */ NdrFcShort( 0x5 ), /* 5 */ +/* 2672 */ NdrFcShort( 0x18 ), /* x86 Stack size/offset = 24 */ +/* 2674 */ NdrFcShort( 0x8 ), /* 8 */ +/* 2676 */ NdrFcShort( 0x24 ), /* 36 */ +/* 2678 */ 0x46, /* Oi2 Flags: clt must size, has return, has ext, */ + 0x5, /* 5 */ +/* 2680 */ 0x8, /* 8 */ + 0x1, /* Ext Flags: new corr desc, */ +/* 2682 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2684 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2686 */ NdrFcShort( 0x0 ), /* 0 */ + + /* Parameter app_guid */ + +/* 2688 */ NdrFcShort( 0x10b ), /* Flags: must size, must free, in, simple ref, */ +/* 2690 */ NdrFcShort( 0x4 ), /* x86 Stack size/offset = 4 */ +/* 2692 */ NdrFcShort( 0x468 ), /* Type Offset=1128 */ + + /* Parameter cmd_id */ + +/* 2694 */ NdrFcShort( 0x10b ), /* Flags: must size, must free, in, simple ref, */ +/* 2696 */ NdrFcShort( 0x8 ), /* x86 Stack size/offset = 8 */ +/* 2698 */ NdrFcShort( 0x468 ), /* Type Offset=1128 */ + + /* Parameter caller_proc_id */ + +/* 2700 */ NdrFcShort( 0x48 ), /* Flags: in, base type, */ +/* 2702 */ NdrFcShort( 0xc ), /* x86 Stack size/offset = 12 */ +/* 2704 */ 0x8, /* FC_LONG */ + 0x0, /* 0 */ + + /* Parameter proc_handle */ + +/* 2706 */ NdrFcShort( 0x2150 ), /* Flags: out, base type, simple ref, srv alloc size=8 */ +/* 2708 */ NdrFcShort( 0x10 ), /* x86 Stack size/offset = 16 */ +/* 2710 */ 0x8, /* FC_LONG */ + 0x0, /* 0 */ + + /* Return value */ + +/* 2712 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ +/* 2714 */ NdrFcShort( 0x14 ), /* x86 Stack size/offset = 20 */ +/* 2716 */ 0x8, /* FC_LONG */ + 0x0, /* 0 */ + + /* Procedure LaunchCmdLineEx */ + +/* 2718 */ 0x33, /* FC_AUTO_HANDLE */ + 0x6c, /* Old Flags: object, Oi2 */ +/* 2720 */ NdrFcLong( 0x0 ), /* 0 */ +/* 2724 */ NdrFcShort( 0x6 ), /* 6 */ +/* 2726 */ NdrFcShort( 0x18 ), /* x86 Stack size/offset = 24 */ +/* 2728 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2730 */ NdrFcShort( 0x5c ), /* 92 */ +/* 2732 */ 0x46, /* Oi2 Flags: clt must size, has return, has ext, */ + 0x5, /* 5 */ +/* 2734 */ 0x8, /* 8 */ + 0x1, /* Ext Flags: new corr desc, */ +/* 2736 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2738 */ NdrFcShort( 0x0 ), /* 0 */ +/* 2740 */ NdrFcShort( 0x0 ), /* 0 */ + + /* Parameter cmd_line */ + +/* 2742 */ NdrFcShort( 0x10b ), /* Flags: must size, must free, in, simple ref, */ +/* 2744 */ NdrFcShort( 0x4 ), /* x86 Stack size/offset = 4 */ +/* 2746 */ NdrFcShort( 0x468 ), /* Type Offset=1128 */ + + /* Parameter server_proc_id */ + +/* 2748 */ NdrFcShort( 0x2150 ), /* Flags: out, base type, simple ref, srv alloc size=8 */ +/* 2750 */ NdrFcShort( 0x8 ), /* x86 Stack size/offset = 8 */ +/* 2752 */ 0x8, /* FC_LONG */ + 0x0, /* 0 */ + + /* Parameter proc_handle */ + +/* 2754 */ NdrFcShort( 0x2150 ), /* Flags: out, base type, simple ref, srv alloc size=8 */ +/* 2756 */ NdrFcShort( 0xc ), /* x86 Stack size/offset = 12 */ +/* 2758 */ 0x8, /* FC_LONG */ + 0x0, /* 0 */ + + /* Parameter stdout_handle */ + +/* 2760 */ NdrFcShort( 0x2150 ), /* Flags: out, base type, simple ref, srv alloc size=8 */ +/* 2762 */ NdrFcShort( 0x10 ), /* x86 Stack size/offset = 16 */ +/* 2764 */ 0x8, /* FC_LONG */ + 0x0, /* 0 */ + + /* Return value */ + +/* 2766 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */ +/* 2768 */ NdrFcShort( 0x14 ), /* x86 Stack size/offset = 20 */ +/* 2770 */ 0x8, /* FC_LONG */ + 0x0, /* 0 */ + 0x0 } }; @@ -2826,8 +3445,33 @@ /* 1092 */ NdrFcShort( 0x0 ), /* 0 */ /* 1094 */ NdrFcShort( 0xfff4 ), /* Offset= -12 (1082) */ /* 1096 */ + 0x11, 0xc, /* FC_RP [alloced_on_stack] [simple_pointer] */ +/* 1098 */ 0xc, /* FC_DOUBLE */ + 0x5c, /* FC_PAD */ +/* 1100 */ + 0x11, 0x10, /* FC_RP [pointer_deref] */ +/* 1102 */ NdrFcShort( 0x2 ), /* Offset= 2 (1104) */ +/* 1104 */ + 0x2f, /* FC_IP */ + 0x5a, /* FC_CONSTANT_IID */ +/* 1106 */ NdrFcLong( 0x27634814 ), /* 660817940 */ +/* 1110 */ NdrFcShort( 0x8e41 ), /* -29119 */ +/* 1112 */ NdrFcShort( 0x4c35 ), /* 19509 */ +/* 1114 */ 0x85, /* 133 */ + 0x77, /* 119 */ +/* 1116 */ 0x98, /* 152 */ + 0x1, /* 1 */ +/* 1118 */ 0x34, /* 52 */ + 0xa9, /* 169 */ +/* 1120 */ 0x65, /* 101 */ + 0x44, /* 68 */ +/* 1122 */ 0x11, 0x8, /* FC_RP [simple_pointer] */ -/* 1098 */ +/* 1124 */ 0x6, /* FC_SHORT */ + 0x5c, /* FC_PAD */ +/* 1126 */ + 0x11, 0x8, /* FC_RP [simple_pointer] */ +/* 1128 */ 0x25, /* FC_C_WSTRING */ 0x5c, /* FC_PAD */ @@ -3438,15 +4082,324 @@ }; +/* Object interface: IPolicyStatusValue, ver. 0.0, + GUID={0x27634814,0x8E41,0x4C35,{0x85,0x77,0x98,0x01,0x34,0xA9,0x65,0x44}} */ + +#pragma code_seg(".orpc") +static const unsigned short IPolicyStatusValue_FormatStringOffsetTable[] = + { + (unsigned short) -1, + (unsigned short) -1, + (unsigned short) -1, + (unsigned short) -1, + 1206, + 36, + 1932, + 768, + 1968 + }; + +static const MIDL_STUBLESS_PROXY_INFO IPolicyStatusValue_ProxyInfo = + { + &Object_StubDesc, + updater_legacy_idl__MIDL_ProcFormatString.Format, + &IPolicyStatusValue_FormatStringOffsetTable[-3], + 0, + 0, + 0 + }; + + +static const MIDL_SERVER_INFO IPolicyStatusValue_ServerInfo = + { + &Object_StubDesc, + 0, + updater_legacy_idl__MIDL_ProcFormatString.Format, + &IPolicyStatusValue_FormatStringOffsetTable[-3], + 0, + 0, + 0, + 0}; +CINTERFACE_PROXY_VTABLE(12) _IPolicyStatusValueProxyVtbl = +{ + &IPolicyStatusValue_ProxyInfo, + &IID_IPolicyStatusValue, + IUnknown_QueryInterface_Proxy, + IUnknown_AddRef_Proxy, + IUnknown_Release_Proxy , + 0 /* IDispatch::GetTypeInfoCount */ , + 0 /* IDispatch::GetTypeInfo */ , + 0 /* IDispatch::GetIDsOfNames */ , + 0 /* IDispatch_Invoke_Proxy */ , + (void *) (INT_PTR) -1 /* IPolicyStatusValue::get_source */ , + (void *) (INT_PTR) -1 /* IPolicyStatusValue::get_value */ , + (void *) (INT_PTR) -1 /* IPolicyStatusValue::get_hasConflict */ , + (void *) (INT_PTR) -1 /* IPolicyStatusValue::get_conflictSource */ , + (void *) (INT_PTR) -1 /* IPolicyStatusValue::get_conflictValue */ +}; + + +static const PRPC_STUB_FUNCTION IPolicyStatusValue_table[] = +{ + STUB_FORWARDING_FUNCTION, + STUB_FORWARDING_FUNCTION, + STUB_FORWARDING_FUNCTION, + STUB_FORWARDING_FUNCTION, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2 +}; + +CInterfaceStubVtbl _IPolicyStatusValueStubVtbl = +{ + &IID_IPolicyStatusValue, + &IPolicyStatusValue_ServerInfo, + 12, + &IPolicyStatusValue_table[-3], + CStdStubBuffer_DELEGATING_METHODS +}; + + +/* Object interface: IPolicyStatus2, ver. 0.0, + GUID={0x34527502,0xD3DB,0x4205,{0xA6,0x9B,0x78,0x9B,0x27,0xEE,0x04,0x14}} */ + +#pragma code_seg(".orpc") +static const unsigned short IPolicyStatus2_FormatStringOffsetTable[] = + { + (unsigned short) -1, + (unsigned short) -1, + (unsigned short) -1, + (unsigned short) -1, + 1206, + 2004, + 738, + 2040, + 2076, + 2118, + 2154, + 2190, + 2226, + 2262, + 2298, + 2334, + 2376, + 2418, + 2460, + 2502 + }; + +static const MIDL_STUBLESS_PROXY_INFO IPolicyStatus2_ProxyInfo = + { + &Object_StubDesc, + updater_legacy_idl__MIDL_ProcFormatString.Format, + &IPolicyStatus2_FormatStringOffsetTable[-3], + 0, + 0, + 0 + }; + + +static const MIDL_SERVER_INFO IPolicyStatus2_ServerInfo = + { + &Object_StubDesc, + 0, + updater_legacy_idl__MIDL_ProcFormatString.Format, + &IPolicyStatus2_FormatStringOffsetTable[-3], + 0, + 0, + 0, + 0}; +CINTERFACE_PROXY_VTABLE(23) _IPolicyStatus2ProxyVtbl = +{ + &IPolicyStatus2_ProxyInfo, + &IID_IPolicyStatus2, + IUnknown_QueryInterface_Proxy, + IUnknown_AddRef_Proxy, + IUnknown_Release_Proxy , + 0 /* IDispatch::GetTypeInfoCount */ , + 0 /* IDispatch::GetTypeInfo */ , + 0 /* IDispatch::GetIDsOfNames */ , + 0 /* IDispatch_Invoke_Proxy */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_updaterVersion */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_lastCheckedTime */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::refreshPolicies */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_lastCheckPeriodMinutes */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_updatesSuppressedTimes */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_downloadPreferenceGroupPolicy */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_packageCacheSizeLimitMBytes */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_packageCacheExpirationTimeDays */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_proxyMode */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_proxyPacUrl */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_proxyServer */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_effectivePolicyForAppInstalls */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_effectivePolicyForAppUpdates */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_targetVersionPrefix */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_isRollbackToTargetVersionAllowed */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_targetChannel */ +}; + + +static const PRPC_STUB_FUNCTION IPolicyStatus2_table[] = +{ + STUB_FORWARDING_FUNCTION, + STUB_FORWARDING_FUNCTION, + STUB_FORWARDING_FUNCTION, + STUB_FORWARDING_FUNCTION, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2 +}; + +CInterfaceStubVtbl _IPolicyStatus2StubVtbl = +{ + &IID_IPolicyStatus2, + &IPolicyStatus2_ServerInfo, + 23, + &IPolicyStatus2_table[-3], + CStdStubBuffer_DELEGATING_METHODS +}; + + +/* Object interface: IPolicyStatus3, ver. 0.0, + GUID={0x05A30352,0xEB25,0x45B6,{0x84,0x49,0xBC,0xA7,0xB0,0x54,0x2C,0xE5}} */ + +#pragma code_seg(".orpc") +static const unsigned short IPolicyStatus3_FormatStringOffsetTable[] = + { + (unsigned short) -1, + (unsigned short) -1, + (unsigned short) -1, + (unsigned short) -1, + 1206, + 2004, + 738, + 2040, + 2076, + 2118, + 2154, + 2190, + 2226, + 2262, + 2298, + 2334, + 2376, + 2418, + 2460, + 2502, + 2544 + }; + +static const MIDL_STUBLESS_PROXY_INFO IPolicyStatus3_ProxyInfo = + { + &Object_StubDesc, + updater_legacy_idl__MIDL_ProcFormatString.Format, + &IPolicyStatus3_FormatStringOffsetTable[-3], + 0, + 0, + 0 + }; + + +static const MIDL_SERVER_INFO IPolicyStatus3_ServerInfo = + { + &Object_StubDesc, + 0, + updater_legacy_idl__MIDL_ProcFormatString.Format, + &IPolicyStatus3_FormatStringOffsetTable[-3], + 0, + 0, + 0, + 0}; +CINTERFACE_PROXY_VTABLE(24) _IPolicyStatus3ProxyVtbl = +{ + &IPolicyStatus3_ProxyInfo, + &IID_IPolicyStatus3, + IUnknown_QueryInterface_Proxy, + IUnknown_AddRef_Proxy, + IUnknown_Release_Proxy , + 0 /* IDispatch::GetTypeInfoCount */ , + 0 /* IDispatch::GetTypeInfo */ , + 0 /* IDispatch::GetIDsOfNames */ , + 0 /* IDispatch_Invoke_Proxy */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_updaterVersion */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_lastCheckedTime */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::refreshPolicies */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_lastCheckPeriodMinutes */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_updatesSuppressedTimes */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_downloadPreferenceGroupPolicy */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_packageCacheSizeLimitMBytes */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_packageCacheExpirationTimeDays */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_proxyMode */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_proxyPacUrl */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_proxyServer */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_effectivePolicyForAppInstalls */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_effectivePolicyForAppUpdates */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_targetVersionPrefix */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_isRollbackToTargetVersionAllowed */ , + (void *) (INT_PTR) -1 /* IPolicyStatus2::get_targetChannel */ , + (void *) (INT_PTR) -1 /* IPolicyStatus3::get_forceInstallApps */ +}; + + +static const PRPC_STUB_FUNCTION IPolicyStatus3_table[] = +{ + STUB_FORWARDING_FUNCTION, + STUB_FORWARDING_FUNCTION, + STUB_FORWARDING_FUNCTION, + STUB_FORWARDING_FUNCTION, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2, + NdrStubCall2 +}; + +CInterfaceStubVtbl _IPolicyStatus3StubVtbl = +{ + &IID_IPolicyStatus3, + &IPolicyStatus3_ServerInfo, + 24, + &IPolicyStatus3_table[-3], + CStdStubBuffer_DELEGATING_METHODS +}; + + /* Object interface: IProcessLauncher, ver. 0.0, GUID={0x128C2DA6,0x2BC0,0x44c0,{0xB3,0xF6,0x4E,0xC2,0x2E,0x64,0x79,0x64}} */ #pragma code_seg(".orpc") static const unsigned short IProcessLauncher_FormatStringOffsetTable[] = { - 1932, - 1968, - 2010 + 2586, + 2622, + 2664 }; static const MIDL_STUBLESS_PROXY_INFO IProcessLauncher_ProxyInfo = @@ -3498,10 +4451,10 @@ #pragma code_seg(".orpc") static const unsigned short IProcessLauncher2_FormatStringOffsetTable[] = { - 1932, - 1968, - 2010, - 2064 + 2586, + 2622, + 2664, + 2718 }; static const MIDL_STUBLESS_PROXY_INFO IProcessLauncher2_ProxyInfo = @@ -3573,7 +4526,10 @@ const CInterfaceProxyVtbl * const _updater_legacy_idl_ProxyVtblList[] = { + ( CInterfaceProxyVtbl *) &_IPolicyStatus2ProxyVtbl, ( CInterfaceProxyVtbl *) &_IAppCommandWebProxyVtbl, + ( CInterfaceProxyVtbl *) &_IPolicyStatusValueProxyVtbl, + ( CInterfaceProxyVtbl *) &_IPolicyStatus3ProxyVtbl, ( CInterfaceProxyVtbl *) &_IAppBundleWebProxyVtbl, ( CInterfaceProxyVtbl *) &_IProcessLauncher2ProxyVtbl, ( CInterfaceProxyVtbl *) &_IAppWebProxyVtbl, @@ -3586,7 +4542,10 @@ const CInterfaceStubVtbl * const _updater_legacy_idl_StubVtblList[] = { + ( CInterfaceStubVtbl *) &_IPolicyStatus2StubVtbl, ( CInterfaceStubVtbl *) &_IAppCommandWebStubVtbl, + ( CInterfaceStubVtbl *) &_IPolicyStatusValueStubVtbl, + ( CInterfaceStubVtbl *) &_IPolicyStatus3StubVtbl, ( CInterfaceStubVtbl *) &_IAppBundleWebStubVtbl, ( CInterfaceStubVtbl *) &_IProcessLauncher2StubVtbl, ( CInterfaceStubVtbl *) &_IAppWebStubVtbl, @@ -3599,7 +4558,10 @@ PCInterfaceName const _updater_legacy_idl_InterfaceNamesList[] = { + "IPolicyStatus2", "IAppCommandWeb", + "IPolicyStatusValue", + "IPolicyStatus3", "IAppBundleWeb", "IProcessLauncher2", "IAppWeb", @@ -3614,6 +4576,9 @@ { &IID_IDispatch, &IID_IDispatch, + &IID_IDispatch, + &IID_IDispatch, + &IID_IDispatch, 0, &IID_IDispatch, &IID_IDispatch, @@ -3630,10 +4595,11 @@ { IID_BS_LOOKUP_SETUP - IID_BS_LOOKUP_INITIAL_TEST( _updater_legacy_idl, 8, 4 ) + IID_BS_LOOKUP_INITIAL_TEST( _updater_legacy_idl, 11, 8 ) + IID_BS_LOOKUP_NEXT_TEST( _updater_legacy_idl, 4 ) IID_BS_LOOKUP_NEXT_TEST( _updater_legacy_idl, 2 ) IID_BS_LOOKUP_NEXT_TEST( _updater_legacy_idl, 1 ) - IID_BS_LOOKUP_RETURN_RESULT( _updater_legacy_idl, 8, *pIndex ) + IID_BS_LOOKUP_RETURN_RESULT( _updater_legacy_idl, 11, *pIndex ) } @@ -3644,7 +4610,7 @@ (const PCInterfaceName * ) & _updater_legacy_idl_InterfaceNamesList, (const IID ** ) & _updater_legacy_idl_BaseIIDList, & _updater_legacy_idl_IID_Lookup, - 8, + 11, 2, 0, /* table of [async_uuid] interfaces */ 0, /* Filler1 */
diff --git a/third_party/wuffs/README.chromium b/third_party/wuffs/README.chromium index 522b103b..58f33cb 100644 --- a/third_party/wuffs/README.chromium +++ b/third_party/wuffs/README.chromium
@@ -1,8 +1,8 @@ Name: Wuffs (Wrangling Untrusted File Formats Safely) Short name: Wuffs URL: https://github.com/google/wuffs-mirror-release-c -Version: 0.3.0-beta.13 -Revision: ebbecaa2fb439eff0aeedafadb4c2a984446dee8 +Version: 0.3.0-rc.1 +Revision: a8205c2fe7564b12fea81ee028ba670112cc7719 Security critical: yes License: Apache 2.0
diff --git a/tools/metrics/histograms/enums.xml b/tools/metrics/histograms/enums.xml index 24b66e69..f25ffe7b 100644 --- a/tools/metrics/histograms/enums.xml +++ b/tools/metrics/histograms/enums.xml
@@ -21212,6 +21212,8 @@ <int value="1" label="Provided account is empty"/> <int value="2" label="API error"/> <int value="3" label="Uncategorized error"/> + <int value="4" label="Backend version is not supported"/> + <int value="5" label="Backend downstream implementation is not available"/> </enum> <enum name="CredentialManagerGetResult"> @@ -59066,6 +59068,7 @@ <int value="185991204" label="enable-webrtc-srtp-encrypted-headers"/> <int value="186463628" label="DnsOverHttps:disabled"/> <int value="187109402" label="SyncingCompromisedCredentials:enabled"/> + <int value="188213654" label="PageInfoHideSiteSettings:disabled"/> <int value="188610022" label="NewMessageListView:enabled"/> <int value="189728101" label="FasterLocationReload:disabled"/> <int value="189777537" label="DisableInitialMostVisitedFadeIn:enabled"/> @@ -59983,6 +59986,7 @@ <int value="765803208" label="AutofillShowTypePredictions:enabled"/> <int value="766563170" label="MessagesForAndroidInstantApps:enabled"/> <int value="766898398" label="sampling-heap-profiler"/> + <int value="767165483" label="PageInfoHideSiteSettings:enabled"/> <int value="767543730" label="DoubleTapToZoomInTabletMode:enabled"/> <int value="767545979" label="SendTabToSelfSigninPromo:enabled"/> <int value="767549069" label="ScreenTime:enabled"/> @@ -60850,6 +60854,7 @@ <int value="1324623677" label="SessionRestorePrioritizesBackgroundUseCases:enabled"/> <int value="1325459977" label="HandwritingGestureEditing:disabled"/> + <int value="1326530782" label="AutofillParseAsync:enabled"/> <int value="1327883321" label="OmniboxHistoryQuickProviderAllowMidwordContinuations:enabled"/> <int value="1327928774" label="ClipboardHistorySimpleRender:enabled"/> @@ -61323,6 +61328,7 @@ <int value="1652798696" label="InterestFeedV1ClickAndViewActionsConditionalUpload:disabled"/> <int value="1654445970" label="EphemeralTabUsingBottomSheet:enabled"/> + <int value="1654543587" label="AutofillParseAsync:disabled"/> <int value="1657713458" label="disable-virtual-keyboard-overscroll"/> <int value="1658644418" label="disable-app-list-voice-search"/> <int value="1658656322" label="IncognitoDownloadsWarning:enabled"/> @@ -65292,6 +65298,7 @@ <int value="29" label="Translate"/> <int value="30" label="OfferNotification"/> <int value="31" label="ExternalNavigation"/> + <int value="32" label="FramebustBlocked"/> </enum> <enum name="MessageLoopProblems">
diff --git a/tools/metrics/histograms/metadata/android/histograms.xml b/tools/metrics/histograms/metadata/android/histograms.xml index 7a0b873d..c463041 100644 --- a/tools/metrics/histograms/metadata/android/histograms.xml +++ b/tools/metrics/histograms/metadata/android/histograms.xml
@@ -94,6 +94,7 @@ <variant name=".ChromeSurvey"/> <variant name=".DownloadProgress"/> <variant name=".ExternalNavigation"/> + <variant name=".FramebustBlocked"/> <variant name=".GeneratedPasswordSaved"/> <variant name=".InstallableAmbientBadge"/> <variant name=".InstantApps"/>
diff --git a/tools/metrics/histograms/metadata/browser/histograms.xml b/tools/metrics/histograms/metadata/browser/histograms.xml index 42ee55ae..8738f6f 100644 --- a/tools/metrics/histograms/metadata/browser/histograms.xml +++ b/tools/metrics/histograms/metadata/browser/histograms.xml
@@ -1133,6 +1133,29 @@ </token> </histogram> +<histogram name="SidePanel.{SidePanelEntries}.ShowTriggered" + enum="SidePanelOpenTrigger" expires_after="2023-06-04"> + <owner>corising@chromium.org</owner> + <owner>chrome-desktop-ui-sea@google.com</owner> + <summary> + Records how a side panel entry is triggered to be shown. (i.e. by toolbar + button, by commbobox selection). This is recorded when a new side panel + entry is triggered to be shown regardless any side panel entry is currently + open. + </summary> + <token key="SidePanelEntries"> + <variant name="Assistant"/> + <variant name="Bookmarks"/> + <variant name="Feed"/> + <variant name="HistoryClusters"/> + <variant name="Lens"/> + <variant name="ReadAnything"/> + <variant name="ReadingList"/> + <variant name="SideSearch"/> + <variant name="UserNotes"/> + </token> +</histogram> + </histograms> </histogram-configuration>
diff --git a/tools/metrics/histograms/metadata/omnibox/histograms.xml b/tools/metrics/histograms/metadata/omnibox/histograms.xml index 5cec36a..f1ceb97 100644 --- a/tools/metrics/histograms/metadata/omnibox/histograms.xml +++ b/tools/metrics/histograms/metadata/omnibox/histograms.xml
@@ -1204,8 +1204,8 @@ </histogram> <histogram name="Omnibox.Search.OffTheRecord" enum="BooleanOffTheRecord" - expires_after="2022-08-02"> - <owner>sideyilmaz@chromium.org</owner> + expires_after="2023-02-02"> + <owner>roagarwal@chromium.org</owner> <owner>chrome-incognito@google.com</owner> <summary> This histogram records the number of searches done from omnibox using
diff --git a/tools/metrics/histograms/metadata/password/histograms.xml b/tools/metrics/histograms/metadata/password/histograms.xml index ebccfc5..f9d2c6b 100644 --- a/tools/metrics/histograms/metadata/password/histograms.xml +++ b/tools/metrics/histograms/metadata/password/histograms.xml
@@ -1540,8 +1540,8 @@ </histogram> <histogram name="PasswordManager.FormSubmission.PerProfileType" - enum="BrowserProfileType" expires_after="2022-08-02"> - <owner>sideyilmaz@chromium.org</owner> + enum="BrowserProfileType" expires_after="2023-02-02"> + <owner>roagarwal@chromium.org</owner> <owner>chrome-incognito@google.com</owner> <summary> This histogram records the browser profile type when a password form is
diff --git a/tools/metrics/histograms/metadata/variations/histograms.xml b/tools/metrics/histograms/metadata/variations/histograms.xml index 9487c09..6ba8815 100644 --- a/tools/metrics/histograms/metadata/variations/histograms.xml +++ b/tools/metrics/histograms/metadata/variations/histograms.xml
@@ -273,6 +273,12 @@ <histogram name="Variations.PolicyRestriction" enum="VariationsRestrictionPolicyValues" expires_after="2022-04-30"> + <obsolete> + This histogram is not interesting anymore but it is still used by test code + to verify that the respective log is properly applied so it will be kept in + the code even if not collected by the server anymore. TODO(crbug/1345624): + Clean this dependency up and remove the histogram. + </obsolete> <owner>pastarmovj@chromium.org</owner> <owner>ydago@chromium.org</owner> <owner>src/base/metrics/OWNERS</owner>
diff --git a/tools/traffic_annotation/scripts/update_annotations_sheet.py b/tools/traffic_annotation/scripts/update_annotations_sheet.py index 4d89ae29..eaeb1cfa 100755 --- a/tools/traffic_annotation/scripts/update_annotations_sheet.py +++ b/tools/traffic_annotation/scripts/update_annotations_sheet.py
@@ -22,6 +22,7 @@ import io import json import os +import re import sys from apiclient import discovery @@ -32,6 +33,24 @@ from generator_utils import load_tsv_file +SCRIPT_DIR = os.path.dirname(os.path.realpath(__file__)) +SRC_DIR = os.path.abspath(os.path.join(SCRIPT_DIR, "../../..")) + + +def GetCurrentChromeVersion(): + with io.open(os.path.join(SRC_DIR, "chrome/VERSION")) as f: + contents = f.read() + version_parts = dict( + re.match(r"(\w+)=(\d+)", line).groups() for line in contents.split("\n") + if line) + return tuple( + int(version_parts[part]) for part in ["MAJOR", "MINOR", "BUILD", "PATCH"]) + + +def VersionTupleToString(version_tuple): + return '.'.join(map(str, version_tuple)) + + class SheetEditor(): """Loads and updates traffic annotation's sheet.""" @@ -40,7 +59,7 @@ APPLICATION_NAME = "Chrome Network Traffic Annotations Spreadsheet Updater" def __init__(self, spreadsheet_id, annotations_sheet_name, - changes_sheet_name, silent_change_columns, + chrome_version_sheet_name, silent_change_columns, last_update_column_name, credentials_file_path, client_secret_file_path, verbose): """ Initializes the SheetEditor. Please refer to 'PrintConfigHelp' function @@ -51,7 +70,7 @@ ID of annotations spreadsheet. annotations_sheet_name: str Name of the sheet that contains the annotations. - changes_sheet_name: str + chrome_version_sheet_name: str Name of the sheet that contains the changes stats. silent_change_columns: list of str List of the columns whose changes are not reported in the stats. @@ -70,7 +89,7 @@ print("Successfully got credential to update annotations report.") self.spreadsheet_id = spreadsheet_id self.annotations_sheet_name = annotations_sheet_name - self.changes_sheet_name = changes_sheet_name + self.chrome_version_sheet_name = chrome_version_sheet_name self.silent_change_columns = silent_change_columns self.last_update_column_name = last_update_column_name self.annotations_sheet_id = self._GetAnnotationsSheetId() @@ -319,21 +338,6 @@ spreadsheetId=self.spreadsheet_id, body=batch_update_values_request_body).execute() - # Add Report Line. - # TODO(https://crbug.com/656607): Remove changes stat and related config. - if self.insert_count or self.delete_count or self.update_count: - value_range = "%s!A1:B1000" % self.changes_sheet_name - append_body = { - "range": value_range, - "majorDimension": "ROWS", - "values": [[self.today, self.GiveUpdateSummary()]] - } - self.service.spreadsheets().values().append( - spreadsheetId=self.spreadsheet_id, - range=value_range, - valueInputOption="RAW", - body=append_body).execute() - def GiveUpdateSummary(self): return "New annotations: %s, Modified annotations: %s, " \ @@ -341,16 +345,34 @@ self.insert_count, self.update_count, self.delete_count) + def UpdateChromeVersion(self, version_tuple): + self.service.spreadsheets().values().update( + spreadsheetId=self.spreadsheet_id, + range="%s!A1:A1" % self.chrome_version_sheet_name, + valueInputOption="RAW", + body={ + "values": [[VersionTupleToString(version_tuple)]] + }).execute() + + def GetChromeVersionFromSheet(self): + response = self.service.spreadsheets().values().get( + spreadsheetId=self.spreadsheet_id, + range="%s!A1:A1" % self.chrome_version_sheet_name).execute() + version_string = response["values"][0][0] + return tuple(int(part) for part in version_string.split('.')) + + def PrintConfigHelp(): print("The config.json file should have the following items:\n" "spreadsheet_id:\n" " ID of annotations spreadsheet.\n" "annotations_sheet_name:\n" " Name of the sheet that contains the annotations.\n" - "changes_sheet_name:\n" - " Name of the sheet that contains the changes stats.\n" + "chrome_version_sheet_name:\n" + " Name of the sheet that contains the Chrome version.\n" "silent_change_columns:\n" - " List of the columns whose changes are not reported in the stats.\n" + " List of the columns whose changes don't affect the Last Update " + "column.\n" "last_update_column_name:\n" " Header of the column that keeps the latest update date.\n" "credentials_file_path:\n" @@ -373,13 +395,20 @@ parser.add_argument( '--verbose', action='store_true', help='Reports all updates.') + parser.add_argument('--yes', + action='store_true', + help='Performs all actions without confirmation.') parser.add_argument( - '--force', action='store_true', - help='Performs all actions without confirmation.') + '--force', + action='store_true', + help='Performs all actions without confirmation, regardless of the ' + 'sheet being older or newer than this version. Implies --yes.') parser.add_argument( '--config-help', action='store_true', help='Shows the configurations help.') args = parser.parse_args() + if args.force: + args.yes = True print("Updating annotations sheet.") if args.config_help: @@ -397,26 +426,56 @@ return -1 sheet_editor = SheetEditor( - spreadsheet_id = config["spreadsheet_id"], - annotations_sheet_name = config["annotations_sheet_name"], - changes_sheet_name = config["changes_sheet_name"], - silent_change_columns = config["silent_change_columns"], - last_update_column_name = config["last_update_column_name"], - credentials_file_path = config.get("credentials_file_path", None), - client_secret_file_path = config.get("client_secret_file_path", None), - verbose = args.verbose) + spreadsheet_id=config["spreadsheet_id"], + annotations_sheet_name=config["annotations_sheet_name"], + chrome_version_sheet_name=config["chrome_version_sheet_name"], + silent_change_columns=config["silent_change_columns"], + last_update_column_name=config["last_update_column_name"], + credentials_file_path=config.get("credentials_file_path", None), + client_secret_file_path=config.get("client_secret_file_path", None), + verbose=args.verbose) + + current_version = GetCurrentChromeVersion() + current_version_string = VersionTupleToString(current_version) + print("This is Chrome version %s" % current_version_string) + + sheet_version = sheet_editor.GetChromeVersionFromSheet() + sheet_version_string = VersionTupleToString(sheet_version) + print("Sheet contains Chrome version %s" % sheet_version_string) + + if sheet_version > current_version and not args.force: + print("Sheet is already newer than this Chrome version. Aborting.") + return 0 + if not sheet_editor.GenerateUpdates(file_content): print("Error generating updates for file content.") return -1 - if sheet_editor.required_cell_updates or sheet_editor.required_row_updates: - print("%s" % sheet_editor.GiveUpdateSummary()) - if not args.force: + main_sheet_needs_update = (sheet_editor.required_cell_updates + or sheet_editor.required_row_updates) + version_needs_update = current_version != sheet_version + + if main_sheet_needs_update or version_needs_update: + if main_sheet_needs_update: + print("%s" % sheet_editor.GiveUpdateSummary()) + else: + print("No updates to annotations required.") + + if current_version != sheet_version: + print("The '%s' sheet will be updated to '%s'." % + (sheet_editor.chrome_version_sheet_name, current_version_string)) + + if not args.yes: print("Proceed with update?") if raw_input("(Y/n): ").strip().lower() != "y": return -1 - sheet_editor.ApplyUpdates() + + if main_sheet_needs_update: + sheet_editor.ApplyUpdates() + if version_needs_update: + sheet_editor.UpdateChromeVersion(current_version) print("Updates applied.") + else: print("No updates required.")
diff --git a/ui/accessibility/platform/ax_platform_node_auralinux.cc b/ui/accessibility/platform/ax_platform_node_auralinux.cc index 6b2a97f..8fc0dc6c 100644 --- a/ui/accessibility/platform/ax_platform_node_auralinux.cc +++ b/ui/accessibility/platform/ax_platform_node_auralinux.cc
@@ -607,10 +607,11 @@ if (!obj) return FALSE; - const std::vector<ax::mojom::Action> actions = obj->GetSupportedActions(); + const std::vector<ax::mojom::Action> actions = + obj->GetDelegate()->GetSupportedActions(); g_return_val_if_fail(index < static_cast<gint>(actions.size()), FALSE); - if (index == 0 && obj->HasDefaultActionVerb()) { + if (index == 0 && obj->GetDelegate()->HasDefaultActionVerb()) { // If there is a default action, it will always be at index 0. return obj->DoDefaultAction(); } @@ -628,7 +629,7 @@ if (!obj) return 0; - return static_cast<gint>(obj->GetSupportedActions().size()); + return static_cast<gint>(obj->GetDelegate()->GetSupportedActions().size()); } const gchar* GetDescription(AtkAction*, gint) { @@ -646,10 +647,11 @@ if (!obj) return nullptr; - const std::vector<ax::mojom::Action> actions = obj->GetSupportedActions(); + const std::vector<ax::mojom::Action> actions = + obj->GetDelegate()->GetSupportedActions(); g_return_val_if_fail(index < static_cast<gint>(actions.size()), nullptr); - if (index == 0 && obj->HasDefaultActionVerb()) { + if (index == 0 && obj->GetDelegate()->HasDefaultActionVerb()) { // If there is a default action, it will always be at index 0. return obj->GetDefaultActionName(); } @@ -665,10 +667,11 @@ if (!obj) return nullptr; - const std::vector<ax::mojom::Action> actions = obj->GetSupportedActions(); + const std::vector<ax::mojom::Action> actions = + obj->GetDelegate()->GetSupportedActions(); g_return_val_if_fail(index < static_cast<gint>(actions.size()), nullptr); - if (index == 0 && obj->HasDefaultActionVerb()) { + if (index == 0 && obj->GetDelegate()->HasDefaultActionVerb()) { // If there is a default action, it will always be at index 0. Only the // default action has a key binding. return obj->GetStringAttribute(ax::mojom::StringAttribute::kAccessKey) @@ -5223,37 +5226,4 @@ return selection; } -bool AXPlatformNodeAuraLinux::HasDefaultActionVerb() const { - return GetData().GetDefaultActionVerb() != - ax::mojom::DefaultActionVerb::kNone; -} - -std::vector<ax::mojom::Action> AXPlatformNodeAuraLinux::GetSupportedActions() - const { - static const base::NoDestructor<std::vector<ax::mojom::Action>> - kActionsThatCanBeExposedViaAtkAction{ - {ax::mojom::Action::kDecrement, ax::mojom::Action::kIncrement, - ax::mojom::Action::kScrollUp, ax::mojom::Action::kScrollDown, - ax::mojom::Action::kScrollLeft, ax::mojom::Action::kScrollRight, - ax::mojom::Action::kScrollForward, - ax::mojom::Action::kScrollBackward}}; - std::vector<ax::mojom::Action> supported_actions; - - // The default action, if it exists, must be listed at index 0. - if (HasDefaultActionVerb()) - supported_actions.push_back(ax::mojom::Action::kDoDefault); - - // Users expect to be able to bring a context menu on any object via e.g. - // right click, so we make the context menu action available to any object - // unconditionally. - supported_actions.push_back(ax::mojom::Action::kShowContextMenu); - - for (const auto& item : *kActionsThatCanBeExposedViaAtkAction) { - if (HasAction(item)) - supported_actions.push_back(item); - } - - return supported_actions; -} - } // namespace ui
diff --git a/ui/accessibility/platform/ax_platform_node_auralinux.h b/ui/accessibility/platform/ax_platform_node_auralinux.h index c71f135..3766b30 100644 --- a/ui/accessibility/platform/ax_platform_node_auralinux.h +++ b/ui/accessibility/platform/ax_platform_node_auralinux.h
@@ -293,9 +293,6 @@ // nullopt. absl::optional<std::pair<int, int>> GetEmbeddedObjectIndices(); - std::vector<ax::mojom::Action> GetSupportedActions() const; - bool HasDefaultActionVerb() const; - std::string accessible_name_; protected:
diff --git a/ui/accessibility/platform/ax_platform_node_delegate.cc b/ui/accessibility/platform/ax_platform_node_delegate.cc index b1d01d7..dffea85 100644 --- a/ui/accessibility/platform/ax_platform_node_delegate.cc +++ b/ui/accessibility/platform/ax_platform_node_delegate.cc
@@ -4,6 +4,8 @@ #include "ui/accessibility/platform/ax_platform_node_delegate.h" +#include "base/containers/fixed_flat_set.h" + namespace ui { gfx::Rect AXPlatformNodeDelegate::GetClippedScreenBoundsRect( @@ -42,4 +44,37 @@ AXClippingBehavior::kUnclipped, offscreen_result); } +bool AXPlatformNodeDelegate::HasDefaultActionVerb() const { + return GetData().GetDefaultActionVerb() != + ax::mojom::DefaultActionVerb::kNone; +} + +std::vector<ax::mojom::Action> AXPlatformNodeDelegate::GetSupportedActions() + const { + static constexpr auto kActionsThatCanBeExposed = + base::MakeFixedFlatSet<ax::mojom::Action>( + {ax::mojom::Action::kDecrement, ax::mojom::Action::kIncrement, + ax::mojom::Action::kScrollUp, ax::mojom::Action::kScrollDown, + ax::mojom::Action::kScrollLeft, ax::mojom::Action::kScrollRight, + ax::mojom::Action::kScrollForward, + ax::mojom::Action::kScrollBackward}); + std::vector<ax::mojom::Action> supported_actions; + + // The default action, if it exists, must be listed at index 0. + if (HasDefaultActionVerb()) + supported_actions.push_back(ax::mojom::Action::kDoDefault); + + // Users expect to be able to bring a context menu on any object via e.g. + // right click, so we make the context menu action available to any object + // unconditionally. + supported_actions.push_back(ax::mojom::Action::kShowContextMenu); + + for (const auto& item : kActionsThatCanBeExposed) { + if (HasAction(item)) + supported_actions.push_back(item); + } + + return supported_actions; +} + } // namespace ui
diff --git a/ui/accessibility/platform/ax_platform_node_delegate.h b/ui/accessibility/platform/ax_platform_node_delegate.h index 6eadd12..826d188e6 100644 --- a/ui/accessibility/platform/ax_platform_node_delegate.h +++ b/ui/accessibility/platform/ax_platform_node_delegate.h
@@ -168,6 +168,8 @@ virtual bool HasState(ax::mojom::State state) const = 0; virtual ax::mojom::State GetState() const = 0; virtual bool HasAction(ax::mojom::Action action) const = 0; + bool HasDefaultActionVerb() const; + std::vector<ax::mojom::Action> GetSupportedActions() const; virtual bool HasTextStyle(ax::mojom::TextStyle text_style) const = 0; virtual ax::mojom::NameFrom GetNameFrom() const = 0; virtual ax::mojom::DescriptionFrom GetDescriptionFrom() const = 0; @@ -620,7 +622,7 @@ std::string SubtreeToString() { return SubtreeToStringHelper(0u); } friend std::ostream& operator<<(std::ostream& stream, - AXPlatformNodeDelegate& delegate) { + const AXPlatformNodeDelegate& delegate) { return stream << delegate.ToString(); }
diff --git a/ui/accessibility/platform/ax_platform_node_textrangeprovider_win_unittest.cc b/ui/accessibility/platform/ax_platform_node_textrangeprovider_win_unittest.cc index 7fe1491..1d480a6 100644 --- a/ui/accessibility/platform/ax_platform_node_textrangeprovider_win_unittest.cc +++ b/ui/accessibility/platform/ax_platform_node_textrangeprovider_win_unittest.cc
@@ -444,6 +444,8 @@ text_field.AddState(ax::mojom::State::kEditable); text_field.AddStringAttribute(ax::mojom::StringAttribute::kHtmlTag, "input"); + text_field.AddStringAttribute(ax::mojom::StringAttribute::kInputType, + "text"); text_field.SetValue(ALL_TEXT); text_field.AddIntListAttribute(ax::mojom::IntListAttribute::kLineStarts, std::vector<int32_t>{0, 7}); @@ -2993,6 +2995,8 @@ text_input_data.AddState(ax::mojom::State::kEditable); text_input_data.AddStringAttribute(ax::mojom::StringAttribute::kHtmlTag, "input"); + text_input_data.AddStringAttribute(ax::mojom::StringAttribute::kInputType, + "text"); ui::AXNodeData group2_data; group2_data.id = 5; @@ -3376,6 +3380,8 @@ search_box.role = ax::mojom::Role::kSearchBox; search_box.AddState(ax::mojom::State::kEditable); search_box.AddStringAttribute(ax::mojom::StringAttribute::kHtmlTag, "input"); + search_box.AddStringAttribute(ax::mojom::StringAttribute::kInputType, + "search"); paragraph_data.child_ids.push_back(search_box.id); ui::AXNodeData search_text; @@ -4021,6 +4027,8 @@ input_text_data.AddIntAttribute(ax::mojom::IntAttribute::kColor, 0xFFADC0DEU); input_text_data.AddStringAttribute(ax::mojom::StringAttribute::kHtmlTag, "input"); + input_text_data.AddStringAttribute(ax::mojom::StringAttribute::kInputType, + "text"); input_text_data.SetName("placeholder"); input_text_data.child_ids = {13}; @@ -4046,6 +4054,8 @@ 0xFFADC0DEU); input_text_data2.AddStringAttribute(ax::mojom::StringAttribute::kHtmlTag, "input"); + input_text_data2.AddStringAttribute(ax::mojom::StringAttribute::kInputType, + "text"); input_text_data2.SetName("foo"); input_text_data2.child_ids = {15};
diff --git a/ui/accessibility/platform/ax_platform_node_unittest.cc b/ui/accessibility/platform/ax_platform_node_unittest.cc index 0c64716..d955e08 100644 --- a/ui/accessibility/platform/ax_platform_node_unittest.cc +++ b/ui/accessibility/platform/ax_platform_node_unittest.cc
@@ -88,6 +88,8 @@ text_field_node.AddState(ax::mojom::State::kEditable); text_field_node.AddStringAttribute(ax::mojom::StringAttribute::kHtmlTag, "input"); + text_field_node.AddStringAttribute(ax::mojom::StringAttribute::kInputType, + "text"); text_field_node.SetValue("How now brown cow."); AXTreeUpdate update; @@ -105,6 +107,8 @@ text_field_node.AddState(ax::mojom::State::kEditable); text_field_node.AddStringAttribute(ax::mojom::StringAttribute::kHtmlTag, "input"); + text_field_node.AddStringAttribute(ax::mojom::StringAttribute::kInputType, + "text"); text_field_node.AddBoolAttribute(ax::mojom::BoolAttribute::kSelected, true); text_field_node.AddIntAttribute(ax::mojom::IntAttribute::kTextSelStart, start);
diff --git a/ui/accessibility/platform/ax_platform_node_win.cc b/ui/accessibility/platform/ax_platform_node_win.cc index 76c3c61..2e72da9 100644 --- a/ui/accessibility/platform/ax_platform_node_win.cc +++ b/ui/accessibility/platform/ax_platform_node_win.cc
@@ -1227,7 +1227,7 @@ L"document"}; case ax::mojom::Role::kPopUpButton: { - const std::string html_tag = + const std::string& html_tag = GetStringAttribute(ax::mojom::StringAttribute::kHtmlTag); if (html_tag == "select") { return {UIALocalizationStrategy::kDeferToControlType, @@ -5238,7 +5238,7 @@ // Localized Control Type of "output" whereas the Core-AAM states // the Localized Control Type of the ARIA status role should be // "status". - const std::string html_tag = + const std::string& html_tag = GetStringAttribute(ax::mojom::StringAttribute::kHtmlTag); std::u16string localized_control_type = html_tag == "output"
diff --git a/ui/android/java/res/values-v17/styles.xml b/ui/android/java/res/values-v17/styles.xml index 2ac24b7d..82c9d12c 100644 --- a/ui/android/java/res/values-v17/styles.xml +++ b/ui/android/java/res/values-v17/styles.xml
@@ -223,6 +223,11 @@ <item name="android:textSize">@dimen/text_size_small</item> </style> + <!-- Blue Non Adaptive button text styles --> + <style name="TextAppearance.Button.Text.Filled.Baseline.Dark" parent="TextAppearance.TextAccentMediumThick"> + <item name="android:textColor">@color/default_text_color_on_accent1_dark</item> + </style> + <!-- Blue Non Adaptive Text Styles --> <style name="TextAppearance.TextMedium.Blue.Baseline.Light" parent="TextAppearance.TextMedium"> <item name="android:textColor">@color/default_icon_color_blue_light</item>
diff --git a/ui/chromeos/translations/ui_chromeos_strings_be.xtb b/ui/chromeos/translations/ui_chromeos_strings_be.xtb index 4642ebb..bd911705 100644 --- a/ui/chromeos/translations/ui_chromeos_strings_be.xtb +++ b/ui/chromeos/translations/ui_chromeos_strings_be.xtb
@@ -188,6 +188,7 @@ <translation id="2570012981255377263">Вашы нядаўнія файлы будуць з'яўляцца тут</translation> <translation id="2578394532502990878">Тамільская (фанетычная раскладка)</translation> <translation id="2579959351793446050">Орыя</translation> +<translation id="2593644851255584939">Ваш адміністратар патрабуе, каб вы адключылі блакіроўку SIM-карты.</translation> <translation id="2602810353103180630">Сетка <ph name="NETWORK_INDEX" /> з <ph name="NETWORK_COUNT" />, <ph name="NETWORK_NAME" />, <ph name="CONNECTION_STATUS" />, заблакіравана адміністратарам, магутнасць сігналу – <ph name="SIGNAL_STRENGTH" />%, падрабязныя звесткі</translation> <translation id="2614589611416690597">Відэа <ph name="VIDEO_TYPE" /></translation> <translation id="2617342710774726426">SIM-карта заблакіравана</translation>
diff --git a/ui/chromeos/translations/ui_chromeos_strings_ca.xtb b/ui/chromeos/translations/ui_chromeos_strings_ca.xtb index e3c4fc1..6b930a6 100644 --- a/ui/chromeos/translations/ui_chromeos_strings_ca.xtb +++ b/ui/chromeos/translations/ui_chromeos_strings_ca.xtb
@@ -174,7 +174,7 @@ <translation id="2464089476039395325">Servidor intermediari HTTP</translation> <translation id="2467267713099745100">Xarxa <ph name="NETWORK_TYPE" /> (desactivada)</translation> <translation id="2468402215065996499">Tamagotxi</translation> -<translation id="2470939964922472929">S'ha introduït un PIN incorrecte massa vegades. Per configurar un PIN nou, introdueix la clau de desbloqueig personal (PUK) de 8 dígits proporcionada per l'operador.</translation> +<translation id="2470939964922472929">S'ha introduït un PIN incorrecte massa vegades. Per configurar un PIN nou, introdueix el número personal de desbloqueig (PUK) de 8 dígits proporcionat per l'operador.</translation> <translation id="2500392669976258912">Gujarati fonètic</translation> <translation id="2515586267016047495">Alt</translation> <translation id="2517472476991765520">Escaneja</translation> @@ -839,7 +839,7 @@ <translation id="8038111231936746805">(predeterminada)</translation> <translation id="8042602468072383151">Àudio <ph name="AUDIO_TYPE" /></translation> <translation id="8045462269890919536">Romanès</translation> -<translation id="8049184478152619004">Introdueix la clau de desbloqueig personal (PUK)</translation> +<translation id="8049184478152619004">Introdueix el número personal de desbloqueig (PUK)</translation> <translation id="807187749540895545">S'està extraient <ph name="FILE_NAME" />...</translation> <translation id="8079530767338315840">Repeteix</translation> <translation id="8087576439476816834">Baixa, <ph name="PROFILE_NAME" /></translation>
diff --git a/ui/chromeos/translations/ui_chromeos_strings_de.xtb b/ui/chromeos/translations/ui_chromeos_strings_de.xtb index abfef75..765ba341 100644 --- a/ui/chromeos/translations/ui_chromeos_strings_de.xtb +++ b/ui/chromeos/translations/ui_chromeos_strings_de.xtb
@@ -188,6 +188,7 @@ <translation id="2570012981255377263">Hier werden deine zuletzt verwendeten Dateien angezeigt</translation> <translation id="2578394532502990878">Tamil (phonetisch)</translation> <translation id="2579959351793446050">Oriya</translation> +<translation id="2593644851255584939">Dein Administrator verlangt, dass du die SIM-Sperre deaktivierst.</translation> <translation id="2602810353103180630">Netzwerk <ph name="NETWORK_INDEX" /> von <ph name="NETWORK_COUNT" />, <ph name="NETWORK_NAME" />, <ph name="CONNECTION_STATUS" />, Signalstärke <ph name="SIGNAL_STRENGTH" /> %, vom Administrator blockiert, Details</translation> <translation id="2614589611416690597"><ph name="VIDEO_TYPE" />-Video</translation> <translation id="2617342710774726426">SIM-Karte ist gesperrt</translation>
diff --git a/ui/chromeos/translations/ui_chromeos_strings_es-419.xtb b/ui/chromeos/translations/ui_chromeos_strings_es-419.xtb index 3ab79d4b..464da91a 100644 --- a/ui/chromeos/translations/ui_chromeos_strings_es-419.xtb +++ b/ui/chromeos/translations/ui_chromeos_strings_es-419.xtb
@@ -188,6 +188,7 @@ <translation id="2570012981255377263">Tus archivos recientes aparecerán aquí.</translation> <translation id="2578394532502990878">Tamil (fonético)</translation> <translation id="2579959351793446050">Oriya</translation> +<translation id="2593644851255584939">Tu administrador requiere que inhabilites el bloqueo de la SIM.</translation> <translation id="2602810353103180630">Red <ph name="NETWORK_INDEX" /> de <ph name="NETWORK_COUNT" />, <ph name="NETWORK_NAME" />, <ph name="CONNECTION_STATUS" />, intensidad de la señal: <ph name="SIGNAL_STRENGTH" />%, bloqueda por tu administrador, detalles</translation> <translation id="2614589611416690597">Video <ph name="VIDEO_TYPE" /></translation> <translation id="2617342710774726426">La tarjeta SIM está bloqueada</translation>
diff --git a/ui/chromeos/translations/ui_chromeos_strings_es.xtb b/ui/chromeos/translations/ui_chromeos_strings_es.xtb index cd49733..5fab01f1 100644 --- a/ui/chromeos/translations/ui_chromeos_strings_es.xtb +++ b/ui/chromeos/translations/ui_chromeos_strings_es.xtb
@@ -188,6 +188,7 @@ <translation id="2570012981255377263">Tus archivos recientes aparecerán aquí</translation> <translation id="2578394532502990878">Tamil (fonético)</translation> <translation id="2579959351793446050">Oriya</translation> +<translation id="2593644851255584939">Tu administrador requiere que inhabilites el bloqueo de la SIM.</translation> <translation id="2602810353103180630">Red <ph name="NETWORK_INDEX" /> de <ph name="NETWORK_COUNT" />. <ph name="NETWORK_NAME" />. <ph name="CONNECTION_STATUS" /> Intensidad de la señal: <ph name="SIGNAL_STRENGTH" /> %. Bloqueada por tu administrador. Detalles.</translation> <translation id="2614589611416690597">Vídeo <ph name="VIDEO_TYPE" /></translation> <translation id="2617342710774726426">La tarjeta SIM está bloqueada</translation>
diff --git a/ui/chromeos/translations/ui_chromeos_strings_fi.xtb b/ui/chromeos/translations/ui_chromeos_strings_fi.xtb index 2ab0a98..5e65a3a 100644 --- a/ui/chromeos/translations/ui_chromeos_strings_fi.xtb +++ b/ui/chromeos/translations/ui_chromeos_strings_fi.xtb
@@ -188,6 +188,7 @@ <translation id="2570012981255377263">Viimeksi käytetyt tiedostot näkyvät täällä</translation> <translation id="2578394532502990878">foneettinen tamil</translation> <translation id="2579959351793446050">orija</translation> +<translation id="2593644851255584939">Järjestelmänvalvoja edellyttää, että poistat SIM-lukituksen käytöstä.</translation> <translation id="2602810353103180630">Verkko <ph name="NETWORK_INDEX" />/<ph name="NETWORK_COUNT" />, <ph name="NETWORK_NAME" />, <ph name="CONNECTION_STATUS" />, signaalin voimakkuus <ph name="SIGNAL_STRENGTH" /> %, järjestelmänvalvojan estämä, lisätietoja</translation> <translation id="2614589611416690597">Video, jonka tyyppi on <ph name="VIDEO_TYPE" /></translation> <translation id="2617342710774726426">SIM-kortti on lukittu.</translation>
diff --git a/ui/chromeos/translations/ui_chromeos_strings_fr-CA.xtb b/ui/chromeos/translations/ui_chromeos_strings_fr-CA.xtb index 1223aca..13dcd4f 100644 --- a/ui/chromeos/translations/ui_chromeos_strings_fr-CA.xtb +++ b/ui/chromeos/translations/ui_chromeos_strings_fr-CA.xtb
@@ -188,6 +188,7 @@ <translation id="2570012981255377263">Vos fichiers récents s'afficheront ici</translation> <translation id="2578394532502990878">Tamoul (phonétique)</translation> <translation id="2579959351793446050">Odia</translation> +<translation id="2593644851255584939">Votre administrateur vous demande de désactiver le verrouillage de la carte SIM.</translation> <translation id="2602810353103180630">Réseau <ph name="NETWORK_INDEX" /> sur <ph name="NETWORK_COUNT" />, <ph name="NETWORK_NAME" />, <ph name="CONNECTION_STATUS" />, puissance du signal <ph name="SIGNAL_STRENGTH" /> %, bloqué par votre administrateur, détails</translation> <translation id="2614589611416690597">Vidéo <ph name="VIDEO_TYPE" /></translation> <translation id="2617342710774726426">La carte SIM est verrouillée</translation>
diff --git a/ui/chromeos/translations/ui_chromeos_strings_is.xtb b/ui/chromeos/translations/ui_chromeos_strings_is.xtb index fe2d46b..d5cbae4 100644 --- a/ui/chromeos/translations/ui_chromeos_strings_is.xtb +++ b/ui/chromeos/translations/ui_chromeos_strings_is.xtb
@@ -188,6 +188,7 @@ <translation id="2570012981255377263">Nýjustu skrárnar þínar birtast hér</translation> <translation id="2578394532502990878">Tamíl hljóðritun</translation> <translation id="2579959351793446050">Odia</translation> +<translation id="2593644851255584939">Stjórnandinn gerir kröfu um að þú slökkvir á SIM-lás.</translation> <translation id="2602810353103180630">Netkerfi <ph name="NETWORK_INDEX" /> af <ph name="NETWORK_COUNT" />, <ph name="NETWORK_NAME" />, <ph name="CONNECTION_STATUS" />, sendistyrkur <ph name="SIGNAL_STRENGTH" />%, útilokað af kerfisstjóra, nánar</translation> <translation id="2614589611416690597"><ph name="VIDEO_TYPE" /> myndskeið</translation> <translation id="2617342710774726426">SIM-kortið er læst</translation>
diff --git a/ui/chromeos/translations/ui_chromeos_strings_it.xtb b/ui/chromeos/translations/ui_chromeos_strings_it.xtb index 38f01b2..c96380e5 100644 --- a/ui/chromeos/translations/ui_chromeos_strings_it.xtb +++ b/ui/chromeos/translations/ui_chromeos_strings_it.xtb
@@ -188,6 +188,7 @@ <translation id="2570012981255377263">I tuoi file recenti verranno mostrati qui</translation> <translation id="2578394532502990878">Tamil fonetica</translation> <translation id="2579959351793446050">Odia</translation> +<translation id="2593644851255584939">L'amministratore richiede la disattivazione del blocco SIM.</translation> <translation id="2602810353103180630">Rete <ph name="NETWORK_INDEX" /> di <ph name="NETWORK_COUNT" />, <ph name="NETWORK_NAME" />, <ph name="CONNECTION_STATUS" />, intensità del segnale: <ph name="SIGNAL_STRENGTH" />%, bloccata dall'amministratore, dettagli</translation> <translation id="2614589611416690597">Video <ph name="VIDEO_TYPE" /></translation> <translation id="2617342710774726426">La scheda SIM è bloccata</translation>
diff --git a/ui/chromeos/translations/ui_chromeos_strings_kk.xtb b/ui/chromeos/translations/ui_chromeos_strings_kk.xtb index 08c9a77f..74451aaa 100644 --- a/ui/chromeos/translations/ui_chromeos_strings_kk.xtb +++ b/ui/chromeos/translations/ui_chromeos_strings_kk.xtb
@@ -188,6 +188,7 @@ <translation id="2570012981255377263">Жақында пайдаланған файлдарыңыз осы жерде көрсетіледі.</translation> <translation id="2578394532502990878">Тамиль (фонетикалық)</translation> <translation id="2579959351793446050">Одия</translation> +<translation id="2593644851255584939">Әкімшіңіз SIM картасының құлпын ашуды талап етеді.</translation> <translation id="2602810353103180630">Желі: <ph name="NETWORK_INDEX" />/<ph name="NETWORK_COUNT" />, <ph name="NETWORK_NAME" />, <ph name="CONNECTION_STATUS" />, сигнал күші: <ph name="SIGNAL_STRENGTH" />%, әкімші бөгеген, мәліметтер</translation> <translation id="2614589611416690597"><ph name="VIDEO_TYPE" /> бейнесі</translation> <translation id="2617342710774726426">SIM картасы құлыпталған</translation>
diff --git a/ui/chromeos/translations/ui_chromeos_strings_lo.xtb b/ui/chromeos/translations/ui_chromeos_strings_lo.xtb index ee5111e..9800db5 100644 --- a/ui/chromeos/translations/ui_chromeos_strings_lo.xtb +++ b/ui/chromeos/translations/ui_chromeos_strings_lo.xtb
@@ -188,6 +188,7 @@ <translation id="2570012981255377263">ໄຟລ໌ຫຼ້າສຸດຂອງທ່ານຈະປາກົດຢູ່ບ່ອນນີ້</translation> <translation id="2578394532502990878">ພາສາທາມິລ (ຕາມການອອກສຽງ)</translation> <translation id="2579959351793446050">ພາສາໂອເດຍ</translation> +<translation id="2593644851255584939">ຜູ້ເບິ່ງແຍງລະບົບຂອງທ່ານຕ້ອງການໃຫ້ທ່ານປິດການນຳໃຊ້ລັອກ SIM.</translation> <translation id="2602810353103180630">ເຄືອຂ່າຍທີ <ph name="NETWORK_INDEX" /> ຈາກທັງໝົດ <ph name="NETWORK_COUNT" />, <ph name="NETWORK_NAME" />, <ph name="CONNECTION_STATUS" />, ຄວາມແຮງສັນຍານ <ph name="SIGNAL_STRENGTH" />%, ຖືກບລັອກໂດຍຜູ້ເບິ່ງແຍງລະບົບຂອງທ່ານ, ລາຍລະອຽດ</translation> <translation id="2614589611416690597">ວິດີໂອ <ph name="VIDEO_TYPE" /></translation> <translation id="2617342710774726426">ແຜ່ນ SIM ລັອກແລ້ວ</translation>
diff --git a/ui/chromeos/translations/ui_chromeos_strings_ru.xtb b/ui/chromeos/translations/ui_chromeos_strings_ru.xtb index 216e8c4..73e8e0f14 100644 --- a/ui/chromeos/translations/ui_chromeos_strings_ru.xtb +++ b/ui/chromeos/translations/ui_chromeos_strings_ru.xtb
@@ -188,6 +188,7 @@ <translation id="2570012981255377263">Здесь будут появляться ваши недавние файлы.</translation> <translation id="2578394532502990878">Тамильский, фонетический</translation> <translation id="2579959351793446050">Ория</translation> +<translation id="2593644851255584939">Согласно настройкам администратора, SIM-карта должна быть разблокирована.</translation> <translation id="2602810353103180630">Сеть <ph name="NETWORK_INDEX" /> из <ph name="NETWORK_COUNT" />, название – "<ph name="NETWORK_NAME" />", статус подключения – "<ph name="CONNECTION_STATUS" />", уровень сигнала – <ph name="SIGNAL_STRENGTH" /> %, заблокирована администратором, дополнительные сведения</translation> <translation id="2614589611416690597">Видео <ph name="VIDEO_TYPE" /></translation> <translation id="2617342710774726426">SIM-карта заблокирована</translation>
diff --git a/ui/chromeos/translations/ui_chromeos_strings_sq.xtb b/ui/chromeos/translations/ui_chromeos_strings_sq.xtb index 936ffb1..cc8a84c 100644 --- a/ui/chromeos/translations/ui_chromeos_strings_sq.xtb +++ b/ui/chromeos/translations/ui_chromeos_strings_sq.xtb
@@ -188,6 +188,7 @@ <translation id="2570012981255377263">Skedarët e tu më të fundit do të shfaqen këtu</translation> <translation id="2578394532502990878">Tamilisht fonetike</translation> <translation id="2579959351793446050">Odiaisht</translation> +<translation id="2593644851255584939">Administratori yt kërkon që të çaktivizosh kyçjen e kartës SIM.</translation> <translation id="2602810353103180630">Rrjeti <ph name="NETWORK_INDEX" /> nga <ph name="NETWORK_COUNT" />, <ph name="NETWORK_NAME" />, <ph name="CONNECTION_STATUS" />, fuqia e sinjalit <ph name="SIGNAL_STRENGTH" />%, bllokuar nga administratori yt, detajet</translation> <translation id="2614589611416690597">Video <ph name="VIDEO_TYPE" /></translation> <translation id="2617342710774726426">Karta SIM është e kyçur</translation>
diff --git a/ui/chromeos/translations/ui_chromeos_strings_sv.xtb b/ui/chromeos/translations/ui_chromeos_strings_sv.xtb index 40a8f44..44ee675 100644 --- a/ui/chromeos/translations/ui_chromeos_strings_sv.xtb +++ b/ui/chromeos/translations/ui_chromeos_strings_sv.xtb
@@ -188,6 +188,7 @@ <translation id="2570012981255377263">De senaste filerna visas här</translation> <translation id="2578394532502990878">tamil, fonetiskt</translation> <translation id="2579959351793446050">odia</translation> +<translation id="2593644851255584939">Administratören kräver att du inaktiverar SIM-låset.</translation> <translation id="2602810353103180630">Nätverk <ph name="NETWORK_INDEX" /> av <ph name="NETWORK_COUNT" />, <ph name="NETWORK_NAME" />, <ph name="CONNECTION_STATUS" />, signalstyrka <ph name="SIGNAL_STRENGTH" /> %, blockerat av administratören, information</translation> <translation id="2614589611416690597"><ph name="VIDEO_TYPE" />-video</translation> <translation id="2617342710774726426">SIM-kortet är låst</translation>
diff --git a/ui/chromeos/translations/ui_chromeos_strings_ta.xtb b/ui/chromeos/translations/ui_chromeos_strings_ta.xtb index d9e0f4d..9784157f 100644 --- a/ui/chromeos/translations/ui_chromeos_strings_ta.xtb +++ b/ui/chromeos/translations/ui_chromeos_strings_ta.xtb
@@ -188,6 +188,7 @@ <translation id="2570012981255377263">உங்கள் சமீபத்திய ஃபைல்கள் இங்கே காட்டப்படும்</translation> <translation id="2578394532502990878">தமிழ் ஒலிப்புமுறை</translation> <translation id="2579959351793446050">ஒடியா</translation> +<translation id="2593644851255584939">சிம் பூட்டை முடக்குமாறு உங்கள் நிர்வாகி கோருகிறார்.</translation> <translation id="2602810353103180630">நெட்வொர்க் <ph name="NETWORK_INDEX" />/<ph name="NETWORK_COUNT" />, <ph name="NETWORK_NAME" />, <ph name="CONNECTION_STATUS" />, சிக்னல் வலிமை <ph name="SIGNAL_STRENGTH" />%, உங்கள் நிர்வாகி தடுத்துள்ளார், விவரங்கள்</translation> <translation id="2614589611416690597"><ph name="VIDEO_TYPE" /> வீடியோ</translation> <translation id="2617342710774726426">சிம் கார்டு பூட்டப்பட்டுள்ளது</translation>
diff --git a/ui/chromeos/translations/ui_chromeos_strings_te.xtb b/ui/chromeos/translations/ui_chromeos_strings_te.xtb index faec01f9..bdf3a62 100644 --- a/ui/chromeos/translations/ui_chromeos_strings_te.xtb +++ b/ui/chromeos/translations/ui_chromeos_strings_te.xtb
@@ -363,7 +363,7 @@ <translation id="421017592316736757">ఈ ఫైల్ను యాక్సెస్ చేయడానికి మీరు తప్పనిసరిగా ఆన్లైన్లో ఉండాలి.</translation> <translation id="4212740939091998969">"<ph name="FOLDER_NAME" />" పేరు గల ఫోల్డర్ ఇప్పటికే ఉంది. దయచేసి వేరే పేరును ఎంచుకోండి.</translation> <translation id="4215448920900139318"><ph name="FILE_COUNT" /> వాటిని బ్యాకప్ చేస్తోంది</translation> -<translation id="4218274196133425560"><ph name="HOST_NAME" /> యొక్క మినహాయింపును తీసివేయి</translation> +<translation id="4218274196133425560"><ph name="HOST_NAME" /> యొక్క మినహాయింపును తీసివేయండి</translation> <translation id="4261901459838235729">Google ప్రెజెంటేషన్</translation> <translation id="4277536868133419688"><ph name="FILTER_NAME" /> ఫిల్టర్ ఆన్లో ఉంది.</translation> <translation id="4290535918735525311">Linuxతో 1 ఫోల్డర్ షేర్ చేయబడింది</translation> @@ -657,7 +657,7 @@ <translation id="6609332149380188670"><ph name="NUMBER_OF_ITEMS" /> ఫోల్డర్లు Parallels Desktopతో చేర్చబడ్డాయి</translation> <translation id="6629518321609546825">కనీసం 4 నంబర్లను ఎంటర్ చేయండి</translation> <translation id="6629841649550503054">అన్నీ <ph name="BEGIN_LINK" />Google Drive<ph name="END_LINK" />కి బ్యాకప్ చేయబడ్డాయి!</translation> -<translation id="6643016212128521049">క్లియర్ చేయి</translation> +<translation id="6643016212128521049">క్లియర్ చేయండి</translation> <translation id="6650726141019353908">గులాబి రంగు సీతాకోకచిలుక</translation> <translation id="6657585470893396449">పాస్వర్డ్</translation> <translation id="6673674183150363784">Bépo కీబోర్డ్తో ఫ్రెంచ్ (ఫ్రాన్స్)</translation>
diff --git a/ui/chromeos/translations/ui_chromeos_strings_ur.xtb b/ui/chromeos/translations/ui_chromeos_strings_ur.xtb index 44291e38..8cdb8353 100644 --- a/ui/chromeos/translations/ui_chromeos_strings_ur.xtb +++ b/ui/chromeos/translations/ui_chromeos_strings_ur.xtb
@@ -188,6 +188,7 @@ <translation id="2570012981255377263">آپ کی حالیہ فائلیں یہاں ظاہر ہوں گی</translation> <translation id="2578394532502990878">تمل فونیٹک</translation> <translation id="2579959351793446050">اڑیہ</translation> +<translation id="2593644851255584939">آپ کا منتظم آپ سے SIM لاک کو غیر فعال کرنے کا مطالبہ کرتا ہے۔</translation> <translation id="2602810353103180630"><ph name="NETWORK_COUNT" /> میں سے <ph name="NETWORK_INDEX" />، <ph name="NETWORK_NAME" /> نیٹ ورک، <ph name="CONNECTION_STATUS" />، سگنل کی مضبوطی <ph name="SIGNAL_STRENGTH" />%، آپ کے منتظم کے ذریعے مسدود کردہ، تفاصیل</translation> <translation id="2614589611416690597"><ph name="VIDEO_TYPE" /> ویڈیو</translation> <translation id="2617342710774726426">SIM کارڈ مقفل ہے</translation>
diff --git a/ui/chromeos/translations/ui_chromeos_strings_zh-CN.xtb b/ui/chromeos/translations/ui_chromeos_strings_zh-CN.xtb index 39efc89..a208fcd 100644 --- a/ui/chromeos/translations/ui_chromeos_strings_zh-CN.xtb +++ b/ui/chromeos/translations/ui_chromeos_strings_zh-CN.xtb
@@ -188,6 +188,7 @@ <translation id="2570012981255377263">您最近用过的文件会显示在此处</translation> <translation id="2578394532502990878">泰米尔语注音</translation> <translation id="2579959351793446050">奥里亚语</translation> +<translation id="2593644851255584939">您的管理员要求您停用 SIM 卡锁定功能。</translation> <translation id="2602810353103180630">第 <ph name="NETWORK_INDEX" /> 个网络(共 <ph name="NETWORK_COUNT" /> 个),<ph name="NETWORK_NAME" />,<ph name="CONNECTION_STATUS" />,信号强度为 <ph name="SIGNAL_STRENGTH" />%,由您的管理员管理,详细信息</translation> <translation id="2614589611416690597"><ph name="VIDEO_TYPE" /> 视频</translation> <translation id="2617342710774726426">SIM 卡已被锁定</translation>
diff --git a/ui/chromeos/translations/ui_chromeos_strings_zu.xtb b/ui/chromeos/translations/ui_chromeos_strings_zu.xtb index 5c95bc0..200dff6 100644 --- a/ui/chromeos/translations/ui_chromeos_strings_zu.xtb +++ b/ui/chromeos/translations/ui_chromeos_strings_zu.xtb
@@ -188,6 +188,7 @@ <translation id="2570012981255377263">Amafayela akho akamuva azovela lapha</translation> <translation id="2578394532502990878">I-Tamil Phonetic</translation> <translation id="2579959351793446050">Isi-Odia</translation> +<translation id="2593644851255584939">Umlawuli wakho udinga ukuthi ukhubaze Ukukhiya Kwe-SIM.</translation> <translation id="2602810353103180630">Inethiwekhi engu-<ph name="NETWORK_INDEX" /> kwezingu-<ph name="NETWORK_COUNT" />, <ph name="NETWORK_NAME" />, <ph name="CONNECTION_STATUS" />, Amandla Wesinglai<ph name="SIGNAL_STRENGTH" />%, Kuvinjelwe Umphathi wakho, Imininingwane</translation> <translation id="2614589611416690597"><ph name="VIDEO_TYPE" /> ividiyo</translation> <translation id="2617342710774726426">I-SIM card ikhiyiwe</translation>
diff --git a/ui/events/platform/x11/x11_event_watcher_glib.h b/ui/events/platform/x11/x11_event_watcher_glib.h index 12a6858..9b9321f8 100644 --- a/ui/events/platform/x11/x11_event_watcher_glib.h +++ b/ui/events/platform/x11/x11_event_watcher_glib.h
@@ -35,7 +35,7 @@ raw_ptr<X11EventSource> event_source_; // The GLib event source for X events. - raw_ptr<GSource> x_source_ = nullptr; + raw_ptr<GSource, DanglingUntriaged> x_source_ = nullptr; // The poll attached to |x_source_|. std::unique_ptr<GPollFD> x_poll_;
diff --git a/ui/file_manager/integration_tests/file_manager/office.js b/ui/file_manager/integration_tests/file_manager/office.js index ec461673..8abd3f5 100644 --- a/ui/file_manager/integration_tests/file_manager/office.js +++ b/ui/file_manager/integration_tests/file_manager/office.js
@@ -219,6 +219,37 @@ chrome.test.assertEq(1, removedCount); }; +// Tests that "Upload to Drive" cannot be enabled if the "Web Drive Office" flag +// is disabled (test setup similar to `openOfficeWordFromMyFiles`). +testcase.uploadToDriveRequiresWebDriveOfficeEnabled = async () => { + const appId = + await setupAndWaitUntilReady(RootPath.DOWNLOADS, [ENTRIES.smallDocx]); + // Fake chrome.fileManagerPrivate.executeTask to return + // chrome.fileManagerPrivate.TaskResult.EMPTY. + const fakeData = { + 'chrome.fileManagerPrivate.executeTask': ['static_fake', ['empty']], + }; + await remoteCall.callRemoteTestUtil('foregroundFake', appId, [fakeData]); + + // Open file. + chrome.test.assertTrue(await remoteCall.callRemoteTestUtil( + 'openFile', appId, [ENTRIES.smallDocx.nameText])); + + // Since the Web Drive Office flag isn't enabled, the Upload to Drive task + // should not be available: another task should have been executed instead + // (QuickOffice or generic task). + const taskDescriptor = await getExecutedTask(appId); + chrome.test.assertFalse( + taskDescriptor.actionId == uploadOfficeToDriveDescriptor().actionId); + chrome.test.assertFalse( + taskDescriptor.actionId == webDriveOfficeWordDescriptor().actionId); + + // Remove fakes. + const removedCount = await remoteCall.callRemoteTestUtil( + 'removeAllForegroundFakes', appId, []); + chrome.test.assertEq(1, removedCount); +}; + testcase.openOfficeWordFromDrive = async () => { const appId = await setupAndWaitUntilReady( RootPath.DRIVE, [], [ENTRIES.smallDocxHosted]);
diff --git a/ui/gfx/canvas.cc b/ui/gfx/canvas.cc index 8b525dcd..08925029 100644 --- a/ui/gfx/canvas.cc +++ b/ui/gfx/canvas.cc
@@ -162,7 +162,7 @@ } void Canvas::DrawColor(SkColor color, SkBlendMode mode) { - canvas_->drawColor(color, mode); + canvas_->drawColor(SkColor4f::FromColor(color), mode); } void Canvas::FillRect(const Rect& rect, SkColor color) {
diff --git a/ui/gfx/render_text_unittest.cc b/ui/gfx/render_text_unittest.cc index eff0595..7c2ce5f 100644 --- a/ui/gfx/render_text_unittest.cc +++ b/ui/gfx/render_text_unittest.cc
@@ -1072,7 +1072,7 @@ SkImageInfo::MakeN32Premul(kCanvasSize.width(), kCanvasSize.height())); cc::SkiaPaintCanvas paint_canvas(bitmap); Canvas canvas(&paint_canvas, 1.0f); - paint_canvas.clear(SK_ColorWHITE); + paint_canvas.clear(SkColors::kWhite); SetGlyphWidth(kGlyphWidth); RenderText* render_text = GetRenderText(); @@ -7425,7 +7425,7 @@ render_text->SetColor(SK_ColorBLACK); for (auto* string : kTestStrings) { - paint_canvas.clear(SK_ColorWHITE); + paint_canvas.clear(SkColors::kWhite); render_text->SetText(base::UTF8ToUTF16(string)); render_text->ApplyBaselineStyle(SUPERSCRIPT, Range(1, 2)); render_text->ApplyBaselineStyle(SUPERIOR, Range(3, 4)); @@ -7496,7 +7496,7 @@ render_text->SetColor(SK_ColorBLACK); for (auto* string : kTestStrings) { - paint_canvas.clear(SK_ColorWHITE); + paint_canvas.clear(SkColors::kWhite); render_text->SetText(base::UTF8ToUTF16(string)); const Size string_size = render_text->GetStringSize(); int fake_width = string_size.width() / 2;
diff --git a/ui/gl/dc_renderer_layer_params.h b/ui/gl/dc_renderer_layer_params.h index c9c9cedd..1545df3 100644 --- a/ui/gl/dc_renderer_layer_params.h +++ b/ui/gl/dc_renderer_layer_params.h
@@ -56,6 +56,8 @@ gfx::ProtectedVideoType::kClear; gfx::HDRMetadata hdr_metadata; + + bool is_video_fullscreen_mode; }; } // namespace ui
diff --git a/ui/lottie/animation.cc b/ui/lottie/animation.cc index a3125e7..e45ee93 100644 --- a/ui/lottie/animation.cc +++ b/ui/lottie/animation.cc
@@ -4,12 +4,15 @@ #include "ui/lottie/animation.h" +#include <utility> + #include "base/bind.h" #include "base/check.h" #include "base/numerics/safe_conversions.h" #include "base/observer_list.h" #include "base/trace_event/trace_event.h" #include "cc/paint/skottie_wrapper.h" +#include "third_party/abseil-cpp/absl/types/optional.h" #include "third_party/skia/include/core/SkBitmap.h" #include "third_party/skia/include/core/SkCanvas.h" #include "third_party/skia/include/core/SkImage.h" @@ -79,6 +82,23 @@ return end_offset_ / total_duration_; } +// static +Animation::PlaybackConfig Animation::PlaybackConfig::CreateDefault( + const Animation& animation) { + return {/*start_offset=*/base::TimeDelta(), + /*duration=*/animation.GetAnimationDuration(), + Animation::Style::kLoop}; +} + +// static +Animation::PlaybackConfig Animation::PlaybackConfig::CreateWithStyle( + Style style, + const Animation& animation) { + PlaybackConfig config = CreateDefault(animation); + config.style = style; + return config; +} + Animation::Animation(scoped_refptr<cc::SkottieWrapper> skottie, cc::SkottieColorMap color_map, cc::SkottieFrameDataProvider* frame_data_provider) @@ -139,19 +159,12 @@ return gfx::ToRoundedSize(gfx::SkSizeToSizeF(skottie_->size())); } -void Animation::Start(Style style) { - DCHECK_NE(state_, PlayState::kPaused); - DCHECK_NE(state_, PlayState::kPlaying); - StartSubsection(base::TimeDelta(), GetAnimationDuration(), style); -} - -void Animation::StartSubsection(base::TimeDelta start_offset, - base::TimeDelta duration, - Style style) { +void Animation::Start(absl::optional<PlaybackConfig> playback_config) { DCHECK(state_ == PlayState::kStopped || state_ == PlayState::kEnded); - DCHECK_LE(start_offset + duration, GetAnimationDuration()); - - style_ = style; + if (!playback_config) + playback_config = PlaybackConfig::CreateDefault(*this); + DCHECK_LE(playback_config->start_offset + playback_config->duration, + GetAnimationDuration()); // Reset the |timer_control_| object for a new animation play. timer_control_.reset(nullptr); @@ -159,8 +172,7 @@ // Schedule a play for the animation and store the necessary information // needed to start playing. state_ = PlayState::kSchedulePlay; - scheduled_start_offset_ = start_offset; - scheduled_duration_ = duration; + playback_config_ = std::move(*playback_config); } void Animation::Pause() { @@ -200,6 +212,14 @@ } } +absl::optional<Animation::PlaybackConfig> Animation::GetPlaybackConfig() const { + if (state_ == PlayState::kStopped) { + return absl::nullopt; + } else { + return playback_config_; + } +} + void Animation::Paint(gfx::Canvas* canvas, const base::TimeTicks& timestamp, const gfx::Size& size) { @@ -220,7 +240,7 @@ timer_control_->Step(timestamp); int new_num_cycles = timer_control_->completed_cycles(); animation_cycle_ended = new_num_cycles != previous_num_cycles; - if (animation_cycle_ended && style_ == Style::kLinear) + if (animation_cycle_ended && playback_config_.style == Style::kLinear) state_ = PlayState::kEnded; } break; case PlayState::kPaused: @@ -304,14 +324,15 @@ void Animation::InitTimer(const base::TimeTicks& timestamp) { DCHECK(!timer_control_); timer_control_ = std::make_unique<TimerControl>( - scheduled_start_offset_, scheduled_duration_, GetAnimationDuration(), - timestamp, style_ == Style::kThrobbing, playback_speed_); + playback_config_.start_offset, playback_config_.duration, + GetAnimationDuration(), timestamp, + playback_config_.style == Style::kThrobbing, playback_speed_); } void Animation::TryNotifyAnimationCycleEnded() const { DCHECK(timer_control_); bool inform_observer = true; - switch (style_) { + switch (playback_config_.style) { case Style::kLoop: break; case Style::kThrobbing:
diff --git a/ui/lottie/animation.h b/ui/lottie/animation.h index fbd114e..e715f81 100644 --- a/ui/lottie/animation.h +++ b/ui/lottie/animation.h
@@ -54,7 +54,8 @@ // 2. Playing the animation and rendering each frame: // void SampleClient::Init() { // Animation animation_ = Animation(data); -// animation_.Start(Animation::Style::LINEAR); +// animation_.Start(Animation::PlaybackConfig::CreateWithStyle( +// Animation::Style::kLinear, *animation_)); // } // // // overrides cc::CompositorAnimationObserver @@ -72,8 +73,8 @@ // // This will seek to the 1st second of the animation and from there // // play it for 5 seconds. // Animation animation_ = Animation(data); -// animation_.Start(Seconds(1), -// Seconds(5)); +// animation_.Start(Animation::PlaybackConfig({ +// Seconds(1), Seconds(5), Animation::Style::kLinear})); // } // // // overrides cc::CompositorAnimationObserver @@ -95,6 +96,22 @@ kLoop // Same as LINEAR, except the animation repeats after it ends. }; + struct COMPONENT_EXPORT(UI_LOTTIE) PlaybackConfig { + // By default, loop from the beginning of the animation to the end. + static PlaybackConfig CreateDefault(const Animation& animation); + // Play from the beginning of the animation to the end with the provided + // |style|. + static PlaybackConfig CreateWithStyle(Style style, + const Animation& animation); + + // The animation will be scheduled to play from the |start_offset| to + // |start_offset| + |duration|. The values will be clamped so as to not go + // out of bounds. + base::TimeDelta start_offset; + base::TimeDelta duration; + Style style = Style::kLoop; + }; + // |frame_data_provider| may be null if it's known that the incoming skottie // animation does not contain any image assets. explicit Animation( @@ -119,18 +136,10 @@ // Animation controls -------------------------------------------------------- // This is an asynchronous call that would start playing the animation on the // next animation step. On a successful start the |observer_| would be - // notified. Use this if you want to play the entire animation. - void Start(Style style = Style::kLoop); - - // This is an asynchronous call that would start playing the animation on the - // next animation step. On a successful start the |observer_| would be // notified. - // The animation will be scheduled to play from the |start_offset| to - // |start_offset| + |duration|. The values will be clamped so as to not go out - // of bounds. - void StartSubsection(base::TimeDelta start_offset, - base::TimeDelta duration, - Style style = Style::kLoop); + // + // If a null |playback_config| is provided, the default one is used. + void Start(absl::optional<PlaybackConfig> playback_config = absl::nullopt); // Pauses the animation. void Pause(); @@ -153,6 +162,10 @@ // yet. absl::optional<float> GetCurrentProgress() const; + // Returns the currently active PlaybackConfig, or nullopt if the animation + // is currently Stop()ed. + absl::optional<PlaybackConfig> GetPlaybackConfig() const; + // Paint operations ---------------------------------------------------------- // Paints the frame of the animation for the given |timestamp| at the given // |size|. @@ -273,16 +286,11 @@ // Manages the timeline for the current playing animation. std::unique_ptr<TimerControl> timer_control_; - // The style of animation to play. - Style style_ = Style::kLoop; - // The current state of animation. PlayState state_ = PlayState::kStopped; - // The below values of scheduled_* are set when we have scheduled a play. - // These will be used to initialize |timer_control_|. - base::TimeDelta scheduled_start_offset_; - base::TimeDelta scheduled_duration_; + // The config from the most recent call to Start(). + PlaybackConfig playback_config_; base::ObserverList<AnimationObserver> observers_;
diff --git a/ui/lottie/animation_unittest.cc b/ui/lottie/animation_unittest.cc index f6e3c0a2..a72dd36 100644 --- a/ui/lottie/animation_unittest.cc +++ b/ui/lottie/animation_unittest.cc
@@ -37,6 +37,7 @@ namespace { using ::testing::Eq; +using ::testing::FieldsAre; using ::testing::FloatEq; using ::testing::FloatNear; using ::testing::IsEmpty; @@ -215,7 +216,9 @@ gfx::Canvas* canvas() { return canvas_.get(); } - Animation::Style GetStyle() const { return animation_->style_; } + Animation::Style GetStyle() const { + return animation_->playback_config_.style; + } Animation::PlayState GetState() const { return animation_->state_; } @@ -354,7 +357,8 @@ AdvanceClock(base::Milliseconds(300)); EXPECT_TRUE(IsStopped()); - animation_->Start(Animation::Style::kLinear); + animation_->Start(Animation::PlaybackConfig::CreateWithStyle( + Animation::Style::kLinear, *animation_)); EXPECT_TRUE(IsScheduledToPlay()); EXPECT_FALSE(observer.animation_will_start_playing()); @@ -400,7 +404,8 @@ AdvanceClock(base::Milliseconds(300)); - animation_->Start(Animation::Style::kLinear); + animation_->Start(Animation::PlaybackConfig::CreateWithStyle( + Animation::Style::kLinear, *animation_)); animation_->Paint(canvas(), NowTicks(), animation_->GetOriginalSize()); EXPECT_TRUE(IsPlaying()); @@ -428,7 +433,8 @@ AdvanceClock(base::Milliseconds(300)); EXPECT_FALSE(observer.animation_cycle_ended()); - animation_->StartSubsection(kStartTime, kDuration, Animation::Style::kLinear); + animation_->Start(Animation::PlaybackConfig( + {kStartTime, kDuration, Animation::Style::kLinear})); EXPECT_TRUE(IsScheduledToPlay()); EXPECT_FALSE(observer.animation_will_start_playing()); @@ -489,7 +495,8 @@ AdvanceClock(base::Milliseconds(200)); - animation_->StartSubsection(kStartTime, kDuration, Animation::Style::kLinear); + animation_->Start(Animation::PlaybackConfig( + {kStartTime, kDuration, Animation::Style::kLinear})); animation_->Paint(canvas(), NowTicks(), animation_->GetOriginalSize()); constexpr auto kAdvance = base::Milliseconds(100); @@ -539,7 +546,8 @@ AdvanceClock(base::Milliseconds(300)); EXPECT_TRUE(IsStopped()); - animation_->Start(Animation::Style::kLoop); + animation_->Start(Animation::PlaybackConfig::CreateWithStyle( + Animation::Style::kLoop, *animation_)); EXPECT_TRUE(IsScheduledToPlay()); EXPECT_FALSE(observer.animation_will_start_playing()); @@ -586,7 +594,8 @@ AdvanceClock(base::Milliseconds(300)); EXPECT_TRUE(IsStopped()); - animation_->StartSubsection(kStartTime, kDuration, Animation::Style::kLoop); + animation_->Start(Animation::PlaybackConfig( + {kStartTime, kDuration, Animation::Style::kLoop})); EXPECT_TRUE(IsScheduledToPlay()); EXPECT_FALSE(observer.animation_will_start_playing()); @@ -647,7 +656,8 @@ AdvanceClock(base::Milliseconds(200)); - animation_->StartSubsection(kStartTime, kDuration, Animation::Style::kLoop); + animation_->Start(Animation::PlaybackConfig( + {kStartTime, kDuration, Animation::Style::kLoop})); animation_->Paint(canvas(), NowTicks(), animation_->GetOriginalSize()); ASSERT_TRUE(animation_->GetCurrentProgress()); @@ -705,7 +715,8 @@ AdvanceClock(base::Milliseconds(300)); - animation_->Start(Animation::Style::kThrobbing); + animation_->Start(Animation::PlaybackConfig::CreateWithStyle( + Animation::Style::kThrobbing, *animation_)); EXPECT_TRUE(IsScheduledToPlay()); EXPECT_FALSE(observer.animation_will_start_playing()); @@ -765,8 +776,8 @@ AdvanceClock(base::Milliseconds(300)); - animation_->StartSubsection(kStartTime, kDuration, - Animation::Style::kThrobbing); + animation_->Start(Animation::PlaybackConfig( + {kStartTime, kDuration, Animation::Style::kThrobbing})); EXPECT_TRUE(IsScheduledToPlay()); EXPECT_FALSE(observer.animation_will_start_playing()); @@ -849,8 +860,8 @@ AdvanceClock(base::Milliseconds(200)); - animation_->StartSubsection(kStartTime, kDuration, - Animation::Style::kThrobbing); + animation_->Start(Animation::PlaybackConfig( + {kStartTime, kDuration, Animation::Style::kThrobbing})); animation_->Paint(canvas(), NowTicks(), animation_->GetOriginalSize()); EXPECT_TRUE(IsPlaying()); @@ -986,7 +997,8 @@ AdvanceClock(base::Milliseconds(300)); - animation_->Start(Animation::Style::kLinear); + animation_->Start(Animation::PlaybackConfig::CreateWithStyle( + Animation::Style::kLinear, *animation_)); animation_->Paint(&canvas, NowTicks(), animation_->GetOriginalSize()); AdvanceClock(base::Milliseconds(50)); @@ -1015,7 +1027,8 @@ AdvanceClock(base::Milliseconds(300)); - animation_->Start(Animation::Style::kLoop); + animation_->Start(Animation::PlaybackConfig::CreateWithStyle( + Animation::Style::kLoop, *animation_)); animation_->Paint(canvas(), NowTicks(), animation_->GetOriginalSize()); ASSERT_TRUE(observer.last_frame_painted()); @@ -1049,7 +1062,8 @@ AdvanceClock(base::Milliseconds(300)); animation_->SetPlaybackSpeed(2); - animation_->Start(Animation::Style::kLinear); + animation_->Start(Animation::PlaybackConfig::CreateWithStyle( + Animation::Style::kLinear, *animation_)); animation_->Paint(canvas(), NowTicks(), animation_->GetOriginalSize()); ASSERT_TRUE(animation_->GetCurrentProgress()); @@ -1081,7 +1095,8 @@ TEST_F(AnimationWithImageAssetsTest, PaintsAnimationImagesToCanvas) { AdvanceClock(base::Milliseconds(300)); - animation_->Start(Animation::Style::kLoop); + animation_->Start(Animation::PlaybackConfig::CreateWithStyle( + Animation::Style::kLoop, *animation_)); TestSkottieFrameDataProvider::ImageAssetImpl* asset_0 = frame_data_provider_.GetLoadedImageAsset("image_0"); @@ -1126,7 +1141,8 @@ TEST_F(AnimationWithImageAssetsTest, GracefullyHandlesNullImages) { AdvanceClock(base::Milliseconds(300)); - animation_->Start(Animation::Style::kLoop); + animation_->Start(Animation::PlaybackConfig::CreateWithStyle( + Animation::Style::kLoop, *animation_)); display_list_->StartPaint(); animation_->Paint(canvas(), NowTicks(), animation_->GetOriginalSize()); @@ -1146,7 +1162,8 @@ TEST_F(AnimationWithImageAssetsTest, LoadsCorrectFrameTimestamp) { AdvanceClock(base::Milliseconds(300)); - animation_->Start(Animation::Style::kLoop); + animation_->Start(Animation::PlaybackConfig::CreateWithStyle( + Animation::Style::kLoop, *animation_)); asset_0_->set_current_frame_data(CreateHighQualityTestFrameData()); asset_1_->set_current_frame_data(CreateHighQualityTestFrameData()); @@ -1193,7 +1210,8 @@ TEST_F(AnimationWithImageAssetsTest, LoadsCorrectImageScale) { AdvanceClock(base::Milliseconds(300)); - animation_->Start(Animation::Style::kLoop); + animation_->Start(Animation::PlaybackConfig::CreateWithStyle( + Animation::Style::kLoop, *animation_)); asset_0_->set_current_frame_data(CreateHighQualityTestFrameData()); @@ -1209,7 +1227,8 @@ TEST_F(AnimationTest, HandlesTimeStepGreaterThanAnimationDuration) { AdvanceClock(base::Milliseconds(300)); - animation_->Start(Animation::Style::kLoop); + animation_->Start(Animation::PlaybackConfig::CreateWithStyle( + Animation::Style::kLoop, *animation_)); animation_->Paint(canvas(), NowTicks(), animation_->GetOriginalSize()); @@ -1237,7 +1256,8 @@ void AnimationCycleEnded(const Animation* animation) override { animation_->Stop(); - animation_->Start(Animation::Style::kLinear); + animation_->Start(Animation::PlaybackConfig::CreateWithStyle( + Animation::Style::kLinear, *animation_)); } private: @@ -1250,7 +1270,8 @@ AdvanceClock(base::Milliseconds(300)); - animation_->Start(Animation::Style::kLinear); + animation_->Start(Animation::PlaybackConfig::CreateWithStyle( + Animation::Style::kLinear, *animation_)); animation_->Paint(canvas(), NowTicks(), animation_->GetOriginalSize()); // Advance the clock to the end of the animation. @@ -1283,4 +1304,26 @@ EXPECT_TRUE(observer_2.animation_is_deleted()); } +TEST_F(AnimationTest, GetPlaybackConfig) { + EXPECT_FALSE(animation_->GetPlaybackConfig()); + Animation::PlaybackConfig test_config = { + /*start_offset=*/kAnimationDuration / 4, + /*duration=*/kAnimationDuration / 2, Animation::Style::kThrobbing}; + animation_->Start(test_config); + ASSERT_TRUE(animation_->GetPlaybackConfig()); + EXPECT_THAT(*animation_->GetPlaybackConfig(), + FieldsAre(test_config.start_offset, test_config.duration, + test_config.style)); + animation_->Stop(); + EXPECT_FALSE(animation_->GetPlaybackConfig()); + test_config.start_offset = kAnimationDuration / 2; + test_config.duration = kAnimationDuration / 4; + test_config.style = Animation::Style::kLoop; + animation_->Start(test_config); + ASSERT_TRUE(animation_->GetPlaybackConfig()); + EXPECT_THAT(*animation_->GetPlaybackConfig(), + FieldsAre(test_config.start_offset, test_config.duration, + test_config.style)); +} + } // namespace lottie
diff --git a/ui/native_theme/native_theme_aura.cc b/ui/native_theme/native_theme_aura.cc index b47304f..eaed2772 100644 --- a/ui/native_theme/native_theme_aura.cc +++ b/ui/native_theme/native_theme_aura.cc
@@ -121,7 +121,9 @@ const MenuBackgroundExtraParams& menu_background, ColorScheme color_scheme) const { DCHECK(color_provider); - SkColor color = color_provider->GetColor(kColorMenuBackground); + // TODO(crbug/1308932): Remove FromColor and make all SkColor4f. + SkColor4f color = + SkColor4f::FromColor(color_provider->GetColor(kColorMenuBackground)); if (menu_background.corner_radius > 0) { cc::PaintFlags flags; flags.setStyle(cc::PaintFlags::kFill_Style);
diff --git a/ui/native_theme/native_theme_base.cc b/ui/native_theme/native_theme_base.cc index 639769a..c281485f 100644 --- a/ui/native_theme/native_theme_base.cc +++ b/ui/native_theme/native_theme_base.cc
@@ -940,8 +940,11 @@ // scheme. If that changes, we need to add an appropriate dark scheme color to // kMenuPopupBackgroundColor. DCHECK(color_scheme == ColorScheme::kDefault); - canvas->drawColor(GetColor(kMenuPopupBackgroundColor, color_scheme), - SkBlendMode::kSrc); + + // TODO(crbug/1308932): Remove FromColor and make all SkColor4f. + canvas->drawColor( + SkColor4f::FromColor(GetColor(kMenuPopupBackgroundColor, color_scheme)), + SkBlendMode::kSrc); } void NativeThemeBase::PaintMenuItemBackground(
diff --git a/ui/strings/translations/ui_strings_af.xtb b/ui/strings/translations/ui_strings_af.xtb index 28ff0d7..6b13508 100644 --- a/ui/strings/translations/ui_strings_af.xtb +++ b/ui/strings/translations/ui_strings_af.xtb
@@ -103,6 +103,7 @@ <translation id="4289300219472526559">Begin praat</translation> <translation id="4289540628985791613">Oorsig</translation> <translation id="4306392492252714209">Verwyder van knipbord af.</translation> +<translation id="4311195029067684288">Vol</translation> <translation id="4491109536499578614">Prent</translation> <translation id="4565377596337484307">Versteek wagwoord</translation> <translation id="4588090240171750605">Rollees na regs</translation> @@ -110,8 +111,10 @@ <translation id="4746179598275229723">Uitbreiding is ontspeld</translation> <translation id="4788285488841504513">{MONTHS,plural, =1{1 maand oor}other{# maande oor}}</translation> <translation id="4888938634149558681">Maak oproep</translation> +<translation id="4937657825850660613">Half</translation> <translation id="4968171027979920686">{SECONDS,plural, =1{1 sekonde}other{# sekondes}}</translation> <translation id="4971687151119236543">Media vorige snit</translation> +<translation id="4971925105143343452">Gedeeltelik</translation> <translation id="5046499563572181734">Tik hier</translation> <translation id="5076340679995252485">Plak</translation> <translation id="5123162024343028706">Dryf bo-op</translation>
diff --git a/ui/strings/translations/ui_strings_am.xtb b/ui/strings/translations/ui_strings_am.xtb index 6009b44..ecb35ba1 100644 --- a/ui/strings/translations/ui_strings_am.xtb +++ b/ui/strings/translations/ui_strings_am.xtb
@@ -111,6 +111,7 @@ <translation id="4746179598275229723">ቅጥያው ተነቅሏል</translation> <translation id="4788285488841504513">{MONTHS,plural, =1{1 ወር ቀርቷል}one{# ወሮች ቀርተዋል}other{# ወሮች ቀርተዋል}}</translation> <translation id="4888938634149558681">ጥሪ ያድርጉ</translation> +<translation id="4937657825850660613">ግማሽ</translation> <translation id="4968171027979920686">{SECONDS,plural, =1{1 ሰከንድ}one{# ሰከንዶች}other{# ሰከንዶች}}</translation> <translation id="4971687151119236543">የሚዲያ ቀዳሚ ትራክ</translation> <translation id="4971925105143343452">ከፊል</translation>
diff --git a/ui/strings/translations/ui_strings_ar.xtb b/ui/strings/translations/ui_strings_ar.xtb index fd10a1a..ac281d2 100644 --- a/ui/strings/translations/ui_strings_ar.xtb +++ b/ui/strings/translations/ui_strings_ar.xtb
@@ -111,6 +111,7 @@ <translation id="4746179598275229723">تمت إزالة تثبيت الإضافة.</translation> <translation id="4788285488841504513">{MONTHS,plural, =1{يتبقى شهر واحد}zero{يتبقى # شهر}two{يتبقى شهرين (#)}few{يتبقى # أشهر}many{يتبقى # شهرًا}other{يتبقى # شهر}}</translation> <translation id="4888938634149558681">إجراء مكالمة</translation> +<translation id="4937657825850660613">تقسيم الشاشة إلى نصفين</translation> <translation id="4968171027979920686">{SECONDS,plural, =1{ثانية واحدة}zero{# من الثواني}two{ثانيتان (#)}few{# ثوانٍ}many{# ثانية}other{# من الثواني}}</translation> <translation id="4971687151119236543">المقطع الصوتي السابق للوسائط</translation> <translation id="4971925105143343452">جزئي</translation>
diff --git a/ui/strings/translations/ui_strings_bg.xtb b/ui/strings/translations/ui_strings_bg.xtb index b6bb89db..4ac0f9f3 100644 --- a/ui/strings/translations/ui_strings_bg.xtb +++ b/ui/strings/translations/ui_strings_bg.xtb
@@ -111,6 +111,7 @@ <translation id="4746179598275229723">Разширението бе освободено</translation> <translation id="4788285488841504513">{MONTHS,plural, =1{Остава 1 месец}other{Остават # месеца}}</translation> <translation id="4888938634149558681">Обаждане</translation> +<translation id="4937657825850660613">Наполовина</translation> <translation id="4968171027979920686">{SECONDS,plural, =1{1 секунда}other{# секунди}}</translation> <translation id="4971687151119236543">Мултимедия, предишният запис</translation> <translation id="4971925105143343452">Частично</translation>
diff --git a/ui/strings/translations/ui_strings_bn.xtb b/ui/strings/translations/ui_strings_bn.xtb index 7ec6771..9945e7f 100644 --- a/ui/strings/translations/ui_strings_bn.xtb +++ b/ui/strings/translations/ui_strings_bn.xtb
@@ -111,6 +111,7 @@ <translation id="4746179598275229723">এক্সটেনশন আনপিন করা হয়েছে</translation> <translation id="4788285488841504513">{MONTHS,plural, =1{১ মাস বাকি}one{# মাস বাকি}other{# মাস বাকি}}</translation> <translation id="4888938634149558681">কল করুন</translation> +<translation id="4937657825850660613">হাফ</translation> <translation id="4968171027979920686">{SECONDS,plural, =1{১ সেকেন্ড}one{# সেকেন্ড}other{# সেকেন্ড}}</translation> <translation id="4971687151119236543">মিডিয়া পূর্ববর্তী ট্র্যাক</translation> <translation id="4971925105143343452">আংশিক</translation>
diff --git a/ui/strings/translations/ui_strings_cy.xtb b/ui/strings/translations/ui_strings_cy.xtb index 514aab0b..72ff97e1 100644 --- a/ui/strings/translations/ui_strings_cy.xtb +++ b/ui/strings/translations/ui_strings_cy.xtb
@@ -103,6 +103,7 @@ <translation id="4289300219472526559">Dechrau Siarad</translation> <translation id="4289540628985791613">Trosolwg</translation> <translation id="4306392492252714209">Tynnu o'r clipfwrdd.</translation> +<translation id="4311195029067684288">Llawn</translation> <translation id="4491109536499578614">Llun</translation> <translation id="4565377596337484307">Cuddio'r cyfrinair</translation> <translation id="4588090240171750605">Sgrolio i'r Dde</translation> @@ -110,10 +111,13 @@ <translation id="4746179598275229723">Estyniad wedi'i ddadbinio</translation> <translation id="4788285488841504513">{MONTHS,plural, =1{1 mis ar ôl}zero{# mis ar ôl}two{# fis ar ôl}few{# mis ar ôl}many{# mis ar ôl}other{# mis ar ôl}}</translation> <translation id="4888938634149558681">Gwneud galwad</translation> +<translation id="4937657825850660613">Hanner</translation> <translation id="4968171027979920686">{SECONDS,plural, =1{1 eiliad}zero{# eiliad}two{# eiliad}few{# eiliad}many{# eiliad}other{# eiliad}}</translation> <translation id="4971687151119236543">Trac Cyfryngau Blaenorol</translation> +<translation id="4971925105143343452">Rhannol</translation> <translation id="5046499563572181734">Tapiwch yma</translation> <translation id="5076340679995252485">&Gludo</translation> +<translation id="5123162024343028706">Arnofio ar y brig</translation> <translation id="520299402983819650"><ph name="QUANTITY" /> PB</translation> <translation id="5278860589123563674">Wedi methu ag anfon</translation> <translation id="528468243742722775">Diwedd</translation>
diff --git a/ui/strings/translations/ui_strings_de.xtb b/ui/strings/translations/ui_strings_de.xtb index 0c3d912..11d157f 100644 --- a/ui/strings/translations/ui_strings_de.xtb +++ b/ui/strings/translations/ui_strings_de.xtb
@@ -111,6 +111,7 @@ <translation id="4746179598275229723">Erweiterung losgelöst</translation> <translation id="4788285488841504513">{MONTHS,plural, =1{noch 1 Monat}other{noch # Monate}}</translation> <translation id="4888938634149558681">Anrufen</translation> +<translation id="4937657825850660613">Hälfte</translation> <translation id="4968171027979920686">{SECONDS,plural, =1{1 Sekunde}other{# Sekunden}}</translation> <translation id="4971687151119236543">Medien – vorheriger Titel</translation> <translation id="4971925105143343452">Teilweise</translation>
diff --git a/ui/strings/translations/ui_strings_es.xtb b/ui/strings/translations/ui_strings_es.xtb index f8aa1dd..e3743ad 100644 --- a/ui/strings/translations/ui_strings_es.xtb +++ b/ui/strings/translations/ui_strings_es.xtb
@@ -111,6 +111,7 @@ <translation id="4746179598275229723">Extensión no fijada</translation> <translation id="4788285488841504513">{MONTHS,plural, =1{Queda 1 mes}other{Quedan # meses}}</translation> <translation id="4888938634149558681">Llamar</translation> +<translation id="4937657825850660613">Mitad</translation> <translation id="4968171027979920686">{SECONDS,plural, =1{1 segundo}other{# segundos}}</translation> <translation id="4971687151119236543">Pista anterior multimedia</translation> <translation id="4971925105143343452">Vista parcial</translation>
diff --git a/ui/strings/translations/ui_strings_et.xtb b/ui/strings/translations/ui_strings_et.xtb index a33026e3..706f92e 100644 --- a/ui/strings/translations/ui_strings_et.xtb +++ b/ui/strings/translations/ui_strings_et.xtb
@@ -111,6 +111,7 @@ <translation id="4746179598275229723">Laiendus on vabastatud</translation> <translation id="4788285488841504513">{MONTHS,plural, =1{1 kuu jäänud}other{# kuud jäänud}}</translation> <translation id="4888938634149558681">Helista</translation> +<translation id="4937657825850660613">Pool</translation> <translation id="4968171027979920686">{SECONDS,plural, =1{1 sekund}other{# sekundit}}</translation> <translation id="4971687151119236543">Meediumi eelmine lugu</translation> <translation id="4971925105143343452">Osaline</translation>
diff --git a/ui/strings/translations/ui_strings_fa.xtb b/ui/strings/translations/ui_strings_fa.xtb index 6fa0e5c..cc1b87e 100644 --- a/ui/strings/translations/ui_strings_fa.xtb +++ b/ui/strings/translations/ui_strings_fa.xtb
@@ -111,6 +111,7 @@ <translation id="4746179598275229723">سنجاق افزونه برداشته شد</translation> <translation id="4788285488841504513">{MONTHS,plural, =1{۱ ماه باقی مانده است}one{# ماه باقی مانده است}other{# ماه باقی مانده است}}</translation> <translation id="4888938634149558681">برقراری تماس</translation> +<translation id="4937657825850660613">نیمه</translation> <translation id="4968171027979920686">{SECONDS,plural, =1{۱ ثانیه}one{# ثانیه}other{# ثانیه}}</translation> <translation id="4971687151119236543">آهنگ قبلی رسانه</translation> <translation id="4971925105143343452">عمودی</translation>
diff --git a/ui/strings/translations/ui_strings_fi.xtb b/ui/strings/translations/ui_strings_fi.xtb index fa84375..fac69fe 100644 --- a/ui/strings/translations/ui_strings_fi.xtb +++ b/ui/strings/translations/ui_strings_fi.xtb
@@ -111,6 +111,7 @@ <translation id="4746179598275229723">Laajennus irrotettu</translation> <translation id="4788285488841504513">{MONTHS,plural, =1{1 kuukausi jäljellä}other{# kuukautta jäljellä}}</translation> <translation id="4888938634149558681">Soita</translation> +<translation id="4937657825850660613">Puolikas</translation> <translation id="4968171027979920686">{SECONDS,plural, =1{1 sekunti}other{# sekuntia}}</translation> <translation id="4971687151119236543">Media: edellinen kappale</translation> <translation id="4971925105143343452">Osittainen</translation>
diff --git a/ui/strings/translations/ui_strings_fil.xtb b/ui/strings/translations/ui_strings_fil.xtb index 77a869ed..da7916c 100644 --- a/ui/strings/translations/ui_strings_fil.xtb +++ b/ui/strings/translations/ui_strings_fil.xtb
@@ -111,6 +111,7 @@ <translation id="4746179598275229723">Na-unpin ang extension</translation> <translation id="4788285488841504513">{MONTHS,plural, =1{1 buwan ang natitira}one{# buwan ang natitira}other{# na buwan ang natitira}}</translation> <translation id="4888938634149558681">Tumawag</translation> +<translation id="4937657825850660613">Kalahati</translation> <translation id="4968171027979920686">{SECONDS,plural, =1{1 segundo}one{# segundo}other{# na segundo}}</translation> <translation id="4971687151119236543">Nakaraang Track ng Media</translation> <translation id="4971925105143343452">Hindi Buo</translation>
diff --git a/ui/strings/translations/ui_strings_gl.xtb b/ui/strings/translations/ui_strings_gl.xtb index 7bee820..6d0f5098 100644 --- a/ui/strings/translations/ui_strings_gl.xtb +++ b/ui/strings/translations/ui_strings_gl.xtb
@@ -103,6 +103,7 @@ <translation id="4289300219472526559">Comeza a falar</translation> <translation id="4289540628985791613">Visión xeral</translation> <translation id="4306392492252714209">Quitar do portapapeis.</translation> +<translation id="4311195029067684288">Completa</translation> <translation id="4491109536499578614">Imaxe</translation> <translation id="4565377596337484307">Ocultar contrasinal</translation> <translation id="4588090240171750605">Desprazar cara á dereita</translation> @@ -110,8 +111,10 @@ <translation id="4746179598275229723">Deixouse de fixar a extensión</translation> <translation id="4788285488841504513">{MONTHS,plural, =1{Queda 1 mes}other{Quedan # meses}}</translation> <translation id="4888938634149558681">Chamar</translation> +<translation id="4937657825850660613">Metade</translation> <translation id="4968171027979920686">{SECONDS,plural, =1{Un segundo}other{# segundos}}</translation> <translation id="4971687151119236543">Pista anterior multimedia</translation> +<translation id="4971925105143343452">Parcial</translation> <translation id="5046499563572181734">Toca aquí</translation> <translation id="5076340679995252485">&Pegar</translation> <translation id="5123162024343028706">Fixar enriba</translation>
diff --git a/ui/strings/translations/ui_strings_gu.xtb b/ui/strings/translations/ui_strings_gu.xtb index 1fa4a93..49376818 100644 --- a/ui/strings/translations/ui_strings_gu.xtb +++ b/ui/strings/translations/ui_strings_gu.xtb
@@ -111,6 +111,7 @@ <translation id="4746179598275229723">એક્સ્ટેન્શન અનપિન કર્યું</translation> <translation id="4788285488841504513">{MONTHS,plural, =1{1 મહિનો બાકી}one{# મહિનો બાકી}other{# મહિના બાકી}}</translation> <translation id="4888938634149558681">કૉલ કરો</translation> +<translation id="4937657825850660613">અડધી</translation> <translation id="4968171027979920686">{SECONDS,plural, =1{1 સેકન્ડ}one{# સેકન્ડ}other{# સેકન્ડ}}</translation> <translation id="4971687151119236543">મીડિયા પાછલું ગીત</translation> <translation id="4971925105143343452">આંશિક</translation>
diff --git a/ui/strings/translations/ui_strings_hi.xtb b/ui/strings/translations/ui_strings_hi.xtb index e1bf7c4..4c3440b3 100644 --- a/ui/strings/translations/ui_strings_hi.xtb +++ b/ui/strings/translations/ui_strings_hi.xtb
@@ -111,6 +111,7 @@ <translation id="4746179598275229723">एक्सटेंशन अनपिन किया गया</translation> <translation id="4788285488841504513">{MONTHS,plural, =1{1 माह शेष}one{# माह शेष}other{# माह शेष}}</translation> <translation id="4888938634149558681">कॉल करें</translation> +<translation id="4937657825850660613">स्क्रीन को आधे हिस्सों में बाटें</translation> <translation id="4968171027979920686">{SECONDS,plural, =1{1 सेकंड}one{# सेकंड}other{# सेकंड}}</translation> <translation id="4971687151119236543">मीडिया पिछला ट्रैक</translation> <translation id="4971925105143343452">आंशिक</translation>
diff --git a/ui/strings/translations/ui_strings_hr.xtb b/ui/strings/translations/ui_strings_hr.xtb index f4d0a50..75ed0e5d 100644 --- a/ui/strings/translations/ui_strings_hr.xtb +++ b/ui/strings/translations/ui_strings_hr.xtb
@@ -111,6 +111,7 @@ <translation id="4746179598275229723">Proširenje je otkvačeno</translation> <translation id="4788285488841504513">{MONTHS,plural, =1{Još mjesec dana}one{Još # mjesec}few{Još # mjeseca}other{Još # mjeseci}}</translation> <translation id="4888938634149558681">Uputi poziv</translation> +<translation id="4937657825850660613">Pola</translation> <translation id="4968171027979920686">{SECONDS,plural, =1{1 sekunda}one{# sekunda}few{# sekunde}other{# sekundi}}</translation> <translation id="4971687151119236543">Prethodni zapis Medija</translation> <translation id="4971925105143343452">Djelomičnо</translation>
diff --git a/ui/strings/translations/ui_strings_hy.xtb b/ui/strings/translations/ui_strings_hy.xtb index 93d31af..21a8d2ae 100644 --- a/ui/strings/translations/ui_strings_hy.xtb +++ b/ui/strings/translations/ui_strings_hy.xtb
@@ -103,6 +103,7 @@ <translation id="4289300219472526559">Start Speaking</translation> <translation id="4289540628985791613">Համատեսք</translation> <translation id="4306392492252714209">Հեռացնել սեղմատախտակից։</translation> +<translation id="4311195029067684288">Ամբողջական</translation> <translation id="4491109536499578614">Պատկեր</translation> <translation id="4565377596337484307">Թաքցնել գաղտնաբառը</translation> <translation id="4588090240171750605">Ոլորել դեպի աջ</translation> @@ -110,8 +111,10 @@ <translation id="4746179598275229723">Ընդլայնումն ապամրացվել է</translation> <translation id="4788285488841504513">{MONTHS,plural, =1{Մնացել է 1 ամիս}one{Մնացել է # ամիս}other{Մնացել է # ամիս}}</translation> <translation id="4888938634149558681">Զանգել</translation> +<translation id="4937657825850660613">Կիսված</translation> <translation id="4968171027979920686">{SECONDS,plural, =1{1 վայրկյան}one{# վայրկյան}other{# վայրկյան}}</translation> <translation id="4971687151119236543">Նախորդ կատարումը</translation> +<translation id="4971925105143343452">Մասնակի</translation> <translation id="5046499563572181734">Հպեք այստեղ</translation> <translation id="5076340679995252485">&Տեղադրել</translation> <translation id="5123162024343028706">Ամրացնել վերևում</translation>
diff --git a/ui/strings/translations/ui_strings_id.xtb b/ui/strings/translations/ui_strings_id.xtb index c502bacc..5b28771 100644 --- a/ui/strings/translations/ui_strings_id.xtb +++ b/ui/strings/translations/ui_strings_id.xtb
@@ -111,6 +111,7 @@ <translation id="4746179598275229723">Ekstensi dilepaskan</translation> <translation id="4788285488841504513">{MONTHS,plural, =1{1 bulan lagi}other{# bulan lagi}}</translation> <translation id="4888938634149558681">Telepon</translation> +<translation id="4937657825850660613">Setengah</translation> <translation id="4968171027979920686">{SECONDS,plural, =1{1 detik}other{# detik}}</translation> <translation id="4971687151119236543">Lacak Media Sebelumnya</translation> <translation id="4971925105143343452">Sebagian</translation>
diff --git a/ui/strings/translations/ui_strings_it.xtb b/ui/strings/translations/ui_strings_it.xtb index 00e1790..3dcc131 100644 --- a/ui/strings/translations/ui_strings_it.xtb +++ b/ui/strings/translations/ui_strings_it.xtb
@@ -111,6 +111,7 @@ <translation id="4746179598275229723">Estensione sbloccata</translation> <translation id="4788285488841504513">{MONTHS,plural, =1{1 mese rimasto}other{# mesi rimasti}}</translation> <translation id="4888938634149558681">Chiama</translation> +<translation id="4937657825850660613">Metà</translation> <translation id="4968171027979920686">{SECONDS,plural, =1{1 secondo}other{# secondi}}</translation> <translation id="4971687151119236543">Traccia precedente contenuti multimediali</translation> <translation id="4971925105143343452">Parziale</translation>
diff --git a/ui/strings/translations/ui_strings_ja.xtb b/ui/strings/translations/ui_strings_ja.xtb index 6a029e0..5984fc8 100644 --- a/ui/strings/translations/ui_strings_ja.xtb +++ b/ui/strings/translations/ui_strings_ja.xtb
@@ -111,6 +111,7 @@ <translation id="4746179598275229723">拡張機能の固定を解除しました</translation> <translation id="4788285488841504513">{MONTHS,plural, =1{残り 1 か月}other{残り # か月}}</translation> <translation id="4888938634149558681">電話をかける</translation> +<translation id="4937657825850660613">半分</translation> <translation id="4968171027979920686">{SECONDS,plural, =1{1 秒}other{# 秒}}</translation> <translation id="4971687151119236543">メディアの前のトラック</translation> <translation id="4971925105143343452">一部</translation>
diff --git a/ui/strings/translations/ui_strings_kk.xtb b/ui/strings/translations/ui_strings_kk.xtb index c5d8255..17fe490 100644 --- a/ui/strings/translations/ui_strings_kk.xtb +++ b/ui/strings/translations/ui_strings_kk.xtb
@@ -103,6 +103,7 @@ <translation id="4289300219472526559">Сөйлеуді бастау</translation> <translation id="4289540628985791613">Шолу</translation> <translation id="4306392492252714209">Буферден өшіру.</translation> +<translation id="4311195029067684288">Толық</translation> <translation id="4491109536499578614">Кескін</translation> <translation id="4565377596337484307">Құпия сөзді жасыру</translation> <translation id="4588090240171750605">Оңға айналдыру</translation> @@ -110,8 +111,10 @@ <translation id="4746179598275229723">Кеңейтім босатылды.</translation> <translation id="4788285488841504513">{MONTHS,plural, =1{1 ай қалды}other{# ай қалды}}</translation> <translation id="4888938634149558681">Қоңырау шалу</translation> +<translation id="4937657825850660613">Жартылай</translation> <translation id="4968171027979920686">{SECONDS,plural, =1{1 секунд}other{# секунд}}</translation> <translation id="4971687151119236543">Алдыңғы медиатрек</translation> +<translation id="4971925105143343452">Ішінара</translation> <translation id="5046499563572181734">Осы жерді түртіңіз</translation> <translation id="5076340679995252485">&Қою</translation> <translation id="5123162024343028706">Жоғарыға бекіту</translation>
diff --git a/ui/strings/translations/ui_strings_ko.xtb b/ui/strings/translations/ui_strings_ko.xtb index 17d1175e..4120cb37 100644 --- a/ui/strings/translations/ui_strings_ko.xtb +++ b/ui/strings/translations/ui_strings_ko.xtb
@@ -111,6 +111,7 @@ <translation id="4746179598275229723">확장 프로그램 고정 해제됨</translation> <translation id="4788285488841504513">{MONTHS,plural, =1{1개월 남음}other{#개월 남음}}</translation> <translation id="4888938634149558681">전화 걸기</translation> +<translation id="4937657825850660613">절반 분할</translation> <translation id="4968171027979920686">{SECONDS,plural, =1{1초}other{#초}}</translation> <translation id="4971687151119236543">미디어 이전 트랙</translation> <translation id="4971925105143343452">부분화면</translation>
diff --git a/ui/strings/translations/ui_strings_ky.xtb b/ui/strings/translations/ui_strings_ky.xtb index 83ffa873..f8fdbbd5 100644 --- a/ui/strings/translations/ui_strings_ky.xtb +++ b/ui/strings/translations/ui_strings_ky.xtb
@@ -103,6 +103,7 @@ <translation id="4289300219472526559">Сүйлөп баштаңыз</translation> <translation id="4289540628985791613">Сереп салуу</translation> <translation id="4306392492252714209">Алмашуу буферинен өчүрүү.</translation> +<translation id="4311195029067684288">Толук</translation> <translation id="4491109536499578614">Сүрөт</translation> <translation id="4565377596337484307">Сырсөздү жашыруу</translation> <translation id="4588090240171750605">Оңго сыдырып кароо</translation> @@ -110,8 +111,10 @@ <translation id="4746179598275229723">Кеңейтүү бошотулду</translation> <translation id="4788285488841504513">{MONTHS,plural, =1{1 ай калды}other{# ай калды}}</translation> <translation id="4888938634149558681">Чалуу</translation> +<translation id="4937657825850660613">Жарымы</translation> <translation id="4968171027979920686">{SECONDS,plural, =1{1 секунд}other{# секунд}}</translation> <translation id="4971687151119236543">Медиа мурунку трэк</translation> +<translation id="4971925105143343452">Жарым-жартылай</translation> <translation id="5046499563572181734">Бул жерди таптаңыз</translation> <translation id="5076340679995252485">&Чаптоо</translation> <translation id="5123162024343028706">Үстүнө кадап коюу</translation>
diff --git a/ui/strings/translations/ui_strings_mr.xtb b/ui/strings/translations/ui_strings_mr.xtb index be72f20..a7db1d4b 100644 --- a/ui/strings/translations/ui_strings_mr.xtb +++ b/ui/strings/translations/ui_strings_mr.xtb
@@ -111,6 +111,7 @@ <translation id="4746179598275229723">एक्स्टेंशन अनपिन केले</translation> <translation id="4788285488841504513">{MONTHS,plural, =1{1 महिना राहिला}other{# महिने राहिले}}</translation> <translation id="4888938634149558681">कॉल करा</translation> +<translation id="4937657825850660613">अर्धा</translation> <translation id="4968171027979920686">{SECONDS,plural, =1{1 सेकंद}other{# सेकंद}}</translation> <translation id="4971687151119236543">मीडिया मागील ट्रॅक</translation> <translation id="4971925105143343452">अंशिक</translation>
diff --git a/ui/strings/translations/ui_strings_no.xtb b/ui/strings/translations/ui_strings_no.xtb index ba31865..552e3e65 100644 --- a/ui/strings/translations/ui_strings_no.xtb +++ b/ui/strings/translations/ui_strings_no.xtb
@@ -111,6 +111,7 @@ <translation id="4746179598275229723">Utvidelsen er løsnet</translation> <translation id="4788285488841504513">{MONTHS,plural, =1{1 måned igjen}other{# måneder igjen}}</translation> <translation id="4888938634149558681">Ring</translation> +<translation id="4937657825850660613">Halv</translation> <translation id="4968171027979920686">{SECONDS,plural, =1{1 sekund}other{# sekunder}}</translation> <translation id="4971687151119236543">Media – forrige spor</translation> <translation id="4971925105143343452">Delvis</translation>
diff --git a/ui/strings/translations/ui_strings_or.xtb b/ui/strings/translations/ui_strings_or.xtb index 26383860..404c16e1 100644 --- a/ui/strings/translations/ui_strings_or.xtb +++ b/ui/strings/translations/ui_strings_or.xtb
@@ -103,6 +103,7 @@ <translation id="4289300219472526559">କହିବା ଆରମ୍ଭ କରନ୍ତୁ</translation> <translation id="4289540628985791613">ଅବଲୋକନ</translation> <translation id="4306392492252714209">କ୍ଲିପବୋର୍ଡରୁ କାଢ଼ି ଦିଅନ୍ତୁ।</translation> +<translation id="4311195029067684288">ସମ୍ପୂର୍ଣ୍ଣ</translation> <translation id="4491109536499578614">ଛବି</translation> <translation id="4565377596337484307">ପାସୱାର୍ଡ୍ ଲୁଚାନ୍ତୁ</translation> <translation id="4588090240171750605">ଦକ୍ଷିଣକୁ ସ୍କ୍ରୋଲ୍ କରନ୍ତୁ</translation> @@ -110,8 +111,10 @@ <translation id="4746179598275229723">ଏକ୍ସଟେନସନକୁ ଅନପିନ କରାଯାଇଛି</translation> <translation id="4788285488841504513">{MONTHS,plural, =1{1 ମାସ ବାକି ଅଛି}other{# ମାସ ବାକି ଅଛି}}</translation> <translation id="4888938634149558681">କଲ୍ କରନ୍ତୁ</translation> +<translation id="4937657825850660613">ଅଧା</translation> <translation id="4968171027979920686">{SECONDS,plural, =1{1 ସେକେଣ୍ଡ}other{# ସେକେଣ୍ଡ}}</translation> <translation id="4971687151119236543">ମିଡିଆର ପୂର୍ବବର୍ତ୍ତୀ ଟ୍ରାକ୍</translation> +<translation id="4971925105143343452">ଆଂଶିକ</translation> <translation id="5046499563572181734">ଏଠାରେ ଟାପ୍ କରନ୍ତୁ</translation> <translation id="5076340679995252485">&ଲେପନ</translation> <translation id="5123162024343028706">ଉପରେ ଫ୍ଲୋଟ୍ କରନ୍ତୁ</translation>
diff --git a/ui/strings/translations/ui_strings_pt-PT.xtb b/ui/strings/translations/ui_strings_pt-PT.xtb index b8e77ac..a07f5c5 100644 --- a/ui/strings/translations/ui_strings_pt-PT.xtb +++ b/ui/strings/translations/ui_strings_pt-PT.xtb
@@ -111,6 +111,7 @@ <translation id="4746179598275229723">Extensão desafixada</translation> <translation id="4788285488841504513">{MONTHS,plural, =1{Falta 1 mês}other{Faltam # meses}}</translation> <translation id="4888938634149558681">Efetuar chamada</translation> +<translation id="4937657825850660613">Metade</translation> <translation id="4968171027979920686">{SECONDS,plural, =1{1 segundo}other{# segundos}}</translation> <translation id="4971687151119236543">Faixa anterior de multimédia</translation> <translation id="4971925105143343452">Parcial</translation>
diff --git a/ui/strings/translations/ui_strings_sw.xtb b/ui/strings/translations/ui_strings_sw.xtb index 81b9c3c..a4b1fe4e 100644 --- a/ui/strings/translations/ui_strings_sw.xtb +++ b/ui/strings/translations/ui_strings_sw.xtb
@@ -111,6 +111,7 @@ <translation id="4746179598275229723">Kiendelezi kimebanduliwa</translation> <translation id="4788285488841504513">{MONTHS,plural, =1{Umesalia mwezi 1}other{Imesalia miezi #}}</translation> <translation id="4888938634149558681">Piga simu</translation> +<translation id="4937657825850660613">Nusu</translation> <translation id="4968171027979920686">{SECONDS,plural, =1{Sekunde 1}other{Sekunde #}}</translation> <translation id="4971687151119236543">Wimbo wa Awali wa Media</translation> <translation id="4971925105143343452">Kiasi</translation>
diff --git a/ui/strings/translations/ui_strings_te.xtb b/ui/strings/translations/ui_strings_te.xtb index 4f51287..4aabebe 100644 --- a/ui/strings/translations/ui_strings_te.xtb +++ b/ui/strings/translations/ui_strings_te.xtb
@@ -102,7 +102,7 @@ <translation id="4266252015790371705">{MONTHS,plural, =1{1 నెల క్రితం}other{# నెలల క్రితం}}</translation> <translation id="4289300219472526559">మాట్లాడటాన్ని ప్రారంభించు</translation> <translation id="4289540628985791613">స్థూలదృష్టి</translation> -<translation id="4306392492252714209">క్లిప్బోర్డ్ నుండి తీసివేయి.</translation> +<translation id="4306392492252714209">క్లిప్బోర్డ్ నుండి తీసివేయండి.</translation> <translation id="4311195029067684288">సంపూర్ణం</translation> <translation id="4491109536499578614">చిత్రం</translation> <translation id="4565377596337484307">పాస్వర్డ్ను దాచిపెట్టు</translation> @@ -111,6 +111,7 @@ <translation id="4746179598275229723">ఎక్స్టెన్షన్ అన్పిన్ చేయబడింది</translation> <translation id="4788285488841504513">{MONTHS,plural, =1{1 నెల మిగిలి ఉంది}other{# నెలలు మిగిలి ఉన్నాయి}}</translation> <translation id="4888938634149558681">కాల్ చేయి</translation> +<translation id="4937657825850660613">సగం</translation> <translation id="4968171027979920686">{SECONDS,plural, =1{1 సెకను}other{# సెకన్లు}}</translation> <translation id="4971687151119236543">మీడియా మునుపటి ట్రాక్</translation> <translation id="4971925105143343452">పాక్షికం</translation> @@ -152,7 +153,7 @@ <translation id="6483402905448010557">{SECONDS,plural, =1{1 సెకను క్రితం}other{# సెకన్ల క్రితం}}</translation> <translation id="6503257047630241175">RTF కంటెంట్</translation> <translation id="6539092367496845964">ఏదో తప్పు జరిగింది. తర్వాత మళ్లీ ప్రయత్నించండి.</translation> -<translation id="654149438358937226">అన్ని నోటిఫికేషన్లను బ్లాక్ చేయి</translation> +<translation id="654149438358937226">అన్ని నోటిఫికేషన్లను బ్లాక్ చేయండి</translation> <translation id="6612467943526193239">క్రమాంకనం నుండి నిష్క్రమించేందుకు, Esc నొక్కండి.</translation> <translation id="6620110761915583480">ఫైల్ను సేవ్ చేయి</translation> <translation id="6699343763173986273">మీడియా తరువాత ట్రాక్</translation>
diff --git a/ui/strings/translations/ui_strings_tr.xtb b/ui/strings/translations/ui_strings_tr.xtb index 8c241f2..01d60b4f 100644 --- a/ui/strings/translations/ui_strings_tr.xtb +++ b/ui/strings/translations/ui_strings_tr.xtb
@@ -111,6 +111,7 @@ <translation id="4746179598275229723">Uzantının sabitlemesi kaldırıldı</translation> <translation id="4788285488841504513">{MONTHS,plural, =1{1 ay kaldı}other{# ay kaldı}}</translation> <translation id="4888938634149558681">Telefon et</translation> +<translation id="4937657825850660613">Yarı</translation> <translation id="4968171027979920686">{SECONDS,plural, =1{1 saniye}other{# saniye}}</translation> <translation id="4971687151119236543">Medya Önceki Parça</translation> <translation id="4971925105143343452">Kısmi</translation>
diff --git a/ui/strings/translations/ui_strings_uk.xtb b/ui/strings/translations/ui_strings_uk.xtb index e7002554..689e6c84 100644 --- a/ui/strings/translations/ui_strings_uk.xtb +++ b/ui/strings/translations/ui_strings_uk.xtb
@@ -111,6 +111,7 @@ <translation id="4746179598275229723">Розширення відкріплено</translation> <translation id="4788285488841504513">{MONTHS,plural, =1{Залишився 1 місяць}one{Залишився # місяць}few{Залишилося # місяці}many{Залишилося # місяців}other{Залишилося # місяця}}</translation> <translation id="4888938634149558681">Зателефонувати</translation> +<translation id="4937657825850660613">Половина</translation> <translation id="4968171027979920686">{SECONDS,plural, =1{1 секунда}one{# секунда}few{# секунди}many{# секунд}other{# секунди}}</translation> <translation id="4971687151119236543">Попередня композиція</translation> <translation id="4971925105143343452">Частково</translation>
diff --git a/ui/strings/translations/ui_strings_zu.xtb b/ui/strings/translations/ui_strings_zu.xtb index a19268b..ac60699b 100644 --- a/ui/strings/translations/ui_strings_zu.xtb +++ b/ui/strings/translations/ui_strings_zu.xtb
@@ -103,6 +103,7 @@ <translation id="4289300219472526559">Qala ukukhuluma</translation> <translation id="4289540628985791613">Ukubuka konke</translation> <translation id="4306392492252714209">Yisuse kwibhodi yokunamathisela.</translation> +<translation id="4311195029067684288">Igcwele</translation> <translation id="4491109536499578614">Isithombe</translation> <translation id="4565377596337484307">Fihla iphasiwedi</translation> <translation id="4588090240171750605">Skrolela ngakwesokudla</translation> @@ -110,8 +111,10 @@ <translation id="4746179598275229723">Isandiso sisuswe ukuphina</translation> <translation id="4788285488841504513">{MONTHS,plural, =1{1 inyanga esele}one{# izinyanga ezisele}other{# izinyanga ezisele}}</translation> <translation id="4888938634149558681">Yenza ikholi</translation> +<translation id="4937657825850660613">Uhafu</translation> <translation id="4968171027979920686">{SECONDS,plural, =1{1 isekhondi}one{# amasekhondi}other{# amasekhondi}}</translation> <translation id="4971687151119236543">Ithrekhi yemidiya yangaphambili</translation> +<translation id="4971925105143343452">Ngokwengxenye</translation> <translation id="5046499563572181734">ThepTap here</translation> <translation id="5076340679995252485">Namathisela</translation> <translation id="5123162024343028706">Ntanta phezulu</translation>
diff --git a/ui/views/bubble/bubble_border.cc b/ui/views/bubble/bubble_border.cc index 6d48184a..1bbb007 100644 --- a/ui/views/bubble/bubble_border.cc +++ b/ui/views/bubble/bubble_border.cc
@@ -667,7 +667,7 @@ gfx::ScopedCanvas scoped(canvas); canvas->sk_canvas()->clipRRect(GetClientRect(view), SkClipOp::kDifference, true /*doAntiAlias*/); - canvas->sk_canvas()->drawColor(SK_ColorTRANSPARENT, SkBlendMode::kSrc); + canvas->sk_canvas()->drawColor(SkColors::kTransparent, SkBlendMode::kSrc); } void BubbleBorder::PaintNoShadowLegacy(const View& view, gfx::Canvas* canvas) {
diff --git a/ui/views/controls/animated_image_view.cc b/ui/views/controls/animated_image_view.cc index 7e4683a..ba605157 100644 --- a/ui/views/controls/animated_image_view.cc +++ b/ui/views/controls/animated_image_view.cc
@@ -49,25 +49,24 @@ SchedulePaint(); } -void AnimatedImageView::Play(lottie::Animation::Style style) { - DCHECK(animated_image_); - Play(base::TimeDelta(), animated_image_->GetAnimationDuration(), style); -} - -void AnimatedImageView::Play(base::TimeDelta start_offset, - base::TimeDelta duration, - lottie::Animation::Style style) { +void AnimatedImageView::Play( + absl::optional<lottie::Animation::PlaybackConfig> playback_config) { DCHECK(animated_image_); if (state_ == State::kPlaying) return; state_ = State::kPlaying; - set_check_active_duration(style != lottie::Animation::Style::kLoop); + if (!playback_config) { + playback_config = + lottie::Animation::PlaybackConfig::CreateDefault(*animated_image_); + } + set_check_active_duration(playback_config->style != + lottie::Animation::Style::kLoop); SetCompositorFromWidget(); - animated_image_->StartSubsection(start_offset, duration, style); + animated_image_->Start(std::move(playback_config)); } void AnimatedImageView::Stop() {
diff --git a/ui/views/controls/animated_image_view.h b/ui/views/controls/animated_image_view.h index 04d6dea..4c880b7 100644 --- a/ui/views/controls/animated_image_view.h +++ b/ui/views/controls/animated_image_view.h
@@ -10,6 +10,7 @@ #include "base/memory/raw_ptr.h" #include "base/time/time.h" +#include "third_party/abseil-cpp/absl/types/optional.h" #include "ui/base/metadata/metadata_header_macros.h" #include "ui/compositor/compositor_animation_observer.h" #include "ui/gfx/geometry/vector2d.h" @@ -22,10 +23,6 @@ class Canvas; } -namespace lottie { -class Animation; -} - namespace ui { class Compositor; } @@ -61,13 +58,12 @@ // will result in stopping the current animation. void SetAnimatedImage(std::unique_ptr<lottie::Animation> animated_image); - // Plays the animation in loop and must only be called when this view has + // Plays the animation and must only be called when this view has // access to a widget. - void Play(lottie::Animation::Style style = lottie::Animation::Style::kLoop); - // Version of the above that mirrors lottie::Animation::StartSubsection(). - void Play(base::TimeDelta start_offset, - base::TimeDelta duration, - lottie::Animation::Style style = lottie::Animation::Style::kLoop); + // + // If a null |playback_config| is provided, the default one is used. + void Play(absl::optional<lottie::Animation::PlaybackConfig> playback_config = + absl::nullopt); // Stops any animation and resets it to the start frame. void Stop();
diff --git a/weblayer/browser/java/org/chromium/weblayer_private/ArCoreVersionUtils.java b/weblayer/browser/java/org/chromium/weblayer_private/ArCoreVersionUtils.java index 365bcbf..bdad3ff 100644 --- a/weblayer/browser/java/org/chromium/weblayer_private/ArCoreVersionUtils.java +++ b/weblayer/browser/java/org/chromium/weblayer_private/ArCoreVersionUtils.java
@@ -15,9 +15,9 @@ @JNINamespace("weblayer") class ArCoreVersionUtils { - // Corresponds to V1.22. Must be updated if the arcore version in + // Corresponds to V1.32. Must be updated if the arcore version in // //third_party/arcore-android-sdk-client is rolled. - private static final int MIN_APK_VERSION = 202940000; + private static final int MIN_APK_VERSION = 221020000; private static final String AR_CORE_PACKAGE = "com.google.ar.core"; private static final String METADATA_KEY_MIN_APK_VERSION = "com.google.ar.core.min_apk_version";