summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAllan Sandfeld Jensen <allan.jensen@theqtcompany.com>2015-11-23 15:05:51 +0100
committerAllan Sandfeld Jensen <allan.jensen@theqtcompany.com>2015-11-23 15:31:48 +0000
commit9cb87fa7638e305ef35b04f54ba07ac4fa04adcb (patch)
tree2793d80883b7daab67258117755046d428f9978c
parent98ff39cb35ef2bd32bb1af9565628a4a4b0979b2 (diff)
downloadqtwebengine-chromium-9cb87fa7638e305ef35b04f54ba07ac4fa04adcb.tar.gz
BASELINE: Update Chromium to 47.0.2526.71
Also adds a few missing spellcheck sources. Change-Id: I300864710316ff3cd3ad456dd7a3d048b45f57d5 Reviewed-by: Michal Klocek <michal.klocek@theqtcompany.com> Reviewed-by: Michael Brüning <michael.bruning@theqtcompany.com>
-rw-r--r--chromium/AUTHORS1
-rw-r--r--chromium/DEPS14
-rw-r--r--chromium/base/mac/sdk_forward_declarations.h21
-rw-r--r--chromium/base/win/event_trace_controller_unittest.cc3
-rw-r--r--chromium/breakpad/src/client/windows/unittests/client_tests.gyp1
-rw-r--r--chromium/build/util/LASTCHANGE2
-rw-r--r--chromium/build/util/LASTCHANGE.blink2
-rw-r--r--chromium/cc/raster/one_copy_tile_task_worker_pool.cc4
-rw-r--r--chromium/cc/tiles/picture_layer_tiling.cc13
-rw-r--r--chromium/cc/tiles/picture_layer_tiling_unittest.cc25
-rw-r--r--chromium/chrome/VERSION2
-rw-r--r--chromium/chrome/app/resources/address_input_strings_hu.xtb2
-rw-r--r--chromium/chrome/app/resources/chromium_strings_fa.xtb2
-rw-r--r--chromium/chrome/app/resources/chromium_strings_no.xtb4
-rw-r--r--chromium/chrome/app/resources/generated_resources_am.xtb24
-rw-r--r--chromium/chrome/app/resources/generated_resources_ar.xtb24
-rw-r--r--chromium/chrome/app/resources/generated_resources_bg.xtb24
-rw-r--r--chromium/chrome/app/resources/generated_resources_bn.xtb24
-rw-r--r--chromium/chrome/app/resources/generated_resources_ca.xtb42
-rw-r--r--chromium/chrome/app/resources/generated_resources_cs.xtb30
-rw-r--r--chromium/chrome/app/resources/generated_resources_da.xtb38
-rw-r--r--chromium/chrome/app/resources/generated_resources_de.xtb24
-rw-r--r--chromium/chrome/app/resources/generated_resources_el.xtb23
-rw-r--r--chromium/chrome/app/resources/generated_resources_en-GB.xtb24
-rw-r--r--chromium/chrome/app/resources/generated_resources_es-419.xtb24
-rw-r--r--chromium/chrome/app/resources/generated_resources_es.xtb28
-rw-r--r--chromium/chrome/app/resources/generated_resources_et.xtb24
-rw-r--r--chromium/chrome/app/resources/generated_resources_fa.xtb74
-rw-r--r--chromium/chrome/app/resources/generated_resources_fi.xtb24
-rw-r--r--chromium/chrome/app/resources/generated_resources_fil.xtb24
-rw-r--r--chromium/chrome/app/resources/generated_resources_fr.xtb24
-rw-r--r--chromium/chrome/app/resources/generated_resources_gu.xtb99
-rw-r--r--chromium/chrome/app/resources/generated_resources_hi.xtb24
-rw-r--r--chromium/chrome/app/resources/generated_resources_hr.xtb24
-rw-r--r--chromium/chrome/app/resources/generated_resources_hu.xtb42
-rw-r--r--chromium/chrome/app/resources/generated_resources_id.xtb24
-rw-r--r--chromium/chrome/app/resources/generated_resources_it.xtb24
-rw-r--r--chromium/chrome/app/resources/generated_resources_iw.xtb26
-rw-r--r--chromium/chrome/app/resources/generated_resources_ja.xtb24
-rw-r--r--chromium/chrome/app/resources/generated_resources_kn.xtb24
-rw-r--r--chromium/chrome/app/resources/generated_resources_ko.xtb24
-rw-r--r--chromium/chrome/app/resources/generated_resources_lt.xtb30
-rw-r--r--chromium/chrome/app/resources/generated_resources_lv.xtb24
-rw-r--r--chromium/chrome/app/resources/generated_resources_ml.xtb24
-rw-r--r--chromium/chrome/app/resources/generated_resources_mr.xtb24
-rw-r--r--chromium/chrome/app/resources/generated_resources_ms.xtb24
-rw-r--r--chromium/chrome/app/resources/generated_resources_nl.xtb26
-rw-r--r--chromium/chrome/app/resources/generated_resources_no.xtb42
-rw-r--r--chromium/chrome/app/resources/generated_resources_pl.xtb28
-rw-r--r--chromium/chrome/app/resources/generated_resources_pt-BR.xtb24
-rw-r--r--chromium/chrome/app/resources/generated_resources_pt-PT.xtb24
-rw-r--r--chromium/chrome/app/resources/generated_resources_ro.xtb24
-rw-r--r--chromium/chrome/app/resources/generated_resources_ru.xtb26
-rw-r--r--chromium/chrome/app/resources/generated_resources_sk.xtb24
-rw-r--r--chromium/chrome/app/resources/generated_resources_sl.xtb24
-rw-r--r--chromium/chrome/app/resources/generated_resources_sr.xtb24
-rw-r--r--chromium/chrome/app/resources/generated_resources_sv.xtb24
-rw-r--r--chromium/chrome/app/resources/generated_resources_sw.xtb28
-rw-r--r--chromium/chrome/app/resources/generated_resources_ta.xtb24
-rw-r--r--chromium/chrome/app/resources/generated_resources_te.xtb24
-rw-r--r--chromium/chrome/app/resources/generated_resources_th.xtb24
-rw-r--r--chromium/chrome/app/resources/generated_resources_tr.xtb24
-rw-r--r--chromium/chrome/app/resources/generated_resources_uk.xtb24
-rw-r--r--chromium/chrome/app/resources/generated_resources_vi.xtb24
-rw-r--r--chromium/chrome/app/resources/generated_resources_zh-CN.xtb26
-rw-r--r--chromium/chrome/app/resources/generated_resources_zh-TW.xtb24
-rw-r--r--chromium/chrome/app/resources/google_chrome_strings_ca.xtb2
-rw-r--r--chromium/chrome/app/resources/google_chrome_strings_cs.xtb2
-rw-r--r--chromium/chrome/app/resources/google_chrome_strings_en-GB.xtb2
-rw-r--r--chromium/chrome/app/resources/google_chrome_strings_fa.xtb2
-rw-r--r--chromium/chrome/app/resources/google_chrome_strings_no.xtb4
-rw-r--r--chromium/chrome/app/theme/chromium/win/README4
-rw-r--r--chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_am.xtb1
-rw-r--r--chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ar.xtb1
-rw-r--r--chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_bg.xtb1
-rw-r--r--chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_bn.xtb1
-rw-r--r--chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ca.xtb1
-rw-r--r--chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_cs.xtb1
-rw-r--r--chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_da.xtb1
-rw-r--r--chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_de.xtb1
-rw-r--r--chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_el.xtb1
-rw-r--r--chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_en-GB.xtb1
-rw-r--r--chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_es-419.xtb1
-rw-r--r--chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_es.xtb1
-rw-r--r--chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_et.xtb1
-rw-r--r--chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_fa.xtb5
-rw-r--r--chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_fi.xtb1
-rw-r--r--chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_fil.xtb1
-rw-r--r--chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_fr.xtb1
-rw-r--r--chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_gu.xtb1
-rw-r--r--chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_hi.xtb1
-rw-r--r--chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_hr.xtb1
-rw-r--r--chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_hu.xtb1
-rw-r--r--chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_id.xtb1
-rw-r--r--chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_it.xtb1
-rw-r--r--chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_iw.xtb1
-rw-r--r--chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ja.xtb1
-rw-r--r--chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_kn.xtb1
-rw-r--r--chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ko.xtb1
-rw-r--r--chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_lt.xtb1
-rw-r--r--chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_lv.xtb1
-rw-r--r--chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ml.xtb1
-rw-r--r--chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_mr.xtb1
-rw-r--r--chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ms.xtb1
-rw-r--r--chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_nl.xtb1
-rw-r--r--chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_no.xtb1
-rw-r--r--chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_pl.xtb1
-rw-r--r--chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_pt-BR.xtb1
-rw-r--r--chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_pt-PT.xtb1
-rw-r--r--chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ro.xtb1
-rw-r--r--chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ru.xtb1
-rw-r--r--chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_sk.xtb1
-rw-r--r--chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_sl.xtb1
-rw-r--r--chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_sr.xtb1
-rw-r--r--chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_sv.xtb1
-rw-r--r--chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_sw.xtb1
-rw-r--r--chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ta.xtb1
-rw-r--r--chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_te.xtb1
-rw-r--r--chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_th.xtb1
-rw-r--r--chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_tr.xtb1
-rw-r--r--chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_uk.xtb1
-rw-r--r--chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_vi.xtb1
-rw-r--r--chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_zh-CN.xtb1
-rw-r--r--chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_zh-TW.xtb1
-rw-r--r--chromium/chrome/browser/resources/chromeos/user_images_grid.js14
-rw-r--r--chromium/chrome/browser/resources/plugin_metadata/plugins_linux.json6
-rw-r--r--chromium/chrome/browser/resources/plugin_metadata/plugins_mac.json6
-rw-r--r--chromium/chrome/browser/resources/plugin_metadata/plugins_win.json6
-rw-r--r--chromium/chrome/chrome_browser.gypi4
-rw-r--r--chromium/chrome/chrome_tests.gypi1
-rw-r--r--chromium/chrome/chrome_tests_unit.gypi2
-rw-r--r--chromium/chrome/common/chrome_switches.cc16
-rw-r--r--chromium/chrome/common/chrome_switches.h6
-rw-r--r--chromium/chrome/common/spellcheck_bdict_language.h17
-rw-r--r--chromium/chrome/common/spellcheck_common.cc209
-rw-r--r--chromium/chrome/common/spellcheck_common.h67
-rw-r--r--chromium/chrome/common/spellcheck_common_unittest.cc51
-rw-r--r--chromium/chrome/common/spellcheck_marker.h31
-rw-r--r--chromium/chrome/common/spellcheck_messages.h151
-rw-r--r--chromium/chrome/common/spellcheck_result.h43
-rw-r--r--chromium/chromecast/common/media/cma_param_traits.cc29
-rw-r--r--chromium/chromecast/media/audio/cast_audio_output_stream.cc2
-rw-r--r--chromium/chromecast/media/cma/base/decoder_config_adapter.cc17
-rw-r--r--chromium/chromecast/media/cma/ipc_streamer/audio_decoder_config_marshaller.cc18
-rw-r--r--chromium/chromecast/media/cma/ipc_streamer/video_decoder_config_marshaller.cc18
-rw-r--r--chromium/chromecast/media/cma/pipeline/audio_video_pipeline_impl_unittest.cc7
-rw-r--r--chromium/components/components_tests.gyp1
-rw-r--r--chromium/components/devtools_http_handler/devtools_http_handler.cc3
-rw-r--r--chromium/components/scheduler/base/task_queue_manager.cc19
-rw-r--r--chromium/components/scheduler/child/web_scheduler_impl.cc4
-rw-r--r--chromium/components/scheduler/child/web_task_runner_impl.cc15
-rw-r--r--chromium/components/scheduler/child/web_task_runner_impl.h7
-rw-r--r--chromium/components/scheduler/renderer/idle_time_estimator.cc73
-rw-r--r--chromium/components/scheduler/renderer/idle_time_estimator.h58
-rw-r--r--chromium/components/scheduler/renderer/idle_time_estimator_unittest.cc146
-rw-r--r--chromium/components/scheduler/renderer/renderer_scheduler_impl.cc55
-rw-r--r--chromium/components/scheduler/renderer/renderer_scheduler_impl.h14
-rw-r--r--chromium/components/scheduler/renderer/renderer_scheduler_impl_unittest.cc106
-rw-r--r--chromium/components/scheduler/scheduler.gypi2
-rw-r--r--chromium/components/strings/components_strings_am.xtb4
-rw-r--r--chromium/components/strings/components_strings_ar.xtb4
-rw-r--r--chromium/components/strings/components_strings_bg.xtb4
-rw-r--r--chromium/components/strings/components_strings_bn.xtb4
-rw-r--r--chromium/components/strings/components_strings_ca.xtb4
-rw-r--r--chromium/components/strings/components_strings_cs.xtb4
-rw-r--r--chromium/components/strings/components_strings_da.xtb4
-rw-r--r--chromium/components/strings/components_strings_de.xtb4
-rw-r--r--chromium/components/strings/components_strings_el.xtb4
-rw-r--r--chromium/components/strings/components_strings_en-GB.xtb4
-rw-r--r--chromium/components/strings/components_strings_es-419.xtb4
-rw-r--r--chromium/components/strings/components_strings_es.xtb4
-rw-r--r--chromium/components/strings/components_strings_et.xtb4
-rw-r--r--chromium/components/strings/components_strings_fa.xtb4
-rw-r--r--chromium/components/strings/components_strings_fi.xtb4
-rw-r--r--chromium/components/strings/components_strings_fil.xtb4
-rw-r--r--chromium/components/strings/components_strings_fr.xtb4
-rw-r--r--chromium/components/strings/components_strings_gu.xtb4
-rw-r--r--chromium/components/strings/components_strings_hi.xtb4
-rw-r--r--chromium/components/strings/components_strings_hr.xtb4
-rw-r--r--chromium/components/strings/components_strings_hu.xtb4
-rw-r--r--chromium/components/strings/components_strings_id.xtb4
-rw-r--r--chromium/components/strings/components_strings_it.xtb4
-rw-r--r--chromium/components/strings/components_strings_iw.xtb4
-rw-r--r--chromium/components/strings/components_strings_ja.xtb4
-rw-r--r--chromium/components/strings/components_strings_kn.xtb4
-rw-r--r--chromium/components/strings/components_strings_ko.xtb4
-rw-r--r--chromium/components/strings/components_strings_lt.xtb4
-rw-r--r--chromium/components/strings/components_strings_lv.xtb4
-rw-r--r--chromium/components/strings/components_strings_ml.xtb4
-rw-r--r--chromium/components/strings/components_strings_mr.xtb4
-rw-r--r--chromium/components/strings/components_strings_ms.xtb4
-rw-r--r--chromium/components/strings/components_strings_nl.xtb4
-rw-r--r--chromium/components/strings/components_strings_no.xtb6
-rw-r--r--chromium/components/strings/components_strings_pl.xtb4
-rw-r--r--chromium/components/strings/components_strings_pt-BR.xtb4
-rw-r--r--chromium/components/strings/components_strings_pt-PT.xtb4
-rw-r--r--chromium/components/strings/components_strings_ro.xtb4
-rw-r--r--chromium/components/strings/components_strings_ru.xtb6
-rw-r--r--chromium/components/strings/components_strings_sk.xtb4
-rw-r--r--chromium/components/strings/components_strings_sl.xtb4
-rw-r--r--chromium/components/strings/components_strings_sr.xtb4
-rw-r--r--chromium/components/strings/components_strings_sv.xtb4
-rw-r--r--chromium/components/strings/components_strings_sw.xtb6
-rw-r--r--chromium/components/strings/components_strings_ta.xtb4
-rw-r--r--chromium/components/strings/components_strings_te.xtb4
-rw-r--r--chromium/components/strings/components_strings_th.xtb4
-rw-r--r--chromium/components/strings/components_strings_tr.xtb4
-rw-r--r--chromium/components/strings/components_strings_uk.xtb4
-rw-r--r--chromium/components/strings/components_strings_vi.xtb4
-rw-r--r--chromium/components/strings/components_strings_zh-CN.xtb4
-rw-r--r--chromium/components/strings/components_strings_zh-TW.xtb4
-rw-r--r--chromium/content/app/strings/translations/content_strings_hu.xtb2
-rw-r--r--chromium/content/browser/accessibility/browser_accessibility_cocoa.mm8
-rw-r--r--chromium/content/browser/accessibility/browser_accessibility_manager.cc1
-rw-r--r--chromium/content/browser/accessibility/one_shot_accessibility_tree_search.cc69
-rw-r--r--chromium/content/browser/accessibility/one_shot_accessibility_tree_search.h8
-rw-r--r--chromium/content/browser/accessibility/one_shot_accessibility_tree_search_unittest.cc65
-rw-r--r--chromium/content/browser/cache_storage/cache_storage.cc185
-rw-r--r--chromium/content/browser/cache_storage/cache_storage.proto5
-rw-r--r--chromium/content/browser/cache_storage/cache_storage_cache.h2
-rw-r--r--chromium/content/browser/cache_storage/cache_storage_manager.h1
-rw-r--r--chromium/content/browser/cache_storage/cache_storage_manager_unittest.cc160
-rw-r--r--chromium/content/browser/compositor/browser_compositor_overlay_candidate_validator_mac.h1
-rw-r--r--chromium/content/browser/compositor/browser_compositor_overlay_candidate_validator_mac.mm10
-rw-r--r--chromium/content/browser/devtools/protocol/devtools_protocol_browsertest.cc12
-rw-r--r--chromium/content/browser/devtools/protocol/page_handler.cc3
-rw-r--r--chromium/content/browser/download/download_stats.cc106
-rw-r--r--chromium/content/browser/media/android/browser_demuxer_android.cc5
-rw-r--r--chromium/content/browser/media/encrypted_media_browsertest.cc2
-rw-r--r--chromium/content/browser/media/media_source_browsertest.cc2
-rw-r--r--chromium/content/browser/notifications/notification_event_dispatcher_impl.cc3
-rw-r--r--chromium/content/browser/renderer_host/media/audio_input_sync_writer.cc17
-rw-r--r--chromium/content/browser/renderer_host/media/audio_output_device_enumerator.h13
-rw-r--r--chromium/content/browser/renderer_host/media/media_stream_manager.cc13
-rw-r--r--chromium/content/browser/renderer_host/render_process_host_impl.cc2
-rw-r--r--chromium/content/browser/resource_loading_browsertest.cc33
-rw-r--r--chromium/content/browser/service_worker/service_worker_context_wrapper.cc64
-rw-r--r--chromium/content/browser/service_worker/service_worker_context_wrapper.h30
-rw-r--r--chromium/content/browser/service_worker/service_worker_version.cc14
-rw-r--r--chromium/content/browser/service_worker/service_worker_version.h2
-rw-r--r--chromium/content/browser/service_worker/service_worker_version_unittest.cc40
-rw-r--r--chromium/content/browser/web_contents/web_contents_impl.cc6
-rw-r--r--chromium/content/common/cc_messages.h1
-rw-r--r--chromium/content/common/content_constants_internal.cc2
-rw-r--r--chromium/content/common/gpu/gpu_command_buffer_stub.cc4
-rw-r--r--chromium/content/common/gpu/image_transport_surface_android.cc8
-rw-r--r--chromium/content/common/gpu/media/video_encode_accelerator_unittest.cc5
-rw-r--r--chromium/content/common/view_messages.h1
-rw-r--r--chromium/content/content_tests.gypi2
-rw-r--r--chromium/content/public/browser/web_contents.h2
-rw-r--r--chromium/content/public/common/content_switches.cc8
-rw-r--r--chromium/content/public/common/content_switches.h2
-rw-r--r--chromium/content/public/common/file_chooser_params.h6
-rw-r--r--chromium/content/renderer/media/android/audio_decoder_android.cc3
-rw-r--r--chromium/content/renderer/media/android/media_source_delegate.cc6
-rw-r--r--chromium/content/renderer/npapi/webplugin_impl.cc6
-rw-r--r--chromium/content/renderer/pepper/content_decryptor_delegate.cc16
-rw-r--r--chromium/content/renderer/pepper/pepper_file_chooser_host.cc1
-rw-r--r--chromium/content/renderer/pepper/pepper_webplugin_impl.cc10
-rw-r--r--chromium/content/renderer/pepper/video_decoder_shim.cc5
-rw-r--r--chromium/content/renderer/render_frame_impl.cc12
-rw-r--r--chromium/content/renderer/render_view_impl.cc20
-rw-r--r--chromium/extensions/extensions_tests.gyp3
-rw-r--r--chromium/gpu/config/gpu_driver_bug_list_json.cc16
-rw-r--r--chromium/gpu/config/gpu_driver_bug_workaround_type.h2
-rw-r--r--chromium/gpu/config/software_rendering_list_json.cc21
-rw-r--r--chromium/ios/web/ios_web.gyp6
-rw-r--r--chromium/ios/web/ios_web_unittests.gyp3
-rw-r--r--chromium/media/audio/audio_output_controller.cc17
-rw-r--r--chromium/media/audio/audio_output_controller.h14
-rw-r--r--chromium/media/audio/audio_output_dispatcher_impl.h5
-rw-r--r--chromium/media/audio/audio_output_resampler.cc21
-rw-r--r--chromium/media/base/BUILD.gn2
-rw-r--r--chromium/media/base/android/media_task_runner.cc13
-rw-r--r--chromium/media/base/audio_decoder_config.cc18
-rw-r--r--chromium/media/base/audio_decoder_config.h23
-rw-r--r--chromium/media/base/fake_demuxer_stream.cc6
-rw-r--r--chromium/media/base/media_switches.cc4
-rw-r--r--chromium/media/base/media_switches.h1
-rw-r--r--chromium/media/base/media_util.cc13
-rw-r--r--chromium/media/base/media_util.h21
-rw-r--r--chromium/media/base/test_helpers.cc5
-rw-r--r--chromium/media/base/video_decoder_config.cc30
-rw-r--r--chromium/media/base/video_decoder_config.h11
-rw-r--r--chromium/media/cast/sender/h264_vt_encoder_unittest.cc3
-rw-r--r--chromium/media/ffmpeg/ffmpeg_common.cc93
-rw-r--r--chromium/media/ffmpeg/ffmpeg_common.h17
-rw-r--r--chromium/media/ffmpeg/ffmpeg_common_unittest.cc102
-rw-r--r--chromium/media/filters/audio_decoder_selector_unittest.cc9
-rw-r--r--chromium/media/filters/audio_decoder_unittest.cc21
-rw-r--r--chromium/media/filters/chunk_demuxer_unittest.cc14
-rw-r--r--chromium/media/filters/decrypting_audio_decoder_unittest.cc19
-rw-r--r--chromium/media/filters/decrypting_demuxer_stream.cc2
-rw-r--r--chromium/media/filters/decrypting_demuxer_stream_unittest.cc35
-rw-r--r--chromium/media/filters/ffmpeg_demuxer.cc114
-rw-r--r--chromium/media/filters/ffmpeg_demuxer.h25
-rw-r--r--chromium/media/filters/ffmpeg_demuxer_unittest.cc6
-rw-r--r--chromium/media/filters/ffmpeg_glue.cc2
-rw-r--r--chromium/media/filters/ffmpeg_video_decoder_unittest.cc29
-rw-r--r--chromium/media/filters/frame_processor_unittest.cc12
-rw-r--r--chromium/media/filters/opus_audio_decoder.cc4
-rw-r--r--chromium/media/filters/source_buffer_stream_unittest.cc19
-rw-r--r--chromium/media/formats/mp2t/es_adapter_video_unittest.cc3
-rw-r--r--chromium/media/formats/mp2t/es_parser_adts.cc10
-rw-r--r--chromium/media/formats/mp2t/es_parser_h264.cc4
-rw-r--r--chromium/media/formats/mp2t/es_parser_mpeg1audio.cc4
-rw-r--r--chromium/media/formats/mp4/mp4_stream_parser.cc21
-rw-r--r--chromium/media/formats/mpeg/mpeg_audio_stream_parser_base.cc3
-rw-r--r--chromium/media/formats/webm/webm_audio_client.cc10
-rw-r--r--chromium/media/formats/webm/webm_video_client.cc10
-rw-r--r--chromium/media/media.gyp2
-rw-r--r--chromium/media/mojo/services/media_type_converters.cc23
-rw-r--r--chromium/media/mojo/services/media_type_converters_unittest.cc16
-rw-r--r--chromium/media/renderers/audio_renderer_impl_unittest.cc4
-rw-r--r--chromium/net/base/registry_controlled_domains/effective_tld_names.dat68
-rw-r--r--chromium/net/base/registry_controlled_domains/effective_tld_names.gperf27
-rw-r--r--chromium/net/quic/quic_stream_factory.cc28
-rw-r--r--chromium/ppapi/cpp/private/find_private.cc4
-rw-r--r--chromium/ppapi/ppapi_sources.gypi2
-rw-r--r--chromium/skia/skia.gyp42
-rw-r--r--chromium/skia/skia_library_opts.gyp28
-rwxr-xr-xchromium/testing/xvfb.py2
-rw-r--r--chromium/third_party/WebKit/Source/core/dom/ContainerNode.cpp13
-rw-r--r--chromium/third_party/WebKit/Source/core/dom/Document.cpp21
-rw-r--r--chromium/third_party/WebKit/Source/core/dom/Element.h2
-rw-r--r--chromium/third_party/WebKit/Source/core/editing/PositionIterator.cpp158
-rw-r--r--chromium/third_party/WebKit/Source/core/editing/PositionIterator.h21
-rw-r--r--chromium/third_party/WebKit/Source/core/editing/commands/ReplaceSelectionCommand.cpp40
-rw-r--r--chromium/third_party/WebKit/Source/core/frame/LocalFrame.cpp35
-rw-r--r--chromium/third_party/WebKit/Source/core/frame/LocalFrame.h24
-rw-r--r--chromium/third_party/WebKit/Source/core/frame/UseCounter.h6
-rw-r--r--chromium/third_party/WebKit/Source/core/html/HTMLFormElement.cpp4
-rw-r--r--chromium/third_party/WebKit/Source/core/html/HTMLMediaElement.cpp2
-rw-r--r--chromium/third_party/WebKit/Source/core/html/HTMLMeterElement.cpp22
-rw-r--r--chromium/third_party/WebKit/Source/core/html/HTMLScriptElement.cpp3
-rw-r--r--chromium/third_party/WebKit/Source/core/html/parser/HTMLDocumentParser.cpp6
-rw-r--r--chromium/third_party/WebKit/Source/core/inspector/DebuggerScript.js2
-rw-r--r--chromium/third_party/WebKit/Source/core/inspector/v8/V8Debugger.h2
-rw-r--r--chromium/third_party/WebKit/Source/core/inspector/v8/V8DebuggerImpl.cpp4
-rw-r--r--chromium/third_party/WebKit/Source/core/inspector/v8/V8DebuggerImpl.h2
-rw-r--r--chromium/third_party/WebKit/Source/core/inspector/v8/V8InjectedScriptHost.cpp6
-rw-r--r--chromium/third_party/WebKit/Source/core/layout/FloatingObjects.cpp20
-rw-r--r--chromium/third_party/WebKit/Source/core/layout/FloatingObjects.h15
-rw-r--r--chromium/third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp43
-rw-r--r--chromium/third_party/WebKit/Source/core/layout/LayoutBlockFlowLine.cpp5
-rw-r--r--chromium/third_party/WebKit/Source/core/layout/LayoutMultiColumnFlowThread.cpp13
-rw-r--r--chromium/third_party/WebKit/Source/core/layout/MultiColumnFragmentainerGroup.cpp5
-rw-r--r--chromium/third_party/WebKit/Source/core/layout/compositing/CompositedLayerMapping.cpp59
-rw-r--r--chromium/third_party/WebKit/Source/core/layout/compositing/CompositedLayerMapping.h2
-rw-r--r--chromium/third_party/WebKit/Source/core/loader/FrameLoader.cpp4
-rw-r--r--chromium/third_party/WebKit/Source/core/loader/NavigationScheduler.cpp16
-rw-r--r--chromium/third_party/WebKit/Source/core/loader/NavigationScheduler.h17
-rw-r--r--chromium/third_party/WebKit/Source/core/paint/BlockFlowPainter.cpp3
-rw-r--r--chromium/third_party/WebKit/Source/devtools/front_end/bindings/SASSSourceMapping.js8
-rw-r--r--chromium/third_party/WebKit/Source/devtools/front_end/timeline/timelineStatusDialog.css6
-rw-r--r--chromium/third_party/WebKit/Source/platform/fonts/Character.cpp8
-rw-r--r--chromium/third_party/WebKit/Source/platform/fonts/Character.h5
-rw-r--r--chromium/third_party/WebKit/Source/platform/fonts/shaping/HarfBuzzShaper.cpp2
-rw-r--r--chromium/third_party/WebKit/Source/web/ChromeClientImpl.cpp1
-rw-r--r--chromium/third_party/WebKit/Source/web/DevToolsEmulator.cpp2
-rw-r--r--chromium/third_party/WebKit/Source/web/WebPagePopupImpl.cpp2
-rw-r--r--chromium/third_party/WebKit/Source/web/WebPageSerializerImpl.cpp4
-rw-r--r--chromium/third_party/WebKit/Source/web/WebPluginContainerImpl.cpp4
-rw-r--r--chromium/third_party/WebKit/Source/wtf/HashTable.h55
-rw-r--r--chromium/third_party/WebKit/Source/wtf/PartitionAlloc.cpp6
-rw-r--r--chromium/third_party/WebKit/Source/wtf/Partitions.cpp18
-rw-r--r--chromium/third_party/WebKit/public/web/WebFileChooserParams.h4
-rw-r--r--chromium/third_party/WebKit/public/web/WebPlugin.h13
-rw-r--r--chromium/third_party/angle/src/compiler.gypi2
-rw-r--r--chromium/third_party/angle/src/compiler/translator/Compiler.cpp17
-rw-r--r--chromium/third_party/angle/src/compiler/translator/Compiler.h2
-rw-r--r--chromium/third_party/angle/src/compiler/translator/IntermNode.cpp31
-rw-r--r--chromium/third_party/angle/src/compiler/translator/IntermNode.h18
-rw-r--r--chromium/third_party/angle/src/compiler/translator/IntermTraverse.cpp10
-rw-r--r--chromium/third_party/angle/src/compiler/translator/RemoveDynamicIndexing.cpp508
-rw-r--r--chromium/third_party/angle/src/compiler/translator/RemoveDynamicIndexing.h21
-rw-r--r--chromium/third_party/angle/src/compiler/translator/TranslatorHLSL.cpp7
-rw-r--r--chromium/third_party/ffmpeg/OWNERS2
-rw-r--r--chromium/third_party/ffmpeg/libavformat/mp3dec.c28
-rw-r--r--chromium/third_party/libjingle/source/talk/media/webrtc/webrtcvideoengine2.cc13
-rw-r--r--chromium/third_party/libjingle/source/talk/media/webrtc/webrtcvideoengine2_unittest.cc24
-rw-r--r--chromium/third_party/pdfium/pdfium.gyp2
-rw-r--r--chromium/third_party/pdfium/third_party/third_party.gyp17
-rw-r--r--chromium/third_party/skia/src/gpu/GrResourceProvider.cpp4
-rw-r--r--chromium/ui/gfx/nine_image_painter.cc35
-rw-r--r--chromium/ui/gfx/nine_image_painter_unittest.cc6
-rw-r--r--chromium/ui/login/account_picker/user_pod_row.js3
-rw-r--r--chromium/ui/ozone/platform/drm/common/drm_util.cc24
-rw-r--r--chromium/ui/ozone/platform/drm/common/drm_util.h14
-rw-r--r--chromium/ui/ozone/platform/drm/gpu/drm_display.cc4
-rw-r--r--chromium/ui/ozone/platform/drm/gpu/drm_display.h2
-rw-r--r--chromium/ui/ozone/platform/drm/gpu/drm_gpu_display_manager.cc8
-rw-r--r--chromium/ui/ozone/platform/drm/host/drm_display_host_manager.cc2
-rw-r--r--chromium/ui/strings/translations/ui_strings_ca.xtb2
-rw-r--r--chromium/ui/strings/translations/ui_strings_fa.xtb2
-rw-r--r--chromium/ui/strings/translations/ui_strings_vi.xtb2
-rw-r--r--chromium/ui/views/controls/button/menu_button.cc8
-rw-r--r--chromium/ui/views/controls/button/menu_button_unittest.cc18
-rw-r--r--chromium/ui/views/widget/desktop_aura/desktop_window_tree_host_x11.cc13
-rw-r--r--chromium/ui/views/widget/desktop_aura/desktop_window_tree_host_x11.h2
-rw-r--r--chromium/ui/views/widget/desktop_aura/desktop_window_tree_host_x11_interactive_uitest.cc2
-rw-r--r--chromium/v8/include/v8-version.h2
-rw-r--r--chromium/v8/src/arm64/lithium-codegen-arm64.cc2
-rw-r--r--chromium/v8/src/array.js18
-rw-r--r--chromium/v8/src/heap/gc-idle-time-handler.cc6
-rw-r--r--chromium/v8/src/heap/gc-idle-time-handler.h6
-rw-r--r--chromium/v8/src/heap/heap.cc3
-rw-r--r--chromium/v8/src/heap/mark-compact.cc6
-rw-r--r--chromium/v8/src/heap/spaces.h31
-rw-r--r--chromium/v8/src/i18n.js7
-rw-r--r--chromium/v8/src/json-stringifier.h36
-rw-r--r--chromium/v8/src/log.cc12
-rw-r--r--chromium/v8/src/snapshot/serialize.cc41
-rw-r--r--chromium/v8/src/snapshot/serialize.h8
-rw-r--r--chromium/v8/test/unittests/unittests.gyp1
-rw-r--r--chromium/win8/metro_driver/metro_driver.gyp3
-rw-r--r--chromium/win8/metro_driver/resources/Logo.pngbin3970 -> 27252 bytes
-rw-r--r--chromium/win8/metro_driver/resources/SmallLogo.pngbin9285 -> 27252 bytes
-rw-r--r--chromium/win8/metro_driver/resources/VisualElementsManifest.xml17
-rw-r--r--chromium/win8/metro_driver/resources/chrome.VisualElementsManifest.xml9
-rw-r--r--chromium/win8/metro_driver/resources/splash-620x300.pngbin10185 -> 0 bytes
421 files changed, 5285 insertions, 1663 deletions
diff --git a/chromium/AUTHORS b/chromium/AUTHORS
index 7614acbd99c..24e00890965 100644
--- a/chromium/AUTHORS
+++ b/chromium/AUTHORS
@@ -358,6 +358,7 @@ Mao Yujie <maojie0924@gmail.com>
Mao Yujie <yujie.mao@intel.com>
Marco Rodrigues <gothicx@gmail.com>
Mario Sanchez Prada <mario.prada@samsung.com>
+Mariusz Mlynski <marius.mlynski@gmail.com>
Mark Hahnenberg <mhahnenb@andrew.cmu.edu>
Mark Seaborn <mrs@mythic-beasts.com>
Martijn Croonen <martijn@martijnc.be>
diff --git a/chromium/DEPS b/chromium/DEPS
index 97608dbe8d8..245dd3ec9e1 100644
--- a/chromium/DEPS
+++ b/chromium/DEPS
@@ -48,7 +48,7 @@ allowed_hosts = [
deps = {
'src/breakpad/src':
- (Var("chromium_git")) + '/breakpad/breakpad/src.git@b0383cd494e736720d237d61af2912bb60960cd8',
+ (Var("chromium_git")) + '/breakpad/breakpad/src.git@615a6b0e2b376e3ae946972a52ef897bf6daaff3',
'src/buildtools':
(Var("chromium_git")) + '/chromium/buildtools.git@0c88009d5c50b9f21b6f8849db08abfb9eb29f1e',
'src/chrome/test/data/perf/canvas_bench':
@@ -66,7 +66,7 @@ deps = {
'src/testing/gtest':
(Var("chromium_git")) + '/external/googletest.git@9855a87157778d39b95eccfb201a9dc90f6d61c6',
'src/third_party/angle':
- (Var("chromium_git")) + '/angle/angle.git@e623bd46a4145e5a25606c895ee4d031e6ba9325',
+ (Var("chromium_git")) + '/angle/angle.git@2e2f3b79e4e3082e97b95de2c911b104324344eb',
'src/third_party/bidichecker':
(Var("chromium_git")) + '/external/bidichecker/lib.git@97f2aa645b74c28c57eca56992235c79850fa9e0',
'src/third_party/boringssl/src':
@@ -82,7 +82,7 @@ deps = {
'src/third_party/dom_distiller_js/dist':
(Var("chromium_git")) + '/external/github.com/chromium/dom-distiller-dist.git@445b024cb55f367636e6da4a61796a2afecd6d3f',
'src/third_party/ffmpeg':
- (Var("chromium_git")) + '/chromium/third_party/ffmpeg.git@525a71ab8ee3b61da48138f7e1c406989d2879fc',
+ (Var("chromium_git")) + '/chromium/third_party/ffmpeg.git@d2733b2c43f65f0e779d5d014777fb8ea1e89873',
'src/third_party/flac':
(Var("chromium_git")) + '/chromium/deps/flac.git@2c4b86af352b23498315c016dc207e3fb2733fc0',
'src/third_party/hunspell_dictionaries':
@@ -98,7 +98,7 @@ deps = {
'src/third_party/libexif/sources':
(Var("chromium_git")) + '/chromium/deps/libexif/sources.git@ed98343daabd7b4497f97fda972e132e6877c48a',
'src/third_party/libjingle/source/talk':
- (Var("chromium_git")) + '/external/webrtc/trunk/talk.git@0a379e9e2e7fe03d9de32199ff4906c96035d4a0',
+ (Var("chromium_git")) + '/external/webrtc/trunk/talk.git@00cf81672af836da305cf5fba6cfddfa48dc4605',
'src/third_party/libjpeg_turbo':
(Var("chromium_git")) + '/chromium/deps/libjpeg_turbo.git@e4e75037f29745f1546b6ebf5cf532e841c04c2c',
'src/third_party/libphonenumber/src/phonenumbers':
@@ -122,7 +122,7 @@ deps = {
'src/third_party/opus/src':
(Var("chromium_git")) + '/chromium/deps/opus.git@cae696156f1e60006e39821e79a1811ae1933c69',
'src/third_party/pdfium':
- 'https://pdfium.googlesource.com/pdfium.git@5194d85954ed08b4205e71f071d8936a6ea4dda2',
+ 'https://pdfium.googlesource.com/pdfium.git@4ec1953b4ace8248ac443effafa5f651e540d995',
'src/third_party/py_trace_event/src':
(Var("chromium_git")) + '/external/py_trace_event.git@dd463ea9e2c430de2b9e53dea57a77b4c3ac9b30',
'src/third_party/pyftpdlib/src':
@@ -136,7 +136,7 @@ deps = {
'src/third_party/sfntly/src':
(Var("chromium_git")) + '/external/github.com/googlei18n/sfntly.git@130f832eddf98467e6578b548cb74ce17d04a26d',
'src/third_party/skia':
- (Var("chromium_git")) + '/skia.git@a212697b5fcdbdb466dc353268a497b22ee086df',
+ (Var("chromium_git")) + '/skia.git@39da2c221c0d5839aea52edd25d715291a560ee0',
'src/third_party/smhasher/src':
(Var("chromium_git")) + '/external/smhasher.git@e87738e57558e0ec472b2fc3a643b838e5b6e88f',
'src/third_party/snappy/src':
@@ -164,7 +164,7 @@ deps = {
'src/tools/swarming_client':
(Var("chromium_git")) + '/external/swarming.client.git@e4c0e242eeec361886ed2b89591a505ebe24db43',
'src/v8':
- (Var("chromium_git")) + '/v8/v8.git@b9b10482e9d8064d81875a758cccf9d9a38183fe'
+ (Var("chromium_git")) + '/v8/v8.git@a10202d1aa3cbaa3b550401bebbe34119b2d20b2'
}
deps_os = {
diff --git a/chromium/base/mac/sdk_forward_declarations.h b/chromium/base/mac/sdk_forward_declarations.h
index 79d2e09a199..057e951ce27 100644
--- a/chromium/base/mac/sdk_forward_declarations.h
+++ b/chromium/base/mac/sdk_forward_declarations.h
@@ -495,6 +495,27 @@ BASE_EXPORT extern NSString* const NSAppearanceNameVibrantDark;
- (void)viewDidLoad;
@end
+enum {
+ NSPressureBehaviorUnknown = -1,
+ NSPressureBehaviorPrimaryDefault = 0,
+ NSPressureBehaviorPrimaryClick = 1,
+ NSPressureBehaviorPrimaryGeneric = 2,
+ NSPressureBehaviorPrimaryAccelerator = 3,
+ NSPressureBehaviorPrimaryDeepClick = 5,
+ NSPressureBehaviorPrimaryDeepDrag = 6
+};
+typedef NSInteger NSPressureBehavior;
+
+@interface NSPressureConfiguration : NSObject
+- (instancetype)initWithPressureBehavior:(NSPressureBehavior)pressureBehavior;
+@end
+
+@class NSPressureConfiguration;
+
+@interface NSView (YosemiteSDK)
+- (void)setPressureConfiguration:(NSPressureConfiguration*)aConfiguration;
+@end
+
#endif // MAC_OS_X_VERSION_10_10
// ----------------------------------------------------------------------------
diff --git a/chromium/base/win/event_trace_controller_unittest.cc b/chromium/base/win/event_trace_controller_unittest.cc
index 317327573bb..c947ed707f5 100644
--- a/chromium/base/win/event_trace_controller_unittest.cc
+++ b/chromium/base/win/event_trace_controller_unittest.cc
@@ -180,7 +180,8 @@ TEST_F(EtwTraceControllerTest, StartFileSession) {
base::DeleteFile(temp, false);
}
-TEST_F(EtwTraceControllerTest, EnableDisable) {
+// This test is flaky for unclear reasons. See bugs 525297 and 534184
+TEST_F(EtwTraceControllerTest, DISABLED_EnableDisable) {
TestingProvider provider(test_provider_);
EXPECT_EQ(ERROR_SUCCESS, provider.Register());
diff --git a/chromium/breakpad/src/client/windows/unittests/client_tests.gyp b/chromium/breakpad/src/client/windows/unittests/client_tests.gyp
index 7f9c7a0287e..b13603ef44c 100644
--- a/chromium/breakpad/src/client/windows/unittests/client_tests.gyp
+++ b/chromium/breakpad/src/client/windows/unittests/client_tests.gyp
@@ -73,6 +73,7 @@
'<(DEPTH)/processor/logging.cc',
'<(DEPTH)/processor/minidump.cc',
'<(DEPTH)/processor/pathname_stripper.cc',
+ '<(DEPTH)/processor/proc_maps_linux.cc',
]
}
],
diff --git a/chromium/build/util/LASTCHANGE b/chromium/build/util/LASTCHANGE
index 4c328619fb1..c798411d43d 100644
--- a/chromium/build/util/LASTCHANGE
+++ b/chromium/build/util/LASTCHANGE
@@ -1 +1 @@
-LASTCHANGE=f7f878e9be9f58312a08c53d3896f275507c17a1
+LASTCHANGE=526cbb5e5ebe9e766ae65e33722efdf9b1c5f908
diff --git a/chromium/build/util/LASTCHANGE.blink b/chromium/build/util/LASTCHANGE.blink
index 4c328619fb1..c798411d43d 100644
--- a/chromium/build/util/LASTCHANGE.blink
+++ b/chromium/build/util/LASTCHANGE.blink
@@ -1 +1 @@
-LASTCHANGE=f7f878e9be9f58312a08c53d3896f275507c17a1
+LASTCHANGE=526cbb5e5ebe9e766ae65e33722efdf9b1c5f908
diff --git a/chromium/cc/raster/one_copy_tile_task_worker_pool.cc b/chromium/cc/raster/one_copy_tile_task_worker_pool.cc
index 86a0561b1ca..907a6883420 100644
--- a/chromium/cc/raster/one_copy_tile_task_worker_pool.cc
+++ b/chromium/cc/raster/one_copy_tile_task_worker_pool.cc
@@ -90,6 +90,10 @@ void WaitForQueryResult(gpu::gles2::GLES2Interface* gl, unsigned query_id) {
if (CheckForQueryResult(gl, query_id))
break;
+ // We have to flush the context to be guaranteed that a query result will
+ // be available in a finite amount of time.
+ gl->ShallowFlushCHROMIUM();
+
base::PlatformThread::Sleep(base::TimeDelta::FromMilliseconds(
kCheckForQueryResultAvailableTickRateMs));
}
diff --git a/chromium/cc/tiles/picture_layer_tiling.cc b/chromium/cc/tiles/picture_layer_tiling.cc
index be8a7940f70..c305365fc5d 100644
--- a/chromium/cc/tiles/picture_layer_tiling.cc
+++ b/chromium/cc/tiles/picture_layer_tiling.cc
@@ -300,27 +300,22 @@ void PictureLayerTiling::RemoveTilesInRegion(const Region& layer_invalidation,
// hash_map instead of a vector in the SmallMap.
base::SmallMap<base::hash_map<TileMapKey, gfx::Rect>, 16> remove_tiles;
gfx::Rect expanded_live_tiles_rect =
- tiling_data_.ExpandRectIgnoringBordersToTileBounds(live_tiles_rect_);
+ tiling_data_.ExpandRectToTileBounds(live_tiles_rect_);
for (Region::Iterator iter(layer_invalidation); iter.has_rect();
iter.next()) {
gfx::Rect layer_rect = iter.rect();
// The pixels which are invalid in content space.
gfx::Rect invalid_content_rect =
gfx::ScaleToEnclosingRect(layer_rect, contents_scale_);
- // Consider tiles inside the live tiles rect even if only their border
- // pixels intersect the invalidation. But don't consider tiles outside
- // the live tiles rect with the same conditions, as they won't exist.
gfx::Rect coverage_content_rect = invalid_content_rect;
- int border_pixels = tiling_data_.border_texels();
- coverage_content_rect.Inset(-border_pixels, -border_pixels);
// Avoid needless work by not bothering to invalidate where there aren't
// tiles.
coverage_content_rect.Intersect(expanded_live_tiles_rect);
if (coverage_content_rect.IsEmpty())
continue;
- // Since the content_rect includes border pixels already, don't include
- // borders when iterating to avoid double counting them.
- bool include_borders = false;
+ // Since the content_rect needs to invalidate things that only touch a
+ // border of a tile, we need to include the borders while iterating.
+ bool include_borders = true;
for (TilingData::Iterator iter(&tiling_data_, coverage_content_rect,
include_borders);
iter; ++iter) {
diff --git a/chromium/cc/tiles/picture_layer_tiling_unittest.cc b/chromium/cc/tiles/picture_layer_tiling_unittest.cc
index ec3b87024d7..bab33fef1ff 100644
--- a/chromium/cc/tiles/picture_layer_tiling_unittest.cc
+++ b/chromium/cc/tiles/picture_layer_tiling_unittest.cc
@@ -57,6 +57,7 @@ class TestablePictureLayerTiling : public PictureLayerTiling {
using PictureLayerTiling::ComputeSkewport;
using PictureLayerTiling::RemoveTileAt;
+ using PictureLayerTiling::RemoveTilesInRegion;
protected:
TestablePictureLayerTiling(WhichTree tree,
@@ -445,6 +446,30 @@ TEST_F(PictureLayerTilingIteratorTest, ResizeOverBorderPixelsDeletesTiles) {
tiling_->TilingDataForTesting().TileBounds(0, 0));
}
+TEST_F(PictureLayerTilingIteratorTest, RemoveOutsideLayerKeepsTiles) {
+ gfx::Size tile_size(100, 100);
+ gfx::Size layer_size(100, 100);
+ InitializeActive(tile_size, 1.f, layer_size);
+ SetLiveRectAndVerifyTiles(gfx::Rect(layer_size));
+
+ // In all cases here, the tiling should remain with one tile, since the remove
+ // region doesn't intersect it.
+
+ bool recreate_tiles = false;
+ // Top
+ tiling_->RemoveTilesInRegion(gfx::Rect(50, -1, 1, 1), recreate_tiles);
+ EXPECT_TRUE(tiling_->TileAt(0, 0));
+ // Bottom
+ tiling_->RemoveTilesInRegion(gfx::Rect(50, 100, 1, 1), recreate_tiles);
+ EXPECT_TRUE(tiling_->TileAt(0, 0));
+ // Left
+ tiling_->RemoveTilesInRegion(gfx::Rect(-1, 50, 1, 1), recreate_tiles);
+ EXPECT_TRUE(tiling_->TileAt(0, 0));
+ // Right
+ tiling_->RemoveTilesInRegion(gfx::Rect(100, 50, 1, 1), recreate_tiles);
+ EXPECT_TRUE(tiling_->TileAt(0, 0));
+}
+
TEST_F(PictureLayerTilingIteratorTest, LiveTilesExactlyCoverLiveTileRect) {
Initialize(gfx::Size(100, 100), 1.f, gfx::Size(1099, 801));
SetLiveRectAndVerifyTiles(gfx::Rect(100, 100));
diff --git a/chromium/chrome/VERSION b/chromium/chrome/VERSION
index 1d3871681a4..c75127522a8 100644
--- a/chromium/chrome/VERSION
+++ b/chromium/chrome/VERSION
@@ -1,4 +1,4 @@
MAJOR=47
MINOR=0
BUILD=2526
-PATCH=34
+PATCH=71
diff --git a/chromium/chrome/app/resources/address_input_strings_hu.xtb b/chromium/chrome/app/resources/address_input_strings_hu.xtb
index 883ae3d2fe9..aeafa65c341 100644
--- a/chromium/chrome/app/resources/address_input_strings_hu.xtb
+++ b/chromium/chrome/app/resources/address_input_strings_hu.xtb
@@ -20,7 +20,7 @@
<translation id="6132429659673988671">Külváros</translation>
<translation id="6207937957461833379">Ország/Régió</translation>
<translation id="6247152910634872706">Szervezet</translation>
-<translation id="6271429879296260742">PIN kód</translation>
+<translation id="6271429879296260742">PIN-kód</translation>
<translation id="6282194474023008486">Irányítószám</translation>
<translation id="6327653052522436195">Település</translation>
<translation id="6403469950615936250">Ezt az irányítószámot nem lehet felismerni. Példa egy érvényes irányítószámra: <ph name="EXAMPLE" />. Nem tudja irányítószámát? Keresse meg <ph name="BEGIN_LINK" />itt<ph name="END_LINK" />.</translation>
diff --git a/chromium/chrome/app/resources/chromium_strings_fa.xtb b/chromium/chrome/app/resources/chromium_strings_fa.xtb
index 8eacec10788..e4137c988ab 100644
--- a/chromium/chrome/app/resources/chromium_strings_fa.xtb
+++ b/chromium/chrome/app/resources/chromium_strings_fa.xtb
@@ -200,7 +200,7 @@
<translation id="7162152143154757523">‏Chromium می‌تواند با ارسال مواردی که در مرورگر تایپ‌ می‌کنید به سرورهای Google، غلط گیر املایی هوشمندانه‌تری به شما ارائه دهد و به شما امکان دهد از همان فناوری غلط گیر املایی استفاده شده در جستجوی Google استفاده کنید.</translation>
<translation id="7196020411877309443">چرا من این را می‌بینم؟</translation>
<translation id="7205698830395646142">‏پنهان در منوی Chromium</translation>
-<translation id="7211828883345145708">‏میانبرهای دیگر صفحه کلید را فعال می‌کند که برای اشکال زدایی Chromium مفید هستند.</translation>
+<translation id="7211828883345145708">‏میان‌برهای دیگر صفحه‌کلید را فعال می‌کند که برای اشکال زدایی Chromium مفید هستند.</translation>
<translation id="7223968959479464213">‏مدیر فعالیت‌ها - Chromium</translation>
<translation id="722928257909516027">‏نمایش منوی Chromium</translation>
<translation id="731644333568559921">‏به‌روزرسانی &amp;سیستم عامل Chromium</translation>
diff --git a/chromium/chrome/app/resources/chromium_strings_no.xtb b/chromium/chrome/app/resources/chromium_strings_no.xtb
index 97e46298c03..a23a27c644d 100644
--- a/chromium/chrome/app/resources/chromium_strings_no.xtb
+++ b/chromium/chrome/app/resources/chromium_strings_no.xtb
@@ -40,7 +40,7 @@ og feil legitimasjon. Enten utgir en hacker seg for å være <ph name="SITE" />,
<translation id="2233513990531887259">Start på nytt i maksimert modus for Chromium</translation>
<translation id="2241627712206172106">Hvis du deler en datamaskin med andre, kan venner og familie surfe hver for seg og konfigurere Chromium akkurat slik de vil.</translation>
<translation id="225614027745146050">Velkommen</translation>
-<translation id="2316129865977710310">Nei takk</translation>
+<translation id="2316129865977710310">Nei, takk</translation>
<translation id="2347108572062610441">Denne utvidelsen har endret hvilken side som vises når du starter Chromium.</translation>
<translation id="2389622953163669926">{NUM_DOWNLOAD,plural, =1{En nedlasting pågår for øyeblikket. Vil du avbryte nedlastingen og avslutte Chromium?}other{# nedlastinger pågår for øyeblikket. Vil du avbryte nedlastingene og avslutte Chromium?}}</translation>
<translation id="2396765026452590966">Utvidelsen «<ph name="EXTENSION_NAME" />» har endret hvilken side som vises når du starter Chromium.</translation>
@@ -216,7 +216,7 @@ Chromium kan ikke gjenopprette innstillingen dine.</translation>
<translation id="7421823331379285070">Chromium krever Windows XP eller nyere. Enkelte funksjoner vil kanskje ikke fungere.</translation>
<translation id="7437562785125777404">Chromium OS kan ikke vises på dette språket.</translation>
<translation id="7463979740390522693">Chromium – varsler (<ph name="QUANTITY" /> uleste)</translation>
-<translation id="7473891865547856676">Nei takk</translation>
+<translation id="7473891865547856676">Nei, takk</translation>
<translation id="7483335560992089831">Kan ikke installere den samme Chromium-versjonen som kjører. Lukk Chromium og prøv på nytt.</translation>
<translation id="750717762378961310">Denne filen er skadelig, og Chromium har blokkert den.</translation>
<translation id="7549178288319965365">Om Chromium OS</translation>
diff --git a/chromium/chrome/app/resources/generated_resources_am.xtb b/chromium/chrome/app/resources/generated_resources_am.xtb
index 924b204e128..34a4cf25faf 100644
--- a/chromium/chrome/app/resources/generated_resources_am.xtb
+++ b/chromium/chrome/app/resources/generated_resources_am.xtb
@@ -136,6 +136,8 @@
<translation id="1178581264944972037">ለአፍታ አቁም</translation>
<translation id="1179803038870941185"><ph name="URL" /> የእርስዎን MIDI መሳሪያዎች ሙሉ በሙሉ መቆጣጠር ይፈልጋል።</translation>
<translation id="1181037720776840403">አስወግድ</translation>
+<translation id="11814323404622888">"&gt;
+ USB-C መሣሪያ (የቀኝ ጎን የኋላ ወደብ)</translation>
<translation id="1183083053288481515">በአስተዳዳሪ የቀረበ የእውቅና ማረጋገጫን በመጠቀም ላይ</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>
@@ -329,6 +331,7 @@
<translation id="1468038450257740950">WebGL አይደገፍም።</translation>
<translation id="1470719357688513792">አዲስ የኩኪ ቅንብሮች ገጹ ዳግም ከተጫነ በኋላ ይተገበራሉ።</translation>
<translation id="14720830734893704">የምናባዊ የቁልፍ ሰሌዳ ድጋፍን አንቃ።</translation>
+<translation id="1474079335130556426">ለPush ኤፒአይ የበስተጀርባ ሁነታን ያንቁ። ይህ Chrome የመጨረሻው መስኮት ከተዘጋ በኋላ መሥራቱን እንዲቀጥል እና Push ኤፒአይ ካስፈልገው በOS ጅምር ላይ እንዲያስጀምር ያስችለዋል።</translation>
<translation id="1474339897586437869">«<ph name="FILENAME" />» አልተሰቀለም። በእርስዎ Google Drive ውስጥ በቂ የሆነ ነፃ ቦታ የለም።</translation>
<translation id="1476503841242751994">{COUNT,plural, =1{1 የይለፍ ቃል}one{# የይለፍ ቃሎች}other{# የይለፍ ቃሎች}}</translation>
<translation id="1476949146811612304">ከ<ph name="BEGIN_LINK" />ኦምኒቦክሱ<ph name="END_LINK" /> ሲፈለግ የትኛው የፍለጋ ፕሮግራም ስራ ላይ እንደሚውል ያዘጋጃል።</translation>
@@ -655,6 +658,7 @@
<translation id="1918141783557917887">&amp;አሳንስ</translation>
<translation id="192144045824434199">ከአሳሽ ክፈፉ ውጪ የሚከፈቱ የፓነል መስኮቶችን አንቃ። ካልነቃ አንድ ፓነል ለመክፈት የሚደረጉ ሙከራዎች ይልቁንስ ብቅ-ባይን ይከፍታሉ። ፓነሎች በdev እና canary ሰርጦች ላይ ሁልጊዜ ነቅተዋል።</translation>
<translation id="1921584744613111023"><ph name="DPI" /> dpi</translation>
+<translation id="1921986354447415460">የቱርክኛ-F የቁልፍ ሰሌዳ</translation>
<translation id="1923786009776354244">ለWebRTC Stun ምንጭ ርዕስ ድጋፍን ያንቁ።</translation>
<translation id="1926741348654461781">ከመስመር ውጭ ገጾችን አንቃ</translation>
<translation id="1929546189971853037">የአሰሳ ታሪክዎን በሁሉም በመለያ በገቡ መሣሪያዎችዎ ላይ ያነብባል</translation>
@@ -861,6 +865,7 @@
<translation id="2231990265377706070">የቃል አጋኖ ምልክት</translation>
<translation id="2232876851878324699">ፋይሉ አንድ እንዲገባ ያልተደረገ የእውቅና ማረጋገጫ ይዞ ነበር፦</translation>
<translation id="2233502537820838181">&amp;ተጨማሪ መረጃ</translation>
+<translation id="2233587473672843170">በአዲሱ ትር ገጽ ላይ ተወዳጅ ጣቢያዎችን አሳይ</translation>
<translation id="223714078860837942">አንድ ገጽ በግልጽ የዋቢ መመሪያ ካላዘጋጀ ይህን ዕልባት ማዘጋጀት ተቋራጭ ምንጭ ባላቸው ጥያቄዎች ውስጥ ያለ የ«ዋቢ» ራስጌ መረጃ መጠን ይቀንሳል።</translation>
<translation id="2238379619048995541">የተደጋጋሚነት ሁኔታ ውሂብ</translation>
<translation id="2239921694246509981">ቁጥጥር የሚደረግበት ግለሰብን ያክሉ</translation>
@@ -936,6 +941,7 @@
<translation id="2326606747676847821">ማንነት ወደማያሳውቅ ሁነታ ሂድ</translation>
<translation id="2326931316514688470">&amp;መተግበሪያን ዳግም ጫን</translation>
<translation id="2327492829706409234">መተግበሪያን አንቃ</translation>
+<translation id="2329597144923131178">የእርስዎን ዕልባቶች፣ ታሪክ፣ የይለፍ ቃላት እና ሌሎች ቅንብሮች በሁሉም መሣሪያዎችዎ ላይ ለማግኘት ወደ መለያ ይግቡ።</translation>
<translation id="2332131598580221120">በመደብር ውስጥ ይመልከቱ</translation>
<translation id="2332742915001411729">ወደ ነባሪ ዳግም አስጀምር</translation>
<translation id="2335122562899522968">ይህ ገጽ ኩኪዎችን አዋቅሯል።</translation>
@@ -1324,6 +1330,7 @@
<translation id="2838379631617906747">በመጫን ላይ</translation>
<translation id="2841837950101800123">አቅራቢ</translation>
<translation id="2843806747483486897">ነባሪ ቀይር...</translation>
+<translation id="2844169650293029770">USB-C መሣሪያ (የግራ ጎን የፊት ወደብ)</translation>
<translation id="2845382757467349449">ሁልጊዜ የዕልባቶች አሞሌን አሳይ</translation>
<translation id="2846816712032308263">ፈጣን የትር/መስኮት መዝጋትን አንቃ - የትሩን onunload js መቆጣጠሪያ ከGUI በተናጠል ያስኬዳል።</translation>
<translation id="284970761985428403"><ph name="ASCII_NAME" /> (<ph name="UNICODE_NAME" />)</translation>
@@ -1391,6 +1398,7 @@
<translation id="2923469375796950815">አዲሱን የZIP አራጋፊ ያሰናክሉ።</translation>
<translation id="2924296707677495905">በቋንቋ ፊደል መጻፍ (namaskaram → ನಮಸ್ಕಾರ)</translation>
<translation id="2925966894897775835">ሉሆች</translation>
+<translation id="2927017729816812676">የመሸጎጫ ማከማቻ</translation>
<translation id="2927657246008729253">ለውጥ…</translation>
<translation id="2928526264833629376">ወደ Hangouts ቀጥል</translation>
<translation id="2930644991850369934">የማግኛ ምስሉን በማውረድ ላይ ሳለ ችግር ነበር። የአውታረ መረብ ግንኙነት ጠፍቷል።</translation>
@@ -1733,6 +1741,7 @@
<translation id="3396331542604645348">የተመረጠው አታሚ የለም ወይም በትክክል አልተጫነም። አታሚዎን ያረጋግጡ ወይም ሌላ አታሚ ለመምረጥ ይሞክሩ።</translation>
<translation id="3399597614303179694">የመቄዶኒያኛ ቁልፍ ሰሌዳ</translation>
<translation id="340013220407300675">ጥቃት የሚያደርሱ አካላት መረጃዎን ከ<ph name="BEGIN_BOLD" /><ph name="SITE" /><ph name="END_BOLD" /> ለመስረቅ እየሞከሩ ሊሆን ይችላል (ለምሳሌ፣ የይለፍ ቃሎችን፣ መልዕክቶችን ወይም ክሬዲት ካርዶችን)።</translation>
+<translation id="3401130144947259741">ከነቃ የክስተቶች ክትትል ወደ Event Tracing for Windows (ETW) እንዲላክ ይደረግና ከዚያ በመቀጠል እንደ UIForETW ወይም Xperf ባሉ መሣሪያዎች ሊያዝ ይችላል።</translation>
<translation id="340282674066624"><ph name="DOWNLOAD_RECEIVED" />፣ <ph name="TIME_LEFT" /></translation>
<translation id="3406605057700382950">&amp;የዕልባቶች አሞሌ አሳይ</translation>
<translation id="3412265149091626468">ወደ ተመረጠው ዝለል</translation>
@@ -1891,6 +1900,7 @@
<translation id="3603385196401704894">የካናዳ ፈረንሳይኛ</translation>
<translation id="3603622770190368340">የአውታረ መረብ እውቅና ማረጋገጫ ያግኙ</translation>
<translation id="3605780360466892872">የኮሌታ ቁልፍ</translation>
+<translation id="3606220979431771195">የቱርክኛ-F</translation>
<translation id="3608454375274108141">F10</translation>
<translation id="3608576286259426129">የተጠቃሚ ምስል ቅድመ-እይታ</translation>
<translation id="3609138628363401169">አገልጋዩ የቲኤልኤስ ዳግም ድርድር ቅጥያውን አይደግፍም።</translation>
@@ -2409,6 +2419,7 @@
<translation id="4321136812570927563">{NUM_DOWNLOAD,plural, =1{ማውረድ ቀጥል}one{ማውረዶች ቀጥል}other{ማውረዶች ቀጥል}}</translation>
<translation id="4321179778687042513">ctrl</translation>
<translation id="4322394346347055525">ሌሎች ትሮችን ዝጋ</translation>
+<translation id="4325378361067528777">የPush ኤፒአይ በስተጀርባ ሁነታን አንቃ</translation>
<translation id="4326952458285403282">የሙከራ የDirectWrite ቅርጸ-ቁምፊ ምስል ስራ ስርዓት መጠቀምን ያሰናክላል።</translation>
<translation id="4326999707196471878">የToolkit-Views አሳሸ መገናኛዎች።</translation>
<translation id="4330406155931244378">የብዝሃ ቋንቋ ፊደል አራሚን አንቃ</translation>
@@ -2947,6 +2958,8 @@
<translation id="5148652308299789060">የ3-ል ሶፍትዌር የህትመት አመቻቺን ያሰናክሉ</translation>
<translation id="5150254825601720210">የNetscape ሰርቲፊኬት SSL አገልጋይ ስም</translation>
<translation id="5151034238407558331">የአጋጣሚ ነገር ሆኖ የአሜሪካ አድራሻ ያላቸው ገዢዎች ብቻ ናቸው Google ክፍያዎችን በዚህ ነጋዴ ላይ መጠቀም የሚችሉት። እርስዎ የአሜሪካ ነዋሪ ከሆኑ እባክዎ |Google ክፍያዎች ላይ ያለው የቤት አድራሻዎን ይቀይሩ| ወይም Google ክፍያዎችን ሳይጠቀሙ ይክፈሉ።</translation>
+<translation id="5151639798712723370">"&gt;
+ USB-C መሣሪያ (የቀኝ ጎን ፊት ወደብ)</translation>
<translation id="5152451685298621771">(የህጻናት መለያ)</translation>
<translation id="5154108062446123722">የላቁ የ<ph name="PRINTING_DESTINATION" /> ቅንብሮች</translation>
<translation id="5154176924561037127">F8</translation>
@@ -3045,6 +3058,7 @@
<translation id="5271247532544265821">ቀላል/ባህላዊ ቻይንኛ ሁነታን ይቀያይሩ</translation>
<translation id="5271549068863921519">የይለፍ ቃሉን አስቀምጥ</translation>
<translation id="5273628206174272911">ለአግድሞሽ ማሸብለል ምላሽነት የሙከራ ታሪክ አሰሳን ያነቃል።</translation>
+<translation id="5275795814002959418"><ph name="COUNT" /> ከዚህ ጣቢያ</translation>
<translation id="5275973617553375938">ከGoogle Drive መልሰው የተገኙ ፋይሎች</translation>
<translation id="527605719918376753">ትር ላይ ድምጸ-ከል አድርግ</translation>
<translation id="527605982717517565">ሁልጊዜ በ<ph name="HOST" /> ላይ ጃቫስክሪፕት ፍቀድ</translation>
@@ -3091,6 +3105,7 @@
<translation id="5328285148748012771">ሁሉንም የእርስዎ መተግበሪያዎች ከዚህ ምቹ አስጀማሪ ሆነው ይድረሱባቸው። ጨዋታዎችን ይጫወቱ፣ በቪዲዮ ይወያዩ፣ ሙዚቃ ያዳምጡ፣ ሰነዶችን ያርትዑ ወይም ተጨማሪ መተግበሪያዎችን ከChrome የድር ሱቁ ያግኙ።</translation>
<translation id="5329858601952122676">&amp;ሠርዝ</translation>
<translation id="5330145655348521461">እነዚህ ፋይሎች በተለየ ዴስክቶፕ ላይ ተከፍተዋል። ለማየት ወደ <ph name="USER_NAME" /> (<ph name="MAIL_ADDRESS" />) ይውሰዱት።</translation>
+<translation id="5331975486040154427">USB-C መሣሪያ (የግራ ጎን ኋላ ወደብ)</translation>
<translation id="5332624210073556029">የሰዓት ሰቅ፦</translation>
<translation id="5334142896108694079">የስክሪፕት መሸጎጫ</translation>
<translation id="533433379391851622">የተጠበቀው ስሪት «<ph name="EXPECTED_VERSION" />» ነበር፣ ግን ስሪቱ «<ph name="NEW_ID" />» ነበር።</translation>
@@ -3137,6 +3152,7 @@
<translation id="539755880180803351">የራስ-ሙላ መስክ ትየባ ግምቶች ያላቸው የድር ቅጾችን እንደ ቦታ ያዥ ጽሑፍ ያብራራቸዋል።</translation>
<translation id="5397578532367286026">የዚህ ተጠቃሚ አጠቃቀም እና ታሪክ በchrome.com ላይ በአስተዳዳሪ (<ph name="MANAGER_EMAIL" />) ሊገመገም ይችላል።</translation>
<translation id="5397794290049113714">እርስዎ</translation>
+<translation id="5398824043967640339"><ph name="COUNT" /> ከሌሎች ጣቢያዎች</translation>
<translation id="5399158067281117682">ፒንዎቹ አይመሳሰሉም!</translation>
<translation id="5400640815024374115">የታመነ የመሣሪያ ስርዓት ሞዱል (ቲ ፒ ኤም) ቺፕ ተሰናክሏል ወይም የለም።</translation>
<translation id="5402367795255837559">ብሬይል</translation>
@@ -3964,6 +3980,7 @@ nil</translation>
<translation id="6575251558004911012">አንድ ጣቢያ ካሜራዎን ለመድረስ ሲፈልግ ይጠይቅ (የሚመከር)</translation>
<translation id="6581162200855843583">Google Drive አገናኝ</translation>
<translation id="6583070985841601920">እንደ <ph name="USER_EMAIL_ADDRESS" /> ሆነው ገብተዋል። ማመሳሰል በአስተዳዳሪዎ ተሰናክሏል።</translation>
+<translation id="65832705307647870">አዲሱን የትር ገጽ በተወዳጅ ጣቢያዎች ቅድሚያ ይሙሉ።</translation>
<translation id="6584878029876017575">Microsoft Lifetime Signing</translation>
<translation id="6585234750898046415">በመግቢያ ማያ ገጹ ላይ ለመለያዎ የሚታይ ስዕል ይምረጡ።</translation>
<translation id="6585283250473596934">ወደ ይፋዊ ክፍለ ጊዜ በመግባት ላይ።</translation>
@@ -4313,6 +4330,7 @@ nil</translation>
<translation id="7092106376816104">የማይካተቱ ብቅ-ባዮች</translation>
<translation id="7093866338626856921">ስማቸው እንደሚከተለው ከሆኑ መሣሪያዎች ጋር ውሂብ ተለዋወጥ፦ <ph name="HOSTNAMES" /></translation>
<translation id="7096082900368329802">ተጨማሪ ግሩም ባህሪያትን ማግኘት ይፈልጋሉ?</translation>
+<translation id="7098389117866926363">USB-C መሣሪያ (የግራ ወደብ ከኋላ በኩል)</translation>
<translation id="7100897339030255923"><ph name="COUNT" /> ንጥሎች ተመርጠዋል</translation>
<translation id="7106346894903675391">ተጨማሪ ማከማቻ ይግዙ...</translation>
<translation id="7108338896283013870">ደብቅ</translation>
@@ -5096,6 +5114,7 @@ nil</translation>
<translation id="8190193592390505034">ከ<ph name="PROVIDER_NAME" /> ጋር በመገናኘት ላይ</translation>
<translation id="8191230140820435481">መተግበሪያዎችዎን፣ ቅጥያዎችዎን እና ገጽታዎችዎን ያቀናብራል</translation>
<translation id="8191453843330043793">V8 Proxy Resolver</translation>
+<translation id="8199491812735365610">የሚገቡበትን መለያ ይምረጡ</translation>
<translation id="8200772114523450471">ከቆመበት ቀጥል</translation>
<translation id="8202160505685531999">የእርስዎን የ<ph name="DEVICE_TYPE" /> መገለጫ ለማዘመን እባክዎ የእርስዎን የይለፍ ቃል ዳግም ያስገቡት።</translation>
<translation id="8204086856545141093">ለአገልጋዩ የተላኩ ጥያቄዎች በአንድ መመሪያ ታግደዋል።</translation>
@@ -5227,6 +5246,7 @@ nil</translation>
<translation id="8381977081675353473">ስሎቫኪያኛ</translation>
<translation id="8382645631174981738"><ph name="EXTENSION_NAME" /> በርቀት ተጭኗል</translation>
<translation id="8382913212082956454">&amp;ኢሜይል አድራሻ ቅዳ</translation>
+<translation id="8384113940676655504">ስልኩ በአቅራቢያው በሚሆንበት ጊዜ Chromebookን ለማስከፈት ስልኮች በBluetooth Low Energy ላይ Chromebook እንዲያገኙ የሚያስችላቸውን የSmart Lock ቅንብርን ያነቃል።</translation>
<translation id="8390029840652165810">እባክዎ አውታረ መረብዎ እየሰራ መሆኑን ያረጋግጡና ችግሩ ከቀጠለ ምስክርነቶችዎን ለማደስ ዘግተው ይውጡና እንደገና ይግቡ።</translation>
<translation id="8390445751804042000">በሚደርሱ የተወሰኑ የአውታረ መረብ ጥቅሎች ላይ ተመስርቶ መሣሪያውን መቀስቀስ ያነቃል።</translation>
<translation id="8390449457866780408">አገልጋይ አይገኝም።</translation>
@@ -5313,6 +5333,7 @@ nil</translation>
<translation id="8509646642152301857">የፊደል ማረሚያ መዝገበ-ቃላት ማውረድ አልተሳካም።</translation>
<translation id="8512476990829870887">ሂደቱን ግታ</translation>
<translation id="851263357009351303">ሁልጊዜ <ph name="HOST" /> ምስሎችን እዲያሳይ ፍቀድ</translation>
+<translation id="8513191386157529469">«<ph name="CLIENT_NAME" />» ይህን አሳሽ እያረመ ነው።</translation>
<translation id="8513974249124254369">ChromeVox (የሚነገር ግብረመልስ) ነቅቷል። ለማሰናከል Ctrl+Alt+Z ይጫኑ።</translation>
<translation id="8515737884867295000">በእውቅና ማረጋገጫ ላይ የተመሠረተ ማረጋገጥ አልተሰካም።</translation>
<translation id="8518865679229538285">የታሚል ግቤት ስልት (የጽህፈት መሳሪያ)</translation>
@@ -5431,6 +5452,7 @@ nil</translation>
<translation id="8677039480012021122">ውሂብ አጽዳና ግንኙነት አቋርጥ</translation>
<translation id="8677212948402625567">ሁሉንም ሰብስብ...</translation>
<translation id="8678648549315280022">የአውርድ ቅንብሮችን ያስተዳድሩ...</translation>
+<translation id="8680251145628383637">የእርስዎን ዕልባቶች፣ ታሪክ፣ የይለፍ ቃሎች እና ሌሎች ቅንብሮች በሁሉም መሣሪያዎችዎ ላይ ለማግኘት በመለያ ይግቡ። እንዲሁም በራስ-ሰር ወደ የእርስዎ Google አገልግሎቶች እንዲገቡ ይደረጋሉ።</translation>
<translation id="8680536109547170164"><ph name="QUERY" />፣ መልስ፣ <ph name="ANSWER" /></translation>
<translation id="8680787084697685621">የመለያ መግቢያ ዝርዝሮች ጊዜ ያለፈባቸው ናቸው።</translation>
<translation id="8684255857039823328">የይለፍ ቃል ተቀምጧል። <ph name="MANAGEMENT_LINK" /> ላይ የይለፍ ቃላትዎን ከማንኛውም መሣሪያ ላይ ሆነው ይድረሱባቸው።</translation>
@@ -5486,6 +5508,7 @@ nil</translation>
<translation id="874420130893181774">ተለምዷዊ የፒንዪን ግቤት ስልት</translation>
<translation id="8744525654891896746">ክትትል ለሚደረግለት ይህ ተጠቃሚ አንድ አምሳያ ይምረጡ</translation>
<translation id="8744641000906923997">ሮማጂ</translation>
+<translation id="8744959718895556609">ከእርስዎ <ph name="LINK_TEXT" /> ላይ መለያ ይምረጡ</translation>
<translation id="8749863574775030885">ካልታወቀ አቅራቢ የመጡ የዩኤስቢ መሣሪያዎችን ይደርሳል</translation>
<translation id="8754200782896249056">&lt;p&gt;<ph name="PRODUCT_NAME" />ን በተደገፈ የዴስክቶፕ ምህዳር ላይ ሲሄድ የስርዓቱ ተኪ ቅንብሮች ናቸው ስራ ላይ የሚውሉት። ይሁንና ወይም ስርዓትዎ አይደገፍም ወይም የስርዓት ውቅርዎን ማስጀመር ላይ ችግር ነበር።&lt;/p&gt;
@@ -5605,6 +5628,7 @@ nil</translation>
<translation id="8933960630081805351">በፈላጊ ውስጥ &amp;አሳይ</translation>
<translation id="8934732568177537184">ቀጥል</translation>
<translation id="8938356204940892126">ተስፋ ቆርጫለሁ</translation>
+<translation id="8938800817013097409">USB-C መሣሪያ (የቀኝ ወደብ ከኋላ በኩል)</translation>
<translation id="8940081510938872932">ኮምፒውተርዎ አሁን በጣም ብዙ ነገሮችን እየሰራ ነው። ቀይተው እንደገና ይምክሩ።</translation>
<translation id="8941173171815156065">ፈቃድ «<ph name="PERMISSION" />»ን ሻር</translation>
<translation id="8941248009481596111">ወደዚህ ጣቢያ ያልዎት ግንኙነት የግልዎ ነው።</translation>
diff --git a/chromium/chrome/app/resources/generated_resources_ar.xtb b/chromium/chrome/app/resources/generated_resources_ar.xtb
index a0cf7c1ea07..dad9107ecee 100644
--- a/chromium/chrome/app/resources/generated_resources_ar.xtb
+++ b/chromium/chrome/app/resources/generated_resources_ar.xtb
@@ -136,6 +136,8 @@
<translation id="1178581264944972037">تعليق</translation>
<translation id="1179803038870941185">‏يريد <ph name="URL" /> الحصول على إمكانية تحكم كاملة في أجهزة MIDI.</translation>
<translation id="1181037720776840403">إزالة</translation>
+<translation id="11814323404622888">‏"&gt;
+ جهاز USB-C (المنفذ الخلفي الأيمن)</translation>
<translation id="1183083053288481515">يتم استخدام شهادة قدمها المشرف</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>
@@ -329,6 +331,7 @@
<translation id="1468038450257740950">‏WebGL غير متوافق.</translation>
<translation id="1470719357688513792">ستسري إعدادات ملفات تعريف الارتباط بعد إعادة تحميل الصفحة.</translation>
<translation id="14720830734893704">تمكين إتاحة لوحة المفاتيح الظاهرية.</translation>
+<translation id="1474079335130556426">‏تمكين وضع الخلفية لواجهة برمجة تطبيقات Push. يسمح هذا لـ Chrome بمتابعة التشغيل بعد إغلاق آخر نافذة، وبالإطلاق عند بدء تشغيل نظام التشغيل، إذا كانت واجهة برمجة تطبيقات Push تحتاج إليه.</translation>
<translation id="1474339897586437869">‏لم يتم تحميل "<ph name="FILENAME" />". حيث لا توجد لديك مساحة فارغة كافية في Google Drive.</translation>
<translation id="1476503841242751994">{COUNT,plural, =1{كلمة مرور واحدة}zero{# كلمات مرور}two{ # كلمتا مرور}few{# كلمات مرور}many{# كلمة مرور}other{# من كلمات المرور}}</translation>
<translation id="1476949146811612304">تعيين محرك البحث الذي يتم استخدامه عند البحث في
@@ -654,6 +657,7 @@
<translation id="1918141783557917887">أص&amp;غر</translation>
<translation id="192144045824434199">تمكين نوافذ اللوحة التي تفتح خارج إطار المتصفح. إذا لم يتم تمكينها، ستؤدي محاولات فتح إحدى اللوحات إلى فتح نافذة منبثقة بدلاً من ذلك. يتم تمكين اللوحات دائمًا في قنوات المطورين والمحترفين.</translation>
<translation id="1921584744613111023"><ph name="DPI" /> نقطة لكل بوصة</translation>
+<translation id="1921986354447415460">‏لوحة مفاتيح Turkish-F</translation>
<translation id="1923786009776354244">‏تمكين دعم عنوان الأصل WebRTC Stun.</translation>
<translation id="1926741348654461781">تمكين الصفحات في وضع عدم الاتصال</translation>
<translation id="1929546189971853037">قراءة سجل التصفح على كل الأجهزة التي سجلت الدخول إليها</translation>
@@ -852,6 +856,7 @@
<translation id="2231990265377706070">علامة تعجب</translation>
<translation id="2232876851878324699">احتوى الملف على شهادة واحدة، لم يتم استيرادها:</translation>
<translation id="2233502537820838181">&amp;مزيد من المعلومات</translation>
+<translation id="2233587473672843170">عرض مواقع شائعة في صفحة علامة تبويب جديدة</translation>
<translation id="223714078860837942">إذا لم تعين صفحة سياسة مُحيل واضحة، فسيحد تعيين هذه العلامة من كمية المعلومات في عنوان "المُحيل" لطلبات عبر الأصل.</translation>
<translation id="2238379619048995541">بيانات حالة التردد</translation>
<translation id="2239921694246509981">إضافة شخص خاضع للإشراف</translation>
@@ -927,6 +932,7 @@
<translation id="2326606747676847821">الانتقال إلى وضع التصفُّح المتخفّي</translation>
<translation id="2326931316514688470">&amp;إعادة تحميل التطبيق</translation>
<translation id="2327492829706409234">تمكين التطبيق</translation>
+<translation id="2329597144923131178">سجّل الدخول للحصول على الإشارات المرجعية، والسجل، وكلمات المرور، والإعدادات الأخرى على كل أجهزتك.</translation>
<translation id="2332131598580221120">عرض في المتجر</translation>
<translation id="2332742915001411729">إعادة تعيين على الإعدادات الافتراضية</translation>
<translation id="2335122562899522968">تُعين هذه الصفحة ملفات تعريف الارتباط.</translation>
@@ -1314,6 +1320,7 @@
<translation id="2838379631617906747">يتم الآن التثبيت</translation>
<translation id="2841837950101800123">المزود</translation>
<translation id="2843806747483486897">تغيير الإجراء الافتراضي...</translation>
+<translation id="2844169650293029770">‏جهاز USB-C (المنفذ الأمامي الأيسر)</translation>
<translation id="2845382757467349449">عرض شريط الإشارات المرجعية دائمًا</translation>
<translation id="2846816712032308263">‏لتمكين الغلق السريع لعلامة التبويب/النافذة - لتشغيل معالج onunload js في علامة التبويب بشكل مستقل عن واجهة المستخدم الرسومية.</translation>
<translation id="284970761985428403"><ph name="ASCII_NAME" /> (<ph name="UNICODE_NAME" />)</translation>
@@ -1378,6 +1385,7 @@
<translation id="2923469375796950815">‏تعطيل أداة فتح ملفات ZIP.</translation>
<translation id="2924296707677495905">‏التحويل الصوتي (ناماسكارام ← ನಮಸ್ಕಾರ)</translation>
<translation id="2925966894897775835">جداول البيانات</translation>
+<translation id="2927017729816812676">السعة التخزينية لذاكرة التخزين المؤقت</translation>
<translation id="2927657246008729253">تغيير...</translation>
<translation id="2928526264833629376">‏المتابعة إلى Hangouts</translation>
<translation id="2930644991850369934">حدثت مشكلة أثناء تنزيل ملف الاستعادة. حيث فُقد الاتصال بالشبكة.</translation>
@@ -1717,6 +1725,7 @@
<translation id="3396331542604645348">الطابعة المحددة غير متاحة أو لم يتم تثبيتها بشكل صحيح. تحقق من الطابعة أو جرّب تحديد طابعة أخرى.</translation>
<translation id="3399597614303179694">لوحة مفاتيح باللغة المقدونية</translation>
<translation id="340013220407300675">قد يحاول المهاجمون سرقة معلوماتك من <ph name="BEGIN_BOLD" /> <ph name="SITE" /> <ph name="END_BOLD" /> (على سبيل المثال: كلمات المرور أو الرسائل، أو بطاقات الائتمان).</translation>
+<translation id="3401130144947259741">‏في حالة التمكين، سيتم تصدير أحداث التتبع إلى تتبع الأحداث في Windows ‎ ‏(ETW) وبذلك يمكن التقاطها بواسطة أدوات مثل UIForETW أو Xperf.</translation>
<translation id="340282674066624"><ph name="DOWNLOAD_RECEIVED" />، <ph name="TIME_LEFT" /></translation>
<translation id="3406605057700382950">&amp;عرض شريط الإشارات</translation>
<translation id="3412265149091626468">انتقال سريع إلى التحديد</translation>
@@ -1873,6 +1882,7 @@
<translation id="3603385196401704894">الفرنسية الكندية</translation>
<translation id="3603622770190368340">الحصول على شهادة الشبكة</translation>
<translation id="3605780360466892872">الزر لأسفل</translation>
+<translation id="3606220979431771195">Turkish-F</translation>
<translation id="3608454375274108141">F10</translation>
<translation id="3608576286259426129">معاينة صورة المستخدم</translation>
<translation id="3609138628363401169">‏لا يوفر الخادم إضافة إعادة التفاوض بروتوكول أمان طبقة النقل (TLS).</translation>
@@ -2390,6 +2400,7 @@
<translation id="4321136812570927563">{NUM_DOWNLOAD,plural, =1{متابعة التنزيل}zero{متابعة التنزيلات}two{متابعة التنزيلين}few{متابعة التنزيلات}many{متابعة التنزيلات}other{متابعة التنزيلات}}</translation>
<translation id="4321179778687042513">ctrl</translation>
<translation id="4322394346347055525">إغلاق علامات التبويب الأخرى</translation>
+<translation id="4325378361067528777">‏تمكين وضع الخلفية لواجهة برمجة تطبيقات Push</translation>
<translation id="4326952458285403282">‏تعطيل استخدام نظام عرض خط DirectWrite التجريبي.</translation>
<translation id="4326999707196471878">‏مربعات حوار متصفح Toolkit-Views.</translation>
<translation id="4330406155931244378">تمكين المدقق الإملائي متعدد اللغات</translation>
@@ -2929,6 +2940,8 @@
<translation id="5148652308299789060">تعطيل أداة تحويل البرنامج ثلاثي الأبعاد</translation>
<translation id="5150254825601720210">‏اسم خادم بروتوكول SSL (طبقة المقابس الآمنة) لشهادة Netscape</translation>
<translation id="5151034238407558331">‏للأسف، لا يُمكن استخدام Google Payments مع هذا التاجر سوى عن طريق العملاء ممن لديهم عنوان بالولايات المتحدة. فإذا كنت من قاطني الولايات المتحدة، يُرجى |تغيير عنوان المنزل المستخدم مع Google Payments| أو الدفع بدون استخدام Google Payments.</translation>
+<translation id="5151639798712723370">‏"&gt;
+ جهاز USB-C (المنفذ الأمامي الأيمن)</translation>
<translation id="5152451685298621771">(حساب للأطفال)</translation>
<translation id="5154108062446123722">الإعدادات المتقدمة لـ <ph name="PRINTING_DESTINATION" /></translation>
<translation id="5154176924561037127">F8</translation>
@@ -3027,6 +3040,7 @@
<translation id="5271247532544265821">التبديل بين وضعي الصينية المبسطة/التقليدية</translation>
<translation id="5271549068863921519">حفظ كلمة المرور</translation>
<translation id="5273628206174272911">التنقل التجريبي عبر السجل استجابة للتمرير الأفقي الزائد.</translation>
+<translation id="5275795814002959418"><ph name="COUNT" /> من هذا الموقع</translation>
<translation id="5275973617553375938">‏الملفات المستردة من Google Drive</translation>
<translation id="527605719918376753">تجاهل علامة التبويب</translation>
<translation id="527605982717517565">السماح بتشغيل جافا سكريبت على الموقع <ph name="HOST" /> دومًا</translation>
@@ -3073,6 +3087,7 @@
<translation id="5328285148748012771">‏يمكنك الدخول إلى جميع تطبيقاتك من هذا المشغِّل المفيد. كما يمكنك تشغيل الألعاب ودردشة الفيديو والاستماع إلى الموسيقى وتعديل المستندات والحصول على مزيد من التطبيقات من سوق Chrome الإلكتروني.</translation>
<translation id="5329858601952122676">&amp;حذف</translation>
<translation id="5330145655348521461">تم فتح هذه الملفات على جهاز سطح مكتب آخر. يمكنك الانتقال إلى <ph name="USER_NAME" /> (<ph name="MAIL_ADDRESS" />) للاطلاع عليها.</translation>
+<translation id="5331975486040154427">‏جهاز USB-C (المنفذ الخلفي الأيسر)</translation>
<translation id="5332624210073556029">المنطقة الزمنية:</translation>
<translation id="5334142896108694079">ذاكرة التخزين المؤقت للنص البرمجي</translation>
<translation id="533433379391851622">الإصدار المتوقع "<ph name="EXPECTED_VERSION" />"، ولكن الإصدار كان "<ph name="NEW_ID" />".</translation>
@@ -3119,6 +3134,7 @@
<translation id="539755880180803351">إضافة تعليق توضيحي لنماذج الويب باستخدام تنبؤات من نوع حقل الملء التلقائي كنص لعنصر نائب.</translation>
<translation id="5397578532367286026">‏يُمكن للمدير مراجعة الاستخدام والسجل الخاص بهذا المستخدم (<ph name="MANAGER_EMAIL" />) على chrome.com.</translation>
<translation id="5397794290049113714">أنت</translation>
+<translation id="5398824043967640339"><ph name="COUNT" /> من المواقع الأخرى</translation>
<translation id="5399158067281117682">أرقام التعريف الشخصية غير متطابقة.</translation>
<translation id="5400640815024374115">‏شريحة الوحدة النمطية للنظام الأساسي الموثوق به (TPM) معطلة أو غير موجودة.</translation>
<translation id="5402367795255837559">لغة برايل</translation>
@@ -3930,6 +3946,7 @@
<translation id="6575251558004911012">الرجوع إليك عندما يطلب أحد المواقع الدخول إلى الكاميرا (مستحسن)</translation>
<translation id="6581162200855843583">‏رابط Google Drive</translation>
<translation id="6583070985841601920">تم تسجيل الدخول باعتبارك <ph name="USER_EMAIL_ADDRESS" />. عطّل المشرف ميزة المزامنة.</translation>
+<translation id="65832705307647870">تعبئة مسبقة لصفحة علامة تبويب جديدة بالمواقع الشائعة.</translation>
<translation id="6584878029876017575">‏التوقيع مدى الحياة لـ Microsoft</translation>
<translation id="6585234750898046415">اختر صورة لعرضها لحسابك في شاشة تسجيل الدخول.</translation>
<translation id="6585283250473596934">جارٍ الدخول إلى الجلسة العامة.</translation>
@@ -4273,6 +4290,7 @@
<translation id="7092106376816104">استثناءات النوافذ المنبثقة</translation>
<translation id="7093866338626856921">تبادل البيانات مع الأجهزة المسماه: <ph name="HOSTNAMES" /></translation>
<translation id="7096082900368329802">هل تريد اكتشاف المزيد من الميزات الرائعة؟</translation>
+<translation id="7098389117866926363">‏جهاز USB-C (المنفذ الأيسر في الخلف)</translation>
<translation id="7100897339030255923"><ph name="COUNT" /> من العناصر المحددة</translation>
<translation id="7106346894903675391">شراء المزيد من السعة التخزينية...</translation>
<translation id="7108338896283013870">إخفاء</translation>
@@ -5049,6 +5067,7 @@
<translation id="8190193592390505034">جارٍ الاتصال بـ <ph name="PROVIDER_NAME" /></translation>
<translation id="8191230140820435481">إدارة التطبيقات والإضافات والمظاهر</translation>
<translation id="8191453843330043793">‏محلل وكيل V8</translation>
+<translation id="8199491812735365610">اختيار حساب لتسجيل الدخول</translation>
<translation id="8200772114523450471">استئناف</translation>
<translation id="8202160505685531999">يُرجى إعادة إدخال كلمة المرور لتحديث ملف <ph name="DEVICE_TYPE" /> الشخصي.</translation>
<translation id="8204086856545141093">حظرت إحدى السياسات الطلبات المقدمة إلى الخادم.</translation>
@@ -5179,6 +5198,7 @@
<translation id="8381977081675353473">السلوفاكية</translation>
<translation id="8382645631174981738">تم تثبيت <ph name="EXTENSION_NAME" /> عن بُعد</translation>
<translation id="8382913212082956454">نسخ عنوان البريد الإل&amp;كتروني</translation>
+<translation id="8384113940676655504">‏يُمكن إعداد القفل الذكي الذي يسمح لـ Chromebook باكتشاف الهواتف عبر Bluetooth منخفض الطاقة لإلغاء قفل Chromebook عندما يكون الهاتف قريبًا منه.</translation>
<translation id="8390029840652165810">الرجاء التأكد من عمل اتصال الشبكة وإذا استمرت المشكلة، فالرجاء الخروج وإعادة تسجيل الدخول مرة أخرى لتحديث بيانات الاعتماد.</translation>
<translation id="8390445751804042000">لتمكين تنشيط الجهاز استنادًا إلى استلام بعض حزم الشبكة.</translation>
<translation id="8390449457866780408">الخادم غير متاح.</translation>
@@ -5265,6 +5285,7 @@
<translation id="8509646642152301857">أخفق تنزيل قاموس التدقيق الإملائي.</translation>
<translation id="8512476990829870887">إنهاء العملية</translation>
<translation id="851263357009351303">السماح للموقع <ph name="HOST" /> بعرض الصور دومًا</translation>
+<translation id="8513191386157529469">يجري "<ph name="CLIENT_NAME" />" تصحيح المتصفح هذا.</translation>
<translation id="8513974249124254369">‏تم تمكين ChromeVox (التعليقات المنطوقة). يمكنك الضغط على Ctrl+Alt+Z لتعطيلها.</translation>
<translation id="8515737884867295000">أخفقت المصادقة استنادًا إلى الشهادة</translation>
<translation id="8518865679229538285">أسلوب الإدخال بالتاميلية (آلة كاتبة)</translation>
@@ -5384,6 +5405,7 @@
<translation id="8677039480012021122">مسح البيانات وفصل</translation>
<translation id="8677212948402625567">تصغير الكل...</translation>
<translation id="8678648549315280022">إدارة إعدادات التنزيل...</translation>
+<translation id="8680251145628383637">‏سجّل الدخول للحصول على الإشارات المرجعية، والسجل، وكلمات المرور، والإعدادات الأخرى على جميع أجهزتك. سيتم أيضًا تسجيل دخولك تلقائيًا إلى خدمات Google.</translation>
<translation id="8680536109547170164"><ph name="QUERY" />، إجابة، <ph name="ANSWER" /></translation>
<translation id="8680787084697685621">تفاصيل تسجيل الدخول إلى الحساب قديمة.</translation>
<translation id="8684255857039823328">تم حفظ كلمة المرور. يمكنك الوصول إلى كلمات المرور من أي جهاز في <ph name="MANAGEMENT_LINK" /></translation>
@@ -5439,6 +5461,7 @@
<translation id="874420130893181774">‏أسلوب إدخال Pinyin التقليدي</translation>
<translation id="8744525654891896746">تحديد صورة شخصية لهذا المستخدم الذي يخضع للإشراف</translation>
<translation id="8744641000906923997">Romaji</translation>
+<translation id="8744959718895556609">اختيار حساب من <ph name="LINK_TEXT" /></translation>
<translation id="8749863574775030885">‏الدخول إلى أجهزة USB من مورد غير معروف</translation>
<translation id="8754200782896249056">‏&lt;p&gt;عند تشغيل <ph name="PRODUCT_NAME" /> من خلال بيئة معتمدة لسطح المكتب، سيتم استخدام إعدادات الخادم الوكيل للنظام. ومع ذلك، يحتمل إما أن يكون نظامك غير مدعم أو أنه ربما حدثت مشكلة أثناء تشغيل تهيئة نظامك.&lt;/p&gt;
@@ -5556,6 +5579,7 @@
<translation id="8933960630081805351">إ&amp;ظهار في الباحث</translation>
<translation id="8934732568177537184">متابعة</translation>
<translation id="8938356204940892126">توقفت</translation>
+<translation id="8938800817013097409">‏جهاز USB-C (المنفذ الأيمن في الخلف)</translation>
<translation id="8940081510938872932">يجري الكمبيوتر الكثير من المهام في الوقت الحالي. أعد المحاولة لاحقًا.</translation>
<translation id="8941173171815156065">إلغاء الإذن "<ph name="PERMISSION" />"</translation>
<translation id="8941248009481596111">إن اتصالك بهذا الموقع له خصوصية.</translation>
diff --git a/chromium/chrome/app/resources/generated_resources_bg.xtb b/chromium/chrome/app/resources/generated_resources_bg.xtb
index e8d158df773..36593faf38d 100644
--- a/chromium/chrome/app/resources/generated_resources_bg.xtb
+++ b/chromium/chrome/app/resources/generated_resources_bg.xtb
@@ -135,6 +135,8 @@
<translation id="1178581264944972037">Пауза</translation>
<translation id="1179803038870941185"><ph name="URL" /> иска да получи пълен контрол над MIDI устройствата ви.</translation>
<translation id="1181037720776840403">Премахване</translation>
+<translation id="11814323404622888">"&gt;
+Устройство с USB-C (задният десен порт)</translation>
<translation id="1183083053288481515">Използвате предоставен от администратора сертификат</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>
@@ -328,6 +330,7 @@
<translation id="1468038450257740950">WebGL не се поддържа.</translation>
<translation id="1470719357688513792">Новите настройки за „бисквитките“ ще влязат в сила след презареждането на страницата.</translation>
<translation id="14720830734893704">Активирайте поддръжката за виртуална клавиатура.</translation>
+<translation id="1474079335130556426">Активиране на режима на заден план за приложния програмен интерфейс (API) за насочени съобщения. Това дава възможност на Chrome да продължи да работи след затварянето на последния прозорец и да започне да се изпълнява при стартиране на операционната система, ако този API го изисква.</translation>
<translation id="1474339897586437869">Файлът „<ph name="FILENAME" />“ не бе качен. Нямате достатъчно свободно място в Google Диск.</translation>
<translation id="1476503841242751994">{COUNT,plural, =1{1 парола}other{# пароли}}</translation>
<translation id="1476949146811612304">Задайте коя търсеща машина да се използва при търсене от <ph name="BEGIN_LINK" />полето за всичко<ph name="END_LINK" />.</translation>
@@ -649,6 +652,7 @@
<translation id="1918141783557917887">&amp;По-малък</translation>
<translation id="192144045824434199">Активирайте панелните прозорци, които се отварят извън рамката на браузъра. Ако опцията не е активирана, при опитите за отваряне на панел вместо него ще се изведе изскачащ прозорец. Настройката винаги е активирана в ранния и в канала за програмисти.</translation>
<translation id="1921584744613111023"><ph name="DPI" /> точки на инч</translation>
+<translation id="1921986354447415460">Турска клавиатура от тип „F“</translation>
<translation id="1923786009776354244">Активиране на поддръжката за заглавка за произхода на WebRTC съобщенията през STUN.</translation>
<translation id="1926741348654461781">Активиране на офлайн страниците</translation>
<translation id="1929546189971853037">Да чете историята на сърфирането ви на всички устройства, на които сте влезли в профила си</translation>
@@ -847,6 +851,7 @@
<translation id="2231990265377706070">Удивителен знак</translation>
<translation id="2232876851878324699">Файлът съдържаше един сертификат, който не бе импортиран:</translation>
<translation id="2233502537820838181">&amp;Още информация</translation>
+<translation id="2233587473672843170">Показване на популярни сайтове в новия раздел в браузъра</translation>
<translation id="223714078860837942">Ако страница не е указала изрично правило за препращащия URL адрес, задаването на този флаг ще намали количеството информация в заглавката „referer“ при заявки от друг източник.</translation>
<translation id="2238379619048995541">Данни за състоянието на активност</translation>
<translation id="2239921694246509981">Добавяне на контролиран човек</translation>
@@ -922,6 +927,7 @@
<translation id="2326606747676847821">„Инкогнито“</translation>
<translation id="2326931316514688470">&amp;Презареждане на приложението</translation>
<translation id="2327492829706409234">Активиране на приложението</translation>
+<translation id="2329597144923131178">Влезте в профила си и получете своите отметки, история, пароли и др. настройки на всички у-ва.</translation>
<translation id="2332131598580221120">Преглед в магазина</translation>
<translation id="2332742915001411729">Възстановяване на настройката по подразбиране</translation>
<translation id="2335122562899522968">Тази страница задава „бисквитки“.</translation>
@@ -1310,6 +1316,7 @@ http://www.chromium.org/chromium-os/how-tos-and-troubleshooting/debugging-featur
<translation id="2838379631617906747">Инсталира се</translation>
<translation id="2841837950101800123">Доставчик</translation>
<translation id="2843806747483486897">Промяна на действието по подразбиране...</translation>
+<translation id="2844169650293029770">Устройство с USB-C (предният ляв порт)</translation>
<translation id="2845382757467349449">Непрекъснато показване на лентата на отметките</translation>
<translation id="2846816712032308263">Активира бързото затваряне на раздели/прозорци – изпълнява js манипулатора onunload на раздела отделно от графичния потребителски интерфейс.</translation>
<translation id="284970761985428403"><ph name="ASCII_NAME" /> (<ph name="UNICODE_NAME" />)</translation>
@@ -1374,6 +1381,7 @@ http://www.chromium.org/chromium-os/how-tos-and-troubleshooting/debugging-featur
<translation id="2923469375796950815">Деактивиране на новото разширение за разпакетиране на ZIP файлове.</translation>
<translation id="2924296707677495905">Транслитерация (namaskaram → ನಮಸ್ಕಾರ)</translation>
<translation id="2925966894897775835">Електронни таблици</translation>
+<translation id="2927017729816812676">Хранилище за кеш</translation>
<translation id="2927657246008729253">Промяна...</translation>
<translation id="2928526264833629376">Напред към Hangouts</translation>
<translation id="2930644991850369934">Възникна проблем при изтеглянето на образа за възстановяване. Връзката с мрежата прекъсна.</translation>
@@ -1714,6 +1722,7 @@ http://www.chromium.org/chromium-os/how-tos-and-troubleshooting/debugging-featur
<translation id="3396331542604645348">Избраният принтер не е налице или не е инсталиран правилно. Проверете принтера си или опитайте да изберете друг.</translation>
<translation id="3399597614303179694">Македонска клавиатура</translation>
<translation id="340013220407300675">Възможно е извършители на атака да опитват да откраднат ваша информация от <ph name="BEGIN_BOLD" /><ph name="SITE" /><ph name="END_BOLD" /> (например пароли, съобщения или данни за кредитни карти).</translation>
+<translation id="3401130144947259741">Ако настройката е активирана, проследяванията ще се експортират към функцията за проследяване на събития за Windows (ETW), след което ще могат да се записват чрез инструменти като UIForETW или Xperf.</translation>
<translation id="340282674066624"><ph name="DOWNLOAD_RECEIVED" />, <ph name="TIME_LEFT" /></translation>
<translation id="3406605057700382950">&amp;Показване на лентата на отметките</translation>
<translation id="3412265149091626468">Преминаване към избраното</translation>
@@ -1872,6 +1881,7 @@ http://www.chromium.org/chromium-os/how-tos-and-troubleshooting/debugging-featur
<translation id="3603385196401704894">Канадска (френски) клавиатура</translation>
<translation id="3603622770190368340">Получаване на мрежов сертификат</translation>
<translation id="3605780360466892872">Костюмар</translation>
+<translation id="3606220979431771195">Турски (тип „F“)</translation>
<translation id="3608454375274108141">F10</translation>
<translation id="3608576286259426129">Визуализация на потребителското изображение</translation>
<translation id="3609138628363401169">Този сървър не поддържа разширението за предоговаряне на TLS.</translation>
@@ -2388,6 +2398,7 @@ http://www.chromium.org/chromium-os/how-tos-and-troubleshooting/debugging-featur
<translation id="4321136812570927563">{NUM_DOWNLOAD,plural, =1{Продължаване на изтеглянето}other{Продължаване на изтеглянията}}</translation>
<translation id="4321179778687042513">ctrl</translation>
<translation id="4322394346347055525">Затваряне на другите раздели</translation>
+<translation id="4325378361067528777">Активиране на режима на заден план за приложния програмен интерфейс (API) за насочени съобщения</translation>
<translation id="4326952458285403282">Деактивира използването на експерименталната система DirectWrite за изобразяване на шрифтове.</translation>
<translation id="4326999707196471878">Основани на изгледи с инструментариум диалогови прозорци в браузъра.</translation>
<translation id="4330406155931244378">Активиране на многоезичната проверка на правописа</translation>
@@ -2919,6 +2930,8 @@ http://www.chromium.org/chromium-os/how-tos-and-troubleshooting/debugging-featur
<translation id="5148652308299789060">Деактивиране на растеризатора на триизмерен софтуер</translation>
<translation id="5150254825601720210">Име на SSL сървър за сертификат на Netscape</translation>
<translation id="5151034238407558331">За съжаление при този търговец Google Payments може да се ползва само от купувачи с адрес в Съединените щати. Ако сте жител на Съединените щати, моля, |променете домашния си адрес в Payments| или платете, без да използвате услугата.</translation>
+<translation id="5151639798712723370">"&gt;
+Устройство с USB-C (предният десен порт)</translation>
<translation id="5152451685298621771">(Профил за деца)</translation>
<translation id="5154108062446123722">Разширени настройки за „<ph name="PRINTING_DESTINATION" />“</translation>
<translation id="5154176924561037127">F8</translation>
@@ -3017,6 +3030,7 @@ PDF файл или в Google Диск.</translation>
<translation id="5271247532544265821">Превключване на режимите за опростен/традиционен китайски</translation>
<translation id="5271549068863921519">Запазване на паролата</translation>
<translation id="5273628206174272911">Експериментално придвижване в историята при хоризонтално превъртане до края.</translation>
+<translation id="5275795814002959418"><ph name="COUNT" /> от този сайт</translation>
<translation id="5275973617553375938">Възстановени от Google Диск файлове</translation>
<translation id="527605719918376753">Спиране на звука на раздела</translation>
<translation id="527605982717517565">Да се разреши на <ph name="HOST" /> винаги да изпълнява JavaScript</translation>
@@ -3063,6 +3077,7 @@ PDF файл или в Google Диск.</translation>
<translation id="5328285148748012771">Осъществявайте достъп до всичките си приложения от този удобен стартов панел. Играйте игри, водете видеоразговори, слушайте музика, редактирайте документи или изтегляйте още приложения от уеб магазина на Chrome.</translation>
<translation id="5329858601952122676">&amp;Изтриване</translation>
<translation id="5330145655348521461">Тези файлове се отвориха на друг работен плот. Преминете към <ph name="USER_NAME" /> (<ph name="MAIL_ADDRESS" />), за да ги прегледате.</translation>
+<translation id="5331975486040154427">Устройство с USB-C (задният ляв порт)</translation>
<translation id="5332624210073556029">Часова зона:</translation>
<translation id="5334142896108694079">Кеш за скриптове</translation>
<translation id="533433379391851622">Очакваната версия е „<ph name="EXPECTED_VERSION" />“, но тя бе „<ph name="NEW_ID" />“.</translation>
@@ -3109,6 +3124,7 @@ PDF файл или в Google Диск.</translation>
<translation id="539755880180803351">Поставя пояснения като заместващ текст към уеб формуляри с предвиждания от тип автоматично попълване в полето.</translation>
<translation id="5397578532367286026">Данните за употребата и историята на този потребител могат да се преглеждат от мениджъра (<ph name="MANAGER_EMAIL" />) на адрес chrome.com.</translation>
<translation id="5397794290049113714">Вие</translation>
+<translation id="5398824043967640339"><ph name="COUNT" /> от други сайтове</translation>
<translation id="5399158067281117682">ПИН кодовете не съвпадат!</translation>
<translation id="5400640815024374115">Чипът на модула за доверена платформа (TPM) е деактивиран или липсва.</translation>
<translation id="5402367795255837559">Брайлово писмо</translation>
@@ -3933,6 +3949,7 @@ PDF файл или в Google Диск.</translation>
<translation id="6575251558004911012">Извеждане на запитване, когато сайт иска достъп до камерата ви (препоръчително)</translation>
<translation id="6581162200855843583">Връзка към Google Диск</translation>
<translation id="6583070985841601920">Влезли сте като <ph name="USER_EMAIL_ADDRESS" />. Синхронизирането е деактивирано от администратора ви.</translation>
+<translation id="65832705307647870">Новият раздел в браузъра е предварително попълнен с популярни сайтове.</translation>
<translation id="6584878029876017575">Подписване на периода на валидност от Microsoft</translation>
<translation id="6585234750898046415">Изберете снимка, която да се показва за профила ви на екрана за вход.</translation>
<translation id="6585283250473596934">Влиза се в обществена сесия.</translation>
@@ -4273,6 +4290,7 @@ PDF файл или в Google Диск.</translation>
<translation id="7092106376816104">Изключения за изскачащи прозорци</translation>
<translation id="7093866338626856921">Обмен на данни с устройствата със следните имена: <ph name="HOSTNAMES" /></translation>
<translation id="7096082900368329802">Искате да откриете още невероятни функции?</translation>
+<translation id="7098389117866926363">Устройство с USB-C (левият порт на гърба)</translation>
<translation id="7100897339030255923"><ph name="COUNT" /> избрани елемента</translation>
<translation id="7106346894903675391">Купуване на още хранилище...</translation>
<translation id="7108338896283013870">Скриване</translation>
@@ -5041,6 +5059,7 @@ PDF файл или в Google Диск.</translation>
<translation id="8190193592390505034">Осъществява се връзка с: <ph name="PROVIDER_NAME" /></translation>
<translation id="8191230140820435481">Управление на вашите приложения, разширения и теми</translation>
<translation id="8191453843330043793">Основано на V8 преобразуване на прокси сървъри</translation>
+<translation id="8199491812735365610">Избиране на профил за вход</translation>
<translation id="8200772114523450471">Възобновяване</translation>
<translation id="8202160505685531999">Моля, въведете отново паролата си, за да актуализирате потребителския си профил за <ph name="DEVICE_TYPE" />.</translation>
<translation id="8204086856545141093">Заявките към сървъра са блокирани от правило.</translation>
@@ -5173,6 +5192,7 @@ PDF файл или в Google Диск.</translation>
<translation id="8381977081675353473">словашка</translation>
<translation id="8382645631174981738">Разширението <ph name="EXTENSION_NAME" /> бе инсталирано отдалечено</translation>
<translation id="8382913212082956454">Копиране на име&amp;йл адреса</translation>
+<translation id="8384113940676655504">Активира настройка за Smart Lock, която позволява на Chromebook да открива телефони през Bluetooth с нисък разход на енергия, за да се отключва, когато са наблизо.</translation>
<translation id="8390029840652165810">Моля, уверете се, че мрежовата ви връзка работи, и ако проблемът не се отстрани, излезте от профила си и влезте отново, за да опресните идентификационните си данни.</translation>
<translation id="8390445751804042000">Активира излизането на устройството от спящ режим при получаване на някои мрежови пакети.</translation>
<translation id="8390449457866780408">Няма достъп до сървъра.</translation>
@@ -5259,6 +5279,7 @@ PDF файл или в Google Диск.</translation>
<translation id="8509646642152301857">Изтеглянето на речника за проверка на правописа не бе успешно.</translation>
<translation id="8512476990829870887">Прекратяване на процеса</translation>
<translation id="851263357009351303">Да се разреши на <ph name="HOST" /> винаги да показва изображения</translation>
+<translation id="8513191386157529469"><ph name="CLIENT_NAME" /> отстранява грешките в този браузър.</translation>
<translation id="8513974249124254369">Функцията ChromeVox (обратна връзка с говор) е активирана. Натиснете „Ctrl+Alt+Z“, за да я деактивирате.</translation>
<translation id="8515737884867295000">Удостоверяването на базата на сертификата не бе успешно</translation>
<translation id="8518865679229538285">Метод за въвеждане на тамилски (пишеща машина)</translation>
@@ -5378,6 +5399,7 @@ PDF файл или в Google Диск.</translation>
<translation id="8677039480012021122">Изчистване на данните и прекратяване на връзката</translation>
<translation id="8677212948402625567">Свиване на всички...</translation>
<translation id="8678648549315280022">Управление на настройките за изтегляне...</translation>
+<translation id="8680251145628383637">Влезте в профила си, за да получите своите отметки, история, пароли и други настройки на всичките си устройства. Също така ще влезете автоматично в използваните от вас услуги на Google.</translation>
<translation id="8680536109547170164">„<ph name="QUERY" />“, отговор: „<ph name="ANSWER" />“</translation>
<translation id="8680787084697685621">Данните за вход в профила ви не са актуални.</translation>
<translation id="8684255857039823328">Паролата е запазена. Осъществявайте достъп до паролите си от всяко устройство на адрес <ph name="MANAGEMENT_LINK" />.</translation>
@@ -5433,6 +5455,7 @@ PDF файл или в Google Диск.</translation>
<translation id="874420130893181774">Метод на въвеждане за традиционен пинин</translation>
<translation id="8744525654891896746">Изберете аватар за този контролиран потребител</translation>
<translation id="8744641000906923997">Ромаджи</translation>
+<translation id="8744959718895556609">Избиране на профил от <ph name="LINK_TEXT" /></translation>
<translation id="8749863574775030885">Достъп до USB устройства от неизвестен доставчик</translation>
<translation id="8754200782896249056">&lt;p&gt;Когато изпълнявате <ph name="PRODUCT_NAME" /> в поддържана среда на компютър, ще се използват системните настройки за прокси сървър. Но системата ви или не се поддържа, или е възникнал проблем при стартирането на системната конфигурация.&lt;/p&gt;
@@ -5553,6 +5576,7 @@ PDF файл или в Google Диск.</translation>
<translation id="8933960630081805351">&amp;Показване във Finder</translation>
<translation id="8934732568177537184">Напред</translation>
<translation id="8938356204940892126">Отказвам се</translation>
+<translation id="8938800817013097409">Устройство с USB-C (десният порт на гърба)</translation>
<translation id="8940081510938872932">Компютърът ви извършва твърде много неща в момента. Опитайте отново по-късно.</translation>
<translation id="8941173171815156065">Отмяна на разрешението „<ph name="PERMISSION" />“</translation>
<translation id="8941248009481596111">Връзката ви с този сайт е частна.</translation>
diff --git a/chromium/chrome/app/resources/generated_resources_bn.xtb b/chromium/chrome/app/resources/generated_resources_bn.xtb
index aa24a4f630d..af3699905db 100644
--- a/chromium/chrome/app/resources/generated_resources_bn.xtb
+++ b/chromium/chrome/app/resources/generated_resources_bn.xtb
@@ -136,6 +136,8 @@
<translation id="1178581264944972037">বিরাম</translation>
<translation id="1179803038870941185"><ph name="URL" /> আপনার MIDI ডিভাইসগুলির পূর্ণ নিয়ন্ত্রণ পেতে চায়৷</translation>
<translation id="1181037720776840403">সরান</translation>
+<translation id="11814323404622888">"&gt;
+ USB-C ডিভাইস (ডান দিকের পিছনের পোর্ট)</translation>
<translation id="1183083053288481515">একজন প্রশাসক দ্বারা-সরবরাহ করা শংসাপত্র ব্যবহার করে</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>
@@ -330,6 +332,7 @@
<translation id="1468038450257740950">WebGL সমর্থিত নয়৷</translation>
<translation id="1470719357688513792">পৃষ্ঠা পুনরায় লোড হওয়ার পরে নতুন কুকি সেটিংস প্রভাবিত হবে৷</translation>
<translation id="14720830734893704">ভার্চুয়াল কীবোর্ড সহায়তা সক্ষম করুন৷</translation>
+<translation id="1474079335130556426">পুশ API এর জন্য পটভূমি মোড সক্ষম করুন। সর্বশেষ উইন্ডো বন্ধ হওয়ার পর এটি Chrome কে চালু থাকতে মঞ্জুরি দেয়, এবং পুশ API এর প্রয়োজন মাফিক প্রারম্ভে OS আরম্ভ করতে মঞ্জুরি দেয়।</translation>
<translation id="1474339897586437869">"<ph name="FILENAME" />" আপলোড করা হয়নি। আপনার Google ড্রাইভে পর্যাপ্ত ফাঁকা স্থান নেই।</translation>
<translation id="1476503841242751994">{COUNT,plural, =1{১টি পাসওয়ার্ড}one{#টি পাসওয়ার্ড}other{#টি পাসওয়ার্ড}}</translation>
<translation id="1476949146811612304"><ph name="BEGIN_LINK" />বহূউপযোগী ক্ষেত্র<ph name="END_LINK" />.
@@ -657,6 +660,7 @@
<translation id="1918141783557917887">&amp;ক্ষুদ্রতর</translation>
<translation id="192144045824434199">ব্রাউজার ফ্রেমের বাইরে খোলে এমন প্যানেল উইন্ডো সক্ষম করুন৷ সক্ষমিত না থাকলে প্যানেল খোলার চেষ্টা করা হলে পরিবর্তে একটি পপআপ খুলবে৷ প্যানেল সর্বদা dev ও canary চ্যানেলে সক্ষমিত থাকে৷</translation>
<translation id="1921584744613111023"><ph name="DPI" /> dpi</translation>
+<translation id="1921986354447415460">তুর্কি-এফ কীবোর্ড</translation>
<translation id="1923786009776354244">WebRTC অচেতন মূল হেডারের জন্য সমর্থন সক্ষম করুন৷</translation>
<translation id="1926741348654461781">অফলাইন পৃষ্ঠা সক্ষম করুন</translation>
<translation id="1929546189971853037">আপনার সমস্ত সাইন ইন করা ডিভাইসের ব্রাউজিং ইতিহাস পড়ুন</translation>
@@ -860,6 +864,7 @@
<translation id="2231990265377706070">ব্যখ্যার বিন্দু</translation>
<translation id="2232876851878324699">ফাইলটিতে একটি শংসাপত্র রয়েছে, এটি আমদানি করা হয়নি:</translation>
<translation id="2233502537820838181">&amp;আরো তথ্য</translation>
+<translation id="2233587473672843170">নতুন ট্যাব পৃষ্ঠাতে জনপ্রিয় সাইটগুলি দেখান</translation>
<translation id="223714078860837942">যদি কোনো পৃষ্ঠায একটি স্পষ্ট রেফারার নীতি সেট করা না থাকে, এই পতাকা সেট করলে তা ক্রস-উতৎ অনুরোধগুলির জন্য 'রেফার' হেডারে তথ্য কম করবে৷</translation>
<translation id="2238379619048995541">ফ্রিকোয়েন্সি স্থিতি ডেটা</translation>
<translation id="2239921694246509981">তত্ত্বাবধানে থাকা ব্যক্তিকে যোগ করুন</translation>
@@ -935,6 +940,7 @@ Google ড্রাইভের মধ্যে ফাইলগুলি আপ-
<translation id="2326606747676847821">ছদ্মবেশে যান</translation>
<translation id="2326931316514688470">&amp;অ্যাপ্লিকেশান পুনরায় লোড করুন</translation>
<translation id="2327492829706409234">অ্যাপ্লিকেশন সক্ষম করুন</translation>
+<translation id="2329597144923131178">আপনার সকল ডিভাইসে আপনার বুকমার্ক, ইতিহাস, পাসওয়ার্ড এবং অন্যান্য সেটিংস পেতে সাইন ইন করুন।</translation>
<translation id="2332131598580221120">দোকানে দেখুন</translation>
<translation id="2332742915001411729">ডিফল্টে পুনরায় সেট করুন</translation>
<translation id="2335122562899522968">এই পৃষ্ঠাটি কুকি সেট করে৷</translation>
@@ -1324,6 +1330,7 @@ Google ড্রাইভের মধ্যে ফাইলগুলি আপ-
<translation id="2838379631617906747">ইনস্টল হচ্ছে</translation>
<translation id="2841837950101800123">সরবরাহকারী</translation>
<translation id="2843806747483486897">ডিফল্ট পরিবর্তন করুন ...</translation>
+<translation id="2844169650293029770">USB-C ডিভাইস (বাম দিকের সামনের পোর্ট)</translation>
<translation id="2845382757467349449">সর্বদা বুকমার্কস দণ্ড দেখান</translation>
<translation id="2846816712032308263">দ্রুত ট্যাব/উইন্ডো বন্ধ করা সক্ষম করে - GUI এর ট্যাবের অনআনলোড js হ্যান্ডেলার স্বাধীনভাবে চালায়৷</translation>
<translation id="284970761985428403"><ph name="ASCII_NAME" /> (<ph name="UNICODE_NAME" />)</translation>
@@ -1391,6 +1398,7 @@ Google ড্রাইভের মধ্যে ফাইলগুলি আপ-
<translation id="2923469375796950815">নতুন ZIP unpacker অক্ষম করুন৷</translation>
<translation id="2924296707677495905">লিপ্যন্তরকরণ (namaskaram → ನಮಸ್ಕಾರ)</translation>
<translation id="2925966894897775835">পত্রকগুলি</translation>
+<translation id="2927017729816812676">ক্যাশে সঞ্চয় স্থান</translation>
<translation id="2927657246008729253">পরিবর্তন...</translation>
<translation id="2928526264833629376">Hangouts এ অবিরত থাকুন</translation>
<translation id="2930644991850369934">পুনরুদ্ধার চিত্র ডাউনলোড করার সময় একটি সমস্যা হয়েছে৷ নেটওয়ার্ক সংযোগ বিচ্ছিন্ন হয়েছে৷</translation>
@@ -1729,6 +1737,7 @@ Google ড্রাইভের মধ্যে ফাইলগুলি আপ-
<translation id="3396331542604645348">নির্বাচিত মুদ্রকটি উপলব্ধ নেই বা সঠিকভাবে ইনস্টল হওয়া নেই৷ আপনার মুদ্রকটি পরীক্ষা করুন বা অন্য একটি মুদ্রক নির্বাচনের চেষ্টা করুন৷</translation>
<translation id="3399597614303179694">ম্যাসেডোনীয় কীবোর্ড</translation>
<translation id="340013220407300675">আক্রমণকারীরা <ph name="BEGIN_BOLD" /> <ph name="SITE" /> <ph name="END_BOLD" /> (যেমন, পাসওয়ার্ড, বার্তা বা ক্রেডিট কার্ড) থেকে আপনার তথ্য চুরি করার চেষ্টা করতে পারে।</translation>
+<translation id="3401130144947259741">সক্ষম করা হলে, ট্রেস ইভেন্টগুলি উইন্ডোজ (ETW) এর জন্য ইভেন্ট ট্রেসিংয়ে রপ্তানি করা হয় এবং UIForETW বা Xperf এর মতো সরঞ্জাম দ্বারা ক্যাপচার করা যায়।</translation>
<translation id="340282674066624"><ph name="DOWNLOAD_RECEIVED" />, <ph name="TIME_LEFT" /></translation>
<translation id="3406605057700382950">&amp;বুকমার্ক দণ্ড দেখান</translation>
<translation id="3412265149091626468">নির্বাচনে যান</translation>
@@ -1885,6 +1894,7 @@ Google ড্রাইভের মধ্যে ফাইলগুলি আপ-
<translation id="3603385196401704894">কানাডীয় ফরাসি</translation>
<translation id="3603622770190368340">নেটওয়ার্ক শংসাপত্র প্রাপ্ত করুন</translation>
<translation id="3605780360466892872">বটনডাউন</translation>
+<translation id="3606220979431771195">তুর্কি-এফ</translation>
<translation id="3608454375274108141">F10</translation>
<translation id="3608576286259426129">ব্যবহারকারীর ছবির পূর্বদৃশ্য</translation>
<translation id="3609138628363401169">সার্ভারটি TLS পুনঃনেগোশিয়েশান এক্সটেনশান সমর্থন করে না৷</translation>
@@ -2403,6 +2413,7 @@ Google ড্রাইভের মধ্যে ফাইলগুলি আপ-
<translation id="4321136812570927563">{NUM_DOWNLOAD,plural, =1{ডাউনলোড চালিয়ে যান}one{ডাউনলোড চালিয়ে যান}other{ডাউনলোড চালিয়ে যান}}</translation>
<translation id="4321179778687042513">ctrl</translation>
<translation id="4322394346347055525">অন্যান্য ট্যাব বন্ধ করুন</translation>
+<translation id="4325378361067528777">পুশ API পটভূমি মোড সক্ষম করুন</translation>
<translation id="4326952458285403282">পরীক্ষামূলক DirectWrite হরফ রেন্ডারিং সিস্টেম ব্যবহার করতে সক্ষম করে।</translation>
<translation id="4326999707196471878">টুলকিট-দৃশ্য ব্রাউজার ডায়ালগ।</translation>
<translation id="4330406155931244378">বহুভাষিক বানান-পরিক্ষক সক্ষম করুন</translation>
@@ -2936,6 +2947,8 @@ Google ড্রাইভের মধ্যে ফাইলগুলি আপ-
<translation id="5148652308299789060">3D সফ্টওয়্যার রাস্টেরাইজার অক্ষম করুন</translation>
<translation id="5150254825601720210">Netscape শংসাপত্র SSL সার্ভার নাম</translation>
<translation id="5151034238407558331">দুর্ভাগ্যক্রমে, শুধুমাত্র মার্কিন ঠিকানা রয়েছে এমন ক্রেতাই এই বণিকের সাথে Google Payments ব্যবহার করতে পারবেন। আপনি মার্কিন নাগরিক হলে দয়া করে |Google Payments এর সাথে আপনার বাড়ির ঠিকানা পরিবর্তন করুন| অথবা Google Payments ব্যবহার না করে অর্থপ্রদান করুন।</translation>
+<translation id="5151639798712723370">"&gt;
+ USB-C ডিভাইস (ডান দিকের সামনের পোর্ট)</translation>
<translation id="5152451685298621771">(বাচ্চাদের জন্য অ্যাকাউন্ট)</translation>
<translation id="5154108062446123722"><ph name="PRINTING_DESTINATION" /> এর উন্নত সেটিংস</translation>
<translation id="5154176924561037127">F8</translation>
@@ -3034,6 +3047,7 @@ Google ড্রাইভের মধ্যে ফাইলগুলি আপ-
<translation id="5271247532544265821">সরলীকৃত/ঐতিহ্যশীল চীনা মোড টগল করুন</translation>
<translation id="5271549068863921519">পাসওয়ার্ড সংরক্ষণ করুন</translation>
<translation id="5273628206174272911">অনুভূমিক ওভারস্ক্রোলের প্রতিক্রিয়াতে পরীক্ষামূলক ইতিহাস নেভিগেশন৷</translation>
+<translation id="5275795814002959418">এই সাইট থেকে <ph name="COUNT" />টি</translation>
<translation id="5275973617553375938">Google ড্রাইভ থেকে উদ্ধার করা ফাইলগুলি</translation>
<translation id="527605719918376753">ট্যাব নিঃশব্দ করুন</translation>
<translation id="527605982717517565">সর্বদা <ph name="HOST" />-এ JavaScript মঞ্জুর করুন</translation>
@@ -3080,6 +3094,7 @@ Google ড্রাইভের মধ্যে ফাইলগুলি আপ-
<translation id="5328285148748012771">এই সহজে ব্যবহারযোগ্য লঞ্চারটির মাধ্যমে আপনার সমস্ত অ্যাপ্লিকেশান অ্যাক্সেস করুন৷ গেম খেলুন, ভিডিও চ্যাট করুন, সঙ্গীত শুনুন, দস্তাবেজের সম্পাদনা করুন, অথবা Chrome ওয়েব দোকান থেকে আরো অ্যাপ্লিকেশান পান৷</translation>
<translation id="5329858601952122676">&amp;মুছুন</translation>
<translation id="5330145655348521461">এই ফাইলগুলি একটি আলাদা ডেস্কটপে খোলা রয়েছে৷ এটিকে দেখতে <ph name="USER_NAME" /> (<ph name="MAIL_ADDRESS" />) এ সরান৷</translation>
+<translation id="5331975486040154427">USB-C ডিভাইস (বাম দিকের পিছনের পোর্ট)</translation>
<translation id="5332624210073556029">সময় অঞ্চল:</translation>
<translation id="5334142896108694079">স্ক্রিপ্ট ক্যাশে</translation>
<translation id="533433379391851622">"<ph name="EXPECTED_VERSION" />" সংস্করণটি প্রত্যাশিত, কিন্তু সংস্করণটি হল "<ph name="NEW_ID" />"৷</translation>
@@ -3126,6 +3141,7 @@ Google ড্রাইভের মধ্যে ফাইলগুলি আপ-
<translation id="539755880180803351">প্লেসহোডার পাঠ রূপে স্বতঃপূর্ণ ক্ষেত্র প্রকার পূর্বানুমান সহ ওয়েব ফর্ম টীকা যোগ করে৷</translation>
<translation id="5397578532367286026">chrome.com এ পরিচালক (<ph name="MANAGER_EMAIL" />) এই ব্যবহারকারীর ব্যবহার এবং ইতিহাস পর্যালোচনা করতে পারেন৷</translation>
<translation id="5397794290049113714">আপনি</translation>
+<translation id="5398824043967640339">অন্যান্য সাইট থেকে <ph name="COUNT" />টি</translation>
<translation id="5399158067281117682">PINগুলি মেলে না!</translation>
<translation id="5400640815024374115">ট্রাস্টেড প্ল্যাটফর্ম মডিউল (TPM) চিপটি অক্ষম বা অনুপস্থিত আছে৷</translation>
<translation id="5402367795255837559">ব্রেইল</translation>
@@ -3945,6 +3961,7 @@ Google ড্রাইভের মধ্যে ফাইলগুলি আপ-
<translation id="6575251558004911012">যখন কোনো একটি সাইট আপনার ক্যামেরা অ্যাক্সেস করতে চায় তখন জিজ্ঞাসা করবে (প্রস্তাবিত)</translation>
<translation id="6581162200855843583">Google ড্রাইভ লিঙ্ক</translation>
<translation id="6583070985841601920"><ph name="USER_EMAIL_ADDRESS" /> হিসাবে সাইন ইন করেছেন৷ আপনার প্রশাসকের দ্বারা সিঙ্ক অক্ষম করা হয়েছে৷</translation>
+<translation id="65832705307647870">নতুন ট্যাব পৃষ্ঠাতে আগে থেকেই জনপ্রিয় সাইটগুলি রাখুন</translation>
<translation id="6584878029876017575">Microsoft Lifetime Signing</translation>
<translation id="6585234750898046415">সাইন-ইন স্ক্রিনে আপনার অ্যাকাউন্টের জন্য প্রদর্শন করাতে একটি চিত্র চয়ন করুন৷</translation>
<translation id="6585283250473596934">সর্বজনীন সেশন ঢোকানো হচ্ছে৷</translation>
@@ -4291,6 +4308,7 @@ Google ড্রাইভের মধ্যে ফাইলগুলি আপ-
<translation id="7092106376816104">পপ-আও ব্যতিক্রম</translation>
<translation id="7093866338626856921"><ph name="HOSTNAMES" />: নামের্ ডিভাইসসমূহের সাথে ডেটা বিনিময় করুন</translation>
<translation id="7096082900368329802">আরো অসাধারণ সব বৈশিষ্ট্য আবিষ্কার করতে চান?</translation>
+<translation id="7098389117866926363">USB-C ডিভাইস (পিছনের বাম পোর্ট)</translation>
<translation id="7100897339030255923"><ph name="COUNT" />টি আইটেম নির্বাচিত</translation>
<translation id="7106346894903675391">আরো সঞ্চয়স্থান কিনুন...</translation>
<translation id="7108338896283013870">লুকান</translation>
@@ -5069,6 +5087,7 @@ Google ড্রাইভের মধ্যে ফাইলগুলি আপ-
<translation id="8190193592390505034"><ph name="PROVIDER_NAME" />-তে সংযুক্ত হচ্ছে</translation>
<translation id="8191230140820435481">আপনার অ্যাপ্লিকেশন, এক্সটেনশন, এবং থিম পরিচালনা করুন</translation>
<translation id="8191453843330043793">V8 প্রক্সী সমাধানকারী</translation>
+<translation id="8199491812735365610">লগইন করার জন্য একটি অ্যাকাউন্ট চয়ন করুন</translation>
<translation id="8200772114523450471">পুনঃসূচনা</translation>
<translation id="8202160505685531999">অাপনার <ph name="DEVICE_TYPE" /> প্রোফাইল আপডেট করার জন্য দয়া করে পুনরায় আপনার পাসওয়ার্ড লিখুন।</translation>
<translation id="8204086856545141093">সার্ভারে অনুরোধগুলি একটি নীতির মাধ্যমে অবরুদ্ধ করা আছে৷</translation>
@@ -5200,6 +5219,7 @@ Google ড্রাইভের মধ্যে ফাইলগুলি আপ-
<translation id="8381977081675353473">স্লোভাকীয়</translation>
<translation id="8382645631174981738"><ph name="EXTENSION_NAME" /> দূর থেকে ইনস্টল করা হয়েছে</translation>
<translation id="8382913212082956454">&amp;ইমেল ঠিকানা কপি করুন</translation>
+<translation id="8384113940676655504">Smart Lock সেটিং সক্ষম করে যা ফোনটি Chromebook টির নিকটে থাকলে সেটিকে আনলক করার জন্য Chromebook কে Bleutooth কম শক্তির মাধ্যমে ফোনগুলি আবিষ্কার করতে দেয়।</translation>
<translation id="8390029840652165810">আপনার নেটওয়ার্ক সংযোগ কাজ করছে কি না নিশ্চিত করুন এবং সমস্যা থেকে গেলে, আপনার শংসাপত্র রিফ্রেশ করতে দয়া করে সাইন আউট করুন ও আবার সাইন ইন করুন৷</translation>
<translation id="8390445751804042000">কিছু নেটওয়ার্ক প্যাকেট প্রাপ্তির উপর ভিত্তি করে ডিভাইসকে জাগ্রত করতে সক্ষম করে৷</translation>
<translation id="8390449457866780408">সার্ভার অনুপলব্ধ৷</translation>
@@ -5286,6 +5306,7 @@ Google ড্রাইভের মধ্যে ফাইলগুলি আপ-
<translation id="8509646642152301857">বানান পরীক্ষক অভিধান ডাউনলোড ব্যর্থ হয়েছে৷</translation>
<translation id="8512476990829870887">প্রক্রিয়া সমাপ্ত করুন</translation>
<translation id="851263357009351303">চিত্রগুলি দেখানোর জন্য সর্বদা <ph name="HOST" />-কে মঞ্জুরি দিন </translation>
+<translation id="8513191386157529469">"<ph name="CLIENT_NAME" />" এই ট্যাবটিকে ডিবাগ করছে৷</translation>
<translation id="8513974249124254369">ChromeVox (কথ্য প্রতিক্রিয়া) সক্ষম রয়েছে৷ অক্ষম করার জন্য Ctrl+Alt+Z টিপুন৷</translation>
<translation id="8515737884867295000">শংসাপত্র ভিত্তিক প্রমাণীকরণ ব্যর্থ হয়েছে</translation>
<translation id="8518865679229538285">তামিল ইনপুট পদ্ধতি (টাইপরাইটার)</translation>
@@ -5405,6 +5426,7 @@ Google ড্রাইভের মধ্যে ফাইলগুলি আপ-
<translation id="8677039480012021122">ডেটা সাফ করুন এবং সংযোগ বিচ্ছিন্ন করুন</translation>
<translation id="8677212948402625567">সকল সঙ্কোচন করুন...</translation>
<translation id="8678648549315280022">ডাউনলোড সেটিংস পরিচালনা করুন...</translation>
+<translation id="8680251145628383637">আপনার সকল ডিভাইসে আপনার বুকমার্ক, ইতিহাস এবং অন্যান্য সেটিংস পেতে সাইন ইন করুন। এছাড়াও আপনি স্বয়ংক্রিয়ভাবে আপনার Google পরিষেবায় সাইন ইন করবেন।</translation>
<translation id="8680536109547170164"><ph name="QUERY" />, উত্তর, <ph name="ANSWER" /></translation>
<translation id="8680787084697685621">অ্যাকাউন্ট সাইন-ইন বিশদ তারিখ সীমার বাইরে৷</translation>
<translation id="8684255857039823328">পাসওয়ার্ড সংরক্ষিত হয়েছে। এখানে <ph name="MANAGEMENT_LINK" /> গিয়ে যেকোনো ডিভাইস থেকে আপনার পাসওয়ার্ডগুলি অ্যাক্সেস করুন।</translation>
@@ -5460,6 +5482,7 @@ Google ড্রাইভের মধ্যে ফাইলগুলি আপ-
<translation id="874420130893181774">ঐতিহ্যবাহি পিনয়িন ইনপুট পদ্ধতি</translation>
<translation id="8744525654891896746">এই তত্বাবধানে থাকা ব্যবহারকারীর জন্য একটি অবতার নির্বাচন করুন</translation>
<translation id="8744641000906923997">রোমাজি</translation>
+<translation id="8744959718895556609">আপনার <ph name="LINK_TEXT" /> থেকে একটি অ্যাকাউন্ট থেকে চয়ন করুন</translation>
<translation id="8749863574775030885">একটি অজানা বিক্রেতা থেকে USB ডিভাইস অ্যাক্সেস করুন</translation>
<translation id="8754200782896249056">&lt;p&gt;কোন সমর্থিত ডেস্কটপ পরিবেশে <ph name="PRODUCT_NAME" /> চলার সময়, সিস্টেম প্রক্সি সেটিংস ব্যবহার করা হবে৷ যদিও, আপনার সিস্টেম সমর্থিত নয় অথবা আপনার সিস্টেম কনফিগারেশান প্রবর্তন করার সময় একটি সমস্যা হয়েছে৷&lt;/p&gt;
@@ -5577,6 +5600,7 @@ Google ড্রাইভের মধ্যে ফাইলগুলি আপ-
<translation id="8933960630081805351">ফাইন্ডারে &amp;দেখান</translation>
<translation id="8934732568177537184">অবিরত থাকুন</translation>
<translation id="8938356204940892126">আমি হাল ছাড়ছি</translation>
+<translation id="8938800817013097409">USB-C ডিভাইস (পিছনের ডান পোর্ট)</translation>
<translation id="8940081510938872932">আপনার কম্পিউটারটি এই মুহুর্তে অনেকগুলি কাজ করছে৷ পরে আবার চেষ্টা করুন৷</translation>
<translation id="8941173171815156065">অনুমতি '<ph name="PERMISSION" />' প্রত্যাহার করুন</translation>
<translation id="8941248009481596111">এই সাইটে আপনার সংযোগ ব্যক্তিগত।</translation>
diff --git a/chromium/chrome/app/resources/generated_resources_ca.xtb b/chromium/chrome/app/resources/generated_resources_ca.xtb
index 828fbf27aea..36deb836cb8 100644
--- a/chromium/chrome/app/resources/generated_resources_ca.xtb
+++ b/chromium/chrome/app/resources/generated_resources_ca.xtb
@@ -136,6 +136,8 @@
<translation id="1178581264944972037">Pausa</translation>
<translation id="1179803038870941185"><ph name="URL" /> vol obtenir un control total dels vostres dispositius MIDI.</translation>
<translation id="1181037720776840403">Elimina</translation>
+<translation id="11814323404622888">"&gt;
+ Dispositiu USB-C (port posterior dret)</translation>
<translation id="1183083053288481515">S'utilitza un certificat proporcionat per l'administrador.</translation>
<translation id="1183237619868651138">No es pot instal·lar <ph name="EXTERNAL_CRX_FILE" /> a la memòria cau local.</translation>
<translation id="1185924365081634987">També podeu provar de <ph name="GUEST_SIGNIN_LINK_START" />navegar com a convidat<ph name="GUEST_SIGNIN_LINK_END" /> per corregir aquest error de xarxa.</translation>
@@ -284,7 +286,7 @@
<translation id="1407489512183974736">Retallat al centre</translation>
<translation id="1408789165795197664">Configuració avançada...</translation>
<translation id="1408803555324839240">No s'ha pogut crear l'usuari supervisat nou. Assegureu-vos que heu iniciat la sessió correctament i torneu-ho a provar.</translation>
-<translation id="1409390508152595145">Creeu un usuari supervisat</translation>
+<translation id="1409390508152595145">Crea un usuari supervisat</translation>
<translation id="1410616244180625362">Continua permetent que <ph name="HOST" /> accedeixi a la càmera</translation>
<translation id="1413372529771027206">El telèfon que utilitzeu per a Smart Lock ha canviat. Escriviu la contrasenya per actualitzar Smart Lock per a Chromebook en aquest dispositiu. La propera vegada només caldrà que feu clic a la imatge per accedir-hi.</translation>
<translation id="1413809658975081374">Error de privadesa</translation>
@@ -330,6 +332,7 @@
<translation id="1468038450257740950">WebGL no és compatible.</translation>
<translation id="1470719357688513792">La nova configuració de galetes es farà efectiva quan torneu a carregar la pàgina.</translation>
<translation id="14720830734893704">Activa la compatibilitat del teclat virtual.</translation>
+<translation id="1474079335130556426">Activa el mode en segon pla per a l'API de tramesa automàtica. D'aquesta manera, Chrome pot continuar executant-se un cop tancada l'última finestra i, si l'API de tramesa automàtica ho requereix, es pot iniciar en arrancar el sistema operatiu.</translation>
<translation id="1474339897586437869">"<ph name="FILENAME" />" no s'ha penjat. No hi ha prou espai lliure al vostre compte de Google Drive.</translation>
<translation id="1476503841242751994">{COUNT,plural, =1{1 contrasenya}other{# contrasenyes}}</translation>
<translation id="1476949146811612304">Definiu el motor de cerca que s'ha de fer servir en fer una cerca des de l'<ph name="BEGIN_LINK" />omnibox<ph name="END_LINK" />.</translation>
@@ -654,6 +657,7 @@
<translation id="1918141783557917887">&amp;Més petit</translation>
<translation id="192144045824434199">Activa les finestres del tauler que s'obren fora del marc del navegador. Si es prova d'obrir un tauler i aquesta funció no està activada, s'obrirà una finestra emergent. Els taulers sempre estan activats als canals del dispositiu i de Chrome Canary.</translation>
<translation id="1921584744613111023"><ph name="DPI" /> ppp</translation>
+<translation id="1921986354447415460">Teclat turc-F</translation>
<translation id="1923786009776354244">Activa la compatibilitat amb la capçalera d'origen Stun de WebRTC.</translation>
<translation id="1926741348654461781">Activa les pàgines sense connexió</translation>
<translation id="1929546189971853037">Llegir l'historial de navegació en tots els dispositius on hàgiu iniciar la sessió</translation>
@@ -852,6 +856,7 @@
<translation id="2231990265377706070">Signe d'admiració</translation>
<translation id="2232876851878324699">El fitxer contenia un certificat que no s'ha importat:</translation>
<translation id="2233502537820838181">&amp;Més informació</translation>
+<translation id="2233587473672843170">Mostra llocs populars a la pàgina Pestanya nova</translation>
<translation id="223714078860837942">Si una pàgina no ha establert una política explícita d'URL de referència, en establir aquesta marca es reduirà la quantitat d'informació inclosa a la capçalera "referer" per a les sol·licituds de diversos orígens.</translation>
<translation id="2238379619048995541">Dades de l'estat de freqüència</translation>
<translation id="2239921694246509981">Afegeix una persona supervisada</translation>
@@ -930,6 +935,7 @@ Quan hàgiu creat un usuari supervisat, podeu gestionar-ne la configuració en q
<translation id="2326606747676847821">Passa al mode d'incògnit</translation>
<translation id="2326931316514688470">&amp;Tornar a carregar l'aplicació</translation>
<translation id="2327492829706409234">Activa l'aplicació</translation>
+<translation id="2329597144923131178">Inicieu la sessió per tenir adreces d'interès, historial, contrasenyes i altres opcions de configuració en tots els dispositius.</translation>
<translation id="2332131598580221120">Mostra a la botiga</translation>
<translation id="2332742915001411729">Restableix als valors predeterminats</translation>
<translation id="2335122562899522968">Aquesta pàgina emmagatzema galetes</translation>
@@ -1317,6 +1323,7 @@ No crec que calgui bloquejar aquest lloc.</translation>
<translation id="2838379631617906747">S'està instal·lant</translation>
<translation id="2841837950101800123">Proveïdor</translation>
<translation id="2843806747483486897">Canvia els valors predeterminats...</translation>
+<translation id="2844169650293029770">Dispositiu USB-C (port frontal esquerre)</translation>
<translation id="2845382757467349449">Mostra la barra d'adreces d'interès</translation>
<translation id="2846816712032308263">Activa el tancament ràpid de la pestanya/finestra; executa un gestor js de descàrrega de la pestanya independentment de la interfície gràfica d'usuari.</translation>
<translation id="284970761985428403"><ph name="ASCII_NAME" /> (<ph name="UNICODE_NAME" />)</translation>
@@ -1381,6 +1388,7 @@ No crec que calgui bloquejar aquest lloc.</translation>
<translation id="2923469375796950815">Desactiva el descompressor ZIP nou</translation>
<translation id="2924296707677495905">Transliteració (namaskaram → ನಮಸ್ಕಾರ)</translation>
<translation id="2925966894897775835">Fulls</translation>
+<translation id="2927017729816812676">Emmagatzematge a la memòria cau</translation>
<translation id="2927657246008729253">Canvia...</translation>
<translation id="2928526264833629376">Vés a Hangouts</translation>
<translation id="2930644991850369934">S'ha produït un problema en baixar la imatge de recuperació. S'ha perdut la connexió a la xarxa.</translation>
@@ -1547,7 +1555,7 @@ No crec que calgui bloquejar aquest lloc.</translation>
<translation id="3160041952246459240">Teniu certificats arxivats que identifiquen els servidors següents:</translation>
<translation id="316125635462764134">Suprimeix l'aplicació</translation>
<translation id="3162559335345991374">És possible que la xarxa Wi-Fi que esteu fent servir requereixi que visiteu la seva pàgina d'inici de sessió.</translation>
-<translation id="316307797510303346">Controleu i consulteu els llocs web que aquesta persona visita des de <ph name="CUSTODIAN_EMAIL" />.
+<translation id="316307797510303346">Controla i consulta els llocs web que aquesta persona visita des de <ph name="CUSTODIAN_EMAIL" />.
Les dades d'inici de sessió del compte no estan actualitzades.</translation>
<translation id="3166571619128686629">Feu-hi clic o digueu "Ok Google" per començar la cerca per veu</translation>
<translation id="3170072451822350649">També podeu <ph name="LINK_START" />navegar com a convidat<ph name="LINK_END" /> sense iniciar sessió.</translation>
@@ -1722,6 +1730,7 @@ No crec que calgui bloquejar aquest lloc.</translation>
<translation id="3396331542604645348">La impressora seleccionada no està disponible o no s'ha instal·lat correctament. Comproveu la impressora o proveu de seleccionar-ne una altra.</translation>
<translation id="3399597614303179694">Teclat macedoni</translation>
<translation id="340013220407300675">És possible que hi hagi atacants que estiguin provant de robar-vos informació de <ph name="BEGIN_BOLD" /><ph name="SITE" /><ph name="END_BOLD" /> (per exemple, contrasenyes, missatges o targetes de crèdit).</translation>
+<translation id="3401130144947259741">Si l'opció està activada, els esdeveniments de seguiment s'exporten a Event Tracing for Windows (ETW) i es poden capturar amb eines com UIForETW o Xperf.</translation>
<translation id="340282674066624"><ph name="DOWNLOAD_RECEIVED" />, <ph name="TIME_LEFT" /></translation>
<translation id="3406605057700382950">&amp;Mostra la Barra d'adreces d'interès</translation>
<translation id="3412265149091626468">Vés directament a la selecció</translation>
@@ -1878,6 +1887,7 @@ No crec que calgui bloquejar aquest lloc.</translation>
<translation id="3603385196401704894">Francès canadenc</translation>
<translation id="3603622770190368340">Obtenció del certificat de xarxa</translation>
<translation id="3605780360466892872">Executiu</translation>
+<translation id="3606220979431771195">Turc-F</translation>
<translation id="3608454375274108141">F10</translation>
<translation id="3608576286259426129">Previsualització de la imatge d'usuari</translation>
<translation id="3609138628363401169">El servidor no admet l'extensió de renegociació TLS.</translation>
@@ -2125,7 +2135,7 @@ No crec que calgui bloquejar aquest lloc.</translation>
<translation id="3915280005470252504">Cerca per veu</translation>
<translation id="3916445069167113093">Aquest tipus de fitxer pot malmetre el vostre equip. Voleu mantenir <ph name="FILE_NAME" /> igualment?</translation>
<translation id="3920504717067627103">Normes de certificats</translation>
-<translation id="392089482157167418">Activa ChromeVox (missatges de veu)</translation>
+<translation id="392089482157167418">Activa ChromeVox (comentaris de veu)</translation>
<translation id="3924145049010392604">Meta</translation>
<translation id="3925083541997316308">Els usuaris supervisats no poden modificar aplicacions ni extensions.</translation>
<translation id="3925247638945319984">No teniu registres de WebRTC capturats recentment.</translation>
@@ -2397,6 +2407,7 @@ Tots els usuaris han de tancar la sessió per continuar.</translation>
<translation id="4321136812570927563">{NUM_DOWNLOAD,plural, =1{Continua la baixada}other{Continua les baixades}}</translation>
<translation id="4321179778687042513">ctrl</translation>
<translation id="4322394346347055525">Tanca les altres pestanyes</translation>
+<translation id="4325378361067528777">Activa el mode en segon pla de l'API de tramesa automàtica</translation>
<translation id="4326952458285403282">No permet l'ús del sistema experimental de renderització de tipus de lletra DirectWrite.</translation>
<translation id="4326999707196471878">Quadres de diàleg del navegador de visualitzacions del conjunt d'eines.</translation>
<translation id="4330406155931244378">Activa el corrector ortogràfic multilingüe</translation>
@@ -2928,6 +2939,8 @@ Premeu qualsevol tecla per continuar explorant.</translation>
<translation id="5148652308299789060">Desactiva el renderitzador de programari 3D</translation>
<translation id="5150254825601720210">Nom del servidor SSL de certificats de Netscape</translation>
<translation id="5151034238407558331">Només els compradors que tinguin una adreça dels Estats Units poden fer servir Google Payments amb aquest comerciant. Si residiu en aquest país, |canvieu la vostra adreça particular de Google Payments| o feu el pagament mitjançant un altre mètode.</translation>
+<translation id="5151639798712723370">"&gt;
+ Dispositiu USB-C (port frontal dret)</translation>
<translation id="5152451685298621771">(Compte infantil)</translation>
<translation id="5154108062446123722">Configuració avançada de <ph name="PRINTING_DESTINATION" /></translation>
<translation id="5154176924561037127">F8</translation>
@@ -3025,6 +3038,7 @@ Premeu qualsevol tecla per continuar explorant.</translation>
<translation id="5271247532544265821">Canvia entre xinès mode simplificat/xinès mode tradicional</translation>
<translation id="5271549068863921519">Desa la contrasenya</translation>
<translation id="5273628206174272911">Navegació experimental per l'historial en desplaçar-s'hi horitzontalment per sobre.</translation>
+<translation id="5275795814002959418"><ph name="COUNT" /> d'aquest lloc</translation>
<translation id="5275973617553375938">Fitxers recuperats de Google Drive</translation>
<translation id="527605719918376753">Silencia la pestanya</translation>
<translation id="527605982717517565">Permet sempre JavaScript a <ph name="HOST" /></translation>
@@ -3071,6 +3085,7 @@ Premeu qualsevol tecla per continuar explorant.</translation>
<translation id="5328285148748012771">Accediu a totes les vostres aplicacions des d'aquest pràctic menú. Jugueu, feu xats de vídeo, escolteu música, editeu documents o baixeu més aplicacions a Chrome Web Store.</translation>
<translation id="5329858601952122676">&amp;Suprimeix</translation>
<translation id="5330145655348521461">Aquests fitxers s'han obert en un altre escriptori. Aneu a <ph name="USER_NAME" /> (<ph name="MAIL_ADDRESS" />) per veure'l.</translation>
+<translation id="5331975486040154427">Dispositiu USB-C (port posterior esquerre)</translation>
<translation id="5332624210073556029">Zona horària:</translation>
<translation id="5334142896108694079">Memòria cau d'scripts</translation>
<translation id="533433379391851622">La versió esperada era "<ph name="EXPECTED_VERSION" />", però la real era "<ph name="NEW_ID" />".</translation>
@@ -3117,6 +3132,7 @@ Premeu qualsevol tecla per continuar explorant.</translation>
<translation id="539755880180803351">Anota formularis web amb prediccions de tipus d'emplenament automàtic dels camps com a text de adreces d'interès de posició.</translation>
<translation id="5397578532367286026">El gestor (<ph name="MANAGER_EMAIL" />) pot revisar l'ús i l'historial d'aquest usuari a chrome.com.</translation>
<translation id="5397794290049113714">Usuari</translation>
+<translation id="5398824043967640339"><ph name="COUNT" /> d'altres llocs</translation>
<translation id="5399158067281117682">Els PIN no coincideixen.</translation>
<translation id="5400640815024374115">El xip de Trusted Platform Module (TPM) està desactivat o bé no és present.</translation>
<translation id="5402367795255837559">Braille</translation>
@@ -3427,7 +3443,7 @@ Assegureu-vos que no es pugui accedir a informació confidencial.</translation>
<translation id="5830410401012830739">Gestiona la configuració de la ubicació...</translation>
<translation id="5830720307094128296">Anomena i desa la pà&amp;gina...</translation>
<translation id="5832669303303483065">Afegeix una adreça postal nova...</translation>
-<translation id="5832805196449965646">Afegiu una persona</translation>
+<translation id="5832805196449965646">Afegeix una persona</translation>
<translation id="583281660410589416">Desconegut</translation>
<translation id="5832830184511718549">Utilitza un subprocés secundari per crear pàgines web. Això permet un desplaçament suau, fins i tot quan el subprocés principal no respon.
</translation>
@@ -3504,7 +3520,7 @@ Assegureu-vos que no es pugui accedir a informació confidencial.</translation>
<translation id="5934281776477898549">Cap actualització</translation>
<translation id="5937843713457938680">Mode d'emmagatzematge en memòria cau per al motor V8 de JavaScript.</translation>
<translation id="5939518447894949180">Restableix</translation>
-<translation id="5941153596444580863">Afegiu una persona...</translation>
+<translation id="5941153596444580863">Afegeix una persona...</translation>
<translation id="5941343993301164315">Inicieu la sessió a <ph name="TOKEN_NAME" />.</translation>
<translation id="5941711191222866238">Minimitza</translation>
<translation id="5942207977017515242">https://support.google.com/chrome/?hl=<ph name="GRITLANGCODE_1" />&amp;p=settings_sign_in</translation>
@@ -3922,7 +3938,7 @@ Consulteu el vostre correu electrònic (<ph name="ACCOUNT_EMAIL" />) per obtenir
<translation id="655384502888039633"><ph name="USER_COUNT" /> usuaris</translation>
<translation id="6555432686520421228">Suprimeix tots els comptes d'usuari i restableix el dispositiu <ph name="IDS_SHORT_PRODUCT_NAME" />, com si fos nou.</translation>
<translation id="6556866813142980365">Refés</translation>
-<translation id="6557565812667414268">Activat només per a visualitzacions PPP d'alt rendiment</translation>
+<translation id="6557565812667414268">Activat només per a visualitzacions ppp d'alt rendiment</translation>
<translation id="6559580823502247193">(ja és en aquest dispositiu)</translation>
<translation id="6561726789132298588">retorn</translation>
<translation id="6562437808764959486">S'està extraient la imatge de recuperació...</translation>
@@ -3940,6 +3956,7 @@ Consulteu el vostre correu electrònic (<ph name="ACCOUNT_EMAIL" />) per obtenir
<translation id="6575251558004911012">Pregunta'm quan un lloc requereixi accés a la càmera (opció recomanada)</translation>
<translation id="6581162200855843583">Enllaç de Google Drive</translation>
<translation id="6583070985841601920">Heu iniciat la sessió com a <ph name="USER_EMAIL_ADDRESS" />. L'administrador ha desactivat la sincronització.</translation>
+<translation id="65832705307647870">Emplena prèviament la pàgina Pestanya nova amb llocs populars.</translation>
<translation id="6584878029876017575">Signatura de durada de Microsoft</translation>
<translation id="6585234750898046415">Trieu la imatge que es mostrarà al vostre compte a la pantalla d'inici de sessió.</translation>
<translation id="6585283250473596934">S'està entrant en una sessió pública.</translation>
@@ -4186,7 +4203,7 @@ Consulteu el vostre correu electrònic (<ph name="ACCOUNT_EMAIL" />) per obtenir
<translation id="6978611942794658017">Aquest fitxer està dissenyat per a un ordinador amb programari Windows. Això no és compatible amb el vostre dispositiu, que funciona amb Chrome OS. Cerqueu una aplicació alternativa adequada a Chrome Web Store.</translation>
<translation id="6979158407327259162">Google Drive</translation>
<translation id="6980604578217046176">Activa el servidor intermediari experimental de reducció de dades</translation>
-<translation id="6980956047710795611">Migra totes les dades de SO Chrome a la contrasenya nova
+<translation id="6980956047710795611">Migra totes les dades de Chrome OS a la contrasenya nova
(requereix la contrasenya anterior)</translation>
<translation id="6981982820502123353">Accessibilitat</translation>
<translation id="6982896539684144327">S'ha detectat una impressora del proveïdor <ph name="VENDOR_NAME" /></translation>
@@ -4281,6 +4298,7 @@ Consulteu el vostre correu electrònic (<ph name="ACCOUNT_EMAIL" />) per obtenir
<translation id="7092106376816104">Excepcions de finestres emergents</translation>
<translation id="7093866338626856921">Intercanviar dades amb els dispositius <ph name="HOSTNAMES" /></translation>
<translation id="7096082900368329802">Voleu descobrir més funcions increïbles?</translation>
+<translation id="7098389117866926363">Dispositiu USB-C (port posterior esquerre)</translation>
<translation id="7100897339030255923"><ph name="COUNT" /> elements seleccionats</translation>
<translation id="7106346894903675391">Compra més emmagatzematge...</translation>
<translation id="7108338896283013870">Amaga</translation>
@@ -4524,7 +4542,7 @@ El mode d'incògnit, <ph name="SHORTCUT_KEY" />, us pot resultar pràctic la pro
<translation id="7458128457147328975">Permet activar la versió obsoleta de les extensions multimèdia encriptades en elements d'àudio i de vídeo.</translation>
<translation id="7460898608667578234">Ucraïnès</translation>
<translation id="7461924472993315131">Fixa</translation>
-<translation id="7463006580194749499">Afegiu una persona</translation>
+<translation id="7463006580194749499">Afegeix una persona</translation>
<translation id="7464490149090366184">S'ha produït un error en la compressió; l'element existeix: "$1"</translation>
<translation id="7465778193084373987">URL de revocació de certificats de Netscape</translation>
<translation id="7466861475611330213">Estil de puntuació</translation>
@@ -5048,6 +5066,7 @@ Deseu el fitxer de clau en una ubicació segura. El necessitareu per crear versi
<translation id="8190193592390505034">S'està connectant amb <ph name="PROVIDER_NAME" /></translation>
<translation id="8191230140820435481">Gestionar les aplicacions, les extensions i els temes</translation>
<translation id="8191453843330043793">Solucionador de servidors intermediaris V8</translation>
+<translation id="8199491812735365610">Trieu un compte per iniciar la sessió</translation>
<translation id="8200772114523450471">Reempren</translation>
<translation id="8202160505685531999">Torneu a introduir la contrasenya per actualitzar el vostre perfil del dispositiu <ph name="DEVICE_TYPE" />.</translation>
<translation id="8204086856545141093">Una política ha bloquejat les sol·licituds al servidor.</translation>
@@ -5178,6 +5197,7 @@ Deseu el fitxer de clau en una ubicació segura. El necessitareu per crear versi
<translation id="8381977081675353473">Eslovac</translation>
<translation id="8382645631174981738"><ph name="EXTENSION_NAME" /> s'ha instal·lat remotament</translation>
<translation id="8382913212082956454">Copia l'&amp;adreça electrònica</translation>
+<translation id="8384113940676655504">Activa una opció de Smart Lock que permet al dispositiu Chromebook detectar telèfons mitjançant Bluetooth de baixa energia i així poder desbloquejar el dispositiu quan el telèfon estigui a prop.</translation>
<translation id="8390029840652165810">Assegureu-vos que la vostra connexió a la xarxa funciona i, si el problema persisteix, tanqueu la sessió i torneu a iniciar-la per actualitzar les vostres credencials.</translation>
<translation id="8390445751804042000">Permet activar el dispositiu en funció de la recepció de determinats paquets de xarxa.</translation>
<translation id="8390449457866780408">El servidor no està disponible.</translation>
@@ -5264,6 +5284,7 @@ Deseu el fitxer de clau en una ubicació segura. El necessitareu per crear versi
<translation id="8509646642152301857">La baixada del diccionari del corrector ortogràfic ha fallat.</translation>
<translation id="8512476990829870887">Finalitza el procés</translation>
<translation id="851263357009351303">Permet sempre que <ph name="HOST" /> mostri imatges</translation>
+<translation id="8513191386157529469">"<ph name="CLIENT_NAME" />" està depurant aquest navegador.</translation>
<translation id="8513974249124254369">ChromeVox (comentaris de veu) està activat. Premeu Ctrl + Alt + Z per desactivar-lo.</translation>
<translation id="8515737884867295000">S'ha produït un error en l'autenticació basada en certificats</translation>
<translation id="8518865679229538285">Mètode d'introducció en tàmil (màquina d'escriure)</translation>
@@ -5382,6 +5403,7 @@ Deseu el fitxer de clau en una ubicació segura. El necessitareu per crear versi
<translation id="8677039480012021122">Esborra les dades i desconnecta</translation>
<translation id="8677212948402625567">Redueix-ho tot...</translation>
<translation id="8678648549315280022">Gestiona la configuració de la baixada...</translation>
+<translation id="8680251145628383637">Inicieu la sessió per tenir les adreces d'interès, l'historial, les contrasenyes i altres opcions en tots els dispositius. A més, iniciareu la sessió automàticament als serveis de Google.</translation>
<translation id="8680536109547170164"><ph name="QUERY" />, resposta, <ph name="ANSWER" /></translation>
<translation id="8680787084697685621">Les dades d'inici de sessió del compte no estan actualitzades.</translation>
<translation id="8684255857039823328">S'ha desat la contrasenya. Accediu a totes les contrasenyes des de qualsevol dispositiu a <ph name="MANAGEMENT_LINK" />.</translation>
@@ -5437,6 +5459,7 @@ Deseu el fitxer de clau en una ubicació segura. El necessitareu per crear versi
<translation id="874420130893181774">Mètode d'introducció de pinyin tradicional</translation>
<translation id="8744525654891896746">Selecció d'un avatar per a l'usuari supervisat</translation>
<translation id="8744641000906923997">Romaji</translation>
+<translation id="8744959718895556609">Trieu un compte de <ph name="LINK_TEXT" /></translation>
<translation id="8749863574775030885">Accedir a dispositius USB d'un proveïdor desconegut</translation>
<translation id="8754200782896249056">&lt;p&gt;Quan <ph name="PRODUCT_NAME" /> s'executa en un entorn d'escriptori compatible, s'utilitza la configuració del servidor intermediari del sistema. No obstant això, o bé el vostre sistema no és compatible o bé s'ha produït un problema en iniciar la configuració del sistema.&lt;/p&gt;
@@ -5554,6 +5577,7 @@ Deseu el fitxer de clau en una ubicació segura. El necessitareu per crear versi
<translation id="8933960630081805351">&amp;Mostra a Finder</translation>
<translation id="8934732568177537184">Continua</translation>
<translation id="8938356204940892126">Deixa-ho córrer</translation>
+<translation id="8938800817013097409">Dispositiu USB-C (port posterior dret)</translation>
<translation id="8940081510938872932">L'equip està fent massa coses en aquests moments. Torneu-ho a provar més tard.</translation>
<translation id="8941173171815156065">Revoca el permís <ph name="PERMISSION" /></translation>
<translation id="8941248009481596111">La vostra connexió amb aquest lloc és privada.</translation>
@@ -5773,7 +5797,7 @@ Deseu el fitxer de clau en una ubicació segura. El necessitareu per crear versi
<translation id="940425055435005472">Mida de la lletra:</translation>
<translation id="941543339607623937">Clau privada no vàlida.</translation>
<translation id="942954117721265519">No hi ha cap imatge en aquest directori.</translation>
-<translation id="945522503751344254">Envia comentaris</translation>
+<translation id="945522503751344254">Envia suggeriments</translation>
<translation id="946810925362320585">Segueix la recomanació</translation>
<translation id="949382280525592713"><ph name="LEGAL_DOC_AGREEMENT" /> Per protegir-vos de fraus, es compartirà informació sobre el vostre ordinador (inclosa la ubicació) amb Google Payments.</translation>
<translation id="951981865514037445"><ph name="URL" /> vol fer servir la ubicació del dispositiu.</translation>
diff --git a/chromium/chrome/app/resources/generated_resources_cs.xtb b/chromium/chrome/app/resources/generated_resources_cs.xtb
index 36e4e0701cb..43ed804022a 100644
--- a/chromium/chrome/app/resources/generated_resources_cs.xtb
+++ b/chromium/chrome/app/resources/generated_resources_cs.xtb
@@ -136,6 +136,8 @@
<translation id="1178581264944972037">Pozastavit</translation>
<translation id="1179803038870941185">Web <ph name="URL" /> chce získat úplnou kontrolu nad zařízeními MIDI.</translation>
<translation id="1181037720776840403">Odebrat</translation>
+<translation id="11814323404622888">"&gt;
+ Zařízení USB Type-C (pravý zadní port)</translation>
<translation id="1183083053288481515">Použití certifikátu poskytnutého správcem</translation>
<translation id="1183237619868651138">Soubor <ph name="EXTERNAL_CRX_FILE" /> nelze nainstalovat do místní mezipaměti.</translation>
<translation id="1185924365081634987">Chcete-li tuto chybu odstranit, můžete také zkusit <ph name="GUEST_SIGNIN_LINK_START" />procházení v roli hosta<ph name="GUEST_SIGNIN_LINK_END" />.</translation>
@@ -329,6 +331,7 @@
<translation id="1468038450257740950">Rozhraní WebGL není podporováno.</translation>
<translation id="1470719357688513792">Nové nastavení souborů cookie se projeví po opětovném načtení stránky.</translation>
<translation id="14720830734893704">Aktivuje podporu virtuální klávesnice.</translation>
+<translation id="1474079335130556426">Povolí režim na pozadí pro rozhraní Push API. Pokud to rozhraní Push API bude potřebovat, bude Chrome moci zůstat spuštěný i po zavření posledního okna a bude se moci spouštět při spuštění operačního systému.</translation>
<translation id="1474339897586437869">Soubor <ph name="FILENAME" /> nelze nahrát. Na Disku Google je nedostatek místa.</translation>
<translation id="1476503841242751994">{COUNT,plural, =1{1 heslo}few{# hesla}many{# hesla}other{# hesel}}</translation>
<translation id="1476949146811612304">Nastavit vyhledávač, který se používá při vyhledávání v
@@ -657,6 +660,7 @@ UPOZORNĚNÍ: Když toto pravidlo povolíte, Chrome bude zaznamenávat data o v
<translation id="1918141783557917887">Menší</translation>
<translation id="192144045824434199">Povolí okna Panelu, která se otvírají mimo rámec prohlížeče. Pokud toto nastavení nebude povoleno, pokusy o otevření Panelu otevřou vyskakovací okna. Panely jsou vždy povoleny ve verzích pro vývojáře a v testovací verzi canary.</translation>
<translation id="1921584744613111023"><ph name="DPI" /> dpi</translation>
+<translation id="1921986354447415460">Turecká klávesnice (typ F)</translation>
<translation id="1923786009776354244">Aktivovat podporu pro záhlaví původu Stun WebRTC.</translation>
<translation id="1926741348654461781">Povolit offline stránky</translation>
<translation id="1929546189971853037">Čtení historie prohlížení ve všech přihlášených zařízeních</translation>
@@ -856,6 +860,7 @@ UPOZORNĚNÍ: Když toto pravidlo povolíte, Chrome bude zaznamenávat data o v
<translation id="2231990265377706070">Vykřičník</translation>
<translation id="2232876851878324699">Soubor obsahoval jeden certifikát, který nebyl importován:</translation>
<translation id="2233502537820838181">&amp;Další informace</translation>
+<translation id="2233587473672843170">Zobrazovat na stránce Nová karta populární weby</translation>
<translation id="223714078860837942">Pokud stránka nenastavila explicitní zásady pro referrery, nastavením tohoto příznaku omezíte množství informací, které se budou odesílat v záhlaví Referer pro mezidoménové požadavky.</translation>
<translation id="2238379619048995541">Data o stavu frekvence</translation>
<translation id="2239921694246509981">Přidat dozorovaného uživatele</translation>
@@ -927,6 +932,7 @@ Po vytvoření nového dozorovaného uživatele můžete jeho nastavení spravov
<translation id="2326606747676847821">Anonymní režim</translation>
<translation id="2326931316514688470">Znovu načíst &amp;aplikaci</translation>
<translation id="2327492829706409234">Aktivovat aplikaci</translation>
+<translation id="2329597144923131178">Přihlaste se a synchronizujte záložky, historii, hesla a další nastavení do všech svých zařízení.</translation>
<translation id="2332131598580221120">Zobrazit v obchodu</translation>
<translation id="2332742915001411729">Výchozí nastavení</translation>
<translation id="2335122562899522968">Tato stránka nastavila soubory cookie.</translation>
@@ -1314,6 +1320,7 @@ Aby bylo zabráněno generování nadměrného provozu, který by situaci dále
<translation id="2838379631617906747">Instalace</translation>
<translation id="2841837950101800123">Poskytovatel</translation>
<translation id="2843806747483486897">Změnit výchozí akci...</translation>
+<translation id="2844169650293029770">Zařízení USB Type-C (levý přední port)</translation>
<translation id="2845382757467349449">&amp;Vždy zobrazovat lištu záložek</translation>
<translation id="2846816712032308263">Aktivuje rychlé zavírání karet nebo oken. Spouští obslužný nástroj rutiny OnUnload JavaScriptu nezávisle na grafickém uživatelském rozhraní.</translation>
<translation id="284970761985428403"><ph name="ASCII_NAME" /> (<ph name="UNICODE_NAME" />)</translation>
@@ -1378,6 +1385,7 @@ Aby bylo zabráněno generování nadměrného provozu, který by situaci dále
<translation id="2923469375796950815">Deaktivovat nový proces rozbalování souborů ZIP</translation>
<translation id="2924296707677495905">Přepis (namaskaram → ನಮಸ್ಕಾರ)</translation>
<translation id="2925966894897775835">Tabulky</translation>
+<translation id="2927017729816812676">Cache Storage</translation>
<translation id="2927657246008729253">Změnit...</translation>
<translation id="2928526264833629376">Pokračovat do služby Hangouts</translation>
<translation id="2930644991850369934">Při stahování obrazu pro obnovení došlo k potížím. Připojení k síti bylo ztraceno.</translation>
@@ -1565,7 +1573,7 @@ Aby bylo zabráněno generování nadměrného provozu, který by situaci dále
<translation id="3192478164181859944">Aktivovat 2. fázi procesu Slimming Paint</translation>
<translation id="3192947282887913208">Zvukové soubory</translation>
<translation id="3193734264051635522">Rychlost:</translation>
-<translation id="3195029830833421520">Povolit místní ukládání stránek k online použití. Musí být aktivovány rozšířené záložky.</translation>
+<translation id="3195029830833421520">Povolit místní ukládání stránek k použití offline. Musí být aktivovány rozšířené záložky.</translation>
<translation id="3195445837372719522">Služba Chromebox pro videokonference potřebuje vědět, do které domény patří. Přihlaste se ke svému účtu.</translation>
<translation id="3197563288998582412">Britská klávesnice – Dvorak</translation>
<translation id="3199127022143353223">Servery</translation>
@@ -1716,6 +1724,7 @@ Pokud nezměníte výchozí nastavení, uživatel <ph name="USER_DISPLAY_NAME" /
<translation id="3396331542604645348">Zvolená tiskárna není k dispozici nebo není správně nainstalovaná. Zkontrolujte tiskárnu nebo vyberte jinou.</translation>
<translation id="3399597614303179694">Makedonská klávesnice</translation>
<translation id="340013220407300675">Útočníci se mohou pokusit ukrást vaše údaje na webu <ph name="BEGIN_BOLD" /><ph name="SITE" /><ph name="END_BOLD" /> (například hesla, zprávy nebo informace o platebních kartách).</translation>
+<translation id="3401130144947259741">Pokud je tato možnost aktivována, události trasování budou exportovány do Trasování událostí pro Windows (ETW) a následně je bude možné zachytit pomocí nástroje UIForETW nebo Xperf.</translation>
<translation id="340282674066624"><ph name="DOWNLOAD_RECEIVED" />, <ph name="TIME_LEFT" /></translation>
<translation id="3406605057700382950">&amp;Zobrazit lištu záložek</translation>
<translation id="3412265149091626468">Přejít na výběr</translation>
@@ -1739,7 +1748,7 @@ Pokud nezměníte výchozí nastavení, uživatel <ph name="USER_DISPLAY_NAME" /
<translation id="3445830502289589282">Ověření Phase 2:</translation>
<translation id="3445925074670675829">Zařízení USB Type-C</translation>
<translation id="344630545793878684">Čtení vašich dat na mnoha webech</translation>
-<translation id="3447661539832366887">Vlastník tohoto zařízení vypnul hru s dinosaury.</translation>
+<translation id="3447661539832366887">Vlastník tohoto zařízení hru s dinosaurem vypnul.</translation>
<translation id="3449839693241009168">Stiskem klávesy <ph name="SEARCH_KEY" /> odešlete příkazy pro rozšíření <ph name="EXTENSION_NAME" /></translation>
<translation id="3450157232394774192">Procentuální zastoupení stavu nečinnosti</translation>
<translation id="3450505713373650336">Probíhá zálohování <ph name="FILE_COUNT" /> fotek</translation>
@@ -1872,6 +1881,7 @@ Pokud nezměníte výchozí nastavení, uživatel <ph name="USER_DISPLAY_NAME" /
<translation id="3603385196401704894">Kanadská francouzská klávesnice</translation>
<translation id="3603622770190368340">Získání certifikátu sítě</translation>
<translation id="3605780360466892872">Manažer</translation>
+<translation id="3606220979431771195">Turecká klávesnice – F</translation>
<translation id="3608454375274108141">F10</translation>
<translation id="3608576286259426129">Náhled obrázku uživatele</translation>
<translation id="3609138628363401169">Server nepodporuje rozšíření opětovného vyjednání protokolu TLS.</translation>
@@ -2386,6 +2396,7 @@ Všichni uživatelé se před pokračováním musejí odhlásit.</translation>
<translation id="4321136812570927563">{NUM_DOWNLOAD,plural, =1{Pokračovat ve stahování}few{Pokračovat ve stahování}many{Pokračovat ve stahování}other{Pokračovat ve stahování}}</translation>
<translation id="4321179778687042513">ctrl</translation>
<translation id="4322394346347055525">Zavřít ostatní karty</translation>
+<translation id="4325378361067528777">Aktivovat režim běhu na pozadí pro rozhraní Push API</translation>
<translation id="4326952458285403282">Zakazuje experimentální systém vykreslování písma pomocí rozhraní DirectWrite.</translation>
<translation id="4326999707196471878">Dialogy prohlížeče toolkit-views</translation>
<translation id="4330406155931244378">Aktivovat kontrolu pravopisu pro více jazyků</translation>
@@ -2925,6 +2936,8 @@ Chcete-li pokračovat v práci, stiskněte libovolnou klávesu.</translation>
<translation id="5148652308299789060">Deaktivovat 3D softwarový rasterizér</translation>
<translation id="5150254825601720210">Název serveru SSL certifikátu Netscape</translation>
<translation id="5151034238407558331">Litujeme, službu Google Payments mohou u tohoto obchodníka použít pouze kupující s adresou v USA. Pokud sídlíte v USA, |změňte adresu bydliště uvedenou ve službě Google Payments,| nebo zaplaťte jinak než pomocí služby Google Payments.</translation>
+<translation id="5151639798712723370">"&gt;
+ Zařízení USB Type-C (pravý přední port)</translation>
<translation id="5152451685298621771">(Dětský účet)</translation>
<translation id="5154108062446123722">Rozšířené nastavení tiskárny <ph name="PRINTING_DESTINATION" /></translation>
<translation id="5154176924561037127">F8</translation>
@@ -3021,6 +3034,7 @@ Chcete-li pokračovat v práci, stiskněte libovolnou klávesu.</translation>
<translation id="5271247532544265821">Přepnout režim zjednodušené / tradiční čínštiny</translation>
<translation id="5271549068863921519">Uložit heslo</translation>
<translation id="5273628206174272911">Experimentální navigace v historii spouštěná horizontálním posouváním</translation>
+<translation id="5275795814002959418">Z tohoto webu: <ph name="COUNT" /></translation>
<translation id="5275973617553375938">Obnovené soubory z Disku Google</translation>
<translation id="527605719918376753">Vypnout zvuk karty</translation>
<translation id="527605982717517565">Vždy povolovat JavaScript z webu <ph name="HOST" /></translation>
@@ -3067,6 +3081,7 @@ Chcete-li pokračovat v práci, stiskněte libovolnou klávesu.</translation>
<translation id="5328285148748012771">Ke všem svým aplikacím můžete snadno přistupovat pomocí tohoto šikovného spouštěče. Hrajte hry, videochatujte, poslouchejte hudbu, upravujte dokumenty nebo si stáhněte další aplikace z Internetového obchodu Chrome.</translation>
<translation id="5329858601952122676">&amp;Smazat</translation>
<translation id="5330145655348521461">Tyto soubory jsou otevřeny na jiné ploše. Chcete-li je zobrazit, přejděte do profilu <ph name="USER_NAME" /> (<ph name="MAIL_ADDRESS" />).</translation>
+<translation id="5331975486040154427">Zařízení USB Type-C (levý zadní port)</translation>
<translation id="5332624210073556029">Časové pásmo:</translation>
<translation id="5334142896108694079">Mezipaměť skriptů</translation>
<translation id="533433379391851622">Očekávaná verze byla <ph name="EXPECTED_VERSION" />. Skutečná verze byla <ph name="NEW_ID" />.</translation>
@@ -3113,6 +3128,7 @@ Chcete-li pokračovat v práci, stiskněte libovolnou klávesu.</translation>
<translation id="539755880180803351">Označí webové formuláře tak, že jako zástupný text vloží typ pole předpovídaný Automatickým vyplňováním.</translation>
<translation id="5397578532367286026">Údaje o využití a historii tohoto uživatele si správce (<ph name="MANAGER_EMAIL" />) může prohlédnout na webu chrome.com.</translation>
<translation id="5397794290049113714">Vy</translation>
+<translation id="5398824043967640339">Z jiných webů: <ph name="COUNT" /></translation>
<translation id="5399158067281117682">Kódy PIN nejsou shodné.</translation>
<translation id="5400640815024374115">Čip modulu TPM je zakázán nebo chybí.</translation>
<translation id="5402367795255837559">Braillovo písmo</translation>
@@ -3939,6 +3955,7 @@ Některé funkce nemusí být dostupné. Zkontrolujte, zda profil existuje a zda
<translation id="6575251558004911012">Zeptat se, když web požaduje přístup k vaší kameře (doporučeno)</translation>
<translation id="6581162200855843583">Odkaz na Disk Google</translation>
<translation id="6583070985841601920">Jste přihlášeni k účtu <ph name="USER_EMAIL_ADDRESS" />. Synchronizace byla zakázána vaším administrátorem.</translation>
+<translation id="65832705307647870">Předvyplnit stránku Nová karta populárními weby.</translation>
<translation id="6584878029876017575">Životnost podepisování Microsoft</translation>
<translation id="6585234750898046415">Vyberte obrázek, který se zobrazí na přihlašovací stránce vašeho účtu.</translation>
<translation id="6585283250473596934">Přihlašování do veřejné relace.</translation>
@@ -4187,7 +4204,7 @@ Některé funkce nemusí být dostupné. Zkontrolujte, zda profil existuje a zda
<translation id="6978611942794658017">Tento soubor je určen pro počítač se softwarem Windows. S vaším zařízením se systémem Chrome OS není kompatibilní. Vyhledejte v Internetovém obchodě Chrome vhodnou náhradní aplikaci.</translation>
<translation id="6979158407327259162">Disk Google</translation>
<translation id="6980604578217046176">Aktivovat experimentální proxy server pro snížení objemu dat</translation>
-<translation id="6980956047710795611">Převést všechna data operačního systému Chrome na nové heslo
+<translation id="6980956047710795611">Převést všechna data systému Chrome OS na nové heslo
(vyžaduje předchozí heslo)</translation>
<translation id="6981982820502123353">Usnadnění</translation>
<translation id="6982896539684144327">Zjištěna tiskárna výrobce <ph name="VENDOR_NAME" /></translation>
@@ -4284,6 +4301,7 @@ Některé funkce nemusí být dostupné. Zkontrolujte, zda profil existuje a zda
<translation id="7092106376816104">Výjimky vyskakovacích oken</translation>
<translation id="7093866338626856921">Výměna dat s následujícími zařízeními: <ph name="HOSTNAMES" /></translation>
<translation id="7096082900368329802">Chcete objevit další úžasné funkce?</translation>
+<translation id="7098389117866926363">Zařízení USB Type-C (levý zadní port)</translation>
<translation id="7100897339030255923">Vybrané položky: <ph name="COUNT" /></translation>
<translation id="7106346894903675391">Koupit větší úložiště...</translation>
<translation id="7108338896283013870">Skrýt</translation>
@@ -5051,6 +5069,7 @@ Výpočet zbývajícího času</translation>
<translation id="8190193592390505034">Připojování k síti poskytovatele <ph name="PROVIDER_NAME" /></translation>
<translation id="8191230140820435481">Spravovat aplikace, rozšíření a motivy</translation>
<translation id="8191453843330043793">Překladač proxy serverů V8</translation>
+<translation id="8199491812735365610">Vyberte účet, ke kterému se chcete přihlásit</translation>
<translation id="8200772114523450471">Pokračovat</translation>
<translation id="8202160505685531999">Chcete-li aktualizovat profil zařízení <ph name="DEVICE_TYPE" />, znovu zadejte heslo.</translation>
<translation id="8204086856545141093">Žádosti na tento server byly blokovány zásadou.</translation>
@@ -5181,6 +5200,7 @@ Výpočet času zbývajícího do úplného nabití</translation>
<translation id="8381977081675353473">slovenština</translation>
<translation id="8382645631174981738">Rozšíření <ph name="EXTENSION_NAME" /> bylo nainstalováno vzdáleně</translation>
<translation id="8382913212082956454">Kopírovat &amp;e-mailovou adresu</translation>
+<translation id="8384113940676655504">Aktivuje nastavení funkce Smart Lock, které Chromebooku umožňuje objevovat telefony prostřednictvím rozhraní Bluetooth Low Energy s cílem odemknout Chromebook, když je v jeho blízkosti telefon.</translation>
<translation id="8390029840652165810">Zkontrolujte prosím, zda jste připojeni k síti a pokud problém přetrvává, obnovte své přihlašovací údaje tím, že se odhlásíte a znovu přihlásíte.</translation>
<translation id="8390445751804042000">Povolí probuzení zařízení při přijetí některých síťových paketů.</translation>
<translation id="8390449457866780408">Server není dostupný.</translation>
@@ -5267,6 +5287,7 @@ Výpočet času zbývajícího do úplného nabití</translation>
<translation id="8509646642152301857">Stažení slovníku pro kontrolu pravopisu se nezdařilo.</translation>
<translation id="8512476990829870887">Ukončit proces</translation>
<translation id="851263357009351303">Vždy povolovat zobrazování obrázků z webu <ph name="HOST" /></translation>
+<translation id="8513191386157529469">Probíhá ladění tohoto prohlížeče nástrojem <ph name="CLIENT_NAME" />.</translation>
<translation id="8513974249124254369">Funkce ChromeVox (hlasová odezva) je aktivní. Deaktivujete ji stisknutím kláves Ctrl+Alt+Z.</translation>
<translation id="8515737884867295000">Ověření pomocí certifikátu se nezdařilo.</translation>
<translation id="8518865679229538285">Metoda zadávání tamilštiny (Typewriter)</translation>
@@ -5386,6 +5407,7 @@ Výpočet času zbývajícího do úplného nabití</translation>
<translation id="8677039480012021122">Vymazat data a odpojit</translation>
<translation id="8677212948402625567">Sbalit vše...</translation>
<translation id="8678648549315280022">Spravovat nastavení stahování...</translation>
+<translation id="8680251145628383637">Přihlaste se a synchronizujte záložky, historii, hesla a další nastavení do všech svých zařízení. Budete také automaticky přihlášeni do svých služeb Google.</translation>
<translation id="8680536109547170164"><ph name="QUERY" />, odpověď, <ph name="ANSWER" /></translation>
<translation id="8680787084697685621">Přihlašovací údaje k účtu jsou zastaralé.</translation>
<translation id="8684255857039823328">Heslo bylo uloženo. Svá hesla můžete zobrazit v libovolném zařízení na adrese <ph name="MANAGEMENT_LINK" />.</translation>
@@ -5441,6 +5463,7 @@ Výpočet času zbývajícího do úplného nabití</translation>
<translation id="874420130893181774">Metoda zadávání textu tradiční Pchin-jin</translation>
<translation id="8744525654891896746">Vyberte avatara pro dozorovaného uživatele</translation>
<translation id="8744641000906923997">Rómadži</translation>
+<translation id="8744959718895556609">Vyberte účet ze svého zámku <ph name="LINK_TEXT" /></translation>
<translation id="8749863574775030885">Přístup k zařízením USB od neznámého dodavatele</translation>
<translation id="8754200782896249056">&lt;p&gt;Při spuštění aplikace <ph name="PRODUCT_NAME" /> v podporovaném počítačovém prostředí se použijí systémová nastavení proxy serveru. Váš systém však buď není podporován, nebo došlo k problému se spuštěním konfigurace systému.&lt;/p&gt;
@@ -5558,6 +5581,7 @@ Výpočet času zbývajícího do úplného nabití</translation>
<translation id="8933960630081805351">Zobrazit ve &amp;službě Finder</translation>
<translation id="8934732568177537184">Pokračovat</translation>
<translation id="8938356204940892126">Vzdávám to</translation>
+<translation id="8938800817013097409">Zařízení USB Type-C (pravý zadní port)</translation>
<translation id="8940081510938872932">Počítač nyní vykonává příliš mnoho úloh. Zkuste to znovu později.</translation>
<translation id="8941173171815156065">Odebrat oprávnění <ph name="PERMISSION" /></translation>
<translation id="8941248009481596111">Spojení s tímto webem je soukromé.</translation>
diff --git a/chromium/chrome/app/resources/generated_resources_da.xtb b/chromium/chrome/app/resources/generated_resources_da.xtb
index ba8cec92973..7a876d609ce 100644
--- a/chromium/chrome/app/resources/generated_resources_da.xtb
+++ b/chromium/chrome/app/resources/generated_resources_da.xtb
@@ -2,7 +2,7 @@
<!DOCTYPE translationbundle>
<translationbundle lang="da">
<translation id="1000498691615767391">Vælg en mappe, som skal åbnes</translation>
-<translation id="1000916256947465293">Log automatisk ind på websites med gemte loginoplysninger. Når funktionen er slået fra, bliver du bedt om verifikation, hver gang du vil logge ind på et website.</translation>
+<translation id="1000916256947465293">Log automatisk ind på websites med gemte loginoplysninger. Når funktionen er slået fra, bliver du bedt om bekræftelse, hver gang du vil logge ind på et website.</translation>
<translation id="1005274289863221750">Bruge din mikrofon og dit kamera</translation>
<translation id="1007233996198401083">Kunne ikke oprette forbindelse.</translation>
<translation id="1007408791287232274">Enhederne kunne ikke læses.</translation>
@@ -136,6 +136,8 @@
<translation id="1178581264944972037">Pause</translation>
<translation id="1179803038870941185"><ph name="URL" /> vil gerne have fuld kontrol over dine MIDI-enheder.</translation>
<translation id="1181037720776840403">Fjern</translation>
+<translation id="11814323404622888">"&gt;
+ USB-C-enhed (porten bagpå i højre side)</translation>
<translation id="1183083053288481515">Ved hjælp af et administratorcertifikat</translation>
<translation id="1183237619868651138"><ph name="EXTERNAL_CRX_FILE" /> kan ikek indstalleres i den lokale cache.</translation>
<translation id="1185924365081634987">Du kan også prøve at <ph name="GUEST_SIGNIN_LINK_START" />anvende som gæst<ph name="GUEST_SIGNIN_LINK_END" /> for at udbedre denne netværksfejl.</translation>
@@ -329,6 +331,7 @@
<translation id="1468038450257740950">WebGL understøttes ikke.</translation>
<translation id="1470719357688513792">De nye indstillinger for cookies træder i kraft, når siden genindlæses.</translation>
<translation id="14720830734893704">Aktivér understøttelse af virtuelt tastatur.</translation>
+<translation id="1474079335130556426">Aktivér baggrundstilstanden for Push API. Dette gør, at Chrome kan fortsætte med at køre, efter det sidste vindue er blevet lukket, og at Chrome kan starte ved opstart af operativsystemet, hvis det er nødvendigt for Push API.</translation>
<translation id="1474339897586437869">"<ph name="FILENAME" />" blev ikke uploadet. Der er ikke plads nok i Google Drev.</translation>
<translation id="1476503841242751994">{COUNT,plural, =1{1 adgangskode}one{# adgangskoder}other{# adgangskoder}}</translation>
<translation id="1476949146811612304">Angiv, hvilken søgemaskine der skal bruges, når du søger via <ph name="BEGIN_LINK" />omnifeltet<ph name="END_LINK" />.</translation>
@@ -650,6 +653,7 @@
<translation id="1918141783557917887">&amp;Mindre</translation>
<translation id="192144045824434199">Aktivér vinduerne Panel, der åbnes uden for browserrammen. Forsøg på at åbne et panel åbner et pop op-vindue i stedet, hvis dette ikke er aktiveret. Paneler er altid aktiveret på udvikler- og canarykanaler.</translation>
<translation id="1921584744613111023"><ph name="DPI" /> dpi</translation>
+<translation id="1921986354447415460">Tyrkisk F-tastatur</translation>
<translation id="1923786009776354244">Aktivér understøttelse af den oprindelige header for WebRTC Stun.</translation>
<translation id="1926741348654461781">Aktivér offlinesider</translation>
<translation id="1929546189971853037">Læse din browserhistorik på alle enheder, hvor du er logget ind</translation>
@@ -848,6 +852,7 @@
<translation id="2231990265377706070">Udråbstegn</translation>
<translation id="2232876851878324699">Filen indeholdt ét certifikat, der ikke blev importeret:</translation>
<translation id="2233502537820838181">&amp;Flere oplysninger</translation>
+<translation id="2233587473672843170">Vis populære websites på siden Ny fane</translation>
<translation id="223714078860837942">Hvis en side ikke har angivet en specifik gendannelsespolitik, vil indstillingen af dette flag reducere mængden af oplysninger i headere for "gendannelse" for anmodninger fra alle destinationer.</translation>
<translation id="2238379619048995541">Data for frekvenstilstand</translation>
<translation id="2239921694246509981">Tilføj administreret person</translation>
@@ -926,6 +931,7 @@ Når du har oprettet en ny administreret bruger, kan du til enhver tid administr
<translation id="2326606747676847821">Vær inkognito</translation>
<translation id="2326931316514688470">&amp;Genindlæs app</translation>
<translation id="2327492829706409234">Aktivér app</translation>
+<translation id="2329597144923131178">Log ind for at hente bogmærker, historik, adgangskoder og andre indstillinger på alle dine enheder.</translation>
<translation id="2332131598580221120">Vis i Webshop</translation>
<translation id="2332742915001411729">Nulstil til standard</translation>
<translation id="2335122562899522968">Denne side indstiller cookies.</translation>
@@ -1315,6 +1321,7 @@ Jeg synes ikke, dette website skal blokeres.</translation>
<translation id="2838379631617906747">Installerer</translation>
<translation id="2841837950101800123">Udbyder</translation>
<translation id="2843806747483486897">Skift standardindstillinger...</translation>
+<translation id="2844169650293029770">USB-C-enhed (porten foran i venstre side)</translation>
<translation id="2845382757467349449">Vis altid bogmærkelinjen</translation>
<translation id="2846816712032308263">Aktiverer hurtig lukning af fane/vindue – kører en fanes onunload js handler uafhængigt af GUI'en.</translation>
<translation id="284970761985428403"><ph name="ASCII_NAME" /> (<ph name="UNICODE_NAME" />)</translation>
@@ -1379,6 +1386,7 @@ Jeg synes ikke, dette website skal blokeres.</translation>
<translation id="2923469375796950815">Deaktiver den nye ZIP-åbning.</translation>
<translation id="2924296707677495905">Translitteration (namaskaram → ನಮಸ್ಕಾರ)</translation>
<translation id="2925966894897775835">Sheets</translation>
+<translation id="2927017729816812676">Cachelagring</translation>
<translation id="2927657246008729253">Skift...</translation>
<translation id="2928526264833629376">Fortsæt til Hangouts</translation>
<translation id="2930644991850369934">Der opstod et problem under download af genoprettelsesbilledet. Netværksforbindelsen er mistet.</translation>
@@ -1386,7 +1394,7 @@ Jeg synes ikke, dette website skal blokeres.</translation>
<translation id="2932883381142163287">Rapportér misbrug</translation>
<translation id="2934522647674136521">Brug GPU til at rasterisere webindhold. Kræver flertrådet rasterisering.</translation>
<translation id="2937174152333875430">Aktivér synkronisering af applisten</translation>
-<translation id="2938225289965773019">Åbn <ph name="PROTOCOL" />-links</translation>
+<translation id="2938225289965773019">Åbne <ph name="PROTOCOL" />-links</translation>
<translation id="2938685643439809023">Mongolsk</translation>
<translation id="2942290791863759244">Tysk NEO 2-tastatur</translation>
<translation id="2943400156390503548">Slides</translation>
@@ -1720,6 +1728,7 @@ Jeg synes ikke, dette website skal blokeres.</translation>
<translation id="3396331542604645348">Den valgte printer er ikke tilgængelig eller ikke installeret korrekt. Kontroller din printer, eller vælg en anden printer.</translation>
<translation id="3399597614303179694">Makedonsk tastatur</translation>
<translation id="340013220407300675">Angriberen prøver muligvis at stjæle dine oplysninger fra <ph name="BEGIN_BOLD" /><ph name="SITE" /><ph name="END_BOLD" /> (f.eks. adgangskoder, beskeder eller kreditkort).</translation>
+<translation id="3401130144947259741">Sporing af begivenheder eksporteres til Sporing af hændelse til Windows (ETW) og kan opfanges af værktøjer som f.eks. UIForETW eller Xperf, hvis funktionen aktiveres.</translation>
<translation id="340282674066624"><ph name="DOWNLOAD_RECEIVED" />, <ph name="TIME_LEFT" /></translation>
<translation id="3406605057700382950">&amp;Vis bogmærkelinjen</translation>
<translation id="3412265149091626468">Hop til valg</translation>
@@ -1879,6 +1888,7 @@ Jeg synes ikke, dette website skal blokeres.</translation>
<translation id="3603385196401704894">Fransk (Canada)</translation>
<translation id="3603622770190368340">Få fat i et netværkscertifikat</translation>
<translation id="3605780360466892872">Asger</translation>
+<translation id="3606220979431771195">Tyrkisk F</translation>
<translation id="3608454375274108141">F10</translation>
<translation id="3608576286259426129">Eksempelvisning af billede fra bruger</translation>
<translation id="3609138628363401169">Serveren understøtter ikke tilføjelse af TLS-genforhandling.</translation>
@@ -2398,6 +2408,7 @@ Vil du starte <ph name="CONTROL_PANEL_APPLET_NAME" />?</translation>
<translation id="4321136812570927563">{NUM_DOWNLOAD,plural, =1{Fortsæt download}one{Fortsæt downloads}other{Fortsæt downloads}}</translation>
<translation id="4321179778687042513">ctrl</translation>
<translation id="4322394346347055525">Luk alle andre faner</translation>
+<translation id="4325378361067528777">Aktivér baggrundstilstanden for Push API</translation>
<translation id="4326952458285403282">Deaktiverer brugen af det eksperimenterende DirectWrite-system til gengivelse af skrifttyper.</translation>
<translation id="4326999707196471878">Toolkit-View-baserede browserdialogbokse.</translation>
<translation id="4330406155931244378">Aktivér flersproget stavekontrol</translation>
@@ -2938,6 +2949,8 @@ Tryk på en vilkårlig tast for at fortsætte udforskningen.</translation>
<translation id="5148652308299789060">Deaktiver 3D-softwarerasterisering</translation>
<translation id="5150254825601720210">SSL-servernavn for Netscape-certifikat</translation>
<translation id="5151034238407558331">Google Payments kan desværre kun bruges af købere med en amerikansk adresse hos denne sælger. Hvis du er bosiddende i USA, skal du |ændre din privatadresse med Google Payments| eller betale uden at bruge Google Payments.</translation>
+<translation id="5151639798712723370">"&gt;
+ USB-C-enhed (porten foran i højre side)</translation>
<translation id="5152451685298621771">(Børnekonto)</translation>
<translation id="5154108062446123722">Avancerede indstillinger for <ph name="PRINTING_DESTINATION" /></translation>
<translation id="5154176924561037127">F8</translation>
@@ -3035,6 +3048,7 @@ Tryk på en vilkårlig tast for at fortsætte udforskningen.</translation>
<translation id="5271247532544265821">Skift mellem forenklet/traditionelt kinesisk</translation>
<translation id="5271549068863921519">Gem adgangskode</translation>
<translation id="5273628206174272911">Eksperimentel funktion, der muliggør vandret rulning i historikken.</translation>
+<translation id="5275795814002959418"><ph name="COUNT" /> fra dette website</translation>
<translation id="5275973617553375938">Gendannede filer fra Google Drev</translation>
<translation id="527605719918376753">Slå fanens lyd fra</translation>
<translation id="527605982717517565">Tillad altid JavaScript på <ph name="HOST" /></translation>
@@ -3081,6 +3095,7 @@ Tryk på en vilkårlig tast for at fortsætte udforskningen.</translation>
<translation id="5328285148748012771">Få adgang til alle dine apps via denne smarte appliste. Du kan spille spil, videochatte, lytte til musik, redigere dokumenter eller hente flere apps i Chrome Webshop.</translation>
<translation id="5329858601952122676">&amp;Slet</translation>
<translation id="5330145655348521461">Disse filer blev åbnet på en anden computer. Skift til <ph name="USER_NAME" /> (<ph name="MAIL_ADDRESS" />) for at se dem.</translation>
+<translation id="5331975486040154427">USB-C-enhed (porten bagpå i venstre side)</translation>
<translation id="5332624210073556029">Tidszone:</translation>
<translation id="5334142896108694079">Scriptcache</translation>
<translation id="533433379391851622">Den forventede version er "<ph name="EXPECTED_VERSION" />", men versionen var "<ph name="NEW_ID" />".</translation>
@@ -3127,6 +3142,7 @@ Tryk på en vilkårlig tast for at fortsætte udforskningen.</translation>
<translation id="539755880180803351">Angiver forudsigelser som pladsholdertekst i webformularer med Autofyld-felttyper.</translation>
<translation id="5397578532367286026">Denne brugers forbrug og historik kan ses af administratoren (<ph name="MANAGER_EMAIL" />) på chrome.com.</translation>
<translation id="5397794290049113714">Dig</translation>
+<translation id="5398824043967640339"><ph name="COUNT" /> fra andre websites</translation>
<translation id="5399158067281117682">PIN-koderne stemmer ikke overens!</translation>
<translation id="5400640815024374115">TPM-chip (Trusted Platform Module) er deaktiveret eller mangler.</translation>
<translation id="5402367795255837559">Braille</translation>
@@ -3631,7 +3647,7 @@ Tryk på en vilkårlig tast for at fortsætte udforskningen.</translation>
<translation id="6102473941787693058">Aktivér tilvalg af rapportering af ugyldige TLS/SSL-certifikatkæder</translation>
<translation id="6102988872254107946">Selvom du har besøgt dette website før, er det ikke sikkert lige nu. Google Beskyttet browsing <ph name="BEGIN_LINK" />registrerede malware<ph name="END_LINK" /> på <ph name="SITE" /> for nylig. Websites, der normalt er sikre, inficeres undertiden med malware.</translation>
<translation id="6103681770816982672">Advarsel! Du er ved at skifte til udviklerkanal</translation>
-<translation id="6105158702728922449">Brug dit kamera og din mikrofon</translation>
+<translation id="6105158702728922449">Bruge dit kamera og din mikrofon</translation>
<translation id="6105366316359454748">En proxyserver er en server, der agerer som et mellemled mellem din enhed og andre servere. Dit system er nu konfigureret til brug som proxy, men
<ph name="PRODUCT_NAME" />
kan ikke oprette forbindelse til det.</translation>
@@ -3953,6 +3969,7 @@ slettes permanent, når den administrerede bruger fjernes. Besøgte websites og
<translation id="6575251558004911012">Spørg om tilladelse, hvis et website kræver adgang til dit kamera (anbefales)</translation>
<translation id="6581162200855843583">Link til Google Drev</translation>
<translation id="6583070985841601920">Logget ind som <ph name="USER_EMAIL_ADDRESS" />. Synkronisering er deaktiveret af din administrator.</translation>
+<translation id="65832705307647870">Udfyld automatisk siden Ny fane med populære websites.</translation>
<translation id="6584878029876017575">Microsoft-signering af levetid</translation>
<translation id="6585234750898046415">Vælg et billede, som skal vises på loginskærmen for din konto.</translation>
<translation id="6585283250473596934">Starter offentlig session.</translation>
@@ -4293,6 +4310,7 @@ slettes permanent, når den administrerede bruger fjernes. Besøgte websites og
<translation id="7092106376816104">Undtagelser for pop op-vinduer</translation>
<translation id="7093866338626856921">Udveksle data med enhederne ved navn: <ph name="HOSTNAMES" /></translation>
<translation id="7096082900368329802">Vil du opleve flere fantastiske funktioner?</translation>
+<translation id="7098389117866926363">USB-C-enhed (porten bagpå i venstre side)</translation>
<translation id="7100897339030255923"><ph name="COUNT" /> elementer er markeret</translation>
<translation id="7106346894903675391">Køb mere lagerplads...</translation>
<translation id="7108338896283013870">Skjul</translation>
@@ -4363,7 +4381,7 @@ slettes permanent, når den administrerede bruger fjernes. Besøgte websites og
<translation id="7219179957768738017">Forbindelsen bruger <ph name="SSL_VERSION" />.</translation>
<translation id="7219357088166514551">Søg på <ph name="ENGINE" />, eller indtast webadressen</translation>
<translation id="7221155467930685510">$1 GB</translation>
-<translation id="7221855153210829124">Vis underretninger</translation>
+<translation id="7221855153210829124">Vise underretninger</translation>
<translation id="7221869452894271364">Genindlæs denne side</translation>
<translation id="7222232353993864120">E-mailadresse</translation>
<translation id="7222245588540287464">Uanset om Kontekstuel søgning er aktiveret.</translation>
@@ -4675,7 +4693,7 @@ Psst! Prøv at bruge Inkognitotilstand <ph name="SHORTCUT_KEY" /> næste gang.</
<translation id="7646821968331713409">Antallet af rastertråde</translation>
<translation id="7648048654005891115">Tastaturoversigt</translation>
<translation id="7648595706644580203">Bevægelsesredigering på det virtuelle tastatur.</translation>
-<translation id="7648992873808071793">Gem filer på denne enhed</translation>
+<translation id="7648992873808071793">Gemme filer på denne enhed</translation>
<translation id="7649070708921625228">Hjælp</translation>
<translation id="7650511557061837441">"<ph name="TRIGGERING_EXTENSION_NAME" />" vil gerne fjerne "<ph name="EXTENSION_NAME" />".</translation>
<translation id="7650701856438921772"><ph name="PRODUCT_NAME" /> vises på dette sprog</translation>
@@ -5062,6 +5080,7 @@ Beregner resterende tid</translation>
<translation id="8190193592390505034">Forbinder til <ph name="PROVIDER_NAME" /></translation>
<translation id="8191230140820435481">Administrere dine apps, udvidelser og temaer</translation>
<translation id="8191453843330043793">V8-proxyresolver</translation>
+<translation id="8199491812735365610">Vælg en konto for at logge ind</translation>
<translation id="8200772114523450471">Genoptag</translation>
<translation id="8202160505685531999">Angiv adgangskoden igen for at opdatere din <ph name="DEVICE_TYPE" />-profil.</translation>
<translation id="8204086856545141093">Anmodninger til serveren er blevet blokeret af en politik.</translation>
@@ -5150,7 +5169,7 @@ Beregner resterende tid</translation>
for at undersøge din forbindelse.</translation>
<translation id="8303655282093186569">Indstillinger for pinyin-indtastning</translation>
<translation id="830598693585544337">Aktivering af denne indstilling forhindrer websites i at få adgang til WebAudio API.</translation>
-<translation id="8306534594034939679">Aktivér understøttelse af alternative tjenester – en eksperimentel HTTP-funktion.</translation>
+<translation id="8306534594034939679">Aktivér understøttelse af Alternative Services – en eksperimentel HTTP-funktion.</translation>
<translation id="8307376264102990850">Oplader Beregner tid, indtil fuld</translation>
<translation id="8308179586020895837">Spørg, om <ph name="HOST" /> vil have adgang til dit kamera</translation>
<translation id="830868413617744215">Beta</translation>
@@ -5192,6 +5211,7 @@ Beregner resterende tid</translation>
<translation id="8381977081675353473">Slovakisk</translation>
<translation id="8382645631174981738"><ph name="EXTENSION_NAME" /> blev installeret via fjernadgang</translation>
<translation id="8382913212082956454">Kopier &amp;e-mailadresse</translation>
+<translation id="8384113940676655504">Aktiverer en Smart Lock-indstilling, der tillader Chromebook at finde telefoner via Bluetooth Low Energy, så Chromebook kan låses op, når telefonen er i nærheden.</translation>
<translation id="8390029840652165810">Sørg for, at din netværksforbindelse virker, og hvis problemet fortsætter, skal du logge ind og ud igen for at opdatere dine loginoplysninger.</translation>
<translation id="8390445751804042000">Aktiverer funktionen, at enheden vågner ved modtagelse af netværkspakker.</translation>
<translation id="8390449457866780408">Serveren er utilgængelig.</translation>
@@ -5278,6 +5298,7 @@ Beregner resterende tid</translation>
<translation id="8509646642152301857">Download af ordbog til stavekontrol mislykkedes.</translation>
<translation id="8512476990829870887">Afslut proces</translation>
<translation id="851263357009351303">Tillad altid, at <ph name="HOST" /> viser billeder</translation>
+<translation id="8513191386157529469">"<ph name="CLIENT_NAME" />" er ved at rette fejl i denne browser.</translation>
<translation id="8513974249124254369">Talefeedback er aktiveret. Tryk på Ctrl+Alt+Z for at deaktivere dette.</translation>
<translation id="8515737884867295000">Den certifikatbaserede godkendelse mislykkedes</translation>
<translation id="8518865679229538285">Tamilsk indtastningsmetode (Skrivemaskine)</translation>
@@ -5397,6 +5418,7 @@ Beregner resterende tid</translation>
<translation id="8677039480012021122">Ryd data, og afbryd forbindelsen</translation>
<translation id="8677212948402625567">Skjul alle...</translation>
<translation id="8678648549315280022">Administrer downloadindstillinger...</translation>
+<translation id="8680251145628383637">Log ind for at få dine bogmærker, din historik, dine adgangskoder og dine øvrige indstillinger på alle dine enheder. Du bliver også automatisk logget ind på dine Google-tjenester.</translation>
<translation id="8680536109547170164"><ph name="QUERY" />, svar, <ph name="ANSWER" /></translation>
<translation id="8680787084697685621">Oplysningerne om kontologin er forældede.</translation>
<translation id="8684255857039823328">Adgangskoden blev gemt. Få adgang til dine adgangskoder fra enhver enhed via <ph name="MANAGEMENT_LINK" />.</translation>
@@ -5446,12 +5468,13 @@ Beregner resterende tid</translation>
<translation id="8734073480934656039">Ved at aktivere denne indstilling tillader du, at terminalapplikationer åbnes automatisk under opstart.</translation>
<translation id="8736288397686080465">Dette website er blevet opdateret i baggrunden.</translation>
<translation id="8737260648576902897">Installer Adobe Reader</translation>
-<translation id="8737685506611670901">Åbn <ph name="PROTOCOL" />-links i stedet for <ph name="REPLACED_HANDLER_TITLE" /></translation>
+<translation id="8737685506611670901">Åbne <ph name="PROTOCOL" />-links i stedet for <ph name="REPLACED_HANDLER_TITLE" /></translation>
<translation id="8737709691285775803">Shill</translation>
<translation id="87377425248837826">Aktiver paneler</translation>
<translation id="874420130893181774">Traditionel Pinyin-indtastningsmetode</translation>
<translation id="8744525654891896746">Vælg en avatar for denne administrerede bruger</translation>
<translation id="8744641000906923997">Romaji</translation>
+<translation id="8744959718895556609">Vælg en konto fra <ph name="LINK_TEXT" /></translation>
<translation id="8749863574775030885">Få adgang til USB-enheder fra en ukendt leverandør</translation>
<translation id="8754200782896249056">&lt;p&gt;Når <ph name="PRODUCT_NAME" /> kører i et understøttet computermiljø, anvendes systemets proxyindstillinger. Dit system understøttes imidlertid ikke, eller også er der opstået et problem ved opstart af din systemkonfiguration.
&lt;/p&gt;
@@ -5573,6 +5596,7 @@ Beregner resterende tid</translation>
<translation id="8933960630081805351">&amp;Vis i Finder</translation>
<translation id="8934732568177537184">Fortsæt</translation>
<translation id="8938356204940892126">Jeg giver op</translation>
+<translation id="8938800817013097409">USB-C-enhed (porten bagpå i højre side)</translation>
<translation id="8940081510938872932">Computeren foretager sig for mange ting i øjeblikket. Prøv igen senere.</translation>
<translation id="8941173171815156065">Tilbagekald tilladelsen "<ph name="PERMISSION" />"</translation>
<translation id="8941248009481596111">Din forbindelse til dette website er privat.</translation>
diff --git a/chromium/chrome/app/resources/generated_resources_de.xtb b/chromium/chrome/app/resources/generated_resources_de.xtb
index 229f90f5b5b..6204b3d6f2f 100644
--- a/chromium/chrome/app/resources/generated_resources_de.xtb
+++ b/chromium/chrome/app/resources/generated_resources_de.xtb
@@ -134,6 +134,8 @@
<translation id="1178581264944972037">Anhalten</translation>
<translation id="1179803038870941185"><ph name="URL" /> fordert die vollständige Kontrolle über Ihre MIDI-Geräte.</translation>
<translation id="1181037720776840403">Entfernen</translation>
+<translation id="11814323404622888">"&gt;
+ USB-C-Gerät (Port hinten rechts)</translation>
<translation id="1183083053288481515">Vom Administrator bereitgestelltes Zertifikat verwenden</translation>
<translation id="1183237619868651138"><ph name="EXTERNAL_CRX_FILE" /> kann nicht im lokalen Cache installiert werden.</translation>
<translation id="1185924365081634987">Sie können auch <ph name="GUEST_SIGNIN_LINK_START" />als Gast surfen<ph name="GUEST_SIGNIN_LINK_END" />, um den Netzwerkfehler zu beheben.</translation>
@@ -327,6 +329,7 @@
<translation id="1468038450257740950">WebGL wird nicht unterstützt.</translation>
<translation id="1470719357688513792">Neue Cookie-Einstellungen werden nach erneutem Laden der Seite wirksam.</translation>
<translation id="14720830734893704">Aktiviert die Unterstützung für die Bildschirmtastatur.</translation>
+<translation id="1474079335130556426">Aktivieren Sie für die Push API den Hintergrundmodus. Dadurch kann Chrome nach dem Schließen des letzten Fensters weiter ausgeführt und beim Hochfahren des Betriebssystems gestartet werden, sofern dies für die Push API erforderlich ist.</translation>
<translation id="1474339897586437869">"<ph name="FILENAME" />" konnte nicht hochgeladen werden. In Ihrem Google Drive-Konto ist nicht genügend Speicherplatz frei.</translation>
<translation id="1476503841242751994">{COUNT,plural, =1{1 Passwort}other{# Passwörter}}</translation>
<translation id="1476949146811612304">Legen Sie fest, welche Suchmaschine bei einer Suche über die <ph name="BEGIN_LINK" />Omnibox<ph name="END_LINK" /> verwendet werden soll.</translation>
@@ -648,6 +651,7 @@
<translation id="1918141783557917887">&amp;Kleiner</translation>
<translation id="192144045824434199">Fenster mit Steuerfeldern, die außerhalb des Browser-Frames geöffnet werden, aktivieren. Ist diese Funktion deaktiviert, wird anstelle eines Steuerfelds ein Pop-up-Fenster geöffnet. Für die Entwickler- und Canary-Version sind Steuerfelder standardmäßig aktiviert.</translation>
<translation id="1921584744613111023"><ph name="DPI" /> dpi</translation>
+<translation id="1921986354447415460">Tastatur "Türkisch-F"</translation>
<translation id="1923786009776354244">Unterstützung für Origin-Header bei WebRTC-Stuns aktivieren</translation>
<translation id="1926741348654461781">Offlineseiten aktivieren</translation>
<translation id="1929546189971853037">Browserverlauf auf allen Ihren angemeldeten Geräten lesen</translation>
@@ -846,6 +850,7 @@
<translation id="2231990265377706070">Ausrufezeichen</translation>
<translation id="2232876851878324699">Die Datei enthielt ein Zertifikat, das nicht importiert wurde:</translation>
<translation id="2233502537820838181">&amp;Weitere Informationen</translation>
+<translation id="2233587473672843170">Beliebte Websites auf der "Neuer Tab"-Seite anzeigen</translation>
<translation id="223714078860837942">Wenn für eine Seite keine explizite Verweisrichtlinie festgelegt ist, wird durch diese Einstellung die Menge an Informationen im "Referer"-Header bei ursprungsübergreifenden Anforderungen reduziert.</translation>
<translation id="2238379619048995541">Daten für aktiven Zustand</translation>
<translation id="2239921694246509981">Betreuten Nutzer hinzufügen</translation>
@@ -921,6 +926,7 @@ Nach der Erstellung eines neuen betreuten Nutzers können Sie die Einstellungen
<translation id="2326606747676847821">Zum Inkognitomodus wechseln</translation>
<translation id="2326931316514688470">App &amp;neu laden</translation>
<translation id="2327492829706409234">App aktivieren</translation>
+<translation id="2329597144923131178">Melden Sie sich an, um Ihre Lesezeichen, Ihren Verlauf, Ihre Passwörter und andere Einstellungen auf allen Ihren Geräten aufzurufen.</translation>
<translation id="2332131598580221120">Im Store ansehen</translation>
<translation id="2332742915001411729">Auf Standardeinstellungen zurücksetzen</translation>
<translation id="2335122562899522968">Diese Seite hat Cookies gesetzt.</translation>
@@ -1308,6 +1314,7 @@ Ich glaube nicht, dass diese Website blockiert werden sollte.</translation>
<translation id="2838379631617906747">Installation läuft...</translation>
<translation id="2841837950101800123">Anbieter</translation>
<translation id="2843806747483486897">Standardeinstellungen ändern...</translation>
+<translation id="2844169650293029770">USB-C-Gerät (Port vorne links)</translation>
<translation id="2845382757467349449">Lesezeichenleiste immer anzeigen</translation>
<translation id="2846816712032308263">Aktiviert schnelles Schließen von Tabs und Fenstern – führt den onunload-JS-Handler eines Tabs unabhängig von der GUI aus</translation>
<translation id="284970761985428403"><ph name="ASCII_NAME" /> (<ph name="UNICODE_NAME" />)</translation>
@@ -1372,6 +1379,7 @@ Ich glaube nicht, dass diese Website blockiert werden sollte.</translation>
<translation id="2923469375796950815">Neuen ZIP-Datei-Entpacker deaktivieren</translation>
<translation id="2924296707677495905">Transliteration (namaskaram → ನಮಸ್ಕಾರ)</translation>
<translation id="2925966894897775835">Tabellen</translation>
+<translation id="2927017729816812676">Cache-Speicher</translation>
<translation id="2927657246008729253">Ändern...</translation>
<translation id="2928526264833629376">Weiter zu Hangouts</translation>
<translation id="2930644991850369934">Beim Download des Wiederherstellungsabbilds ist ein Problem aufgetreten. Die Netzwerkverbindung wurde unterbrochen.</translation>
@@ -1713,6 +1721,7 @@ Ich glaube nicht, dass diese Website blockiert werden sollte.</translation>
<translation id="3396331542604645348">Der ausgewählte Drucker ist entweder nicht verfügbar oder nicht ordnungsgemäß installiert. Überprüfen Sie den Drucker oder wählen Sie einen anderen Drucker aus.</translation>
<translation id="3399597614303179694">Mazedonische Tastatur</translation>
<translation id="340013220407300675">Unbefugte Dritte könnten versuchen, Ihre Informationen von <ph name="BEGIN_BOLD" /><ph name="SITE" /><ph name="END_BOLD" /> zu stehlen, z. B. Passwörter, Nachrichten oder Kreditkartendaten.</translation>
+<translation id="3401130144947259741">Ist die Option aktiviert, werden Trace-Ereignisse in Event Tracing for Windows (ETW) exportiert und können von Tools wie UIF oder ETW oder Xperf erfasst werden.</translation>
<translation id="340282674066624"><ph name="DOWNLOAD_RECEIVED" />, <ph name="TIME_LEFT" /></translation>
<translation id="3406605057700382950">&amp;Lesezeichenleiste anzeigen</translation>
<translation id="3412265149091626468">Auswahl anzeigen</translation>
@@ -1872,6 +1881,7 @@ Ich glaube nicht, dass diese Website blockiert werden sollte.</translation>
<translation id="3603385196401704894">Kanadisches Französisch</translation>
<translation id="3603622770190368340">Netzwerkzertifikat anfordern</translation>
<translation id="3605780360466892872">Hemdträger</translation>
+<translation id="3606220979431771195">Türkisch-F</translation>
<translation id="3608454375274108141">F10</translation>
<translation id="3608576286259426129">Vorschau für Nutzerbild</translation>
<translation id="3609138628363401169">Der Server unterstützt die TLS-Renegotiation-Erweiterung nicht.</translation>
@@ -2392,6 +2402,7 @@ Alle Nutzer müssen sich abmelden, um fortfahren zu können.</translation>
<translation id="4321136812570927563">{NUM_DOWNLOAD,plural, =1{Download fortsetzen}other{Downloads fortsetzen}}</translation>
<translation id="4321179778687042513">Strg</translation>
<translation id="4322394346347055525">Andere Tabs schließen</translation>
+<translation id="4325378361067528777">Hintergrundmodus für Push API aktivieren</translation>
<translation id="4326952458285403282">Dadurch wird die Nutzung des experimentellen DirectWrite-Systems für die Schriftdarstellung deaktiviert.</translation>
<translation id="4326999707196471878">Browser-Dialogfelder über Toolkit-Views.</translation>
<translation id="4330406155931244378">Mehrsprachige Rechtschreibprüfung aktivieren</translation>
@@ -2928,6 +2939,8 @@ Drücken Sie eine beliebige Taste, um fortzufahren.</translation>
<translation id="5148652308299789060">3D-Software-Raster deaktivieren</translation>
<translation id="5150254825601720210">SSL-Servername für Netscape-Zertifikat</translation>
<translation id="5151034238407558331">Google Payments kann für diesen Händler nur von Käufern mit Adresse in den USA verwendet werden. Wenn Sie ein US-Einwohner sind, |ändern Sie Ihre Privatadresse in Google Payments| oder bezahlen Sie ohne Google Payments.</translation>
+<translation id="5151639798712723370">"&gt;
+ USB-C-Gerät (Port vorne rechts)</translation>
<translation id="5152451685298621771">(Konto für Kinder)</translation>
<translation id="5154108062446123722">Erweiterte Einstellungen für <ph name="PRINTING_DESTINATION" /></translation>
<translation id="5154176924561037127">F8</translation>
@@ -3024,6 +3037,7 @@ Drücken Sie eine beliebige Taste, um fortzufahren.</translation>
<translation id="5271247532544265821">Zwischen Modi für vereinfachtes/traditionelles Chinesisch umschalten</translation>
<translation id="5271549068863921519">Passwort speichern</translation>
<translation id="5273628206174272911">Experimentelle Navigation im Verlauf durch waagrechten Overscroll</translation>
+<translation id="5275795814002959418"><ph name="COUNT" /> von dieser Website</translation>
<translation id="5275973617553375938">Wiederhergestellte Dateien von Google Drive</translation>
<translation id="527605719918376753">Tab stummschalten</translation>
<translation id="527605982717517565">JavaScript auf <ph name="HOST" /> immer zulassen</translation>
@@ -3070,6 +3084,7 @@ Drücken Sie eine beliebige Taste, um fortzufahren.</translation>
<translation id="5328285148748012771">Greifen Sie über diese praktische Übersicht auf alle Ihre Apps zu. Spielen Sie Spiele, führen Sie Video-Chats, hören Sie Musik, bearbeiten Sie Dokumente oder laden Sie weitere Apps aus dem Chrome Web Store herunter.</translation>
<translation id="5329858601952122676">&amp;Löschen</translation>
<translation id="5330145655348521461">Diese Dateien wurden auf einem anderen Desktop geöffnet. Wechseln Sie zu <ph name="USER_NAME" /> (<ph name="MAIL_ADDRESS" />), um sie anzusehen.</translation>
+<translation id="5331975486040154427">USB-C-Gerät (Port hinten links)</translation>
<translation id="5332624210073556029">Zeitzone:</translation>
<translation id="5334142896108694079">Skript-Cache</translation>
<translation id="533433379391851622">Erwartete Version: "<ph name="EXPECTED_VERSION" />", tatsächliche Version: "<ph name="NEW_ID" />"</translation>
@@ -3116,6 +3131,7 @@ Drücken Sie eine beliebige Taste, um fortzufahren.</translation>
<translation id="539755880180803351">Versieht Web-Formulare mit AutoFill-Eingabevorschlägen als Platzhaltertext</translation>
<translation id="5397578532367286026">Die Nutzung und der Verlauf des Nutzers sind für den Manager (<ph name="MANAGER_EMAIL" />) unter chrome.com einsehbar.</translation>
<translation id="5397794290049113714">Ich</translation>
+<translation id="5398824043967640339"><ph name="COUNT" /> von anderen Websites</translation>
<translation id="5399158067281117682">PINs stimmen nicht überein!</translation>
<translation id="5400640815024374115">Der TPM-Chip (Trusted Platform Module) ist deaktiviert oder fehlt.</translation>
<translation id="5402367795255837559">Braille</translation>
@@ -3924,6 +3940,7 @@ nicht auf unsichere Verbindungen zurück.</translation>
<translation id="6575251558004911012">Nachfragen, wenn eine Website auf Ihre Kamera zugreifen möchte (empfohlen)</translation>
<translation id="6581162200855843583">Google Drive-Link</translation>
<translation id="6583070985841601920">Angemeldet als <ph name="USER_EMAIL_ADDRESS" />. Die Synchronisierung wurde von Ihrem Administrator deaktiviert.</translation>
+<translation id="65832705307647870">"Neuer Tab"-Seite vorab mit beliebten Websites füllen.</translation>
<translation id="6584878029876017575">Microsoft-Lebensdauersignatur</translation>
<translation id="6585234750898046415">Wählen Sie ein Bild aus, das auf der Anmeldeseite für Ihr Konto zu sehen sein soll.</translation>
<translation id="6585283250473596934">Öffentliche Sitzung wird gestartet.</translation>
@@ -4263,6 +4280,7 @@ nicht auf unsichere Verbindungen zurück.</translation>
<translation id="7092106376816104">Ausnahmen für Pop-ups</translation>
<translation id="7093866338626856921">Daten mit den Geräten mit folgenden Namen austauschen: <ph name="HOSTNAMES" /></translation>
<translation id="7096082900368329802">Möchten Sie weitere tolle Funktionen kennenlernen?</translation>
+<translation id="7098389117866926363">USB-C-Gerät (linker Port hinten)</translation>
<translation id="7100897339030255923"><ph name="COUNT" /> Elemente ausgewählt</translation>
<translation id="7106346894903675391">Mehr Speicherplatz erwerben...</translation>
<translation id="7108338896283013870">Ausblenden</translation>
@@ -5034,6 +5052,7 @@ Speichern Sie Ihre Schlüsseldatei an einem sicheren Ort. Sie benötigen die Dat
<translation id="8190193592390505034">Verbindung zu <ph name="PROVIDER_NAME" /> wird hergestellt.</translation>
<translation id="8191230140820435481">Apps, Erweiterungen und Designs verwalten</translation>
<translation id="8191453843330043793">V8-Proxy-Resolver</translation>
+<translation id="8199491812735365610">Konto zur Anmeldung auswählen</translation>
<translation id="8200772114523450471">Fortsetzen</translation>
<translation id="8202160505685531999">Geben Sie Ihr Passwort erneut ein, um Ihr <ph name="DEVICE_TYPE" />-Profil zu aktualisieren.</translation>
<translation id="8204086856545141093">An den Server gerichtete Anfragen wurden durch eine Richtlinie blockiert.</translation>
@@ -5164,6 +5183,7 @@ Speichern Sie Ihre Schlüsseldatei an einem sicheren Ort. Sie benötigen die Dat
<translation id="8381977081675353473">Slowakisch</translation>
<translation id="8382645631174981738"><ph name="EXTENSION_NAME" /> wurde remote installiert.</translation>
<translation id="8382913212082956454">E-Mail-Adr&amp;esse kopieren</translation>
+<translation id="8384113940676655504">Hierdurch wird eine Smart Lock-Einstellung aktiviert, mit der das Chromebook Smartphones über Bluetooth Low Energy erkennen kann, sodass das Chromebook entsperrt wird, sobald sich das Smartphone in der Nähe befindet.</translation>
<translation id="8390029840652165810">Überprüfen Sie, ob Ihre Netzwerkverbindung funktioniert. Falls das Problem weiterhin besteht, melden Sie sich ab und wieder an, um Ihre Anmeldedaten neu zu laden.</translation>
<translation id="8390445751804042000">Ermöglicht beim Gerät das Beenden des Ruhemodus durch den Empfang von Netzwerkpaketen.</translation>
<translation id="8390449457866780408">Der Server ist nicht verfügbar.</translation>
@@ -5250,6 +5270,7 @@ Speichern Sie Ihre Schlüsseldatei an einem sicheren Ort. Sie benötigen die Dat
<translation id="8509646642152301857">Beim Herunterladen des Wörterbuchs für die Rechtschreibprüfung ist ein Fehler aufgetreten.</translation>
<translation id="8512476990829870887">Prozess beenden</translation>
<translation id="851263357009351303">Anzeige von Bildern für <ph name="HOST" /> immer zulassen</translation>
+<translation id="8513191386157529469">"<ph name="CLIENT_NAME" />" führt ein Debugging für diesen Browser durch.</translation>
<translation id="8513974249124254369">ChromeVox (gesprochenes Feedback) ist aktiviert. Zum Deaktivieren Strg+Alt+Z drücken.</translation>
<translation id="8515737884867295000">Zertifikatbasierte Authentifizierung fehlgeschlagen</translation>
<translation id="8518865679229538285">Tamilische Eingabemethode (Typewriter)</translation>
@@ -5369,6 +5390,7 @@ Speichern Sie Ihre Schlüsseldatei an einem sicheren Ort. Sie benötigen die Dat
<translation id="8677039480012021122">Daten löschen und Verbindung trennen</translation>
<translation id="8677212948402625567">Alle minimieren...</translation>
<translation id="8678648549315280022">Download-Einstellungen verwalten...</translation>
+<translation id="8680251145628383637">Melden Sie sich an, um Ihre Lesezeichen, Ihren Verlauf und Ihre anderen Einstellungen auf allen Ihren Geräten zu sehen. Sie werden auch automatisch in Ihren Google-Diensten angemeldet.</translation>
<translation id="8680536109547170164"><ph name="QUERY" />, Antwort, <ph name="ANSWER" /></translation>
<translation id="8680787084697685621">Die Anmeldeinformationen für dieses Konto sind veraltet.</translation>
<translation id="8684255857039823328">Passwort gespeichert. Unter <ph name="MANAGEMENT_LINK" /> können Sie auf alle Ihre Passwörter zugreifen.</translation>
@@ -5424,6 +5446,7 @@ Speichern Sie Ihre Schlüsseldatei an einem sicheren Ort. Sie benötigen die Dat
<translation id="874420130893181774">Traditionelle Pinyin-Eingabemethode</translation>
<translation id="8744525654891896746">Avatar für den betreuten Nutzer auswählen</translation>
<translation id="8744641000906923997">Romaji</translation>
+<translation id="8744959718895556609">Konto aus <ph name="LINK_TEXT" /> wählen</translation>
<translation id="8749863574775030885">Auf USB-Geräte von einem unbekannten Anbieter zugreifen</translation>
<translation id="8754200782896249056">&lt;p&gt;Bei der Ausführung von <ph name="PRODUCT_NAME" /> in einer unterstützten Desktop-Umgebung werden die Proxy-Einstellungen des Systems verwendet. Allerdings wird entweder Ihr System nicht unterstützt oder Ihre Systemkonfiguration konnte nicht gestartet werden.&lt;/p&gt;
@@ -5544,6 +5567,7 @@ Speichern Sie Ihre Schlüsseldatei an einem sicheren Ort. Sie benötigen die Dat
<translation id="8933960630081805351">Im Finder &amp;anzeigen</translation>
<translation id="8934732568177537184">Weiter</translation>
<translation id="8938356204940892126">Abbrechen</translation>
+<translation id="8938800817013097409">USB-C-Gerät (rechter Port hinten)</translation>
<translation id="8940081510938872932">Ihr Computer erledigt momentan zu viele Aufgaben gleichzeitig. Bitte versuchen Sie es später erneut.</translation>
<translation id="8941173171815156065">Berechtigung "<ph name="PERMISSION" />" aufheben</translation>
<translation id="8941248009481596111">Ihre Verbindung zu dieser Website ist privat.</translation>
diff --git a/chromium/chrome/app/resources/generated_resources_el.xtb b/chromium/chrome/app/resources/generated_resources_el.xtb
index bf4b0d96b52..3417ea9cc0c 100644
--- a/chromium/chrome/app/resources/generated_resources_el.xtb
+++ b/chromium/chrome/app/resources/generated_resources_el.xtb
@@ -137,6 +137,8 @@
<translation id="1178581264944972037">Παύση</translation>
<translation id="1179803038870941185">Η διεύθυνση <ph name="URL" /> επιθυμεί να αποκτήσει τον πλήρη έλεγχο των συσκευών σας MIDI.</translation>
<translation id="1181037720776840403">Κατάργηση</translation>
+<translation id="11814323404622888">"&gt;
+ Συσκευή USB-C (πίσω δεξιά θύρα)</translation>
<translation id="1183083053288481515">Mε τη χρήση ενός πιστοποιητικού που παρασχέθηκε από διαχειριστή</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>
@@ -330,6 +332,7 @@
<translation id="1468038450257740950">Το WebGL δεν υποστηρίζεται.</translation>
<translation id="1470719357688513792">Οι ρυθμίσεις νέων cookie θα εφαρμοστούν μετά την επανάληψη φόρτωσης της σελίδας.</translation>
<translation id="14720830734893704">Ενεργοποίηση υποστήριξης εικονικού πληκτρολογίου.</translation>
+<translation id="1474079335130556426">Ενεργοποιήστε τη λειτουργία παρασκηνίου για το Push API. Με αυτή την ενέργεια, θα επιτραπεί στο Chrome να συνεχίσει να εκτελείται μετά το κλείσιμο του τελευταίου παραθύρου και να εκκινηθεί κατά την έναρξη του λειτουργικού συστήματος, αν είναι απαραίτητο για το Push API.</translation>
<translation id="1474339897586437869">Το αρχείο "<ph name="FILENAME" />" δεν ανέβηκε. Δεν υπάρχει επαρκής ελεύθερος χώρος στο Google Drive σας.</translation>
<translation id="1476503841242751994">{COUNT,plural, =1{1 κωδικός πρόσβασης}other{# κωδικοί πρόσβασης}}</translation>
<translation id="1476949146811612304">Ορίστε ποια μηχανή αναζήτησης θα χρησιμοποιείται κατά την αναζήτηση από το
@@ -655,6 +658,7 @@
<translation id="1918141783557917887">&amp;Σμίκρυνση</translation>
<translation id="192144045824434199">Ενεργοποίηση των παραθύρων του πίνακα που ανοίγουν εκτός του πλαισίου του προγράμματος περιήγησης. Αν γίνουν προσπάθειες για να ανοίξει ένας πίνακας, θα ανοίξει ένα αναδυόμενο παράθυρο εάν δεν είναι ενεργοποιημένος. Οι πίνακες είναι πάντα ενεργοποιημένοι στα κανάλια dev και canary</translation>
<translation id="1921584744613111023"><ph name="DPI" /> dpi</translation>
+<translation id="1921986354447415460">Πληκτρολόγιο Τουρκικών-F</translation>
<translation id="1923786009776354244">Ενεργοποίηση υποστήριξης για κεφαλίδα προέλευσης WebRTC Stun.</translation>
<translation id="1926741348654461781">Ενεργοποίηση σελίδων εκτός σύνδεσης</translation>
<translation id="1929546189971853037">Ανάγνωση του ιστορικού περιήγησής σας σε όλες τις συνδεδεμένες συσκευές σας</translation>
@@ -855,6 +859,7 @@
<translation id="2231990265377706070">Θαυμαστικό</translation>
<translation id="2232876851878324699">Το αρχείο περιείχε ένα πιστοποιητικό, το οποίο δεν εισάχθηκε: </translation>
<translation id="2233502537820838181">&amp;Περισσότερες πληροφορίες</translation>
+<translation id="2233587473672843170">Εμφάνιση δημοφιλών ιστότοπων στη Σελίδα σε νέα καρτέλα</translation>
<translation id="223714078860837942">Εάν μια σελίδα δεν έχει ορίσει μια αποκλειστική πολιτική referrer, η ρύθμιση αυτής της επισήμανσης θα μειώσει τον όγκο των πληροφοριών στην κεφαλίδα "referer" για αιτήματα πολλαπλής προέλευσης.</translation>
<translation id="2238379619048995541">Δεδομένα κατάστασης συχνότητας</translation>
<translation id="2239921694246509981">Προσθήκη εποπτευόμενου ατόμου</translation>
@@ -933,6 +938,7 @@
<translation id="2326606747676847821">Ανώνυμη περιήγηση</translation>
<translation id="2326931316514688470">Ε&amp;πανάληψη φόρτωσης εφαρμογής</translation>
<translation id="2327492829706409234">Ενεργοποίηση εφαρμογής</translation>
+<translation id="2329597144923131178">Συνδεθείτε για χρήση σελιδοδεικτών, ιστορικού, κωδ.πρόσβ. κ.λπ. σε όλες τις συσκευές.</translation>
<translation id="2332131598580221120">Προβολή στο Web Store</translation>
<translation id="2332742915001411729">Επαναφορά προεπιλογής</translation>
<translation id="2335122562899522968">Αυτή η σελίδα έχει ορίσει cookie.</translation>
@@ -1321,6 +1327,7 @@
<translation id="2838379631617906747">Γίνεται Εγκατάσταση</translation>
<translation id="2841837950101800123">Πάροχος</translation>
<translation id="2843806747483486897">Αλλαγή προεπιλογής...</translation>
+<translation id="2844169650293029770">Συσκευή USB-C (αριστερή μπροστινή θύρα)</translation>
<translation id="2845382757467349449">Διαρκής εμφάνιση γραμμής σελιδοδεικτών</translation>
<translation id="2846816712032308263">Ενεργοποιεί το γρήγορο κλείσιμο καρτέλας/παραθύρου - εκτελεί το δείκτη χειρισμού onunload js μιας καρτέλας ανεξάρτητα από το GUI.</translation>
<translation id="284970761985428403"><ph name="ASCII_NAME" /> (<ph name="UNICODE_NAME" />)</translation>
@@ -1390,6 +1397,7 @@
<translation id="2923469375796950815">Απενεργοποιήστε τον νέο Αποσυμπιεστή ZIP.</translation>
<translation id="2924296707677495905">Μεταγραφή (namaskaram → ನಮಸ್ಕಾರ)</translation>
<translation id="2925966894897775835">Φύλλα</translation>
+<translation id="2927017729816812676">Χώρος αποθήκευσης κρυφής μνήμης</translation>
<translation id="2927657246008729253">Αλλαγή...</translation>
<translation id="2928526264833629376">Συνέχεια στο Hangouts</translation>
<translation id="2930644991850369934">Προέκυψε πρόβλημα κατά τη λήψη της εικόνας ανάκτησης. Χάθηκε η σύνδεση δικτύου.</translation>
@@ -1733,6 +1741,7 @@
<translation id="3396331542604645348">Ο επιλεγμένος εκτυπωτής δεν είναι διαθέσιμος ή δεν έχει εγκατασταθεί σωστά. Ελέγξτε τον εκτυπωτή σας ή δοκιμάστε να επιλέξετε άλλον εκτυπωτή.</translation>
<translation id="3399597614303179694">Πληκτρολόγιο Σλαβομακεδονικών</translation>
<translation id="340013220407300675">Οι εισβολείς ενδέχεται να προσπαθούν να υποκλέψουν τα στοιχεία σας από <ph name="BEGIN_BOLD" /><ph name="SITE" /><ph name="END_BOLD" /> (για παράδειγμα κωδικούς πρόσβασης, μηνύματα ή πιστωτικές κάρτες).</translation>
+<translation id="3401130144947259741">Αν είναι ενεργοποιημένη, τα συμβάντα ανίχνευσης θα εξάγονται στο Event Tracing for Windows (ETW) και θα μπορούν να καταγραφούν στη συνέχεια από εργαλεία όπως το UIForETW ή το Xperf.</translation>
<translation id="340282674066624"><ph name="DOWNLOAD_RECEIVED" />, <ph name="TIME_LEFT" /></translation>
<translation id="3406605057700382950">&amp;Εμφάνιση γραμμής σελιδοδεικτών</translation>
<translation id="3412265149091626468">Μετάβαση στην Επιλογή</translation>
@@ -1890,6 +1899,7 @@
<translation id="3603385196401704894">Γαλλικά Καναδά</translation>
<translation id="3603622770190368340">Απόκτηση πιστοποιητικού δικτύου</translation>
<translation id="3605780360466892872">Άνετος</translation>
+<translation id="3606220979431771195">Τουρκικά-F</translation>
<translation id="3608454375274108141">F10</translation>
<translation id="3608576286259426129">Προεπισκόπηση εικόνας χρήστη</translation>
<translation id="3609138628363401169">Ο διακομιστής δεν υποστηρίζει την επέκταση επαναδιαπραγμάτευσης TLS.</translation>
@@ -2410,6 +2420,7 @@
<translation id="4321136812570927563">{NUM_DOWNLOAD,plural, =1{Συνέχιση λήψης}other{Συνέχιση λήψεων}}</translation>
<translation id="4321179778687042513">ctrl</translation>
<translation id="4322394346347055525">Κλείσιμο Άλλων Καρτελών</translation>
+<translation id="4325378361067528777">Ενεργοποίηση λειτουργίας παρασκηνίου του Push API</translation>
<translation id="4326952458285403282">Απενεργοποιεί τη χρήση του πειραματικού συστήματος απόδοσης γραμματοσειράς DirectWrite.</translation>
<translation id="4326999707196471878">Παράθυρα διαλόγου προγράμματος περιήγησης προβολών εργαλειοθήκης.</translation>
<translation id="4330406155931244378">Ενεργοποίηση πολυγλωσσικού ορθογραφικού ελέγχου</translation>
@@ -2955,6 +2966,7 @@
<translation id="5148652308299789060">Απενεργοποίηση προγράμματος επεξεργασίας ράστερ τρισδιάστατου λογισμικού</translation>
<translation id="5150254825601720210">Όνομα διακομιστή SSL πιστοποιητικού Netscape</translation>
<translation id="5151034238407558331">Δυστυχώς, το Google Payments μπορεί να χρησιμοποιηθεί σε αυτόν τον έμπορο μόνο από αγοραστές που διαθέτουν διεύθυνση στις ΗΠΑ. Αν είστε κάτοικος των ΗΠΑ, |αλλάξτε τη διεύθυνση οικίας στο Google Payments| ή πληρώστε χωρίς να χρησιμοποιήσετε το Google Payments.</translation>
+<translation id="5151639798712723370">Συσκευή USB-C (δεξιά μπροστινή θύρα)</translation>
<translation id="5152451685298621771">(Λογαριασμός για παιδιά)</translation>
<translation id="5154108062446123722">Σύνθετες ρυθμίσεις για <ph name="PRINTING_DESTINATION" /></translation>
<translation id="5154176924561037127">F8</translation>
@@ -3053,6 +3065,7 @@
<translation id="5271247532544265821">Εναλλαγή λειτουργίας απλοποιημένων/παραδοσιακών κινέζικων.</translation>
<translation id="5271549068863921519">Αποθήκευση κωδικού πρόσβασης</translation>
<translation id="5273628206174272911">Πειραματική πλοήγηση ιστορικού ως απόκριση στο οριζόντιο overscroll.</translation>
+<translation id="5275795814002959418"><ph name="COUNT" /> από αυτόν τον ιστότοπο</translation>
<translation id="5275973617553375938">Ανακτημένα αρχεία από το Google Drive</translation>
<translation id="527605719918376753">Σίγαση καρτέλας</translation>
<translation id="527605982717517565">Να επιτρέπεται πάντα το JavaScript στο <ph name="HOST" /></translation>
@@ -3099,6 +3112,7 @@
<translation id="5328285148748012771">Αποκτήστε πρόσβαση σε όλες τις εφαρμογές σας από αυτήν την πρακτική λειτουργία εκκίνησης. Παίξτε παιχνίδια, συνομιλήστε μέσω βίντεο, ακούστε μουσική, επεξεργαστείτε έγγραφα ή αποκτήστε περισσότερες εφαρμογές από το Chrome Web Store.</translation>
<translation id="5329858601952122676">&amp;Διαγραφή</translation>
<translation id="5330145655348521461">Αυτά τα αρχεία άνοιξαν σε διαφορετικό προφίλ. Μεταφερθείτε στο προφίλ <ph name="USER_NAME" /> (<ph name="MAIL_ADDRESS" />) για να τα δείτε.</translation>
+<translation id="5331975486040154427">Συσκευή USB-C (πίσω αριστερή θύρα)</translation>
<translation id="5332624210073556029">Ζώνη ώρας:</translation>
<translation id="5334142896108694079">Προσωρινή μνήμη σεναρίου</translation>
<translation id="533433379391851622">Αναμενόταν η έκδοση "<ph name="EXPECTED_VERSION" />", ωστόσο η έκδοση ήταν η "<ph name="NEW_ID" />".</translation>
@@ -3145,6 +3159,7 @@
<translation id="539755880180803351">Προσθέτει σχολιασμούς σε φόρμες ιστού με προβλέψεις τύπου του πεδίου Αυτόματης συμπλήρωσης με τη μορφή κειμένου κράτησης θέσης.</translation>
<translation id="5397578532367286026">Ο διαχειριστής (<ph name="MANAGER_EMAIL" />) μπορεί να ελέγξει τη χρήση και το ιστορικό αυτού του χρήστη στη διεύθυνση chrome.com.</translation>
<translation id="5397794290049113714">Εσείς</translation>
+<translation id="5398824043967640339"><ph name="COUNT" /> από άλλους ιστότοπους</translation>
<translation id="5399158067281117682">Τα PIN δεν ταιριάζουν!</translation>
<translation id="5400640815024374115">Το τσιπ TPM (Mονάδα αξιόπιστης πλατφόρμας) είναι απενεργοποιημένο ή λείπει.</translation>
<translation id="5402367795255837559">Μπράιγ</translation>
@@ -3968,6 +3983,7 @@
<translation id="6575251558004911012">Να γίνεται ερώτηση όταν ένας ιστότοπος ζητά πρόσβαση στην κάμερά σας (συνιστάται)</translation>
<translation id="6581162200855843583">Σύνδεσμος του Google Drive</translation>
<translation id="6583070985841601920">Συνδεδεμένος χρήστης ως <ph name="USER_EMAIL_ADDRESS" />. Ο συγχρονισμός σας έχει απενεργοποιηθεί από το διαχειριστή σας.</translation>
+<translation id="65832705307647870">Προσυμπλήρωση της Σελίδας σε νέα καρτέλα με δημοφιλείς ιστότοπους.</translation>
<translation id="6584878029876017575">Υπογραφή για πάντα Microsoft</translation>
<translation id="6585234750898046415">Επιλέξτε μια εικόνα που θα εμφανίζεται για τον λογαριασμό σας στην οθόνη σύνδεσης.</translation>
<translation id="6585283250473596934">Είσοδος σε δημόσια περίοδο σύνδεσης.</translation>
@@ -4314,6 +4330,7 @@
<translation id="7092106376816104">Εξαιρέσεις αναδυόμενων παραθύρων</translation>
<translation id="7093866338626856921">Ανταλλαγή δεδομένων με συσκευές με την ονομασία: <ph name="HOSTNAMES" /></translation>
<translation id="7096082900368329802">Θέλετε να ανακαλύψετε περισσότερες καταπληκτικές λειτουργίες;</translation>
+<translation id="7098389117866926363">Συσκευή USB-C (πίσω αριστερή θύρα)</translation>
<translation id="7100897339030255923">Έχουν επιλεγεί <ph name="COUNT" /> στοιχεία</translation>
<translation id="7106346894903675391">Αγοράστε περισσότερο αποθηκευτικό χώρο...</translation>
<translation id="7108338896283013870">Απόκρυψη</translation>
@@ -5094,6 +5111,7 @@
<translation id="8190193592390505034">Σύνδεση με <ph name="PROVIDER_NAME" /></translation>
<translation id="8191230140820435481">Διαχείριση των εφαρμογών, των επεκτάσεων και των θεμάτων σας</translation>
<translation id="8191453843330043793">Εργαλείο επίλυσης διακομιστή μεσολάβησης V8</translation>
+<translation id="8199491812735365610">Επιλέξτε έναν λογαριασμό για να συνδεθείτε</translation>
<translation id="8200772114523450471">Συνέχιση</translation>
<translation id="8202160505685531999">Εισαγάγετε ξανά τον κωδικό πρόσβασής σας για να ενημερώσετε το προφίλ σας στο <ph name="DEVICE_TYPE" />.</translation>
<translation id="8204086856545141093">Τα αιτήματα στο διακομιστή έχουν αποκλειστεί από μια πολιτική.</translation>
@@ -5226,6 +5244,7 @@
<translation id="8381977081675353473">Σλοβακικά</translation>
<translation id="8382645631174981738">Έγινε απομακρυσμένη εγκατάσταση της επέκτασης <ph name="EXTENSION_NAME" /></translation>
<translation id="8382913212082956454">Αντιγραφή διεύθυνσης &amp;ηλεκτρονικού ταχυδρομείου</translation>
+<translation id="8384113940676655504">Ενεργοποιεί μια ρύθμιση της λειτουργίας Smart Lock που επιτρέπει στο Chromebook να ανακαλύψει τηλέφωνα μέσω Bluetooth χαμηλής κατανάλωσης ενέργειας, προκειμένου να ξεκλειδώσει όταν το τηλέφωνο είναι κοντά του.</translation>
<translation id="8390029840652165810">Βεβαιωθείτε ότι η σύνδεση δικτύου σας λειτουργεί και εάν το πρόβλημα εξακολουθεί να παρουσιάζεται, αποσυνδεθείτε και συνδεθείτε ξανά για να ανανεώσετε τα διαπιστευτήριά σας.</translation>
<translation id="8390445751804042000">Ενεργοποιεί την αφύπνιση της συσκευής βάσει λήψης ορισμένων πακέτων δικτύου.</translation>
<translation id="8390449457866780408">Ο διακομιστής δεν είναι διαθέσιμος.</translation>
@@ -5312,6 +5331,7 @@
<translation id="8509646642152301857">Η λήψη λεξικού ορθογραφικού ελέγχου απέτυχε.</translation>
<translation id="8512476990829870887">Τερματισμός διαδικασίας</translation>
<translation id="851263357009351303">Να επιτρέπεται πάντα στο <ph name="HOST" /> η εμφάνιση εικόνων</translation>
+<translation id="8513191386157529469">Το "<ph name="CLIENT_NAME" />" εντοπίζει τα σφάλματα σε αυτό το πρόγραμμα περιήγησης.</translation>
<translation id="8513974249124254369">Το ChromeVox (προφορικά σχόλια) έχει ενεργοποιηθεί. Πατήστε Ctrl+Alt+Z για απενεργοποίηση.</translation>
<translation id="8515737884867295000">Ο έλεγχος ταυτότητας με βάση πιστοποιητικό απέτυχε</translation>
<translation id="8518865679229538285">Μέθοδος εισόδου Ταμίλ (Γραφομηχανή)</translation>
@@ -5433,6 +5453,7 @@
<translation id="8677039480012021122">Διαγραφή δεδομένων και αποσύνδεση</translation>
<translation id="8677212948402625567">Σύμπτυξη όλων...</translation>
<translation id="8678648549315280022">Διαχείριση ρυθμίσεων λήψης…</translation>
+<translation id="8680251145628383637">Συνδεθείτε για να έχετε πρόσβαση στους σελιδοδείκτες, το ιστορικό, τους κωδικούς πρόσβασης και σε άλλες ρυθμίσεις σε όλες τις συσκευές σας. Θα συνδέεστε επίσης αυτόματα στις υπηρεσίες σας Google.</translation>
<translation id="8680536109547170164"><ph name="QUERY" />, απάντηση, <ph name="ANSWER" /></translation>
<translation id="8680787084697685621">Τα στοιχεία σύνδεσης λογαριασμού έχουν λήξει.</translation>
<translation id="8684255857039823328">Ο κωδικός πρόσβασης αποθηκεύτηκε. Δείτε τους κωδικούς πρόσβασής σας από οποιαδήποτε συσκευή στη διεύθυνση <ph name="MANAGEMENT_LINK" />.</translation>
@@ -5489,6 +5510,7 @@
<translation id="874420130893181774">Μέθοδος εισαγωγής παραδοσιακών Πινγίν</translation>
<translation id="8744525654891896746">Επιλέξτε avatar για αυτόν το χρήστη υπό επίβλεψη</translation>
<translation id="8744641000906923997">Romaji</translation>
+<translation id="8744959718895556609">Επιλέξτε έναν λογαριασμό από το <ph name="LINK_TEXT" /></translation>
<translation id="8749863574775030885">Πρόσβαση σε συσκευές USB από έναν άγνωστο προμηθευτή</translation>
<translation id="8754200782896249056">&lt;p&gt;Κατά την εκτέλεση του <ph name="PRODUCT_NAME" /> σε ένα υποστηριζόμενο περιβάλλον επιφάνειας εργασίας, θα χρησιμοποιηθούν οι ρυθμίσεις διακομιστή μεσολάβησης συστήματος. Ωστόσο, είτε το σύστημά σας δεν υποστηρίζεται ή παρουσιάστηκε ένα πρόβλημα κατά την εκκίνηση της διαμόρφωσης του συστήματός σας.&lt;/p&gt; &lt;p&gt;Μπορείτε, όμως, να πραγματοποιήσετε διαμόρφωση μέσω της γραμμής εντολών. Ανατρέξτε στο &lt;code&gt;man <ph name="PRODUCT_BINARY_NAME" />&lt;/code&gt; για περισσότερες πληροφορίες σχετικά με επισημάνσεις ή μεταβλητές περιβάλλοντος.&lt;/p&gt;</translation>
<translation id="8755376271068075440">&amp;Μεγέθυνση</translation>
@@ -5606,6 +5628,7 @@
<translation id="8933960630081805351">&amp;Εμφάνιση στο Finder</translation>
<translation id="8934732568177537184">Συνέχεια</translation>
<translation id="8938356204940892126">Παραδίνομαι</translation>
+<translation id="8938800817013097409">Συσκευή USB-C (πίσω δεξιά θύρα)</translation>
<translation id="8940081510938872932">Αυτήν τη στιγμή, ο υπολογιστής σας εκτελεί πολλές εργασίες. Δοκιμάστε ξανά αργότερα.</translation>
<translation id="8941173171815156065">Ανάκληση της άδειας "<ph name="PERMISSION" />"</translation>
<translation id="8941248009481596111">Η σύνδεσή σας σε αυτόν τον ιστότοπο είναι ιδιωτική.</translation>
diff --git a/chromium/chrome/app/resources/generated_resources_en-GB.xtb b/chromium/chrome/app/resources/generated_resources_en-GB.xtb
index 35e6b881dd4..aecc95bca8a 100644
--- a/chromium/chrome/app/resources/generated_resources_en-GB.xtb
+++ b/chromium/chrome/app/resources/generated_resources_en-GB.xtb
@@ -136,6 +136,8 @@
<translation id="1178581264944972037">Pause</translation>
<translation id="1179803038870941185"><ph name="URL" /> wants to get full control of your MIDI devices.</translation>
<translation id="1181037720776840403">Remove</translation>
+<translation id="11814323404622888">"&gt;
+ USB-C device (right side back port)</translation>
<translation id="1183083053288481515">Using an administrator-provided certificate</translation>
<translation id="1183237619868651138">Can't install <ph name="EXTERNAL_CRX_FILE" /> in local cache.</translation>
<translation id="1185924365081634987">You may also try to <ph name="GUEST_SIGNIN_LINK_START" />browse as guest<ph name="GUEST_SIGNIN_LINK_END" /> to fix this network error.</translation>
@@ -330,6 +332,7 @@
<translation id="1468038450257740950">WebGL is not supported.</translation>
<translation id="1470719357688513792">New cookie settings will take effect after reloading the page.</translation>
<translation id="14720830734893704">Enable virtual keyboard support.</translation>
+<translation id="1474079335130556426">Enable background mode for the Push API. This allows Chrome to continue running after the last window is closed and to launch at OS startup, if the Push API needs it.</translation>
<translation id="1474339897586437869">"<ph name="FILENAME" />" was not uploaded. There is not enough free space in your Google Drive.</translation>
<translation id="1476503841242751994">{COUNT,plural, =1{1 password}other{# passwords}}</translation>
<translation id="1476949146811612304">Set which search engine is used when searching from the
@@ -655,6 +658,7 @@
<translation id="1918141783557917887">&amp;Smaller</translation>
<translation id="192144045824434199">Enable Panel windows that open outside of the browser frame. Attempts to open a Panel will open a pop-up instead if not enabled. Panels are always enabled on the dev and canary channels.</translation>
<translation id="1921584744613111023"><ph name="DPI" /> dpi</translation>
+<translation id="1921986354447415460">Turkish-F keyboard</translation>
<translation id="1923786009776354244">Enable support for WebRTC Stun origin header.</translation>
<translation id="1926741348654461781">Enable offline pages</translation>
<translation id="1929546189971853037">Read your browsing history on all your signed-in devices</translation>
@@ -854,6 +858,7 @@
<translation id="2231990265377706070">Exclamation point</translation>
<translation id="2232876851878324699">The file contained one certificate, which was not imported:</translation>
<translation id="2233502537820838181">&amp;More information</translation>
+<translation id="2233587473672843170">Show popular sites on the New Tab page</translation>
<translation id="223714078860837942">If a page hasn't set an explicit referrer policy, setting this flag will reduce the amount of information in the 'referer' header for cross-origin requests.</translation>
<translation id="2238379619048995541">Frequency State Data</translation>
<translation id="2239921694246509981">Add supervised person</translation>
@@ -932,6 +937,7 @@ After you create a new supervised user, you can manage their settings at any tim
<translation id="2326606747676847821">Go incognito</translation>
<translation id="2326931316514688470">&amp;Reload app</translation>
<translation id="2327492829706409234">Enable app</translation>
+<translation id="2329597144923131178">Sign in to get your bookmarks, history, passwords and other settings on all your devices</translation>
<translation id="2332131598580221120">View in store</translation>
<translation id="2332742915001411729">Reset to default</translation>
<translation id="2335122562899522968">This page has set cookies.</translation>
@@ -1319,6 +1325,7 @@ I don't think this site should be blocked!</translation>
<translation id="2838379631617906747">Installing</translation>
<translation id="2841837950101800123">Provider</translation>
<translation id="2843806747483486897">Change default...</translation>
+<translation id="2844169650293029770">USB-C device (left side front port)</translation>
<translation id="2845382757467349449">Always Show Bookmarks Bar</translation>
<translation id="2846816712032308263">Enables fast tab/window closing - runs a tab's onunload js handler independently of the GUI.</translation>
<translation id="284970761985428403"><ph name="ASCII_NAME" /> (<ph name="UNICODE_NAME" />)</translation>
@@ -1383,6 +1390,7 @@ I don't think this site should be blocked!</translation>
<translation id="2923469375796950815">Disable the new ZIP unpacker.</translation>
<translation id="2924296707677495905">Transliteration (namaskaram → ನಮಸ್ಕಾರ)</translation>
<translation id="2925966894897775835">Sheets</translation>
+<translation id="2927017729816812676">Cache Storage</translation>
<translation id="2927657246008729253">Change...</translation>
<translation id="2928526264833629376">Continue to Hangouts</translation>
<translation id="2930644991850369934">There was a problem during recovery image download. Network connection has been lost.</translation>
@@ -1724,6 +1732,7 @@ I don't think this site should be blocked!</translation>
<translation id="3396331542604645348">The selected printer is not available or not installed correctly. Check your printer or try selecting another printer.</translation>
<translation id="3399597614303179694">Macedonian keyboard</translation>
<translation id="340013220407300675">Attackers might be trying to steal your information from <ph name="BEGIN_BOLD" /><ph name="SITE" /><ph name="END_BOLD" /> (for example, passwords, messages or credit cards).</translation>
+<translation id="3401130144947259741">If enabled, trace events will be exported to the Event Tracing for Windows (ETW) and can then be captured by tools such as UIforETW or Xperf.</translation>
<translation id="340282674066624"><ph name="DOWNLOAD_RECEIVED" />, <ph name="TIME_LEFT" /></translation>
<translation id="3406605057700382950">&amp;Show bookmarks bar</translation>
<translation id="3412265149091626468">Jump to Selection</translation>
@@ -1883,6 +1892,7 @@ I don't think this site should be blocked!</translation>
<translation id="3603385196401704894">Canadian French</translation>
<translation id="3603622770190368340">Obtain network certificate</translation>
<translation id="3605780360466892872">Smartboy</translation>
+<translation id="3606220979431771195">Turkish-F</translation>
<translation id="3608454375274108141">F10</translation>
<translation id="3608576286259426129">User image preview</translation>
<translation id="3609138628363401169">The server does not support the TLS renegotiation extension.</translation>
@@ -2403,6 +2413,7 @@ All users must sign out to continue.</translation>
<translation id="4321136812570927563">{NUM_DOWNLOAD,plural, =1{Continue download}other{Continue downloads}}</translation>
<translation id="4321179778687042513">ctrl</translation>
<translation id="4322394346347055525">Close Other Tabs</translation>
+<translation id="4325378361067528777">Enable Push API background mode</translation>
<translation id="4326952458285403282">Disables the use of experimental DirectWrite font rendering system.</translation>
<translation id="4326999707196471878">Toolkit-Views Browser Dialogues.</translation>
<translation id="4330406155931244378">Enable Multilingual Spellchecker</translation>
@@ -2944,6 +2955,8 @@ Press any key to continue exploring.</translation>
<translation id="5148652308299789060">Disable 3D software rasteriser</translation>
<translation id="5150254825601720210">Netscape Certificate SSL Server Name</translation>
<translation id="5151034238407558331">Unfortunately, Google Payments can only be used at this merchant by buyers with a US address. If you are a US resident, please |change your home address with Google Payments| or pay without using Google Payments.</translation>
+<translation id="5151639798712723370">"&gt;
+ USB-C device (right side front port)</translation>
<translation id="5152451685298621771">(Account for kids)</translation>
<translation id="5154108062446123722">Advanced settings for <ph name="PRINTING_DESTINATION" /></translation>
<translation id="5154176924561037127">F8</translation>
@@ -3042,6 +3055,7 @@ Press any key to continue exploring.</translation>
<translation id="5271247532544265821">Toggle Simplified/Traditional Chinese mode</translation>
<translation id="5271549068863921519">Save password</translation>
<translation id="5273628206174272911">Experimental history navigation in response to horizontal overscroll.</translation>
+<translation id="5275795814002959418"><ph name="COUNT" /> from this site</translation>
<translation id="5275973617553375938">Recovered files from Google Drive</translation>
<translation id="527605719918376753">Mute tab</translation>
<translation id="527605982717517565">Always allow JavaScript on <ph name="HOST" /></translation>
@@ -3088,6 +3102,7 @@ Press any key to continue exploring.</translation>
<translation id="5328285148748012771">Access all your apps from this handy launcher. Play games, video chat, listen to music, edit documents or get more apps from the Chrome Web Store.</translation>
<translation id="5329858601952122676">&amp;Delete</translation>
<translation id="5330145655348521461">These files opened on a different desktop. Move to <ph name="USER_NAME" /> (<ph name="MAIL_ADDRESS" />) to view it.</translation>
+<translation id="5331975486040154427">USB-C device (left side back port)</translation>
<translation id="5332624210073556029">Time zone:</translation>
<translation id="5334142896108694079">Script Cache</translation>
<translation id="533433379391851622">Expected version "<ph name="EXPECTED_VERSION" />", but version was "<ph name="NEW_ID" />".</translation>
@@ -3134,6 +3149,7 @@ Press any key to continue exploring.</translation>
<translation id="539755880180803351">Annotates web forms with Auto-fill field type predictions as placeholder text.</translation>
<translation id="5397578532367286026">Usage and history of this user can be reviewed by the manager (<ph name="MANAGER_EMAIL" />) on chrome.com.</translation>
<translation id="5397794290049113714">You</translation>
+<translation id="5398824043967640339"><ph name="COUNT" /> from other sites</translation>
<translation id="5399158067281117682">PINs don't match!</translation>
<translation id="5400640815024374115">Trusted Platform Module (TPM) chip is disabled or absent.</translation>
<translation id="5402367795255837559">Braille</translation>
@@ -3961,6 +3977,7 @@ Some features may be unavailable. Please check that the profile exists and you
<translation id="6575251558004911012">Ask when a site requires access to your camera (recommended)</translation>
<translation id="6581162200855843583">Google Drive link</translation>
<translation id="6583070985841601920">Signed in as <ph name="USER_EMAIL_ADDRESS" />. Sync is disabled by your administrator.</translation>
+<translation id="65832705307647870">Pre-populate the New Tab page with popular sites.</translation>
<translation id="6584878029876017575">Microsoft Lifetime Signing</translation>
<translation id="6585234750898046415">Choose a picture to display for your account on the sign-in screen.</translation>
<translation id="6585283250473596934">Entering public session.</translation>
@@ -4304,6 +4321,7 @@ Some features may be unavailable. Please check that the profile exists and you
<translation id="7092106376816104">Pop-up exceptions</translation>
<translation id="7093866338626856921">Exchange data with the devices named: <ph name="HOSTNAMES" /></translation>
<translation id="7096082900368329802">Want to discover more awesome features?</translation>
+<translation id="7098389117866926363">USB-C device (left port in the back)</translation>
<translation id="7100897339030255923"><ph name="COUNT" /> items selected</translation>
<translation id="7106346894903675391">Buy more storage...</translation>
<translation id="7108338896283013870">Hide</translation>
@@ -5077,6 +5095,7 @@ Calculating remaining time</translation>
<translation id="8190193592390505034">Connecting to <ph name="PROVIDER_NAME" /></translation>
<translation id="8191230140820435481">Manage your apps, extensions, and themes</translation>
<translation id="8191453843330043793">V8 Proxy Resolver</translation>
+<translation id="8199491812735365610">Choose an account to login</translation>
<translation id="8200772114523450471">Resume</translation>
<translation id="8202160505685531999">Please re-enter your password to update your <ph name="DEVICE_TYPE" /> profile.</translation>
<translation id="8204086856545141093">Requests to the server have been blocked by a policy.</translation>
@@ -5208,6 +5227,7 @@ Calculating time until full</translation>
<translation id="8381977081675353473">Slovakian</translation>
<translation id="8382645631174981738"><ph name="EXTENSION_NAME" /> was installed remotely</translation>
<translation id="8382913212082956454">Copy &amp;email address</translation>
+<translation id="8384113940676655504">Enables a Smart Lock setting that allows Chromebook to discover phones over Bluetooth Low Energy in order to unlock the Chromebook when the phone is in its proximity.</translation>
<translation id="8390029840652165810">Please make sure your network connection is working and if the problem persists, please sign out and sign in again to refresh your credentials.</translation>
<translation id="8390445751804042000">Enables waking the device based on the receipt of some network packets.</translation>
<translation id="8390449457866780408">Server unavailable.</translation>
@@ -5294,6 +5314,7 @@ Calculating time until full</translation>
<translation id="8509646642152301857">Spell check dictionary download failed.</translation>
<translation id="8512476990829870887">End Process</translation>
<translation id="851263357009351303">Always allow <ph name="HOST" /> to show images</translation>
+<translation id="8513191386157529469">"<ph name="CLIENT_NAME" />" is debugging this browser.</translation>
<translation id="8513974249124254369">ChromeVox (spoken feedback) is enabled. Press Ctrl+Alt+Z to disable.</translation>
<translation id="8515737884867295000">Certificate-based authentication failed</translation>
<translation id="8518865679229538285">Tamil input method (Typewriter)</translation>
@@ -5413,6 +5434,7 @@ Calculating time until full</translation>
<translation id="8677039480012021122">Clear data and disconnect</translation>
<translation id="8677212948402625567">Collapse all...</translation>
<translation id="8678648549315280022">Manage download settings...</translation>
+<translation id="8680251145628383637">Sign in to get your bookmarks, history, passwords and other settings on all your devices. You'll also automatically be signed in to your Google services.</translation>
<translation id="8680536109547170164"><ph name="QUERY" />, answer, <ph name="ANSWER" /></translation>
<translation id="8680787084697685621">Account sign-in details are out of date.</translation>
<translation id="8684255857039823328">Password saved. Access your passwords from any device at <ph name="MANAGEMENT_LINK" />.</translation>
@@ -5468,6 +5490,7 @@ Calculating time until full</translation>
<translation id="874420130893181774">Traditional Pinyin input method</translation>
<translation id="8744525654891896746">Select an avatar for this supervised user</translation>
<translation id="8744641000906923997">Romaji</translation>
+<translation id="8744959718895556609">Choose an account from your <ph name="LINK_TEXT" /></translation>
<translation id="8749863574775030885">Access USB devices from an unknown vendor</translation>
<translation id="8754200782896249056">&lt;p&gt;When running <ph name="PRODUCT_NAME" /> under a supported desktop environment, the system proxy settings will be used. However, either your system is not supported or there was a problem launching your system configuration.&lt;/p&gt;
@@ -5588,6 +5611,7 @@ Calculating time until full</translation>
<translation id="8933960630081805351">&amp;Show in Finder</translation>
<translation id="8934732568177537184">Continue</translation>
<translation id="8938356204940892126">I give up</translation>
+<translation id="8938800817013097409">USB-C device (right port in the back)</translation>
<translation id="8940081510938872932">Your computer is doing too many things right now. Try again later.</translation>
<translation id="8941173171815156065">Revoke the permission '<ph name="PERMISSION" />'</translation>
<translation id="8941248009481596111">Your connection to this site is private.</translation>
diff --git a/chromium/chrome/app/resources/generated_resources_es-419.xtb b/chromium/chrome/app/resources/generated_resources_es-419.xtb
index 57df21706aa..8033b7756a2 100644
--- a/chromium/chrome/app/resources/generated_resources_es-419.xtb
+++ b/chromium/chrome/app/resources/generated_resources_es-419.xtb
@@ -136,6 +136,8 @@
<translation id="1178581264944972037">Detener</translation>
<translation id="1179803038870941185"><ph name="URL" /> desea obtener el control total de tus dispositivos MIDI.</translation>
<translation id="1181037720776840403">Eliminar</translation>
+<translation id="11814323404622888">"&gt;
+ Dispositivo USB-C (puerto lateral derecho trasero)</translation>
<translation id="1183083053288481515">Se está utilizando un certificado proporcionado por el administrador</translation>
<translation id="1183237619868651138">No se puede instalar <ph name="EXTERNAL_CRX_FILE" /> en la memoria caché local.</translation>
<translation id="1185924365081634987">También puedes intentar <ph name="GUEST_SIGNIN_LINK_START" />navegar como invitado<ph name="GUEST_SIGNIN_LINK_END" /> para solucionar este error de red.</translation>
@@ -329,6 +331,7 @@
<translation id="1468038450257740950">WebGL no es compatible.</translation>
<translation id="1470719357688513792">La nueva configuración de cookie se hará efectiva cuando vuelvas a cargar la página.</translation>
<translation id="14720830734893704">Permite habilitar la compatibilidad con el teclado virtual.</translation>
+<translation id="1474079335130556426">Habilita el modo en segundo plano para la API de Push. Permite que Chrome continúe ejecutándose después de que la última ventana se cierra y que arranque al iniciarse el SO, si la API de Push lo necesita.</translation>
<translation id="1474339897586437869">No se cargó "<ph name="FILENAME" />". No hay suficiente espacio libre en Google Drive.</translation>
<translation id="1476503841242751994">{COUNT,plural, =1{1 contraseña}other{# contraseñas}}</translation>
<translation id="1476949146811612304">Establece el motor de búsqueda que se utiliza cuando se realiza una búsqueda en el <ph name="BEGIN_LINK" />cuadro multifunción<ph name="END_LINK" />.</translation>
@@ -650,6 +653,7 @@
<translation id="1918141783557917887">Meno&amp;r</translation>
<translation id="192144045824434199">Permite que las ventanas del panel se abran fuera del marco del navegador. Si esta opción no está habilitada, cada vez que se intente abrir un panel, se abrirá una ventana emergente. Los paneles están siempre habilitados en los canales de programadores y de Google Chrome Canary.</translation>
<translation id="1921584744613111023"><ph name="DPI" /> ppp</translation>
+<translation id="1921986354447415460">Teclado turco-F</translation>
<translation id="1923786009776354244">Habilitar la compatibilidad con el encabezado de origen de WebRTC Stun</translation>
<translation id="1926741348654461781">Habilitar las páginas sin conexión</translation>
<translation id="1929546189971853037">Leer el historial de navegación en todos los dispositivos registrados</translation>
@@ -848,6 +852,7 @@
<translation id="2231990265377706070">Signo de exclamación</translation>
<translation id="2232876851878324699">El archivo contenía un certificado que no fue importado:</translation>
<translation id="2233502537820838181">&amp;Más información</translation>
+<translation id="2233587473672843170">Mostrar los sitios populares en la página Nueva pestaña</translation>
<translation id="223714078860837942">Si una página no estableció una política de referencia explícita, configurar esta opción reducirá la cantidad de información en el encabezado "de referencia" para las solicitudes de origen cruzado.</translation>
<translation id="2238379619048995541">Datos de estado de frecuencia</translation>
<translation id="2239921694246509981">Agregar persona supervisada</translation>
@@ -926,6 +931,7 @@ Después de crear un usuario supervisado nuevo, puedes administrar las opciones
<translation id="2326606747676847821">Modo de navegación de incógnito</translation>
<translation id="2326931316514688470">&amp;Volver a cargar la aplicación</translation>
<translation id="2327492829706409234">Habilitar aplicación</translation>
+<translation id="2329597144923131178">Accede a tu cuenta para ver los marcadores, el historial, las contraseñas y otras opciones de configuración en todos los dispositivos.</translation>
<translation id="2332131598580221120">Ver en Chrome Web Store</translation>
<translation id="2332742915001411729">Restablecer configuración de zoom predeterminada</translation>
<translation id="2335122562899522968">Esta página establece cookies.</translation>
@@ -1314,6 +1320,7 @@ No creo que este sitio deba estar bloqueado.</translation>
<translation id="2838379631617906747">Instalando</translation>
<translation id="2841837950101800123">Proveedor</translation>
<translation id="2843806747483486897">Cambiar el valor predeterminado...</translation>
+<translation id="2844169650293029770">Dispositivo USB-C (puerto lateral izquierdo delantero)</translation>
<translation id="2845382757467349449">Mostrar siempre la barra de marcadores</translation>
<translation id="2846816712032308263">Permite cerrar rápidamente ventanas o pestañas, ya que ejecuta el controlador onunload de JavaScript de forma independiente de la interfaz gráfica de usuario.</translation>
<translation id="284970761985428403"><ph name="ASCII_NAME" /> (<ph name="UNICODE_NAME" />)</translation>
@@ -1378,6 +1385,7 @@ No creo que este sitio deba estar bloqueado.</translation>
<translation id="2923469375796950815">Inhabilitar el nuevo ZIP unpacker</translation>
<translation id="2924296707677495905">Transliteración (namaskaram → ನಮಸ್ಕಾರ)</translation>
<translation id="2925966894897775835">Hojas de cálculo de Google</translation>
+<translation id="2927017729816812676">Almacenamiento en caché</translation>
<translation id="2927657246008729253">Cambiar...</translation>
<translation id="2928526264833629376">Continuar a Hangouts</translation>
<translation id="2930644991850369934">Se produjo un error durante la descarga de la imagen de recuperación. Se perdió la conexión de red.</translation>
@@ -1719,6 +1727,7 @@ No creo que este sitio deba estar bloqueado.</translation>
<translation id="3396331542604645348">La impresora seleccionada no está disponible o no está instalada correctamente. Comprueba tu impresora o selecciona otra.</translation>
<translation id="3399597614303179694">Teclado macedonio</translation>
<translation id="340013220407300675">Es posible que usuarios no autorizados estén intentando robar tu información de <ph name="BEGIN_BOLD" /><ph name="SITE" /><ph name="END_BOLD" /> (por ejemplo, contraseñas, mensajes o tarjetas de crédito).</translation>
+<translation id="3401130144947259741">Si se habilita, los eventos de seguimiento se exportarán a Seguimiento de eventos para Windows (ETW) y se podrán capturar mediante herramientas como UIForETW o Xperf.</translation>
<translation id="340282674066624"><ph name="DOWNLOAD_RECEIVED" />, <ph name="TIME_LEFT" /></translation>
<translation id="3406605057700382950">Mo&amp;strar la barra de marcadores</translation>
<translation id="3412265149091626468">Saltar a selección</translation>
@@ -1878,6 +1887,7 @@ No creo que este sitio deba estar bloqueado.</translation>
<translation id="3603385196401704894">Francés (Canadá)</translation>
<translation id="3603622770190368340">Obtener certificado de red</translation>
<translation id="3605780360466892872">Amancio</translation>
+<translation id="3606220979431771195">Turco-F</translation>
<translation id="3608454375274108141">F10</translation>
<translation id="3608576286259426129">Vista previa de la imagen del usuario</translation>
<translation id="3609138628363401169">El servidor no admite la extensión de negociación TLS.</translation>
@@ -2398,6 +2408,7 @@ Todos los usuarios deben salir de sus cuentas para continuar.</translation>
<translation id="4321136812570927563">{NUM_DOWNLOAD,plural, =1{Continuar descarga}other{Continuar descargas}}</translation>
<translation id="4321179778687042513">ctrl</translation>
<translation id="4322394346347055525">Cerrar las demás pestañas</translation>
+<translation id="4325378361067528777">Habilitar el modo en segundo plano de la API de Push</translation>
<translation id="4326952458285403282">Inhabilita el uso del sistema experimental de procesamiento de fuentes en DirectWrite.</translation>
<translation id="4326999707196471878">Cuadros de diálogo del navegador de vistas de kit de herramientas</translation>
<translation id="4330406155931244378">Habilitar corrector ortográfico multilingüe</translation>
@@ -2931,6 +2942,8 @@ Presiona cualquier tecla para seguir con navegando.</translation>
<translation id="5148652308299789060">Inhabilitar el rasterizador de software 3D</translation>
<translation id="5150254825601720210">Nombre del servidor SSL para el certificado de Microsoft</translation>
<translation id="5151034238407558331">Lamentablemente, solamente los compradores que tengan una dirección en EE. UU. podrán usar Google Payments con este comerciante. Si resides en EE. UU., |cambia tu dirección particular en Google Payments| o realiza el pago sin usar Google Payments.</translation>
+<translation id="5151639798712723370">"&gt;
+ Dispositivo USB-C (puerto lateral derecho delantero)</translation>
<translation id="5152451685298621771">(Cuenta para niños)</translation>
<translation id="5154108062446123722">Configuración avanzada para <ph name="PRINTING_DESTINATION" /></translation>
<translation id="5154176924561037127">F8</translation>
@@ -3029,6 +3042,7 @@ Presiona cualquier tecla para seguir con navegando.</translation>
<translation id="5271247532544265821">Alternar modo chino simplificado/tradicional</translation>
<translation id="5271549068863921519">Guardar contraseña</translation>
<translation id="5273628206174272911">Navegación experimental por el historial en respuesta al desplazamiento horizontal</translation>
+<translation id="5275795814002959418"><ph name="COUNT" /> de este sitio</translation>
<translation id="5275973617553375938">Archivos recuperados de Google Drive</translation>
<translation id="527605719918376753">Silenciar pestaña</translation>
<translation id="527605982717517565">Siempre permitir JavaScript en <ph name="HOST" /></translation>
@@ -3075,6 +3089,7 @@ Presiona cualquier tecla para seguir con navegando.</translation>
<translation id="5328285148748012771">Accede a todas tus aplicaciones desde este práctico selector. Juega, participa en videochats, escucha música, edita documentos o consigue más aplicaciones a través de Chrome Web Store.</translation>
<translation id="5329858601952122676">&amp;Suprimir</translation>
<translation id="5330145655348521461">Estos archivos están abiertos en otro escritorio. Ve a <ph name="USER_NAME" /> (<ph name="MAIL_ADDRESS" />) para visualizarlos.</translation>
+<translation id="5331975486040154427">Dispositivo USB-C (puerto lateral izquierdo trasero)</translation>
<translation id="5332624210073556029">Zona horaria:</translation>
<translation id="5334142896108694079">Caché de la secuencia de comandos</translation>
<translation id="533433379391851622">Se esperaba la versión "<ph name="EXPECTED_VERSION" />", pero la versión fue "<ph name="NEW_ID" />".</translation>
@@ -3121,6 +3136,7 @@ Presiona cualquier tecla para seguir con navegando.</translation>
<translation id="539755880180803351">Anota los formularios web con las predicciones del tipo de campo Autocompletar como texto del marcador.</translation>
<translation id="5397578532367286026">El administrador (<ph name="MANAGER_EMAIL" />) puede revisar el uso y el historial de este usuario en la página chrome.com.</translation>
<translation id="5397794290049113714">Tú</translation>
+<translation id="5398824043967640339"><ph name="COUNT" /> de otros sitios</translation>
<translation id="5399158067281117682">Los números de PIN no coinciden.</translation>
<translation id="5400640815024374115">El chip del módulo TPM está deshabilitado o no está.</translation>
<translation id="5402367795255837559">Braille</translation>
@@ -3946,6 +3962,7 @@ Presiona cualquier tecla para seguir con navegando.</translation>
<translation id="6575251558004911012">Preguntarme cuando un sitio quiera acceder a la cámara (recomendado)</translation>
<translation id="6581162200855843583">Vínculo de Google Drive</translation>
<translation id="6583070985841601920">Accediste como <ph name="USER_EMAIL_ADDRESS" />. Tu administrador inhabilitó la sincronización.</translation>
+<translation id="65832705307647870">Completa automáticamente la página Nueva pestaña con sitios populares.</translation>
<translation id="6584878029876017575">Firma de vigencia de Microsoft</translation>
<translation id="6585234750898046415">Selecciona una imagen para mostrar en tu cuenta, en la pantalla de inicio.</translation>
<translation id="6585283250473596934">Accediendo a la sesión pública...</translation>
@@ -4287,6 +4304,7 @@ Presiona cualquier tecla para seguir con navegando.</translation>
<translation id="7092106376816104">Excepciones de ventanas emergentes</translation>
<translation id="7093866338626856921">Intercambiar datos con los siguientes dispositivos: <ph name="HOSTNAMES" /></translation>
<translation id="7096082900368329802">¿Quieres descubrir más funciones increíbles?</translation>
+<translation id="7098389117866926363">Dispositivo USB-C (puerto izquierdo en la parte posterior)</translation>
<translation id="7100897339030255923"><ph name="COUNT" /> elementos seleccionados</translation>
<translation id="7106346894903675391">Comprar más almacenamiento...</translation>
<translation id="7108338896283013870">Ocultar</translation>
@@ -5055,6 +5073,7 @@ Mantén el archivo de clave en un lugar seguro. Debes crear las nuevas versiones
<translation id="8190193592390505034">Estableciendo conexión con <ph name="PROVIDER_NAME" /></translation>
<translation id="8191230140820435481">Administrar tus aplicaciones, extensiones y temas</translation>
<translation id="8191453843330043793">Herramienta de resolución de proxy V8</translation>
+<translation id="8199491812735365610">Selecciona una cuenta para acceder</translation>
<translation id="8200772114523450471">Reanudar</translation>
<translation id="8202160505685531999">Vuelve a ingresar la contraseña para actualizar tu perfil de <ph name="DEVICE_TYPE" />.</translation>
<translation id="8204086856545141093">Una política bloqueó las solicitudes al servidor.</translation>
@@ -5185,6 +5204,7 @@ Mantén el archivo de clave en un lugar seguro. Debes crear las nuevas versiones
<translation id="8381977081675353473">Eslovaco</translation>
<translation id="8382645631174981738"><ph name="EXTENSION_NAME" /> se instaló de forma remota</translation>
<translation id="8382913212082956454">Copiar dir&amp;ección de correo electrónico</translation>
+<translation id="8384113940676655504">Habilita una configuración de Smart Lock que permite que Chromebook detecte teléfonos mediante Bluetooth de baja energía a fin de desbloquear la Chromebook cuando hay un teléfono cerca.</translation>
<translation id="8390029840652165810">Asegúrate de que tu conexión de red esté funcionando y, si el problema persiste, sal de la sesión y vuelve a acceder para actualizar tus credenciales.</translation>
<translation id="8390445751804042000">Habilita la opción para activar el dispositivo basada en la recepción de algunos paquetes de red.</translation>
<translation id="8390449457866780408">El servidor no está disponible.</translation>
@@ -5271,6 +5291,7 @@ Mantén el archivo de clave en un lugar seguro. Debes crear las nuevas versiones
<translation id="8509646642152301857">Ocurrió un error en la descarga del diccionario del corrector ortográfico.</translation>
<translation id="8512476990829870887">Finalizar proceso</translation>
<translation id="851263357009351303">Siempre permitir que <ph name="HOST" /> muestre imágenes</translation>
+<translation id="8513191386157529469">"<ph name="CLIENT_NAME" />" está depurando este navegador.</translation>
<translation id="8513974249124254369">ChromeVox (comentarios por voz) está habilitado. Presiona Ctrl+Alt+Z para inhabilitarlo.</translation>
<translation id="8515737884867295000">Error de autenticación basada en el certificado</translation>
<translation id="8518865679229538285">Método de entrada de tamil (máquina de escribir)</translation>
@@ -5390,6 +5411,7 @@ Mantén el archivo de clave en un lugar seguro. Debes crear las nuevas versiones
<translation id="8677039480012021122">Borrar datos y desconectar</translation>
<translation id="8677212948402625567">Contraer todo...</translation>
<translation id="8678648549315280022">Administrar configuración de descarga…</translation>
+<translation id="8680251145628383637">Accede para obtener tus marcadores, el historial, las contraseñas y otras opciones de configuración en todos tus dispositivos. Además, accederás de forma automática a los servicios de Google.</translation>
<translation id="8680536109547170164"><ph name="QUERY" />, respuesta, <ph name="ANSWER" /></translation>
<translation id="8680787084697685621">Los datos de inicio de cuenta están desactualizados</translation>
<translation id="8684255857039823328">Se guardó la contraseña. Accede a tus contraseñas desde cualquier dispositivo en <ph name="MANAGEMENT_LINK" />.</translation>
@@ -5445,6 +5467,7 @@ Mantén el archivo de clave en un lugar seguro. Debes crear las nuevas versiones
<translation id="874420130893181774">Método de entrada de pinyin tradicional</translation>
<translation id="8744525654891896746">Seleccionar un avatar para este usuario supervisado</translation>
<translation id="8744641000906923997">Romaji</translation>
+<translation id="8744959718895556609">Elige una cuenta desde tu <ph name="LINK_TEXT" /></translation>
<translation id="8749863574775030885">Acceder a dispositivos USB de un proveedor desconocido</translation>
<translation id="8754200782896249056">&lt;p&gt;Al ejecutar <ph name="PRODUCT_NAME" /> en un entorno admitido de escritorio, se utiliza la configuración proxy del sistema. Sin embargo, o bien el sistema no es admitido, o hubo un problema al lanzar la configuración del sistema.&lt;/p&gt;
@@ -5565,6 +5588,7 @@ Mantén el archivo de clave en un lugar seguro. Debes crear las nuevas versiones
<translation id="8933960630081805351">Mo&amp;strar en Buscador</translation>
<translation id="8934732568177537184">Continuar</translation>
<translation id="8938356204940892126">Me rindo</translation>
+<translation id="8938800817013097409">Dispositivo USB-C (puerto derecho en la parte posterior)</translation>
<translation id="8940081510938872932">El equipo está trabajando demasiado en este momento. Intenta nuevamente más tarde.</translation>
<translation id="8941173171815156065">Revocar el permiso "<ph name="PERMISSION" />"</translation>
<translation id="8941248009481596111">Tu conexión con este sitio es privada.</translation>
diff --git a/chromium/chrome/app/resources/generated_resources_es.xtb b/chromium/chrome/app/resources/generated_resources_es.xtb
index 3ae6763aeff..cc12f47b4e4 100644
--- a/chromium/chrome/app/resources/generated_resources_es.xtb
+++ b/chromium/chrome/app/resources/generated_resources_es.xtb
@@ -136,6 +136,8 @@
<translation id="1178581264944972037">Detener</translation>
<translation id="1179803038870941185"><ph name="URL" /> quiere obtener un control absoluto de tus dispositivos MIDI.</translation>
<translation id="1181037720776840403">Eliminar</translation>
+<translation id="11814323404622888">"&gt;
+ Dispositivo USB tipo C (puerto trasero derecho)</translation>
<translation id="1183083053288481515">Utilizando un certificado proporcionado por el administrador</translation>
<translation id="1183237619868651138">No se puede instalar <ph name="EXTERNAL_CRX_FILE" /> en la memoria caché local.</translation>
<translation id="1185924365081634987">También puedes intentar <ph name="GUEST_SIGNIN_LINK_START" />navegar como invitado<ph name="GUEST_SIGNIN_LINK_END" /> para solucionar el problema de red.</translation>
@@ -330,6 +332,7 @@
<translation id="1468038450257740950">No se admite WebGL.</translation>
<translation id="1470719357688513792">La nueva configuración de cookies se aplicará al volver a cargar la página.</translation>
<translation id="14720830734893704">Permite habilitar el uso del teclado virtual.</translation>
+<translation id="1474079335130556426">Habilita el modo en segundo plano para la API de Push. De este modo, Chrome puede seguir funcionando cuando se cierre la última ventana y puede ejecutarse al iniciar el SO si la API de Push lo necesita.</translation>
<translation id="1474339897586437869">No se ha subido <ph name="FILENAME" />. No hay suficiente espacio libre en tu cuenta de Google Drive.</translation>
<translation id="1476503841242751994">{COUNT,plural, =1{1 contraseña}other{# contraseñas}}</translation>
<translation id="1476949146811612304">Especifica el motor de búsqueda que se debe utilizar al realizar una búsqueda desde el <ph name="BEGIN_LINK" />omnibox<ph name="END_LINK" />.</translation>
@@ -654,6 +657,7 @@
<translation id="1918141783557917887">Meno&amp;r</translation>
<translation id="192144045824434199">Permite que las ventanas del panel se abran fuera del marco del navegador. Si esta opción no está habilitada, cada vez que se intente abrir un panel, se abrirá un popup. Los paneles están siempre habilitados en los canales de desarrolladores y de Google Chrome Canary.</translation>
<translation id="1921584744613111023"><ph name="DPI" /> PPP</translation>
+<translation id="1921986354447415460">Teclado turco-F</translation>
<translation id="1923786009776354244">Habilitar compatibilidad con el encabezado de origen de mensajes Stun de WebRTC.</translation>
<translation id="1926741348654461781">Habilitar páginas sin conexión</translation>
<translation id="1929546189971853037">Leer tu historial de navegación en todos los dispositivos en los que hayas iniciado sesión</translation>
@@ -853,6 +857,7 @@
<translation id="2231990265377706070">Signo de exclamación</translation>
<translation id="2232876851878324699">El archivo contenía un certificado, que no se ha importado:</translation>
<translation id="2233502537820838181">&amp;Más información</translation>
+<translation id="2233587473672843170">Mostrar sitios web populares en la página Nueva pestaña</translation>
<translation id="223714078860837942">Si una página no ha establecido una política de referencia explícita, al establecer este indicador se reducirá la cantidad de información en el encabezado referer para solicitudes de distinto origen.</translation>
<translation id="2238379619048995541">Datos de estado de frecuencia</translation>
<translation id="2239921694246509981">Añadir persona supervisada</translation>
@@ -931,6 +936,7 @@ Una vez que hayas creado un nuevo usuario supervisado, podrás administrar su co
<translation id="2326606747676847821">Navegar de incógnito</translation>
<translation id="2326931316514688470">&amp;Volver a cargar aplicación</translation>
<translation id="2327492829706409234">Habilitar aplicación</translation>
+<translation id="2329597144923131178">Accede para ver marcadores, historial, contraseñas y otros en dispos.</translation>
<translation id="2332131598580221120">Ver en Chrome Web Store</translation>
<translation id="2332742915001411729">Restablecer nivel de zoom predeterminado</translation>
<translation id="2335122562899522968">Esta página almacena cookies</translation>
@@ -1320,6 +1326,7 @@ sistema operativo desde una unidad USB
<translation id="2838379631617906747">Instalando</translation>
<translation id="2841837950101800123">Proveedor</translation>
<translation id="2843806747483486897">Cambiar acción predeterminada...</translation>
+<translation id="2844169650293029770">Dispositivo USB tipo C (puerto frontal izquierdo)</translation>
<translation id="2845382757467349449">Mostrar siempre la barra de marcadores</translation>
<translation id="2846816712032308263">Permite cerrar rápidamente ventanas y pestañas, ya que ejecuta el controlador onunload de JavaScript de forma independiente a la interfaz gráfica de usuario.</translation>
<translation id="284970761985428403"><ph name="ASCII_NAME" /> (<ph name="UNICODE_NAME" />)</translation>
@@ -1386,6 +1393,7 @@ sistema operativo desde una unidad USB
<translation id="2923469375796950815">Inhabilitar el nuevo descompresor de ZIP.</translation>
<translation id="2924296707677495905">Transliteración (namaskaram → ನಮಸ್ಕಾರ)</translation>
<translation id="2925966894897775835">Hojas de cálculo de Google</translation>
+<translation id="2927017729816812676">Almacenamiento en caché</translation>
<translation id="2927657246008729253">Cambiar...</translation>
<translation id="2928526264833629376">Acceder a Hangouts</translation>
<translation id="2930644991850369934">Se ha producido un error durante la descarga de la imagen de recuperación. Se ha perdido la conexión de red.</translation>
@@ -1725,6 +1733,7 @@ Si no cambias la configuración predeterminada, <ph name="USER_DISPLAY_NAME" />
<translation id="3396331542604645348">La impresora seleccionada no se encuentra disponible o no está instalada correctamente. Comprueba tu impresora o prueba a seleccionar otra.</translation>
<translation id="3399597614303179694">Teclado macedonio</translation>
<translation id="340013220407300675">Es posible que los piratas informáticos estén intentando robar tu información de <ph name="BEGIN_BOLD" /><ph name="SITE" /><ph name="END_BOLD" /> (por ejemplo, contraseñas, mensajes o tarjetas de crédito).</translation>
+<translation id="3401130144947259741">Si se habilita, los eventos de rastreo se exportarán al Seguimiento de eventos para Windows (ETW) y se podrán capturar con herramientas como UIForETW o Xperf.</translation>
<translation id="340282674066624"><ph name="DOWNLOAD_RECEIVED" />, <ph name="TIME_LEFT" /></translation>
<translation id="3406605057700382950">&amp;Mostrar barra de marcadores</translation>
<translation id="3412265149091626468">Ir a la selección</translation>
@@ -1881,6 +1890,7 @@ Si no cambias la configuración predeterminada, <ph name="USER_DISPLAY_NAME" />
<translation id="3603385196401704894">Francés canadiense</translation>
<translation id="3603622770190368340">Obtener certificado de red</translation>
<translation id="3605780360466892872">Amancio</translation>
+<translation id="3606220979431771195">Turco-F</translation>
<translation id="3608454375274108141">F10</translation>
<translation id="3608576286259426129">Vista previa de imagen de usuario</translation>
<translation id="3609138628363401169">El servidor no admite la modificación de renegociación de seguridad de la capa de transporte.</translation>
@@ -2396,6 +2406,7 @@ Esto puede deberse a que tu cortafuegos o software antivirus haya considerado er
<translation id="4321136812570927563">{NUM_DOWNLOAD,plural, =1{Continuar descarga}other{Continuar descargas}}</translation>
<translation id="4321179778687042513">ctrl</translation>
<translation id="4322394346347055525">Cerrar las demás pestañas</translation>
+<translation id="4325378361067528777">Habilitar el modo en segundo plano de la API de Push</translation>
<translation id="4326952458285403282">Inhabilita el uso del sistema de representación de fuentes experimental DirectWrite.</translation>
<translation id="4326999707196471878">Cuadros de diálogo de navegador de Toolkit-Views.</translation>
<translation id="4330406155931244378">Habilitar el corrector ortográfico multilingüe</translation>
@@ -2935,6 +2946,8 @@ Pulsa cualquier tecla para seguir con la exploración.</translation>
<translation id="5148652308299789060">Inhabilitar el rasterizador de software 3D</translation>
<translation id="5150254825601720210">Nombre de servidor SSL de certificado de Netscape</translation>
<translation id="5151034238407558331">Lamentablemente, solo pueden utilizar Google Payments con este comerciante los compradores que tengan una dirección de Estados Unidos. Si resides en Estados Unidos, |cambia tu dirección particular con Google Payments| o realiza el pago sin utilizar este servicio.</translation>
+<translation id="5151639798712723370">"&gt;
+ Dispositivo USB tipo C (puerto frontal derecho)</translation>
<translation id="5152451685298621771">(Cuenta infantil)</translation>
<translation id="5154108062446123722">Configuración avanzada para <ph name="PRINTING_DESTINATION" /></translation>
<translation id="5154176924561037127">F8</translation>
@@ -3031,6 +3044,7 @@ Pulsa cualquier tecla para seguir con la exploración.</translation>
<translation id="5271247532544265821">Alternar modo chino tradicional y simplificado</translation>
<translation id="5271549068863921519">Guardar contraseña</translation>
<translation id="5273628206174272911">Permite habilitar la función experimental de navegación por el historial en respuesta al desplazamiento horizontal con rebote.</translation>
+<translation id="5275795814002959418"><ph name="COUNT" /> de este sitio web</translation>
<translation id="5275973617553375938">Archivos recuperados de Google Drive</translation>
<translation id="527605719918376753">Silenciar pestaña</translation>
<translation id="527605982717517565">Permitir siempre JavaScript en <ph name="HOST" /></translation>
@@ -3077,6 +3091,7 @@ Pulsa cualquier tecla para seguir con la exploración.</translation>
<translation id="5328285148748012771">Accede a todas tus aplicaciones desde este práctico menú. Juega, participa en chats de vídeo, escucha música, edita documentos o consigue más aplicaciones a través de Chrome Web Store.</translation>
<translation id="5329858601952122676">&amp;Suprimir</translation>
<translation id="5330145655348521461">Estos archivos se han abierto en un escritorio diferente. Ve a <ph name="USER_NAME" /> (<ph name="MAIL_ADDRESS" />) para verlo.</translation>
+<translation id="5331975486040154427">Dispositivo USB tipo C (puerto trasero izquierdo)</translation>
<translation id="5332624210073556029">Zona horaria:</translation>
<translation id="5334142896108694079">Caché de secuencia de comandos</translation>
<translation id="533433379391851622">Se esperaba la versión "<ph name="EXPECTED_VERSION" />", pero la versión fue "<ph name="NEW_ID" />".</translation>
@@ -3123,6 +3138,7 @@ Pulsa cualquier tecla para seguir con la exploración.</translation>
<translation id="539755880180803351">Muestra las predicciones de campos de la función Autocompletar en los formularios web.</translation>
<translation id="5397578532367286026">El administrador puede consultar el uso y el historial de este usuario (<ph name="MANAGER_EMAIL" />) en la página chrome.com.</translation>
<translation id="5397794290049113714">Tú</translation>
+<translation id="5398824043967640339"><ph name="COUNT" /> de otros sitios web</translation>
<translation id="5399158067281117682">Los números PIN no coinciden.</translation>
<translation id="5400640815024374115">Falta el chip del módulo de plataforma de confianza (TPM) o está inhabilitado</translation>
<translation id="5402367795255837559">Braille</translation>
@@ -3395,7 +3411,7 @@ Pulsa cualquier tecla para seguir con la exploración.</translation>
<translation id="5771816112378578655">Configuración en curso...</translation>
<translation id="5771849619911534867">Búsqueda de dispositivos detenida.</translation>
<translation id="5772177959740802111">Compatibilidad de Chromecast experimental con el reproductor de vídeo</translation>
-<translation id="5774295353725270860">Aplicación para abrir archivos</translation>
+<translation id="5774295353725270860">Abrir la aplicación Archivos</translation>
<translation id="5774515636230743468">Manifiesto:</translation>
<translation id="577624874850706961">Buscar cookies</translation>
<translation id="5778550464785688721">Control total de dispositivos MIDI</translation>
@@ -3947,6 +3963,7 @@ Accede a tu dirección de correo electrónico <ph name="ACCOUNT_EMAIL" /> para c
<translation id="6575251558004911012">Solicitar permiso cuando un sitio requiera acceso a tu cámara (recomendado)</translation>
<translation id="6581162200855843583">Enlace de Google Drive</translation>
<translation id="6583070985841601920">Has iniciado sesión como <ph name="USER_EMAIL_ADDRESS" />. Tu administrador ha inhabilitado la sincronización.</translation>
+<translation id="65832705307647870">Rellena previamente la página Nueva pestaña con sitios web populares.</translation>
<translation id="6584878029876017575">Firma de vigencia de Microsoft</translation>
<translation id="6585234750898046415">Selecciona la imagen de tu cuenta que quieres mostrar en la pantalla de inicio de sesión.</translation>
<translation id="6585283250473596934">Entrando en sesión pública...</translation>
@@ -4290,6 +4307,7 @@ Accede a tu dirección de correo electrónico <ph name="ACCOUNT_EMAIL" /> para c
<translation id="7092106376816104">Excepciones de pop-ups</translation>
<translation id="7093866338626856921">Intercambiar datos con los dispositivos denominados <ph name="HOSTNAMES" /></translation>
<translation id="7096082900368329802">¿Quieres descubrir otras fantásticas funciones?</translation>
+<translation id="7098389117866926363">Dispositivo USB tipo C (puerto izquierdo situado en la parte trasera)</translation>
<translation id="7100897339030255923"><ph name="COUNT" /> elementos seleccionados</translation>
<translation id="7106346894903675391">Comprar más almacenamiento...</translation>
<translation id="7108338896283013870">Ocultar</translation>
@@ -4644,7 +4662,7 @@ Accede a tu dirección de correo electrónico <ph name="ACCOUNT_EMAIL" /> para c
<translation id="7607274158153386860">Solicitar sitio para tablets</translation>
<translation id="7609816802059518759">Habilita la detección de cuentas secundarias durante el inicio de sesión y el inicio, así como periódicamente.</translation>
<translation id="7614030880636783720">La conexión Wi-Fi y los datos móviles no están disponibles. La página se podrá cargar cuando el dispositivo se conecte a una red.</translation>
-<translation id="7615602087246926389">Has usado anteriormente otra versión de la contraseña de tu cuenta de Google para la encriptación de datos. Introdúcela a continuación.</translation>
+<translation id="7615602087246926389">Has usado anteriormente otra versión de la contraseña de tu cuenta de Google para el cifrado de datos. Introdúcela a continuación.</translation>
<translation id="7615851733760445951">&lt;no hay ninguna cookie seleccionada&gt;</translation>
<translation id="7615910377284548269">Administrar bloqueo de complementos no incluidos en la zona de pruebas...</translation>
<translation id="7616174114232710623">Este sitio utiliza un <ph name="BEGIN_LINK" />nuevo dominio genérico de nivel superior<ph name="END_LINK" /> (gTLD). Si has utilizado <ph name="HOST_NAME" /> para acceder a un sitio interno en el pasado, ponte en contacto con el administrador de tu red.</translation>
@@ -5056,6 +5074,7 @@ Calculando el tiempo restante</translation>
<translation id="8190193592390505034">Conectando con <ph name="PROVIDER_NAME" /></translation>
<translation id="8191230140820435481">Administrar tus aplicaciones, extensiones y temas</translation>
<translation id="8191453843330043793">Solucionador de proxies V8</translation>
+<translation id="8199491812735365610">Selecciona una cuenta para iniciar sesión</translation>
<translation id="8200772114523450471">Reanudar</translation>
<translation id="8202160505685531999">Vuelve a introducir tu contraseña para actualizar tu perfil de <ph name="DEVICE_TYPE" />.</translation>
<translation id="8204086856545141093">Las solicitudes al servidor están bloqueadas por una política.</translation>
@@ -5187,6 +5206,7 @@ Calculando el tiempo de carga completa</translation>
<translation id="8381977081675353473">eslovaco</translation>
<translation id="8382645631174981738"><ph name="EXTENSION_NAME" /> se ha instalado de forma remota</translation>
<translation id="8382913212082956454">Copiar dir&amp;ección de correo electrónico</translation>
+<translation id="8384113940676655504">Habilita una opción de Smart Lock que permite que el Chromebook encuentre teléfonos por Bluetooth de baja energía para desbloquearlo cuando el teléfono esté cerca.</translation>
<translation id="8390029840652165810">Asegúrate de que la conexión de red esté funcionando. Si el problema persiste, cierra la sesión y vuelve a iniciarla para actualizar tus credenciales.</translation>
<translation id="8390445751804042000">Habilita la opción de activación del dispositivo basada en la recepción de algunos paquetes de red.</translation>
<translation id="8390449457866780408">Servidor no disponible</translation>
@@ -5273,6 +5293,7 @@ Calculando el tiempo de carga completa</translation>
<translation id="8509646642152301857">Se ha producido un error al descargar el diccionario del corrector ortográfico.</translation>
<translation id="8512476990829870887">Finalizar proceso</translation>
<translation id="851263357009351303">Permitir siempre que <ph name="HOST" /> muestre imágenes</translation>
+<translation id="8513191386157529469">"<ph name="CLIENT_NAME" />" está depurando este navegador.</translation>
<translation id="8513974249124254369">ChromeVox (mensajes de voz) está habilitado. Pulsa Ctrl+Alt+Z para inhabilitarlo.</translation>
<translation id="8515737884867295000">Error de autenticación basada en certificado</translation>
<translation id="8518865679229538285">Método de entrada de tamil (máquina de escribir)</translation>
@@ -5392,6 +5413,7 @@ Calculando el tiempo de carga completa</translation>
<translation id="8677039480012021122">Borrar datos y desvincular</translation>
<translation id="8677212948402625567">Ocultar todos...</translation>
<translation id="8678648549315280022">Administrar configuración de descargas...</translation>
+<translation id="8680251145628383637">Inicia sesión para acceder a tus marcadores, tu historial, tus contraseñas y tu configuración en todos tus dispositivos. Además, iniciarás sesión automáticamente en tus servicios de Google.</translation>
<translation id="8680536109547170164"><ph name="QUERY" />, respuesta: <ph name="ANSWER" /></translation>
<translation id="8680787084697685621">La información de inicio de sesión no está actualizada.</translation>
<translation id="8684255857039823328">La contraseña se ha guardado. Puedes acceder a tus contraseñas desde cualquier dispositivo a través de la página <ph name="MANAGEMENT_LINK" />.</translation>
@@ -5447,6 +5469,7 @@ Calculando el tiempo de carga completa</translation>
<translation id="874420130893181774">Método de entrada de pinyin tradicional</translation>
<translation id="8744525654891896746">Seleccionar un avatar para este usuario supervisado</translation>
<translation id="8744641000906923997">Romaji</translation>
+<translation id="8744959718895556609">Elige una cuenta de <ph name="LINK_TEXT" /></translation>
<translation id="8749863574775030885">Acceder a dispositivos USB desde un proveedor desconocido</translation>
<translation id="8754200782896249056">&lt;p&gt;Al ejecutar <ph name="PRODUCT_NAME" /> en un entorno de escritorio compatible, se utilizará la configuración de proxy del sistema. Sin embargo, tu sistema no es compatible o ha habido algún problema al iniciar la configuración del sistema.&lt;/p&gt;
@@ -5564,6 +5587,7 @@ Calculando el tiempo de carga completa</translation>
<translation id="8933960630081805351">&amp;Mostrar en Finder</translation>
<translation id="8934732568177537184">Continuar</translation>
<translation id="8938356204940892126">Abandonar</translation>
+<translation id="8938800817013097409">Dispositivo USB tipo C (puerto derecho situado en la parte trasera)</translation>
<translation id="8940081510938872932">Tu ordenador está ocupado en este momento. Vuelve a intentarlo más tarde.</translation>
<translation id="8941173171815156065">Revocar el permiso <ph name="PERMISSION" /></translation>
<translation id="8941248009481596111">Tu conexión con este sitio es privada.</translation>
diff --git a/chromium/chrome/app/resources/generated_resources_et.xtb b/chromium/chrome/app/resources/generated_resources_et.xtb
index d9a3400cfd1..f169dc40660 100644
--- a/chromium/chrome/app/resources/generated_resources_et.xtb
+++ b/chromium/chrome/app/resources/generated_resources_et.xtb
@@ -136,6 +136,8 @@
<translation id="1178581264944972037">Peata</translation>
<translation id="1179803038870941185"><ph name="URL" /> soovib teie MIDI-seadmeid täielikult juhtida.</translation>
<translation id="1181037720776840403">Eemalda</translation>
+<translation id="11814323404622888">"&gt;
+ C-tüüpi USB-seade (tagumine parempoolne port)</translation>
<translation id="1183083053288481515">Administraatori antud sertifikaadi kasutamine</translation>
<translation id="1183237619868651138">Faili <ph name="EXTERNAL_CRX_FILE" /> ei saa kohalikku vahemällu installida.</translation>
<translation id="1185924365081634987">Võrguvea parandamiseks võite proovida ka <ph name="GUEST_SIGNIN_LINK_START" />külalisena sirvimist<ph name="GUEST_SIGNIN_LINK_END" />.</translation>
@@ -330,6 +332,7 @@
<translation id="1468038450257740950">WebGL-i ei toetata.</translation>
<translation id="1470719357688513792">Uued küpsiste seaded rakenduvad pärast lehe uuesti laadimist.</translation>
<translation id="14720830734893704">Virtuaalse klaviatuuri toe lubamine.</translation>
+<translation id="1474079335130556426">Lubage Push API taustarežiim. See lubab Chrome'il pärast viimase akna sulgemist tööd jätkata ja koos operatsioonisüsteemiga käivituda, kui Push API seda vajab.</translation>
<translation id="1474339897586437869">Faili „<ph name="FILENAME" />” ei laaditud üles. Teie Google Drive’is ei ole piisavalt vaba ruumi.</translation>
<translation id="1476503841242751994">{COUNT,plural, =1{1 parool}other{# parooli}}</translation>
<translation id="1476949146811612304">Määrake, millist otsingumootorit <ph name="BEGIN_LINK" />omnikastikeses<ph name="END_LINK" /> otsides kasutatakse.</translation>
@@ -654,6 +657,7 @@
<translation id="1918141783557917887">&amp;Väiksemaks</translation>
<translation id="192144045824434199">Lubab paneelaknad, mis avanevad brauserist väljaspool. Kui seade on keelatud, ilmub paneeli avamisel selle asemel hüpik. Paneelid on arendaja ja Canary kanalitel alati lubatud.</translation>
<translation id="1921584744613111023"><ph name="DPI" /> punkti tolli kohta</translation>
+<translation id="1921986354447415460">Türgi F-klaviatuur</translation>
<translation id="1923786009776354244">WebRTC Stuni päritolu päise toe lubamine.</translation>
<translation id="1926741348654461781">Luba võrguühenduseta lehed</translation>
<translation id="1929546189971853037">Sirvimisajaloo lugemine kõikides sisselogitud seadmetes</translation>
@@ -853,6 +857,7 @@
<translation id="2231990265377706070">Hüüumärk</translation>
<translation id="2232876851878324699">Fail sisaldas ühte sertifikaati, mida ei imporditud:</translation>
<translation id="2233502537820838181">&amp;Lisateave</translation>
+<translation id="2233587473672843170">Näita populaarseid saite uuel vahelehel</translation>
<translation id="223714078860837942">Kui leht ei ole määranud selget viitamisreeglit, siis vähendatakse selle märgistuse määramisel päises „referer” sisalduva teabe hulka mitme allikaga päringute puhul.</translation>
<translation id="2238379619048995541">Sageduse oleku andmed</translation>
<translation id="2239921694246509981">Jälgitava isiku lisamine</translation>
@@ -929,6 +934,7 @@ Proovige uuesti mõne muu sertifikaadiga (kui teil on teisi sertifikaate). Kui t
<translation id="2326606747676847821">Ava inkognito režiim</translation>
<translation id="2326931316514688470">&amp;Laadi rakendus uuesti</translation>
<translation id="2327492829706409234">Luba rakendus</translation>
+<translation id="2329597144923131178">Logige sisse, et tuua kõikidesse seadmetesse järjehoidjad, ajalugu, paroolid ja muud seaded.</translation>
<translation id="2332131598580221120">Poes kuvamine</translation>
<translation id="2332742915001411729">Lähtesta vaikeseadetele</translation>
<translation id="2335122562899522968">See leht lisas küpsisefaile.</translation>
@@ -1317,6 +1323,7 @@ Ma arvan, et see sait ei tohiks olla blokeeritud.</translation>
<translation id="2838379631617906747">Installimine</translation>
<translation id="2841837950101800123">Pakkuja</translation>
<translation id="2843806747483486897">Muuda vaikeseadeid ...</translation>
+<translation id="2844169650293029770">C-tüüpi USB-seade (eesmine vasakpoolne port)</translation>
<translation id="2845382757467349449">Kuva alati järjehoidjariba</translation>
<translation id="2846816712032308263">Lubab kiire vahelehe/akna sulgemise – käitab vahelehe töötlejat onunload js GUI-st sõltumatult.</translation>
<translation id="284970761985428403"><ph name="ASCII_NAME" /> (<ph name="UNICODE_NAME" />)</translation>
@@ -1384,6 +1391,7 @@ Ma arvan, et see sait ei tohiks olla blokeeritud.</translation>
<translation id="2923469375796950815">Keela uus ZIP-lahtipakkija.</translation>
<translation id="2924296707677495905">Transliteratsioon (namaskaram → ನಮಸ್ಕಾರ)</translation>
<translation id="2925966894897775835">Arvutustabelid</translation>
+<translation id="2927017729816812676">Vahemälu</translation>
<translation id="2927657246008729253">Muuda...</translation>
<translation id="2928526264833629376">Jätka Hangoutsiga</translation>
<translation id="2930644991850369934">Taastetõmmise allalaadimisel ilmnes tõrge. Võrguühendus on kadunud.</translation>
@@ -1726,6 +1734,7 @@ Ma arvan, et see sait ei tohiks olla blokeeritud.</translation>
<translation id="3396331542604645348">Valitud printer pole saadaval või pole õigesti installitud. Kontrollige printerit või valige teine ​​printer.</translation>
<translation id="3399597614303179694">Makedooniakeelne klaviatuur</translation>
<translation id="340013220407300675">Ründajad võivad üritada saidilt <ph name="BEGIN_BOLD" /><ph name="SITE" /><ph name="END_BOLD" /> varastada teie teavet (näiteks paroole, sõnumeid või krediitkaardiandmeid).</translation>
+<translation id="3401130144947259741">Kui see on lubatud, eksporditakse jäljesündmused teenusesse Event Tracing for Windows (ETW), kus need saab jäädvustada näiteks tööriistaga UIForETW või Xperf.</translation>
<translation id="340282674066624"><ph name="DOWNLOAD_RECEIVED" />, <ph name="TIME_LEFT" /></translation>
<translation id="3406605057700382950">&amp;Näita järjehoidjariba</translation>
<translation id="3412265149091626468">Hüppa valikusse</translation>
@@ -1885,6 +1894,7 @@ Ma arvan, et see sait ei tohiks olla blokeeritud.</translation>
<translation id="3603385196401704894">Kanada prantsuse</translation>
<translation id="3603622770190368340">Võrgusertifikaadi hankimine</translation>
<translation id="3605780360466892872">Triiksärk</translation>
+<translation id="3606220979431771195">Türgi F</translation>
<translation id="3608454375274108141">F10</translation>
<translation id="3608576286259426129">Kasutaja pildi eelvaade</translation>
<translation id="3609138628363401169">Server ei toeta TLS-i taasläbirääkimise laiendust.</translation>
@@ -2405,6 +2415,7 @@ Jätkamiseks peavad kõik kasutajad välja logima.</translation>
<translation id="4321136812570927563">{NUM_DOWNLOAD,plural, =1{Jätka allalaadimist}other{Jätka allalaadimisi}}</translation>
<translation id="4321179778687042513">ctrl</translation>
<translation id="4322394346347055525">Sule muud vahelehed</translation>
+<translation id="4325378361067528777">Luba Push API taustarežiim</translation>
<translation id="4326952458285403282">Keelab katselise fondirenderdamise süsteemi DirectWrite kasutamise.</translation>
<translation id="4326999707196471878">Tööriistakomplekti vaadete brauseridialoogid.</translation>
<translation id="4330406155931244378">Mitmekeelse õigekirjakontrolli lubamine</translation>
@@ -2944,6 +2955,8 @@ Uurimise jätkamiseks vajutage mis tahes klahvi.</translation>
<translation id="5148652308299789060">Keela 3D tarkvararasterdaja</translation>
<translation id="5150254825601720210">Netscape'i sertifikaadi SSL-serveri nimi</translation>
<translation id="5151034238407558331">Kahjuks saavad selle kaupmehe puhul teenust Google Payments kasutada ainult Ameerika Ühendriikide aadressiga ostjad. Kui olete Ameerika Ühendriikide elanik, |muutke teenuses Google Payments oma kodune aadress ära| või ärge kasutage maksmisel teenust Google Payments.</translation>
+<translation id="5151639798712723370">"&gt;
+ C-tüüpi USB-seade (eesmine parempoolne port)</translation>
<translation id="5152451685298621771">(Lastekonto)</translation>
<translation id="5154108062446123722">Printeri <ph name="PRINTING_DESTINATION" /> täpsemad seaded</translation>
<translation id="5154176924561037127">F8</translation>
@@ -3042,6 +3055,7 @@ Uurimise jätkamiseks vajutage mis tahes klahvi.</translation>
<translation id="5271247532544265821">Vaheta lihtsustatud/traditsioonilise hiina keele vahel</translation>
<translation id="5271549068863921519">Salvesta parool</translation>
<translation id="5273628206174272911">Ajaloos katseline navigeerimine horisontaalse ülekerimisega.</translation>
+<translation id="5275795814002959418"><ph name="COUNT" /> sellelt saidilt</translation>
<translation id="5275973617553375938">Google Drive'ist taastatud failid</translation>
<translation id="527605719918376753">Summuta vahekaart</translation>
<translation id="527605982717517565">Luba alati JavaScript saidil <ph name="HOST" /></translation>
@@ -3088,6 +3102,7 @@ Uurimise jätkamiseks vajutage mis tahes klahvi.</translation>
<translation id="5328285148748012771">Saate selles mugavas käivitusprogrammis juurdepääsu oma kõikidele rakendustele. Mängige mänge, videovestelge, kuulake muusikat, muutke dokumente või hankige rohkem rakendusi Chrome'i veebipoest.</translation>
<translation id="5329858601952122676">&amp;Kustuta</translation>
<translation id="5330145655348521461">Failid on avatud erinevatel töölaudadel. Faili vaatamiseks avage <ph name="USER_NAME" /> (<ph name="MAIL_ADDRESS" />).</translation>
+<translation id="5331975486040154427">C-tüüpi USB-seade (tagumine vasakpoolne port)</translation>
<translation id="5332624210073556029">Ajavöönd:</translation>
<translation id="5334142896108694079">Skripti vahemälu</translation>
<translation id="533433379391851622">Eeldatav versioon oli „<ph name="EXPECTED_VERSION" />”, kuid versioon oli „<ph name="NEW_ID" />”.</translation>
@@ -3134,6 +3149,7 @@ Uurimise jätkamiseks vajutage mis tahes klahvi.</translation>
<translation id="539755880180803351">Täidab veebivormid välja tippimisel automaatse täitmise ennustuste ning kohatäitjaga tekstiga.</translation>
<translation id="5397578532367286026">Haldur (<ph name="MANAGER_EMAIL" />) saab kasutaja kasutusandmeid ja ajalugu vaadata aadressil chrome.com.</translation>
<translation id="5397794290049113714">Teie</translation>
+<translation id="5398824043967640339"><ph name="COUNT" /> muudelt saitidelt</translation>
<translation id="5399158067281117682">PIN-koodid ei ühti!</translation>
<translation id="5400640815024374115">Usaldusväärse platvormi mooduli (TPM) kiip on keelatud või puudu.</translation>
<translation id="5402367795255837559">Braille</translation>
@@ -3961,6 +3977,7 @@ Mõned funktsioonid ei pruugi olla saadaval. Veenduge, et profiil on olemas ning
<translation id="6575251558004911012">Küsi, kui sait soovib juurdepääsu kaamerale (soovitatav)</translation>
<translation id="6581162200855843583">Google Drive'i link</translation>
<translation id="6583070985841601920">Sisse logitud kasutajana <ph name="USER_EMAIL_ADDRESS" />. Administraator on sünkroonimise keelanud.</translation>
+<translation id="65832705307647870">Uus vaheleht eeltäidetakse populaarsete saitidega.</translation>
<translation id="6584878029876017575">Microsofti pikaajaline signeerimine</translation>
<translation id="6585234750898046415">Valige pilt, mida kuvada konto sisselogimisekraanil.</translation>
<translation id="6585283250473596934">Avalikku seanssi sisenemine.</translation>
@@ -4303,6 +4320,7 @@ Mõned funktsioonid ei pruugi olla saadaval. Veenduge, et profiil on olemas ning
<translation id="7092106376816104">Hüpikute erandid</translation>
<translation id="7093866338626856921">Vaheta andmeid seadmetega <ph name="HOSTNAMES" /></translation>
<translation id="7096082900368329802">Kas soovite avastada rohkem suurepäraseid funktsioone?</translation>
+<translation id="7098389117866926363">C-tüüpi USB-seade (vasakpoolne port taga)</translation>
<translation id="7100897339030255923">Valitud on <ph name="COUNT" /> üksust</translation>
<translation id="7106346894903675391">Ostke rohkem talletusruumi ...</translation>
<translation id="7108338896283013870">Peida</translation>
@@ -5071,6 +5089,7 @@ Hoidke oma võtmefail kindlas kohas. Teil läheb seda oma laiendi uute versiooni
<translation id="8190193592390505034">Ühendamine võrku <ph name="PROVIDER_NAME" /></translation>
<translation id="8191230140820435481">Teie rakenduste, laienduste ja teemade haldamine</translation>
<translation id="8191453843330043793">V8 puhverserveri lahendaja</translation>
+<translation id="8199491812735365610">Valige konto, millele sisse logida</translation>
<translation id="8200772114523450471">Taasta</translation>
<translation id="8202160505685531999">Sisestage oma seadme <ph name="DEVICE_TYPE" /> profiili värskendamiseks parool uuesti.</translation>
<translation id="8204086856545141093">Reegel blokeeris serverisse saadetavad päringud.</translation>
@@ -5202,6 +5221,7 @@ Täislaadimiseks kuluva aja arvutamine</translation>
<translation id="8381977081675353473">Slovakkia</translation>
<translation id="8382645631174981738"><ph name="EXTENSION_NAME" /> installiti eemalt</translation>
<translation id="8382913212082956454">Kopeeri &amp;e-posti aadress</translation>
+<translation id="8384113940676655504">Lubab Smart Locki seade, mis võimaldab Chromebookil avastada telefone funktsiooniga Bluetooth Low Energy, et avada Chromebook, kui telefon on läheduses.</translation>
<translation id="8390029840652165810">Kontrollige võrguühendust ja kui probleem ei kao, siis logige oma mandaatide värskendamiseks välja ja uuesti sisse.</translation>
<translation id="8390445751804042000">Lubab seadme äratamise teatud võrgupakettide vastuvõtul.</translation>
<translation id="8390449457866780408">Server ei ole saadaval.</translation>
@@ -5288,6 +5308,7 @@ Täislaadimiseks kuluva aja arvutamine</translation>
<translation id="8509646642152301857">Õigekirjakontrolli sõnastiku allalaadimine ebaõnnestus.</translation>
<translation id="8512476990829870887">Lõpeta protsess</translation>
<translation id="851263357009351303">Luba alati saidil <ph name="HOST" /> pilte kuvada</translation>
+<translation id="8513191386157529469">„<ph name="CLIENT_NAME" />” silub seda brauserit.</translation>
<translation id="8513974249124254369">ChromeVox (kõnena esitatud tagasiside) on lubatud. Keelamiseks vajutage klahvikombinatsiooni Ctrl + Alt + Z.</translation>
<translation id="8515737884867295000">Serdipõhine autentimine nurjus</translation>
<translation id="8518865679229538285">Tamili sisestusmeetod (kirjutusmasin)</translation>
@@ -5407,6 +5428,7 @@ Täislaadimiseks kuluva aja arvutamine</translation>
<translation id="8677039480012021122">Kustuta andmed ja katkesta ühendus</translation>
<translation id="8677212948402625567">Ahenda kõik ... </translation>
<translation id="8678648549315280022">Allalaadimisseadete haldamine ...</translation>
+<translation id="8680251145628383637">Logige sisse, et teie järjehoidjad, ajalugu, paroolid ja muud seaded oleksid kõikides seadmetes saadaval. Teid logitakse ka automaatselt sisse Google'i teenustesse.</translation>
<translation id="8680536109547170164"><ph name="QUERY" />, vastus, <ph name="ANSWER" /></translation>
<translation id="8680787084697685621">Konto sisselogimisüksikasjad on aegunud.</translation>
<translation id="8684255857039823328">Parool salvestati. Lingi <ph name="MANAGEMENT_LINK" /> kaudu pääsete oma paroolidele juurde kõikidest seadmetest.</translation>
@@ -5462,6 +5484,7 @@ Täislaadimiseks kuluva aja arvutamine</translation>
<translation id="874420130893181774">Traditsiooniline pinyini sisestusmeetod</translation>
<translation id="8744525654891896746">Valige sellele jälgitavale kasutajale avatar.</translation>
<translation id="8744641000906923997">Romaji</translation>
+<translation id="8744959718895556609">Valige konto teenusest <ph name="LINK_TEXT" /></translation>
<translation id="8749863574775030885">Juurdepääs tundmatu müüja USB-seadmetele</translation>
<translation id="8754200782896249056">&lt;p&gt;Kui toodet <ph name="PRODUCT_NAME" /> käitatakse toetatud töölaua keskkonnas, kasutatakse süsteemi puhverserveri seadeid. Kuid teie süsteemi ei toetata või tekkis probleem süsteemi konfiguratsiooni käivitamisel.&lt;/p&gt;
@@ -5582,6 +5605,7 @@ Täislaadimiseks kuluva aja arvutamine</translation>
<translation id="8933960630081805351">&amp;Näita otsijas</translation>
<translation id="8934732568177537184">Jätka</translation>
<translation id="8938356204940892126">Annan alla</translation>
+<translation id="8938800817013097409">C-tüüpi USB-seade (parempoolne port taga)</translation>
<translation id="8940081510938872932">Arvuti tegeleb praegu liiga paljude asjadega. Proovige hiljem uuesti.</translation>
<translation id="8941173171815156065">Tühista luba „<ph name="PERMISSION" />”</translation>
<translation id="8941248009481596111">Teie ühendus selle saidiga on privaatne.</translation>
diff --git a/chromium/chrome/app/resources/generated_resources_fa.xtb b/chromium/chrome/app/resources/generated_resources_fa.xtb
index a5246940c78..607fa9b8fe9 100644
--- a/chromium/chrome/app/resources/generated_resources_fa.xtb
+++ b/chromium/chrome/app/resources/generated_resources_fa.xtb
@@ -136,6 +136,8 @@
<translation id="1178581264944972037">توقف موقت</translation>
<translation id="1179803038870941185">‏<ph name="URL" /> می‌خواهد کنترل کامل دستگاه‌های MIDI شما را به‌دست آورد.</translation>
<translation id="1181037720776840403">حذف</translation>
+<translation id="11814323404622888">‏"&gt;
+ دستگاه USB-C (درگاه عقب سمت راست)</translation>
<translation id="1183083053288481515">با استفاده از گواهی ارائه شده توسط سرپرست سیستم</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>
@@ -297,7 +299,7 @@
<translation id="1425734930786274278">کوکی‌های زیر مسدود شدند (کوکی‌های شخص ثالث بدون استثنا مسدود می‌شوند):</translation>
<translation id="1426410128494586442">بله</translation>
<translation id="1427049173708736891">‏وقتی تلفن Android شما قفل نباشد و در همین اطراف باشد، قفل <ph name="DEVICE_TYPE" /> خودتان را باز نگه‌دارید— لازم نیست گذرواژه‌تان را تایپ کنید.</translation>
-<translation id="142758023928848008">فعال کردن کلیدهای چسبناک (برای اجرای میانبرهای صفحه‌کلید با تایپ کردن آنها به ترتیب)</translation>
+<translation id="142758023928848008">فعال کردن کلیدهای چسبناک (برای اجرای میان‌برهای صفحه‌کلید با تایپ کردن آنها به ترتیب)</translation>
<translation id="1429740407920618615">قدرت سیگنال:</translation>
<translation id="143027896309062157">خواندن و تغییر همه داده‌ها در رایانه‌تان و وب‌سایت‌هایی که بازدید می‌کنید</translation>
<translation id="1430915738399379752">چاپ</translation>
@@ -330,6 +332,7 @@
<translation id="1468038450257740950">‏WebGL پشتیبانی نمی‌شود.</translation>
<translation id="1470719357688513792">تنظیمات جدید کوکی بعد از بارگیری مجدد صفحه اجرا می‌شود.</translation>
<translation id="14720830734893704">پشتیبانی از صفحه‌کلید مجازی را به کار بیاندازید.</translation>
+<translation id="1474079335130556426">‏فعال کردن حالت پس‌زمینه برای Push API. این کار به Chrome امکان می‌دهد بعد از بسته شدن آخرین پنجره، همچنان اجرا شود و اگر Push API به آن نیاز داشته باشد، هنگام راه‌اندازی سیستم‌عامل اجرا شود.</translation>
<translation id="1474339897586437869">‏«<ph name="FILENAME" />» آپلود نشد. فضای کافی در Google Drive شما وجود ندارد.</translation>
<translation id="1476503841242751994">{COUNT,plural, =1{۱ گذرواژه}one{# گذرواژه}other{# گذرواژه}}</translation>
<translation id="1476949146811612304">‏تنظیم موتور جستجویی که هنگام انجام جستجو از <ph name="BEGIN_LINK" />omnibox<ph name="END_LINK" /> استفاده شود</translation>
@@ -651,6 +654,7 @@
<translation id="1918141783557917887">&amp;کوچک تر</translation>
<translation id="192144045824434199">قابلیت باز شدن پنجره‌های پانل در خارج از کادر مرورگر را فعال می‌کند. اگر فعال نباشد، اقدام به باز کردن پانل، باعث باز کردن پنجره بازشو می‌شود. پانل‌ها همیشه در کانال‌های برنامه‌نویس و قناری فعال هستند.</translation>
<translation id="1921584744613111023"><ph name="DPI" /> نقطه در اینچ</translation>
+<translation id="1921986354447415460">‏صفحه‌کلید ترکی F</translation>
<translation id="1923786009776354244">‏فعال کردن پشتیبانی برای سرعنوان اصلی WebRTC Stun</translation>
<translation id="1926741348654461781">فعال کردن صفحه‌های آفلاین</translation>
<translation id="1929546189971853037">خواندن سابقه مرور شما در همه دستگاه‌هایتان که با آنها به سیستم وارد شده‌اید.</translation>
@@ -690,7 +694,7 @@
<translation id="1979444449436715782">برگه کیفیت کاهش مقیاس تصویر.</translation>
<translation id="1979718561647571293">آیا این همان صفحه راه‌اندازی مورد انتظار شماست؟</translation>
<translation id="1983959805486816857">پس از ایجاد کاربر نظارت‌‌شده جدید، می‌توانید هر زمان که بخواهید از هر دستگاهی، تنظیمات را در <ph name="MANAGEMENT_URL" /> مدیریت کنید.</translation>
-<translation id="1984603991036629094">صفحه کلید آوایی ارمنی</translation>
+<translation id="1984603991036629094">صفحه‌کلید آوایی ارمنی</translation>
<translation id="1984642098429648350">قراردادن پنجره در راست</translation>
<translation id="1985136186573666099"><ph name="PRODUCT_NAME" /> از تنظیمات پروکسی سیستم رایانه‌تان برای اتصال به شبکه استفاده می‌کند.</translation>
<translation id="1986281090560408715">نمایش اخطار را در بالا گوشه سمت چپ صفحه‌ای فعال می‌کند که اطلاعات مربوط به نقاط لمس روی صفحه را نشان می‌دهد.</translation>
@@ -722,7 +726,7 @@
<translation id="204622017488417136">‏دستگاه شما به نسخه قبلاً نصب شده Chrome باز می‌گردد. همه حساب‌های کاربری و داده‌های محلی حذف می‌شوند. این کار قابل بازگشت نیست.</translation>
<translation id="2048182445208425546">دسترسی به ترافیک شبکه شما</translation>
<translation id="2049137146490122801">دسترسی به فایل‌های محلی بر روی دستگاه از طریق سرپرست غیرفعال شده است.</translation>
-<translation id="204914487372604757">ایجاد میانبر</translation>
+<translation id="204914487372604757">ایجاد میان‌بر</translation>
<translation id="2049639323467105390">این دستگاه توسط <ph name="DOMAIN" /> مدیریت می‌شود.</translation>
<translation id="2050339315714019657">عمودی</translation>
<translation id="2052610617971448509">‏شما به حد کافی sandbox ندارید!</translation>
@@ -849,6 +853,7 @@
<translation id="2231990265377706070">علامت تعجب</translation>
<translation id="2232876851878324699">این فایل دارای یک مجوز است، که وارد نشده است:</translation>
<translation id="2233502537820838181">&amp;اطلاعات بیشتر</translation>
+<translation id="2233587473672843170">نمایش سایت‌های پرطرفدار در صفحه «برگه جدید»</translation>
<translation id="223714078860837942">اگر صفحه‌ای خط‌مشی معرف واضحی را تنظیم نکرده است، تنظیم این پرچم، مقدار اطلاعات را در سرصفحه «معرف» برای درخواست‌های غیر هم اصل کاهش خواهد داد.</translation>
<translation id="2238379619048995541">داده‌های حالت فرکانس</translation>
<translation id="2239921694246509981">افزون فرد تحت نظارت</translation>
@@ -927,6 +932,7 @@
<translation id="2326606747676847821">ناشناس شوید</translation>
<translation id="2326931316514688470">&amp;تازه‌سازی برنامه</translation>
<translation id="2327492829706409234">فعال کردن برنامه</translation>
+<translation id="2329597144923131178">برای دریافت نشانک‌ها، سابقه، گذرواژه‌ها و سایر تنظیماتتان در همه دستگاه‌ها، وارد سیستم شوید.</translation>
<translation id="2332131598580221120">مشاهده در فروشگاه</translation>
<translation id="2332742915001411729">بازنشانی روی موارد پیش‌فرض</translation>
<translation id="2335122562899522968">این صفحه کوکی‌ها را تنظیم می‌کند.</translation>
@@ -1025,7 +1031,7 @@
<translation id="2471964272749426546">‏روش ورودی تامیل (Tamil99)</translation>
<translation id="2473195200299095979">ترجمه این صفحه</translation>
<translation id="2475982808118771221">یک خطا روی داد</translation>
-<translation id="247772113373397749">صفحه کلید چندزبانه کانادایی</translation>
+<translation id="247772113373397749">صفحه‌کلید چندزبانه کانادایی</translation>
<translation id="2478176599153288112">مجوزهای فایل رسانه‌ای برای «<ph name="EXTENSION" />»</translation>
<translation id="2478830106132467213">قفل این <ph name="DEVICE_TYPE" /> فقط زمانی باز می‌شود که تلفنتان در فاصله یک دست با شما قرار داشته باشد.</translation>
<translation id="2479780645312551899">این بار همه افزایه‌ها اجرا شوند</translation>
@@ -1051,7 +1057,7 @@
<translation id="2498857833812906273">‏هنگام خروج از Chrome درصورتی‌که برنامه‌های میزبانی شده در حال اجرا هستند، اعلانی نمایش داده شود.</translation>
<translation id="2501173422421700905">گواهی در انتظار</translation>
<translation id="2501278716633472235">بازگشت</translation>
-<translation id="2501797496290880632">تایپ کردن میانبر</translation>
+<translation id="2501797496290880632">تایپ کردن میان‌بر</translation>
<translation id="2504775205691825589">سروری که این صفحه وب را میزبانی می‌کند ممکن است بیش از حد بار داشته باشد یا تحت سرویس و نگهداری باشد.
برای جلوگیری از ایجاد ترافیک بیش از حد و بدتر کردن وضعیت،
درخواست‌های ارسالی به این نشانی وب موقتاً رد شده‌اند.</translation>
@@ -1128,7 +1134,7 @@
<translation id="2608770217409477136">استفاده از تنظیمات پیش‌فرض</translation>
<translation id="2609371827041010694">همیشه در این سایت اجرا شود</translation>
<translation id="2609632851001447353">انواع مختلف</translation>
-<translation id="2609896558069604090">ایجاد میانبرها...</translation>
+<translation id="2609896558069604090">ایجاد میان‌برها...</translation>
<translation id="2610260699262139870">اندازه &amp;واقعی</translation>
<translation id="2610780100389066815">‏امضای لیست اطمینان Microsoft</translation>
<translation id="2612676031748830579">شماره کارت</translation>
@@ -1314,6 +1320,7 @@
<translation id="2838379631617906747">درحال نصب</translation>
<translation id="2841837950101800123">ارائه‌دهنده</translation>
<translation id="2843806747483486897">تغییر پیش‌فرض...</translation>
+<translation id="2844169650293029770">‏دستگاه USB-C (درگاه جلوی سمت چپ)</translation>
<translation id="2845382757467349449">همیشه نوار نشانک‌ها نمایش داده شود</translation>
<translation id="2846816712032308263">‏بستن سریع برگه/پنجره را فعال می‌کند - کنترل‌کننده onunload js برگه را مستقل از GUI اجرا می‌کند.</translation>
<translation id="284970761985428403"><ph name="ASCII_NAME" /> (<ph name="UNICODE_NAME" />)</translation>
@@ -1378,6 +1385,7 @@
<translation id="2923469375796950815">‏غیرفعال کردن بازکننده ZIP جدید.</translation>
<translation id="2924296707677495905">‏نویسه‌گردانی (namaskaram ← ‏ನಮಸ್ಕಾರ)</translation>
<translation id="2925966894897775835">صفحات</translation>
+<translation id="2927017729816812676">فضای حافظه پنهان</translation>
<translation id="2927657246008729253">تغییر...</translation>
<translation id="2928526264833629376">‏ادامه به Hangouts</translation>
<translation id="2930644991850369934">در حین دانلود تصویر بازیابی مشکلی روی داد. اتصال شبکه قطع شده است.</translation>
@@ -1392,7 +1400,7 @@
<translation id="2946119680249604491">افزودن اتصال</translation>
<translation id="2946640296642327832">فعال کردن بلوتوث</translation>
<translation id="2948083400971632585">در صفحه تنظیمات می‌توانید همه پراکسی‌های پیکربندی شده برای هر اتصال را از کار بیاندازید.</translation>
-<translation id="2948300991547862301">برو به <ph name="PAGE_TITLE" /></translation>
+<translation id="2948300991547862301">رفتن به <ph name="PAGE_TITLE" /></translation>
<translation id="29488703364906173">مرورگر وب سریع، ساده و ایمن که برای وب مدرن طراحی شده است.</translation>
<translation id="2950186680359523359">سرور بدون ارسال هرگونه داده، اتصال را قطع کرد.</translation>
<translation id="2951247061394563839">پنجره مرکزی</translation>
@@ -1464,7 +1472,7 @@
<translation id="3056670889236890135">فقط می‌توانید تنظیمات کاربر کنونی را ویرایش کنید. به این کاربر بروید تا تنظیمات آن را ویرایش کنید.</translation>
<translation id="3057592184182562878">‏نمایش دستگاه‌های MTP به صورت یک ذخیره‌سازی فایل در مدیریت فایل.</translation>
<translation id="3057861065630527966">از عکس‌ها و ویدیوهایتان پشتیبان بگیرید</translation>
-<translation id="305803244554250778">ایجاد میانبرهای برنامه در قسمت‌های زیر:</translation>
+<translation id="305803244554250778">ایجاد میان‌برهای برنامه در قسمت‌های زیر:</translation>
<translation id="3058212636943679650">‏درصورتی‌که لازم شود سیستم عامل رایانهٔ خود را بازیابی کنید، به یک کارت SD بازیابی یا کارت حافظهٔ USB نیاز خواهید داشت.</translation>
<translation id="305932878998873762">‏حافظه داخلی ساده HTTP حافظه داخلی جدیدی است. این قابلیت برای تخصیص فضای دیسک به سیستم پرونده‌ای تکیه می‌کند.</translation>
<translation id="3060433672989552055">با توجه به رفتار بازگشت پیش‌فرض، این سایت مسدود شد.</translation>
@@ -1719,6 +1727,7 @@
<translation id="3396331542604645348">چاپگر انتخابی موجود نیست یا به درستی نصب نشده است. چاپگر خود را بررسی کرده یا چاپگر دیگری را انتخاب کنید.</translation>
<translation id="3399597614303179694">صفحه‌کلید مقدونی</translation>
<translation id="340013220407300675">ممکن است مهاجمان سعی در دزدیدن اطلاعات شما (مثل گذرواژه‌ها، پیام‌ها یا کارت‌های اعتباری) از <ph name="BEGIN_BOLD" /><ph name="SITE" /><ph name="END_BOLD" /> را داشته باشند.</translation>
+<translation id="3401130144947259741">‏اگر فعال شود، رویدادهای ردیابی به «ردیاب رویداد برای Windows‏» (ETW) صادر می‌شوند و می‌توانند با ابزاری مانند UIF یا ETW یا Xperf ضبط شوند.</translation>
<translation id="340282674066624"><ph name="DOWNLOAD_RECEIVED" />، <ph name="TIME_LEFT" /></translation>
<translation id="3406605057700382950">&amp;نمایش نوار نشانک‌ها</translation>
<translation id="3412265149091626468">پرش به انتخاب</translation>
@@ -1877,6 +1886,7 @@
<translation id="3603385196401704894">فرانسوی کانادا</translation>
<translation id="3603622770190368340">دریافت گواهی‌نامه شبکه</translation>
<translation id="3605780360466892872">تاجر</translation>
+<translation id="3606220979431771195">‏ترکی F</translation>
<translation id="3608454375274108141">F10</translation>
<translation id="3608576286259426129">پیش‌نمایش تصویر کاربر</translation>
<translation id="3609138628363401169">‏سرور از برنامه اضافی گفتگوی مجدد TLS پشتیبانی نمی‌کند.</translation>
@@ -2025,7 +2035,7 @@
<translation id="3778740492972734840">ابزارهای &amp;برنامه نویس</translation>
<translation id="378312418865624974">خواندن شناسه بی‌نظیر در این رایانه</translation>
<translation id="3783640748446814672">دگرساز</translation>
-<translation id="3785308913036335955">نمایش میانبر «برنامه‌ها»</translation>
+<translation id="3785308913036335955">نمایش میان‌بر «برنامه‌ها»</translation>
<translation id="3785852283863272759">ایمیل کردن مکان صفحه</translation>
<translation id="3786301125658655746">شما آفلاین هستید</translation>
<translation id="3788090790273268753">‏گواهی این سایت در سال ۲۰۱۶ منقضی می‌شود و زنجیره گواهی حاوی یک گواهی با امضای SHA-1 است.</translation>
@@ -2061,7 +2071,7 @@
<translation id="3819800052061700452">&amp;تمام صفحه</translation>
<translation id="3822265067668554284">به هیچ سایتی اجازه داده نشود مکان فیزیکی شما را ردیابی کند</translation>
<translation id="382518646247711829">اگر از سرور پراکسی استفاده می‌کنید...</translation>
-<translation id="3825863595139017598">صفحه کلید مغولی</translation>
+<translation id="3825863595139017598">صفحه‌کلید مغولی</translation>
<translation id="3827306204503227641">افزایه‌های آزمایشی نشده همچنان مجاز باشند</translation>
<translation id="38275787300541712">‏پس از انجام کار، Enter را فشار دهید</translation>
<translation id="3827774300009121996">&amp;تمام صفحه</translation>
@@ -2093,7 +2103,7 @@
<translation id="3858678421048828670">صفحه‌کلید ایتالیایی</translation>
<translation id="3859360505208332355">همیشه به این افزایه‌ها در <ph name="HOST" /> اجازه داده شود</translation>
<translation id="3866249974567520381">توضیح</translation>
-<translation id="3866443872548686097">رسانه بازیابی شما آماده است. می‌توانید آن را از سیستم خود بردارید.</translation>
+<translation id="3866443872548686097">رسانه بازیابی شما آماده است. می‌توانید آن را از سیستم خود جدا کنید.</translation>
<translation id="3867944738977021751">فیلدهای گواهی</translation>
<translation id="3868718841498638222">شما به کانال <ph name="CHANNEL_NAME" /> تغییر وضعیت داده‌اید.</translation>
<translation id="3869917919960562512">فهرست اشتباه.</translation>
@@ -2397,6 +2407,7 @@
<translation id="4321136812570927563">{NUM_DOWNLOAD,plural, =1{ادامه دانلود}one{ادامه دانلود}other{ادامه دانلود}}</translation>
<translation id="4321179778687042513">مهار</translation>
<translation id="4322394346347055525">بستن برگه‌های دیگر</translation>
+<translation id="4325378361067528777">‏فعال کردن حالت پس‌زمینه Push API</translation>
<translation id="4326952458285403282">‏استفاده از سیستم آزمایشی تولید تصویر قلم DirectWrite را غیرفعال می‌کند.</translation>
<translation id="4326999707196471878">‏کادرهای گفتگوی Toolkit-Views Browser.</translation>
<translation id="4330406155931244378">فعال‌سازی غلط‌گیر املای چندزبانه</translation>
@@ -2666,7 +2677,7 @@
<translation id="4746971725921104503">به نظر می‌رسد که شما از قبل در حال مدیریت کاربری با همان نام هستید. آیا مایلید <ph name="LINK_START" /><ph name="USER_DISPLAY_NAME" /> را به این دستگاه وارد کنید<ph name="LINK_END" />؟</translation>
<translation id="4747271164117300400">مقدونی</translation>
<translation id="4747597332667805440">رابط کاربری حباب بازیابی جلسه را فعال کنید.</translation>
-<translation id="4749157430980974800">صفحه کلید گرجی</translation>
+<translation id="4749157430980974800">صفحه‌کلید گرجی</translation>
<translation id="4750394297954878236">پیشنهادات</translation>
<translation id="475088594373173692">کاربر اول</translation>
<translation id="4753602155423695878">‏پویانمایی نوار پیشرفت بارگیری صفحه تلفن Android</translation>
@@ -2779,7 +2790,7 @@
<translation id="49088176676474409">‏پنهان کردن مقادیر VPD.</translation>
<translation id="4910021444507283344">WebGL</translation>
<translation id="4910673011243110136">شبکه‌های خصوصی</translation>
-<translation id="4911714727432509308">میانبرهای صفحه‌کلید به هیچ برنامهٔ افزودنی اختصاص داده نشده است.</translation>
+<translation id="4911714727432509308">میان‌برهای صفحه‌کلید به هیچ برنامهٔ افزودنی اختصاص داده نشده است.</translation>
<translation id="4912643508233590958">تعداد خروج از حالت بی‌حرکت</translation>
<translation id="4916679969857390442">لنز</translation>
<translation id="4918021164741308375"><ph name="ORIGIN" /> می‌خواهد با افزونه «<ph name="EXTENSION_NAME" />» ارتباط برقرار کند</translation>
@@ -2929,6 +2940,8 @@
<translation id="5148652308299789060">غیرفعال کردن رسترساز 3 بعدی نرم افزاری</translation>
<translation id="5150254825601720210">‏نام سرور SSL گواهی Netscape</translation>
<translation id="5151034238407558331">‏متأسفانه، تنها خریداران با آدرس ایالات متحده می‌توانند از Google Payments برای این تاجر استفاده کنند. اگر ساکن ایالات متحده هستید، لطفاً |آدرس خانه‌تان را در Google Payments تغییر دهید| یا بدون استفاده از Google Payments پرداخت کنید.</translation>
+<translation id="5151639798712723370">‏"&gt;
+ دستگاه USB-C (درگاه جلوی سمت راست)</translation>
<translation id="5152451685298621771">(حساب مخصوصی بچه‌ها)</translation>
<translation id="5154108062446123722">تنظیمات پیشرفته برای <ph name="PRINTING_DESTINATION" /></translation>
<translation id="5154176924561037127">F8</translation>
@@ -3028,6 +3041,7 @@
<translation id="5271247532544265821">تغییر وضعیت بین حالت چینی ساده/سنتی</translation>
<translation id="5271549068863921519">ذخیره گذرواژه</translation>
<translation id="5273628206174272911">پیمایش آزمایشی سابقه در مقایسه با پیمایش افقی.</translation>
+<translation id="5275795814002959418"><ph name="COUNT" /> از این سایت</translation>
<translation id="5275973617553375938">‏فایل‌های بازیابی‌شده از Google Drive</translation>
<translation id="527605719918376753">بی‌صدا کردن برگه</translation>
<translation id="527605982717517565">همیشه جاوا اسکریپت در <ph name="HOST" /> مجاز باشد</translation>
@@ -3074,6 +3088,7 @@
<translation id="5328285148748012771">‏از این راه‌انداز راحت به تمام برنامه‌هایتان دسترسی داشته باشید. بازی کنید، گپ ویدیویی بزنید، به موسیقی گوش دهید، اسناد را ویرایش کنید یا برنامه‌های بیشتری از فروشگاه وب Chrome دریافت کنید.</translation>
<translation id="5329858601952122676">&amp;حذف</translation>
<translation id="5330145655348521461">این فایل‌ها در میزکار دیگری باز شده‌اند. به <ph name="USER_NAME" /> ‏(<ph name="MAIL_ADDRESS" />) بروید تا آن را مشاهده کنید.</translation>
+<translation id="5331975486040154427">‏دستگاه USB-C (درگاه عقب سمت چپ)</translation>
<translation id="5332624210073556029">منطقهٔ زمانی:</translation>
<translation id="5334142896108694079">حافظهٔ پنهان اسکریپت</translation>
<translation id="533433379391851622">نسخه مورد انتظار «<ph name="EXPECTED_VERSION" />»، اما نسخه «<ph name="NEW_ID" />» بود.</translation>
@@ -3091,7 +3106,7 @@
<translation id="5355097969896547230">یافتن دوباره</translation>
<translation id="5355351445385646029">برای انتخاب کاندید، فاصله را فشار دهید</translation>
<translation id="5355926466126177564">‏افزونه «<ph name="EXTENSION_NAME" />»، صفحه‌ای را تغییر داده است که هنگام جستجو از Omnibox نشان داده می‌شود.</translation>
-<translation id="5357579842739549440">میانبرهای صفحه کلید برای اشکال‌زدایی</translation>
+<translation id="5357579842739549440">میان‌برهای صفحه‌کلید برای اشکال‌زدایی</translation>
<translation id="5359419173856026110">هنگامی که افزایش سرعت سخت‌افزار فعال است، سرعت فریم واقعی یک صفحه را در هر ثانیه برای فریم ها نمایش می‌دهد.</translation>
<translation id="5360150013186312835">نمایش در نوار ابزار</translation>
<translation id="5362741141255528695">فایل کلید خصوصی را انتخاب کنید.</translation>
@@ -3109,7 +3124,7 @@
<translation id="537813040452600081">صفحاتی که در این پنجره مشاهده می‌کنید در سابقه مروگر نشان داده نمی‌شوند و بعد از خروج از سیستم هیچ رد دیگری در رایانه از خود به جای نمی‌گذارند (مانند کوکی‌ها). فایل‌هایی که دانلود می‌کنید و نشانک‌هایی که ایجاد می‌کنید حفظ نمی‌شوند.</translation>
<translation id="5379140238605961210">ادامه مسدود کردن دسترسی به میکروفون</translation>
<translation id="5379268888377976432">واگرد حذف</translation>
-<translation id="5380103295189760361">‏برای مشاهده میانبرهای صفحه‌ کلید مربوط به این اصلاح‌کننده‌ها کلیدهای Shift ،Alt ،Control یا Search را نگه دارید.</translation>
+<translation id="5380103295189760361">‏برای مشاهده میان‌برهای صفحه‌ کلید مربوط به این اصلاح‌کننده‌ها کلیدهای Shift ،Alt ،Control یا Search را نگه دارید.</translation>
<translation id="5382392428640372740">فعال کردن ردیابی پیمایش</translation>
<translation id="5388588172257446328">نام کاربری:</translation>
<translation id="5390284375844109566">پایگاه داده فهرست‌بندی شده</translation>
@@ -3120,6 +3135,7 @@
<translation id="539755880180803351">فرم‌های وب را با پیش بینی‌های نوع تکمیل خودکار قسمت به‌عنوان یک متن نگهدارنده مکان حاشیه‌نویسی می‌کند.</translation>
<translation id="5397578532367286026">‏میزان مصرف و سابقه این کاربر می‌تواند توسط مدیر (<ph name="MANAGER_EMAIL" />) در chrome.com بازبینی شود.</translation>
<translation id="5397794290049113714">شما</translation>
+<translation id="5398824043967640339"><ph name="COUNT" /> از این سایت‌ها</translation>
<translation id="5399158067281117682">پین ها مطابقت ندارند!</translation>
<translation id="5400640815024374115">‏تراشه مادول سکوی قابل اطمینان (TPM) غیرفعال است یا موجود نیست.</translation>
<translation id="5402367795255837559">بریل</translation>
@@ -3155,7 +3171,7 @@
<translation id="5436510242972373446">جستجوی <ph name="SITE_NAME" />:</translation>
<translation id="5438430601586617544">(غیر فشرده)</translation>
<translation id="54401264925851789">اطلاعات امنیتی صفحه</translation>
-<translation id="544083962418256601">ایجاد میانبرها...</translation>
+<translation id="544083962418256601">ایجاد میان‌برها...</translation>
<translation id="5441100684135434593">شبکه کابلی</translation>
<translation id="5448293924669608770">اوه، هنگام ورود به سیستم خطایی رخ داد</translation>
<translation id="5449588825071916739">نشانک‌گذاری همه برگه‌ها...</translation>
@@ -3945,6 +3961,7 @@
<translation id="6575251558004911012">وقتی سایتی باید به دوربین دسترسی داشته باشد، سؤال شود (توصیه می‌شود)</translation>
<translation id="6581162200855843583">‏پیوند Google Drive</translation>
<translation id="6583070985841601920">بعنوان <ph name="USER_EMAIL_ADDRESS" /> وارد سیستم شدید. همگام‌سازی توسط سرپرست شما غیرفعال شده است.</translation>
+<translation id="65832705307647870">سایت‌های پرطرفدار از قبل به صفحه «برگه جدید» اضافه می‌شود.</translation>
<translation id="6584878029876017575">‏امضای دائمی Microsoft</translation>
<translation id="6585234750898046415">تصویری انتخاب کنید تا برای حساب شما در صفحه ثبت نام نشان داده شود.</translation>
<translation id="6585283250473596934">ورود به جلسه عمومی.</translation>
@@ -3975,7 +3992,7 @@
<translation id="6626108645084335023">‏در انتظار بررسی DNS.</translation>
<translation id="6628328486509726751">زمان آپلود <ph name="WEBRTC_LOG_UPLOAD_TIME" /></translation>
<translation id="6629841649550503054">‏همه در <ph name="BEGIN_LINK" />Google Drive<ph name="END_LINK" /> پشتیبان گرفته شدند</translation>
-<translation id="6630452975878488444">میانبر انتخاب</translation>
+<translation id="6630452975878488444">میان‌بر انتخاب</translation>
<translation id="6630752851777525409"><ph name="EXTENSION_NAME" /> خواستار دسترسی دائم به یک گواهی است تا خودش را از طرف شما احراز هویت کند.</translation>
<translation id="6631802470730636970">فعال کردن افزودن به قفسه</translation>
<translation id="6634865548447745291">در حال حاضر نمی‌توانید از <ph name="SITE" /> بازدید کنید زیرا <ph name="BEGIN_LINK" />این گواهینامه باطل شده است<ph name="END_LINK" />. معمولاً خطاهای شبکه و حمله‌ها موقتی هستند، بنابراین احتمالاً این صفحه بعداً کار خواهد کرد.</translation>
@@ -4285,6 +4302,7 @@
<translation id="7092106376816104">موارد استثنای پنجره بازشو</translation>
<translation id="7093866338626856921">تبادل داده با دستگاه‌هایی با نام‌های: <ph name="HOSTNAMES" /></translation>
<translation id="7096082900368329802">می‌خواهید قابلیت‌های عالی‌تری را کشف کنید؟</translation>
+<translation id="7098389117866926363">‏دستگاه USB-C (درگاه عقب سمت چپ)</translation>
<translation id="7100897339030255923"><ph name="COUNT" /> مورد انتخاب شدند</translation>
<translation id="7106346894903675391">خرید فضای ذخیره بیشتر...</translation>
<translation id="7108338896283013870">عدم نمایش</translation>
@@ -4485,7 +4503,7 @@
<translation id="7396845648024431313"><ph name="APP_NAME" /> در هنگام راه‌اندازی سیستم شروع به کار می‌کند و در پس‌زمینه همچنان فعال خواهد بود، حتی زمانی که تمام پنجره‌های دیگر <ph name="PRODUCT_NAME" /> را ببندید.</translation>
<translation id="7400418766976504921">نشانی وب</translation>
<translation id="740083207982962331">‏لطفاً صبر کنید تا Chromebox شما مجدداً راه‌اندازی شود...</translation>
-<translation id="7401543881546089382">حذف میانبر</translation>
+<translation id="7401543881546089382">حذف میان‌بر</translation>
<translation id="7401762151840183030">تنظیمات شما به پیش‌فرض‌های اولیه آنها بازیابی می‌شوند. با این کار صفحه اصلی، صفحه «برگه جدید» و موتور جستجویتان بازنشانی می‌شود، افزونه‌هایتان غیرفعال می‌شوند و پین همه برگه‌ها برداشته می‌شود. سایر داده‌های موقت و داده‌های حافظه پنهان هم (مانند کوکی‌ها، داده‌های سایت و محتوا) پاک می‌شوند.</translation>
<translation id="7405422715075171617">اسکن شماره کارت اعتباری جدید را هنگام پر کردن فرم کارت اعتباری فعال کنید.</translation>
<translation id="740624631517654988">پنجره‌های بازشو مسدود شدند</translation>
@@ -4661,7 +4679,7 @@
<translation id="7632948528260659758">به‌روزرسانی برنامه‌های کیوسک زیر انجام نشد:</translation>
<translation id="7634554953375732414">اتصال شما به این سایت خصوصی نیست.</translation>
<translation id="7634566076839829401">مشکلی پیش آمد. لطفاً دوباره امتحان کنید.</translation>
-<translation id="7639178625568735185">متوجه شدم!</translation>
+<translation id="7639178625568735185">متوجه شدم.</translation>
<translation id="7643817847124207232">اتصال اینترنت قطع شده است.</translation>
<translation id="7644029910725868934">پوشه نشانک‌های مدیریت شده را برای کاربران تحت مدیریت فعال می‌کند.</translation>
<translation id="7645176681409127223"><ph name="USER_NAME" /> (مالک)</translation>
@@ -4791,7 +4809,7 @@
<translation id="7839804798877833423">دریافت این فایل‌ها تقریباً <ph name="FILE_SIZE" /> از داده تلفن همراه شما را مصرف می‌کند.</translation>
<translation id="7839809549045544450">‏این سرور دارای یک کلید عمومی Diffie-Hellman یک بار مصرف است</translation>
<translation id="7839963980801867006">‏انتخاب کنید کدام IME برنامه افزودنی در منوی زبان فعال شود.</translation>
-<translation id="7842062217214609161">بدون میانبر</translation>
+<translation id="7842062217214609161">بدون میان‌بر</translation>
<translation id="7842346819602959665">جدیدترین نسخه برنامهٔ افزودنی "<ph name="EXTENSION_NAME" />" به مجوزهای بیشتری نیاز دارد، بنابراین غیر فعال شده است.</translation>
<translation id="7844992432319478437">به‌روزرسانی تفاوت</translation>
<translation id="7845849068167576533">‏حتی اگر در گذشته از این وب‌سایت بازدید کرده‌اید، اکنون امن نیست. Google Safe Browsing به تازگی در <ph name="SITE" />، ‏<ph name="BEGIN_LINK" />بدافزار شناسایی کرده است<ph name="END_LINK" />. گاهی اوقات وب‌سایت‌هایی که معمولاً امن هستند، با بدافزار آلوده می‌شوند. منبع محتوای مخرب <ph name="SUBRESOURCE_HOST" /> است که یک توزیع‌کننده بدافزار شناخته شده می‌باشد.</translation>
@@ -4871,7 +4889,7 @@
<translation id="795025003224538582">راه‌اندازی مجدد نشود</translation>
<translation id="7951415247503192394">(۳۲ بیت)</translation>
<translation id="7953739707111622108">این دستگاه باز نمی‌شود زیرا سیستم فایل‌ آن شناسایی نشد.</translation>
-<translation id="7953955868932471628">مدیریت میانبرها</translation>
+<translation id="7953955868932471628">مدیریت میان‌برها</translation>
<translation id="7955383984025963790">برگه ۵</translation>
<translation id="7957054228628133943">مدیریت انسداد پنجره بازشو</translation>
<translation id="7959074893852789871">این فایل دارای چندین مجوز است، برخی از آن‌ها وارد نشده‌اند:</translation>
@@ -4908,7 +4926,7 @@
<translation id="7988930390477596403">‏دفعه بعد که قفل <ph name="DEVICE_TYPE" /> را باز کنید، فعال می‌شود. با Smart Lock، تلفنتان قفل این دستگاه را، بدون گذرواژه، باز می‌کند. برای فعال کردن Smart Lock، بلوتوث روشن می‌شود.</translation>
<translation id="7989023212944932320">‏Google Safe Browsing به تازگی در <ph name="SITE" />، ‏<ph name="BEGIN_LINK" />بدافزار شناسایی کرده است<ph name="END_LINK" />. گاهی اوقات وب‌سایت‌هایی که معمولاً امن هستند، با بدافزار آلوده می‌شوند. منبع محتوای مخرب <ph name="SUBRESOURCE_HOST" /> است که یک توزیع‌کننده بدافزار شناخته شده می‌باشد. باید بعد از گذشت چند ساعت به سایت برگردید.</translation>
<translation id="7994370417837006925">ورود چندگانه به سیستم</translation>
-<translation id="799547531016638432">حذف میانبر</translation>
+<translation id="799547531016638432">حذف میان‌بر</translation>
<translation id="7996005831155352675">فعال کردن تکمیل خودکار با یک کلیک</translation>
<translation id="79962507603257656">وضعیت دانلود در مرکز اعلان</translation>
<translation id="7997089631332811254">‏(|شروع به کار مجدد| Chrome لازم است)</translation>
@@ -5054,6 +5072,7 @@
<translation id="8190193592390505034">اتصال به <ph name="PROVIDER_NAME" /></translation>
<translation id="8191230140820435481">مدیریت برنامه‌ها، افزونه‌ها و طرح‌های زمینه</translation>
<translation id="8191453843330043793">‏تحلیل‌گر پراکسی V8</translation>
+<translation id="8199491812735365610">حسابی را برای ورود به سیستم انتخاب کنید</translation>
<translation id="8200772114523450471">ازسرگیری</translation>
<translation id="8202160505685531999">لطفاً برای به‌روزرسانی نمایه <ph name="DEVICE_TYPE" /> خود، گذرواژه‌تان را دوباره وارد کنید.</translation>
<translation id="8204086856545141093">درخواست‌های ارائه شده به سرور توسط یک خط‌مشی مسدود شده است.</translation>
@@ -5184,6 +5203,7 @@
<translation id="8381977081675353473">اسلواکی</translation>
<translation id="8382645631174981738"><ph name="EXTENSION_NAME" /> از راه دور نصب شد</translation>
<translation id="8382913212082956454">کپی آدرس &amp;ایمیل</translation>
+<translation id="8384113940676655504">‏یک تنظیم Smart Lock را فعال می‌کند که به Chromebook اجازه می‌دهد تلفن‌ها را از طریق «بلوتوث کم‌مصرف» پیدا کند تا وقتی تلفن در نزدیکی Chromebook است، قفل آن را باز کند.</translation>
<translation id="8390029840652165810">لطفاً مطمئن شوید که اتصال به شبکه شما کار می‌کند و اگر مشکل همچنان ادامه دارد، لطفاً از سیستم خارج شوید و دوباره وارد سیستم شوید تا مدارک صلاحیت خود را بازخوانی کنید.</translation>
<translation id="8390445751804042000">بیدار کردن دستگاه را براساس دریافت برخی از بسته‌های شبکه فعال می‌کند.</translation>
<translation id="8390449457866780408">سرور در دسترس نیست.</translation>
@@ -5270,6 +5290,7 @@
<translation id="8509646642152301857">دانلود فرهنگ لغت بررسی املا انجام نشد.</translation>
<translation id="8512476990829870887">پایان دادن به فرآیند</translation>
<translation id="851263357009351303">همیشه <ph name="HOST" /> مجاز باشد تصاویر را نشان دهد</translation>
+<translation id="8513191386157529469">«<ph name="CLIENT_NAME" />» در حال اشکال‌زدایی این مرورگر است.</translation>
<translation id="8513974249124254369">‏ChromeVox (بازخورد گفتاری) فعال است. برای غیرفعال کردن آن Ctrl+Alt+Z را فشار دهید.</translation>
<translation id="8515737884867295000">تأیید اعتبار براساس گواهی ناموفق بود</translation>
<translation id="8518865679229538285">روش ورودی تامیل (ماشین تحریر)</translation>
@@ -5389,6 +5410,7 @@
<translation id="8677039480012021122">پاک کردن داده‌ها و قطع اتصال</translation>
<translation id="8677212948402625567">کوچک کردن همه...</translation>
<translation id="8678648549315280022">مدیریت تنظیمات دانلود...</translation>
+<translation id="8680251145628383637">‏برای دریافت نشانک‌ها، سابقه، گذرواژه‌ها و تنظیمات دیگرتان را در همه دستگاه‌هایتان، به سیستم وارد شوید. همچنین به‌صورت خودکار به سیستم خدمات Google خود نیز وارد می‌شوید.</translation>
<translation id="8680536109547170164"><ph name="QUERY" />، پاسخ، <ph name="ANSWER" /></translation>
<translation id="8680787084697685621">جزئیات ورود به سیستم حساب قدیمی است.</translation>
<translation id="8684255857039823328">گذرواژه ذخیره شد. در <ph name="MANAGEMENT_LINK" /> به گذرواژه‌هایتان از هر دستگاهی دسترسی داشته باشید.</translation>
@@ -5444,6 +5466,7 @@
<translation id="874420130893181774">روش ورودی پین‌یین سنتی</translation>
<translation id="8744525654891896746">یک چهره‌نما برای این کاربر نظارت‌شده انتخاب کنید</translation>
<translation id="8744641000906923997">Romaji</translation>
+<translation id="8744959718895556609">حسابی برای <ph name="LINK_TEXT" /> خود انتخاب کنید</translation>
<translation id="8749863574775030885">‏دسترسی به دستگاه‌های USB از ارائه‌دهنده ناشناس</translation>
<translation id="8754200782896249056">‏&lt;p&gt;هنگام اجرای <ph name="PRODUCT_NAME" /> تحت محیط پشتیبانی شده دسک تاپ، تنظیمات پروکسی سیستم استفاده خواهد شد. اما، سیستم شما پشتیبانی نمی‌شود یا مشکلی در راه‌اندازی پیکربندی سیستم شما وجود دارد.&lt;/p&gt;
@@ -5508,7 +5531,7 @@
<translation id="8848709220963126773">‏تغییر حالت کلید shift</translation>
<translation id="8852366862412129888">‏سایت دارای منابع HTTP است.</translation>
<translation id="8852742364582744935">برنامه‌ها و افزودنه‌های زیر اضافه شدند:</translation>
-<translation id="885381502874625531">صفحه کلید بلاروسی</translation>
+<translation id="885381502874625531">صفحه‌کلید بلاروسی</translation>
<translation id="8856844195561710094">توقف کاوش دستگاه بلوتوث ناموفق بود.</translation>
<translation id="885701979325669005">فضای ذخیره‌سازی</translation>
<translation id="8859057652521303089">انتخاب زبان:</translation>
@@ -5541,7 +5564,7 @@
<translation id="8899388739470541164">ویتنامی</translation>
<translation id="8899851313684471736">باز کردن پیوند در &amp;پنجره جدید</translation>
<translation id="8900820606136623064">مجارستانی</translation>
-<translation id="8901822611024316615">‏صفحه کلید QWERTY چک</translation>
+<translation id="8901822611024316615">‏صفحه‌کلید QWERTY چک</translation>
<translation id="890308499387283275">‏Chrome نمی‌تواند این فایل را دانلود کند.</translation>
<translation id="8903921497873541725">بزرگ‌نمایی</translation>
<translation id="8908902564709148335">هشدار: پرچم --اسکریپت-نیاز-به-اقدام-دارد را در این رایانه فعال کرده‌اید که قابلیت‌های این برنامه افزودنی را محدود می‌کند. با وجود این، شاید سایر دستگاه‌ها از این پرچم پشتیبانی نکنند یا آن را فعال کرده باشند. در این دستگاه‌ها، این برنامه افزودنی می‌تواند این موارد را نیز انجام دهد:</translation>
@@ -5563,6 +5586,7 @@
<translation id="8933960630081805351">‏&amp;نمایش در Finder</translation>
<translation id="8934732568177537184">ادامه</translation>
<translation id="8938356204940892126">تسلیم</translation>
+<translation id="8938800817013097409">‏دستگاه USB-C (درگاه عقب سمت راست)</translation>
<translation id="8940081510938872932">رایانهٔ شما اکنون در حال انجام کارهای زیادی است. در فرصت دیگری دوباره سعی کنید.</translation>
<translation id="8941173171815156065">لغو مجوز «<ph name="PERMISSION" />»</translation>
<translation id="8941248009481596111">اتصال شما به این سایت خصوصی است.</translation>
@@ -5739,7 +5763,7 @@
<translation id="9159562891634783594">‏گزینه ثبت چاپگرهای cloud ثبت نشده را در بخش پیش‌نمایش چاپ فعال می‌کند.</translation>
<translation id="9166510596677678112">ارسال ایمیل برای این شخص</translation>
<translation id="916745092148443205">هایلایت شدن در اثر ضربه</translation>
-<translation id="9169496697824289689">مشاهده میانبرهای صفحه کلید</translation>
+<translation id="9169496697824289689">مشاهده میان‌برهای صفحه‌کلید</translation>
<translation id="9169664750068251925">همیشه مسدود در این سایت</translation>
<translation id="9170848237812810038">&amp;واگرد</translation>
<translation id="9170884462774788842">‏برنامه‌ای دیگر بر روی رایانه شما یک طرح زمینه را اضافه کرده است که ممکن است نحوه کارکرد Chrome را تغییر دهد.</translation>
diff --git a/chromium/chrome/app/resources/generated_resources_fi.xtb b/chromium/chrome/app/resources/generated_resources_fi.xtb
index 592ecec56c2..20459f55c0b 100644
--- a/chromium/chrome/app/resources/generated_resources_fi.xtb
+++ b/chromium/chrome/app/resources/generated_resources_fi.xtb
@@ -136,6 +136,8 @@
<translation id="1178581264944972037">Tauko</translation>
<translation id="1179803038870941185"><ph name="URL" /> haluaa MIDI-laitteidesi täyden hallintaoikeuden.</translation>
<translation id="1181037720776840403">Poista</translation>
+<translation id="11814323404622888">"&gt;
+ C-tyypin USB-laite (oikean sivun taaimmainen portti)</translation>
<translation id="1183083053288481515">Järjestelmänvalvojan myöntämä varmenne käytössä</translation>
<translation id="1183237619868651138">Kohdetta <ph name="EXTERNAL_CRX_FILE" /> ei voi asentaa paikalliseen välimuistiin.</translation>
<translation id="1185924365081634987">Voit myös kokeilla korjata verkkovirheen <ph name="GUEST_SIGNIN_LINK_START" />vierasselauksen<ph name="GUEST_SIGNIN_LINK_END" /> avulla.</translation>
@@ -329,6 +331,7 @@
<translation id="1468038450257740950">WebGL:ää ei tueta.</translation>
<translation id="1470719357688513792">Uudet evästeasetukset tulevat voimaan päivitettyäsi sivun.</translation>
<translation id="14720830734893704">Ota virtuaalinäppäimistön tuki käyttöön.</translation>
+<translation id="1474079335130556426">Salli Push-sovellusliittymän taustakäyttö. Sen avulla Chrome voi pysyä käynnissä, vaikka kaikki ikkunat olisi suljettu, ja käynnistyä samaan aikaan kuin käyttöjärjestelmä, mikäli tästä on hyötyä Push-sovellusliittymälle.</translation>
<translation id="1474339897586437869">Tiedostoa <ph name="FILENAME" /> ei lähetetty. Google Drivessasi ei ole riittävästi vapaata tallennustilaa.</translation>
<translation id="1476503841242751994">{COUNT,plural, =1{1 salasana}other{# salasanaa}}</translation>
<translation id="1476949146811612304">Valitse <ph name="BEGIN_LINK" />omniboxissa<ph name="END_LINK" /> käytettävä hakukone.</translation>
@@ -653,6 +656,7 @@
<translation id="1918141783557917887">&amp;Pienempi</translation>
<translation id="192144045824434199">Ota käyttöön selainkehyksen ulkopuolella avautuvat paneeli-ikkunat. Jos asetus ei ole käytössä, paneeli-ikkunoiden sijaan avataan ponnahdusikkuna. Paneelit ovat käytössä automaattisesti kehittäjien ja canary-versioissa.</translation>
<translation id="1921584744613111023"><ph name="DPI" /> dpi</translation>
+<translation id="1921986354447415460">Näppäimistö: turkki (F-tyyppi)</translation>
<translation id="1923786009776354244">Ota käyttöön WebRTC Stun -viestien alkuperäotsikoiden tuki.</translation>
<translation id="1926741348654461781">Ota offline-sivut käyttöön</translation>
<translation id="1929546189971853037">Lukea selaushistoriaasi kaikilla kirjautuneilla laitteilla</translation>
@@ -851,6 +855,7 @@
<translation id="2231990265377706070">Huutomerkki</translation>
<translation id="2232876851878324699">Tiedosto sisälsi yhden varmenteen, jota ei tuotu:</translation>
<translation id="2233502537820838181">&amp;Lisätietoja</translation>
+<translation id="2233587473672843170">Näytä suosittuja sivustoja Uusi välilehti -sivulla.</translation>
<translation id="223714078860837942">Jos sivu ei ole asettanut nimenomaista viittauskäytäntöä, tämän merkinnän asettaminen vähentää viittausotsikon tietojen määrää eri lähteistä tulleiden pyyntöjen kohdalla.</translation>
<translation id="2238379619048995541">Kellotaajuuden tilan tiedot</translation>
<translation id="2239921694246509981">Lisää valvottu käyttäjä</translation>
@@ -926,6 +931,7 @@ Luotuasi uuden valvotun käyttäjän voit hallinnoida käyttäjän asetuksia mil
<translation id="2326606747676847821">Siirry incognito-tilaan</translation>
<translation id="2326931316514688470">&amp;Lataa sovellus uudelleen</translation>
<translation id="2327492829706409234">Ota sovellus käyttöön</translation>
+<translation id="2329597144923131178">Kirjaudu ja käytä kirjanm., historiaa, salasan. ja muita asetuksia kaikissa laitteissasi.</translation>
<translation id="2332131598580221120">Näytä Web Storessa</translation>
<translation id="2332742915001411729">Palauta oletusarvo</translation>
<translation id="2335122562899522968">Tämä sivu asettaa evästeitä.</translation>
@@ -1315,6 +1321,7 @@ Tämän sivuston ei pitäisi olla estetty.</translation>
<translation id="2838379631617906747">Asennetaan</translation>
<translation id="2841837950101800123">Tarjoaja</translation>
<translation id="2843806747483486897">Muuta oletuksia...</translation>
+<translation id="2844169650293029770">C-tyypin USB-laite (vasemman sivun etummainen portti)</translation>
<translation id="2845382757467349449">Näytä kirjanmerkkipalkki aina</translation>
<translation id="2846816712032308263">Ottaa käyttöön välilehtien/ikkunoiden nopean sulkemisen. Suorittaa välilehden onunload js handler -tapahtuman graafisen käyttöliittymän ulkopuolella.</translation>
<translation id="284970761985428403"><ph name="ASCII_NAME" /> (<ph name="UNICODE_NAME" />)</translation>
@@ -1379,6 +1386,7 @@ Tämän sivuston ei pitäisi olla estetty.</translation>
<translation id="2923469375796950815">Poista uusi ZIP-purkaja käytöstä.</translation>
<translation id="2924296707677495905">Translitterointi (namaskaram → ನಮಸ್ಕಾರ)</translation>
<translation id="2925966894897775835">Taulukot</translation>
+<translation id="2927017729816812676">Välimuistin tallennustila</translation>
<translation id="2927657246008729253">Vaihda...</translation>
<translation id="2928526264833629376">Jatka Hangoutsiin</translation>
<translation id="2930644991850369934">Virhe ladattaessa palautusnäköistiedostoa. Verkkoyhteys on katkennut.</translation>
@@ -1719,6 +1727,7 @@ Tämän sivuston ei pitäisi olla estetty.</translation>
<translation id="3396331542604645348">Valittu tulostin ei ole käytettävissä tai oikein asennettu. Varmista, että tulostin on kunnossa, tai valitse toinen tulostin.</translation>
<translation id="3399597614303179694">Näppäimistö: makedonia</translation>
<translation id="340013220407300675">Hyökkääjät saattavat yrittää varastaa tietojasi (esimerkiksi salasanoja, viestejä tai luottokorttitietoja) kohteessa <ph name="BEGIN_BOLD" /><ph name="SITE" /><ph name="END_BOLD" />.</translation>
+<translation id="3401130144947259741">Jos tämä asetus on käytössä, jäljitystapahtumat viedään ETW:hen (Event Tracing for Windows), ja ne voidaan tallentaa muun muassa UIForETW:lla tai Xperfilla.</translation>
<translation id="340282674066624"><ph name="DOWNLOAD_RECEIVED" />, <ph name="TIME_LEFT" /></translation>
<translation id="3406605057700382950">Näytä kirjanmerkkipalkki</translation>
<translation id="3412265149091626468">Siirry valintaan</translation>
@@ -1878,6 +1887,7 @@ Tämän sivuston ei pitäisi olla estetty.</translation>
<translation id="3603385196401704894">ranska (Kanada)</translation>
<translation id="3603622770190368340">Hanki verkkovarmenne</translation>
<translation id="3605780360466892872">Dave</translation>
+<translation id="3606220979431771195">Turkki (tyyppi F)</translation>
<translation id="3608454375274108141">F10</translation>
<translation id="3608576286259426129">Käyttäjän kuvan esikatselu</translation>
<translation id="3609138628363401169">Palvelin ei tue TLS-edelleensiirto-laajennusta</translation>
@@ -2393,6 +2403,7 @@ Kaikkien käyttäjien täytyy kirjautua ulos jatkaakseen käyttöä.</translatio
<translation id="4321136812570927563">{NUM_DOWNLOAD,plural, =1{Jatka latausta}other{Jatka latauksia}}</translation>
<translation id="4321179778687042513">ctrl</translation>
<translation id="4322394346347055525">Sulje muut välilehdet</translation>
+<translation id="4325378361067528777">Salli Push-sovellusliittymän taustakäyttö.</translation>
<translation id="4326952458285403282">Poistaa käytöstä kokeellisen DirectWrite-kirjasimenpiirtojärjestelmän.</translation>
<translation id="4326999707196471878">Toolkit-Views-selainvalintaikkunat</translation>
<translation id="4330406155931244378">Ota käyttöön monikielinen oikoluku</translation>
@@ -2921,6 +2932,8 @@ Kaikkien käyttäjien täytyy kirjautua ulos jatkaakseen käyttöä.</translatio
<translation id="5148652308299789060">Poista 3D-rasterointi käytöstä</translation>
<translation id="5150254825601720210">Netscape-varmenteen SSL-palvelimen nimi</translation>
<translation id="5151034238407558331">Valitettavasti Google Paymentsin käyttö ostoksien tekemiseen tältä myyjältä edellyttää Yhdysvalloissa sijaitsevaa osoitetta. Jos asut Yhdysvalloissa, |muuta kotiosoitteesi Google Paymentsissa| tai maksa jollakin muulla tavalla kuin Google Paymentsilla.</translation>
+<translation id="5151639798712723370">"&gt;
+ C-tyypin USB-laite (oikean sivun etummainen portti)</translation>
<translation id="5152451685298621771">(Lapsen tili)</translation>
<translation id="5154108062446123722">Tulostimen <ph name="PRINTING_DESTINATION" /> lisäasetukset</translation>
<translation id="5154176924561037127">F8</translation>
@@ -3017,6 +3030,7 @@ Kaikkien käyttäjien täytyy kirjautua ulos jatkaakseen käyttöä.</translatio
<translation id="5271247532544265821">Ota käyttöön yksinkertaistettu/perinteinen kiina</translation>
<translation id="5271549068863921519">Tallenna salasana</translation>
<translation id="5273628206174272911">Kokeellinen historian navigointi vaakasuuntaisen ylivierityksen seurauksena.</translation>
+<translation id="5275795814002959418"><ph name="COUNT" /> tältä sivustolta</translation>
<translation id="5275973617553375938">Google Drivesta palautetut tiedostot</translation>
<translation id="527605719918376753">Mykistä välilehti</translation>
<translation id="527605982717517565">Salli aina JavaScript sivustossa <ph name="HOST" /></translation>
@@ -3063,6 +3077,7 @@ Kaikkien käyttäjien täytyy kirjautua ulos jatkaakseen käyttöä.</translatio
<translation id="5328285148748012771">Käytä kaikkia sovelluksiasi tästä kätevästä käynnistysohjelmasta. Pelaa pelejä, soita videopuheluita, kuuntele musiikkia, muokkaa dokumentteja tai hanki lisää sovelluksia Chrome Web Storesta.</translation>
<translation id="5329858601952122676">&amp;Poista</translation>
<translation id="5330145655348521461">Nämä tiedostot avattiin toisella työpöydällä. Näet tiedostot siirtymällä profiiliin <ph name="USER_NAME" /> (<ph name="MAIL_ADDRESS" />).</translation>
+<translation id="5331975486040154427">C-tyypin USB-laite (vasemman sivun taaimmainen portti)</translation>
<translation id="5332624210073556029">Aikavyöhyke:</translation>
<translation id="5334142896108694079">Ohjelmavälimuisti</translation>
<translation id="533433379391851622">Odotettiin versiota <ph name="EXPECTED_VERSION" />, mutta versio oli <ph name="NEW_ID" />.</translation>
@@ -3109,6 +3124,7 @@ Kaikkien käyttäjien täytyy kirjautua ulos jatkaakseen käyttöä.</translatio
<translation id="539755880180803351">Merkitsee verkkolomakkeisiin automaattisen täytön ennusteita paikkamerkkeinä.</translation>
<translation id="5397578532367286026">Hallinnoija (<ph name="MANAGER_EMAIL" />) voi tarkkailla tämän käyttäjän käyttö- ja historiatietoja osoitteessa chrome.com.</translation>
<translation id="5397794290049113714">Sinä</translation>
+<translation id="5398824043967640339"><ph name="COUNT" /> muilta sivustoilta</translation>
<translation id="5399158067281117682">PIN-koodit eivät täsmää!</translation>
<translation id="5400640815024374115">Trusted Platform Module (TPM) -siru on pois käytöstä tai puuttuu.</translation>
<translation id="5402367795255837559">Pistekirjoitus</translation>
@@ -3924,6 +3940,7 @@ suojaamattomia yhteyksiä.<ph name="PRODUCT_NAME" /></translation>
<translation id="6575251558004911012">Kysy aina, kun sivusto vaatii kameran käyttöoikeutta (suositus)</translation>
<translation id="6581162200855843583">Google Drive -linkki</translation>
<translation id="6583070985841601920">Kirjautunut käyttäjä: <ph name="USER_EMAIL_ADDRESS" />. Järjestelmänvalvoja on poistanut synkronoinnin käytöstä.</translation>
+<translation id="65832705307647870">Täytä Uusi välilehti -sivu suosituilla sivustoilla.</translation>
<translation id="6584878029876017575">Microsoftin elinikäinen allekirjoitus</translation>
<translation id="6585234750898046415">Valitse kirjautumisruudussa näytettävä tilisi kuvake.</translation>
<translation id="6585283250473596934">Aloitetaan julkinen istunto.</translation>
@@ -4263,6 +4280,7 @@ suojaamattomia yhteyksiä.<ph name="PRODUCT_NAME" /></translation>
<translation id="7092106376816104">Ponnahdusikkunapoikkeukset</translation>
<translation id="7093866338626856921">Vaihtaa tietoja isäntää <ph name="HOSTNAMES" /> käyttävien laitteiden kanssa.</translation>
<translation id="7096082900368329802">Haluatko löytää lisää mahtavia ominaisuuksia?</translation>
+<translation id="7098389117866926363">C-tyypin USB-laite (vasemmanpuoleinen takaportti)</translation>
<translation id="7100897339030255923"><ph name="COUNT" /> valittua kohdetta</translation>
<translation id="7106346894903675391">Osta lisää tallennustilaa...</translation>
<translation id="7108338896283013870">Piilota</translation>
@@ -5029,6 +5047,7 @@ Tallenna avaintiedosto suojattuun sijaintiin. Tarvitset sitä, jos haluat luoda
<translation id="8190193592390505034">Muodostetaan yhteyttä sivustoon <ph name="PROVIDER_NAME" /></translation>
<translation id="8191230140820435481">Hallita sovelluksia, laajennuksia ja teemoja</translation>
<translation id="8191453843330043793">V8-välityspalvelimen selvittäjä</translation>
+<translation id="8199491812735365610">Valitse tili, jolle kirjaudutaan</translation>
<translation id="8200772114523450471">Jatka</translation>
<translation id="8202160505685531999">Päivitä <ph name="DEVICE_TYPE" />-profiilisi kirjoittamalla salasanasi uudelleen.</translation>
<translation id="8204086856545141093">Käytäntö esti palvelinpyynnöt.</translation>
@@ -5159,6 +5178,7 @@ Tallenna avaintiedosto suojattuun sijaintiin. Tarvitset sitä, jos haluat luoda
<translation id="8381977081675353473">slovakia</translation>
<translation id="8382645631174981738"><ph name="EXTENSION_NAME" /> asennettiin etäyhteyden kautta</translation>
<translation id="8382913212082956454">Kopioi s&amp;ähköpostiosoite</translation>
+<translation id="8384113940676655504">Ottaa käyttöön Smart Lock -asetuksen, joka sallii Chromebookin löytää puhelimia Bluetooth Low Energy -yhteyttä käyttämällä. Kun tällä tavoin löydetty puhelin on Chromebookin lähellä, sitä voi käyttää Chromebookin lukituksen avaamiseen.</translation>
<translation id="8390029840652165810">Varmista, että verkkoyhteys toimii. Jos ongelma ei ratkea, päivitä kirjautumistunnukset kirjautumalla ulos ja kirjautumalla sitten uudelleen sisään.</translation>
<translation id="8390445751804042000">Ottaa käyttöön laitteen herättämisen tiettyjen verkkopakettien vastaanottamisen perusteella.</translation>
<translation id="8390449457866780408">Palvelin ei ole käytettävissä.</translation>
@@ -5245,6 +5265,7 @@ Tallenna avaintiedosto suojattuun sijaintiin. Tarvitset sitä, jos haluat luoda
<translation id="8509646642152301857">Oikeinkirjoituksen tarkistuksen sanakirjan lataus epäonnistui.</translation>
<translation id="8512476990829870887">Lopeta prosessi</translation>
<translation id="851263357009351303">Salli aina sivuston <ph name="HOST" /> näyttää kuvia</translation>
+<translation id="8513191386157529469"><ph name="CLIENT_NAME" /> jäljittää ja korjaa tämän selaimen virheitä.</translation>
<translation id="8513974249124254369">ChromeVox (äänipalaute) on käytössä. Poista se käytöstä painamalla Ctrl+Alt+Z.</translation>
<translation id="8515737884867295000">Varmennepohjainen todennus epäonnistui</translation>
<translation id="8518865679229538285">Tamilin syöttötapa (kirjoituskone)</translation>
@@ -5364,6 +5385,7 @@ Tallenna avaintiedosto suojattuun sijaintiin. Tarvitset sitä, jos haluat luoda
<translation id="8677039480012021122">Tyhjennä tiedot ja irrota</translation>
<translation id="8677212948402625567">Tiivistä kaikki...</translation>
<translation id="8678648549315280022">Hallinnoi latausasetuksia…</translation>
+<translation id="8680251145628383637">Kirjaudu sisään, niin voit käyttää kirjanmerkkejä, historiaa, salasanoja ja muita asetuksiasi kaikilla laitteilla. Sinut kirjataan lisäksi automaattisesti sisään käyttämiisi Googlen palveluihin.</translation>
<translation id="8680536109547170164"><ph name="QUERY" />, vastaus, <ph name="ANSWER" /></translation>
<translation id="8680787084697685621">Tilin kirjautumistiedot ovat vanhentuneet.</translation>
<translation id="8684255857039823328">Salasana tallennettiin. Hallinnoi salasanojasi millä tahansa laitteella osoitteessa <ph name="MANAGEMENT_LINK" />.</translation>
@@ -5419,6 +5441,7 @@ Tallenna avaintiedosto suojattuun sijaintiin. Tarvitset sitä, jos haluat luoda
<translation id="874420130893181774">Perinteinen pinyin-syöttötapa</translation>
<translation id="8744525654891896746">Valitse avatar tälle valvotulle käyttäjälle</translation>
<translation id="8744641000906923997">Romaji</translation>
+<translation id="8744959718895556609">Valitse tili <ph name="LINK_TEXT" />istasi.</translation>
<translation id="8749863574775030885">Käyttää tuntemattoman myyjän USB-laitteita.</translation>
<translation id="8754200782896249056">&lt;p&gt;Kun tuotetta <ph name="PRODUCT_NAME" /> käytetään tuetussa työpöytäympäristössä, järjestelmän välityspalvelinasetukset ovat käytössä. Joko järjestelmäsi ei ole tuettu tai järjestelmän määrityksiä käynnistettäessä tapahtui virhe.&lt;/p&gt;
@@ -5539,6 +5562,7 @@ Tallenna avaintiedosto suojattuun sijaintiin. Tarvitset sitä, jos haluat luoda
<translation id="8933960630081805351">Näytä Finderi&amp;ssä</translation>
<translation id="8934732568177537184">Jatka</translation>
<translation id="8938356204940892126">Luovutan</translation>
+<translation id="8938800817013097409">C-tyypin USB-laite (oikeanpuoleinen takaportti)</translation>
<translation id="8940081510938872932">Tietokoneen resurssit eivät riitä toimintoon tällä hetkellä. Yritä myöhemmin uudelleen.</translation>
<translation id="8941173171815156065">Kumoa käyttölupa <ph name="PERMISSION" /></translation>
<translation id="8941248009481596111">Sivustoon on muodostettu salattu yhteys.</translation>
diff --git a/chromium/chrome/app/resources/generated_resources_fil.xtb b/chromium/chrome/app/resources/generated_resources_fil.xtb
index de00597580b..056f13c4f9c 100644
--- a/chromium/chrome/app/resources/generated_resources_fil.xtb
+++ b/chromium/chrome/app/resources/generated_resources_fil.xtb
@@ -136,6 +136,8 @@
<translation id="1178581264944972037">I-pause</translation>
<translation id="1179803038870941185">Gusto ng <ph name="URL" /> na magkaroon ng buong kontrol sa iyong mga MIDI device.</translation>
<translation id="1181037720776840403">Alisin</translation>
+<translation id="11814323404622888">"&gt;
+ USB-C device (port sa kanang bahagi sa likod)</translation>
<translation id="1183083053288481515">Gumagamit ng certificate na ibinigay ng administrator</translation>
<translation id="1183237619868651138">Hindi ma-install ang <ph name="EXTERNAL_CRX_FILE" /> sa lokal na cache.</translation>
<translation id="1185924365081634987">Maaari mo ring subukang <ph name="GUEST_SIGNIN_LINK_START" />mag-browse bilang bisita<ph name="GUEST_SIGNIN_LINK_END" /> upang ayusin ang error sa network na ito.</translation>
@@ -331,6 +333,7 @@
<translation id="1468038450257740950">Hindi sinusuportahan ang WebGL.</translation>
<translation id="1470719357688513792">Magkakabisa ang mga bagong setting ng cookie pagkatapos i-reload ang pahina.</translation>
<translation id="14720830734893704">I-enable ang suporta sa virtual keyboard.</translation>
+<translation id="1474079335130556426">I-enable ang background mode para sa Push API. Binibigyang-daan nito ang Chrome na patuloy na gumana pagkatapos maisara ang huling window, at upang ilunsad sa pagsisimula ng OS, kung kailangan ito ng Push API.</translation>
<translation id="1474339897586437869">Hindi na-upload ang "<ph name="FILENAME" />." Walang sapat na bakanteng espasyo sa iyong Google Drive.</translation>
<translation id="1476503841242751994">{COUNT,plural, =1{1 password}one{# password}other{# na password}}</translation>
<translation id="1476949146811612304">Itakda kung aling search engine ang gagamitin kapag naghahanap mula sa <ph name="BEGIN_LINK" />omnibox<ph name="END_LINK" />.</translation>
@@ -658,6 +661,7 @@
<translation id="1918141783557917887">&amp;Mas maliit</translation>
<translation id="192144045824434199">Paganahin ang mga window ng Panel na bumubukas sa labas ng frame ng browser. Ang mga pagtatangkang magbukas ng isang Panel ay magbubukas sa halip ng popup kung hindi pagaganahin. Palaging pinapagana ang mga panel sa dev at mga canary channel.</translation>
<translation id="1921584744613111023"><ph name="DPI" /> dpi</translation>
+<translation id="1921986354447415460">Turkish-F na keyboard</translation>
<translation id="1923786009776354244">I-enable ang suporta para sa origin header ng Stun ng WebRTC.</translation>
<translation id="1926741348654461781">I-enable ang mga offline na page</translation>
<translation id="1929546189971853037">Basahin ang iyong history ng pagba-browse sa lahat ng iyong naka-sign in na device</translation>
@@ -858,6 +862,7 @@
<translation id="2231990265377706070">Tandang padamdam</translation>
<translation id="2232876851878324699">Naglalaman ang file ng isang certificate, na hindi na-import:</translation>
<translation id="2233502537820838181">&amp;Higit pang impormasyon</translation>
+<translation id="2233587473672843170">Ipakita ang mga sikat na site sa page ng Bagong Tab</translation>
<translation id="223714078860837942">Kung hindi nagtakda ang isang page ng malinaw na patakaran sa referrer, mababawasan ang impormasyon sa header ng 'referer' para sa mga cross-origin na kahilingan kapag itinakda ang flag na ito.</translation>
<translation id="2238379619048995541">Data ng Estado ng Dalas</translation>
<translation id="2239921694246509981">Magdagdag ng pinapangasiwaang tao</translation>
@@ -933,6 +938,7 @@ Pagkatapos mong gumawa ng bagong pinangangasiwaang user, maaari mong pamahalaan
<translation id="2326606747676847821">Maging Incognito</translation>
<translation id="2326931316514688470">I-&amp;reload ang app</translation>
<translation id="2327492829706409234">Paganahin ang app</translation>
+<translation id="2329597144923131178">Mag-sign in upang makuha ang iyong mga bookmark, history, password at ibang mga setting sa lahat ng iyong device.</translation>
<translation id="2332131598580221120">Tingnan sa store</translation>
<translation id="2332742915001411729">I-reset sa default</translation>
<translation id="2335122562899522968">Nagtatakda ang pahinang ito ng cookies.</translation>
@@ -1321,6 +1327,7 @@ Sa palagay ko, hindi dapat i-block ang site na ito!</translation>
<translation id="2838379631617906747">Nag-i-install</translation>
<translation id="2841837950101800123">Provider</translation>
<translation id="2843806747483486897">Baguhin ang default...</translation>
+<translation id="2844169650293029770">USB-C device (port sa kaliwang bahagi sa harap)</translation>
<translation id="2845382757467349449">Palaging Ipakita ang Bookmarks Bar</translation>
<translation id="2846816712032308263">Ini-enable ang mabilis na pagsasara ng tab/window - pinapatakbo ang onunload js handler ng isang tab nang independiyente sa GUI.</translation>
<translation id="284970761985428403"><ph name="ASCII_NAME" /> (<ph name="UNICODE_NAME" />)</translation>
@@ -1385,6 +1392,7 @@ Sa palagay ko, hindi dapat i-block ang site na ito!</translation>
<translation id="2923469375796950815">I-disable ang bagong ZIP unpacker.</translation>
<translation id="2924296707677495905">Transliteration (namaskaram → ನಮಸ್ಕಾರ)</translation>
<translation id="2925966894897775835">Sheets</translation>
+<translation id="2927017729816812676">Storage ng Cache</translation>
<translation id="2927657246008729253">Baguhin...</translation>
<translation id="2928526264833629376">Magpatuloy sa Hangouts</translation>
<translation id="2930644991850369934">Nagkaproblema habang dina-download ang larawan ng pagbawi. Nawala ang koneksyon sa network.</translation>
@@ -1727,6 +1735,7 @@ Sa palagay ko, hindi dapat i-block ang site na ito!</translation>
<translation id="3396331542604645348">Ang napiling printer ay hindi available o hindi naka-install nang tama. Tingnan ang iyong printer o subukang pumili ng isa pang printer.</translation>
<translation id="3399597614303179694">Macedonian keyboard</translation>
<translation id="340013220407300675">Maaaring sinusubukan ng mga masasamang-loob na nakawin ang iyong impormasyon mula sa <ph name="BEGIN_BOLD" /><ph name="SITE" /><ph name="END_BOLD" /> (halimbawa, mga password, mensahe o credit card).</translation>
+<translation id="3401130144947259741">Kung naka-enable, ii-export ang mga kaganapan ng pagsubaybay sa Pagsubaybay sa Kaganapan para sa Windows (ETW) at pagkatapos ay maaaring i-capture sa pamamagitan ng mga tool gaya ng UIForETW o Xperf.</translation>
<translation id="340282674066624"><ph name="DOWNLOAD_RECEIVED" />, <ph name="TIME_LEFT" /></translation>
<translation id="3406605057700382950">&amp;Ipakita ang bookmarks bar</translation>
<translation id="3412265149091626468">Jump to Selection</translation>
@@ -1886,6 +1895,7 @@ Sa palagay ko, hindi dapat i-block ang site na ito!</translation>
<translation id="3603385196401704894">Canadian French</translation>
<translation id="3603622770190368340">Kunin ang certificate ng network</translation>
<translation id="3605780360466892872">Bossing</translation>
+<translation id="3606220979431771195">Turkish-F</translation>
<translation id="3608454375274108141">F10</translation>
<translation id="3608576286259426129">Preview ng larawan ng user</translation>
<translation id="3609138628363401169">Hindi sinusuportahan ng server ang extension ng muling pagsasaayos ng TLS.</translation>
@@ -2407,6 +2417,7 @@ Dapat mag-sign out ang lahat ng user upang magpatuloy.</translation>
<translation id="4321136812570927563">{NUM_DOWNLOAD,plural, =1{Ipagpatuloy ang pag-download}one{Ipagpatuloy ang mga pag-download}other{Ipagpatuloy ang mga pag-download}}</translation>
<translation id="4321179778687042513">ctrl</translation>
<translation id="4322394346347055525">Isara ang Ibang Mga Tab</translation>
+<translation id="4325378361067528777">I-enable ang Push API background mode</translation>
<translation id="4326952458285403282">Dini-disable ang paggamit ng pang-eksperimentong system sa pagre-render ng font ng DirectWrite.</translation>
<translation id="4326999707196471878">Mga Dialog ng Browser sa Toolkit-Views.</translation>
<translation id="4330406155931244378">I-enable ang Multilingual na Spellchecker</translation>
@@ -2948,6 +2959,8 @@ Pumindot ng anumang key upang magpatuloy sa pagtuklas.</translation>
<translation id="5148652308299789060">Paganahin ang 3D software rasterizer</translation>
<translation id="5150254825601720210">Pangalan ng Server ng Netscape Certificate SSL</translation>
<translation id="5151034238407558331">Sa kasamaang palad, ang Google Payments ay maaari lang gamitin ng mga mamimiling may address sa US sa merchant na ito. Kung nakatira ka sa US, mangyaring |palitan ang address ng iyong bahay sa Google Payments| o magbayad nang hindi gumagamit ng Google Payments.</translation>
+<translation id="5151639798712723370">"&gt;
+ USB-C device (port sa kanang bahagi sa harap)</translation>
<translation id="5152451685298621771">(Account para sa mga bata)</translation>
<translation id="5154108062446123722">Mga advanced na setting para sa <ph name="PRINTING_DESTINATION" /></translation>
<translation id="5154176924561037127">F8</translation>
@@ -3046,6 +3059,7 @@ Pumindot ng anumang key upang magpatuloy sa pagtuklas.</translation>
<translation id="5271247532544265821">I-toggle ang Simplified/Traditional Chinese mode</translation>
<translation id="5271549068863921519">I-save ang password</translation>
<translation id="5273628206174272911">Pang-eksperimentong pag-navigate sa kasaysayan bilang tugon sa horizontal na overscroll.</translation>
+<translation id="5275795814002959418"><ph name="COUNT" /> mula sa site na ito</translation>
<translation id="5275973617553375938">Mga nabawing file mula sa Google Drive</translation>
<translation id="527605719918376753">I-mute ang tab</translation>
<translation id="527605982717517565">Palaging hayaan ang JavaScript sa <ph name="HOST" /></translation>
@@ -3092,6 +3106,7 @@ Pumindot ng anumang key upang magpatuloy sa pagtuklas.</translation>
<translation id="5328285148748012771">I-access ang lahat ng iyong apps mula sa kapaki-pakinabang na launcher na ito. Maglaro, mag-video chat, makinig sa musika, mag-edit ng mga dokumento, o kumuha ng higit pang apps sa Chrome Web Store.</translation>
<translation id="5329858601952122676">&amp;Tanggalin</translation>
<translation id="5330145655348521461">Ang mga file na ito na binuksan sa ibang desktop. Ilipat sa <ph name="USER_NAME" /> (<ph name="MAIL_ADDRESS" />) upang tingnan ito.</translation>
+<translation id="5331975486040154427">USB-C device (port sa kaliwang bahagi sa likod)</translation>
<translation id="5332624210073556029">Time zone:</translation>
<translation id="5334142896108694079">Cache ng Script</translation>
<translation id="533433379391851622">"<ph name="EXPECTED_VERSION" />" ang inaasahang bersyon, ngunit "<ph name="NEW_ID" />" ang bersyon.</translation>
@@ -3138,6 +3153,7 @@ Pumindot ng anumang key upang magpatuloy sa pagtuklas.</translation>
<translation id="539755880180803351">Ina-annotate ang mga web form na may mga hula sa uri ng field ng Autofill bilang teksto na placeholder.</translation>
<translation id="5397578532367286026">Ang paggamit at kasaysayan ng user na ito ay maaaring suriin ng manager (<ph name="MANAGER_EMAIL" />) sa chrome.com.</translation>
<translation id="5397794290049113714">Ikaw</translation>
+<translation id="5398824043967640339"><ph name="COUNT" /> mula sa iba pang mga site</translation>
<translation id="5399158067281117682">Hindi nagtutugma ang mga PIN!</translation>
<translation id="5400640815024374115">Hindi pinagana o wala ang Trusted Platform Module (TPM) chip.</translation>
<translation id="5402367795255837559">Braille</translation>
@@ -3963,6 +3979,7 @@ Maaaring hindi available ang ilang tampok. Mangyaring suriin na umiiral ang pro
<translation id="6575251558004911012">Magtanong kapag nangangailangan ang isang site ng access sa iyong camera (inirerekomenda)</translation>
<translation id="6581162200855843583">link ng Google Drive</translation>
<translation id="6583070985841601920">Naka-sign in bilang <ph name="USER_EMAIL_ADDRESS" />. Hindi pinagana ng iyong administrator ang pag-sync.</translation>
+<translation id="65832705307647870">Paunang lagyan ng mga sikat na site ang page ng Bagong Tab.</translation>
<translation id="6584878029876017575">Microsoft Lifetime Signing</translation>
<translation id="6585234750898046415">Pumili ng isang larawan para i-display sa iyong account sa screen ng pag-sign-in.</translation>
<translation id="6585283250473596934">Pumapasok sa pampublikong session.</translation>
@@ -4310,6 +4327,7 @@ Maaaring hindi available ang ilang tampok. Mangyaring suriin na umiiral ang pro
<translation id="7092106376816104">Mga pagbubukod ng pop-up</translation>
<translation id="7093866338626856921">Makipagpalit ng data sa mga device na pinangalanang: <ph name="HOSTNAMES" /></translation>
<translation id="7096082900368329802">Gustong makatuklas ng higit pang mga kahanga-hangang feature?</translation>
+<translation id="7098389117866926363">USB-C device (kaliwang port sa likod)</translation>
<translation id="7100897339030255923"><ph name="COUNT" /> (na) item ang pinili</translation>
<translation id="7106346894903675391">Bumili ng higit pang storage...</translation>
<translation id="7108338896283013870">Itago</translation>
@@ -5085,6 +5103,7 @@ Kinakalkula ang natitirang oras</translation>
<translation id="8190193592390505034">Kumukonekta sa <ph name="PROVIDER_NAME" /></translation>
<translation id="8191230140820435481">Pamahalaan ang iyong apps, mga extension, at tema</translation>
<translation id="8191453843330043793">Panglutas ng Proxy ng V8</translation>
+<translation id="8199491812735365610">Pumili ng account upang mag-login</translation>
<translation id="8200772114523450471">Resume</translation>
<translation id="8202160505685531999">Mangyaring ilagay muli ang iyong password upang i-update ang iyong profile sa <ph name="DEVICE_TYPE" />.</translation>
<translation id="8204086856545141093">Na-block ng isang patakaran ang mga kahilingan sa server.</translation>
@@ -5217,6 +5236,7 @@ Kinakalkula ang oras hanggang sa mapuno</translation>
<translation id="8381977081675353473">Slovakian</translation>
<translation id="8382645631174981738">Naka-install nang malayuan ang <ph name="EXTENSION_NAME" /></translation>
<translation id="8382913212082956454">Komopya &amp;email address</translation>
+<translation id="8384113940676655504">Nag-e-enable ng isang setting ng Smart Lock na nagbibigay-daan sa Chromebook na tumuklas ng mga telepono sa pamamagitan ng Bluetooth Low Energy upang ma-unlock ang Chromebook kapag malapit dito ang telepono.</translation>
<translation id="8390029840652165810">Pakitiyak na gumagana ang koneksyon ng iyong network at kung magpapatuloy ang problema, mangyaring mag-sign out at mag-sign in muli upang i-refresh ang iyong mga kredensyal.</translation>
<translation id="8390445751804042000">Ine-enable na mabuksan ang device batay sa pagkatanggap ng ilang packet ng network.</translation>
<translation id="8390449457866780408">Hindi available ang server.</translation>
@@ -5304,6 +5324,7 @@ Kinakalkula ang oras hanggang sa mapuno</translation>
<translation id="8509646642152301857">Nabigo ang pag-download ng diksyunaryo ng pang-check ng pagbabaybay.</translation>
<translation id="8512476990829870887">Tapusin ang Proseso</translation>
<translation id="851263357009351303">Palaging hayaan ang <ph name="HOST" /> na magpakita ng mga larawan</translation>
+<translation id="8513191386157529469">Dine-debug ng "<ph name="CLIENT_NAME" />" ang browser na ito.</translation>
<translation id="8513974249124254369">Naka-enable ang ChromeVox (pasalitang feedback). Pindutin ang Ctrl+Alt+Z upang i-disable.</translation>
<translation id="8515737884867295000">Nabigo ang pagpapatotoo batay sa certificate</translation>
<translation id="8518865679229538285">Pamamaraan ng pag-input na Tamil (Typewriter)</translation>
@@ -5423,6 +5444,7 @@ Kinakalkula ang oras hanggang sa mapuno</translation>
<translation id="8677039480012021122">I-clear ang data at idiskonekta</translation>
<translation id="8677212948402625567">Tiklupin lahat...</translation>
<translation id="8678648549315280022">Pamahalaan ang mga setting ng pagda-download...</translation>
+<translation id="8680251145628383637">Mag-sign in upang makuha ang iyong mga bookmark, history, password at iba pang mga setting sa lahat ng iyong device. Awtomatiko ka ring masa-sign in sa iyong mga serbisyo ng Google.</translation>
<translation id="8680536109547170164"><ph name="QUERY" />, sagot, <ph name="ANSWER" /></translation>
<translation id="8680787084697685621">Wala sa panahon ang mga detalye sa pag-sign-in sa account.</translation>
<translation id="8684255857039823328">Na-save na ang password. I-access ang iyong mga password mula sa anumang device sa <ph name="MANAGEMENT_LINK" />.</translation>
@@ -5478,6 +5500,7 @@ Kinakalkula ang oras hanggang sa mapuno</translation>
<translation id="874420130893181774">Tradisyonal na Pinyin na paraan ng pag-input</translation>
<translation id="8744525654891896746">Pumili ng isang avatar para sa pinangangasiwaang user na ito.</translation>
<translation id="8744641000906923997">Romaji</translation>
+<translation id="8744959718895556609">Pumili ng account mula sa iyong <ph name="LINK_TEXT" /></translation>
<translation id="8749863574775030885">Mag-access ng mga USB device mula sa isang hindi kilalang vendor</translation>
<translation id="8754200782896249056">&lt;p&gt;Kapag pinapatakbo ang <ph name="PRODUCT_NAME" /> sa isang sinusuportahang desktop environment, gagamitin ang mga setting ng proxy ng system. Gayunpaman, hindi sinusuportahan ang iyong system o nagkaroon ng problema sa paglulunsad ng configuration ng iyong system.&lt;/p&gt;
@@ -5599,6 +5622,7 @@ Kinakalkula ang oras hanggang sa mapuno</translation>
<translation id="8933960630081805351">&amp;Show in Finder</translation>
<translation id="8934732568177537184">Magpatuloy</translation>
<translation id="8938356204940892126">Suko na ako</translation>
+<translation id="8938800817013097409">USB-C device (kanang port sa likod)</translation>
<translation id="8940081510938872932">Maraming ginagawa ang iyong computer sa ngayon. Subukang muli sa ibang pagkakataon.</translation>
<translation id="8941173171815156065">Bawiin ang pahintulot na '<ph name="PERMISSION" />'</translation>
<translation id="8941248009481596111">Pribado ang iyong koneksyon sa site na ito.</translation>
diff --git a/chromium/chrome/app/resources/generated_resources_fr.xtb b/chromium/chrome/app/resources/generated_resources_fr.xtb
index b8ce69c975c..e0e3e7faf36 100644
--- a/chromium/chrome/app/resources/generated_resources_fr.xtb
+++ b/chromium/chrome/app/resources/generated_resources_fr.xtb
@@ -136,6 +136,8 @@
<translation id="1178581264944972037">Suspendre</translation>
<translation id="1179803038870941185">Une demande de contrôle total de vos appareils MIDI a été envoyée via <ph name="URL" />.</translation>
<translation id="1181037720776840403">Supprimer</translation>
+<translation id="11814323404622888">"&gt;
+ Appareil USB de type C (port situé sur la droite de l'appareil, à l'arrière)</translation>
<translation id="1183083053288481515">Utilisation d'un certificat fourni par l'administrateur</translation>
<translation id="1183237619868651138">Impossible d'installer le fichier <ph name="EXTERNAL_CRX_FILE" /> dans le cache local.</translation>
<translation id="1185924365081634987">Vous pouvez également essayer de <ph name="GUEST_SIGNIN_LINK_START" />naviguer en tant qu'invité<ph name="GUEST_SIGNIN_LINK_END" /> pour corriger cette erreur réseau.</translation>
@@ -330,6 +332,7 @@
<translation id="1468038450257740950">WebGL n'est pas compatible.</translation>
<translation id="1470719357688513792">Les nouveaux paramètres des cookies seront appliqués quand vous aurez actualisé la page.</translation>
<translation id="14720830734893704">Activer la compatibilité avec le clavier virtuel</translation>
+<translation id="1474079335130556426">Active le mode arrière-plan pour l'API Push. Chrome continue de s'exécuter après la fermeture de la dernière fenêtre et se lance au démarrage du système d'exploitation (en fonction des besoins de l'API Push).</translation>
<translation id="1474339897586437869">Le fichier "<ph name="FILENAME" />" n'a pas été importé, car l'espace disponible sur Google Drive est insuffisant.</translation>
<translation id="1476503841242751994">{COUNT,plural, =1{1 mot de passe}one{# mot de passe}other{# mots de passe}}</translation>
<translation id="1476949146811612304">Définir le moteur de recherche à utiliser pour les recherches effectuées depuis l'<ph name="BEGIN_LINK" />Omnibox<ph name="END_LINK" /> (barre d'adresse et de recherche)</translation>
@@ -657,6 +660,7 @@
<translation id="1918141783557917887">Plu&amp;s petit</translation>
<translation id="192144045824434199">Activer les fenêtres de type panneau qui s'ouvrent en dehors du cadre du navigateur. Si cette fonctionnalité n'est pas activée, les tentatives d'ouverture d'un panneau entraîneront l'ouverture d'une fenêtre pop-up. Les panneaux sont toujours activés dans la version Canary et dans les versions en développement.</translation>
<translation id="1921584744613111023"><ph name="DPI" /> PPP</translation>
+<translation id="1921986354447415460">Clavier turc en F</translation>
<translation id="1923786009776354244">Activer l'en-tête d'origine des messages STUN WebRTC</translation>
<translation id="1926741348654461781">Activer les pages hors connexion</translation>
<translation id="1929546189971853037">Consulter votre historique de navigation sur tous les appareils sur lesquels vous êtes connecté à votre compte</translation>
@@ -855,6 +859,7 @@
<translation id="2231990265377706070">Point d'exclamation</translation>
<translation id="2232876851878324699">Le fichier contenait un certificat, qui n'a pas été importé :</translation>
<translation id="2233502537820838181">Plus d'informations</translation>
+<translation id="2233587473672843170">Afficher des sites populaires sur la page "Nouvel onglet"</translation>
<translation id="223714078860837942">Si une page ne définit aucune stratégie explicite en matière d'URL de provenance, le fait de définir cet indicateur réduit la quantité d'informations dans l'en-tête "referer" des requêtes multi-domaines.</translation>
<translation id="2238379619048995541">Données sur l'état de fréquence</translation>
<translation id="2239921694246509981">Ajouter une personne supervisée</translation>
@@ -933,6 +938,7 @@ Sinon, vous devrez en obtenir un nouveau d'un autre émetteur.</translation>
<translation id="2326606747676847821">Navigation privée</translation>
<translation id="2326931316514688470">&amp;Actualiser l'application</translation>
<translation id="2327492829706409234">Activer l'application</translation>
+<translation id="2329597144923131178">Connectez-vous pour synchroniser favoris, historique, mots de passe et autres sur vos appareils. </translation>
<translation id="2332131598580221120">Afficher dans la boutique</translation>
<translation id="2332742915001411729">Rétablir le niveau de zoom par défaut</translation>
<translation id="2335122562899522968">Cette page place des cookies.</translation>
@@ -1321,6 +1327,7 @@ Je ne pense pas que ce site devrait être bloqué.</translation>
<translation id="2838379631617906747">Installation en cours…</translation>
<translation id="2841837950101800123">Fournisseur</translation>
<translation id="2843806747483486897">Modifier l'action par défaut…</translation>
+<translation id="2844169650293029770">Appareil USB de type C (port situé sur la gauche de l'appareil, à l'avant)</translation>
<translation id="2845382757467349449">Toujours afficher la barre de favoris</translation>
<translation id="2846816712032308263">Active la fermeture rapide des onglets et des fenêtres. Exécute le gestionnaire onUnload JS d'un onglet indépendamment de l'IUG.</translation>
<translation id="284970761985428403"><ph name="ASCII_NAME" /> (<ph name="UNICODE_NAME" />)</translation>
@@ -1385,6 +1392,7 @@ Je ne pense pas que ce site devrait être bloqué.</translation>
<translation id="2923469375796950815">Désactiver le nouvel outil de décompression ZIP</translation>
<translation id="2924296707677495905">Translittération (namaskaram → ನಮಸ್ಕಾರ)</translation>
<translation id="2925966894897775835">Feuilles de calcul</translation>
+<translation id="2927017729816812676">Espace de stockage du cache</translation>
<translation id="2927657246008729253">Changer...</translation>
<translation id="2928526264833629376">Continuer vers Hangouts</translation>
<translation id="2930644991850369934">Un problème est survenu lors du téléchargement de l'image de récupération. La connexion réseau a été perdue.</translation>
@@ -1727,6 +1735,7 @@ Je ne pense pas que ce site devrait être bloqué.</translation>
<translation id="3396331542604645348">L'imprimante sélectionnée n'est pas disponible ou n'est pas installée correctement. Veuillez vérifier votre imprimante ou en sélectionner une autre.</translation>
<translation id="3399597614303179694">Clavier macédonien</translation>
<translation id="340013220407300675">Il se peut que des pirates soient en train d'essayer de dérober vos informations sur le site <ph name="BEGIN_BOLD" /><ph name="SITE" /><ph name="END_BOLD" /> (par exemple, des mots de passe, des messages ou des informations sur vos cartes de paiement).</translation>
+<translation id="3401130144947259741">Si cette option est activée, les événements de suivi sont exportés vers Event Tracing for Windows (ETW). Ils peuvent ensuite être capturés par des outils comme UIForETW ou Xperf.</translation>
<translation id="340282674066624"><ph name="DOWNLOAD_RECEIVED" />, <ph name="TIME_LEFT" /></translation>
<translation id="3406605057700382950">&amp;Afficher la barre de favoris</translation>
<translation id="3412265149091626468">Aller à la sélection</translation>
@@ -1886,6 +1895,7 @@ Je ne pense pas que ce site devrait être bloqué.</translation>
<translation id="3603385196401704894">Français canadien</translation>
<translation id="3603622770190368340">Obtenir un certificat réseau</translation>
<translation id="3605780360466892872">Businessman</translation>
+<translation id="3606220979431771195">Turc en F</translation>
<translation id="3608454375274108141">F10</translation>
<translation id="3608576286259426129">Aperçu de l'image de l'utilisateur</translation>
<translation id="3609138628363401169">Le serveur ne prend pas en charge l'extension de renégociation TLS.</translation>
@@ -2405,6 +2415,7 @@ Tous les utilisateurs doivent se déconnecter pour continuer.</translation>
<translation id="4321136812570927563">{NUM_DOWNLOAD,plural, =1{Continuer le téléchargement}one{Continuer le téléchargement}other{Continuer les téléchargements}}</translation>
<translation id="4321179778687042513">ctrl</translation>
<translation id="4322394346347055525">Fermer les autres onglets</translation>
+<translation id="4325378361067528777">Activer le mode arrière-plan pour l'API Push</translation>
<translation id="4326952458285403282">Désactiver l'utilisation du système expérimental DirectWrite de rendu des polices.</translation>
<translation id="4326999707196471878">Boîtes de dialogue relatives aux navigateurs basés sur un affichage de kit d'outils</translation>
<translation id="4330406155931244378">Activer le correcteur orthographique multilingue</translation>
@@ -2941,6 +2952,8 @@ Pour poursuivre l'exploration, appuyez sur n'importe quelle touche.</translation
<translation id="5148652308299789060">Désactiver le rastériseur logiciel 3D</translation>
<translation id="5150254825601720210">Nom du serveur SSL du certificat Netscape</translation>
<translation id="5151034238407558331">Malheureusement, vous ne pouvez utiliser Google Payments chez ce marchand que si vous disposez d'une adresse aux États-Unis. Si vous résidez bien aux États-Unis, veuillez |modifier votre adresse personnelle dans Google Payments| ou payer sans utiliser Google Payments.</translation>
+<translation id="5151639798712723370">"&gt;
+ Appareil USB de type C (port situé sur la droite de l'appareil, à l'avant)</translation>
<translation id="5152451685298621771">(Compte pour enfants)</translation>
<translation id="5154108062446123722">Paramètres avancés pour <ph name="PRINTING_DESTINATION" /></translation>
<translation id="5154176924561037127">F8</translation>
@@ -3039,6 +3052,7 @@ Pour poursuivre l'exploration, appuyez sur n'importe quelle touche.</translation
<translation id="5271247532544265821">Basculer en mode chinois simplifié/traditionnel</translation>
<translation id="5271549068863921519">Enregistrer le mot de passe</translation>
<translation id="5273628206174272911">Fonctionnalité expérimentale de défilement tactile horizontal dans l'historique</translation>
+<translation id="5275795814002959418"><ph name="COUNT" /> de ce site</translation>
<translation id="5275973617553375938">Fichiers récupérés sur Google Drive</translation>
<translation id="527605719918376753">Couper le son de l'onglet</translation>
<translation id="527605982717517565">Toujours exécuter JavaScript sur <ph name="HOST" /></translation>
@@ -3085,6 +3099,7 @@ Pour poursuivre l'exploration, appuyez sur n'importe quelle touche.</translation
<translation id="5328285148748012771">Accédez à toutes vos applications depuis ce lanceur bien pratique. Jouez, participez à des chats vidéo, écoutez de la musique, modifiez des documents ou téléchargez d'autres applications sur le Chrome Web Store.</translation>
<translation id="5329858601952122676">&amp;Supprimer</translation>
<translation id="5330145655348521461">Ces fichiers sont ouverts sur un autre bureau. Utilisez le compte de <ph name="USER_NAME" /> (<ph name="MAIL_ADDRESS" />) pour les afficher.</translation>
+<translation id="5331975486040154427">Appareil USB de type C (port situé sur la gauche de l'appareil, à l'arrière)</translation>
<translation id="5332624210073556029">Fuseau horaire :</translation>
<translation id="5334142896108694079">Cache des scripts</translation>
<translation id="533433379391851622">Version <ph name="NEW_ID" /> reçue au lieu de la version <ph name="EXPECTED_VERSION" /> attendue.</translation>
@@ -3131,6 +3146,7 @@ Pour poursuivre l'exploration, appuyez sur n'importe quelle touche.</translation
<translation id="539755880180803351">Annote les formulaires Web avec des prédictions de saisie automatique sous forme de texte d'espace réservé dans les champs.</translation>
<translation id="5397578532367286026">Le gestionnaire (<ph name="MANAGER_EMAIL" />) peut consulter les actions effectuées cet utilisateur, ainsi que son historique, sur chrome.com.</translation>
<translation id="5397794290049113714">Vous</translation>
+<translation id="5398824043967640339"><ph name="COUNT" /> d'autres sites</translation>
<translation id="5399158067281117682">Les codes PIN sont différents !</translation>
<translation id="5400640815024374115">La puce du module de plate-forme sécurisée (TPM) est désactivée ou inexistante.</translation>
<translation id="5402367795255837559">Braille</translation>
@@ -3962,6 +3978,7 @@ Il est possible que certaines fonctionnalités ne soient pas disponibles. Veuill
<translation id="6575251558004911012">Me demander lorsqu'un site demande l'accès à ma caméra (recommandé)</translation>
<translation id="6581162200855843583">Lien Google Drive</translation>
<translation id="6583070985841601920">Connecté avec l'adresse <ph name="USER_EMAIL_ADDRESS" />. Votre administrateur a désactivé la synchronisation.</translation>
+<translation id="65832705307647870">Préremplit la page "Nouvel onglet" avec des sites populaires.</translation>
<translation id="6584878029876017575">Signature permanente Microsoft</translation>
<translation id="6585234750898046415">Choisissez une image à associer à votre compte. Celle-ci s'affichera sur l'écran de connexion.</translation>
<translation id="6585283250473596934">Ouverture d'une session publique en cours…</translation>
@@ -4305,6 +4322,7 @@ Il est possible que certaines fonctionnalités ne soient pas disponibles. Veuill
<translation id="7092106376816104">Exceptions liées aux fenêtres pop-up</translation>
<translation id="7093866338626856921">Échanger des données avec les appareils suivants : "<ph name="HOSTNAMES" />"</translation>
<translation id="7096082900368329802">Vous avez envie de découvrir d'autres fonctionnalités impressionnantes ?</translation>
+<translation id="7098389117866926363">Appareil USB de type C (port situé sur l'arrière de l'appareil, à gauche)</translation>
<translation id="7100897339030255923"><ph name="COUNT" /> éléments sélectionnés</translation>
<translation id="7106346894903675391">Acheter de l'espace de stockage supplémentaire…</translation>
<translation id="7108338896283013870">Masquer</translation>
@@ -5081,6 +5099,7 @@ Calcul de la durée restante</translation>
<translation id="8190193592390505034">Connexion à <ph name="PROVIDER_NAME" /></translation>
<translation id="8191230140820435481">Gérer vos applications, vos extensions et vos thèmes</translation>
<translation id="8191453843330043793">Résolution de proxy V8</translation>
+<translation id="8199491812735365610">Sélectionner le compte auquel se connecter</translation>
<translation id="8200772114523450471">Reprendre</translation>
<translation id="8202160505685531999">Saisissez à nouveau votre mot de passe pour modifier votre profil <ph name="DEVICE_TYPE" /></translation>
<translation id="8204086856545141093">Les requêtes vers le serveur ont été bloquées par une règle.</translation>
@@ -5211,6 +5230,7 @@ Calcul de la durée restante</translation>
<translation id="8381977081675353473">slovaque</translation>
<translation id="8382645631174981738"><ph name="EXTENSION_NAME" /> a été installée à distance</translation>
<translation id="8382913212082956454">Copi&amp;er l'adresse e-mail</translation>
+<translation id="8384113940676655504">Active un paramètre Smart Lock permettant à votre Chromebook de détecter les téléphones à l'aide de la technologie Bluetooth Low Energy. Ce système permet de déverrouiller votre Chromebook quand votre téléphone se trouve à proximité.</translation>
<translation id="8390029840652165810">Veuillez vérifier que votre connexion réseau fonctionne. Si le problème persiste, veuillez vous déconnecter, puis vous reconnecter afin d'actualiser vos certificats.</translation>
<translation id="8390445751804042000">Activer le réveil de l'appareil en mode veille à la réception de certains paquets réseau</translation>
<translation id="8390449457866780408">Serveur indisponible.</translation>
@@ -5297,6 +5317,7 @@ Calcul de la durée restante</translation>
<translation id="8509646642152301857">Échec du téléchargement du dictionnaire du correcteur orthographique.</translation>
<translation id="8512476990829870887">Arrêter le processus</translation>
<translation id="851263357009351303">Toujours autoriser <ph name="HOST" /> à afficher les images</translation>
+<translation id="8513191386157529469">Le débogage de ce navigateur est actuellement effectué par "<ph name="CLIENT_NAME" />".</translation>
<translation id="8513974249124254369">ChromeVox (commentaires audio) activé. Appuyez sur les touches Ctrl + Alt + Z pour le désactiver.</translation>
<translation id="8515737884867295000">Échec de l'authentification basée sur le certificat</translation>
<translation id="8518865679229538285">Mode de saisie en tamoul (Typewriter)</translation>
@@ -5416,6 +5437,7 @@ Calcul de la durée restante</translation>
<translation id="8677039480012021122">Effacer les données et se déconnecter</translation>
<translation id="8677212948402625567">Tout réduire...</translation>
<translation id="8678648549315280022">Gérer les paramètres de téléchargement…</translation>
+<translation id="8680251145628383637">Connectez-vous pour retrouver vos favoris, votre historique, vos mots de passe et d'autres paramètres sur tous vos appareils. De plus, vous serez automatiquement connecté à vos services Google.</translation>
<translation id="8680536109547170164"><ph name="QUERY" />, réponse, <ph name="ANSWER" /></translation>
<translation id="8680787084697685621">Les informations de connexion au compte sont obsolètes.</translation>
<translation id="8684255857039823328">Le mot de passe a bien été enregistré. Accédez à vos mots de passe depuis n'importe quel appareil à l'adresse <ph name="MANAGEMENT_LINK" />.</translation>
@@ -5471,6 +5493,7 @@ Calcul de la durée restante</translation>
<translation id="874420130893181774">Mode de saisie pinyin traditionnel</translation>
<translation id="8744525654891896746">Sélectionner un avatar pour cet utilisateur supervisé</translation>
<translation id="8744641000906923997">Romaji</translation>
+<translation id="8744959718895556609">Sélectionner un compte <ph name="LINK_TEXT" /></translation>
<translation id="8749863574775030885">Accéder à des appareils USB d'un fournisseur inconnu</translation>
<translation id="8754200782896249056">&lt;p&gt;Lorsque vous exécutez <ph name="PRODUCT_NAME" /> dans un environnement de bureau compatible, les paramètres proxy du système sont utilisés. Cependant, soit votre système n'est pas compatible, soit un problème est survenu lors du lancement de votre configuration système.&lt;/p&gt;
@@ -5591,6 +5614,7 @@ Calcul de la durée restante</translation>
<translation id="8933960630081805351">&amp;Afficher dans le Finder</translation>
<translation id="8934732568177537184">Continuer</translation>
<translation id="8938356204940892126">Abandonner</translation>
+<translation id="8938800817013097409">Appareil USB de type C (port situé sur l'arrière de l'appareil, à droite)</translation>
<translation id="8940081510938872932">Votre ordinateur traite actuellement trop de tâches en même temps. Veuillez réessayer ultérieurement.</translation>
<translation id="8941173171815156065">Révoquer l'autorisation "<ph name="PERMISSION" />"</translation>
<translation id="8941248009481596111">Votre connexion à ce site est privée.</translation>
diff --git a/chromium/chrome/app/resources/generated_resources_gu.xtb b/chromium/chrome/app/resources/generated_resources_gu.xtb
index ec09d2983fa..576cf72ece7 100644
--- a/chromium/chrome/app/resources/generated_resources_gu.xtb
+++ b/chromium/chrome/app/resources/generated_resources_gu.xtb
@@ -9,7 +9,7 @@
<translation id="1008557486741366299">હમણાં નહીં</translation>
<translation id="1010366937854368312">વધારાની ઍક્સેસિબિલિટી સુવિધાઓ ઉમેરો</translation>
<translation id="1010833424573920260">{NUM_PAGES,plural, =1{પૃષ્ઠ પ્રતિભાવવિહીન}one{પૃષ્ઠો પ્રતિભાવવિહીન}other{પૃષ્ઠો પ્રતિભાવવિહીન}}</translation>
-<translation id="1012794136286421601">તમારી દસ્તાવેજ, શીટ્સ, સ્લાઇડ્સ, અને રેખાંકન ફાઇલો સમન્વયિત થઈ રહી છે. ઓનલાઇન કે ઓફલાઇન તેમને વાપરવા માટે Google ડ્રાઇવ એપ્લિકેશન ખોલો.</translation>
+<translation id="1012794136286421601">તમારી દસ્તાવેજ, શીટ્સ, સ્લાઇડ્સ, અને રેખાંકન ફાઇલો સમન્વયિત થઈ રહી છે. ઓનલાઇન કે ઑફલાઇન તેમને વાપરવા માટે Google ડ્રાઇવ એપ્લિકેશન ખોલો.</translation>
<translation id="1012876632442809908">USB-C ઉપકરણ (આગળનું પોર્ટ)</translation>
<translation id="1013707859758800957">એક અનસેન્ડબૉક્સ્ડ પ્લગિનને આ પૃષ્ઠ પર ચાલવાની મંજૂરી આપવામાં આવી હતી.</translation>
<translation id="1014321050861012327">પાસવર્ડ્સને આપમેળે સાચવો.</translation>
@@ -136,6 +136,8 @@
<translation id="1178581264944972037">થોભો</translation>
<translation id="1179803038870941185"><ph name="URL" /> તમારા MIDI ઉપકરણોનું પૂર્ણ નિયંત્રણ મેળવવા માંગે છે.</translation>
<translation id="1181037720776840403">દૂર કરો</translation>
+<translation id="11814323404622888">"&gt;
+ USB-C ઉપકરણ (જમણી બાજુનું પાછળનું પોર્ટ)</translation>
<translation id="1183083053288481515">વ્યવસ્થાપક-પ્રદત્ત પ્રમાણપત્રનો ઉપયોગ કરી રહ્યું છે</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>
@@ -310,7 +312,7 @@
<translation id="144518587530125858">થીમ માટે '<ph name="IMAGE_PATH" />' લોડ કરી શકાયું નથી.</translation>
<translation id="1451375123200651445">વેબપૃષ્ઠ, એકલ ફાઇલ</translation>
<translation id="1451917004835509682">નિરીક્ષિત વ્યક્તિ ઉમેરો</translation>
-<translation id="1454188386658974462">તમારા પાસવર્ડને ફરીથી દાખલ કરવું જ્યારે તમે ઓફલાઇન હોવ ત્યારે તમને સાઇન ઇન કરવાની મંજૂરી આપશે.</translation>
+<translation id="1454188386658974462">તમારા પાસવર્ડને ફરીથી દાખલ કરવું જ્યારે તમે ઑફલાઇન હોવ ત્યારે તમને સાઇન ઇન કરવાની મંજૂરી આપશે.</translation>
<translation id="1454223536435069390">સ્ક્રીનશોટ &amp;લો</translation>
<translation id="1455457703254877123">આ ઉપકરણ હવે માલિક (તમે) દ્વારા રીમોટલી સંચાલિત કરી શકાશે નહીં.</translation>
<translation id="1455548678241328678">નોર્વેજીયન કીબોર્ડ</translation>
@@ -329,6 +331,7 @@
<translation id="1468038450257740950">WebGL સમર્થિત નથી.</translation>
<translation id="1470719357688513792">નવી કૂકી સેટિંગ્સ પૃષ્ઠ ફરીથી લોડ કર્યા પછી પ્રભાવમાં આવશે.</translation>
<translation id="14720830734893704">વર્ચ્યુઅલ કીબોર્ડ સમર્થનને સક્ષમ કરો</translation>
+<translation id="1474079335130556426">પુશ API માટે પૃષ્ઠભૂમિ મોડ સક્ષમ કરો. આ Chrome ને છેલ્લી વિંડો બંધ થઈ જાય તે પછી ચાલતાં રહેવાની અને OS સ્ટાર્ટઅપ પર લોંચ કરવાની મંજૂરી આપે છે, જો પુશ API ને તેની જરૂર હોય તો.</translation>
<translation id="1474339897586437869">"<ph name="FILENAME" />" ને અપલોડ કરવામાં આવી ન હતી. તમારી Google ડ્રાઇવમાં પૂરતી ખાલી જગ્યા નથી.</translation>
<translation id="1476503841242751994">{COUNT,plural, =1{1 પાસવર્ડ}one{# પાસવર્ડ}other{# પાસવર્ડ}}</translation>
<translation id="1476949146811612304"><ph name="BEGIN_LINK" />omnibox<ph name="END_LINK" /> થી શોધ કરતી વખતે કયા શોધ એંજીનનો ઉપયોગ કરવો તે સેટ કરો.</translation>
@@ -499,7 +502,7 @@
<translation id="1681120471812444678">પ્રિન્ટર્સ ઉમેરવા માટે સેટ કરો…</translation>
<translation id="1682324559341535203"><ph name="DEVICE_TYPE" /> ની નોંધણી કરો</translation>
<translation id="1682548588986054654">નવી છુપી વિંડો</translation>
-<translation id="168282077338734107">'ઑકે Google' સુવિધાઓ માટેના સિમ્યૂલેટ કરેલ હાર્ડવેર સક્ષમ કરો.</translation>
+<translation id="168282077338734107">'Ok Google' સુવિધાઓ માટેના સિમ્યૂલેટ કરેલ હાર્ડવેર સક્ષમ કરો.</translation>
<translation id="168328519870909584"><ph name="BEGIN_BOLD" /><ph name="SITE" /><ph name="END_BOLD" /> પરનાં હુમલાખોરો તમારા ઉપકરણ પર તમારી માહિતી (ઉદાહરણ તરીકે, ફોટા, પાસવર્ડ્સ, સંદેશા અને ક્રેડિટ કાર્ડ્સ) ચોરી અથવા કાઢી નાખી શકે તેવી જોખમકારક એપ્લિકેશનો ઇન્સ્ટોલ કરવાનો પ્રયત્ન કરી શકે.</translation>
<translation id="1685141618403317602">નોંધણીને રદ કરો</translation>
<translation id="1685944703056982650">માઉસ કર્સર અપવાદો</translation>
@@ -649,8 +652,9 @@
<translation id="1918141783557917887">&amp;નાનું</translation>
<translation id="192144045824434199">બ્રાઉઝર ફ્રેમની બહાર ખુલતી પેનલ વિંડોઝને સક્ષમ કરો. જો સક્ષમ નહીં હોય, તો કોઈ પેનલને ખોલવાના પ્રયાસો એક પૉપઅપ ખોલશે. પેનલ્સ હંમેશા dev અને કૅનેરી ચૅનલ્સ પર સક્ષમ હોય છે.</translation>
<translation id="1921584744613111023"><ph name="DPI" /> dpi</translation>
+<translation id="1921986354447415460">ટર્કિશ-F કીબોર્ડ</translation>
<translation id="1923786009776354244">WebRTC સ્ટન મૂળ હેડર માટે સમર્થન સક્ષમ કરો.</translation>
-<translation id="1926741348654461781">ઓફલાઇન પૃષ્ઠો સક્ષમ કરો</translation>
+<translation id="1926741348654461781">ઑફલાઇન પૃષ્ઠો સક્ષમ કરો</translation>
<translation id="1929546189971853037">તમારા બધા સાઇન-ઇન કરેલ ઉપકરણો પર તમારા બ્રાઉઝિંગ ઇતિહાસને વાંચો</translation>
<translation id="1931152874660185993">કોઈ ઘટકો ઇન્સ્ટોલ કર્યા નથી.</translation>
<translation id="1932098463447129402">આની પહેલા નહીં</translation>
@@ -659,7 +663,7 @@
<translation id="1934636348456381428">પ્રાયોગિક ઓવરલે સ્ક્રોલબાર્સ અમલીકરણને સક્ષમ કરો. સ્ક્રોલબાર્સ એનિમેટ થયેલી મેળવવા માટે તમારે થ્રેડેડ સંમિશ્રણ પણ સક્ષમ કરવું આવશ્યક છે.</translation>
<translation id="1936157145127842922">ફોલ્ડરમાં બતાવો</translation>
<translation id="1936717151811561466">ફિનિશ</translation>
-<translation id="1937256809970138538">જ્યારે તમારી સ્ક્રીન ચાલુ અને અનલૉક થાય ત્યારે કહો "ઑકે Google"</translation>
+<translation id="1937256809970138538">જ્યારે તમારી સ્ક્રીન ચાલુ અને અનલૉક થાય ત્યારે કહો "Ok Google"</translation>
<translation id="1944921356641260203">અપડેટ મળ્યું</translation>
<translation id="1947424002851288782">જર્મન કીબોર્ડ</translation>
<translation id="1949433054743893124">છુપામાં જવું તમારા નિયોક્તા, તમારા ઇન્ટરનેટ સેવા પ્રદાતા અથવા તમે મુલાકાત લો છો તે વેબસાઇટથી તમારા બ્રાઉઝિંગને છુપાવતું નથી.</translation>
@@ -853,6 +857,7 @@
<translation id="2231990265377706070">ઉદ્ગારવાચક બિંદુ</translation>
<translation id="2232876851878324699">ફાઇલમાં એક પ્રમાણપત્ર શામેલ છે કે જે આયાત કર્યું ન હતું:</translation>
<translation id="2233502537820838181">&amp;વધુ માહિતી</translation>
+<translation id="2233587473672843170">નવા ટેબ પૃષ્ઠ પર લોકપ્રિય સાઇટ્સ બતાવો</translation>
<translation id="223714078860837942">જો કોઈ પૃષ્ઠે સ્પષ્ટ સંદર્ભકર્તા નીતિ સેટ કરી નથી, તો આ ફ્લેગને સેટ કરવું ક્રોસ-ઓરિજિન વિનંતીઓ માટે "સંદર્ભકર્તા" હેડરમાંની માહિતીનું પ્રમાણ ઘટાડશે.</translation>
<translation id="2238379619048995541">ફ્રીક્વેંસી સ્થિતિ ડેટા</translation>
<translation id="2239921694246509981">નિરીક્ષિત વ્યક્તિ ઉમેરો</translation>
@@ -931,6 +936,7 @@
<translation id="2326606747676847821">છુપામાં જાઓ</translation>
<translation id="2326931316514688470">એપ્લિકેશન &amp;ફરીથી લોડ કરો</translation>
<translation id="2327492829706409234">એપ્લિકેશન સક્ષમ કરો</translation>
+<translation id="2329597144923131178">તમારા તમામ ઉપકરણો પર તમારા બુકમાર્ક્સ, ઇતિહાસ, પાસવર્ડ્સ અને અન્ય સેટિંગ્સ મેળવવા માટે સાઇન ઇન કરો.</translation>
<translation id="2332131598580221120">દુકાનમાં જુઓ</translation>
<translation id="2332742915001411729">ડિફોલ્ટ પર ફરીથી સેટ કરો</translation>
<translation id="2335122562899522968">આ પૃષ્ઠ કૂકીઝ સેટ કરે છે.</translation>
@@ -1319,6 +1325,7 @@
<translation id="2838379631617906747">ઇન્સ્ટોલ કરી રહ્યું છે</translation>
<translation id="2841837950101800123">પ્રદાતા</translation>
<translation id="2843806747483486897">ડિફૉલ્ટ બદલો...</translation>
+<translation id="2844169650293029770">USB-C ઉપકરણ (ડાબી બાજુનું આગળનું પોર્ટ)</translation>
<translation id="2845382757467349449">બુકમાર્ક્સ બાર હંમેશા બતાવો</translation>
<translation id="2846816712032308263">ઝડપી ટેબ/ વિંડો બંધ કરવું સક્ષમ કરે છે - GUI ના તે ટેબના onunload js હેન્ડલરને સ્વતંત્રરીતે શરૂ કરે છે.</translation>
<translation id="284970761985428403"><ph name="ASCII_NAME" /> (<ph name="UNICODE_NAME" />)</translation>
@@ -1361,7 +1368,7 @@
<translation id="2890624088306605051">ફક્ત સમન્વયિત સેટિંગ્સ અને ડેટા પ્રાપ્ત કરો</translation>
<translation id="2893168226686371498">ડિફૉલ્ટ બ્રાઉઝર</translation>
<translation id="289426338439836048">અન્ય મોબાઇલ નેટવર્ક...</translation>
-<translation id="2894745200702272315">'ઑકે Google' પ્રચલિત શબ્દ શોધ સુવિધાનું પ્રાયોગિક સંસ્કરણ સક્ષમ કરે છે જેની પાસે હાર્ડવેર નિર્ભરતા છે.</translation>
+<translation id="2894745200702272315">'Ok Google' પ્રચલિત શબ્દ શોધ સુવિધાનું પ્રાયોગિક સંસ્કરણ સક્ષમ કરે છે જેની પાસે હાર્ડવેર નિર્ભરતા છે.</translation>
<translation id="2896499918916051536">આ પ્લગિન સમર્થિત નથી.</translation>
<translation id="289695669188700754">કી ID: <ph name="KEY_ID" /></translation>
<translation id="2897878306272793870">શું તમે ખરેખર <ph name="TAB_COUNT" /> ટૅબ્સ ખોલવા માંગો છો?</translation>
@@ -1386,6 +1393,7 @@
<translation id="2923469375796950815">નવું ઝીપ અપપેકર અક્ષમ કરો.</translation>
<translation id="2924296707677495905">લિવ્યંતરણ (namaskaram → ನಮಸ್ಕಾರ)</translation>
<translation id="2925966894897775835">શીટ્સ</translation>
+<translation id="2927017729816812676">કેશ સ્ટોરેજ</translation>
<translation id="2927657246008729253">બદલો...</translation>
<translation id="2928526264833629376">Hangouts પર ચાલુ રાખો</translation>
<translation id="2930644991850369934">છબી ડાઉનલોડની પુનર્પ્રાપ્તિ દરમિયાન એક સમસ્યા આવી હતી. નેટવર્ક કનેક્શન જતું રહ્યું હતું.</translation>
@@ -1413,7 +1421,7 @@
<translation id="2963783323012015985">ટર્કિશ કીબોર્ડ</translation>
<translation id="2964193600955408481">Wi-Fi ને અક્ષમ કરો</translation>
<translation id="2966459079597787514">સ્વીડિશ કીબોર્ડ</translation>
-<translation id="2966598748518102999">"ઑકે Google" અને થોડીવાર પહેલાંનો અવાજ Google ને મોકલીને વૉઇસ શોધને સુધારો.</translation>
+<translation id="2966598748518102999">"Ok Google" અને થોડીવાર પહેલાંનો અવાજ Google ને મોકલીને વૉઇસ શોધને સુધારો.</translation>
<translation id="2967544384642772068">નષ્ટ કરો</translation>
<translation id="2968792643335932010">ઓછી કૉપિઝ</translation>
<translation id="2971213274238188218">તેજસ્વીતા ઘટાડો</translation>
@@ -1504,7 +1512,7 @@
<translation id="3090819949319990166">બાહ્ય crx ફાઇલને <ph name="TEMP_CRX_FILE" /> પર કૉપિ કરી શકતાં નથી.</translation>
<translation id="3090871774332213558">"<ph name="DEVICE_NAME" />"થી જોડી બનાવી</translation>
<translation id="3092544800441494315">આ સ્ક્રીનશોટ શામેલ કરો:</translation>
-<translation id="3093245981617870298">તમે ઓફલાઇન છો</translation>
+<translation id="3093245981617870298">તમે ઑફલાઇન છો</translation>
<translation id="3095995014811312755">સંસ્કરણ</translation>
<translation id="3097628171361913691">ઝિપ ફાઇલ ઇન્સ્ટોલર</translation>
<translation id="3100609564180505575">મોડ્યુલ્સ(<ph name="TOTAL_COUNT" />) - જાણીતા વિરોધાભાસો: <ph name="BAD_COUNT" />, શંકાસ્પદ: <ph name="SUSPICIOUS_COUNT" /></translation>
@@ -1554,7 +1562,7 @@
<translation id="3162559335345991374">તમે ઉપયોગ કરી રહ્યાં છો તે Wi-Fi ને તેના લોગિન પૃષ્ઠની મુલાકાત લેવાની જરૂર હોઈ શકે છે.</translation>
<translation id="316307797510303346"><ph name="CUSTODIAN_EMAIL" /> માંથી આ વ્યક્તિ મુલાકાત લે છે તે વેબસાઇટ્સ જુઓ અને નિયંત્રિત કરો.
તમારી એકાઉન્ટ સાઇન-ઇન વિગતો જૂની થઈ ગઈ છે.</translation>
-<translation id="3166571619128686629">વૉઇસ શોધ પ્રારંભ કરવા માટે ક્લિક કરો અથવા "ઑકે Google" કહો</translation>
+<translation id="3166571619128686629">વૉઇસ શોધ પ્રારંભ કરવા માટે ક્લિક કરો અથવા "Ok Google" કહો</translation>
<translation id="3170072451822350649">તમે સાઇન ઇન કરવાનું છોડી અને <ph name="LINK_START" />અતિથિ તરીકે બ્રાઉઝ<ph name="LINK_END" /> પણ કરી શકો છો.</translation>
<translation id="3170544058711792988">મેગ્નિફાયરના ફોકસને સ્ક્રીન પર કેન્દ્રિત રાખો</translation>
<translation id="3172213052701798825">પાસવર્ડ્સ માટે Google Smart Lock</translation>
@@ -1573,7 +1581,7 @@
<translation id="3192478164181859944">સ્લિમિંગ પેઇન્ટ તબક્કો 2 સક્ષમ કરો.</translation>
<translation id="3192947282887913208">ઑડિઓ ફાઇલો </translation>
<translation id="3193734264051635522">ગતિ:</translation>
-<translation id="3195029830833421520">ઓફલાઇન ઉપયોગ માટે પૃષ્ઠોને સ્થાનિકપણે સંગ્રહિત કરવાને સક્ષમ કરો. સક્ષમ થવા માટે વિસ્તૃત બુકમાર્ક્સ જરૂરી છે.</translation>
+<translation id="3195029830833421520">ઑફલાઇન ઉપયોગ માટે પૃષ્ઠોને સ્થાનિકપણે સંગ્રહિત કરવાને સક્ષમ કરો. સક્ષમ થવા માટે વિસ્તૃત બુકમાર્ક્સ જરૂરી છે.</translation>
<translation id="3195445837372719522">મીટિંગ સાથે Chromebox ને તે કયા ડોમેનથી સંબંધિત છે તે જાણવાની જરૂર છે. આ માટે તમારે તમારા એકાઉન્ટમાં સાઇન ઇન કરવાની જરૂર હશે.</translation>
<translation id="3197563288998582412">યુકે ડ્વોરેક</translation>
<translation id="3199127022143353223">સર્વર્સ</translation>
@@ -1608,7 +1616,7 @@
<translation id="3241720467332021590">આઇરિશ</translation>
<translation id="3242118113727675434">ટચ પોઇન્ટ્સ માટે HUD બતાવો</translation>
<translation id="3242765319725186192">પૂર્વ-શેર કરેલી કી:</translation>
-<translation id="3244621381664913240">વૉઇસ શોધ પ્રારંભ કરવા માટે "ઑકે Google" સક્ષમ કરો.</translation>
+<translation id="3244621381664913240">વૉઇસ શોધ પ્રારંભ કરવા માટે "Ok Google" સક્ષમ કરો.</translation>
<translation id="3245321423178950146">અજ્ઞાત કલાકાર</translation>
<translation id="324533084080637716">લેખ સંરચના માર્કઅપ સાથે</translation>
<translation id="324743268744517458">ચેતવણી: તમે ઉત્પાદન Google Payments સર્વર્સથી કનેક્ટ થયેલ નથી. રજૂ કરેલા કાર્ડ્સ અમાન્ય હશે.</translation>
@@ -1616,7 +1624,7 @@
<translation id="3252266817569339921">ફ્રેન્ચ</translation>
<translation id="3254409185687681395">આ પૃષ્ઠને બુકમાર્ક કરો</translation>
<translation id="3254434849914415189"><ph name="FILE_TYPE" /> ફાઇલો માટે ડિફૉલ્ટ એપ્લિકેશન પસંદ કરો:</translation>
-<translation id="3255228561559750854">શોધો અથવા "ઑકે Google" કહો</translation>
+<translation id="3255228561559750854">શોધો અથવા "Ok Google" કહો</translation>
<translation id="3258281577757096226">3 સેટ (ફાયનલ)</translation>
<translation id="3258924582848461629">જાપાનીઓ માટેની હસ્તાક્ષર ઇનપુટ પદ્ધતિ</translation>
<translation id="3264544094376351444">Sans-Serif ફૉન્ટ</translation>
@@ -1727,6 +1735,7 @@
<translation id="3396331542604645348">પસંદ કરેલું પ્રિંટર ઉપલબ્ધ નથી અથવા ઠીકથી ઇન્સ્ટોલ કરેલું નથી. તમારા પ્રિંટરને તપાસો અથવા બીજા પ્રિંટરને પસંદ કરી જુઓ.</translation>
<translation id="3399597614303179694">મેસેડોનિયન કીબોર્ડ</translation>
<translation id="340013220407300675">હુમલાખોરો <ph name="BEGIN_BOLD" /><ph name="SITE" /><ph name="END_BOLD" /> માંથી તમારી માહિતી ચોરી કરવાનો પ્રયાસ કરી શકે છે (ઉદાહરણ તરીકે, પાસવર્ડ્સ, સંદેશા અથવા ક્રેડિટ કાર્ડ્સ).</translation>
+<translation id="3401130144947259741">જો સક્ષમ હોય, તો ટ્રેસ ઇવેન્ટ્સને Windows માટે ઇવેન્ટ ટ્રેસિંગ (ETW) પર નિકાસ કરવામાં આવશે અને પછી તે UIForETW અથવા Xperf જેવા સાધનો દ્વારા કેપ્ચર કરી શકાય છે.</translation>
<translation id="340282674066624"><ph name="DOWNLOAD_RECEIVED" />, <ph name="TIME_LEFT" /></translation>
<translation id="3406605057700382950">બુકમાર્ક્સ બાર &amp;બતાવો</translation>
<translation id="3412265149091626468">પસંદગી પર જાઓ</translation>
@@ -1805,7 +1814,7 @@
<translation id="3511399794969432965">કનેક્ટ કરવામાં મુશ્કેલી?</translation>
<translation id="351152300840026870">નિશ્ચિત-પહોળાઇ ફૉન્ટ</translation>
<translation id="3511528412952710609">ટૂંકુ</translation>
-<translation id="3512284449647229026">બ્રાઉઝર ઓફલાઇન હોય તે વખતે લોડ થવામાં નિષ્ફળ થયેલાં પૃષ્ઠો જ્યારે બ્રાઉઝર ફરીથી ઓનલાઇન થશે ત્યારે સ્વતઃ ફરીથી લોડ કરવામાં આવશે.</translation>
+<translation id="3512284449647229026">બ્રાઉઝર ઑફલાઇન હોય તે વખતે લોડ થવામાં નિષ્ફળ થયેલાં પૃષ્ઠો જ્યારે બ્રાઉઝર ફરીથી ઓનલાઇન થશે ત્યારે સ્વતઃ ફરીથી લોડ કરવામાં આવશે.</translation>
<translation id="3512307528596687562"><ph name="URL" /> પરનું વેબપૃષ્ઠ,
ઘણાં બધા રીડાયરેક્ટ્સમાં પરિણમ્યું છે. આ સાઇટ માટેની તમારી કૂકીઝને સાફ કરવાથી અથવા તૃતીય-પક્ષ કૂકીઝને મંજૂરી આપવાથી સમસ્યા ઠીક થઈ શકે છે. જો આમ ન થાય, તો
તે સંભવતઃ સર્વર ગોઠવણી સમસ્યા છે અને તમારા ઉપકરણ સાથેની કોઈ સમસ્યા નથી.</translation>
@@ -1885,6 +1894,7 @@
<translation id="3603385196401704894">કેનેડિયન ફ્રેંચ</translation>
<translation id="3603622770190368340">નેટવર્ક પ્રમાણપત્ર મેળવો</translation>
<translation id="3605780360466892872">બટનડાઉન</translation>
+<translation id="3606220979431771195">ટર્કિશ-F</translation>
<translation id="3608454375274108141">F10</translation>
<translation id="3608576286259426129">વપરાશકર્તા છબી પૂર્વાવલોકન</translation>
<translation id="3609138628363401169">સર્વર TLS રીનેગોશિએશન એક્સ્ટેંશનને સપોર્ટ કરતું નથી. </translation>
@@ -2035,7 +2045,7 @@
<translation id="3783640748446814672">alt</translation>
<translation id="3785308913036335955">એપ્લિકેશનો શોર્ટકટ બતાવો</translation>
<translation id="3785852283863272759">પૃષ્ઠ સ્થાન ઇમેઇલ કરો</translation>
-<translation id="3786301125658655746">તમે ઓફલાઇન છો</translation>
+<translation id="3786301125658655746">તમે ઑફલાઇન છો</translation>
<translation id="3788090790273268753">આ સાઇટ માટેનું પ્રમાણપત્ર 2016 માં સમાપ્ત થાય છે અને પ્રમાણપત્ર શ્રૃંખલા SHA-1 નો ઉપયોગ કરીને સહી કરેલ પ્રમાણપત્ર ધરાવે છે.</translation>
<translation id="3788401245189148511">તે આ કરી શકે છે:</translation>
<translation id="3789841737615482174">ઇન્સ્ટોલ કરો</translation>
@@ -2058,7 +2068,7 @@
<translation id="3811328435734979057">નવી બુકમાર્ક એપ્લિકેશન સિસ્ટમને સક્ષમ કરો.</translation>
<translation id="3812034401428455285"><ph name="UWS_NAME" /> અને <ph name="UWS_NAME" /></translation>
<translation id="3812525830114410218">ખોટું પ્રમાણપત્ર</translation>
-<translation id="3813984289128269159">ઑકે Google</translation>
+<translation id="3813984289128269159">Ok Google</translation>
<translation id="3815016854028376614">ઝુયિન ઇનપુટ પદ્ધતિ</translation>
<translation id="3815571115159309122"><ph name="FILE_COUNT" /> નવા ફોટા મળ્યા
<ph name="LINE_BREAK1" />
@@ -2405,6 +2415,7 @@
<translation id="4321136812570927563">{NUM_DOWNLOAD,plural, =1{ડાઉનલોડ ચાલુ રાખો}one{ડાઉનલોડ્સ ચાલુ રાખો}other{ડાઉનલોડ્સ ચાલુ રાખો}}</translation>
<translation id="4321179778687042513">ctrl</translation>
<translation id="4322394346347055525">અન્ય ટૅબ્સને બંધ કરો</translation>
+<translation id="4325378361067528777">પુશ API પૃષ્ઠભૂમિ મોડ સક્ષમ કરો</translation>
<translation id="4326952458285403282">પ્રાયોગિક DirectWrite ફોન્ટ રેંડરિંગ સિસ્ટમના ઉપયોગને અક્ષમ કરે છે.</translation>
<translation id="4326999707196471878">Toolkit-Views બ્રાઉઝર સંવાદો.</translation>
<translation id="4330406155931244378">બહુભાષીય જોડણી તપાસનાર સક્ષમ કરો</translation>
@@ -2522,7 +2533,7 @@
<translation id="4532499992208253975">emloading</translation>
<translation id="4533259260976001693">સંકોચો/વિસ્તૃત કરો</translation>
<translation id="4534166495582787863">ટચપેડ થ્રી-ફિંગર-ક્લિકને મધ્યમ બટન તરીકે સક્ષમ કરે છે.</translation>
-<translation id="4534799089889278411">નવા ટેબમાં, google.com માં અને એપ્લિકેશન લૉન્ચરમાં "ઑકે Google" કહો</translation>
+<translation id="4534799089889278411">નવા ટેબમાં, google.com માં અને એપ્લિકેશન લૉન્ચરમાં "Ok Google" કહો</translation>
<translation id="4535127706710932914">ડિફૉલ્ટ પ્રોફાઇલ</translation>
<translation id="4535734014498033861">પ્રોક્સી સર્વર કનેક્શન નિષ્ફળ.</translation>
<translation id="4538417792467843292">શબ્દ કાઢી નાખો</translation>
@@ -2582,7 +2593,7 @@
<translation id="4622797390298627177">એપ્લિકેશન બેનર્સ પ્રદર્શિત કરવા માટે વપરાશકર્તા શામેલગીરી ચેક્સને બાયપાસ કરે છે, જેમ કે વપરાશકર્તાએ પહેલાં સાઇટની મુલાકાત લીધી હોય અને તે કે બેનર તાજેતરમાં દર્શાવ્યું ન હોય તેવી જરૂરિયાત. આ વિકાસકર્તાઓને એપ્લિકેશન બેનર્સ દર્શવવા માટેની અન્ય પાત્રતા આવશ્યકતાઓ પૂર્ણ થઈ છે તેના પરીક્ષણની મંજૂરી આપે છે, જેમ કે મેનિફેસ્ટ ધરાવવું.</translation>
<translation id="4622830015832263832">માત્ર ધીમા કનેક્શન્સ</translation>
<translation id="462288279674432182">પ્રતિબંધિત IP:</translation>
-<translation id="4623525071606576283">જ્યારે બ્રાઉઝર ઓફલાઇન હોય ત્યારે લોડ થવામાં નિષ્ફળ થયેલાં પૃષ્ઠો જ્યારે બ્રાઉઝર ફરીથી ઓનલાઇન થશે ત્યારે સ્વતઃ ફરીથી લોડ કરવામાં આવશે.</translation>
+<translation id="4623525071606576283">જ્યારે બ્રાઉઝર ઑફલાઇન હોય ત્યારે લોડ થવામાં નિષ્ફળ થયેલાં પૃષ્ઠો જ્યારે બ્રાઉઝર ફરીથી ઓનલાઇન થશે ત્યારે સ્વતઃ ફરીથી લોડ કરવામાં આવશે.</translation>
<translation id="4623537843784569564">આ એક્સ્ટેન્શન ખોટી રીતે અપડેટ કરેલ હોઈ શકે છે. ફરીથી ઇન્સ્ટોલ કરવાનો પ્રયાસ કરો.</translation>
<translation id="4624768044135598934">સફળતા!</translation>
<translation id="4626106357471783850">અપડેટ્સને લાગુ કરવા માટે <ph name="PRODUCT_NAME" /> ને પુનઃપ્રારંભ કરવાની જરૂર છે.</translation>
@@ -2943,6 +2954,8 @@
<translation id="5148652308299789060">3D સૉફ્ટવેર રેસ્ટેરાઇઝર અક્ષમ કરો</translation>
<translation id="5150254825601720210">નેટસ્કેપ પ્રમાણપત્ર SSL સર્વર નામ</translation>
<translation id="5151034238407558331">કમનસીબે, Google Payments નો ઉપયોગ માત્ર યુએસ સરનામાં સાથેના ખરીદનારા દ્વારા આ વેપારી પર થઈ શકે છે. જો તમે યુએસ નિવાસી છો, તો કૃપા કરીને |Google Payments સાથે તમારા ઘરનું સરનામું બદલો| અથવા Google Payments નો ઉપયોગ કર્યા વિના ચૂકવણી કરો.</translation>
+<translation id="5151639798712723370">"&gt;
+ USB-C ઉપકરણ (જમણી બાજુનું આગળનું પોર્ટ)</translation>
<translation id="5152451685298621771">(બાળકો માટેનું એકાઉન્ટ)</translation>
<translation id="5154108062446123722"><ph name="PRINTING_DESTINATION" /> માટે વિગતવાર સેટિંગ્સ</translation>
<translation id="5154176924561037127">F8</translation>
@@ -3002,7 +3015,7 @@
<translation id="5228309736894624122">SSL પ્રોટોકોલ ભૂલ.</translation>
<translation id="5228962187251412618">માત્ર ઓનલાઇન તપાસ</translation>
<translation id="5230516054153933099">વિંડો</translation>
-<translation id="5232178406098309195">જ્યારે તમે "ઑકે Google" અથવા માઇક્રોફોન આયકન ટચ કરવા જેવા ઑડિઓ સક્રિયકરણ આદેશોનો ઉપયોગ કરો, ત્યારે તમારી ગોપનીય વૉઇસ અને ઑડિઓ પ્રવૃત્તિ તમારા એકાઉન્ટ માટે કેટલોક અવાજ અને અન્ય ઑડિઓ સંગ્રહે છે. નીચેના અવાજ/ઑડિઓનું એક રેકોર્ડિગ, ઉપરાંત થોડી સેકન્ડ્સ પહેલાની, સંગ્રહવામાં આવશે.</translation>
+<translation id="5232178406098309195">જ્યારે તમે "Ok Google" અથવા માઇક્રોફોન આયકન ટચ કરવા જેવા ઑડિઓ સક્રિયકરણ આદેશોનો ઉપયોગ કરો, ત્યારે તમારી ગોપનીય વૉઇસ અને ઑડિઓ પ્રવૃત્તિ તમારા એકાઉન્ટ માટે કેટલોક અવાજ અને અન્ય ઑડિઓ સંગ્રહે છે. નીચેના અવાજ/ઑડિઓનું એક રેકોર્ડિગ, ઉપરાંત થોડી સેકન્ડ્સ પહેલાની, સંગ્રહવામાં આવશે.</translation>
<translation id="523299859570409035">સૂચનો અપવાદો</translation>
<translation id="5233019165164992427">NaCl ડીબગ પોર્ટ</translation>
<translation id="5233231016133573565">પ્રક્રિયા ID</translation>
@@ -3023,7 +3036,7 @@
<translation id="524759338601046922">નવો PIN ફરીથી લખો:</translation>
<translation id="5249624017678798539">ડાઉનલોડ પૂર્ણ થતા પહેલાં બ્રાઉઝર ક્રેશ થયું.</translation>
<translation id="5252456968953390977">રોમિંગ</translation>
-<translation id="5253753933804516447">જ્યારે તમારી સ્ક્રીન ચાલુ અને અનલૉક હોય ત્યારે વૉઇસ શોધ કરવા માટે "ઑકે Google"ને સક્ષમ કરો</translation>
+<translation id="5253753933804516447">જ્યારે તમારી સ્ક્રીન ચાલુ અને અનલૉક હોય ત્યારે વૉઇસ શોધ કરવા માટે "Ok Google"ને સક્ષમ કરો</translation>
<translation id="52550593576409946">કિઓસ્ક એપ્લિકેશન લોંચ કરી શકાઈ નથી.</translation>
<translation id="5255315797444241226">તમે દાખલ કરેલો પાસફ્રેઝ ખોટો છે.</translation>
<translation id="5258266922137542658">PPAPI (પ્રક્રિયામાં છે)</translation>
@@ -3039,6 +3052,7 @@
<translation id="5271247532544265821">સરળીકૃત/પરંપરાગત ચાઇનીઝ મોડને ટૉગલ કરો</translation>
<translation id="5271549068863921519">પાસવર્ડ સાચવો</translation>
<translation id="5273628206174272911">આડા ઑવરસ્ક્રોલના જવાબમાં પ્રાયોગિક ઇતિહાસ નેવિગેશન.</translation>
+<translation id="5275795814002959418">આ સાઇટ પરથી <ph name="COUNT" /></translation>
<translation id="5275973617553375938">Google ડ્રાઇવમાંથી પુનર્પ્રાપ્ત ફાઇલો</translation>
<translation id="527605719918376753">ટૅબ મ્યૂટ કરો</translation>
<translation id="527605982717517565"><ph name="HOST" /> પર JavaScript ને હંમેશા મંજૂરી આપો </translation>
@@ -3085,6 +3099,7 @@
<translation id="5328285148748012771">આ હાથવગા લૉન્ચરથી તમારી બધી એપ્લિકેશનોને ઍક્સેસ કરો. રમતો રમો, વિડિઓ ચેટ કરો, સંગીત સાંભળો, દસ્તાવેજોને સંપાદિત કરો અથવા Chrome વેબ દુકાનથી વધુ એપ્લિકેશનો મેળવો.</translation>
<translation id="5329858601952122676">&amp;કાઢી નાખો</translation>
<translation id="5330145655348521461">આ ફાઇલોને બીજા ડેસ્કટૉપ પર ખોલેલી. તેને જોવા માટે <ph name="USER_NAME" /> (<ph name="MAIL_ADDRESS" />) પર જાઓ.</translation>
+<translation id="5331975486040154427">USB-C ઉપકરણ (ડાબી બાજુનું પાછળનું પોર્ટ)</translation>
<translation id="5332624210073556029">ટાઇમ ઝોન:</translation>
<translation id="5334142896108694079">સ્ક્રિપ્ટ કેશ</translation>
<translation id="533433379391851622">અપેક્ષિત સંસકરણ "<ph name="EXPECTED_VERSION" />" છે, પરંતુ સંસ્કરણ "<ph name="NEW_ID" />" હતું.</translation>
@@ -3131,6 +3146,7 @@
<translation id="539755880180803351">સ્વતઃભરો ફીલ્ડ પ્રકાર અનુમાનોવાળા વેબ ફોર્મ્સને પ્લેસહોલ્ડર ટેક્સ્ટ તરીકે એનોટેટ કરે છે.</translation>
<translation id="5397578532367286026">આ વપરાશકર્તાના ઉપયોગ અને ઇતિહાસની chrome.com પર સંચાલક (<ph name="MANAGER_EMAIL" />) દ્વારા સમીક્ષા કરવામાં આવી શકે છે.</translation>
<translation id="5397794290049113714">તમે</translation>
+<translation id="5398824043967640339">અન્ય સાઇટ્સ પરથી <ph name="COUNT" /></translation>
<translation id="5399158067281117682">PIN મેળ ખાતો નથી!</translation>
<translation id="5400640815024374115">ટ્રસ્ટેડ પ્લેટફોર્મ મૉડ્યૂલ (TPM) ચિપ અક્ષમ અથવા ગેરહાજર છે.</translation>
<translation id="5402367795255837559">બ્રેઇલ</translation>
@@ -3565,7 +3581,7 @@
<translation id="6015796118275082299">વર્ષ</translation>
<translation id="6016551720757758985">અગાઉના સંસ્કરણ પર પાછા ફરવાની સાથે Powerwash ની પુષ્ટિ કરો</translation>
<translation id="6016640600871825812">Google Payments ને ઓછામાં ઓછા એક પ્રથમ નામ અને છેલ્લા નામની જરૂર છે.</translation>
-<translation id="6016809788585079594">એક છેલ્લી વાર "ઑકે Google" કહો</translation>
+<translation id="6016809788585079594">એક છેલ્લી વાર "Ok Google" કહો</translation>
<translation id="6017225534417889107">બદલો...</translation>
<translation id="6017981840202692187">એપ્લિકેશન્સમાં ઉમેરો</translation>
<translation id="6019169947004469866">ક્રોપ</translation>
@@ -3640,7 +3656,7 @@
<ph name="PRODUCT_NAME" />
તેનાથી કનેક્ટ થઈ શકતું નથી.</translation>
<translation id="6107012941649240045">આને રજૂ કરેલું</translation>
-<translation id="6107079717483424262">તમારો અવાજ ઓળખો જ્યારે તમે કહો છો "ઑકે Google"</translation>
+<translation id="6107079717483424262">તમારો અવાજ ઓળખો જ્યારે તમે કહો છો "Ok Google"</translation>
<translation id="6110466548232134880"><ph name="LOCALITY" /> ખાતે <ph name="ORGANIZATION" /> ની ઓળખ <ph name="ISSUER" /> દ્વારા ચકાસવામાં આવી હતી. સર્વર દ્વારા કોઈ પ્રમાણપત્ર પારદર્શિતા માહિતી પૂરી પાડવામાં આવી ન હતી.</translation>
<translation id="6111770213269631447">લિવ્યંતરણ (namaskar → নমস্কার)</translation>
<translation id="6111974609785983504">ડિફોલ્ટ દ્વારા મંજૂર</translation>
@@ -3665,7 +3681,7 @@
<translation id="6144890426075165477"><ph name="PRODUCT_NAME" /> હમણાં તમારું ડિફૉલ્ટ બ્રાઉઝર નથી.</translation>
<translation id="6147020289383635445">પ્રિંટ પૂર્વાવલોકન નિષ્ફળ ગયું.</translation>
<translation id="614998064310228828">ઉપકરણ મૉડેલ: </translation>
-<translation id="6150853954427645995">આ ફાઇલને ઓફલાઇન ઉપયોગ માટે સાચવવા, પાછા ઓનલાઇન થાવ, ફાઇલને રાઇટ-ક્લિક કરો અને <ph name="OFFLINE_CHECKBOX_NAME" /> વિકલ્પ પસંદ કરો.</translation>
+<translation id="6150853954427645995">આ ફાઇલને ઑફલાઇન ઉપયોગ માટે સાચવવા, પાછા ઓનલાઇન થાવ, ફાઇલને રાઇટ-ક્લિક કરો અને <ph name="OFFLINE_CHECKBOX_NAME" /> વિકલ્પ પસંદ કરો.</translation>
<translation id="6151323131516309312"><ph name="SITE_NAME" /> ને શોધવા માટે <ph name="SEARCH_KEY" /> દબાવો</translation>
<translation id="6151559892024914821">ટચથી શરૂ થતુ ખેંચો અને છોડો સક્ષમ કરો</translation>
<translation id="615216289547575801">ક્ષણિક એપ્લિકેશનો સક્ષમ કરે છે, જે Chrome માં ઇન્સ્ટોલ કર્યાં વગર લોંચ થાય છે, Chrome વેબસ્ટોરમાંથી લોંચ કરવા માટે પ્રાયોગિક એપ્લિકેશન લોંચર સક્ષમ હોય તે જરૂરી છે.</translation>
@@ -3748,7 +3764,7 @@
<translation id="6281743458679673853">તમામ API, લેઆઉટ વ્યૂપોર્ટને પ્રતિબિંબિત કરે તે માટેનો પ્રયોગ. આ window.scroll પ્રોપર્ટીઝને લેઆઉટ વ્યૂપોર્ટથી સંબંધિત બનાવશે.</translation>
<translation id="6285120908535925801">{NUM_PRINTER,plural, =1{તમારા નેટવર્ક પર નવું પ્રિન્ટર}one{તમારા નેટવર્ક પર નવા પ્રિન્ટર્સ}other{તમારા નેટવર્ક પર નવા પ્રિન્ટર્સ}}</translation>
<translation id="6285395082104474418">સ્થિતિ ટ્રે તમને તમારા નેટવર્ક, બેટરી અને વધુની વર્તમાન સ્થિતિ બતાવે છે.</translation>
-<translation id="6285905808004014074">ઓફલાઇન સ્વતઃ ફરીથી લોડ કરો મોડ સક્ષમ કરો</translation>
+<translation id="6285905808004014074">ઑફલાઇન સ્વતઃ ફરીથી લોડ કરો મોડ સક્ષમ કરો</translation>
<translation id="6287852322318138013">આ ફાઇલ ખોલવા માટે એક એપ્લિકેશન પસંદ કરો</translation>
<translation id="6291953229176937411">ફાઇન્ડર માં &amp;બતાવો</translation>
<translation id="6292030868006209076">તમિળ ઇનપુટ પદ્ધતિ (itrans)</translation>
@@ -3955,6 +3971,7 @@
<translation id="6575251558004911012">જ્યારે કોઈ સાઇટને તમારા કૅમેરાને ઍક્સેસ કરવાની જરૂર હોય, ત્યારે પૂછો (ભલામણ કરેલ)</translation>
<translation id="6581162200855843583">Google ડ્રાઇવ લિંક</translation>
<translation id="6583070985841601920"><ph name="USER_EMAIL_ADDRESS" /> તરીકે સાઇન ઇન. સમન્વયન તમારા સંચાલક દ્વારા અક્ષમ છે.</translation>
+<translation id="65832705307647870">લોકપ્રિય સાઇટ્સ વડે નવા ટેબ પૃષ્ઠને પ્રી-પોપ્યુલેટ કરો.</translation>
<translation id="6584878029876017575">Microsoft Lifetime Signing</translation>
<translation id="6585234750898046415">સાઇન-ઇન સ્ક્રીન પર તમારા એકાઉન્ટ માટે પ્રદર્શિત કરવા માટેનું એક ચિત્ર પસંદ કરો.</translation>
<translation id="6585283250473596934">સાર્વજનિક સત્ર દાખલ કરી રહ્યું છે.</translation>
@@ -4238,7 +4255,7 @@
ગોઠવાયેલું નહીં હોય.</translation>
<translation id="7014174261166285193">ઇન્સ્ટોલેશન નિષ્ફળ થયું.</translation>
<translation id="7015226785571892184">જો તમે આ વિનંતિનો સ્વીકાર કરશો તો નીચેની એપ્લિકેશન શરૂ થશે:<ph name="APPLICATION" /></translation>
-<translation id="7017004637493394352">ફરીથી "ઑકે Google" કહો</translation>
+<translation id="7017004637493394352">ફરીથી "Ok Google" કહો</translation>
<translation id="7017219178341817193">નવું પૃષ્ઠ ઉમેરો</translation>
<translation id="7017354871202642555">વિંડો સેટ થઈ જાય પછી મોડને સેટ કરી શકાતો નથી.</translation>
<translation id="7017480957358237747">અમુક વેબસાઇટ્સને મંજૂરી આપો અથવા પ્રતિબંધિત કરો,</translation>
@@ -4299,6 +4316,7 @@
<translation id="7092106376816104">પૉપ-અપ અપવાદો</translation>
<translation id="7093866338626856921">આ નામના ઉપકરણ સાથે ડેટા વિનિમય કરો: <ph name="HOSTNAMES" /></translation>
<translation id="7096082900368329802">વધુ અદ્ભુત સુવિધાઓ શોધવા માગો છો?</translation>
+<translation id="7098389117866926363">USB-C ઉપકરણ (પાછળની બાજુએ ડાબું પોર્ટ)</translation>
<translation id="7100897339030255923"><ph name="COUNT" /> આઇટમ્સ પસંદ કરી</translation>
<translation id="7106346894903675391">વધુ સ્ટોરેજ ખરીદો...</translation>
<translation id="7108338896283013870">છુપાવો</translation>
@@ -4324,7 +4342,7 @@
<translation id="7136694880210472378">ડિફૉલ્ટ બનાવો</translation>
<translation id="7136984461011502314"><ph name="PRODUCT_NAME" /> માં આપનું સ્વાગત છે</translation>
<translation id="7138678301420049075">અન્ય</translation>
-<translation id="713888829801648570">માફ કરશો, તમારો પાસવર્ડ ચકાસી શકાયો નથી કારણ કે તમે ઓફલાઇન છો.</translation>
+<translation id="713888829801648570">માફ કરશો, તમારો પાસવર્ડ ચકાસી શકાયો નથી કારણ કે તમે ઑફલાઇન છો.</translation>
<translation id="7140928199327930795">કોઈ અન્ય ઉપલબ્ધ ઉપકરણો નથી.</translation>
<translation id="7141105143012495934">સાઇન-ઇન નિષ્ફળ થયું કારણ કે તમારી એકાઉન્ટ વિગતો પુનઃપ્રાપ્ત કરી શકાઈ નથી. કૃપા કરીને તમારા વ્યવસ્થાપકનો સંપર્ક કરો અથવા ફરી પ્રયાસ કરો.</translation>
<translation id="7143207342074048698">કનેક્ટ કરી રહ્યું છે</translation>
@@ -4387,7 +4405,7 @@
<translation id="7238585580608191973">SHA-256 ફિંગરપ્રિંટ</translation>
<translation id="7240120331469437312">પ્રમાણપત્ર વિષય વૈકલ્પિક નામ</translation>
<translation id="7241389281993241388">ક્લાયંટ પ્રમાણપત્ર આયાત કરવા માટે કૃપા કરીને <ph name="TOKEN_NAME" /> પર સાઇન ઇન કરો.</translation>
-<translation id="7243055093079293866">નવા ટૅબ અને google.com માં "ઑકે Google" કહો</translation>
+<translation id="7243055093079293866">નવા ટૅબ અને google.com માં "Ok Google" કહો</translation>
<translation id="724691107663265825">સાઇટ આગળ મૉલવેર ધરાવે છે</translation>
<translation id="725109152065019550">માફ કરશો, તમારા વ્યવસ્થાપકે તમારા એકાઉન્ટ પર બાહ્ય સ્ટોરેજને અક્ષમ કર્યું છે.</translation>
<translation id="7252661675567922360">લોડ કરશો નહીં</translation>
@@ -4465,7 +4483,7 @@
<translation id="7364796246159120393">ફાઇલ પસંદ કરો</translation>
<translation id="7364926055040539546">કોઇપણ મૂળનાં WebUSB ને મંજૂરી આપો.</translation>
<translation id="736515969993332243">નેટવર્ક્સ માટે સ્કેનિંગ.</translation>
-<translation id="7366762109661450129">જ્યારે સ્ક્રીન ચાલુ અને અનલૉક થયેલી હોય ત્યારે "ઑકે Google" કહો.</translation>
+<translation id="7366762109661450129">જ્યારે સ્ક્રીન ચાલુ અને અનલૉક થયેલી હોય ત્યારે "Ok Google" કહો.</translation>
<translation id="7369521049655330548">આ પૃષ્ઠ પર નીચેના પ્લગિન્સ અવરોધિત હતા:</translation>
<translation id="7371490661692457119">ડિફોલ્ટ ટાઇલ પહોળાઈ</translation>
<translation id="7372527722222052179">શૂન્ય-કૉપિ રાસ્ટરાઇઝરને સક્ષમ કરો</translation>
@@ -4590,9 +4608,9 @@
<translation id="7517786267097410259">એક પાસવર્ડ બનાવો -</translation>
<translation id="7518003948725431193">વેબ સરનામાં માટે કોઈ વેબપેજ મળ્યું નથી: <ph name="URL" /></translation>
<translation id="7518150891539970662">WebRTC લૉગ્સ (<ph name="WEBRTC_LOG_COUNT" />)</translation>
-<translation id="7518657099163789435">"ઑકે Google" નો ઉપયોગ કરવા માટે વૉઇસ અને ઑડિઓ સક્રિયતા જરૂરી છે</translation>
+<translation id="7518657099163789435">"Ok Google" નો ઉપયોગ કરવા માટે વૉઇસ અને ઑડિઓ સક્રિયતા જરૂરી છે</translation>
<translation id="7521387064766892559">JavaScript</translation>
-<translation id="7522255036471229694">"ઑકે Google" કહો</translation>
+<translation id="7522255036471229694">"Ok Google" કહો</translation>
<translation id="752397454622786805">નોંધણી રદ કરેલ</translation>
<translation id="7525067979554623046">બનાવો</translation>
<translation id="7529471622666797993"><ph name="BEGIN_LINK" />વિગતવાર ફોન્ટ સેટિંગ્સ<ph name="END_LINK" /> (એક્સ્ટેન્શનની જરૂર છે)</translation>
@@ -4766,8 +4784,8 @@
<translation id="7786207843293321886">અતિથિને બહાર નીકાળો</translation>
<translation id="7786889348652477777">એપ્લિકેશન &amp;ફરીથી લોડ કરો</translation>
<translation id="7787129790495067395">તમે હાલમાં એક પાસફ્રેઝનો ઉપયોગ કરી રહ્યા છો. જો તમે તમારો પાસફ્રેઝ ભૂલી ગયા છો, તો તમે Google Dashboard નો ઉપયોગ કરીને Googleના સર્વર્સ પરથી તમારા ડેટાને સાફ કરવા માટે સમન્વયનને ફરીથી સેટ કરી શકો છો.</translation>
-<translation id="7788080748068240085">"<ph name="FILE_NAME" />" ને ઓફલાઇન સાચવવા માટે તમારે વધુ <ph name="TOTAL_FILE_SIZE" /> સ્થાન ખાલી કરવું આવશ્યક છે:<ph name="MARKUP_1" />
- <ph name="MARKUP_2" />તમને હવે ઓફલાઇન ઍક્સેસ કરવાની જરૂર ન હોય તેવી ફાઇલોને અનપિન કરો<ph name="MARKUP_3" />
+<translation id="7788080748068240085">"<ph name="FILE_NAME" />" ને ઑફલાઇન સાચવવા માટે તમારે વધુ <ph name="TOTAL_FILE_SIZE" /> સ્થાન ખાલી કરવું આવશ્યક છે:<ph name="MARKUP_1" />
+ <ph name="MARKUP_2" />તમને હવે ઑફલાઇન ઍક્સેસ કરવાની જરૂર ન હોય તેવી ફાઇલોને અનપિન કરો<ph name="MARKUP_3" />
<ph name="MARKUP_4" />તમારા ડાઉનલોડ્સ ફોલ્ડરમાંથી ફાઇલો કાઢી નાખો<ph name="MARKUP_5" /></translation>
<translation id="7788444488075094252">ભાષાઓ અને ઇનપુટ</translation>
<translation id="7788668840732459509">સ્થિતિ:</translation>
@@ -4838,7 +4856,7 @@
<translation id="7880836220014399562">"<ph name="BUNDLE_NAME" />" આ એપ્લિકેશનો અને એક્સટેન્શન્સ ઉમેરે છે:</translation>
<translation id="7885253890047913815">તાજેતરનાં ગંતવ્યો</translation>
<translation id="7885283703487484916">ખૂબ જ ટૂંકો</translation>
-<translation id="7887192723714330082">જ્યારે સ્ક્રીન ચાલુ અને અનલૉક કરેલી હોય ત્યારે "ઑકે Google" સાથે જવાબ આપો</translation>
+<translation id="7887192723714330082">જ્યારે સ્ક્રીન ચાલુ અને અનલૉક કરેલી હોય ત્યારે "Ok Google" સાથે જવાબ આપો</translation>
<translation id="7887334752153342268">ડુપ્લિકેટ</translation>
<translation id="7887864092952184874">Bluetooth માઉસની જોડી બનાવી</translation>
<translation id="7892100671754994880">આગલા વપરાશકર્તા</translation>
@@ -4977,7 +4995,7 @@
<translation id="806705617346045388">અસામાન્ય વર્તન મળ્યું</translation>
<translation id="806812017500012252">શીર્ષકથી પુનઃક્રમાંકિત કરો</translation>
<translation id="8069615408251337349">Google મેઘ મુદ્રણ</translation>
-<translation id="8071942001314758122">માત્ર ત્રણ વખત "ઑકે Google" કહો</translation>
+<translation id="8071942001314758122">માત્ર ત્રણ વખત "Ok Google" કહો</translation>
<translation id="8072988827236813198">ટૅબ્સ પિન કરો</translation>
<translation id="8075539548641175231">તમારો ડેટા <ph name="TIME" /> ના રોજ તમારા સમન્વયન પાસફ્રેઝ સાથે એન્ક્રિપ્ટ કરાયો છે. કૃપા કરી તેને નીચે દાખલ કરો.</translation>
<translation id="8083739373364455075">Google ડ્રાઇવ સાથે 100 GB મફત મેળવો</translation>
@@ -5065,6 +5083,7 @@
<translation id="8190193592390505034"><ph name="PROVIDER_NAME" /> થી કનેક્ટ કરે છે</translation>
<translation id="8191230140820435481">તમારી એપ્લિકેશનો, એક્સ્ટેન્શન અને થીમ્સ મેનેજ કરો</translation>
<translation id="8191453843330043793">V8 પ્રોક્સી રિઝોલ્વર</translation>
+<translation id="8199491812735365610">લોગિન કરવા માટે એકાઉન્ટ પસંદ કરો</translation>
<translation id="8200772114523450471">રિઝ્યુમે</translation>
<translation id="8202160505685531999">તમારી <ph name="DEVICE_TYPE" /> પ્રોફાઇલને અપડેટ કરવા માટે કૃપા કરીને તમારો પાસવર્ડ ફરીથી દાખલ કરો.</translation>
<translation id="8204086856545141093">સર્વર પરની વિનંતીઓને નીતિ દ્વારા અવરોધિત કરવામાં આવી છે.</translation>
@@ -5086,7 +5105,7 @@
<translation id="8217399928341212914">બહુવિધ ફાઇલો આપમેળે ડાઉનલોડ કરવું અવરોધિત કરવાનું ચાલુ રાખો</translation>
<translation id="8221729492052686226">જો તમે આ વિનંતી કરી નહોતી, તો તે તમારા સિસ્ટમ પર હુમલાનો પ્રયાસ હોઈ શકે છે. જ્યાં સુધી તમે આ વિનંતી કરવા માટે કોઈ સ્પષ્ટ પગલું ન લો ત્યાં સુધી તમારે, 'કંઈ ન કરો' દબાવવું જોઈએ.</translation>
<translation id="8222121761382682759">અનઇન્સ્ટોલ કરો...</translation>
-<translation id="8223479393428528563">ઓફલાઇન વપરાશ માટે આ ફાઇલો સાચવવા, પાછા ઓનલાઇન થાઓ, ફાઇલો પર જમણી ક્લિક કરો અને <ph name="OFFLINE_CHECKBOX_NAME" /> વિકલ્પ પસંદ કરો.</translation>
+<translation id="8223479393428528563">ઑફલાઇન વપરાશ માટે આ ફાઇલો સાચવવા, પાછા ઓનલાઇન થાઓ, ફાઇલો પર જમણી ક્લિક કરો અને <ph name="OFFLINE_CHECKBOX_NAME" /> વિકલ્પ પસંદ કરો.</translation>
<translation id="82239625576146587">નવું કોરિયન IME અક્ષમ કરો.</translation>
<translation id="8226222018808695353">પ્રતિબંધિત</translation>
<translation id="8226742006292257240">નીચે રેંડમલી બનાવેલો TPM પાસવર્ડ છે જે તમારા કમ્પ્યુટરને અસાઇન કરવામાં આવ્યો છે:</translation>
@@ -5143,7 +5162,7 @@
<translation id="8297222119869486204">'વિંડો-નિયંત્રણો' ઘટક સક્ષમ કરો</translation>
<translation id="8298115750975731693">તમે ઉપયોગ કરી રહ્યાં છો તે Wi-Fi (<ph name="WIFI_NAME" />) ને <ph name="BEGIN_BOLD" /><ph name="LOGIN_URL" /><ph name="END_BOLD" /> ની મુલાકાત લેવાની જરૂર પડી શકે છે.</translation>
<translation id="8299269255470343364">જાપાનીઝ</translation>
-<translation id="8299319456683969623">તમે હાલમાં ઓફલાઇન છો.</translation>
+<translation id="8299319456683969623">તમે હાલમાં ઑફલાઇન છો.</translation>
<translation id="8300259894948942413">ટચ ખેંચો અને છોડો એક ખેંચવાયોગ્ય તત્વ પર દબાવી રાખીને શરૂ કરી શકાય છે.</translation>
<translation id="8300607741108698921">1-મિનિટ સેટઅપ</translation>
<translation id="8302838426652833913">તમારા કનેક્શનને તપાસવા માટે
@@ -5196,6 +5215,8 @@
<translation id="8381977081675353473">સ્લોવેકિયન</translation>
<translation id="8382645631174981738"><ph name="EXTENSION_NAME" /> રિમોટ્લી ઇન્સ્ટોલ કર્યું હતું</translation>
<translation id="8382913212082956454">&amp;ઇમેઇલ સરનામું કૉપિ કરો</translation>
+<translation id="8384113940676655504">Smart Lock સેટિંગ સક્ષમ કરે છે જે Chromebook ને અનલોક કરવા માટે જ્યારે ફોન
+તેની નજીકમાં હોય ત્યારે Bluetooth ન્યૂન ઊર્જા પર ફોનને શોધવા માટે Chromebook ને મંજૂરી આપે છે.</translation>
<translation id="8390029840652165810">કૃપા કરીને ખાતરી કરો કે તમારું નેટવર્ક કનેક્શન કામ કરી રહ્યું છે અને જો સમસ્યા ચાલુ રહે છે, તો કૃપા કરીને સાઇન આઉટ કરો અને ઓળખપત્રને તાજા કરવા માટે ફરીથી સાઇન ઇન કરો.</translation>
<translation id="8390445751804042000">કેટલાક નેટવર્ક પૅકેટ્સની પ્રાપ્તિના આધારે ઉપકરણને સક્રિય કરવાનું સક્ષમ કરે છે.</translation>
<translation id="8390449457866780408">સર્વર અનુપલબ્ધ.</translation>
@@ -5272,7 +5293,7 @@
<translation id="8493236660459102203">માઇક્રોફોન:</translation>
<translation id="8494214181322051417">નવું!</translation>
<translation id="8494979374722910010">સર્વર સાથે કનેક્ટ થવાનો પ્રયાસ નિષ્ફળ થયો છે.</translation>
-<translation id="8495193314787127784">"ઑકે Google" સક્ષમ કરો</translation>
+<translation id="8495193314787127784">"Ok Google" સક્ષમ કરો</translation>
<translation id="8496717697661868878">આ પ્લગિન ચલાવો</translation>
<translation id="8497392509610708671">તમે કોઇપણ સમયે આને <ph name="BEGIN_LINK" />Chrome સેટિંગ્સ<ph name="END_LINK" />માં બદલાવી શકો છો.</translation>
<translation id="8498716162437226120">Bluetooth ઉપકરણ ઉમેરો</translation>
@@ -5282,6 +5303,7 @@
<translation id="8509646642152301857">જોડણી તપાસ ડાઉનલોડ કરવાનું નિષ્ફળ ગયું.</translation>
<translation id="8512476990829870887">પ્રક્રિયાનો અંત કરો</translation>
<translation id="851263357009351303"><ph name="HOST" /> ને હંમેશા છબી બતાવવાની મંજૂરી આપો</translation>
+<translation id="8513191386157529469">"<ph name="CLIENT_NAME" />" આ બ્રાઉઝરને ડીબગ કરી રહ્યું છે.</translation>
<translation id="8513974249124254369">ChromeVox (બોલાયેલ પ્રતિસાદ) સક્ષમ છે. અક્ષમ કરવા માટે Ctrl+Alt+Z દબાવો.</translation>
<translation id="8515737884867295000">પ્રમાણપત્ર-આધારિત પ્રમાણીકરણ નિષ્ફળ થયું</translation>
<translation id="8518865679229538285">તમિળ ઇનપુટ પદ્ધતિ (Typewriter)</translation>
@@ -5322,7 +5344,7 @@
<translation id="8569764466147087991">ખોલવા માટે એક ફાઇલ પસંદ કરો</translation>
<translation id="856992080682148">આ સાઇટ માટેનું પ્રમાણપત્ર 2017 માં સમાપ્ત થાય છે અને પ્રમાણપત્ર શ્રૃંખલા SHA-1 નો ઉપયોગ કરીને સહી કરેલ પ્રમાણપત્ર ધરાવે છે.</translation>
<translation id="8570618730045879048">એક મેન્યુઅલ બ્લેકલિસ્ટ એન્ટ્રીને લીધે આ સાઇટ અવરોધિત કરી હતી.</translation>
-<translation id="8571032220281885258">જ્યારે તમે "ઑકે Google" કહો છો, ત્યારે તમે પછી જે કહો છો Chrome તેની શોધ કરશે.</translation>
+<translation id="8571032220281885258">જ્યારે તમે "Ok Google" કહો છો, ત્યારે તમે પછી જે કહો છો Chrome તેની શોધ કરશે.</translation>
<translation id="8571108619753148184">સર્વર 4</translation>
<translation id="8572832761467613633">માત્ર Flash</translation>
<translation id="8572981282494768930">સાઇટ્સને તમારા કૅમેરા અને માઇક્રોફોનને ઍક્સેસ કરવાની મંજૂરી આપશો નહીં</translation>
@@ -5401,6 +5423,7 @@
<translation id="8677039480012021122">ડેટા સાફ કરો અને ડિસ્કનેક્ટ કરો</translation>
<translation id="8677212948402625567">બધાને સંકુચિત કરો...</translation>
<translation id="8678648549315280022">ડાઉનલોડ સેટિંગ્સ સંચાલિત કરો ...</translation>
+<translation id="8680251145628383637">તમારા તમામ ઉપકરણો પર તમારા બુકમાર્ક્સ, ઇતિહાસ, પાસવર્ડ્સ અને અન્ય સેટિંગ્સ મેળવવા માટે સાઇન ઇન કરો. તમે તમારી Google સેવાઓ પર આપમેળે સાઇન ઇન પણ થશો.</translation>
<translation id="8680536109547170164"><ph name="QUERY" />, જવાબ, <ph name="ANSWER" /></translation>
<translation id="8680787084697685621">એકાઉન્ટ સાઇન-ઇન વિગતો જૂની થઈ ગઈ છે.</translation>
<translation id="8684255857039823328">પાસવર્ડ સાચવ્યો. <ph name="MANAGEMENT_LINK" /> પર કોઈપણ ઉપકરણથી તમારા પાસવર્ડ્સને અ‍ૅક્સેસ કરો.</translation>
@@ -5456,6 +5479,7 @@
<translation id="874420130893181774">પરંપરાગત પિનયિન ઇનપુટ પદ્ધતિ</translation>
<translation id="8744525654891896746">આ નિરીક્ષિત વપરાશકર્તા માટે એક અવતાર પસંદ કરો</translation>
<translation id="8744641000906923997">રોમાજી</translation>
+<translation id="8744959718895556609">તમારા <ph name="LINK_TEXT" /> માંથી એકાઉન્ટ પસંદ કરો</translation>
<translation id="8749863574775030885">અજાણ્યા વિક્રેતા પાસેથી USB ઉપકરણો ઍક્સેસ કરો</translation>
<translation id="8754200782896249056">&lt;p&gt;જ્યારે સમર્થિત ડેસ્કટૉપ વાતાવરણની અંતર્ગત <ph name="PRODUCT_NAME" /> ચલાવી રહ્યા હોય, ત્યારે સિસ્ટમ પ્રોક્સી સેટિંગ્સ ઉપયોગમાં લેવાશે. તેમ છતાં, ક્યાં તો તમારી સિસ્ટમ સમર્થિત નથી અથવા તમારી સિસ્ટમ ગોઠવણીને લોંચ કરવામાં કોઈ સમસ્યા છે.&lt;/p&gt;
@@ -5575,6 +5599,7 @@
<translation id="8933960630081805351">ફાઇન્ડર માં &amp;બતાવો</translation>
<translation id="8934732568177537184">ચાલુ રાખો</translation>
<translation id="8938356204940892126">હું હાર માનું છું</translation>
+<translation id="8938800817013097409">USB-C ઉપકરણ (પાછળની બાજુએ જમણું પોર્ટ)</translation>
<translation id="8940081510938872932">તમારું કમ્પ્યુટર હમણાં ઘણી વસ્તુઓ કરી રહ્યું છે. થોડીવાર પછી ફરી પ્રયાસ કરો.</translation>
<translation id="8941173171815156065">પરવાનગી પાછી ખેંચો '<ph name="PERMISSION" />'</translation>
<translation id="8941248009481596111">આ સાઇટ પરનું તમારું કનેક્શન ખાનગી છે.</translation>
diff --git a/chromium/chrome/app/resources/generated_resources_hi.xtb b/chromium/chrome/app/resources/generated_resources_hi.xtb
index 23807389ed3..db961a99c82 100644
--- a/chromium/chrome/app/resources/generated_resources_hi.xtb
+++ b/chromium/chrome/app/resources/generated_resources_hi.xtb
@@ -136,6 +136,8 @@
<translation id="1178581264944972037">पॉज़ करें</translation>
<translation id="1179803038870941185"><ph name="URL" /> आपके MIDI डिवाइस का पूर्ण नियंत्रण प्राप्त करना चाहता है.</translation>
<translation id="1181037720776840403">निकालें</translation>
+<translation id="11814323404622888">"&gt;
+ USB-C डिवाइस (दायां पिछला पोर्ट)</translation>
<translation id="1183083053288481515">व्यवस्थापक द्वारा प्रदत्त प्रमाणपत्र का उपयोग किया जा रहा है</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>
@@ -330,6 +332,7 @@
<translation id="1468038450257740950">WebGL समर्थित नहीं है.</translation>
<translation id="1470719357688513792">पृष्ठ के फिर से लोड होने के बाद नई कुकी सेटिंग प्रभावी होगी.</translation>
<translation id="14720830734893704">आभासी कीबोर्ड सहायता सक्षम करें.</translation>
+<translation id="1474079335130556426">Push API के लिए पृष्‍ठभूमि मोड सक्षम करें. इससे Push API को आवश्‍यकता होने पर, Chrome को पिछली विंडो बंद होने के बाद चलते रहने में, OS स्‍टार्टअप पर लॉन्‍च होने में सहायता मिलती है.</translation>
<translation id="1474339897586437869">"<ph name="FILENAME" />" को अपलोड नहीं किया गया. आपकी Google डिस्क में पर्याप्त जगह नहीं है.</translation>
<translation id="1476503841242751994">{COUNT,plural, =1{1 पासवर्ड}one{# पासवर्ड}other{# पासवर्ड}}</translation>
<translation id="1476949146811612304"><ph name="BEGIN_LINK" />ऑम्निबॉक्‍स<ph name="END_LINK" /> से खोजते समय उपयोग किया जाने वाला खोज इंजन सेट करें.</translation>
@@ -657,6 +660,7 @@
<translation id="1918141783557917887">&amp;छोटा</translation>
<translation id="192144045824434199">ब्राउज़र फ़्रेम के बाहर खुलने वाले फलक विंडो सक्षम करें. यदि सक्षम नहीं हो, तो फलक को खोलने का प्रयास करने पर फलक के बजाय पॉपअप खुल जाएगा. फलक हमेशा ही डेवलपर और कैनरी चैनल पर सक्षम किए हुए होते हैं.</translation>
<translation id="1921584744613111023"><ph name="DPI" /> dpi</translation>
+<translation id="1921986354447415460">तुर्की-F कीबोर्ड</translation>
<translation id="1923786009776354244">WebRTC Stun मूल शीर्षक को सक्षम करें.</translation>
<translation id="1926741348654461781">ऑफ़लाइन पृष्ठ सक्षम करें</translation>
<translation id="1929546189971853037">अपने प्रवेश किए हुए सभी डिवाइस पर अपना ब्राउज़िंग इतिहास पढ़ें</translation>
@@ -861,6 +865,7 @@
<translation id="2231990265377706070">विस्मयाधिबोधक</translation>
<translation id="2232876851878324699">फ़ाइल में एक प्रमाणपत्र था, जिसे आयात नहीं किया था:</translation>
<translation id="2233502537820838181">&amp;अधिक जानकारी</translation>
+<translation id="2233587473672843170">नया टैब पृष्‍ठ पर लोकप्रिय साइटें दिखाएं</translation>
<translation id="223714078860837942">यदि किसी पृष्‍ठ ने कोई स्‍पष्‍ट रेफ़रर नीति सेट नहीं की है, तो इस फ़्लैग को सेट करने से क्रॉस-मूल अनुरोधों के लिए 'रेफ़रर' शीर्षक की जानकारी की मात्रा कम हो जाएगी.</translation>
<translation id="2238379619048995541">आवृत्ति स्थिति डेटा</translation>
<translation id="2239921694246509981">पर्यवेक्षित व्‍यक्‍ति जोड़ें</translation>
@@ -939,6 +944,7 @@
<translation id="2326606747676847821">गुप्त मोड में जाएं</translation>
<translation id="2326931316514688470">&amp;ऐप पुन: लोड करें</translation>
<translation id="2327492829706409234">ऐप्स सक्षम करें</translation>
+<translation id="2329597144923131178">सभी डिवाइसों पर बुकमार्क, इतिहास, पासवर्ड और अन्‍य सेटिंग प्राप्‍त करने हेतु प्रवेश करें.</translation>
<translation id="2332131598580221120">स्टोर में देखें</translation>
<translation id="2332742915001411729">डिफ़ॉल्ट पर रीसेट करें</translation>
<translation id="2335122562899522968">यह पृष्ठ कुकी सेट करता है.</translation>
@@ -1327,6 +1333,7 @@
<translation id="2838379631617906747">इंस्‍टॉल कर रहा है</translation>
<translation id="2841837950101800123">प्रदाता</translation>
<translation id="2843806747483486897">डिफ़ॉल्ट बदलें...</translation>
+<translation id="2844169650293029770">USB-C डिवाइस (बायां सामने वाला पोर्ट)</translation>
<translation id="2845382757467349449">बुकमार्क बार हमेशा दिखाएं</translation>
<translation id="2846816712032308263">टैब/विंडो को त्वरित रूप से बंद करना सक्षम बनाती है - किसी टैब के ऑनअनलोड js हैंडलर को GUI से स्वतंत्र रूप से चलाती है.</translation>
<translation id="284970761985428403"><ph name="ASCII_NAME" /> (<ph name="UNICODE_NAME" />)</translation>
@@ -1394,6 +1401,7 @@
<translation id="2923469375796950815">नए ज़िप अनपैकर को अक्षम करें.</translation>
<translation id="2924296707677495905">लिप्यंतरण (namaskaram → ನಮಸ್ಕಾರ)</translation>
<translation id="2925966894897775835">पत्रक</translation>
+<translation id="2927017729816812676">संचय मेमोरी</translation>
<translation id="2927657246008729253">बदलें...</translation>
<translation id="2928526264833629376">Hangouts पर जारी रखें</translation>
<translation id="2930644991850369934">पुनर्प्राप्ति चित्र डाउनलोड करते समय समस्या आई थी. नेटवर्क कनेक्शन टूट गया है.</translation>
@@ -1736,6 +1744,7 @@
<translation id="3396331542604645348">चयनित प्रिंटर उपलब्‍ध नहीं है या ठीक से इंस्‍टॉल नहीं किया गया है. अपना प्रिंटर जांचें या किसी अन्‍य प्रिंटर का चयन करने का प्रयास करें.</translation>
<translation id="3399597614303179694">मकदूनियाई कीबोर्ड</translation>
<translation id="340013220407300675">हो सकता है हमलावर <ph name="BEGIN_BOLD" /><ph name="SITE" /><ph name="END_BOLD" /> से आपकी जानकारी चुराने का प्रयास कर रहे हों (उदाहरण के लिए पासवर्ड, संदेश या क्रेडिट कार्ड).</translation>
+<translation id="3401130144947259741">यदि सक्षम हो, तो ट्रेस ईवेंट Windows के लिए ईवेंट ट्रेसिंग (ETW) पर निर्यात किए जाते हैं और उसके बाद UIForETW या Xperf जैसे टूल द्वारा कैप्‍चर किए जा सकते हैं.</translation>
<translation id="340282674066624"><ph name="DOWNLOAD_RECEIVED" />, <ph name="TIME_LEFT" /></translation>
<translation id="3406605057700382950">बुकमार्क बार &amp;दिखाएं</translation>
<translation id="3412265149091626468">चयन पर जाएं</translation>
@@ -1896,6 +1905,7 @@
<translation id="3603385196401704894">कनाडाई फ़्रेंच</translation>
<translation id="3603622770190368340">नेटवर्क प्रमाणपत्र प्राप्त करें</translation>
<translation id="3605780360466892872">बटनडाउन</translation>
+<translation id="3606220979431771195">तुर्की-F</translation>
<translation id="3608454375274108141">F10</translation>
<translation id="3608576286259426129">उपयोगकर्ता चित्र पूर्वावलोकन</translation>
<translation id="3609138628363401169">सर्वर, TLS फिर से मध्यस्थता विस्तार का समर्थन नहीं करता है.</translation>
@@ -2415,6 +2425,7 @@
<translation id="4321136812570927563">{NUM_DOWNLOAD,plural, =1{डाउनलोड जारी रखें}one{डाउनलोड जारी रखें}other{डाउनलोड जारी रखें}}</translation>
<translation id="4321179778687042513">ctrl</translation>
<translation id="4322394346347055525">अन्य टैब बंद करें</translation>
+<translation id="4325378361067528777">Push API पृष्‍ठभूमि मोड सक्षम करें</translation>
<translation id="4326952458285403282">प्रयोगात्मक DirectWrite फ़ॉन्ट रेंडरिंग सिस्टम का उपयोग अक्षम करती है.</translation>
<translation id="4326999707196471878">टूलकिट-दृश्य ब्राउज़र संवाद.</translation>
<translation id="4330406155931244378">बहुभाषी वर्तनी-जांचकर्ता सक्षम करना</translation>
@@ -2949,6 +2960,8 @@
<translation id="5148652308299789060">3D सॉफ़्टवेयर रेस्‍टराइज़र अक्षम करें</translation>
<translation id="5150254825601720210">Netscape प्रमाणपत्र SSL सर्वर नाम</translation>
<translation id="5151034238407558331">दुर्भाग्य से, Google पेमेंट्स का केवल इस व्यापारी पर यूएस के पते वाले खरीदारों द्वारा उपयोग किया जा सकता है. यदि आप यूएस के निवासी हैं, तो कृपया |Google पेमेंट्स वाला अपना घर का पता बदलें| या Google पेमेंट्स का उपयोग किए बिना भुगतान करें.</translation>
+<translation id="5151639798712723370">"&gt;
+ USB-C डिवाइस (दायां सामने वाला पोर्ट)</translation>
<translation id="5152451685298621771">(बच्‍चों के लिए खाता)</translation>
<translation id="5154108062446123722"><ph name="PRINTING_DESTINATION" /> के लिए अतिरिक्त सेटिंग</translation>
<translation id="5154176924561037127">F8</translation>
@@ -3047,6 +3060,7 @@
<translation id="5271247532544265821">सरलीकृत/पारंपरिक चीनी मोड टॉगल करें</translation>
<translation id="5271549068863921519">पासवर्ड सहेजें</translation>
<translation id="5273628206174272911">क्षैतिज ओवरस्क्रॉल के उत्तर में प्रयोगात्मक इतिहास मार्गदर्शक.</translation>
+<translation id="5275795814002959418">इस साइट से <ph name="COUNT" /></translation>
<translation id="5275973617553375938">Google डिस्क से पुनर्प्राप्त की गई फ़ाइलें</translation>
<translation id="527605719918376753">टैब म्‍यूट करना</translation>
<translation id="527605982717517565"><ph name="HOST" /> पर JavaScript को हमेशा अनुमति दें</translation>
@@ -3093,6 +3107,7 @@
<translation id="5328285148748012771">इस आसान लॉन्चर से अपने सभी ऐप्स एक्सेस करें. गेम खेलें, वीडियो चैट करें, संगीत सुनें, दस्तावेज़ संपादित करें, या Chrome वेब स्टोर से और अधिक ऐप्स प्राप्त करें.</translation>
<translation id="5329858601952122676">&amp;हटाएं</translation>
<translation id="5330145655348521461">ये फ़ाइलें किसी अलग डेस्कटॉप पर खुली हैं. उसे देखने के लिए <ph name="USER_NAME" /> (<ph name="MAIL_ADDRESS" />) पर जाएं.</translation>
+<translation id="5331975486040154427">USB-C डिवाइस (बायां पिछला पोर्ट)</translation>
<translation id="5332624210073556029">समय क्षेत्र:</translation>
<translation id="5334142896108694079">स्क्रिप्ट संचय</translation>
<translation id="533433379391851622">अपेक्षित वर्शन "<ph name="EXPECTED_VERSION" />" है, लेकिन वर्शन "<ph name="NEW_ID" />" था.</translation>
@@ -3139,6 +3154,7 @@
<translation id="539755880180803351">वेब फ़ॉर्म पर स्वतः-भरण फ़ील्‍ड प्रकार के पूर्वानुमानों के साथ प्‍लेसहोल्‍डर टेक्‍स्‍ट के रूप में टिप्पणी करता है.</translation>
<translation id="5397578532367286026">इस उपयोगकर्ता के उपयोग और इतिहास की प्रबंधक (<ph name="MANAGER_EMAIL" />) द्वारा chrome.com पर समीक्षा की जा सकती है.</translation>
<translation id="5397794290049113714">आप</translation>
+<translation id="5398824043967640339">अन्‍य साइटों से <ph name="COUNT" /></translation>
<translation id="5399158067281117682">पिन मेल नहीं खाते!</translation>
<translation id="5400640815024374115">विश्वसनीय प्लेटफ़ॉर्म मॉड्यूल (TPM) चिप अक्षम या अनुपस्‍थित है.</translation>
<translation id="5402367795255837559">ब्रेल</translation>
@@ -3965,6 +3981,7 @@
<translation id="6575251558004911012">जब किसी साइट को आपका कैमरा एक्सेस करना हो तो पूछें (सुझाये गये) </translation>
<translation id="6581162200855843583">Google डिस्क लिंक</translation>
<translation id="6583070985841601920"><ph name="USER_EMAIL_ADDRESS" /> के रूप में प्रवेश हैं. समन्वयन आपके व्यवस्थापक द्वारा अक्षम किया गया है.</translation>
+<translation id="65832705307647870">नया टैब पृष्‍ठ को लोकप्रिय साइटों के साथ प्री-पॉप्‍युलेट करें.</translation>
<translation id="6584878029876017575">Microsoft Lifetime Signing</translation>
<translation id="6585234750898046415">साइन-इन स्‍क्रीन पर अपने खाते के लिए प्रदर्शित करने के लिए कोई चित्र चुनें.</translation>
<translation id="6585283250473596934">सार्वजनिक सत्र में प्रवेश कर रहा है.</translation>
@@ -4314,6 +4331,7 @@
<translation id="7092106376816104">पॉप-अप अपवाद</translation>
<translation id="7093866338626856921"><ph name="HOSTNAMES" /> नामक डिवाइस से डेटा का आदान-प्रदान करें</translation>
<translation id="7096082900368329802">अधिक शानदार सुविधाओं के बारे में जानना चाहते हैं?</translation>
+<translation id="7098389117866926363">USB-C डिवाइस (पीछे बायां पोर्ट)</translation>
<translation id="7100897339030255923"><ph name="COUNT" /> आइटम चयनित</translation>
<translation id="7106346894903675391">अधिक मेमोरी खरीदें...</translation>
<translation id="7108338896283013870">छुपाएं</translation>
@@ -5089,6 +5107,7 @@
<translation id="8190193592390505034"><ph name="PROVIDER_NAME" /> से कनेक्‍ट हो रहा है</translation>
<translation id="8191230140820435481">अपने ऐप्स , एक्सटेंशन, और थीम प्रबंधित करें</translation>
<translation id="8191453843330043793">V8 प्राॅक्‍सी रिज़ॉल्‍वर</translation>
+<translation id="8199491812735365610">प्रवेश करने के लिए कोई खाता चुनें</translation>
<translation id="8200772114523450471">फिर से शुरू करें</translation>
<translation id="8202160505685531999">अपनी <ph name="DEVICE_TYPE" /> प्रोफ़ाइल अपडेट करने के लिए कृपया अपना पासवर्ड पुनः डालें.</translation>
<translation id="8204086856545141093">सर्वर को किए जाने वाले अनुरोधों को किसी नीति द्वारा अवरोधित कर दिया गया है.</translation>
@@ -5219,6 +5238,7 @@
<translation id="8381977081675353473">स्लोवाकियाई</translation>
<translation id="8382645631174981738"><ph name="EXTENSION_NAME" /> को दूरस्थ रूप से इंस्टॉल किया गया था</translation>
<translation id="8382913212082956454">ईमेल पते की प्रतिलिपि बनाएं</translation>
+<translation id="8384113940676655504">यह एक Smart Lock सेटिंग को सक्षम करता है जो Chromebook को ब्लूटूथ निम्न ऊर्जा पर स्थित फ़ोन को खोजने देती है ताकि फ़ोन के नज़दीक होने पर Chromebook को अनलॉक किया जा सके.</translation>
<translation id="8390029840652165810">कृपया सुनिश्चित करें कि आपका नेटवर्क कनेक्शन कार्य कर रहा है और यदि समस्या बनी रहती है, तो कृपया अपने प्रमाणिकता रीफ्रेश करने के लिए प्रस्थान करें और पुन: प्रवेश करें.</translation>
<translation id="8390445751804042000">कुछ नेटवर्क पैकेट की प्राप्‍ति के आधार पर डिवाइस चालू करना सक्षम करता है.</translation>
<translation id="8390449457866780408">सर्वर अनुपलब्‍ध है.</translation>
@@ -5305,6 +5325,7 @@
<translation id="8509646642152301857">वर्तनी जांच शब्दकोश डाउनलोड विफल रहा.</translation>
<translation id="8512476990829870887">प्रक्रिया समाप्त करें</translation>
<translation id="851263357009351303"><ph name="HOST" /> को हमेशा चित्र दिखाने की अनुमति दें</translation>
+<translation id="8513191386157529469">"<ph name="CLIENT_NAME" />" इस ब्राउज़र को डीबग कर रहा है.</translation>
<translation id="8513974249124254369">ChromeVox (बोला गया फ़ीडबैक) सक्षम है. अक्षम करने के लिए Ctrl+Alt+Z दबाएं.</translation>
<translation id="8515737884867295000">प्रमाणपत्र-आधारित प्रमाणीकरण विफल</translation>
<translation id="8518865679229538285">तमिल इनपुट विधि (टाइपराइटर)</translation>
@@ -5424,6 +5445,7 @@
<translation id="8677039480012021122">डेटा साफ़ करें और डिस्कनेक्ट करें</translation>
<translation id="8677212948402625567">सभी संक्षिप्त करें...</translation>
<translation id="8678648549315280022">डाउनलोड सेटिंग प्रबंधित करें...</translation>
+<translation id="8680251145628383637">अपने सभी डिवाइसों पर अपने बुकमार्क, इतिहास, पासवर्ड और अन्‍य सेटिंग प्राप्‍त करने के लिए प्रवेश करें. आप अपनी Google सेवाओं में भी अपने आप प्रवेश कर जाएंगे.</translation>
<translation id="8680536109547170164"><ph name="QUERY" />, उत्तर, <ph name="ANSWER" /></translation>
<translation id="8680787084697685621">खाता साइन-इन विवरण पुराने हैं.</translation>
<translation id="8684255857039823328">पासवर्ड सहेजा गया. अपने पासवर्ड को किसी भी डिवाइस से <ph name="MANAGEMENT_LINK" /> पर ऐक्सेस करें.</translation>
@@ -5479,6 +5501,7 @@
<translation id="874420130893181774">पारंपरिक पिनयिन इनपुट पद्धति</translation>
<translation id="8744525654891896746">इस पर्यवेक्षित उपयोगकर्ता के लिए कोई अवतार चुनें</translation>
<translation id="8744641000906923997">रोमाजी</translation>
+<translation id="8744959718895556609">अपने <ph name="LINK_TEXT" /> से कोई खाता चुनें</translation>
<translation id="8749863574775030885">किसी अज्ञात विक्रेता के USB डिवाइस ऐक्‍सेस करें</translation>
<translation id="8754200782896249056">&lt;p&gt;किसी समर्थित डेस्कटॉप वातावरण के अंतर्गत <ph name="PRODUCT_NAME" /> चलाते समय, सिस्टम प्रॉक्सी सेटिंग का उपयोग किया जाएगा. हालांकि, या तो आपका सिस्टम समर्थित नहीं है या आपके सिस्टम कॉन्फ़िगरेशन को लॉन्च करने में कोई समस्या थी.&lt;/p&gt;
@@ -5599,6 +5622,7 @@
<translation id="8933960630081805351">खोजकर्ता में &amp;दिखाएं</translation>
<translation id="8934732568177537184">जारी रखें</translation>
<translation id="8938356204940892126">मैंने छोड़ दिया</translation>
+<translation id="8938800817013097409">USB-C डिवाइस (पीछे की ओर दायां पोर्ट)</translation>
<translation id="8940081510938872932">आपका कंप्‍यूटर इस समय बहुत सी चीज़ें कर रहा है. बाद में पुन: प्रयास करें.</translation>
<translation id="8941173171815156065">अनुमति '<ph name="PERMISSION" />' को निरस्‍त करें</translation>
<translation id="8941248009481596111">इस साइट से आपका कनेक्‍शन निजी है.</translation>
diff --git a/chromium/chrome/app/resources/generated_resources_hr.xtb b/chromium/chrome/app/resources/generated_resources_hr.xtb
index 052086ca045..a32859f6e37 100644
--- a/chromium/chrome/app/resources/generated_resources_hr.xtb
+++ b/chromium/chrome/app/resources/generated_resources_hr.xtb
@@ -136,6 +136,8 @@
<translation id="1178581264944972037">Pauziraj</translation>
<translation id="1179803038870941185"><ph name="URL" /> želi dobiti potpuni nadzor nad vašim MIDI uređajima.</translation>
<translation id="1181037720776840403">Ukloni</translation>
+<translation id="11814323404622888">"&gt;
+ USB-C uređaj (stražnji desni priključak)</translation>
<translation id="1183083053288481515">Upotreba certifikata koji je izdao administrator</translation>
<translation id="1183237619868651138">Nije moguća instalacija datoteke <ph name="EXTERNAL_CRX_FILE" /> u lokalnu predmemoriju.</translation>
<translation id="1185924365081634987">Možete pokušati <ph name="GUEST_SIGNIN_LINK_START" />pregledavati kao gost<ph name="GUEST_SIGNIN_LINK_END" /> da biste riješili tu mrežnu pogrešku.</translation>
@@ -329,6 +331,7 @@
<translation id="1468038450257740950">WebGL nije podržan.</translation>
<translation id="1470719357688513792">Nove postavke kolačića postat će aktivne nakon ponovnog učitavanja stranice.</translation>
<translation id="14720830734893704">Omogućuje podršku za virtualnu tipkovnicu.</translation>
+<translation id="1474079335130556426">Omogućuje pozadinski način za Push API. Time se Chromeu omogućuje nastavak izvođenja nakon zatvaranja posljednjeg prozora i pokretanje prilikom pokretanja operativnog sustava ako to Push API zahtijeva.</translation>
<translation id="1474339897586437869">Datoteka "<ph name="FILENAME" />" nije prenesena. Nema dovoljno slobodnog prostora na Google disku.</translation>
<translation id="1476503841242751994">{COUNT,plural, =1{1 zaporka}one{# zaporka}few{# zaporke}other{# zaporki}}</translation>
<translation id="1476949146811612304">Postavljanje odabira tražilica koje će se upotrebljavati kod pretraživanja iz <ph name="BEGIN_LINK" />višenamjenskog okvira<ph name="END_LINK" />.</translation>
@@ -653,6 +656,7 @@
<translation id="1918141783557917887">&amp;Manji</translation>
<translation id="192144045824434199">Omogućavanje prozora ploče koji se otvaraju izvan okvira preglednika. Kod pokušaja otvaranja ploče, ako je ploča onemogućena, otvorit će se skočni prozor. Ploče su uvijek omogućene na kanalima dev i canary.</translation>
<translation id="1921584744613111023"><ph name="DPI" /> dpi</translation>
+<translation id="1921986354447415460">Turska F tipkovnica</translation>
<translation id="1923786009776354244">Omogući podršku za izvorno STUN zaglavlje WebRTC-a.</translation>
<translation id="1926741348654461781">Omogući izvanmrežne stranice</translation>
<translation id="1929546189971853037">čitati vašu povijest pregledavanja na svim uređajima na koje ste prijavljeni</translation>
@@ -851,6 +855,7 @@
<translation id="2231990265377706070">Uskličnik</translation>
<translation id="2232876851878324699">Datoteka je sadržavala jedan certifikat koji nije bio uvezen:</translation>
<translation id="2233502537820838181">&amp;Više informacija</translation>
+<translation id="2233587473672843170">Prikaži popularne web-lokacije na stranici nove kartice</translation>
<translation id="223714078860837942">Ako stranica nije postavila eksplicitno pravilo preporuke, postavljanje ove oznake smanjit će količinu informacija u zaglavlju "preporuka" za zahtjeve iz različitih izvora.</translation>
<translation id="2238379619048995541">Podaci o stanju učestalosti</translation>
<translation id="2239921694246509981">Dodaj nadziranog korisnika</translation>
@@ -926,6 +931,7 @@ Nakon izrade novog nadziranog korisnika možete upravljati njegovim postavkama u
<translation id="2326606747676847821">Anonimni način</translation>
<translation id="2326931316514688470">&amp;Ponovo učitaj aplikaciju</translation>
<translation id="2327492829706409234">Omogući aplikaciju</translation>
+<translation id="2329597144923131178">Prijavite se da biste imali svoje oznake, povijest, zaporke i druge postavke na svim svojim uređajima.</translation>
<translation id="2332131598580221120">Prikaži u Web-trgovini</translation>
<translation id="2332742915001411729">Vrati na zadano</translation>
<translation id="2335122562899522968">Ova stranica postavila je kolačiće.</translation>
@@ -1314,6 +1320,7 @@ Mislim da ta web-lokacija ne bi trebala biti blokirana!</translation>
<translation id="2838379631617906747">Instaliranje</translation>
<translation id="2841837950101800123">Davatelj usluge</translation>
<translation id="2843806747483486897">Promijeni zadano...</translation>
+<translation id="2844169650293029770">USB-C uređaj (prednji lijevi priključak)</translation>
<translation id="2845382757467349449">Uvijek prikaži traku oznake</translation>
<translation id="2846816712032308263">Omogućuje brzo zatvaranje kartice/prozora – pokreće rukovatelja kartice "OnUnload JS" neovisno o grafičkom korisničkom sučelju.</translation>
<translation id="284970761985428403"><ph name="ASCII_NAME" /> (<ph name="UNICODE_NAME" />)</translation>
@@ -1378,6 +1385,7 @@ Mislim da ta web-lokacija ne bi trebala biti blokirana!</translation>
<translation id="2923469375796950815">Onemogući novi alat za otvaranje ZIP datoteka.</translation>
<translation id="2924296707677495905">transliteracija (namaskaram → ನಮಸ್ಕಾರ)</translation>
<translation id="2925966894897775835">Tablice</translation>
+<translation id="2927017729816812676">Pohrana predmemorije</translation>
<translation id="2927657246008729253">Promijeni...</translation>
<translation id="2928526264833629376">Nastavi na Hangouts</translation>
<translation id="2930644991850369934">Došlo je do pogreške tijekom preuzimanja slike za oporavak sustava. Izgubljena je mrežna veza.</translation>
@@ -1718,6 +1726,7 @@ Mislim da ta web-lokacija ne bi trebala biti blokirana!</translation>
<translation id="3396331542604645348">Odabrani pisač nije dostupan ili nije ispravno instaliran. Provjerite pisač ili pokušajte odabrati neki drugi.</translation>
<translation id="3399597614303179694">Makedonska tipkovnica</translation>
<translation id="340013220407300675">Napadači možda pokušavaju ukrasti vaše podatke s web-lokacije <ph name="BEGIN_BOLD" /><ph name="SITE" /><ph name="END_BOLD" /> (na primjer, zaporke, poruke ili kreditne kartice).</translation>
+<translation id="3401130144947259741">Ako je omogućeno, događaji praćenja izvozit će se u Praćenje događaja u sustavu Windows (ETW), a tada ih mogu snimati alati kao što su UIForETW ili Xperf.</translation>
<translation id="340282674066624"><ph name="DOWNLOAD_RECEIVED" />, <ph name="TIME_LEFT" /></translation>
<translation id="3406605057700382950">&amp;Prikaži traku oznake</translation>
<translation id="3412265149091626468">Skoči na odabir</translation>
@@ -1877,6 +1886,7 @@ Mislim da ta web-lokacija ne bi trebala biti blokirana!</translation>
<translation id="3603385196401704894">francuska (kanadska)</translation>
<translation id="3603622770190368340">Dobivanje certifikata mreže</translation>
<translation id="3605780360466892872">Poslovnjak</translation>
+<translation id="3606220979431771195">Turska F</translation>
<translation id="3608454375274108141">F10</translation>
<translation id="3608576286259426129">Pregled korisnikove slike</translation>
<translation id="3609138628363401169">Poslužitelj ne podržava proširenje TLS ponovljenog pregovaranja.</translation>
@@ -2397,6 +2407,7 @@ Svi se korisnici moraju prijaviti za nastavak.</translation>
<translation id="4321136812570927563">{NUM_DOWNLOAD,plural, =1{Nastavi preuzimanje}one{Nastavi preuzimanja}few{Nastavi preuzimanja}other{Nastavi preuzimanja}}</translation>
<translation id="4321179778687042513">ctrl</translation>
<translation id="4322394346347055525">Zatvori ostale kartice</translation>
+<translation id="4325378361067528777">Omogući Push API u pozadini</translation>
<translation id="4326952458285403282">Onemogućivanje upotrebe eksperimentalnog sustava za generiranje fontova DirectWrite.</translation>
<translation id="4326999707196471878">Dijaloški okviri preglednika na temelju prikaza Toolkita.</translation>
<translation id="4330406155931244378">Omogući višejezičnu provjeru pravopisa</translation>
@@ -2931,6 +2942,8 @@ Pritisnite bilo koju tipku da biste nastavili istraživati.</translation>
<translation id="5148652308299789060">Onemogućavanje 3D softverskog rasterizatora</translation>
<translation id="5150254825601720210">Naziv certifikata SSL poslužitelja za Netscape</translation>
<translation id="5151034238407558331">Nažalost, kod ovog trgovca Google Paymentsom mogu plaćati samo kupci koji imaju adresu u SAD-u. Ako ste rezident SAD-a, |promijenite svoju adresu na Google Paymentsu| ili platite na neki drugi način.</translation>
+<translation id="5151639798712723370">"&gt;
+ USB-C uređaj (prednji desni priključak)</translation>
<translation id="5152451685298621771">(Račun za djecu)</translation>
<translation id="5154108062446123722">Napredne postavke za <ph name="PRINTING_DESTINATION" /></translation>
<translation id="5154176924561037127">F8</translation>
@@ -3029,6 +3042,7 @@ Pritisnite bilo koju tipku da biste nastavili istraživati.</translation>
<translation id="5271247532544265821">Sakrij način pojednostavljenog/tradicionalnog kineskog</translation>
<translation id="5271549068863921519">Spremi zaporku</translation>
<translation id="5273628206174272911">Eksperimentalna navigacija po povijesti kao odgovor na vodoravno pomicanje preko ruba.</translation>
+<translation id="5275795814002959418"><ph name="COUNT" /> s ove web-lokacije</translation>
<translation id="5275973617553375938">Oporavljene datoteke s Google diska</translation>
<translation id="527605719918376753">Isključi zvuk kartice</translation>
<translation id="527605982717517565">Uvijek dopusti JavaScript na web-lokaciji <ph name="HOST" /></translation>
@@ -3075,6 +3089,7 @@ Pritisnite bilo koju tipku da biste nastavili istraživati.</translation>
<translation id="5328285148748012771">Pristupajte svim svojim aplikacijama s ovog praktičnog pokretača. Igrajte igre, sudjelujte u videochatovima, slušajte glazbu, uređujte dokumente ili preuzmite još aplikacija s Chrome web-trgovine.</translation>
<translation id="5329858601952122676">&amp;Obriši</translation>
<translation id="5330145655348521461">Ove su datoteke otvorene na drugoj radnoj površini. Prebacite se na korisnika <ph name="USER_NAME" /> (<ph name="MAIL_ADDRESS" />) da biste ih vidjeli.</translation>
+<translation id="5331975486040154427">USB-C uređaj (stražnji lijevi priključak)</translation>
<translation id="5332624210073556029">Vremenska zona:</translation>
<translation id="5334142896108694079">Predmemorija skripte</translation>
<translation id="533433379391851622">Očekivana je verzija "<ph name="EXPECTED_VERSION" />", ali je verzija bila "<ph name="NEW_ID" />".</translation>
@@ -3121,6 +3136,7 @@ Pritisnite bilo koju tipku da biste nastavili istraživati.</translation>
<translation id="539755880180803351">U web-obrasce postavlja bilješku o vrsti predviđanja polja s automatskim popunjavanjem kao tekst rezerviranog mjesta.</translation>
<translation id="5397578532367286026">Upravitelj (<ph name="MANAGER_EMAIL" />) može pregledavati upotrebu i povijest tog korisnika na web-lokaciji chrome.com.</translation>
<translation id="5397794290049113714">Vi</translation>
+<translation id="5398824043967640339"><ph name="COUNT" /> s drugih web-lokacija</translation>
<translation id="5399158067281117682">PIN-ovi se ne podudaraju!</translation>
<translation id="5400640815024374115">Čip modula pouzdane platforme onemogućen je ili ga nema.</translation>
<translation id="5402367795255837559">Brajica</translation>
@@ -3939,6 +3955,7 @@ Pritisnite bilo koju tipku da biste nastavili istraživati.</translation>
<translation id="6575251558004911012">Pitaj me kad web-lokacija zatraži pristup mojoj kameri (preporučeno)</translation>
<translation id="6581162200855843583">Veza na Google disk</translation>
<translation id="6583070985841601920">Prijavljeni ste kao <ph name="USER_EMAIL_ADDRESS" />. Administrator je onemogućio sinkronizaciju.</translation>
+<translation id="65832705307647870">Stranica nove kartice unaprijed se popunjava popularnim web-lokacijama.</translation>
<translation id="6584878029876017575">Microsoftovo cjeloživotno potpisivanje</translation>
<translation id="6585234750898046415">Odaberite sliku za prikaz za svoj račun na zaslonu za prijavu.</translation>
<translation id="6585283250473596934">Ulazak u javnu sesiju.</translation>
@@ -4278,6 +4295,7 @@ Pritisnite bilo koju tipku da biste nastavili istraživati.</translation>
<translation id="7092106376816104">Iznimke za skočne prozore</translation>
<translation id="7093866338626856921">razmjenjivati podatke s uređajima naziva: <ph name="HOSTNAMES" /></translation>
<translation id="7096082900368329802">Želite li otkriti još fantastičnih značajki?</translation>
+<translation id="7098389117866926363">USB-C uređaj (lijevi priključak sa stražnje strane)</translation>
<translation id="7100897339030255923">Broj odabranih stavki: <ph name="COUNT" /></translation>
<translation id="7106346894903675391">Kupite još prostora za pohranu...</translation>
<translation id="7108338896283013870">Sakrij preglednik</translation>
@@ -5045,6 +5063,7 @@ Ključnu datoteku čuvajte na sigurnom mjestu. Trebat će vam za stvaranje novih
<translation id="8190193592390505034">Povezivanje s mrežom <ph name="PROVIDER_NAME" /></translation>
<translation id="8191230140820435481">upravljati vašim aplikacijama, proširenjima i temama</translation>
<translation id="8191453843330043793">Razrješavanje V8 proxyja</translation>
+<translation id="8199491812735365610">Odabir računa za prijavu</translation>
<translation id="8200772114523450471">Nastavi</translation>
<translation id="8202160505685531999">Ponovo unesite zaporku da biste ažurirali svoj profil na uređaju <ph name="DEVICE_TYPE" />.</translation>
<translation id="8204086856545141093">Zahtjevi poslužitelju blokirani su pravilom.</translation>
@@ -5175,6 +5194,7 @@ Ključnu datoteku čuvajte na sigurnom mjestu. Trebat će vam za stvaranje novih
<translation id="8381977081675353473">slovački</translation>
<translation id="8382645631174981738">Proširenje <ph name="EXTENSION_NAME" /> instalirano je daljinski</translation>
<translation id="8382913212082956454">Kopiraj &amp;adresu e-pošte</translation>
+<translation id="8384113940676655504">Uključuje postavku Smart Locka koja Chromebooku omogućuje otkrivanje telefona putem Bluetooth Low Energyja radi otključavanja Chromebooka kada mu je telefon u blizini.</translation>
<translation id="8390029840652165810">Provjerite radi li vaša mrežna veza i, ako je problem i dalje prisutan, odjavite se i prijavite ponovo da biste osvježili vjerodajnice.</translation>
<translation id="8390445751804042000">Omogućuje buđenje uređaja na temelju primitka mrežnih paketa.</translation>
<translation id="8390449457866780408">Poslužitelj nije dostupan.</translation>
@@ -5261,6 +5281,7 @@ Ključnu datoteku čuvajte na sigurnom mjestu. Trebat će vam za stvaranje novih
<translation id="8509646642152301857">Preuzimanje rječnika za provjeru pravopisa nije uspjelo.</translation>
<translation id="8512476990829870887">Završi proces</translation>
<translation id="851263357009351303">Uvijek dopusti da web-lokacija <ph name="HOST" /> prikazuje slike</translation>
+<translation id="8513191386157529469">"<ph name="CLIENT_NAME" />" ispravlja programske pogreške u tom pregledniku.</translation>
<translation id="8513974249124254369">Omogućen je ChromeVox (govorne povratne informacije). Pritisnite Ctrl+Alt+Z da biste ga onemogućili.</translation>
<translation id="8515737884867295000">Provjera autentičnosti na temelju certifikata nije uspjela</translation>
<translation id="8518865679229538285">Tamilski način unosa (pisaći stroj)</translation>
@@ -5380,6 +5401,7 @@ Ključnu datoteku čuvajte na sigurnom mjestu. Trebat će vam za stvaranje novih
<translation id="8677039480012021122">Izbriši podatke i prekini vezu</translation>
<translation id="8677212948402625567">Sažmi sve...</translation>
<translation id="8678648549315280022">Upravljanje postavkama preuzimanja...</translation>
+<translation id="8680251145628383637">Prijavite se tako da vam oznake, povijest i druge postavke budu dostupne na svim svojim uređajima. Time ćete se automatski prijaviti i na Googleove usluge.</translation>
<translation id="8680536109547170164"><ph name="QUERY" />, odgovor, <ph name="ANSWER" /></translation>
<translation id="8680787084697685621">Pojedinosti prijave na račun su zastarjele.</translation>
<translation id="8684255857039823328">Zaporka je spremljena. Pristupajte zaporkama s bilo kojeg uređaja na <ph name="MANAGEMENT_LINK" />.</translation>
@@ -5435,6 +5457,7 @@ Ključnu datoteku čuvajte na sigurnom mjestu. Trebat će vam za stvaranje novih
<translation id="874420130893181774">tradicionalni pinyin način unosa</translation>
<translation id="8744525654891896746">Odaberite avatar za tog zaštićenog korisnika</translation>
<translation id="8744641000906923997">Romaji</translation>
+<translation id="8744959718895556609">Odaberite račun iz značajke <ph name="LINK_TEXT" /></translation>
<translation id="8749863574775030885">pristupiti USB uređajima nepoznatog dobavljača</translation>
<translation id="8754200782896249056">&lt;p&gt;Kada se <ph name="PRODUCT_NAME" /> izvodi u podržanom okruženju radne površine, upotrebljavaju se proxy postavke sustava. Međutim, vaš sustav nije podržan ili je došlo do problema pri pokretanju konfiguracije sustava.&lt;/p&gt;
@@ -5555,6 +5578,7 @@ Ključnu datoteku čuvajte na sigurnom mjestu. Trebat će vam za stvaranje novih
<translation id="8933960630081805351">&amp;Prikaži u programu Finder</translation>
<translation id="8934732568177537184">Nastavi</translation>
<translation id="8938356204940892126">Odustajem</translation>
+<translation id="8938800817013097409">USB-C uređaj (desni priključak sa stražnje strane)</translation>
<translation id="8940081510938872932">Vaše računalo trenutačno radi previše stvari. Pokušajte ponovo kasnije.</translation>
<translation id="8941173171815156065">Opoziv dopuštenja "<ph name="PERMISSION" />"</translation>
<translation id="8941248009481596111">Veza s web-lokacijom privatna je.</translation>
diff --git a/chromium/chrome/app/resources/generated_resources_hu.xtb b/chromium/chrome/app/resources/generated_resources_hu.xtb
index e9de04d30d2..5bb466e01a8 100644
--- a/chromium/chrome/app/resources/generated_resources_hu.xtb
+++ b/chromium/chrome/app/resources/generated_resources_hu.xtb
@@ -136,6 +136,8 @@
<translation id="1178581264944972037">Szünet</translation>
<translation id="1179803038870941185">A(z) <ph name="URL" /> teljes hozzáférést kér a MIDI-eszközökhöz.</translation>
<translation id="1181037720776840403">Eltávolítás</translation>
+<translation id="11814323404622888">"&gt;
+ C típusú USB-vel kompatibilis eszköz (jobb hátsó port)</translation>
<translation id="1183083053288481515">Rendszergazda által biztosított tanúsítvány használata</translation>
<translation id="1183237619868651138">A(z) <ph name="EXTERNAL_CRX_FILE" /> nem telepíthető a helyi gyorsítótárban.</translation>
<translation id="1185924365081634987">A hiba javításához kipróbálhatja a <ph name="GUEST_SIGNIN_LINK_START" />vendégként történő böngészést is<ph name="GUEST_SIGNIN_LINK_END" />.</translation>
@@ -329,6 +331,7 @@
<translation id="1468038450257740950">A WebGL nem támogatott.</translation>
<translation id="1470719357688513792">Az új cookie-beállítások az oldal ismételt betöltése után lépnek életbe.</translation>
<translation id="14720830734893704">Virtuális billentyűzet támogatásának engedélyezése.</translation>
+<translation id="1474079335130556426">Háttérmód engedélyezése a Push API számára. Ez lehetővé teszi a Chrome számára, hogy az utolsó ablak bezárása után is fusson, illetve, hogy elinduljon az operációs rendszer indulásakor, ha a Push API ezt igényli.</translation>
<translation id="1474339897586437869">A(z) „<ph name="FILENAME" />” feltöltése nem történt meg. Nincs elegendő szabad terület a Google Drive-on.</translation>
<translation id="1476503841242751994">{COUNT,plural, =1{1 jelszó}other{# jelszó}}</translation>
<translation id="1476949146811612304">Állítsa be, hogy a böngésző melyik keresőmotort használja, amikor Ön a <ph name="BEGIN_LINK" />cím- és keresősávból<ph name="END_LINK" /> keres.</translation>
@@ -582,7 +585,7 @@
<translation id="1793119619663054394">Biztosan törli a(z) „<ph name="PROFILE_NAME" />” profilt és annak összes Chrome-adatát erről a számítógépről? A művelet nem vonható vissza.</translation>
<translation id="179767530217573436">elmúlt 4 hét</translation>
<translation id="180035236176489073">Online kell lennie a fájlok eléréséhez.</translation>
-<translation id="1801298019027379214">Helytelen PIN kód, kérjük, próbálja meg újra. Fennmaradó próbálkozások száma: <ph name="TRIES_COUNT" /></translation>
+<translation id="1801298019027379214">Helytelen PIN-kód, kérjük, próbálja meg újra. Fennmaradó próbálkozások száma: <ph name="TRIES_COUNT" /></translation>
<translation id="1801827354178857021">Időszak</translation>
<translation id="1803133642364907127">Bővítménytartalom ellenőrzése</translation>
<translation id="1804251416207250805">Hiperlink-ellenőrző pingek küldésének letiltása.</translation>
@@ -653,6 +656,7 @@
<translation id="1918141783557917887">&amp;Kisebb</translation>
<translation id="192144045824434199">A böngészőn kívül megnyíló Panel ablakok engedélyezése. Ha nincs aktiválva, akkor a megnyitni próbált Panel egy pop-upot nyit meg. A Panelek mindig engedélyezve vannak a fejlesztői és a canary csatornákon.</translation>
<translation id="1921584744613111023"><ph name="DPI" /> dpi</translation>
+<translation id="1921986354447415460">Török (F-billentyűzet)</translation>
<translation id="1923786009776354244">A WebRTC Stun eredetfejléc támogatásának bekapcsolása.</translation>
<translation id="1926741348654461781">Offline oldalak engedélyezése</translation>
<translation id="1929546189971853037">Böngészési előzmények elolvasása az összes bejelentkezett eszközén</translation>
@@ -851,6 +855,7 @@
<translation id="2231990265377706070">Felkiáltójel</translation>
<translation id="2232876851878324699">A fájl egy tanúsítványt tartalmazott, amely nem volt importálva:</translation>
<translation id="2233502537820838181">&amp;További információ</translation>
+<translation id="2233587473672843170">Népszerű webhelyek megjelenítése az Új lap oldalon</translation>
<translation id="223714078860837942">Ha egy oldalnál nincs beállítva kifejezett hivatkozói házirend, akkor a jelölő beállítása csökkenti a „referer” fejlécben szereplő információk mennyiségét az eltérő eredetű kéréseknél.</translation>
<translation id="2238379619048995541">Órajel állapotadatai</translation>
<translation id="2239921694246509981">Felügyelt személy hozzáadása</translation>
@@ -929,6 +934,7 @@ Miután létrehozott egy új felügyelt felhasználót, bármikor és bármilyen
<translation id="2326606747676847821">Váltás inkognitóra</translation>
<translation id="2326931316514688470">Alkalmazás új&amp;ratöltése</translation>
<translation id="2327492829706409234">Alkalmazás engedélyezése</translation>
+<translation id="2329597144923131178">Jelentkezzen be, hogy könyvjelzőit, előzményeit, jelszavait és más beállításait az összes eszközén elérje.</translation>
<translation id="2332131598580221120">Megtekintés az áruházban</translation>
<translation id="2332742915001411729">Visszaállítás az alapértékre</translation>
<translation id="2335122562899522968">Ez az oldal cookie-kat állít be.</translation>
@@ -1318,6 +1324,7 @@ Miután létrehozott egy új felügyelt felhasználót, bármikor és bármilyen
<translation id="2838379631617906747">Telepítés</translation>
<translation id="2841837950101800123">Szolgáltató</translation>
<translation id="2843806747483486897">Alapértelmezés módosítása...</translation>
+<translation id="2844169650293029770">C típusú USB-vel kompatibilis eszköz (bal első port)</translation>
<translation id="2845382757467349449">A könyvjelzők eszköztára mindig látható</translation>
<translation id="2846816712032308263">A lapok/ablakok gyors bezárásának engedélyezése – egy lap kiürítési js-kezelőjének futtatása a GUI-tól függetlenül.</translation>
<translation id="284970761985428403"><ph name="ASCII_NAME" /> (<ph name="UNICODE_NAME" />)</translation>
@@ -1382,6 +1389,7 @@ Miután létrehozott egy új felügyelt felhasználót, bármikor és bármilyen
<translation id="2923469375796950815">Az új ZIP-tömörítő letiltása.</translation>
<translation id="2924296707677495905">Átírás (namaskaram → ನಮಸ್ಕಾರ)</translation>
<translation id="2925966894897775835">Táblázatok</translation>
+<translation id="2927017729816812676">Gyorsítótár</translation>
<translation id="2927657246008729253">Módosítás...</translation>
<translation id="2928526264833629376">Tovább a Hangouts szolgáltatásba</translation>
<translation id="2930644991850369934">Probléma lépett fel a helyreállító képfájl letöltése során. A hálózati kapcsolat megszakadt.</translation>
@@ -1715,7 +1723,7 @@ Miután létrehozott egy új felügyelt felhasználót, bármikor és bármilyen
<translation id="3382073616108123819">Hoppá! A rendszer nem tudta megállapítani az eszközazonosítókat ehhez az eszközhöz.</translation>
<translation id="3384773155383850738">Maximális javaslatszám</translation>
<translation id="338583716107319301">Elválasztó</translation>
-<translation id="3391392691301057522">Régi PIN kód:</translation>
+<translation id="3391392691301057522">Régi PIN-kód:</translation>
<translation id="3391716558283801616">7. lap</translation>
<translation id="3392020134425442298">Rosszindulatú fájl helyreállítása</translation>
<translation id="3393716657345709557">A kért bejegyzés nem található a gyorsítótárban.</translation>
@@ -1723,6 +1731,7 @@ Miután létrehozott egy új felügyelt felhasználót, bármikor és bármilyen
<translation id="3396331542604645348">A kiválasztott nyomtató nem érhető el, vagy nincs megfelelően telepítve. Ellenőrizze a nyomtatót, vagy válasszon egy másikat.</translation>
<translation id="3399597614303179694">Macedón billentyűzet</translation>
<translation id="340013220407300675">A támadók megpróbálhatják ellopni adatait (például jelszavakat, üzeneteket vagy hitelkártyaszámokat) innen: <ph name="BEGIN_BOLD" /><ph name="SITE" /><ph name="END_BOLD" />.</translation>
+<translation id="3401130144947259741">Ha engedélyezi, a követett eseményeket a rendszer az ETW-be (Event Tracing for Windows) exportálja, és a UIForETW vagy az Xperf segítségével rögzíthetők.</translation>
<translation id="340282674066624"><ph name="DOWNLOAD_RECEIVED" />, <ph name="TIME_LEFT" /></translation>
<translation id="3406605057700382950">&amp;Könyvjelzősáv megjelenítése</translation>
<translation id="3412265149091626468">Ugrás a kijelöléshez</translation>
@@ -1881,6 +1890,7 @@ Miután létrehozott egy új felügyelt felhasználót, bármikor és bármilyen
<translation id="3603385196401704894">kanadai francia</translation>
<translation id="3603622770190368340">Hálózati tanúsítvány beszerzése</translation>
<translation id="3605780360466892872">Üzletember</translation>
+<translation id="3606220979431771195">Török F</translation>
<translation id="3608454375274108141">F10</translation>
<translation id="3608576286259426129">Felhasználói kép előnézete</translation>
<translation id="3609138628363401169">A szerver nem támogatja a TLS renegotiation bővítményt.</translation>
@@ -2258,7 +2268,7 @@ Elindítja a következőt: <ph name="CONTROL_PANEL_APPLET_NAME" />?</translation
<translation id="4110559665646603267">Fókuszálás a polcra</translation>
<translation id="4112917766894695549">Ezeket a beállításokat a rendszergazdája kényszeríti ki.</translation>
<translation id="4114360727879906392">Előző ablak</translation>
-<translation id="4114470632216071239">SIM-kártya zárolása (PIN kód bekérése mobiladatok használatához)</translation>
+<translation id="4114470632216071239">SIM-kártya zárolása (PIN-kód bekérése mobiladatok használatához)</translation>
<translation id="4114955900795884390">Nincs megfelelő beépülő modul a tartalom megjelenítéséhez.</translation>
<translation id="4116663294526079822">Mindig engedélyezze ezen az oldalon</translation>
<translation id="411666854932687641">Saját memória</translation>
@@ -2399,6 +2409,7 @@ Az összes felhasználónak ki kell jelentkeznie a folytatáshoz.</translation>
<translation id="4321136812570927563">{NUM_DOWNLOAD,plural, =1{Letöltés folytatása}other{Letöltések folytatása}}</translation>
<translation id="4321179778687042513">ctrl</translation>
<translation id="4322394346347055525">Egyéb lapok bezárása</translation>
+<translation id="4325378361067528777">A Push API háttérmódjának engedélyezése</translation>
<translation id="4326952458285403282">Letiltja a kísérleti DirectWrite betűmegjelenítő rendszert.</translation>
<translation id="4326999707196471878">Toolkit-Views böngészőablakok.</translation>
<translation id="4330406155931244378">Többnyelvű helyesírás-ellenőrző engedélyezése</translation>
@@ -2424,7 +2435,7 @@ Az összes felhasználónak ki kell jelentkeznie a folytatáshoz.</translation>
<translation id="4365673000813822030">Hoppá, a szinkronizálás leállt.</translation>
<translation id="4366509400410520531">Ön által engedélyezett</translation>
<translation id="4367782753568896354">Nem sikerült telepíteni:</translation>
-<translation id="4370975561335139969">A megadott e-mail cím és jelszó nem egyezik</translation>
+<translation id="4370975561335139969">A megadott e-mail-cím és jelszó nem egyezik</translation>
<translation id="437184764829821926">Speciális betűtípus-beállítások</translation>
<translation id="4372884569765913867">1×1</translation>
<translation id="4375035964737468845">Letöltött fájlok megnyitása</translation>
@@ -2711,7 +2722,7 @@ Az összes felhasználónak ki kell jelentkeznie a folytatáshoz.</translation>
<translation id="4809190954660909198">Új számlázási adatok...</translation>
<translation id="480990236307250886">A kezdőoldal megnyitása</translation>
<translation id="4810984886082414856">Egyszerű gyorsítótár HTTP-hez.</translation>
-<translation id="4811502511369621968">Érvénytelen e-mail cím. Ellenőrizze, majd próbálja újra.</translation>
+<translation id="4811502511369621968">Érvénytelen e-mail-cím. Ellenőrizze, majd próbálja újra.</translation>
<translation id="4813345808229079766">Kapcsolat</translation>
<translation id="4813512666221746211">Hálózati hiba</translation>
<translation id="4816492930507672669">Igazítás az oldalmérethez</translation>
@@ -2872,7 +2883,7 @@ Az összes felhasználónak ki kell jelentkeznie a folytatáshoz.</translation>
<translation id="5061188462607594407">Tegye biztonságossá <ph name="PHONE_TYPE" /> telefonját a folytatáshoz</translation>
<translation id="5061708541166515394">Kontraszt</translation>
<translation id="5062930723426326933">A bejelentkezés nem sikerült. Kérjük, kapcsolódjon az internethez, majd próbálja újra.</translation>
-<translation id="5063180925553000800">Új PIN kód:</translation>
+<translation id="5063180925553000800">Új PIN-kód:</translation>
<translation id="5067399438976153555">Mindig bekapcsolva</translation>
<translation id="5067867186035333991">Kérdezzen rá, ha a(z) <ph name="HOST" /> hozzá szeretne férni a mikrofonhoz</translation>
<translation id="5068787915627988398">Ha be van kapcsolva, bármilyen eredet a felhasználó megkérdezése nélkül használhat csatlakoztatott WebUSB-eszközöket.</translation>
@@ -2881,7 +2892,7 @@ Az összes felhasználónak ki kell jelentkeznie a folytatáshoz.</translation>
<translation id="5074318175948309511">Előfordulhat, hogy az új beállítások életbe lépéséhez az oldal újratöltése szükséges.</translation>
<translation id="5075306601479391924">Felhasználói kézmozdulatok megkövetelésének kikapcsolása a médiaelemek lejátszásához. Ennek aktiválásával engedélyezi az automatikus lejátszás működését.</translation>
<translation id="5078638979202084724">Összes lap hozzáadása a könyvjelzőkhöz</translation>
-<translation id="5078796286268621944">Helytelen PIN kód</translation>
+<translation id="5078796286268621944">Helytelen PIN-kód</translation>
<translation id="5081055027309504756">Seccomp-BPF sandbox</translation>
<translation id="5085162214018721575">Frissítések keresése</translation>
<translation id="5086082738160935172">HID</translation>
@@ -2930,6 +2941,8 @@ Az összes felhasználónak ki kell jelentkeznie a folytatáshoz.</translation>
<translation id="5148652308299789060">3D szoftveres raszterező letiltása</translation>
<translation id="5150254825601720210">Netscape tanúsítvány - SSL-szerver neve</translation>
<translation id="5151034238407558331">Sajnos a Google Payments szolgáltatást ennél a kereskedőnél csak az amerikai egyesült államokbeli címmel rendelkező vásárlók használhatják. Ha Ön az Amerikai Egyesült Államokban él, |változtassa meg a Payments szolgáltatásban szereplő lakcímét|, vagy a Google Payments használata nélkül fizessen.</translation>
+<translation id="5151639798712723370">"&gt;
+ C típusú USB-vel kompatibilis eszköz (jobb első port)</translation>
<translation id="5152451685298621771">(Gyermekeknek készített fiók)</translation>
<translation id="5154108062446123722">A(z) <ph name="PRINTING_DESTINATION" /> speciális beállításai</translation>
<translation id="5154176924561037127">F8</translation>
@@ -3028,6 +3041,7 @@ Az összes felhasználónak ki kell jelentkeznie a folytatáshoz.</translation>
<translation id="5271247532544265821">Váltás az egyszerű/hagyományos kínai mód között</translation>
<translation id="5271549068863921519">Jelszó mentése</translation>
<translation id="5273628206174272911">Kísérleti előzménynavigáció a vízszintes túlgörgetésre válaszul.</translation>
+<translation id="5275795814002959418"><ph name="COUNT" /> elem erről a webhelyről</translation>
<translation id="5275973617553375938">A Google Drive-ról visszaállított fájlok</translation>
<translation id="527605719918376753">Lap némítása</translation>
<translation id="527605982717517565">Mindig engedélyezze a JavaScriptet itt: <ph name="HOST" /></translation>
@@ -3074,6 +3088,7 @@ Az összes felhasználónak ki kell jelentkeznie a folytatáshoz.</translation>
<translation id="5328285148748012771">Az összes alkalmazását elérheti ebből a praktikus indítóból. Játsszon, indítson videocsevegést, hallgasson zenét, szerkesszen dokumentumokat, esetleg töltsön le további alkalmazásokat a Chrome Internetes áruházból.</translation>
<translation id="5329858601952122676">&amp;Törlés</translation>
<translation id="5330145655348521461">Ezek a fájlok meg vannak nyitva egy másik asztalon. A megtekintésükhöz váltson át <ph name="USER_NAME" /> (<ph name="MAIL_ADDRESS" />) profiljára.</translation>
+<translation id="5331975486040154427">C típusú USB-vel kompatibilis eszköz (bal hátsó port)</translation>
<translation id="5332624210073556029">Időzóna:</translation>
<translation id="5334142896108694079">Szkript gyorsítótár</translation>
<translation id="533433379391851622">A várt verzió "<ph name="EXPECTED_VERSION" />", de a kapott verzió "<ph name="NEW_ID" />".</translation>
@@ -3120,6 +3135,7 @@ Az összes felhasználónak ki kell jelentkeznie a folytatáshoz.</translation>
<translation id="539755880180803351">Az internetes űrlapokat automatikus kitöltési következtetésekkel mint helyőrző szöveggel látja el.</translation>
<translation id="5397578532367286026">A felhasználó használati adatait és előzményeit a kezelő (<ph name="MANAGER_EMAIL" />) a chrome.com webhelyen tekintheti meg.</translation>
<translation id="5397794290049113714">Ön</translation>
+<translation id="5398824043967640339"><ph name="COUNT" /> elem más webhelyekről</translation>
<translation id="5399158067281117682">A PIN kódok nem egyeznek!</translation>
<translation id="5400640815024374115">Megbízható platform modul (TPM) chip letiltva vagy hiányzik.</translation>
<translation id="5402367795255837559">Braille</translation>
@@ -3237,7 +3253,7 @@ Az összes felhasználónak ki kell jelentkeznie a folytatáshoz.</translation>
Engedélyezés esetén a document.scrollingElement értéke document.documentElement; letiltása esetén pedig document.body (szigorú módú oldalaknál).</translation>
<translation id="5550431144454300634">Bevitel automatikus javítása</translation>
<translation id="5553089923092577885">Tanúsítvány-irányelv leképezések</translation>
-<translation id="5553784454066145694">Új PIN kód választása</translation>
+<translation id="5553784454066145694">Új PIN-kód választása</translation>
<translation id="5554489410841842733">Ez az ikon akkor látható, ha a bővítmény tehet valamit az aktuális oldalon.</translation>
<translation id="5554573843028719904">Egyéb Wi-Fi hálózat...</translation>
<translation id="5554720593229208774">E-mail tanúsítványkibocsátó</translation>
@@ -3681,7 +3697,7 @@ Győződjön meg arról, hogy nem ad ki bizalmas adatokat.</translation>
<translation id="6196854373336333322">A(z) <ph name="EXTENSION_NAME" /> bővítmény átvette az irányítást proxybeállításai felett, ami azt jelenti, hogy a bővítmény minden internetes tevékenységét módosíthatja, feltörheti vagy lehallgathatja. Ha nem biztos benne, hogy miért történt a változás, akkor valószínűleg nem is akarja azt.</translation>
<translation id="6196870635398338994">Az adatredukciós proxykonfigurációs szolgáltatói kliens engedélyezése</translation>
<translation id="6198102561359457428">Jelentkezzen ki, majd jelentkezzen be újra...</translation>
-<translation id="6198252989419008588">PIN kód megváltoztatása</translation>
+<translation id="6198252989419008588">PIN-kód megváltoztatása</translation>
<translation id="6199801702437275229">Várakozás a helyinformációkra...</translation>
<translation id="6200903742087665630">Folyamaton kívüli iframe-ek engedélyezése</translation>
<translation id="6203231073485539293">Ellenőrizze az internetkapcsolatot</translation>
@@ -3943,6 +3959,7 @@ Győződjön meg arról, hogy nem ad ki bizalmas adatokat.</translation>
<translation id="6575251558004911012">Kérdezzen rá, amikor egy webhely hozzáférést kér a kamerához (ajánlott)</translation>
<translation id="6581162200855843583">Google Drive link</translation>
<translation id="6583070985841601920"><ph name="USER_EMAIL_ADDRESS" /> néven jelentkezett be. Rendszergazdája kikapcsolta a szinkronizálást.</translation>
+<translation id="65832705307647870">Az Új lap oldal előre történő kitöltése népszerű webhelyekkel.</translation>
<translation id="6584878029876017575">Microsoft élethosszig tartó aláírás</translation>
<translation id="6585234750898046415">Válassza ki a bejelentkezési képernyőn fiókja mellett megjeleníteni kívánt képet.</translation>
<translation id="6585283250473596934">Belépés nyilvános munkafolyamatba.</translation>
@@ -4283,6 +4300,7 @@ Győződjön meg arról, hogy nem ad ki bizalmas adatokat.</translation>
<translation id="7092106376816104">Előugró ablakok kivételei</translation>
<translation id="7093866338626856921">Adatok cseréje a(z) <ph name="HOSTNAMES" /> nevű eszközökkel</translation>
<translation id="7096082900368329802">Szívesen felfedezne további lélegzetelállító funkciókat is?</translation>
+<translation id="7098389117866926363">C típusú USB-vel kompatibilis eszköz (bal hátsó port)</translation>
<translation id="7100897339030255923"><ph name="COUNT" /> elem kiválasztva</translation>
<translation id="7106346894903675391">További tárhely vásárlása...</translation>
<translation id="7108338896283013870">Elrejtés</translation>
@@ -5051,6 +5069,7 @@ A kulcsfájlt tartsa biztonságos helyen. Szüksége lesz rá ahhoz, hogy új ve
<translation id="8190193592390505034">Csatlakozás a következő hálózathoz: <ph name="PROVIDER_NAME" /></translation>
<translation id="8191230140820435481">Alkalmazások, bővítmények és témák kezelése</translation>
<translation id="8191453843330043793">V8 Proxy Resolver</translation>
+<translation id="8199491812735365610">Válassza ki a fiókot, amelyikbe be szeretne jelentkezni.</translation>
<translation id="8200772114523450471">Folytatás</translation>
<translation id="8202160505685531999"><ph name="DEVICE_TYPE" />-profilja frissítéséhez adja meg újra jelszavát.</translation>
<translation id="8204086856545141093">A szerver felé irányuló kéréseket letiltja egy házirend.</translation>
@@ -5181,6 +5200,7 @@ A kulcsfájlt tartsa biztonságos helyen. Szüksége lesz rá ahhoz, hogy új ve
<translation id="8381977081675353473">szlovák</translation>
<translation id="8382645631174981738">A(z) <ph name="EXTENSION_NAME" /> távolról telepítve</translation>
<translation id="8382913212082956454">&amp;E-mail cím másolása</translation>
+<translation id="8384113940676655504">Engedélyez egy Smart Lock-beállítást, amely lehetővé teszi a Chromebook számára a telefonok megtalálását Bluetooth Low Energy kapcsolaton keresztül a Chromebook zárolásának feloldásához, amikor a telefon annak közelében van.</translation>
<translation id="8390029840652165810">Kérjük, ellenőrizze, hogy a hálózati kapcsolat működik, és ha a probléma továbbra is fennáll, kérjük, jelentkezzen ki, majd a hitelesítő adatok frissítéséhez jelentkezzen be újra.</translation>
<translation id="8390445751804042000">Hálózati csomagok fogadása alapján engedélyezi az eszköz felébresztését.</translation>
<translation id="8390449457866780408">A szerver nem érhető el.</translation>
@@ -5267,6 +5287,7 @@ A kulcsfájlt tartsa biztonságos helyen. Szüksége lesz rá ahhoz, hogy új ve
<translation id="8509646642152301857">A helyesírás-ellenőrző szótár letöltése sikertelen volt.</translation>
<translation id="8512476990829870887">Folyamat leállítása</translation>
<translation id="851263357009351303"><ph name="HOST" /> mindig mutathasson képeket</translation>
+<translation id="8513191386157529469">A(z) „<ph name="CLIENT_NAME" />” hibakeresést hajt végre ennél a böngészőnél.</translation>
<translation id="8513974249124254369">A ChromeVox (hangos visszajelzés) engedélyezett. A
letiltásához nyomja le a Ctrl+Alt+Z billentyűkombinációt.</translation>
<translation id="8515737884867295000">A tanúsítványalapú hitelesítés nem sikerült</translation>
@@ -5389,6 +5410,7 @@ függetlenül a következő kártyára lesz terhelve: <ph name="BACKING_CREDIT_C
<translation id="8677039480012021122">Adatok törlése és a csatlakoztatás megszüntetése</translation>
<translation id="8677212948402625567">Összes listanézete...</translation>
<translation id="8678648549315280022">Letöltési beállítások kezelése...</translation>
+<translation id="8680251145628383637">Ha bejelentkezik, könyvjelzőit, előzményeit és egyéb beállításait bármilyen eszközről elérheti. Ráadásul automatikusan bejelentkezik a Google-szolgáltatásokba.</translation>
<translation id="8680536109547170164"><ph name="QUERY" />. A válasz: <ph name="ANSWER" /></translation>
<translation id="8680787084697685621">A fiók bejelentkezési részletei elavultak.</translation>
<translation id="8684255857039823328">Jelszó mentve. Bármely eszközről elérheti jelszavait a következő címen: <ph name="MANAGEMENT_LINK" />.</translation>
@@ -5444,6 +5466,7 @@ függetlenül a következő kártyára lesz terhelve: <ph name="BACKING_CREDIT_C
<translation id="874420130893181774">Hagyományos pinjin beviteli mód</translation>
<translation id="8744525654891896746">Válasszon egy avatart a felügyelt felhasználó számára</translation>
<translation id="8744641000906923997">Romaji</translation>
+<translation id="8744959718895556609">Válasszon fiókot itt: <ph name="LINK_TEXT" /></translation>
<translation id="8749863574775030885">Ismeretlen szolgáltatótól származó USB-eszközök elérése</translation>
<translation id="8754200782896249056">&lt;p&gt;Ha a <ph name="PRODUCT_NAME" /> támogatott asztali környezetben fut, akkor a rendszer proxybeállításait használja. Most azonban vagy a rendszer nem támogatott, vagy gond volt a rendszerkonfiguráció elindításával.&lt;/p&gt;
@@ -5564,6 +5587,7 @@ függetlenül a következő kártyára lesz terhelve: <ph name="BACKING_CREDIT_C
<translation id="8933960630081805351">&amp;Megjelenítés a Finderben</translation>
<translation id="8934732568177537184">Tovább</translation>
<translation id="8938356204940892126">Feladom</translation>
+<translation id="8938800817013097409">C típusú USB-vel kompatibilis eszköz (jobb hátsó port)</translation>
<translation id="8940081510938872932">A számítógép jelenleg túl sok műveletet végez. Próbálja meg később.</translation>
<translation id="8941173171815156065">A(z) „<ph name="PERMISSION" />” engedély visszavonása</translation>
<translation id="8941248009481596111">A webhellyel való kapcsolata privát.</translation>
diff --git a/chromium/chrome/app/resources/generated_resources_id.xtb b/chromium/chrome/app/resources/generated_resources_id.xtb
index 3a05ad8045f..437fb47f528 100644
--- a/chromium/chrome/app/resources/generated_resources_id.xtb
+++ b/chromium/chrome/app/resources/generated_resources_id.xtb
@@ -136,6 +136,8 @@
<translation id="1178581264944972037">Jeda</translation>
<translation id="1179803038870941185"><ph name="URL" /> ingin mendapatkan kontrol penuh atas perangkat MIDI Anda.</translation>
<translation id="1181037720776840403">Hapus</translation>
+<translation id="11814323404622888">"&gt;
+ Perangkat USB-C (port belakang sebelah kanan)</translation>
<translation id="1183083053288481515">Menggunakan sertifikat yang diberikan oleh administrator</translation>
<translation id="1183237619868651138">Tidak dapat memasang <ph name="EXTERNAL_CRX_FILE" /> di cache lokal.</translation>
<translation id="1185924365081634987">Anda juga dapat mencoba untuk <ph name="GUEST_SIGNIN_LINK_START" />menjelajahi sebagai tamu<ph name="GUEST_SIGNIN_LINK_END" /> untuk memperbaiki kesalahan jaringan ini.</translation>
@@ -330,6 +332,7 @@
<translation id="1468038450257740950">WebGL tidak didukung.</translation>
<translation id="1470719357688513792">Setelan cookie baru akan berlaku setelah laman dimuat ulang.</translation>
<translation id="14720830734893704">Mengaktifkan dukungan keyboard virtual.</translation>
+<translation id="1474079335130556426">Mengaktifkan mode latar belakang untuk API Push. Hal ini memungkinkan Chrome untuk terus berjalan setelah jendela terakhir ditutup dan diluncurkan saat memulai OS, jika API Push memerlukannya.</translation>
<translation id="1474339897586437869">"<ph name="FILENAME" />" tidak diunggah. Ruang di Google Drive Anda tidak cukup.</translation>
<translation id="1476503841242751994">{COUNT,plural, =1{1 sandi}other{# sandi}}</translation>
<translation id="1476949146811612304">Menyetel mesin telusur yang digunakan ketika menelusuri dari <ph name="BEGIN_LINK" />omnibox<ph name="END_LINK" />.</translation>
@@ -654,6 +657,7 @@
<translation id="1918141783557917887">&amp;Lebih kecil</translation>
<translation id="192144045824434199">Mengaktifkan jendela Panel yang terbuka di luar frame browser. Upaya untuk membuka Panel akan membuka munculan jika tidak diaktifkan. Panel selalu diaktifkan di saluran dev dan canary.</translation>
<translation id="1921584744613111023"><ph name="DPI" /> dpi</translation>
+<translation id="1921986354447415460">Keyboard Turki-F</translation>
<translation id="1923786009776354244">Aktifkan dukungan untuk header asal WebRTC Stun.</translation>
<translation id="1926741348654461781">Aktifkan laman offline</translation>
<translation id="1929546189971853037">Baca riwayat penjelajahan Anda di semua perangkat tempat Anda masuk</translation>
@@ -852,6 +856,7 @@
<translation id="2231990265377706070">Tanda seru</translation>
<translation id="2232876851878324699">File berisi satu sertifikat, yang tidak diimpor:</translation>
<translation id="2233502537820838181">Infor&amp;masi selengkapnya</translation>
+<translation id="2233587473672843170">Tampilkan situs populer di laman Tab Baru</translation>
<translation id="223714078860837942">Jika suatu laman belum disetel kebijakan perujuk eksplisitnya, menyetel tanda ini akan mengurangi jumlah informasi dalam header 'perujuk' untuk permintaan antar asal.</translation>
<translation id="2238379619048995541">Data Status Frekuensi</translation>
<translation id="2239921694246509981">Tambahkan orang yang dilindungi</translation>
@@ -930,6 +935,7 @@ Setelah membuat pengguna yang dilindungi, Anda dapat mengelola setelannya kapan
<translation id="2326606747676847821">Buka Mode Penyamaran</translation>
<translation id="2326931316514688470">&amp;Muat ulang aplikasi</translation>
<translation id="2327492829706409234">Aktifkan aplikasi</translation>
+<translation id="2329597144923131178">Masuk untuk mendapatkan bookmark, riwayat, sandi, dan setelan Anda lainnya di semua perangkat.</translation>
<translation id="2332131598580221120">Lihat di toko</translation>
<translation id="2332742915001411729">Setel ulang ke default</translation>
<translation id="2335122562899522968">Laman ini menyetel cookie.</translation>
@@ -1318,6 +1324,7 @@ Saya rasa situs ini tidak perlu diblokir!</translation>
<translation id="2838379631617906747">Memasang</translation>
<translation id="2841837950101800123">Penyedia</translation>
<translation id="2843806747483486897">Ubah default...</translation>
+<translation id="2844169650293029770">Perangkat USB-C (port depan sebelah kiri)</translation>
<translation id="2845382757467349449">Selalu Tampilkan Bilah Bookmark</translation>
<translation id="2846816712032308263">Mengaktifkan penutupan cepat tab/jendela - menjalankan penangan js saat pembongkaran di tab secara terpisah dari GUI.</translation>
<translation id="284970761985428403"><ph name="ASCII_NAME" /> (<ph name="UNICODE_NAME" />)</translation>
@@ -1382,6 +1389,7 @@ Saya rasa situs ini tidak perlu diblokir!</translation>
<translation id="2923469375796950815">Nonaktifkan ZIP unpacker baru.</translation>
<translation id="2924296707677495905">Transliterasi (namaskaram → ನಮಸ್ಕಾರ)</translation>
<translation id="2925966894897775835">Spreadsheet</translation>
+<translation id="2927017729816812676">Penyimpanan Cache</translation>
<translation id="2927657246008729253">Ubah...</translation>
<translation id="2928526264833629376">Lanjutkan ke Hangouts</translation>
<translation id="2930644991850369934">Ada masalah saat mengunduh citra pemulihan. Sambungan jaringan terputus.</translation>
@@ -1724,6 +1732,7 @@ Saya rasa situs ini tidak perlu diblokir!</translation>
<translation id="3396331542604645348">Printer yang dipilih tidak tersedia atau tidak dipasang dengan semestinya. Periksa printer Anda atau coba pilih printer lainnya.</translation>
<translation id="3399597614303179694">Keyboard Makedonia</translation>
<translation id="340013220407300675">Penyerang mungkin mencoba mencuri informasi Anda dari <ph name="BEGIN_BOLD" /><ph name="SITE" /><ph name="END_BOLD" /> (misalnya, sandi, pesan, atau kartu kredit).</translation>
+<translation id="3401130144947259741">Jika diaktifkan, peristiwa pelacakan akan diekspor ke Event Tracing for Windows (ETW) dan dapat diambil oleh alat seperti UIForETW atau Xperf.</translation>
<translation id="340282674066624"><ph name="DOWNLOAD_RECEIVED" />, <ph name="TIME_LEFT" /></translation>
<translation id="3406605057700382950">&amp;Tampilkan bilah bookmark</translation>
<translation id="3412265149091626468">Lompat ke Pilihan</translation>
@@ -1883,6 +1892,7 @@ Saya rasa situs ini tidak perlu diblokir!</translation>
<translation id="3603385196401704894">Prancis Kanada</translation>
<translation id="3603622770190368340">Mendapatkan sertifikat jaringan</translation>
<translation id="3605780360466892872">Pria Berdasi</translation>
+<translation id="3606220979431771195">Turki-F</translation>
<translation id="3608454375274108141">F10</translation>
<translation id="3608576286259426129">Pratinjau gambar pengguna</translation>
<translation id="3609138628363401169">Server tidak mendukung ekstensi negosiasi ulang TLS.</translation>
@@ -2403,6 +2413,7 @@ Semua pengguna harus keluar untuk melanjutkan.</translation>
<translation id="4321136812570927563">{NUM_DOWNLOAD,plural, =1{Lanjutkan unduhan}other{Lanjutkan unduhan}}</translation>
<translation id="4321179778687042513">ctrl</translation>
<translation id="4322394346347055525">Tutup Tab Lain</translation>
+<translation id="4325378361067528777">Aktifkan mode latar belakang API Push</translation>
<translation id="4326952458285403282">Menonaktifkan penggunaan sistem perenderan font DirectWrite eksperimental.</translation>
<translation id="4326999707196471878">Dialog Browser Tampilan Toolkit.</translation>
<translation id="4330406155931244378">Aktifkan Pemeriksa Ejaan Multibahasa</translation>
@@ -2937,6 +2948,8 @@ Tekan sembarang tombol untuk melanjutkan penjelajahan.</translation>
<translation id="5148652308299789060">Nonaktifkan rasterizer perangkat lunak 3D</translation>
<translation id="5150254825601720210">Netscape Certificate SSL Server Name</translation>
<translation id="5151034238407558331">Maaf, Google Payments di pedagang ini hanya dapat digunakan oleh pembeli yang beralamat di AS. Jika Anda adalah warga AS, |ubah alamat rumah Anda dengan Google Payments| atau bayar tanpa menggunakan Google Payments.</translation>
+<translation id="5151639798712723370">"&gt;
+ Perangkat USB-C (port depan sebelah kanan)</translation>
<translation id="5152451685298621771">(Akun untuk anak)</translation>
<translation id="5154108062446123722">Setelan lanjutan untuk <ph name="PRINTING_DESTINATION" /></translation>
<translation id="5154176924561037127">F8</translation>
@@ -3035,6 +3048,7 @@ Tekan sembarang tombol untuk melanjutkan penjelajahan.</translation>
<translation id="5271247532544265821">Mode China Aksara Modern/Tradisional</translation>
<translation id="5271549068863921519">Simpan sandi</translation>
<translation id="5273628206174272911">Navigasi riwayat eksperimental saat menanggapi gulir horizontal.</translation>
+<translation id="5275795814002959418"><ph name="COUNT" /> dari situs ini</translation>
<translation id="5275973617553375938">File yang dipulihkan dari Google Drive</translation>
<translation id="527605719918376753">Nonaktifkan tab</translation>
<translation id="527605982717517565">Selalu izinkan JavaScript di <ph name="HOST" /></translation>
@@ -3081,6 +3095,7 @@ Tekan sembarang tombol untuk melanjutkan penjelajahan.</translation>
<translation id="5328285148748012771">Akses semua aplikasi dari peluncur yang bermanfaat ini. Mainkan game, lakukan video chat, dengarkan musik, edit dokumen, atau dapatkan aplikasi lainnya dari Toko Web Chrome.</translation>
<translation id="5329858601952122676">&amp;Hapus</translation>
<translation id="5330145655348521461">File ini dibuka pada desktop yang berbeda. Pindahkan ke <ph name="USER_NAME" /> (<ph name="MAIL_ADDRESS" />) untuk melihatnya.</translation>
+<translation id="5331975486040154427">Perangkat USB-C (port belakang sebelah kiri)</translation>
<translation id="5332624210073556029">Zona waktu:</translation>
<translation id="5334142896108694079">Cache Skrip</translation>
<translation id="533433379391851622">Versi yang diharapkan "<ph name="EXPECTED_VERSION" />", tapi versinya adalah "<ph name="NEW_ID" />".</translation>
@@ -3127,6 +3142,7 @@ Tekan sembarang tombol untuk melanjutkan penjelajahan.</translation>
<translation id="539755880180803351">Menambahkan pada formulir web dengan prediksi jenis bidang IsiOtomatis sebagai teks placeholder.</translation>
<translation id="5397578532367286026">Penggunaan dan riwayat pengguna ini dapat ditinjau oleh pengelola (<ph name="MANAGER_EMAIL" />) di chrome.com.</translation>
<translation id="5397794290049113714">Anda</translation>
+<translation id="5398824043967640339"><ph name="COUNT" /> dari situs lain</translation>
<translation id="5399158067281117682">PIN tidak cocok!</translation>
<translation id="5400640815024374115">Chip Modul Platform Tepercaya (Trusted Platform Module/TPM) dinonaktifkan atau tidak ada.</translation>
<translation id="5402367795255837559">Braille</translation>
@@ -3951,6 +3967,7 @@ Tekan sembarang tombol untuk melanjutkan penjelajahan.</translation>
<translation id="6575251558004911012">Tanyakan saat situs memerlukan akses ke kamera (disarankan)</translation>
<translation id="6581162200855843583">Tautan Google Drive</translation>
<translation id="6583070985841601920">Masuk sebagai <ph name="USER_EMAIL_ADDRESS" />. Sinkronisasi dinonaktifkan oleh administrator Anda.</translation>
+<translation id="65832705307647870">Isi laman Tab Baru terlebih dahulu dengan situs populer.</translation>
<translation id="6584878029876017575">Microsoft Lifetime Signing</translation>
<translation id="6585234750898046415">Pilih gambar yang akan ditampilkan untuk akun Anda di layar masuk.</translation>
<translation id="6585283250473596934">Memasuki sesi publik.</translation>
@@ -4291,6 +4308,7 @@ Tekan sembarang tombol untuk melanjutkan penjelajahan.</translation>
<translation id="7092106376816104">Pengecualian munculan</translation>
<translation id="7093866338626856921">Menukar data dengan perangkat yang bernama: <ph name="HOSTNAMES" /></translation>
<translation id="7096082900368329802">Ingin menemukan fitur yang lebih hebat?</translation>
+<translation id="7098389117866926363">Perangkat USB-C (port belakang sebelah kiri)</translation>
<translation id="7100897339030255923"><ph name="COUNT" /> item dipilih</translation>
<translation id="7106346894903675391">Beli penyimpanan lagi...</translation>
<translation id="7108338896283013870">Sembunyikan</translation>
@@ -5059,6 +5077,7 @@ Simpan file kunci Anda di tempat yang aman. Anda akan membutuhkannya untuk membu
<translation id="8190193592390505034">Menyambung ke <ph name="PROVIDER_NAME" /></translation>
<translation id="8191230140820435481">Mengelola aplikasi, ekstensi, dan tema Anda</translation>
<translation id="8191453843330043793">Pemecah Proxy V8</translation>
+<translation id="8199491812735365610">Pilih akun untuk masuk</translation>
<translation id="8200772114523450471">Lanjutkan</translation>
<translation id="8202160505685531999">Masukkan kembali sandi untuk memperbarui profil <ph name="DEVICE_TYPE" /> Anda.</translation>
<translation id="8204086856545141093">Permintaan ke server telah diblokir oleh kebijakan.</translation>
@@ -5189,6 +5208,7 @@ Simpan file kunci Anda di tempat yang aman. Anda akan membutuhkannya untuk membu
<translation id="8381977081675353473">Slovak</translation>
<translation id="8382645631174981738"><ph name="EXTENSION_NAME" /> dipasang dari jarak jauh</translation>
<translation id="8382913212082956454">Salin alamat &amp;email</translation>
+<translation id="8384113940676655504">Aktifkan setelan Smart Lock agar Chromebook dapat menemukan ponsel melalui Bluetooth Hemat Energi untuk membuka kunci Chromebook, saat ponsel berada dalam jangkauan.</translation>
<translation id="8390029840652165810">Pastikan sambungan jaringan Anda bekerja dan jika masalah tetap berlanjut, keluar dan masuk kembali untuk menyegarkan kredensial Anda.</translation>
<translation id="8390445751804042000">Mengaktifkan fitur membangunkan perangkat berdasarkan tanda terima beberapa paket jaringan.</translation>
<translation id="8390449457866780408">Server tidak tersedia.</translation>
@@ -5275,6 +5295,7 @@ Simpan file kunci Anda di tempat yang aman. Anda akan membutuhkannya untuk membu
<translation id="8509646642152301857">Unduhan kamus periksa ejaan gagal.</translation>
<translation id="8512476990829870887">Akhiri Proses</translation>
<translation id="851263357009351303">Selalu izinkan <ph name="HOST" /> menampilkan gambar</translation>
+<translation id="8513191386157529469">"<ph name="CLIENT_NAME" />" melakukan debug pada browser ini.</translation>
<translation id="8513974249124254369">ChromeVox (masukan lisan) diaktifkan. Tekan Ctrl+Alt+Z untuk menonaktifkan.</translation>
<translation id="8515737884867295000">Autentikasi berbasis sertifikat gagal</translation>
<translation id="8518865679229538285">Metode masukan Tamil (Typewriter)</translation>
@@ -5394,6 +5415,7 @@ Simpan file kunci Anda di tempat yang aman. Anda akan membutuhkannya untuk membu
<translation id="8677039480012021122">Hapus data dan putuskan hubungan</translation>
<translation id="8677212948402625567">Ciutkan semua...</translation>
<translation id="8678648549315280022">Mengelola setelan unduhan...</translation>
+<translation id="8680251145628383637">Masuk untuk mendapatkan bookmark, riwayat, sandi, dan setelan lain di semua perangkat. Anda juga akan otomatis masuk ke layanan Google.</translation>
<translation id="8680536109547170164"><ph name="QUERY" />, dengan jawaban, <ph name="ANSWER" /></translation>
<translation id="8680787084697685621">Detail proses masuk akun sudah usang.</translation>
<translation id="8684255857039823328">Sandi disimpan. Akses sandi Anda bisa dilakukan di perangkat mana pun di <ph name="MANAGEMENT_LINK" />.</translation>
@@ -5449,6 +5471,7 @@ Simpan file kunci Anda di tempat yang aman. Anda akan membutuhkannya untuk membu
<translation id="874420130893181774">Metode masukan Pinyin Tradisional</translation>
<translation id="8744525654891896746">Pilih avatar untuk pengguna yang dilindungi ini</translation>
<translation id="8744641000906923997">Romaji</translation>
+<translation id="8744959718895556609">Pilih akun dari <ph name="LINK_TEXT" /> Anda</translation>
<translation id="8749863574775030885">Akses perangkat USB dari vendor tak dikenal</translation>
<translation id="8754200782896249056">&lt;p&gt;Saat mengoperasikan <ph name="PRODUCT_NAME" /> pada lingkungan desktop yang didukung, setelan proxy sistem akan digunakan. Akan tetapi, tampaknya kami tidak dapat mendukung sistem Anda atau mungkin ada masalah saat meluncurkan konfigurasi sistem.&lt;/p&gt;
@@ -5569,6 +5592,7 @@ Simpan file kunci Anda di tempat yang aman. Anda akan membutuhkannya untuk membu
<translation id="8933960630081805351">&amp;Tampilkan dalam Penemu</translation>
<translation id="8934732568177537184">Lanjutkan</translation>
<translation id="8938356204940892126">Saya menyerah</translation>
+<translation id="8938800817013097409">Perangkat USB-C (port belakang sebelah kanan)</translation>
<translation id="8940081510938872932">Komputer Anda melakukan terlalu banyak hal saat ini. Coba lagi nanti.</translation>
<translation id="8941173171815156065">Cabut izin '<ph name="PERMISSION" />'</translation>
<translation id="8941248009481596111">Sambungan Anda ke situs ini bersifat pribadi.</translation>
diff --git a/chromium/chrome/app/resources/generated_resources_it.xtb b/chromium/chrome/app/resources/generated_resources_it.xtb
index 3d6e9f547e5..5dc250d9c61 100644
--- a/chromium/chrome/app/resources/generated_resources_it.xtb
+++ b/chromium/chrome/app/resources/generated_resources_it.xtb
@@ -136,6 +136,8 @@
<translation id="1178581264944972037">Pausa</translation>
<translation id="1179803038870941185"><ph name="URL" /> vuole avere il controllo totale dei tuoi dispositivi MIDI.</translation>
<translation id="1181037720776840403">Rimuovi</translation>
+<translation id="11814323404622888">"&gt;
+ Dispositivo USB-C (porta posteriore destra)</translation>
<translation id="1183083053288481515">Utilizzo di un certificato fornito dall'amministratore</translation>
<translation id="1183237619868651138">Impossibile installare <ph name="EXTERNAL_CRX_FILE" /> nella cache locale.</translation>
<translation id="1185924365081634987">Puoi anche provare a <ph name="GUEST_SIGNIN_LINK_START" />navigare come ospite<ph name="GUEST_SIGNIN_LINK_END" /> per correggere questo errore di rete.</translation>
@@ -329,6 +331,7 @@ Tieni presente che il Bluetooth verrà attivato per tutti i dispositivi compatib
<translation id="1468038450257740950">WebGL non è supportato.</translation>
<translation id="1470719357688513792">Le nuove impostazioni dei cookie avranno effetto una volta ricaricata la pagina.</translation>
<translation id="14720830734893704">Attiva il supporto della tastiera virtuale.</translation>
+<translation id="1474079335130556426">Attiva la modalità background per l'API Push. Ciò permette a Chrome di rimanere in esecuzione dopo la chiusura dell'ultima finestra e di attivarsi all'avvio del sistema operativo, se l'API Push lo richiede.</translation>
<translation id="1474339897586437869">Impossibile caricare "<ph name="FILENAME" />". Lo spazio disponibile su Google Drive non è sufficiente.</translation>
<translation id="1476503841242751994">{COUNT,plural, =1{1 password}other{# password}}</translation>
<translation id="1476949146811612304">Imposta il motore di ricerca da utilizzare per le ricerche dalla <ph name="BEGIN_LINK" />omnibox<ph name="END_LINK" />.</translation>
@@ -653,6 +656,7 @@ Tieni presente che il Bluetooth verrà attivato per tutti i dispositivi compatib
<translation id="1918141783557917887">Più &amp;piccolo</translation>
<translation id="192144045824434199">Attiva i riquadri che si aprono al di fuori del frame del browser. Se tenti di aprire un riquadro senza attivare questa opzione, viene visualizzato un popup. I riquadri sono sempre attivi sui canali Dev e Canary.</translation>
<translation id="1921584744613111023"><ph name="DPI" /> dpi</translation>
+<translation id="1921986354447415460">Tastiera Turco F</translation>
<translation id="1923786009776354244">Attiva supporto dell'intestazione Origin nei messaggi Stun WebRTC.</translation>
<translation id="1926741348654461781">Attiva pagine offline</translation>
<translation id="1929546189971853037">Leggere la cronologia di navigazione su tutti i dispositivi su cui viene eseguito l'accesso</translation>
@@ -851,6 +855,7 @@ Tieni presente che il Bluetooth verrà attivato per tutti i dispositivi compatib
<translation id="2231990265377706070">Punto esclamativo</translation>
<translation id="2232876851878324699">Il file conteneva un certificato, che non è stato importato:</translation>
<translation id="2233502537820838181">Ulteriori infor&amp;mazioni</translation>
+<translation id="2233587473672843170">Mostra siti famosi nella pagina Nuova scheda</translation>
<translation id="223714078860837942">Se una pagina non ha impostato un criterio di referrer esplicito, l'impostazione di questo flag riduce la quantità di informazioni incluse nell'intestazione "referrer" per richieste multiorigine.</translation>
<translation id="2238379619048995541">Dati sullo stato di frequenza</translation>
<translation id="2239921694246509981">Aggiungi persona supervisionata</translation>
@@ -928,6 +933,7 @@ Dopo avere creato un nuovo utente supervisionato, puoi gestirne le impostazioni
<translation id="2326606747676847821">Naviga in incognito</translation>
<translation id="2326931316514688470">&amp;Ricarica app</translation>
<translation id="2327492829706409234">Attiva applicazione</translation>
+<translation id="2329597144923131178">Accedi per visualizzare i tuoi Preferiti, la cronologia, le password e altre impostazioni su tutti i tuoi dispositivi.</translation>
<translation id="2332131598580221120">Visualizza nello store</translation>
<translation id="2332742915001411729">Ripristina impostazioni predefinite</translation>
<translation id="2335122562899522968">Questa pagina ha impostato dei cookie.</translation>
@@ -1313,6 +1319,7 @@ Non credo che questo sito debba essere bloccato.</translation>
<translation id="2838379631617906747">Installazione</translation>
<translation id="2841837950101800123">Provider</translation>
<translation id="2843806747483486897">Cambia predefinita...</translation>
+<translation id="2844169650293029770">Dispositivo USB-C (porta anteriore sinistra)</translation>
<translation id="2845382757467349449">Mostra sempre barra dei Preferiti</translation>
<translation id="2846816712032308263">Consente la chiusura veloce di schede/finestre - viene eseguito il gestore onunload js di una scheda indipendentemente dalla GUI.</translation>
<translation id="284970761985428403"><ph name="ASCII_NAME" /> (<ph name="UNICODE_NAME" />)</translation>
@@ -1377,6 +1384,7 @@ Non credo che questo sito debba essere bloccato.</translation>
<translation id="2923469375796950815">Disattiva il nuovo ZIP unpacker.</translation>
<translation id="2924296707677495905">Traslitterazione (namaskaram → ನಮಸ್ಕಾರ)</translation>
<translation id="2925966894897775835">Fogli</translation>
+<translation id="2927017729816812676">Spazio di archiviazione cache</translation>
<translation id="2927657246008729253">Modifica...</translation>
<translation id="2928526264833629376">Continua su Hangouts</translation>
<translation id="2930644991850369934">Si è verificato un problema durante il download dell'immagine di ripristino. Connessione di rete persa.</translation>
@@ -1716,6 +1724,7 @@ Se non modifichi le impostazioni predefinite, <ph name="USER_DISPLAY_NAME" /> pu
<translation id="3396331542604645348">La stampante selezionata non è disponibile o non è installata correttamente. Controlla la stampante o prova a selezionarne un'altra.</translation>
<translation id="3399597614303179694">Tastiera macedone</translation>
<translation id="340013220407300675">Gli autori di un attacco potrebbero cercare di rubare le tue informazioni (ad esempio password, messaggi o dati della carta di credito) da <ph name="BEGIN_BOLD" /><ph name="SITE" /><ph name="END_BOLD" />.</translation>
+<translation id="3401130144947259741">Se l'opzione viene attivata, gli eventi di tracciamento vengono esportati in ETW (Event Tracing for Windows) e quindi possono essere acquisiti tramite strumenti come UIForETW o Xperf.</translation>
<translation id="340282674066624"><ph name="DOWNLOAD_RECEIVED" />, <ph name="TIME_LEFT" /></translation>
<translation id="3406605057700382950">&amp;Mostra barra dei Preferiti</translation>
<translation id="3412265149091626468">Passa alla selezione</translation>
@@ -1872,6 +1881,7 @@ Se non modifichi le impostazioni predefinite, <ph name="USER_DISPLAY_NAME" /> pu
<translation id="3603385196401704894">Francese canadese</translation>
<translation id="3603622770190368340">Ottieni certificato di rete</translation>
<translation id="3605780360466892872">Ventiquattrore</translation>
+<translation id="3606220979431771195">Turco F</translation>
<translation id="3608454375274108141">F10</translation>
<translation id="3608576286259426129">Anteprima immagine utente</translation>
<translation id="3609138628363401169">Il server non supporta l'estensione di rinegoziazione TLS.</translation>
@@ -2380,6 +2390,7 @@ Per continuare, devono disconnettersi tutti gli utenti.</translation>
<translation id="4321136812570927563">{NUM_DOWNLOAD,plural, =1{Continua il download}other{Continua i download}}</translation>
<translation id="4321179778687042513">ctrl</translation>
<translation id="4322394346347055525">Chiudi le altre schede</translation>
+<translation id="4325378361067528777">Attiva la modalità background API Push</translation>
<translation id="4326952458285403282">Consente di disattivare l'utilizzo del sistema sperimentale di visualizzazione dei caratteri DirectWrite.</translation>
<translation id="4326999707196471878">Finestre di dialogo del browser con visualizzazioni toolkit.</translation>
<translation id="4330406155931244378">Abilita il controllo ortografico multilingue</translation>
@@ -2911,6 +2922,8 @@ Premi un tasto qualsiasi per continuare a esplorare.</translation>
<translation id="5148652308299789060">Disattiva unità di rasterizzazione software 3D</translation>
<translation id="5150254825601720210">Nome server SSL certificato Netscape</translation>
<translation id="5151034238407558331">Purtroppo Google Payments può essere utilizzato con questo commerciante soltanto da acquirenti residenti negli Stati Uniti. Se risiedi negli Stati Uniti, |cambia il tuo indirizzo di casa con Google Payments| o paga senza utilizzare Google Payments.</translation>
+<translation id="5151639798712723370">"&gt;
+ Dispositivo USB-C (porta anteriore destra)</translation>
<translation id="5152451685298621771">(Account per minori)</translation>
<translation id="5154108062446123722">Impostazioni avanzate per <ph name="PRINTING_DESTINATION" /></translation>
<translation id="5154176924561037127">F8</translation>
@@ -3009,6 +3022,7 @@ Premi un tasto qualsiasi per continuare a esplorare.</translation>
<translation id="5271247532544265821">Attiva/disattiva modalità cinese tradizionale/cinese semplificato</translation>
<translation id="5271549068863921519">Salva password</translation>
<translation id="5273628206174272911">Navigazione sperimentale nella cronologia in risposta allo scorrimento orizzontale.</translation>
+<translation id="5275795814002959418"><ph name="COUNT" /> da questo sito</translation>
<translation id="5275973617553375938">File recuperati da Google Drive</translation>
<translation id="527605719918376753">Disattiva audio scheda</translation>
<translation id="527605982717517565">Consenti sempre JavaScript su <ph name="HOST" /></translation>
@@ -3055,6 +3069,7 @@ Premi un tasto qualsiasi per continuare a esplorare.</translation>
<translation id="5328285148748012771">Accedi a tutte le tue app da Avvio applicazioni. Gioca, videochatta, ascolta musica, modifica documenti o recupera altre app dal Chrome Web Store.</translation>
<translation id="5329858601952122676">&amp;Elimina</translation>
<translation id="5330145655348521461">Questi file sono aperti su un desktop differente. Passa a <ph name="USER_NAME" /> (<ph name="MAIL_ADDRESS" />) per visualizzarli.</translation>
+<translation id="5331975486040154427">Dispositivo USB-C (porta posteriore sinistra)</translation>
<translation id="5332624210073556029">Fuso orario:</translation>
<translation id="5334142896108694079">Cache script</translation>
<translation id="533433379391851622">La versione prevista era "<ph name="EXPECTED_VERSION" />", ma in realtà era "<ph name="NEW_ID" />".</translation>
@@ -3101,6 +3116,7 @@ Premi un tasto qualsiasi per continuare a esplorare.</translation>
<translation id="539755880180803351">Annota i moduli web con previsioni sul tipo di campi di Compilazione automatica sotto forma di testo segnaposto.</translation>
<translation id="5397578532367286026">L'utilizzo e la cronologia di questo utente possono essere esaminati dal gestore (<ph name="MANAGER_EMAIL" />) su chrome.com.</translation>
<translation id="5397794290049113714">Tu</translation>
+<translation id="5398824043967640339"><ph name="COUNT" /> da altri siti</translation>
<translation id="5399158067281117682">I PIN non corrispondono.</translation>
<translation id="5400640815024374115">Il chip TPM (Trusted Platform Module) non è attivo o è assente.</translation>
<translation id="5402367795255837559">Braille</translation>
@@ -3924,6 +3940,7 @@ Tentativo di identificazione del problema in corso...</translation>
<translation id="6575251558004911012">Chiedi quando un sito richiede l'accesso alla fotocamera (opzione consigliata)</translation>
<translation id="6581162200855843583">Link Google Drive</translation>
<translation id="6583070985841601920">Accesso eseguito come <ph name="USER_EMAIL_ADDRESS" />. La sincronizzazione è stata disattivata dall'amministratore.</translation>
+<translation id="65832705307647870">Inserisci automaticamente siti famosi nella pagina Nuova scheda.</translation>
<translation id="6584878029876017575">Firma definitiva Microsoft</translation>
<translation id="6585234750898046415">Scegli un'immagine da visualizzare per il tuo account nella schermata di accesso.</translation>
<translation id="6585283250473596934">Accesso a una sessione pubblica.</translation>
@@ -4265,6 +4282,7 @@ Tentativo di identificazione del problema in corso...</translation>
<translation id="7092106376816104">Eccezioni popup</translation>
<translation id="7093866338626856921">Scambio di dati con i dispositivi: <ph name="HOSTNAMES" /></translation>
<translation id="7096082900368329802">Vuoi scoprire altre funzionalità straordinarie?</translation>
+<translation id="7098389117866926363">Dispositivo USB-C (porta posteriore sinistra)</translation>
<translation id="7100897339030255923"><ph name="COUNT" /> elementi selezionati</translation>
<translation id="7106346894903675391">Acquista più spazio di archiviazione...</translation>
<translation id="7108338896283013870">Nascondi</translation>
@@ -5024,6 +5042,7 @@ Conserva il file di chiave in un luogo sicuro. Ti servirà per creare nuove vers
<translation id="8190193592390505034">Connessione a <ph name="PROVIDER_NAME" /></translation>
<translation id="8191230140820435481">Gestire applicazioni, estensioni e temi</translation>
<translation id="8191453843330043793">V8 Proxy Resolver</translation>
+<translation id="8199491812735365610">Scegli un account a cui accedere</translation>
<translation id="8200772114523450471">Riprendi</translation>
<translation id="8202160505685531999">Inserisci di nuovo la password per aggiornare il profilo <ph name="DEVICE_TYPE" />.</translation>
<translation id="8204086856545141093">Le richieste al server sono state bloccate da una norma.</translation>
@@ -5154,6 +5173,7 @@ Conserva il file di chiave in un luogo sicuro. Ti servirà per creare nuove vers
<translation id="8381977081675353473">Slovacco</translation>
<translation id="8382645631174981738"><ph name="EXTENSION_NAME" /> è stata installata da remoto</translation>
<translation id="8382913212082956454">Copia indirizzo &amp;email</translation>
+<translation id="8384113940676655504">Consente di attivare un'impostazione Smart Lock che permette al Chromebook di rilevare i telefoni tramite la tecnologia Bluetooth Low Energy in modo da sbloccare il Chromebook quando il telefono si trova nelle vicinanze.</translation>
<translation id="8390029840652165810">Assicurati che la connessione di rete sia attiva; se il problema persiste, esci e accedi nuovamente per aggiornare le credenziali.</translation>
<translation id="8390445751804042000">Consente di riattivare il dispositivo in base alla ricezione di alcuni pacchetti di rete.</translation>
<translation id="8390449457866780408">Server non disponibile.</translation>
@@ -5240,6 +5260,7 @@ Conserva il file di chiave in un luogo sicuro. Ti servirà per creare nuove vers
<translation id="8509646642152301857">Download del dizionario per il controllo ortografico non riuscito.</translation>
<translation id="8512476990829870887">Termina processo</translation>
<translation id="851263357009351303">Consenti sempre la visualizzazione di immagini in <ph name="HOST" /></translation>
+<translation id="8513191386157529469">"<ph name="CLIENT_NAME" />" sta eseguendo il debug del browser.</translation>
<translation id="8513974249124254369">ChromeVox (lettura vocale) attivo. Premi Ctrl+Alt+Z per disattivarlo.</translation>
<translation id="8515737884867295000">Autenticazione basata su certificato non riuscita</translation>
<translation id="8518865679229538285">Metodo di immissione tamil (Typewriter)</translation>
@@ -5359,6 +5380,7 @@ Conserva il file di chiave in un luogo sicuro. Ti servirà per creare nuove vers
<translation id="8677039480012021122">Cancella dati e disconnetti</translation>
<translation id="8677212948402625567">Comprimi tutto...</translation>
<translation id="8678648549315280022">Gestisci impostazioni download...</translation>
+<translation id="8680251145628383637">Accedi per trovare i tuoi segnalibri, la cronologia, le password e altre impostazioni su tutti i tuoi dispositivi. Verrà inoltre eseguito l'accesso automatico ai tuoi servizi Google.</translation>
<translation id="8680536109547170164"><ph name="QUERY" />, risposta, <ph name="ANSWER" /></translation>
<translation id="8680787084697685621">I dati di accesso dell'account sono obsoleti.</translation>
<translation id="8684255857039823328">Password salvata. Accedi alle tue password da qualsiasi dispositivo all'indirizzo <ph name="MANAGEMENT_LINK" />.</translation>
@@ -5414,6 +5436,7 @@ Conserva il file di chiave in un luogo sicuro. Ti servirà per creare nuove vers
<translation id="874420130893181774">Metodo di immissione Pinyin tradizionale</translation>
<translation id="8744525654891896746">Seleziona un avatar per questo utente controllato</translation>
<translation id="8744641000906923997">Romaji</translation>
+<translation id="8744959718895556609">Scegli un account da <ph name="LINK_TEXT" /></translation>
<translation id="8749863574775030885">Accedi a dispositivi USB di fornitori sconosciuti</translation>
<translation id="8754200782896249056">&lt;p&gt;Quando esegui <ph name="PRODUCT_NAME" /> in un ambiente desktop supportato, vengono utilizzate le impostazioni proxy del sistema. Tuttavia, il tuo sistema non è supportato o si è verificato un problema durante l'avvio della tua configurazione di sistema.&lt;/p&gt;
@@ -5531,6 +5554,7 @@ Conserva il file di chiave in un luogo sicuro. Ti servirà per creare nuove vers
<translation id="8933960630081805351">Mo&amp;stra nel Finder</translation>
<translation id="8934732568177537184">Continua</translation>
<translation id="8938356204940892126">Ci rinuncio</translation>
+<translation id="8938800817013097409">Dispositivo USB-C (porta posteriore destra)</translation>
<translation id="8940081510938872932">Troppe operazioni in corso al momento. Riprova più tardi.</translation>
<translation id="8941173171815156065">Revoca l'autorizzazione "<ph name="PERMISSION" />"</translation>
<translation id="8941248009481596111">La tua connessione a questo sito è privata.</translation>
diff --git a/chromium/chrome/app/resources/generated_resources_iw.xtb b/chromium/chrome/app/resources/generated_resources_iw.xtb
index d091e07619d..6038c02f9a7 100644
--- a/chromium/chrome/app/resources/generated_resources_iw.xtb
+++ b/chromium/chrome/app/resources/generated_resources_iw.xtb
@@ -136,6 +136,8 @@
<translation id="1178581264944972037">השהה</translation>
<translation id="1179803038870941185">‏<ph name="URL" /> רוצה לקבל שליטה מלאה על מכשירי MIDI שלך.</translation>
<translation id="1181037720776840403">הסר</translation>
+<translation id="11814323404622888">‏"&gt;
+ מכשיר עם יציאת USB-C (יציאה ימנית-אחורית)</translation>
<translation id="1183083053288481515">משתמש באישור שהוענק על ידי מנהל מערכת</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>
@@ -328,6 +330,7 @@
<translation id="1468038450257740950">‏WebGL אינו נתמך.</translation>
<translation id="1470719357688513792">‏הגדרות חדשות של קובצי Cookie ייכנסו לתוקף לאחר הטעינה מחדש של הדף.</translation>
<translation id="14720830734893704">הפעל תמיכה במקלדת וירטואלית.</translation>
+<translation id="1474079335130556426">‏הפעלת מצב רקע עבור Push API. פעולה זו מאפשרת ל-Chrome להמשיך לפעול לאחר סגירת החלון האחרון, ולהתחיל לפעול במהלך אתחול מערכת ההפעלה, אם Push API מחייב זאת.</translation>
<translation id="1474339897586437869">‏הקובץ "<ph name="FILENAME" />" לא הועלה. אין לך מספיק שטח פנוי ב-Google Drive.</translation>
<translation id="1476503841242751994">{COUNT,plural, =1{סיסמה אחת}two{# סיסמאות}many{# סיסמאות}other{# סיסמאות}}</translation>
<translation id="1476949146811612304">הגדר איזה מנוע חיפוש יופעל בעת חיפוש ב<ph name="BEGIN_LINK" />‏סרגל הכתובות<ph name="END_LINK" />.</translation>
@@ -649,6 +652,7 @@
<translation id="1918141783557917887">&amp;קטן יותר</translation>
<translation id="192144045824434199">‏אפשר הפעלת חלונות מסוג 'חלונית', שנפתחים מחוץ למסגרת הדפדפן. אם לא יופעלו, נסיונות לפתוח 'חלונית' יפתחו חלון מוקפץ במקום. החלוניות תמיד מופעלות בערוצי הפיתוח ו-Canary‏.</translation>
<translation id="1921584744613111023">‏dpi‏ <ph name="DPI" /></translation>
+<translation id="1921986354447415460">‏מקלדת טורקית-F</translation>
<translation id="1923786009776354244">‏הפעל תמיכה בשביל כותרת מקור של WebRTC Stun.</translation>
<translation id="1926741348654461781">אפשר דפים במצב לא מקוון</translation>
<translation id="1929546189971853037">קרא את היסטוריית הגלישה שלך בכל המכשירים שאליהם נכנסת</translation>
@@ -847,6 +851,7 @@
<translation id="2231990265377706070">סימן קריאה</translation>
<translation id="2232876851878324699">הקובץ הכיל אישור אחד, שלא יובא:</translation>
<translation id="2233502537820838181">&amp;מידע נוסף</translation>
+<translation id="2233587473672843170">הצג אתרים פופולריים בדף 'כרטיסייה חדשה'</translation>
<translation id="223714078860837942">אם דף לא קבע מדיניות מפורשת לגורמים מפנים, הגדרת סימון זה תקטין את כמות המידע בכותרת 'הגורם המפנה' לבקשות ממקורות צולבים.</translation>
<translation id="2238379619048995541">נתוני מצב תדירות</translation>
<translation id="2239921694246509981">הוסף משתמש בפיקוח</translation>
@@ -919,6 +924,7 @@
<translation id="2326606747676847821">עבור למצב גלישה בסתר</translation>
<translation id="2326931316514688470">&amp;טען אפליקציה מחדש</translation>
<translation id="2327492829706409234">הפעל יישום</translation>
+<translation id="2329597144923131178">היכנס כדי לקבל גישה אל הסימניות, ההיסטוריה, הסיסמאות והגדרות נוספות בכל המכשירים שברשותך.</translation>
<translation id="2332131598580221120">הצג בחנות</translation>
<translation id="2332742915001411729">אפס לברירת המחדל</translation>
<translation id="2335122562899522968">‏דף זה מגדיר קובצי Cookie.</translation>
@@ -1307,6 +1313,7 @@ http://www.chromium.org/chromium-os/how-tos-and-troubleshooting/debugging-featur
<translation id="2838379631617906747">מתקין</translation>
<translation id="2841837950101800123">ספק</translation>
<translation id="2843806747483486897">שנה את ברירת המחדל...</translation>
+<translation id="2844169650293029770">‏מכשיר עם יציאת USB-C (יציאה שמאלית-קדמית)</translation>
<translation id="2845382757467349449">הצג תמיד את סרגל הסימניות</translation>
<translation id="2846816712032308263">‏אפשרות לסגירה מהירה של כרטיסיות/חלונות -הפעלת המטפל onunload js של כרטיסייה בנפרד מממשק המשתמש הגרפי (GUI).</translation>
<translation id="284970761985428403"><ph name="ASCII_NAME" /> (<ph name="UNICODE_NAME" />)</translation>
@@ -1371,6 +1378,7 @@ http://www.chromium.org/chromium-os/how-tos-and-troubleshooting/debugging-featur
<translation id="2923469375796950815">‏השבת את ה-ZIP unpacker החדש.</translation>
<translation id="2924296707677495905">‏תעתוק (namaskaram → ನಮಸ್ಕಾರ)</translation>
<translation id="2925966894897775835">גיליונות אלקטרוניים</translation>
+<translation id="2927017729816812676">אחסון קבצים שמורים</translation>
<translation id="2927657246008729253">שנה...</translation>
<translation id="2928526264833629376">‏המשך ל-Hangouts</translation>
<translation id="2930644991850369934">אירעה בעיה במהלך ההורדה של תמונת השחזור. החיבור לרשת נותק.</translation>
@@ -1711,6 +1719,7 @@ http://www.chromium.org/chromium-os/how-tos-and-troubleshooting/debugging-featur
<translation id="3396331542604645348">המדפסת שנבחרה אינה זמינה או שאינה מותקנת כראוי. בדוק את המדפסת או נסה לבחור מדפסת אחרת.</translation>
<translation id="3399597614303179694">מקלדת מקדונית</translation>
<translation id="340013220407300675">ייתכן שתוקפים מנסים לגנוב את המידע שלך מ-<ph name="BEGIN_BOLD" /><ph name="SITE" /><ph name="END_BOLD" /> (לדוגמה: סיסמאות, הודעות או כרטיסי אשראי).</translation>
+<translation id="3401130144947259741">‏אם התכונה מופעלת, מתבצע יצוא של אירועי מעקב אל 'מעקב אירועים עבור Windows'‏ (ETW). לאחר היצוא ניתן לתעד אותם באמצעות כלים כמו UIForETW או Xperf.</translation>
<translation id="340282674066624"><ph name="DOWNLOAD_RECEIVED" />, <ph name="TIME_LEFT" /></translation>
<translation id="3406605057700382950">&amp;הצג את סרגל הסימניות</translation>
<translation id="3412265149091626468">עבור אל בחירה</translation>
@@ -1867,6 +1876,7 @@ http://www.chromium.org/chromium-os/how-tos-and-troubleshooting/debugging-featur
<translation id="3603385196401704894">צרפתית קנדית</translation>
<translation id="3603622770190368340">השג אישור רשת</translation>
<translation id="3605780360466892872">מר מכופתר</translation>
+<translation id="3606220979431771195">‏טורקית-F</translation>
<translation id="3608454375274108141">F10</translation>
<translation id="3608576286259426129">תצוגה מקדימה של תמונת המשתמש</translation>
<translation id="3609138628363401169">‏השרת אינו תומך בתוסף TLS לניהול משא ומתן חוזר.</translation>
@@ -2389,6 +2399,7 @@ http://www.chromium.org/chromium-os/how-tos-and-troubleshooting/debugging-featur
<translation id="4321136812570927563">{NUM_DOWNLOAD,plural, =1{המשך את ההורדה}two{המשך את ההורדות}many{המשך את ההורדות}other{המשך את ההורדות}}</translation>
<translation id="4321179778687042513">ctrl</translation>
<translation id="4322394346347055525">סגור כרטיסיות אחרות</translation>
+<translation id="4325378361067528777">‏הפעל מצב רקע Push API</translation>
<translation id="4326952458285403282">‏השבתת השימוש במערכת עיבוד הגופנים הניסיונית DirectWrite.</translation>
<translation id="4326999707196471878">תיבות דו-שיח של דפדפן בתצוגות של ערכת כלים.</translation>
<translation id="4330406155931244378">הפעל בודק איות למספר שפות בו-זמנית</translation>
@@ -2928,6 +2939,8 @@ http://www.chromium.org/chromium-os/how-tos-and-troubleshooting/debugging-featur
<translation id="5148652308299789060">‏בטל rasterizer של תוכנות תלת ממד</translation>
<translation id="5150254825601720210">‏שם שרת SSL של אישור Netscape</translation>
<translation id="5151034238407558331">‏לצערנו, רק משתמשים עם כתובת בארה"ב יכולים להשתמש ב-Google Payments אצל הסוחר הזה. אם אתה תושב ארה"ב, |שנה את כתובת המגורים שלך ב-Google Payments‏| או שלם ללא שימוש ב-Google Payments.</translation>
+<translation id="5151639798712723370">‏"&gt;
+ מכשיר עם יציאת USB-C (יציאה ימנית-קדמית)</translation>
<translation id="5152451685298621771">(חשבון לילדים)</translation>
<translation id="5154108062446123722">הגדרות מתקדמות עבור <ph name="PRINTING_DESTINATION" /></translation>
<translation id="5154176924561037127">F8</translation>
@@ -3026,6 +3039,7 @@ http://www.chromium.org/chromium-os/how-tos-and-troubleshooting/debugging-featur
<translation id="5271247532544265821">עבור בין מצבים של סינית פשוטה/מסורתית</translation>
<translation id="5271549068863921519">שמור סיסמה</translation>
<translation id="5273628206174272911">תכונה ניסיונית לניווט בהיסטוריה בתגובה לגלילת יתר אופקית.</translation>
+<translation id="5275795814002959418"><ph name="COUNT" /> מאתר זה</translation>
<translation id="5275973617553375938">‏קבצים ששוחזרו מ-Google Drive</translation>
<translation id="527605719918376753">השתק כרטיסייה</translation>
<translation id="527605982717517565">‏אפשר תמיד JavaScript ב-<ph name="HOST" /></translation>
@@ -3072,6 +3086,7 @@ http://www.chromium.org/chromium-os/how-tos-and-troubleshooting/debugging-featur
<translation id="5328285148748012771">‏גש אל כל היישומים שלך ממפעיל האפליקציות השימושי הזה. שחק במשחקים, נהל צ'אטים בווידאו, האזן למוסיקה, ערוך מסמכים או קבל יישומים נוספים מחנות האינטרנט של Chrome.</translation>
<translation id="5329858601952122676">&amp;מחק</translation>
<translation id="5330145655348521461">הקבצים האלה נפתחו בשולחן עבודה אחר. עבור אל <ph name="USER_NAME" />‏ (<ph name="MAIL_ADDRESS" />) כדי להציג אותם.</translation>
+<translation id="5331975486040154427">‏מכשיר עם יציאת USB-C (יציאה שמאלית-אחורית)</translation>
<translation id="5332624210073556029">אזור זמן:</translation>
<translation id="5334142896108694079">קובץ שמור של סקריפט</translation>
<translation id="533433379391851622">הגרסה הצפויה היא "<ph name="EXPECTED_VERSION" />", אבל הגרסה היתה "<ph name="NEW_ID" />".</translation>
@@ -3118,6 +3133,7 @@ http://www.chromium.org/chromium-os/how-tos-and-troubleshooting/debugging-featur
<translation id="539755880180803351">הוספת הערות לטופסי אינטרנט באמצעות השלמות מסוג השדה 'מילוי אוטומטי' כטקסט מציין מיקום.</translation>
<translation id="5397578532367286026">‏המנהל (<ph name="MANAGER_EMAIL" />) יכול לבדוק את השימוש וההיסטוריה של משתמש זה ב-chrome.com.</translation>
<translation id="5397794290049113714">אתה</translation>
+<translation id="5398824043967640339"><ph name="COUNT" /> מאתרים אחרים</translation>
<translation id="5399158067281117682">‏קודי ה-PIN אינם תואמים!</translation>
<translation id="5400640815024374115">‏השבב של Trusted Platform Module‏ (TPM) מושבת או חסר.</translation>
<translation id="5402367795255837559">ברייל</translation>
@@ -3533,7 +3549,7 @@ http://www.chromium.org/chromium-os/how-tos-and-troubleshooting/debugging-featur
<translation id="5976160379964388480">אחרים</translation>
<translation id="5978264784700053212">מרכז ההודעות</translation>
<translation id="5979421442488174909">&amp;תרגם ל-<ph name="LANGUAGE" /></translation>
-<translation id="5981759340456370804">כל מיני נתונים - לגיקים בלבד</translation>
+<translation id="5981759340456370804">סטטיסטיקות לגיקים</translation>
<translation id="5982621672636444458">אפשרויות מיון</translation>
<translation id="5984222099446776634">ביקרת לאחרונה</translation>
<translation id="5986279928654338866">השרת <ph name="DOMAIN" /> מצריך שם משתמש וסיסמה.</translation>
@@ -3942,6 +3958,7 @@ http://www.chromium.org/chromium-os/how-tos-and-troubleshooting/debugging-featur
<translation id="6575251558004911012">שאל כשאתר מבקש גישה אל המצלמה שלך (מומלץ)</translation>
<translation id="6581162200855843583">‏קישור ל-Google Drive</translation>
<translation id="6583070985841601920">מחובר כ-<ph name="USER_EMAIL_ADDRESS" />. הסנכרון בוטל על ידי מנהל המערכת שלך.</translation>
+<translation id="65832705307647870">אכלס מראש את הדף 'כרטיסייה חדשה' באתרים פופולריים.</translation>
<translation id="6584878029876017575">‏חתימה לכל החיים של Microsoft</translation>
<translation id="6585234750898046415">בחר תמונה להצגה עבור החשבון שלך במסך הכניסה.</translation>
<translation id="6585283250473596934">נכנס לפעילות ציבורית באתר.</translation>
@@ -4281,6 +4298,7 @@ http://www.chromium.org/chromium-os/how-tos-and-troubleshooting/debugging-featur
<translation id="7092106376816104">חריגים של חלונות קופצים</translation>
<translation id="7093866338626856921">החלפת נתונים עם המכשירים ששמותיהם: <ph name="HOSTNAMES" /></translation>
<translation id="7096082900368329802">רוצה לגלות עוד תכונות מעולות?</translation>
+<translation id="7098389117866926363">‏מכשיר עם יציאת USB-C (יציאה שמאלית מאחור)</translation>
<translation id="7100897339030255923">נבחרו <ph name="COUNT" /> פריטים</translation>
<translation id="7106346894903675391">קנה שטח אחסון נוסף...</translation>
<translation id="7108338896283013870">הסתר</translation>
@@ -5039,6 +5057,7 @@ http://www.chromium.org/chromium-os/how-tos-and-troubleshooting/debugging-featur
<translation id="8190193592390505034">מתחבר אל <ph name="PROVIDER_NAME" /></translation>
<translation id="8191230140820435481">לנהל את היישומים, התוספים והעיצובים שלך</translation>
<translation id="8191453843330043793">V8 Proxy Resolver</translation>
+<translation id="8199491812735365610">בחר חשבון להתחברות</translation>
<translation id="8200772114523450471">חדש</translation>
<translation id="8202160505685531999">הזן שוב את הסיסמה כדי לעדכן את פרופיל <ph name="DEVICE_TYPE" />.</translation>
<translation id="8204086856545141093">בקשות שנשלחו לשרת נחסמו על ידי מדיניות.</translation>
@@ -5169,6 +5188,7 @@ http://www.chromium.org/chromium-os/how-tos-and-troubleshooting/debugging-featur
<translation id="8381977081675353473">סלובקית</translation>
<translation id="8382645631174981738"><ph name="EXTENSION_NAME" /> הותקן מרחוק</translation>
<translation id="8382913212082956454">העתק &amp;כתובת אימייל</translation>
+<translation id="8384113940676655504">‏הפעלת הגדרה של Smart Lock המאפשרת ל-Chromebook לגלות טלפונים באמצעות Bluetooth Low Energy כדי לבטל את הנעילה של ה-Chromebook כאשר הטלפון נמצא בקרבתו.</translation>
<translation id="8390029840652165810">בדוק שחיבור הרשת שלך פועל, ואם הבעיה נמשכת, צא והיכנס שוב כדי לרענן את האישורים שלך.</translation>
<translation id="8390445751804042000">מאפשר להעיר את המכשיר בעקבות קבלה של מנות רשת מסוימות.</translation>
<translation id="8390449457866780408">השרת אינו זמין.</translation>
@@ -5255,6 +5275,7 @@ http://www.chromium.org/chromium-os/how-tos-and-troubleshooting/debugging-featur
<translation id="8509646642152301857">הורדת המילון לבדיקת איות נכשלה.</translation>
<translation id="8512476990829870887">סיים תהליך</translation>
<translation id="851263357009351303">אפשר ל-<ph name="HOST" /> להציג תמונות תמיד</translation>
+<translation id="8513191386157529469">"<ph name="CLIENT_NAME" />" מנפה את הבאגים בדפדפן זה.</translation>
<translation id="8513974249124254369">‏ChromeVox (משוב קולי) מופעל. הקש על Ctrl+Alt+Z כדי להשבית אותו.</translation>
<translation id="8515737884867295000">אימות המבוסס על אישור נכשל</translation>
<translation id="8518865679229538285">שיטת קלט טמילית (מכונת כתיבה)</translation>
@@ -5374,6 +5395,7 @@ http://www.chromium.org/chromium-os/how-tos-and-troubleshooting/debugging-featur
<translation id="8677039480012021122">נקה נתונים והתנתק</translation>
<translation id="8677212948402625567">כווץ הכל...</translation>
<translation id="8678648549315280022">נהל הגדרות הורדה...</translation>
+<translation id="8680251145628383637">‏היכנס כדי לקבל גישה אל הסימניות, ההיסטוריה, הסיסמאות והגדרות נוספות בכל המכשירים שברשותך. בנוסף, תחובר אוטומטית אל שירותי Google.</translation>
<translation id="8680536109547170164"><ph name="QUERY" /> , תשובה, <ph name="ANSWER" /></translation>
<translation id="8680787084697685621">פרטי הכניסה לחשבון אינם מעודכנים.</translation>
<translation id="8684255857039823328">הסיסמה נשמרה. גש לסיסמאות שלך מכל מכשיר ב-<ph name="MANAGEMENT_LINK" />.</translation>
@@ -5429,6 +5451,7 @@ http://www.chromium.org/chromium-os/how-tos-and-troubleshooting/debugging-featur
<translation id="874420130893181774">‏שיטת קלט Traditional Pinyin</translation>
<translation id="8744525654891896746">בחירת דמות עבור משתמש בפיקוח זה</translation>
<translation id="8744641000906923997">Romaji</translation>
+<translation id="8744959718895556609">בחר חשבון מתוך <ph name="LINK_TEXT" /></translation>
<translation id="8749863574775030885">‏גש למכשירי USB מספק לא ידוע</translation>
<translation id="8754200782896249056">‏&lt;p&gt;בעת הפעלת <ph name="PRODUCT_NAME" /> בסביבה של שולחנות עבודה נתמכים, ייעשה שימוש בהגדרות ה-Proxy של המערכת. עם זאת, ייתכן שהמערכת שלך אינה נתמכת, או שאירעה בעיה בהפעלת תצורת המערכת.&lt;/p&gt;
@@ -5548,6 +5571,7 @@ http://www.chromium.org/chromium-os/how-tos-and-troubleshooting/debugging-featur
<translation id="8933960630081805351">‏ה&amp;צג ב-Finder</translation>
<translation id="8934732568177537184">המשך</translation>
<translation id="8938356204940892126">אני מוותר</translation>
+<translation id="8938800817013097409">‏מכשיר עם יציאת USB-C (יציאה ימנית מאחור)</translation>
<translation id="8940081510938872932">המחשב מבצע יותר מדי פעולות כרגע. נסה שוב מאוחר יותר.</translation>
<translation id="8941173171815156065">בטל את ההרשאה '<ph name="PERMISSION" />'</translation>
<translation id="8941248009481596111">החיבור שלך לאתר זה הוא פרטי.</translation>
diff --git a/chromium/chrome/app/resources/generated_resources_ja.xtb b/chromium/chrome/app/resources/generated_resources_ja.xtb
index 124da359669..a62083b3b77 100644
--- a/chromium/chrome/app/resources/generated_resources_ja.xtb
+++ b/chromium/chrome/app/resources/generated_resources_ja.xtb
@@ -136,6 +136,8 @@
<translation id="1178581264944972037">一時停止</translation>
<translation id="1179803038870941185"><ph name="URL" /> が MIDI デバイスのフル コントロールを求めています。</translation>
<translation id="1181037720776840403">削除</translation>
+<translation id="11814323404622888">"&gt;
+ USB-C デバイス(右奥のポート)</translation>
<translation id="1183083053288481515">管理者が提供する証明書を使用しています</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>
@@ -330,6 +332,7 @@
<translation id="1468038450257740950">WebGL はサポートされていません。</translation>
<translation id="1470719357688513792">新しい Cookie 設定はページの再読み込み後に有効になります。</translation>
<translation id="14720830734893704">仮想キーボードのサポートを有効にします。</translation>
+<translation id="1474079335130556426">Push API 用のバックグラウンド モードを有効にします。このモードを有効にすると、Push API で必要な場合、Chrome は最後のウィンドウを閉じても引き続き実行され、また OS の起動時に一緒に起動します。</translation>
<translation id="1474339897586437869">「<ph name="FILENAME" />」はアップロードされていません。Google ドライブに十分な空き容量がありません。</translation>
<translation id="1476503841242751994">{COUNT,plural, =1{1 個のパスワード}other{# 個のパスワード}}</translation>
<translation id="1476949146811612304"> <ph name="BEGIN_LINK" />アドレスバー<ph name="END_LINK" />
@@ -658,6 +661,7 @@
<translation id="1918141783557917887">縮小(&amp;S)</translation>
<translation id="192144045824434199">ブラウザ フレームの外側に開くパネル ウィンドウを有効にします。有効にしていない場合は、パネルを開こうとするとポップアップ ウィンドウが表示されます。パネルは Dev チャンネルと Canary チャンネルでは常に有効になっています。</translation>
<translation id="1921584744613111023"><ph name="DPI" /> dpi</translation>
+<translation id="1921986354447415460">トルコ語-F キーボード</translation>
<translation id="1923786009776354244">WebRTC Stun オリジン ヘッダーのサポートを有効にする。</translation>
<translation id="1926741348654461781">オフライン ページを有効にする</translation>
<translation id="1929546189971853037">ログインしているすべてのデバイスでの閲覧履歴の読み取り</translation>
@@ -856,6 +860,7 @@
<translation id="2231990265377706070">感嘆符</translation>
<translation id="2232876851878324699">ファイルに含まれる 1 件の証明書をインポートできませんでした:</translation>
<translation id="2233502537820838181">詳細情報(&amp;M)</translation>
+<translation id="2233587473672843170">新しいタブページに人気サイトを表示する</translation>
<translation id="223714078860837942">ページで参照元 URL のポリシーが明確に設定されていない場合、このフラグを設定すると、発信元が異なるリクエストの「referer」ヘッダーの情報量を少なくすることができます。</translation>
<translation id="2238379619048995541">周波数状態データ</translation>
<translation id="2239921694246509981">監視対象ユーザーを追加</translation>
@@ -931,6 +936,7 @@
<translation id="2326606747676847821">シークレット モード</translation>
<translation id="2326931316514688470">アプリを再読み込み(&amp;R)</translation>
<translation id="2327492829706409234">アプリを有効にする</translation>
+<translation id="2329597144923131178">ログインすると、お使いのどのデバイスでも同じブックマーク、履歴、パスワード、その他の設定を利用できるようになります。</translation>
<translation id="2332131598580221120">ストアで見る</translation>
<translation id="2332742915001411729">デフォルトに戻す</translation>
<translation id="2335122562899522968">このページの Cookie が設定されました。</translation>
@@ -1319,6 +1325,7 @@
<translation id="2838379631617906747">インストール中</translation>
<translation id="2841837950101800123">提供元</translation>
<translation id="2843806747483486897">デフォルトを変更...</translation>
+<translation id="2844169650293029770">USB-C デバイス(左手前のポート)</translation>
<translation id="2845382757467349449">ブックマーク バーを常に表示</translation>
<translation id="2846816712032308263">タブ/ウィンドウを高速に閉じられるようにします(タブの onunload js ハンドラを GUI とは別に実行します)。</translation>
<translation id="284970761985428403"><ph name="ASCII_NAME" />(<ph name="UNICODE_NAME" />)</translation>
@@ -1383,6 +1390,7 @@
<translation id="2923469375796950815">新しい ZIP 解凍ツールを無効にする。</translation>
<translation id="2924296707677495905">文字変換(namaskaram → ನಮಸ್ಕಾರ)</translation>
<translation id="2925966894897775835">スプレッドシート</translation>
+<translation id="2927017729816812676">キャッシュ ストレージ</translation>
<translation id="2927657246008729253">変更...</translation>
<translation id="2928526264833629376">ハングアウトに進む</translation>
<translation id="2930644991850369934">リカバリ イメージのダウンロード中に問題が発生しました。ネットワーク接続が切断されました。</translation>
@@ -1725,6 +1733,7 @@
<translation id="3396331542604645348">選択したプリンタは利用できないか、正しくインストールされていません。プリンタを確認するか、別のプリンタを選択してみてください。</translation>
<translation id="3399597614303179694">マケドニア語キーボード</translation>
<translation id="340013220407300675">攻撃者が、<ph name="BEGIN_BOLD" /><ph name="SITE" /><ph name="END_BOLD" /> 上のあなたの情報(パスワード、メッセージ、クレジット カード情報など)を不正に取得しようとしている可能性があります。</translation>
+<translation id="3401130144947259741">有効にすると、トレース イベントは Event Tracing for Windows(ETW)にエクスポートされ、UIForETW や XperfIf などのツールで捕捉できるようになります。</translation>
<translation id="340282674066624"><ph name="DOWNLOAD_RECEIVED" />、<ph name="TIME_LEFT" /></translation>
<translation id="3406605057700382950">ブックマーク バーを表示(&amp;S)</translation>
<translation id="3412265149091626468">選択部分へジャンプ</translation>
@@ -1883,6 +1892,7 @@
<translation id="3603385196401704894">フランス語(カナダ)</translation>
<translation id="3603622770190368340">ネットワーク証明書を取得</translation>
<translation id="3605780360466892872">ボタンダウン</translation>
+<translation id="3606220979431771195">トルコ語-F</translation>
<translation id="3608454375274108141">F10</translation>
<translation id="3608576286259426129">ユーザー画像のプレビュー</translation>
<translation id="3609138628363401169">このサーバーでは TLS の再交渉拡張がサポートされていません。</translation>
@@ -2403,6 +2413,7 @@
<translation id="4321136812570927563">{NUM_DOWNLOAD,plural, =1{ダウンロードを続ける}other{ダウンロードを続ける}}</translation>
<translation id="4321179778687042513">ctrl</translation>
<translation id="4322394346347055525">他のタブをすべて閉じる</translation>
+<translation id="4325378361067528777">Push API 用のバックグラウンド モードを有効にする</translation>
<translation id="4326952458285403282">試験運用版の DirectWrite フォント レンダリング システムの使用を無効にします。</translation>
<translation id="4326999707196471878">ツールキット表示のブラウザ ダイアログ</translation>
<translation id="4330406155931244378">多言語スペルチェックを有効にする</translation>
@@ -2937,6 +2948,8 @@
<translation id="5148652308299789060">3D ソフトウェア ラスタライザを無効にする</translation>
<translation id="5150254825601720210">Netscape 証明書 SSL サーバー名</translation>
<translation id="5151034238407558331">この販売者に対しては、お客様の住所が米国である場合にのみ Google ペイメントをご利用いただけます。米国にお住まいの場合は、|Google ペイメントに登録している自宅住所を変更|してください。または、Google ペイメントを使用せずに支払いを行ってください。</translation>
+<translation id="5151639798712723370">"&gt;
+ USB-C デバイス(右手前のポート)</translation>
<translation id="5152451685298621771">(子供向けのアカウント)</translation>
<translation id="5154108062446123722"><ph name="PRINTING_DESTINATION" /> の詳細設定</translation>
<translation id="5154176924561037127">F8</translation>
@@ -3035,6 +3048,7 @@
<translation id="5271247532544265821">中国語の簡体/繁体モードを切り替える</translation>
<translation id="5271549068863921519">パスワードを保存</translation>
<translation id="5273628206174272911">横方向のオーバースクロールに応じた履歴表示(試験運用版)。</translation>
+<translation id="5275795814002959418">このサイトから <ph name="COUNT" /> 個</translation>
<translation id="5275973617553375938">Google ドライブから復元されたファイル</translation>
<translation id="527605719918376753">タブをミュート</translation>
<translation id="527605982717517565"><ph name="HOST" /> の Javascript を常に許可する</translation>
@@ -3081,6 +3095,7 @@
<translation id="5328285148748012771">このランチャーは、すべてのアプリにアクセスできる便利な場所です。ゲーム、ビデオチャット、音楽鑑賞、ドキュメント編集などをすぐに始めることができます。Chrome ウェブストアには豊富なアプリが揃っています。</translation>
<translation id="5329858601952122676">削除(&amp;D)</translation>
<translation id="5330145655348521461">これらのファイルは別のデスクトップで開かれます。表示するには <ph name="USER_NAME" />(<ph name="MAIL_ADDRESS" />)に移動してください。</translation>
+<translation id="5331975486040154427">USB-C デバイス(左奥のポート)</translation>
<translation id="5332624210073556029">タイムゾーン:</translation>
<translation id="5334142896108694079">スクリプト キャッシュ</translation>
<translation id="533433379391851622">期待されるバージョンは「<ph name="EXPECTED_VERSION" />」ですが、「<ph name="NEW_ID" />」になっています。</translation>
@@ -3127,6 +3142,7 @@
<translation id="539755880180803351">自動入力欄型の予測機能をプレースホルダ テキストとしてウェブ フォームに追加します。</translation>
<translation id="5397578532367286026">このユーザーの利用状況や履歴は、chrome.com で管理者(<ph name="MANAGER_EMAIL" />)によって確認されます。</translation>
<translation id="5397794290049113714">あなた</translation>
+<translation id="5398824043967640339">他のサイトから <ph name="COUNT" /> 個</translation>
<translation id="5399158067281117682">PIN が一致しません。</translation>
<translation id="5400640815024374115">Trusted Platform Module(TPM)チップは、無効であるか、存在しません。</translation>
<translation id="5402367795255837559">点字</translation>
@@ -3952,6 +3968,7 @@
<translation id="6575251558004911012">カメラへのアクセスをサイトが要求するたびに確認する(推奨)</translation>
<translation id="6581162200855843583">Google ドライブ リンク</translation>
<translation id="6583070985841601920"><ph name="USER_EMAIL_ADDRESS" /> としてログインしましたが、同期は管理者によって無効にされています。</translation>
+<translation id="65832705307647870">新しいタブページを開いたときに人気サイトの一覧を表示します。</translation>
<translation id="6584878029876017575">Microsoft ライフタイム署名</translation>
<translation id="6585234750898046415">ログイン画面のアカウントに表示する画像を選択します。</translation>
<translation id="6585283250473596934">公開セッションを開始しています。</translation>
@@ -4296,6 +4313,7 @@
<translation id="7092106376816104">ポップアップの例外</translation>
<translation id="7093866338626856921">デバイス <ph name="HOSTNAMES" /> とのデータ交換</translation>
<translation id="7096082900368329802">まだまだ機能があります。</translation>
+<translation id="7098389117866926363">USB-C デバイス(背面左のポート)</translation>
<translation id="7100897339030255923"><ph name="COUNT" /> 個のアイテムが選択されています</translation>
<translation id="7106346894903675391">追加容量を購入...</translation>
<translation id="7108338896283013870">非表示</translation>
@@ -5073,6 +5091,7 @@
<translation id="8190193592390505034"><ph name="PROVIDER_NAME" /> に接続中</translation>
<translation id="8191230140820435481">アプリ、拡張機能、テーマを管理する</translation>
<translation id="8191453843330043793">V8 プロキシ リゾルバ</translation>
+<translation id="8199491812735365610">ログインするアカウントを選択</translation>
<translation id="8200772114523450471">再開</translation>
<translation id="8202160505685531999"><ph name="DEVICE_TYPE" /> のプロフィールを更新するにはパスワードを再入力してください。</translation>
<translation id="8204086856545141093">サーバーへのリクエストがポリシーによってブロックされました。</translation>
@@ -5203,6 +5222,7 @@
<translation id="8381977081675353473">スロバキア語</translation>
<translation id="8382645631174981738"><ph name="EXTENSION_NAME" /> がリモートでインストールされました</translation>
<translation id="8382913212082956454">メール アドレスをコピー(&amp;E)</translation>
+<translation id="8384113940676655504">Smart Lock 設定を有効にします。この設定が有効な場合、Chromebook で Bluetooth Low Energy を介してスマートフォンが検出されるので、スマートフォンが近くにあるときに Chromebook のロックを解除できるようになります。</translation>
<translation id="8390029840652165810">ネットワーク接続が正常であるかどうかを確認してください。問題が解決しない場合は、ログアウトしてからもう一度ログインし、認証情報を更新してください。</translation>
<translation id="8390445751804042000">いくつかのネットワーク パケットを受信したときにデバイスがスリープから復帰するようにします。</translation>
<translation id="8390449457866780408">サーバーを使用できません。</translation>
@@ -5289,6 +5309,7 @@
<translation id="8509646642152301857">スペルチェック辞書をダウンロードできませんでした。</translation>
<translation id="8512476990829870887">プロセスを終了</translation>
<translation id="851263357009351303"><ph name="HOST" /> の画像を常に表示する</translation>
+<translation id="8513191386157529469">「<ph name="CLIENT_NAME" />」がこのブラウザをデバッグしています。</translation>
<translation id="8513974249124254369">ChromeVox(音声フィードバック)が有効です。無効にするには Ctrl+Alt+Z を押してください。</translation>
<translation id="8515737884867295000">証明書ベースの認証に失敗しました</translation>
<translation id="8518865679229538285">タミル語の入力方法(タイプライター)</translation>
@@ -5408,6 +5429,7 @@
<translation id="8677039480012021122">データを消去して切断</translation>
<translation id="8677212948402625567">すべてを折りたたむ...</translation>
<translation id="8678648549315280022">ダウンロード設定を管理...</translation>
+<translation id="8680251145628383637">ブックマーク、履歴、パスワードなどの設定をすべてのデバイスで使用するにはログインしてください。ログインすると、利用している Google サービスにも自動的にログインすることになります。</translation>
<translation id="8680536109547170164">「<ph name="QUERY" />」に対する答え: 「<ph name="ANSWER" />」</translation>
<translation id="8680787084697685621">アカウントのログイン情報が古くなっています。</translation>
<translation id="8684255857039823328">パスワードを保存しました。どのデバイスからでも <ph name="MANAGEMENT_LINK" /> でパスワードにアクセスできます。</translation>
@@ -5463,6 +5485,7 @@
<translation id="874420130893181774">繁体字ピンイン入力方法</translation>
<translation id="8744525654891896746">この監視対象ユーザーのアバターを選択してください</translation>
<translation id="8744641000906923997">ローマ字</translation>
+<translation id="8744959718895556609"><ph name="LINK_TEXT" /> からアカウントを選択</translation>
<translation id="8749863574775030885">不明なベンダーの USB デバイスへのアクセス</translation>
<translation id="8754200782896249056">&lt;p&gt;<ph name="PRODUCT_NAME" /> をサポート対象のデスクトップ環境で実行するとシステムのプロキシ設定が使用されますが、お使いのシステムがサポートされていないか、システム設定の適用で問題が発生した可能性があります。&lt;/p&gt;
@@ -5583,6 +5606,7 @@
<translation id="8933960630081805351">Finder で表示(&amp;S)</translation>
<translation id="8934732568177537184">続行</translation>
<translation id="8938356204940892126">読み込みを中止</translation>
+<translation id="8938800817013097409">USB-C デバイス(背面右のポート)</translation>
<translation id="8940081510938872932">お使いのパソコンは現在、多くの処理を実施しています。しばらくしてからもう一度お試しください。</translation>
<translation id="8941173171815156065">権限「<ph name="PERMISSION" />」を取り消します</translation>
<translation id="8941248009481596111">このサイトへの接続はプライベート接続です。</translation>
diff --git a/chromium/chrome/app/resources/generated_resources_kn.xtb b/chromium/chrome/app/resources/generated_resources_kn.xtb
index c869f33880c..babde8de4f6 100644
--- a/chromium/chrome/app/resources/generated_resources_kn.xtb
+++ b/chromium/chrome/app/resources/generated_resources_kn.xtb
@@ -136,6 +136,8 @@
<translation id="1178581264944972037">ವಿರಾಮ</translation>
<translation id="1179803038870941185">ನಿಮ್ಮ MIDI ಸಾಧನಗಳ ಸಂಪೂರ್ಣ ನಿಯಂತ್ರಣ ಪಡೆಯಲು <ph name="URL" /> ಬಯಸುತ್ತದೆ.</translation>
<translation id="1181037720776840403">ತೆಗೆದುಹಾಕು</translation>
+<translation id="11814323404622888">"&gt;
+ USB-C ಸಾಧನ (ಬಲ ಭಾಗದ ಹಿಂದಿನ ಪೋರ್ಟ್‌)</translation>
<translation id="1183083053288481515">ನಿರ್ವಾಹಕ-ಒದಗಿಸಿದ ಪ್ರಮಾಣಪತ್ರವನ್ನು ಬಳಸುವುದು</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>
@@ -329,6 +331,7 @@
<translation id="1468038450257740950">WebGL ಬೆಂಬಲಿಸುವುದಿಲ್ಲ.</translation>
<translation id="1470719357688513792">ಪುಟವನ್ನು ಮರುಲೋಡ್ ಮಾಡಿದ ನಂತರ ಹೊಸ ಕುಕಿ ಸೆಟ್ಟಿಂಗ್‌ಗಳು ಕಾರ್ಯಗತವಾಗುತ್ತವೆ.</translation>
<translation id="14720830734893704">ವರ್ಚುಯಲ್ ಕೀಬೋರ್ಡ್ ಬೆಂಬಲವನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಿ.</translation>
+<translation id="1474079335130556426">ಪುಶ್‌ API ಗೆ ಹಿನ್ನೆಲೆ ಮೋಡ್ ಸಕ್ರಿಯಗೊಳಿಸಿ. ಇದು ಕೊನೆಯ ವಿಂಡೋ ಮುಚ್ಚಿದ ನಂತರ ರನ್‌ ಮಾಡುವುದನ್ನು ಮುಂದುವರಿಸಲು ಮತ್ತು ಪುಶ್‌ API ಗೆ ಅಗತ್ಯವಿದ್ದಲ್ಲಿ OS ಸೆಟಪ್‌ನಲ್ಲಿ ಪ್ರಾರಂಭಿಸಲು Chrome ಗೆ ಅವಕಾಶ ಮಾಡಿಕೊಡುತ್ತದೆ.</translation>
<translation id="1474339897586437869">"<ph name="FILENAME" />" ಅನ್ನು ಅಪ್‌ಲೋಡ್ ಮಾಡಲಾಗಿಲ್ಲ. ನಿಮ್ಮ Google ಡ್ರೈವ್‌ನಲ್ಲಿ ಸಾಕಷ್ಟು ಸ್ಥಳಾವಕಾಶವಿಲ್ಲ.</translation>
<translation id="1476503841242751994">{COUNT,plural, =1{1 ಪಾಸ್‌ವರ್ಡ್‌}one{# ಪಾಸ್‌ವರ್ಡ್‌ಗಳು}other{# ಪಾಸ್‌ವರ್ಡ್‌ಗಳು}}</translation>
<translation id="1476949146811612304"><ph name="BEGIN_LINK" />ಓಮ್ನಿಬಾಕ್ಸ್<ph name="END_LINK" /> ಮೂಲಕ ಹುಡುಕಾಟ ನಡೆಸುತ್ತಿರುವಾಗ ಯಾವ ಹುಡುಕಾಟ ಎಂಜಿನ್ ಅನ್ನು ಬಳಸಬೇಕು ಎಂಬುದನ್ನು ಹೊಂದಿಸಿ.</translation>
@@ -654,6 +657,7 @@
<translation id="1918141783557917887">&amp;ಚಿಕ್ಕದು</translation>
<translation id="192144045824434199">ಬ್ರೌಸರ್ ಫ್ರೇಮ್‌‌ನ ಹೊರ ತೆಗೆಯುವ ಫಲಕ ವಿಂಡೋಗಳನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಿ. ಸಕ್ರಿಯಗೊಳಿಸಲಾಗದಿದ್ದರೆ ಫಲಕವನ್ನು ತೆರೆಯುವ ಪ್ರಯತ್ನಗಳ ಬದಲಿಗೆ ಪಾಪ್ ಅಪ್ ತೆರೆಯುತ್ತದೆ. ದೇವ್ ಮತ್ತು ಕ್ಯಾನರಿ ಚಾನಲ್‌ಗಳಲ್ಲಿ ಫಲಕಗಳು ಯಾವಾಗಲೂ ಸಕ್ರಿಯಗೊಳಿಸಲಾಗುತ್ತದೆ.</translation>
<translation id="1921584744613111023"><ph name="DPI" /> dpi</translation>
+<translation id="1921986354447415460">ಟರ್ಕಿಶ್-F ಕೀಬೋರ್ಡ್</translation>
<translation id="1923786009776354244">WebRTC ಸ್ಟನ್ ಮೂಲದ ಹೆಡರ್‌ಗಾಗಿ ಬೆಂಬಲವನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಿ.</translation>
<translation id="1926741348654461781">ಆಫ್‌ಲೈನ್ ಪುಟಗಳನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಿ</translation>
<translation id="1929546189971853037">ನಿಮ್ಮ ಎಲ್ಲಾ ಸೈನ್ ಇನ್ ಮಾಡಿರುವ ಸಾಧನಗಳಲ್ಲಿ ನಿಮ್ಮ ಬ್ರೌಸಿಂಗ್ ಇತಿಹಾಸವನ್ನು ಓದಿ</translation>
@@ -860,6 +864,7 @@
<translation id="2231990265377706070">ಆಶ್ಚರ್ಯಸೂಚಕ ಬಿಂದು</translation>
<translation id="2232876851878324699">ಫೈಲ್ ಆಮದು ಮಾಡದೆ ಇರುವಂತಹ ಒಂದು ಪ್ರಮಾಣಪತ್ರವನ್ನು ಒಳಗೊಂಡಿದೆ:</translation>
<translation id="2233502537820838181">&amp;ಹೆಚ್ಚಿನ ಮಾಹಿತಿ</translation>
+<translation id="2233587473672843170">ಹೊಸ ಟ್ಯಾಬ್‌ ಪುಟದಲ್ಲಿ ಜನಪ್ರಿಯ ಸೈಟ್‌ಗಳನ್ನು ತೋರಿಸಿ</translation>
<translation id="223714078860837942">ಪುಟವು ಬಹಿರಂಗ ಉಲ್ಲೇಖಿತರ ನೀತಿಯನ್ನು ಹೊಂದಿಸದಿದ್ದಲ್ಲಿ, ಈ ಫ್ಲ್ಯಾಗ್ ಅನ್ನು ಹೊಂದಿಸುವ ಮೂಲಕ 'referer' ಶಿರೋಲೇಖದಲ್ಲಿನ ಮಾಹಿತಿಯ ಪ್ರಮಾಣವನ್ನು ಕ್ರಾಸ್-ಆರಿಜಿನ್ ವಿನಂತಿಗಳಿಗೆ ಕಡಿಮೆ ಮಾಡುತ್ತದೆ.</translation>
<translation id="2238379619048995541">ಆವರ್ತನ ಸ್ಥಿತಿಯ ಡೇಟಾ</translation>
<translation id="2239921694246509981">ಮೇಲ್ವಿಚಾರಣೆ ವ್ಯಕ್ತಿಯನ್ನು ಸೇರಿಸಿ</translation>
@@ -937,6 +942,7 @@
<translation id="2326606747676847821">ಅಜ್ಞಾತ ಬ್ರೌಸರ್‌ಗೆ ಹೋಗು</translation>
<translation id="2326931316514688470">ಅಪ್ಲಿಕೇಶನ್ &amp;ಮರುಲೋಡ್ ಮಾಡಿ</translation>
<translation id="2327492829706409234">ಅಪ್ಲಿಕೇಶನ್ ಸಕ್ರಿಯಗೊಳಿಸು</translation>
+<translation id="2329597144923131178">ನಿಮ್ಮ ಎಲ್ಲ ಸಾಧನಗಳಲ್ಲಿ ನಿಮ್ಮ ಬುಕ್‌ಮಾರ್ಕ್‌ಗಳು, ಇತಿಹಾಸ ಮತ್ತು ಇತರ ಸೆಟ್ಟಿಂಗ್‌ಗಳನ್ನು ಪಡೆದುಕೊಳ್ಳಲು ಸೈನ್ ಇನ್ ಮಾಡಿ.</translation>
<translation id="2332131598580221120">ಸ್ಟೋರ್‌ನಲ್ಲಿ ವೀಕ್ಷಿಸಿ</translation>
<translation id="2332742915001411729">ಡೀಫಾಲ್ಟ್‌ಗೆ ಮರುಹೊಂದಿಸಿ</translation>
<translation id="2335122562899522968">ಈ ಪುಟವು ಕುಕೀಸ್‌ಗಳನ್ನು ಸೆಟ್ ಮಾಡುತ್ತದೆ.</translation>
@@ -1325,6 +1331,7 @@
<translation id="2838379631617906747">ಸ್ಥಾಪಿಸಲಾಗುತ್ತಿದೆ</translation>
<translation id="2841837950101800123">ಪೂರೈಕೆದಾರರು</translation>
<translation id="2843806747483486897">ಡೀಫಾಲ್ಟ್‌ ಅನ್ನು ಬದಲಾಯಿಸಿ...</translation>
+<translation id="2844169650293029770">USB-C ಸಾಧನ (ಎಡ ಭಾಗದ ಮುಂದಿನ ಪೋರ್ಟ್‌)</translation>
<translation id="2845382757467349449">ಯಾವಾಗಲೂ ಬುಕ್‌ಮಾರ್ಕ್‌ ಪಟ್ಟಿ ತೋರಿಸು</translation>
<translation id="2846816712032308263">ವೇಗವಾದ ಟ್ಯಾಬ್/ವಿಂಡೋ ಮುಚ್ಚುವಿಕೆಯನ್ನು ಸಕ್ರಿಯಗೊಳಿಸುತ್ತದೆ - runs a tab's onunload js handler independently of the GUI.</translation>
<translation id="284970761985428403"><ph name="ASCII_NAME" /> (<ph name="UNICODE_NAME" />)</translation>
@@ -1389,6 +1396,7 @@
<translation id="2923469375796950815">ಹೊಸ ZIP ಅನ್‌ಪ್ಯಾಕರ್ ಅನ್ನು ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಿ.</translation>
<translation id="2924296707677495905">ಲಿಪ್ಯಂತರಣ (namaskaram → ನಮಸ್ಕಾರ)</translation>
<translation id="2925966894897775835">ಶೀಟ್‌ಗಳು</translation>
+<translation id="2927017729816812676">ಕ್ಯಾಶ್ ಸಂಗ್ರಹಣೆ</translation>
<translation id="2927657246008729253">ಬದಲಿಸು...</translation>
<translation id="2928526264833629376">Hangouts ಗೆ ಮುಂದುವರಿಸಿ</translation>
<translation id="2930644991850369934">ಪುನರ್‌ಪ್ರಾಪ್ತಿ ಇಮೇಜ್ ಡೌನ್‌ಲೋಡ್ ಸಮಯದಲ್ಲಿ ಒಂದು ಸಮಸ್ಯೆ ಕಂಡುಬಂದಿದೆ. ನೆಟ್‌ವರ್ಕ್ ಸಂಪರ್ಕವನ್ನು ಕಳೆದುಕೊಂಡಿದೆ.</translation>
@@ -1729,6 +1737,7 @@
<translation id="3396331542604645348">ಆಯ್ಕೆಮಾಡಿದ ಮುದ್ರಕವು ಲಭ್ಯವಿಲ್ಲ ಅಥವಾ ಸರಿಯಾಗಿ ಸ್ಥಾಪನೆ ಮಾಡಲಾಗಿಲ್ಲ. ನಿಮ್ಮ ಮುದ್ರಕವನ್ನು ಪರೀಕ್ಷಿಸಿ ಅಥವಾ ಅವಶ್ಯವಿದ್ದರೆ ಬೇರೊಂದು ಮುದ್ರಕವನ್ನು ಆಯ್ಕೆಮಾಡಲು ಪ್ರಯತ್ನಿಸಿ.</translation>
<translation id="3399597614303179694">ಮೆಸಿಡೋನಿಯನ್ ಕೀಬೋರ್ಡ್</translation>
<translation id="340013220407300675"><ph name="BEGIN_BOLD" /><ph name="SITE" /><ph name="END_BOLD" /> ರಿಂದ ದಾಳಿಕೋರರು ನಿಮ್ಮ ಮಾಹಿತಿಯನ್ನು ಕಳ್ಳತನ ಮಾಡಲು ಪ್ರಯತ್ನಿಸುತ್ತಿರಬಹುದು (ಉದಾಹರಣೆಗೆ, ಪಾಸ್‌ವರ್ಡ್‌ಗಳು, ಸಂದೇಶಗಳು, ಅಥವಾ ಕ್ರೆಡಿಟ್ ಕಾರ್ಡ್‌ಗಳು).</translation>
+<translation id="3401130144947259741">ಸಕ್ರಿಯಗೊಳಿಸಿದರೆ, ಟ್ರೇಸ್‌ ಈವೆಂಟ್‌ಗಳನ್ನು Windows (ETW) ಗೆ ಈವೆಂಟ್ ಟ್ರೇಸ್ ಮಾಡಲು ರಫ್ತು ಮಾಡಲಾಗುತ್ತದೆ ಮತ್ತು ಅದನ್ನು UIF ಅಥವಾ ETW ಅಥವಾ Xperf ಪರಿಕರಗಳ ಮೂಲಕ ಕ್ಯಾಪ್ಚರ್‌ ಮಾಡಬಹುದು</translation>
<translation id="340282674066624"><ph name="DOWNLOAD_RECEIVED" />, <ph name="TIME_LEFT" /></translation>
<translation id="3406605057700382950">ಬುಕ್‌ಮಾರ್ಕ್‌ಗಳ ಪಟ್ಟಿಯನ್ನು &amp;ತೋರಿಸಿ</translation>
<translation id="3412265149091626468">ಆಯ್ಕೆಗೆ ತೆರಳಿ</translation>
@@ -1888,6 +1897,7 @@
<translation id="3603385196401704894">ಕೆನೆಡಿಯನ್ ಫ್ರೆಂಚ್</translation>
<translation id="3603622770190368340">ನೆಟ್‌ವರ್ಕ್ ಪ್ರಮಾಣಪತ್ರವನ್ನು ಪಡೆದುಕೊಳ್ಳಿ</translation>
<translation id="3605780360466892872">ಬಟನ್‌ಡೌನ್</translation>
+<translation id="3606220979431771195">ಟರ್ಕಿಶ್‌-F</translation>
<translation id="3608454375274108141">F10</translation>
<translation id="3608576286259426129">ಬಳಕೆದಾರರ ಚಿತ್ರದ ಪೂರ್ವವೀಕ್ಷಣೆ</translation>
<translation id="3609138628363401169">ಸರ್ವರ್ TLS ಮರುಸಂಧಾನ ವಿಸ್ತರಣೆಯನ್ನು ಬೆಂಬಲಿಸುವುದಿಲ್ಲ.</translation>
@@ -2410,6 +2420,7 @@
<translation id="4321136812570927563">{NUM_DOWNLOAD,plural, =1{ಡೌನ್‌ಲೋಡ್ ಮುಂದುವರಿಸಿ}one{ಡೌನ್‌ಲೋಡ್‌ಗಳನ್ನು ಮುಂದುವರಿಸಿ}other{ಡೌನ್‌ಲೋಡ್‌ಗಳನ್ನು ಮುಂದುವರಿಸಿ}}</translation>
<translation id="4321179778687042513">ctrl</translation>
<translation id="4322394346347055525">ಇತರ ಟ್ಯಾಬ್‌ಗಳನ್ನು ಮುಚ್ಚಿ</translation>
+<translation id="4325378361067528777">ಪುಶ್‌ API ಹಿನ್ನೆಲೆ ಮೋಡ್ ಸಕ್ರಿಯಗೊಳಿಸಿ</translation>
<translation id="4326952458285403282">ಪ್ರಾಯೋಗಿಕ DirectWrite ಫಾಂಟ್ ಸಲ್ಲಿಸುವಿಕೆಯ ಸಿಸ್ಟಂ ಬಳಕೆಯನ್ನು ನಿಷ್ಕ್ರಿಯಗೊಳಿಸುತ್ತದೆ.</translation>
<translation id="4326999707196471878">ಟೂಲ್‌ಕಿಟ್-ವೀಕ್ಷಣೆಗಳ ಬ್ರೌಸರ್ ಸಂವಾದಗಳು.</translation>
<translation id="4330406155931244378">ಬಹುಭಾಷಾ ಕಾಗುಣಿತಪರೀಕ್ಷಕ ಸಕ್ರಿಯಗೊಳಿಸಿ</translation>
@@ -2944,6 +2955,8 @@
<translation id="5148652308299789060">3D ಸಾಫ್ಟ್‌ವೇರ್ ರಾಸ್ಟ್ರರೈಜರ್ ಅನ್ನು ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಿ</translation>
<translation id="5150254825601720210">Netscape ಪ್ರಮಾಣಪತ್ರ SSL ಸರ್ವರ್ ಹೆಸರು</translation>
<translation id="5151034238407558331">ದುರದೃಷ್ಟವಶಾತ್, Google Payments ಅನ್ನು US ವಿಳಾಸ ಹೊಂದಿರುವ ಖರೀದಿದಾರರ ಮೂಲಕ ಈ ವರ್ತಕರಲ್ಲಿ ಮಾತ್ರ ಬಳಸಬಹುದಾಗಿದೆ. ನೀವು US ನಿವಾಸಿಯಾಗಿದ್ದರೆ, ದಯವಿಟ್ಟು |Payments ನಲ್ಲಿ ನಿಮ್ಮ ಮನೆ ವಿಳಾಸವನ್ನು ಬದಲಾಯಿಸಿ| ಅಥವಾ Google Payments ಬಳಸದೆಯೇ ಪಾವತಿಮಾಡಿ.</translation>
+<translation id="5151639798712723370">"&gt;
+ USB-C ಸಾಧನ (ಬಲ ಭಾಗದ ಮುಂದಿನ ಪೋರ್ಟ್‌)</translation>
<translation id="5152451685298621771">(ಮಕ್ಕಳಿಗೆ ಖಾತೆ)</translation>
<translation id="5154108062446123722"><ph name="PRINTING_DESTINATION" /> ಗಾಗಿ ಸುಧಾರಿತ ಸೆಟ್ಟಿಂಗ್‌ಗಳು</translation>
<translation id="5154176924561037127">F8</translation>
@@ -3045,6 +3058,7 @@
<translation id="5271247532544265821">ಸರಳವಾದ ಟಾಗಲ್/ಸಾಂಪ್ರದಾಯಿಕ ಚೈನೀಸ್ ಮೋಡ್</translation>
<translation id="5271549068863921519">ಪಾಸ್‌ವರ್ಡ್ ಉಳಿಸಿ</translation>
<translation id="5273628206174272911">ಅಡ್ಡಲಾಗಿರುವ ಓವರ್‌ಸ್ಕ್ರೋಲ್‌ಗೆ ಪ್ರತಿಕ್ರಿಯೆಯಾಗಿ ಪ್ರಾಯೋಗಿಕ ಇತಿಹಾಸ ನ್ಯಾವಿಗೇಷನ್.</translation>
+<translation id="5275795814002959418">ಈ ಸೈಟ್‌ನಿಂದ <ph name="COUNT" /></translation>
<translation id="5275973617553375938">Google ಡ್ರೈವ್‌ನಿಂದ ಮರುಪಡೆಯಲಾದ ಫೈಲ್‌ಗಳು</translation>
<translation id="527605719918376753">ಟ್ಯಾಬ್ ಮ್ಯೂಟ್ ಮಾಡಿ</translation>
<translation id="527605982717517565"><ph name="HOST" /> ನಲ್ಲಿ JavaScript ಅನ್ನು ಯಾವಾಗಲೂ ಅನುಮತಿಸಿ</translation>
@@ -3091,6 +3105,7 @@
<translation id="5328285148748012771">ಈ ಹ್ಯಾಂಡಿ ಲಾಂಚರ್‌ನಿಂದ ನಿಮ್ಮ ಎಲ್ಲ ಅಪ್ಲಿಕೇಶನ್‌ಗಳನ್ನು ಪ್ರವೇಶಿಸಿ. ಆಟಗಳನ್ನು ಆಡಿ, ವೀಡಿಯೊ ಚಾಟ್‌ ಮಾಡಿ, ಸಂಗೀತವನ್ನು ಆಲಿಸಿ, ಡಾಕ್ಯುಮೆಂಟ್‌ಗಳನ್ನು ಸಂಪಾದಿಸಿ, ಅಥವಾ Chrome ವೆಬ್‌ ಅಂಗಡಿಯಿಂದ ಇನ್ನಷ್ಟು ಅಪ್ಲಿಕೇಶನ್‌ಗಳನ್ನು ಪಡೆದುಕೊಳ್ಳಿ.</translation>
<translation id="5329858601952122676">&amp;ಅಳಿಸು</translation>
<translation id="5330145655348521461">ಈ ಫೈಲ್‍‍ಗಳನ್ನು ವಿವಿಧ ಡೆಸ್ಕ್‌ಟಾಪ್‍‍ಗಳಲ್ಲಿ ತೆರೆಯಲಾಗಿದೆ. ಅದನ್ನು ವೀಕ್ಷಿಸಲು <ph name="USER_NAME" /> (<ph name="MAIL_ADDRESS" />) ಗೆ ಸರಿಸಿ.</translation>
+<translation id="5331975486040154427">USB-C ಸಾಧನ (ಎಡ ಭಾಗದ ಹಿಂದಿನ ಪೋರ್ಟ್‌)</translation>
<translation id="5332624210073556029">ಸಮಯ ವಲಯ:</translation>
<translation id="5334142896108694079">ಸ್ಕ್ರಿಪ್ಟ್ ಸಂಗ್ರಹ</translation>
<translation id="533433379391851622">ನಿರೀಕ್ಷಿಸಲಾದ ಆವೃತ್ತಿ "<ph name="EXPECTED_VERSION" />", ಆದರೆ ಆವೃತ್ತಿಯು "<ph name="NEW_ID" />" ಆಗಿದೆ.</translation>
@@ -3137,6 +3152,7 @@
<translation id="539755880180803351">ಸ್ವಯಂತುಂಬುವಿಕೆ ಕ್ಷೇತ್ರ ಪ್ರಕಾರದ ಪೂರ್ವಸೂಚನೆಗಳನ್ನು ಪ್ಲೇಸ್‌ಹೋಲ್ಡರ್ ಪಠ್ಯದೊಂದಿಗೆ ವೆಬ್ ಫಾರ್ಮ್‌ಗಳನ್ನು ಟಿಪ್ಪಣಿಮಾಡುತ್ತದೆ.</translation>
<translation id="5397578532367286026">ಈ ಬಳಕೆದಾರರ ಬಳಕೆ ಮತ್ತು ಇತಿಹಾಸವನ್ನು chrome.com ನಲ್ಲಿ ನಿರ್ವಾಹಕರು (<ph name="MANAGER_EMAIL" />) ಪರಿಶೀಲಿಸಬಹುದು.</translation>
<translation id="5397794290049113714">ನೀವು</translation>
+<translation id="5398824043967640339">ಇತರ ಸೈಟ್‌ಗಳಿಂದ <ph name="COUNT" /></translation>
<translation id="5399158067281117682">PIN ಗಳು ಹೊಂದಿಕೆಯಾಗುವುದಿಲ್ಲ!</translation>
<translation id="5400640815024374115">ನಂಬಲರ್ಹ ಪ್ಲ್ಯಾಟ್‌ಫಾರ್ಮ್ ಮಾಡ್ಯೂಲ್ (TPM) ಚಿಪ್ ಅನ್ನು ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಲಾಗಿದೆ ಅಥವಾ ಅದು ಅನುಪಸ್ಥಿತವಾಗಿದೆ.</translation>
<translation id="5402367795255837559">ಬ್ರೈಲಿ</translation>
@@ -3949,6 +3965,7 @@
<translation id="6575251558004911012">ನಿಮ್ಮ ಕ್ಯಾಮರಾಗೆ ಸೈಟ್‌ನ ಪ್ರವೇಶ ಅಗತ್ಯವಿರುವಾಗ ಕೇಳಿ (ಶಿಫಾರಸು ಮಾಡಲಾಗಿದೆ)</translation>
<translation id="6581162200855843583">Google ಡ್ರೈವ್ ಲಿಂಕ್</translation>
<translation id="6583070985841601920"><ph name="USER_EMAIL_ADDRESS" /> ಹೆಸರಿನಲ್ಲಿ ಸೈನ್ ಇನ್ ಮಾಡಲಾಗಿದೆ. ನಿಮ್ಮ ನಿರ್ವಾಹಕದ ಮೂಲಕ ಸಿಂಕ್ ಮಾಡುವಿಕೆಯನ್ನು ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಲಾಗಿದೆ.</translation>
+<translation id="65832705307647870">ಜನಪ್ರಿಯ ಸೈಟ್‌ಗಳ ಜೊತೆಗೆ ಹೊಸ ಟ್ಯಾಬ್‌ ಪುಟವನ್ನು ಪೂರ್ವ ಜನಪ್ರಿಯಗೊಳಿಸಿ.</translation>
<translation id="6584878029876017575">Microsoft Lifetime Signing</translation>
<translation id="6585234750898046415">ಸೈನ್-ಇನ್ ಪರದೆಯಲ್ಲಿ ನಿಮ್ಮ ಖಾತೆಯನ್ನು ಪ್ರದರ್ಶಿಸಲು ಚಿತ್ರವನ್ನು ಆಯ್ಕೆಮಾಡಿ.</translation>
<translation id="6585283250473596934">ಸಾರ್ವಜನಿಕ ಸೆಷನ್‌ಗೆ ಪ್ರವೇಶಿಸಲಾಗುತ್ತಿದೆ.</translation>
@@ -4291,6 +4308,7 @@
<translation id="7092106376816104">ಪಾಪ್-ಅಪ್ ವಿನಾಯಿತಿಗಳು</translation>
<translation id="7093866338626856921">ಈ ಹೆಸರಿನ ಸಾಧನಗಳೊಂದಿಗೆ ಡೇಟಾ ವಿನಿಮಯ ಮಾಡಿ: <ph name="HOSTNAMES" /></translation>
<translation id="7096082900368329802">ಇನ್ನಷ್ಟು ಅದ್ಭುತ ವೈಶಿಷ್ಟ್ಯಗಳನ್ನು ಅನ್ವೇಷಿಸಲು ಬಯಸುವಿರಾ?</translation>
+<translation id="7098389117866926363">USB-C ಸಾಧನ (ಹಿಂಭಾಗದಲ್ಲಿ ಎಡ ಪೋರ್ಟ್‌)</translation>
<translation id="7100897339030255923"><ph name="COUNT" /> ಐಟಂಗಳನ್ನು ಆಯ್ಕೆಮಾಡಲಾಗಿದೆ</translation>
<translation id="7106346894903675391">ಇನ್ನಷ್ಟು ಸಂಗ್ರಹಣೆಯನ್ನು ಖರೀದಿಸಿ...</translation>
<translation id="7108338896283013870">ಮರೆಮಾಡಿ</translation>
@@ -5056,6 +5074,7 @@
<translation id="8190193592390505034"><ph name="PROVIDER_NAME" /> ಗೆ ಸಂಪರ್ಕಿಸಲಾಗುತ್ತಿದೆ</translation>
<translation id="8191230140820435481">ನಿಮ್ಮ ಅಪ್ಲಿಕೇಶನ್‌ಗಳು, ವಿಸ್ತರಣೆಗಳು, ಮತ್ತು ಥೀಮ್‌ಗಳನ್ನು ನಿರ್ವಹಿಸಿ</translation>
<translation id="8191453843330043793">V8 ಪ್ರಾಕ್ಸಿ ಪರಿಹಾರಕ</translation>
+<translation id="8199491812735365610">ಲಾಗಿನ್ ಮಾಡಲು ಖಾತೆಯನ್ನು ಆಯ್ಕೆಮಾಡಿ</translation>
<translation id="8200772114523450471">ಪುನರಾರಂಭಿಸು</translation>
<translation id="8202160505685531999">ನಿಮ್ಮ <ph name="DEVICE_TYPE" /> ಪ್ರೊಫೈಲ್ ಅಪ್‌‌ಡೇಟ್‌ ಮಾಡಲು ನಿಮ್ಮ ಪಾಸ್‌ವರ್ಡ್‌ ಮರುನಮೂದಿಸಿ.</translation>
<translation id="8204086856545141093">ಸರ್ವರ್‌ಗೆ ವಿನಂತಿಗಳನ್ನು ನೀತಿಯಿಂದ ನಿರ್ಬಂಧಿಸಲಾಗಿದೆ.</translation>
@@ -5185,6 +5204,7 @@
<translation id="8381977081675353473">ಸ್ಲೋವಾಕಿಯನ್</translation>
<translation id="8382645631174981738"><ph name="EXTENSION_NAME" /> ಅನ್ನು ದೂರಸ್ಥವಾಗಿ ಸ್ಥಾಪಿಸಲಾಗಿದೆ</translation>
<translation id="8382913212082956454">ಇಮೇಲ್ &amp;ವಿಳಾಸವನ್ನು ನಕಲು ಮಾಡಿ</translation>
+<translation id="8384113940676655504">ಫೋನ್ ತನ್ನ ಸಾಮೀಪ್ಯದಲ್ಲಿರುವಾಗ Chromebook ಅನ್ನು ಅನ್‌ಲಾಕ್ ಮಾಡಲು ಬ್ಲೂಟೂತ್ ಕಡಿಮೆ ಶಕ್ತಿ ಮೂಲಕ ಫೋನ್‌ಗಳನ್ನು ಅನ್ವೇಷಿಸಲು Chromebook ಗೆ ಅನುಮತಿಸುವ Smart Lock ಸೆಟ್ಟಿಂಗ್ ಅನ್ನು ಸಕ್ರಿಯಗೊಳಿಸುತ್ತದೆ.</translation>
<translation id="8390029840652165810">ನಿಮ್ಮ ನೆಟ್‌ವರ್ಕ್ ಸಂಪರ್ಕವು ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತಿದೆಯೇ ಎಂದು ದಯವಿಟ್ಟು ಖಾತ್ರಿಪಡಿಸಿಕೊಳ್ಳಿ ಮತ್ತು ಸಮಸ್ಯೆಯು ಸಂಭವಿಸುತ್ತಿದ್ದರೆ, ದಯವಿಟ್ಟು ಸೈನ್ ಔಟ್ ಮಾಡಿ ಮತ್ತು ನಿಮ್ಮ ರುಜುವಾತುಗಳನ್ನು ರಿಫ್ರೆಶ್ ಮಾಡಲು ಮತ್ತೆ ಸೈನ್ ಇನ್ ಮಾಡಿ.</translation>
<translation id="8390445751804042000">ಕೆಲವು ನೆಟ್‌ವರ್ಕ್ ಪ್ಯಾಕೆಟ್‌ಗಳ ಸ್ವೀಕೃತಿಯನ್ನು ಆಧರಿಸಿ ಸಾಧನ ಎಚ್ಚರಿಸುವಿಕೆಯನ್ನು ಸಕ್ರಿಯಗೊಳಿಸುತ್ತದೆ.</translation>
<translation id="8390449457866780408">ಸರ್ವರ್ ಲಭ್ಯವಿಲ್ಲ.</translation>
@@ -5271,6 +5291,7 @@
<translation id="8509646642152301857">ಕಾಗುಣಿತ ಪರಿಶೀಲನೆ ನಿಘಂಟು ಡೌನ್‌ಲೋಡ್ ವಿಫಲವಾಗಿದೆ.</translation>
<translation id="8512476990829870887">ಪ್ರಕ್ರಿಯೆ ಕೊನೆಗೊಳಿಸಿ</translation>
<translation id="851263357009351303">ಚಿತ್ರಗಳನ್ನು ತೋರಿಸಲು <ph name="HOST" /> ಅನ್ನು ಯಾವಾಗಲೂ ಅನುಮತಿಸಿ</translation>
+<translation id="8513191386157529469">ಈ ಬ್ರೌಸರ್‌ ಅನ್ನು "<ph name="CLIENT_NAME" />" ಡೀಬಗ್ ಮಾಡುತ್ತಿದೆ.</translation>
<translation id="8513974249124254369">ChromeVox (ಮಾತಿನ ಪ್ರತಿಕ್ರಿಯೆ) ಸಕ್ರಿಯಗೊಳಿಸಲಾಗಿದೆ. ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಲು Ctrl+Alt+Z ಒತ್ತಿರಿ.</translation>
<translation id="8515737884867295000">ಪ್ರಮಾಣಪತ್ರ-ಆಧಾರಿತ ಪ್ರಮಾಣೀಕರಣ ವಿಫಲವಾಗಿದೆ</translation>
<translation id="8518865679229538285">ತಮಿಳು ಇನ್‌ಪುಟ್ ವಿಧಾನ (ಬೆರಳಚ್ಚು ಯಂತ್ರ)</translation>
@@ -5388,6 +5409,7 @@
<translation id="8677039480012021122">ಡೇಟಾವನ್ನು ತೆರವುಗೊಳಿಸು ಮತ್ತು ಸಂಪರ್ಕ ಕಡಿತಗೊಳಿಸು</translation>
<translation id="8677212948402625567">ಎಲ್ಲವನ್ನು ಕುಗ್ಗಿಸು...</translation>
<translation id="8678648549315280022">ಡೌನ್‌ಲೋಡ್‌ ಸೆಟ್ಟಿಂಗ್‌ಗಳನ್ನು ನಿರ್ವಹಿಸಿ...</translation>
+<translation id="8680251145628383637">ನಿಮ್ಮ ಎಲ್ಲಾ ಸಾಧನಗಳಲ್ಲಿ ನಿಮ್ಮ ಬುಕ್‌ಮಾರ್ಕ್‌ಗಳು, ಇತಿಹಾಸ ಮತ್ತು ಇತರ ಸೆಟ್ಟಿಂಗ್‌ಗಳನ್ನು ಪಡೆದುಕೊಳ್ಳಲು ಸೈನ್‌ ಇನ್‌ ಮಾಡಿ. ನಿಮ್ಮ Google ಸೇವೆಗಳಿಗೆ ಸಹ ನಿಮ್ಮನ್ನು ಸ್ವಯಂಚಾಲಿತವಾಗಿ ಸೈನ್ ಇನ್ ಮಾಡಲಾಗುತ್ತದೆ.</translation>
<translation id="8680536109547170164"><ph name="QUERY" />, ಉತ್ತರ, <ph name="ANSWER" /></translation>
<translation id="8680787084697685621">ಖಾತೆಯ ಸೈನ್-ಇನ್ ವಿವರಗಳು ಹಳೆಯದಾಗಿವೆ.</translation>
<translation id="8684255857039823328">ಪಾಸ್‌ವರ್ಡ್ ಉಳಿಸಲಾಗಿದೆ. <ph name="MANAGEMENT_LINK" /> ನಲ್ಲಿ ಯಾವುದೇ ಸಾಧನದಿಂದ ನಿಮ್ಮ ಪಾಸ್‌ವರ್ಡ್‌ಗಳನ್ನು ಪ್ರವೇಶಿಸಿ.</translation>
@@ -5443,6 +5465,7 @@
<translation id="874420130893181774">ಸಾಂಪ್ರದಾಯಿಕ ಪಿನ್‌ಯಿನ್ ಇನ್‌ಪುಟ್ ವಿಧಾನ</translation>
<translation id="8744525654891896746">ಈ ಮೇಲ್ವಿಚಾರಣೆ ಬಳಕೆದಾರರಿಗಾಗಿ ಒಂದು ಅವತಾರ್ ಆಯ್ಕೆಮಾಡಿ</translation>
<translation id="8744641000906923997">ರೊಮಾಜಿ</translation>
+<translation id="8744959718895556609">ನಿಮ್ಮ <ph name="LINK_TEXT" /> ನಿಂದ ಖಾತೆಯನ್ನು ಆರಿಸಿಕೊಳ್ಳಿ</translation>
<translation id="8749863574775030885">ಅಜ್ಞಾತ ಮಾರಾಟಗಾರರಿಂದ USB ಸಾಧನಗಳನ್ನು ಪ್ರವೇಶಿಸಿ</translation>
<translation id="8754200782896249056">&lt;p&gt;ಬೆಂಬಲಿತ ಡೆಸ್ಕ್‌ಟಾಪ್‌ ಪರಿಸರದ ಅಡಿಯಲ್ಲಿ <ph name="PRODUCT_NAME" /> ಅನ್ನು ರನ್‌ ಮಾಡುವಾಗ, ಸಿಸ್ಟಂನ ಪ್ರಾಕ್ಸಿ ಸೆಟ್ಟಿಂಗ್‌ಗಳನ್ನು ಬಳಸಲಾಗುತ್ತದೆ. ಆದಾಗ್ಯೂ ನಿಮ್ಮ ಸಿಸ್ಟಂಗೆ ಬೆಂಬಲ ಸಿಗುತ್ತಿಲ್ಲ ಇಲ್ಲವೇ ನಿಮ್ಮ ಸಿಸ್ಟಂ ಕಾನ್ಫಿಗರೇಶನ್‌ ಪ್ರಾರಂಭಿಸುವಲ್ಲಿ ಸಮಸ್ಯೆ ಇದೆ.&lt;/p&gt;
@@ -5563,6 +5586,7 @@
<translation id="8933960630081805351">ಫೈಂಡರ್‌ನಲ್ಲಿ &amp;ತೋರಿಸಿ</translation>
<translation id="8934732568177537184">ಮುಂದುವರಿಸು</translation>
<translation id="8938356204940892126">ನಾನು ಕೈಬಿಟ್ಟಿದ್ದೇನೆ</translation>
+<translation id="8938800817013097409">USB-C ಸಾಧನ (ಹಿಂಭಾಗದಲ್ಲಿನ ಬಲ ಪೋರ್ಟ್‌)</translation>
<translation id="8940081510938872932">ಇದೀಗ ನಿಮ್ಮ ಕಂಪ್ಯೂಟರ್ ಅತಿ ಹೆಚ್ಚು ವಿಷಯಗಳನ್ನು ಸಲ್ಲಿಸುತ್ತಿದೆ. ನಂತರ ಮತ್ತೆ ಪ್ರಯತ್ನಿಸಿ.</translation>
<translation id="8941173171815156065">'<ph name="PERMISSION" />' ಅನುಮತಿಯನ್ನು ಹಿಂತೆಗೆದುಕೊಳ್ಳಿ</translation>
<translation id="8941248009481596111">ಈ ಸೈಟ್‌ಗೆ ನಿಮ್ಮ ಸಂಪರ್ಕವು ಖಾಸಗಿಯಾಗಿದೆ.</translation>
diff --git a/chromium/chrome/app/resources/generated_resources_ko.xtb b/chromium/chrome/app/resources/generated_resources_ko.xtb
index 57fdf5df721..d2662decc30 100644
--- a/chromium/chrome/app/resources/generated_resources_ko.xtb
+++ b/chromium/chrome/app/resources/generated_resources_ko.xtb
@@ -136,6 +136,8 @@
<translation id="1178581264944972037">일시중지</translation>
<translation id="1179803038870941185"><ph name="URL" />에서 MIDI 기기를 완전히 제어하려고 합니다.</translation>
<translation id="1181037720776840403">삭제</translation>
+<translation id="11814323404622888">"&gt;
+ USB-C 기기(우측 후면 포트)</translation>
<translation id="1183083053288481515">관리자 제공 인증서 사용</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>
@@ -330,6 +332,7 @@
<translation id="1468038450257740950">WebGL이 지원되지 않습니다.</translation>
<translation id="1470719357688513792">새 쿠키 설정은 페이지를 새로고침한 다음에 적용됩니다.</translation>
<translation id="14720830734893704">가상 키보드 지원을 사용합니다.</translation>
+<translation id="1474079335130556426">Push API에 백그라운드 모드를 사용 설정합니다. 이렇게 하면 Push API에서 Chrome이 필요할 때 마지막 창이 닫힌 후에도 Chrome이 계속 실행되고 OS 시작 시 Chrome을 실행합니다.</translation>
<translation id="1474339897586437869">'<ph name="FILENAME" />'이(가) 업로드되지 않았습니다. Google 드라이브에 충분한 여유 공간이 없습니다.</translation>
<translation id="1476503841242751994">{COUNT,plural, =1{비밀번호 1개}other{비밀번호 #개}}</translation>
<translation id="1476949146811612304"><ph name="BEGIN_LINK" />검색주소창<ph name="END_LINK" />에서 검색할 때 사용할 검색엔진을
@@ -658,6 +661,7 @@
<translation id="1918141783557917887">작게(&amp;S)</translation>
<translation id="192144045824434199">브라우저 프레임 외부에서 열리는 패널 창을 사용하도록 설정합니다. 이 기능을 사용하지 않도록 설정한 경우, 패널을 열려고 하면 팝업이 대신 열립니다. 패널은 개발자 및 카나리아 채널에서 항상 사용하도록 설정되어 있습니다.</translation>
<translation id="1921584744613111023"><ph name="DPI" />dpi</translation>
+<translation id="1921986354447415460">터키어-F 키보드</translation>
<translation id="1923786009776354244">WebRTC Stun Origin 헤더 지원 사용</translation>
<translation id="1926741348654461781">오프라인 페이지 사용</translation>
<translation id="1929546189971853037">로그인한 모든 기기의 인터넷 사용 기록 조회</translation>
@@ -857,6 +861,7 @@
<translation id="2231990265377706070">느낌표</translation>
<translation id="2232876851878324699">파일에 하나의 인증서가 있지만 이 인증서를 가져올 수 없습니다.</translation>
<translation id="2233502537820838181">추가 정보</translation>
+<translation id="2233587473672843170">새 탭 페이지에 인기 사이트 표시</translation>
<translation id="223714078860837942">페이지가 명시적인 참조 정책을 설정하지 않은 경우, 이 플래그를 설정하면 교차 도메인 요청에 대한 '참조' 헤더의 정보량이 감소합니다.</translation>
<translation id="2238379619048995541">주파수 상태 데이터</translation>
<translation id="2239921694246509981">관리 대상 사용자 추가</translation>
@@ -932,6 +937,7 @@
<translation id="2326606747676847821">시크릿 탭 열기</translation>
<translation id="2326931316514688470">앱 새로고침(&amp;R)</translation>
<translation id="2327492829706409234">앱 사용</translation>
+<translation id="2329597144923131178">로그인하면 모든 기기에서 북마크, 방문 기록, 비밀번호, 기타 설정을 사용할 수 있습니다.</translation>
<translation id="2332131598580221120">스토어에서 보기</translation>
<translation id="2332742915001411729">기본 설정으로 돌아가기</translation>
<translation id="2335122562899522968">이 페이지에서 쿠키를 설정합니다.</translation>
@@ -1320,6 +1326,7 @@
<translation id="2838379631617906747">설치 중</translation>
<translation id="2841837950101800123">발급기관</translation>
<translation id="2843806747483486897">기본값 변경...</translation>
+<translation id="2844169650293029770">USB-C 기기(좌측 전면 포트)</translation>
<translation id="2845382757467349449">북마크바 항상 표시</translation>
<translation id="2846816712032308263">빠른 탭/창 닫기 사용 - 탭의 onunload js 핸들러를 GUI와 별도로 실행합니다.</translation>
<translation id="284970761985428403"><ph name="ASCII_NAME" />(<ph name="UNICODE_NAME" />)</translation>
@@ -1387,6 +1394,7 @@
<translation id="2923469375796950815">새로운 ZIP 압축 해제 프로그램 사용 중지</translation>
<translation id="2924296707677495905">음역(namaskaram → ನಮಸ್ಕಾರ)</translation>
<translation id="2925966894897775835">스프레드시트</translation>
+<translation id="2927017729816812676">캐시 저장 공간</translation>
<translation id="2927657246008729253">변경...</translation>
<translation id="2928526264833629376">계속해서 행아웃 사용</translation>
<translation id="2930644991850369934">복구 이미지를 다운로드하는 중에 문제가 발생했습니다. 네트워크 연결이 끊어졌습니다.</translation>
@@ -1729,6 +1737,7 @@
<translation id="3396331542604645348">선택한 프린터가 사용할 수 없거나 올바르게 설치되어 있지 않습니다. 프린터를 확인하거나 다른 프린터를 선택해 보세요.</translation>
<translation id="3399597614303179694">마케도니아어 키보드</translation>
<translation id="340013220407300675">공격자가 <ph name="BEGIN_BOLD" /><ph name="SITE" /><ph name="END_BOLD" />에서 사용자의 정보를 도용하려고 시도할 수 있습니다(예: 비밀번호, 메시지, 신용카드 정보).</translation>
+<translation id="3401130144947259741">사용 설정하면 추적 이벤트를 Windows용 이벤트 추적(ETW)으로 내보내고 UIForETW 또는 Xperf와 같은 도구를 사용하여 캡처할 수 있습니다.</translation>
<translation id="340282674066624"><ph name="DOWNLOAD_RECEIVED" />, <ph name="TIME_LEFT" /></translation>
<translation id="3406605057700382950">북마크바 표시(&amp;S)</translation>
<translation id="3412265149091626468">선택 부분으로 이동</translation>
@@ -1888,6 +1897,7 @@
<translation id="3603385196401704894">프랑스어(캐나다)</translation>
<translation id="3603622770190368340">네트워크 인증서 받기</translation>
<translation id="3605780360466892872">와이셔츠</translation>
+<translation id="3606220979431771195">터키어-F</translation>
<translation id="3608454375274108141">F10</translation>
<translation id="3608576286259426129">사용자 이미지 미리보기</translation>
<translation id="3609138628363401169">서버에서 TLS 재협상 수정을 지원하지 않습니다.</translation>
@@ -2407,6 +2417,7 @@
<translation id="4321136812570927563">{NUM_DOWNLOAD,plural, =1{계속 다운로드}other{계속 다운로드}}</translation>
<translation id="4321179778687042513">ctrl</translation>
<translation id="4322394346347055525">다른 탭 닫기</translation>
+<translation id="4325378361067528777">Push API 백그라운드 모드 사용</translation>
<translation id="4326952458285403282">실험용 DirectWrite 글꼴 렌더링 시스템을 사용 중지합니다.</translation>
<translation id="4326999707196471878">Toolkit-Views 브라우저 대화상자</translation>
<translation id="4330406155931244378">다국어 맞춤법 검사기 사용</translation>
@@ -2947,6 +2958,8 @@
<translation id="5148652308299789060">3D 소프트웨어 래스터라이저 사용 안함</translation>
<translation id="5150254825601720210">Netscape Certificate SSL Server Name</translation>
<translation id="5151034238407558331">죄송하지만 미국 주소가 있는 구매자만 Google Payments를 사용하여 판매자로부터 구매할 수 있습니다. 미국 거주자인 경우 |Google Payments와 연결된 집 주소를 변경|하거나 Google Payments 이외의 방법으로 결제하세요.</translation>
+<translation id="5151639798712723370">"&gt;
+ USB-C 기기(우측 전면 포트)</translation>
<translation id="5152451685298621771">(어린이용 계정)</translation>
<translation id="5154108062446123722"><ph name="PRINTING_DESTINATION" /> 고급 설정</translation>
<translation id="5154176924561037127">F8</translation>
@@ -3045,6 +3058,7 @@
<translation id="5271247532544265821">중국어 간체/번체 모드 전환</translation>
<translation id="5271549068863921519">비밀번호 저장</translation>
<translation id="5273628206174272911">가로 오버스크롤에 반응하는 기록 탐색(실험 기능)입니다.</translation>
+<translation id="5275795814002959418">이 사이트에서 <ph name="COUNT" />개</translation>
<translation id="5275973617553375938">Google 드라이브에서 복구된 파일</translation>
<translation id="527605719918376753">탭 음소거</translation>
<translation id="527605982717517565"><ph name="HOST" />에서 자바스크립트 항상 허용</translation>
@@ -3091,6 +3105,7 @@
<translation id="5328285148748012771">이 간편한 실행기를 사용하여 모든 앱에 액세스할 수 있습니다. 게임을 하고 화상 채팅을 하고 음악을 들으며 문서를 편집하거나 Chrome 웹 스토어에서 다른 앱을 다운로드해 보세요.</translation>
<translation id="5329858601952122676">삭제(&amp;D)</translation>
<translation id="5330145655348521461">파일이 다른 데스크톱에서 열려 있습니다. 파일을 보려면 <ph name="USER_NAME" />(<ph name="MAIL_ADDRESS" />)(으)로 이동하세요.</translation>
+<translation id="5331975486040154427">USB-C 기기(좌측 후면 포트)</translation>
<translation id="5332624210073556029">표준시간대:</translation>
<translation id="5334142896108694079">스크립트 캐시</translation>
<translation id="533433379391851622">'<ph name="EXPECTED_VERSION" />' 버전을 예상했으나 '<ph name="NEW_ID" />' 버전이 표시되었습니다.</translation>
@@ -3137,6 +3152,7 @@
<translation id="539755880180803351">자리표시자 텍스트로 자동완성 필드 유형을 사용하여 웹 양식 메모를 답니다.</translation>
<translation id="5397578532367286026">관리자(<ph name="MANAGER_EMAIL" />)는 chrome.com에서 해당 사용자의 사용 및 방문 기록을 검토할 수 있습니다.</translation>
<translation id="5397794290049113714">나</translation>
+<translation id="5398824043967640339">다른 사이트에서 <ph name="COUNT" />개</translation>
<translation id="5399158067281117682">PIN이 일치하지 않습니다.</translation>
<translation id="5400640815024374115">TPM(신뢰할 수 있는 플랫폼 모듈) 칩을 사용하지 않거나 없습니다.</translation>
<translation id="5402367795255837559">점자</translation>
@@ -3964,6 +3980,7 @@
<translation id="6575251558004911012">내 카메라에 사이트가 액세스할 때 확인(권장)</translation>
<translation id="6581162200855843583">Google 드라이브 링크</translation>
<translation id="6583070985841601920"><ph name="USER_EMAIL_ADDRESS" />(으)로 로그인되었습니다. 관리자가 동기화 사용을 중지했습니다.</translation>
+<translation id="65832705307647870">새 탭 페이지를 인기 사이트로 미리 채웁니다.</translation>
<translation id="6584878029876017575">Microsoft Lifetime Signing</translation>
<translation id="6585234750898046415">로그인 화면에서 귀하의 계정을 표시할 사진을 선택하세요.</translation>
<translation id="6585283250473596934">공개 세션을 시작합니다.</translation>
@@ -4309,6 +4326,7 @@
<translation id="7092106376816104">팝업 예외</translation>
<translation id="7093866338626856921">이름이 <ph name="HOSTNAMES" />인 기기와 데이터 교환</translation>
<translation id="7096082900368329802">더 놀라운 기능에 대해 알고 싶으세요?</translation>
+<translation id="7098389117866926363">USB-C 기기(좌측 후면 포트)</translation>
<translation id="7100897339030255923"><ph name="COUNT" />개의 항목이 선택됨</translation>
<translation id="7106346894903675391">추가 저장용량 구입...</translation>
<translation id="7108338896283013870">숨기기</translation>
@@ -5083,6 +5101,7 @@
<translation id="8190193592390505034"><ph name="PROVIDER_NAME" />에 연결 중</translation>
<translation id="8191230140820435481">앱, 확장 프로그램 및 테마 관리</translation>
<translation id="8191453843330043793">V8 프록시 리졸버</translation>
+<translation id="8199491812735365610">로그인할 계정 선택</translation>
<translation id="8200772114523450471">다시 시작</translation>
<translation id="8202160505685531999"><ph name="DEVICE_TYPE" /> 프로필을 업데이트하려면 비밀번호 다시 입력</translation>
<translation id="8204086856545141093">서버에 대한 요청이 정책에 의해 차단되었습니다.</translation>
@@ -5210,6 +5229,7 @@
<translation id="8381977081675353473">슬로바키아어</translation>
<translation id="8382645631174981738"><ph name="EXTENSION_NAME" />이(가) 원격으로 설치됨</translation>
<translation id="8382913212082956454">이메일 주소 복사(&amp;E)</translation>
+<translation id="8384113940676655504">Chromebook 근처에 휴대전화가 있을 때 Chromebook을 잠금 해제하기 위해 저전력 블루투스(BLE)를 통해 휴대전화를 찾도록 하는 Smart Lock을 사용 설정합니다.</translation>
<translation id="8390029840652165810">네트워크 연결이 작동 중인지 확인하시기 바랍니다. 문제가 계속되면 로그아웃한 뒤 다시 로그인하여 자격증명 정보를 새로고침하세요.</translation>
<translation id="8390445751804042000">네트워크 패킷 수신을 기반으로 기기 절전 모드 해제를 사용합니다.</translation>
<translation id="8390449457866780408">서버를 사용할 수 없습니다.</translation>
@@ -5296,6 +5316,7 @@
<translation id="8509646642152301857">맞춤법 검사 사전을 다운로드하지 못했습니다.</translation>
<translation id="8512476990829870887">프로세스 종료</translation>
<translation id="851263357009351303"><ph name="HOST" />에서 이미지 표시 항상 허용</translation>
+<translation id="8513191386157529469">'<ph name="CLIENT_NAME" />'에서 이 브라우저를 디버깅하는 중입니다.</translation>
<translation id="8513974249124254369">ChromeVox(음성 피드백)를 사용하도록 설정했습니다. 사용 중지하려면 Ctrl+Alt+Z를 누르세요.</translation>
<translation id="8515737884867295000">인증서 기반 인증에 실패했습니다.</translation>
<translation id="8518865679229538285">타밀어 입력 방법(타자기)</translation>
@@ -5415,6 +5436,7 @@
<translation id="8677039480012021122">데이터 삭제 및 연결 해제</translation>
<translation id="8677212948402625567">모두 접기...</translation>
<translation id="8678648549315280022">다운로드 설정 관리...</translation>
+<translation id="8680251145628383637">로그인하면 모든 기기에서 북마크, 방문 기록, 비밀번호, 기타 설정이 동기화되며 Google 서비스에 자동으로 로그인됩니다.</translation>
<translation id="8680536109547170164"><ph name="QUERY" />, 답변, <ph name="ANSWER" /></translation>
<translation id="8680787084697685621">계정 로그인 세부정보의 유효기간이 만료되었습니다.</translation>
<translation id="8684255857039823328">비밀번호가 저장되었습니다. <ph name="MANAGEMENT_LINK" />에서 어느 기기에서나 비밀번호에 액세스할 수 있습니다.</translation>
@@ -5470,6 +5492,7 @@
<translation id="874420130893181774">번체 병음 입력 방법</translation>
<translation id="8744525654891896746">이 관리 대상 사용자의 아바타 선택</translation>
<translation id="8744641000906923997">로마자(Romaji)</translation>
+<translation id="8744959718895556609"><ph name="LINK_TEXT" />에서 계정 선택</translation>
<translation id="8749863574775030885">알 수 없는 공급업체의 USB 기기에 액세스</translation>
<translation id="8754200782896249056">&lt;p&gt;지원되는 데스크톱 환경에서 <ph name="PRODUCT_NAME" />을(를) 실행하는 경우 시스템 프록시 설정이 사용됩니다. 하지만 시스템이 지원되지 않거나 시스템 설정을 실행하는 데 문제가 있었습니다.&lt;/p&gt;
@@ -5590,6 +5613,7 @@
<translation id="8933960630081805351">Finder에서 보기(&amp;S)</translation>
<translation id="8934732568177537184">계속</translation>
<translation id="8938356204940892126">로드 취소</translation>
+<translation id="8938800817013097409">USB-C 기기(우측 후면 포트)</translation>
<translation id="8940081510938872932">현재 컴퓨터의 처리량이 너무 많습니다. 나중에 다시 시도해 주세요.</translation>
<translation id="8941173171815156065">'<ph name="PERMISSION" />' 권한 취소</translation>
<translation id="8941248009481596111">이 사이트에 대한 연결은 비공개입니다.</translation>
diff --git a/chromium/chrome/app/resources/generated_resources_lt.xtb b/chromium/chrome/app/resources/generated_resources_lt.xtb
index dadab26d543..b20c6748229 100644
--- a/chromium/chrome/app/resources/generated_resources_lt.xtb
+++ b/chromium/chrome/app/resources/generated_resources_lt.xtb
@@ -137,6 +137,8 @@
<translation id="1178581264944972037">Pristabdyti</translation>
<translation id="1179803038870941185"><ph name="URL" /> nori visiškai valdyti MIDI įrenginius.</translation>
<translation id="1181037720776840403">Pašalinti</translation>
+<translation id="11814323404622888">"&gt;
+ USB-C įrenginys (prievadas dešinėje, užpakalinėje dalyje)</translation>
<translation id="1183083053288481515">Naudojamas administratoriaus pateiktas sertifikatas</translation>
<translation id="1183237619868651138">Nepavyko įdiegti „<ph name="EXTERNAL_CRX_FILE" />“ vietinėje talpykloje.</translation>
<translation id="1185924365081634987">Taip pat galite bandyti <ph name="GUEST_SIGNIN_LINK_START" />naršyti kaip svečias<ph name="GUEST_SIGNIN_LINK_END" />, kad išspręstumėte šią tinklo klaidą.</translation>
@@ -331,6 +333,7 @@
<translation id="1468038450257740950">„WebGL“ nepalaikomas.</translation>
<translation id="1470719357688513792">Nauji slapukų nustatymai pradės galioti iš naujo įkėlus puslapį.</translation>
<translation id="14720830734893704">Įgalinamas virtualiosios klaviatūros palaikymas.</translation>
+<translation id="1474079335130556426">Įgalinti „Push“ API fono režimą. Taip „Chrome“ galės toliau veikti uždarius paskutinį langą ir bus paleista įkėlus OS, jei to reikės „Push“ API.</translation>
<translation id="1474339897586437869">Failas „<ph name="FILENAME" />“ neįkeltas. „Google“ diske nepakanka vietos.</translation>
<translation id="1476503841242751994">{COUNT,plural, =1{1 slaptažodis}one{# slaptažodis}few{# slaptažodžiai}many{# slaptažodžio}other{# slaptažodžių}}</translation>
<translation id="1476949146811612304">Nustatyti, kuris paieškos variklis naudojamas ieškant <ph name="BEGIN_LINK" />„Omnibox“<ph name="END_LINK" />.</translation>
@@ -658,6 +661,7 @@
<translation id="1918141783557917887">&amp;Mažesnis</translation>
<translation id="192144045824434199">Įgalinti skydelio langus, kurie atsidarys už naršyklės rėmelio ribų. Jei nėra įgalinta, mėginant atidaryti skydelį iššoks langas. Skydeliai visuomet įgalinti „Dev“ ir „Canary“ kanaluose.</translation>
<translation id="1921584744613111023"><ph name="DPI" /> dpi</translation>
+<translation id="1921986354447415460">Turkiška klaviatūra</translation>
<translation id="1923786009776354244">Įgalinti „WebRTC Stun“ šaltinio antraštės palaikymą.</translation>
<translation id="1926741348654461781">Įgalinti neprisijungus pasiekiamus puslapius</translation>
<translation id="1929546189971853037">Skaityti naršymo istoriją visuose įrenginiuose, kuriuose esate prisijungę</translation>
@@ -857,6 +861,7 @@
<translation id="2231990265377706070">Šauktukas</translation>
<translation id="2232876851878324699">Faile buvo vienas sertifikatas, kuris nebuvo importuotas:</translation>
<translation id="2233502537820838181">Daugiau informacijos</translation>
+<translation id="2233587473672843170">Rodyti populiarias svetaines naujo skirtuko puslapyje</translation>
<translation id="223714078860837942">Jei puslapyje nenustatyta aiški persiuntimo URL politika, nustačius šią žymą, kelių šaltinių užklausų antraštėje „persiuntimo URL“ bus pateikiama mažiau informacijos.</translation>
<translation id="2238379619048995541">Dažnumo būsenos duomenys</translation>
<translation id="2239921694246509981">Pridėti prižiūrimą asmenį</translation>
@@ -935,6 +940,7 @@ Sukūrę naują prižiūrimą naudotoją, bet kuriuo metu galite tvarkyti jo nus
<translation id="2326606747676847821">Įjungti inkognito režimą</translation>
<translation id="2326931316514688470">&amp;Įkelti programą iš naujo</translation>
<translation id="2327492829706409234">Įgalinti programą</translation>
+<translation id="2329597144923131178">Pris. ir pas. žymių, ist., slapt. bei kitų nust. duom. visuose įreng.</translation>
<translation id="2332131598580221120">Žiūrėti parduotuvėje</translation>
<translation id="2332742915001411729">Nustatyti iš naujo numatytąjį</translation>
<translation id="2335122562899522968">Šis puslapis nustatė slapukus.</translation>
@@ -1064,7 +1070,7 @@ Nemanau, kad ši svetainė turėtų būti užblokuota!</translation>
Kad negeneruotumėte per daug srauto ir nepablogintumėte situacijos,
užklausos šiuo URL laikinai neleidžiamos.</translation>
<translation id="2505402373176859469"><ph name="RECEIVED_AMOUNT" /> iš <ph name="TOTAL_SIZE" /></translation>
-<translation id="2507649982651274960">Įrenginys sėkmingai užregistruotas įmonei valdyti, tačiau nepavyko išsiųsti jo išteklių ir vietos informacijos. Rankiniu būdu įveskite šią informaciją įrenginio administratoriaus pulte.</translation>
+<translation id="2507649982651274960">Įrenginys sėkmingai užregistruotas įmonei valdyti, tačiau nepavyko išsiųsti jo išteklių ir vietos informacijos. Įveskite šią informaciją neautomatiškai įrenginio administratoriaus pulte.</translation>
<translation id="2508404591020172552"><ph name="DOWNLOAD_RECEIVED_AND_TOTAL" /> iš <ph name="DOWNLOAD_DOMAIN" /></translation>
<translation id="2509739495444557741">Neįdiegta jokių papildinių.</translation>
<translation id="2509857212037838238">Įdiegti „<ph name="PLUGIN_NAME" />“</translation>
@@ -1323,6 +1329,7 @@ Nemanau, kad ši svetainė turėtų būti užblokuota!</translation>
<translation id="2838379631617906747">Diegiama</translation>
<translation id="2841837950101800123">Teikėjas</translation>
<translation id="2843806747483486897">Keisti numatytąjį...</translation>
+<translation id="2844169650293029770">USB-C įrenginys (prievadas kairėje, priekinėje dalyje)</translation>
<translation id="2845382757467349449">Visada rodyti žymių juostą</translation>
<translation id="2846816712032308263">Įgalinamas greitas skirtuko lapo / lango uždarymas – paleidžiama skirtuko iškelties JS doroklė, neatsižvelgiant į VSS.</translation>
<translation id="284970761985428403"><ph name="ASCII_NAME" /> (<ph name="UNICODE_NAME" />)</translation>
@@ -1387,6 +1394,7 @@ Nemanau, kad ši svetainė turėtų būti užblokuota!</translation>
<translation id="2923469375796950815">Išjunkite naują ZIP išpakavimo programą.</translation>
<translation id="2924296707677495905">Transliteracija (namaskaram → ನಮಸ್ಕಾರ)</translation>
<translation id="2925966894897775835">Skaičiuoklės</translation>
+<translation id="2927017729816812676">Talpyklos saugykla</translation>
<translation id="2927657246008729253">Pakeisti...</translation>
<translation id="2928526264833629376">Eiti į „Hangout“</translation>
<translation id="2930644991850369934">Atsisiunčiant atkūrimo vaizdą iškilo problema. Nutrūko interneto ryšys.</translation>
@@ -1728,6 +1736,7 @@ Nemanau, kad ši svetainė turėtų būti užblokuota!</translation>
<translation id="3396331542604645348">Pasirinktas spausdintuvas nepasiekiamas arba netinkamai įdiegtas. Patikrinkite spausdintuvą arba pabandykite pasirinkti kitą spausdintuvą.</translation>
<translation id="3399597614303179694">Makedonietiška klaviatūra</translation>
<translation id="340013220407300675">Atakas vykdančios programos gali bandyti pavogti informaciją iš <ph name="BEGIN_BOLD" /><ph name="SITE" /><ph name="END_BOLD" /> (pavyzdžiui, slaptažodžius, pranešimus arba kredito kortelių informaciją).</translation>
+<translation id="3401130144947259741">Jei parinktis įgalinta, stebėjimo įvykiai eksportuojami į „Event Tracing for Windows“ (ETW), ir gali būti užfiksuoti naudojant tam tikrus įrankius, pvz., „UIForETW“ arba „Xperf“.</translation>
<translation id="340282674066624"><ph name="DOWNLOAD_RECEIVED" />, <ph name="TIME_LEFT" /></translation>
<translation id="3406605057700382950">&amp;Rodyti žymių juostą</translation>
<translation id="3412265149091626468">Nukreipti į pasirinkimą</translation>
@@ -1887,6 +1896,7 @@ Nemanau, kad ši svetainė turėtų būti užblokuota!</translation>
<translation id="3603385196401704894">Kanados prancūzų</translation>
<translation id="3603622770190368340">Gauti tinklo sertifikatą</translation>
<translation id="3605780360466892872">Konservatyvusis</translation>
+<translation id="3606220979431771195">Turkiška</translation>
<translation id="3608454375274108141">F10</translation>
<translation id="3608576286259426129">Naudotojo vaizdo peržiūra</translation>
<translation id="3609138628363401169">Serveris nepalaiko TLS pakartotinių derybų plėtinio.</translation>
@@ -2407,6 +2417,7 @@ Norint tęsti, visi naudotojai turi atsijungti.</translation>
<translation id="4321136812570927563">{NUM_DOWNLOAD,plural, =1{Tęsti atsisiuntimą}one{Tęsti atsisiuntimus}few{Tęsti atsisiuntimus}many{Tęsti atsisiuntimus}other{Tęsti atsisiuntimus}}</translation>
<translation id="4321179778687042513">ctrl</translation>
<translation id="4322394346347055525">Uždaryti kitus skirtukus</translation>
+<translation id="4325378361067528777">Įgalinti „Push“ API fono režimą</translation>
<translation id="4326952458285403282">Išjungiamas eksperimentinio „DirectWrite“ šrifto pateikimo sistemos naudojimas.</translation>
<translation id="4326999707196471878">Įrankių komplekto rodinių naršyklės dialogo langai.</translation>
<translation id="4330406155931244378">Įgalinti kelių kalbų rašybos tikrinimą</translation>
@@ -2917,7 +2928,7 @@ Jei norite toliau naršyti, paspauskite bet kurį klavišą.</translation>
<translation id="5109044022078737958">Austra</translation>
<translation id="5111692334209731439">&amp;Žymių tvarkytuvė</translation>
<translation id="5112577000029535889">&amp;Kūrėjo įrankiai</translation>
-<translation id="5113739826273394829">Spustelėję šią piktogramą, rankiniu būdu užrakinsite šį „<ph name="DEVICE_TYPE" />“. Kitą kartą norėdami įeiti turėsite įvesti slaptažodį.</translation>
+<translation id="5113739826273394829">Spustelėję šią piktogramą, neautomatiškai užrakinsite šį „<ph name="DEVICE_TYPE" />“. Kitą kartą norėdami įeiti turėsite įvesti slaptažodį.</translation>
<translation id="5115563688576182185">(64 bitų)</translation>
<translation id="5116300307302421503">Nepavyksta išanalizuoti failo.</translation>
<translation id="5116628073786783676">Iš&amp;saugoti garso įrašą kaip...</translation>
@@ -2947,6 +2958,8 @@ Jei norite toliau naršyti, paspauskite bet kurį klavišą.</translation>
<translation id="5148652308299789060">Neleisti 3D programinės įrangos keistuvo į rastrinį vaizdą</translation>
<translation id="5150254825601720210">„Netscape“ sertifikato SSL serverio pavadinimas</translation>
<translation id="5151034238407558331">Deja, perkant iš šio prekybininko„Google Payments“ gali naudoti tik pirkėjai, turintys JAV adresą. Jei esate JAV gyventojas, |pakeiskite namų adresą sistemoje „Google Payments“| arba mokėkite nenaudodami „Google Payments“.</translation>
+<translation id="5151639798712723370">"&gt;
+ USB-C įrenginys (prievadas dešinėje, priekinėje dalyje)</translation>
<translation id="5152451685298621771">(Vaikų paskyra)</translation>
<translation id="5154108062446123722">Išplėstiniai <ph name="PRINTING_DESTINATION" /> nustatymai</translation>
<translation id="5154176924561037127">F8</translation>
@@ -3045,6 +3058,7 @@ Jei norite toliau naršyti, paspauskite bet kurį klavišą.</translation>
<translation id="5271247532544265821">Įjungti supaprastintos / tradicinės kinų k. režimą</translation>
<translation id="5271549068863921519">Išsaugoti slaptažodį</translation>
<translation id="5273628206174272911">Eksperimentinis istorijos naršymas perslenkant horizontaliai.</translation>
+<translation id="5275795814002959418"><ph name="COUNT" /> iš šios svetainės</translation>
<translation id="5275973617553375938">Atkurti failai iš „Google“ disko</translation>
<translation id="527605719918376753">Nutildyti skirtuko garsą</translation>
<translation id="527605982717517565">Visada leisti „JavaScript“ <ph name="HOST" /></translation>
@@ -3091,6 +3105,7 @@ Jei norite toliau naršyti, paspauskite bet kurį klavišą.</translation>
<translation id="5328285148748012771">Pasiekite visas programas naudodami šią patogią paleidimo priemonę. Žaiskite žaidimus, dalyvaukite vaizdo pokalbiuose, klausykite muzikos, redaguokite dokumentus arba gaukite daugiau programų iš „Chrome“ internetinės parduotuvės.</translation>
<translation id="5329858601952122676">&amp;Pašalinti</translation>
<translation id="5330145655348521461">Šie failai atidaryti kitame darbalaukyje. Perkelkite failus <ph name="USER_NAME" /> (<ph name="MAIL_ADDRESS" />), kad peržiūrėtumėte juos.</translation>
+<translation id="5331975486040154427">USB-C įrenginys (prievadas kairėje, užpakalinėje dalyje)</translation>
<translation id="5332624210073556029">Laiko juosta:</translation>
<translation id="5334142896108694079">Scenarijų talpykla</translation>
<translation id="533433379391851622">Versija turėjo būti <ph name="EXPECTED_VERSION" />, o buvo pateikta <ph name="NEW_ID" />.</translation>
@@ -3137,6 +3152,7 @@ Jei norite toliau naršyti, paspauskite bet kurį klavišą.</translation>
<translation id="539755880180803351">Žiniatinklio formas užpildo automatinio pildymo spėjimais kaip rezervuotos vietos tekstu.</translation>
<translation id="5397578532367286026">Šio naudotojo naudojimo duomenis ir istoriją valdytojas (<ph name="MANAGER_EMAIL" />) gali peržiūrėti adresu chrome.com.</translation>
<translation id="5397794290049113714">Jūs</translation>
+<translation id="5398824043967640339"><ph name="COUNT" /> iš kitų svetainių</translation>
<translation id="5399158067281117682">PIN kodai neatitinka!</translation>
<translation id="5400640815024374115">Patikimos platformos modulio (TPM) mikroschema neleidžiama arba jos nėra.</translation>
<translation id="5402367795255837559">Brailio rašmenys</translation>
@@ -3966,6 +3982,7 @@ Kai kurios funkcijos gali būti nepasiekiamos. Įsitikinkite, kad profilis egzis
<translation id="6575251558004911012">Paklausti, kai svetainei reikalinga prieiga prie fotoaparato (rekomenduojama)</translation>
<translation id="6581162200855843583">„Google“ disko nuoroda</translation>
<translation id="6583070985841601920">Esate prisijungę kaip <ph name="USER_EMAIL_ADDRESS" />. Sinchronizavimo neleido jūsų administratorius.</translation>
+<translation id="65832705307647870">Iš anksto pateikti populiarias svetaines naujo skirtuko puslapyje.</translation>
<translation id="6584878029876017575">„Microsoft“ pasirašymas visam laikui</translation>
<translation id="6585234750898046415">Pasirinkite paskyros paveikslėlį, kurį norite pateikti prisijungimo ekrane.</translation>
<translation id="6585283250473596934">Prisijungiate prie viešos sesijos.</translation>
@@ -4313,6 +4330,7 @@ Kai kurios funkcijos gali būti nepasiekiamos. Įsitikinkite, kad profilis egzis
<translation id="7092106376816104">Iššokančiųjų langų išimtys</translation>
<translation id="7093866338626856921">Keistis duomenimis su įrenginiais, kurių pavadinimai: <ph name="HOSTNAMES" /></translation>
<translation id="7096082900368329802">Norite atrasti daugiau nuostabių funkcijų?</translation>
+<translation id="7098389117866926363">USB-C įrenginys (prievadas kairėje, užpakalinėje dalyje)</translation>
<translation id="7100897339030255923">Pasirinkta elementų: <ph name="COUNT" /></translation>
<translation id="7106346894903675391">Įsigyti daugiau atminties...</translation>
<translation id="7108338896283013870">Slėpti</translation>
@@ -4801,7 +4819,7 @@ Ei! Kitą kartą gali būti naudinga naudoti inkognito režimą (<ph name="SHORT
<translation id="7805768142964895445">Būsena</translation>
<translation id="7806513705704909664">Įgalinti automatinį pildymą, kad būtų galima užpildyti žiniatinklio formas vienu paspaudimu.</translation>
<translation id="7807711621188256451">Visada leisti <ph name="HOST" /> pasiekti fotoaparatą</translation>
-<translation id="7809868303668093729">Eksperimentinis slinkimo pabaigos efektas, atsakant į vertikalų slinkimą aukštyn.</translation>
+<translation id="7809868303668093729">Eksperimentinis slinkimo pabaigos efektas, atsakant į vertikaliąją slinktį aukštyn.</translation>
<translation id="7810202088502699111">Šiame puslapyje iššokantieji langai buvo užblokuoti.</translation>
<translation id="7812634759091149319">Nustatoma, kad įrankių komplekto rodiniais pagrįstą programos informacijos dialogo langą būtų galima pasiekti adresu chrome://apps ar chrome://extensions vietoje vietinio plėtinio leidimų dialogo lango ar išsamios informacijos nuorodos (kuri yra nuoroda į internetinę parduotuvę).</translation>
<translation id="7814458197256864873">&amp;Kopijuoti</translation>
@@ -5089,6 +5107,7 @@ likęs akumuliatoriaus laikas</translation>
<translation id="8190193592390505034">Jungiamasi prie „<ph name="PROVIDER_NAME" />“</translation>
<translation id="8191230140820435481">Valdyti programas, plėtinius ir temas</translation>
<translation id="8191453843330043793">V8 tarpinio serverio vardų vertimo programa</translation>
+<translation id="8199491812735365610">Pasirinkite paskyrą, kad galėtumėte prisijungti</translation>
<translation id="8200772114523450471">Atnaujinti</translation>
<translation id="8202160505685531999">Iš naujo įveskite slaptažodį, kad galėtumėte atnaujinti „<ph name="DEVICE_TYPE" />“ profilį.</translation>
<translation id="8204086856545141093">Serveriui pateiktos užklausos užblokuotos pagal politiką.</translation>
@@ -5220,6 +5239,7 @@ Skaičiuojamas laikas, kol bus įkrauta</translation>
<translation id="8381977081675353473">Slovakų k.</translation>
<translation id="8382645631174981738">„<ph name="EXTENSION_NAME" />“ įdiegtas nuotoliniu būdu</translation>
<translation id="8382913212082956454">Kopijuoti &amp;el. pašto adresą</translation>
+<translation id="8384113940676655504">Įgalinamas „Smart Lock“ nustatymas, kurį pasirinkus „Chromebook“ įrenginys gali aptikti telefonus „Bluetooth“ mažai energijos naudojančiu ryšiu, kad būtų galima atrakinti „Chromebook“ įrenginį, kai telefonas yra netoliese.</translation>
<translation id="8390029840652165810">Įsitikinkite, kad tinklo ryšys veikia, ir, jei problema išlieka, atsijunkite ir vėl prisijunkite, kad atnaujintumėte kredencialus.</translation>
<translation id="8390445751804042000">Įgalinamas įrenginio pažadinimas gavus tinklo paketų.</translation>
<translation id="8390449457866780408">Serveris nepasiekiamas.</translation>
@@ -5306,6 +5326,7 @@ Skaičiuojamas laikas, kol bus įkrauta</translation>
<translation id="8509646642152301857">Atsisiunčiant rašybos tikrinimo žodyną įvyko klaida.</translation>
<translation id="8512476990829870887">Baigti procesą</translation>
<translation id="851263357009351303">Visada leisti <ph name="HOST" /> rodyti vaizdus</translation>
+<translation id="8513191386157529469">„<ph name="CLIENT_NAME" />“ derina šią naršyklę.</translation>
<translation id="8513974249124254369">„ChromeVox“ (žodiniai atsiliepimai) įgalinta. Jei norite neleisti, paspauskite „Ctrl“ + „Alt“ + Z.</translation>
<translation id="8515737884867295000">Nepavyko nustatyti tapatumo pagal sertifikatą</translation>
<translation id="8518865679229538285">Tamilų k. įvesties metodas (rašomoji mašinėlė)</translation>
@@ -5425,6 +5446,7 @@ Skaičiuojamas laikas, kol bus įkrauta</translation>
<translation id="8677039480012021122">Išvalyti duomenis ir atsijungti</translation>
<translation id="8677212948402625567">Sutraukti viską...</translation>
<translation id="8678648549315280022">Valdyti atsisiuntimo nustatymus...</translation>
+<translation id="8680251145628383637">Prisijunkite, kad žymes, istoriją, slaptažodžius ir kitus nustatymus galėtumėte naudoti visuose įrenginiuose. Be to, būsite automatiškai prijungti prie „Google“ paslaugų.</translation>
<translation id="8680536109547170164"><ph name="QUERY" />, atsakymas, <ph name="ANSWER" /></translation>
<translation id="8680787084697685621">Išsami prisijungimo prie paskyros informacija pasenusi.</translation>
<translation id="8684255857039823328">Slaptažodis išsaugotas. Pasiekite slaptažodžius bet kuriuo įrenginiu apsilankę adresu <ph name="MANAGEMENT_LINK" />.</translation>
@@ -5480,6 +5502,7 @@ Skaičiuojamas laikas, kol bus įkrauta</translation>
<translation id="874420130893181774">Tradicinis „Pinyin“ įvesties metodas</translation>
<translation id="8744525654891896746">Pasirinkti šio prižiūrimo naudotojo pseudoportretą</translation>
<translation id="8744641000906923997">Romaji</translation>
+<translation id="8744959718895556609">Pasirinkite paskyrą iš „<ph name="LINK_TEXT" />“</translation>
<translation id="8749863574775030885">Pasiekti nežinomų tiekėjų USB įrenginius</translation>
<translation id="8754200782896249056">&lt;p&gt;Paleidus „<ph name="PRODUCT_NAME" />“ palaikomoje darbalaukio aplinkoje, bus naudojami tarpinio sistemos serverio nustatymai. Tačiau jūsų sistema nepalaikoma arba iškilo problemų paleidžiant sistemos konfigūraciją.&lt;/p&gt;
@@ -5600,6 +5623,7 @@ Skaičiuojamas laikas, kol bus įkrauta</translation>
<translation id="8933960630081805351">&amp;Rodyti ieškojimo priemonėje</translation>
<translation id="8934732568177537184">Tęsti</translation>
<translation id="8938356204940892126">Pasiduodu</translation>
+<translation id="8938800817013097409">USB-C įrenginys (prievadas dešinėje, užpakalinėje dalyje)</translation>
<translation id="8940081510938872932">Kompiuteriu atliekama per daug veiksmų šiuo metu. Vėliau bandykite dar kartą.</translation>
<translation id="8941173171815156065">Anuliuoti leidimą „<ph name="PERMISSION" />“</translation>
<translation id="8941248009481596111">Jūsų ryšys su šia svetaine privatus.</translation>
diff --git a/chromium/chrome/app/resources/generated_resources_lv.xtb b/chromium/chrome/app/resources/generated_resources_lv.xtb
index 768c968b43c..4e55a0ed0b8 100644
--- a/chromium/chrome/app/resources/generated_resources_lv.xtb
+++ b/chromium/chrome/app/resources/generated_resources_lv.xtb
@@ -136,6 +136,8 @@
<translation id="1178581264944972037">Pauzēt</translation>
<translation id="1179803038870941185"><ph name="URL" /> vēlas iegūt MIDI ierīču pilnīgu pārvaldību.</translation>
<translation id="1181037720776840403">Noņemt</translation>
+<translation id="11814323404622888">"&gt;
+ USB-C ierīce (pieslēgvieta labajā pusē aizmugurē)</translation>
<translation id="1183083053288481515">Administratora sniegta sertifikāta izmantošana</translation>
<translation id="1183237619868651138">Failu “<ph name="EXTERNAL_CRX_FILE" />” nevar instalēt lokālajā kešatmiņā.</translation>
<translation id="1185924365081634987">Varat arī mēģināt <ph name="GUEST_SIGNIN_LINK_START" />pārlūkot kā viesis<ph name="GUEST_SIGNIN_LINK_END" />, lai novērstu šo tīkla kļūdu.</translation>
@@ -329,6 +331,7 @@
<translation id="1468038450257740950">Tehnoloģija WebGL netiek atbalstīta.</translation>
<translation id="1470719357688513792">Jaunie sīkfailu iestatījumi stāsies spēkā pēc šīs lapas atkārtotas ielādes.</translation>
<translation id="14720830734893704">Iespējo virtuālās tastatūras atbalstu.</translation>
+<translation id="1474079335130556426">Tiek iespējots Push API fona režīms. Tādējādi Chrome varēs turpināt darboties pēc pēdējā loga aizvēršanas un tiks palaists pēc operētājsistēmas startēšanas, ja Push API tas būs nepieciešams.</translation>
<translation id="1474339897586437869">Fails “<ph name="FILENAME" />” netika augšupielādēts. Jūsu Google diskā nepietiek vietas.</translation>
<translation id="1476503841242751994">{COUNT,plural, =1{1 parole}zero{# paroļu}one{# parole}other{# paroles}}</translation>
<translation id="1476949146811612304">Iestatīt, kura meklētājprogramma tiek izmantota, kad tiek meklēts no <ph name="BEGIN_LINK" />universālā lodziņa<ph name="END_LINK" />.</translation>
@@ -653,6 +656,7 @@
<translation id="1918141783557917887">Mazāks</translation>
<translation id="192144045824434199">Iespējot paneļa logus, kas atveras ārpus pārlūka ietvara. Mēģinot atvērt paneli, tā vietā tiek atvērts uznirstošais elements, ja tas nav iespējots. Paneļi vienmēr tiek iespējoti izstrādes un Canary versijā.</translation>
<translation id="1921584744613111023"><ph name="DPI" /> punkti collā</translation>
+<translation id="1921986354447415460">Turku-F tastatūra</translation>
<translation id="1923786009776354244">Iespējot WebRTC Stun avota virsraksta atbalstu.</translation>
<translation id="1926741348654461781">Iespējot bezsaistes lapas</translation>
<translation id="1929546189971853037">Skatīt jūsu pārlūkošanas vēsturi visās ierīcēs, kurās esat pierakstījies</translation>
@@ -852,6 +856,7 @@ Vēl jālādē: <ph name="HOUR" />:<ph name="MINUTE" /></translation>
<translation id="2231990265377706070">Izsaukuma zīme</translation>
<translation id="2232876851878324699">Failā bija iekļauts viens sertifikāts, kas netika importēts:</translation>
<translation id="2233502537820838181">&amp;Plašāka informācija</translation>
+<translation id="2233587473672843170">Rādīt populāras vietnes jaunas cilnes lapā</translation>
<translation id="223714078860837942">Ja lapā nav iestatīta skaidra novirzītāja politika, iestatot šo opciju, tiks samazināts informācijas apjoms krusteniskās izcelsmes pieprasījumu “referer” galvenē.</translation>
<translation id="2238379619048995541">Dati par frekvences stāvokli</translation>
<translation id="2239921694246509981">Pievienot uzraudzītu personu</translation>
@@ -930,6 +935,7 @@ Pēc jauna uzraudzīta lietotāja izveides varat pārvaldīt viņa iestatījumus
<translation id="2326606747676847821">Pārlūkojiet inkognito režīmā</translation>
<translation id="2326931316514688470">&amp;Atkārtoti ielādēt lietotni</translation>
<translation id="2327492829706409234">Iespējot lietotni</translation>
+<translation id="2329597144923131178">Pierakstieties, lai grāmatzīmes, vēsture, paroles u.c. būtu pieejamas visās jūsu ierīcēs.</translation>
<translation id="2332131598580221120">Skatīt veikalā</translation>
<translation id="2332742915001411729">Atiestatīt noklusējuma iestatījumus</translation>
<translation id="2335122562899522968">Šī lapa iestatīja sīkfailus.</translation>
@@ -1318,6 +1324,7 @@ Es uzskatu, ka šai vietnei nav jābūt bloķētai.</translation>
<translation id="2838379631617906747">Notiek instalēšana</translation>
<translation id="2841837950101800123">Nodrošinātājs</translation>
<translation id="2843806747483486897">Mainīt noklusējumu...</translation>
+<translation id="2844169650293029770">USB-C ierīce (pieslēgvieta kreisajā pusē priekšā)</translation>
<translation id="2845382757467349449">Vienmēr rādīt grāmatzīmju joslu</translation>
<translation id="2846816712032308263">Iespējo ciļņu/logu ātru aizvēršanu — neatkarīgi no grafiskā lietotāja interfeisa tiek palaists cilnes apdarinātājs “onunload js”.</translation>
<translation id="284970761985428403"><ph name="ASCII_NAME" /> (<ph name="UNICODE_NAME" />)</translation>
@@ -1382,6 +1389,7 @@ Es uzskatu, ka šai vietnei nav jābūt bloķētai.</translation>
<translation id="2923469375796950815">Atspējot jauno ZIP izguvēju.</translation>
<translation id="2924296707677495905">Transliterācija (namaskaram → ನಮಸ್ಕಾರ)</translation>
<translation id="2925966894897775835">Izklājlapas</translation>
+<translation id="2927017729816812676">Kešatmiņas krātuve</translation>
<translation id="2927657246008729253">Mainīt...</translation>
<translation id="2928526264833629376">Turpināt darbu pakalpojumā Hangout</translation>
<translation id="2930644991850369934">Atkopšanas attēla lejupielādes laikā radās problēma. Zaudēts tīkla savienojums.</translation>
@@ -1723,6 +1731,7 @@ Es uzskatu, ka šai vietnei nav jābūt bloķētai.</translation>
<translation id="3396331542604645348">Atlasītais printeris nav pieejams vai nav instalēts pareizi. Pārbaudiet savu printeri vai pamēģiniet atlasīt citu printeri.</translation>
<translation id="3399597614303179694">Maķedoniešu tastatūra</translation>
<translation id="340013220407300675">Uzbrucēji var mēģināt nozagt jūsu informāciju no vietnes <ph name="BEGIN_BOLD" /><ph name="SITE" /><ph name="END_BOLD" /> (piemēram, paroles, ziņojumus vai kredītkaršu datus).</translation>
+<translation id="3401130144947259741">Ja šī funkcija ir iespējota, trasēšanas notikumi tiek eksportēti rīkā Event Tracing for Windows (ETW), un pēc tam tos var uztvert tādi rīki kā UIForETW vai Xperf.</translation>
<translation id="340282674066624"><ph name="DOWNLOAD_RECEIVED" />, <ph name="TIME_LEFT" /></translation>
<translation id="3406605057700382950">&amp;Rādīt grāmatzīmju joslu</translation>
<translation id="3412265149091626468">Pāriet uz atlasi</translation>
@@ -1882,6 +1891,7 @@ Es uzskatu, ka šai vietnei nav jābūt bloķētai.</translation>
<translation id="3603385196401704894">Kanādas franču</translation>
<translation id="3603622770190368340">Tīkla sertifikāta iegūšana</translation>
<translation id="3605780360466892872">Biznesmenis</translation>
+<translation id="3606220979431771195">Turku-F</translation>
<translation id="3608454375274108141">F10</translation>
<translation id="3608576286259426129">Lietotāja attēla priekšskatījums</translation>
<translation id="3609138628363401169">Serveris neatbalsta TLS pārskatīšanas paplašinājumu.</translation>
@@ -2402,6 +2412,7 @@ Lai turpinātu, visiem lietotājiem ir jāizrakstās.</translation>
<translation id="4321136812570927563">{NUM_DOWNLOAD,plural, =1{Turpināt lejupielādi}zero{Turpināt lejupielādes}one{Turpināt lejupielādes}other{Turpināt lejupielādes}}</translation>
<translation id="4321179778687042513">ctrl</translation>
<translation id="4322394346347055525">Aizvērt citas cilnes</translation>
+<translation id="4325378361067528777">Iespējot Push API fona režīmu</translation>
<translation id="4326952458285403282">Atspējo eksperimentālā DirectWrite fonta renderēšanas sistēmu.</translation>
<translation id="4326999707196471878">Rīkkopas skatu pārlūka dialoglodziņi</translation>
<translation id="4330406155931244378">Iespējot vairākvalodu pareizrakstības pārbaudītāju</translation>
@@ -2943,6 +2954,8 @@ Lai turpinātu skatīšanu, nospiediet jebkuru taustiņu.</translation>
<translation id="5148652308299789060">Atspējot 3D programmatūras rastrētāju</translation>
<translation id="5150254825601720210">Netscape sertifikāta SSL servera nosaukums</translation>
<translation id="5151034238407558331">Diemžēl pakalpojumu Google Payments šī tirgotāja veikalā var izmantot tikai pircēji ar ASV adresi. Ja esat ASV rezidents, lūdzu, |mainiet dzīvesvietas adresi savā Google Payments kontā| vai maksājiet, neizmantojot Google Payments.</translation>
+<translation id="5151639798712723370">"&gt;
+ USB-C ierīce (pieslēgvieta labajā pusē priekšā)</translation>
<translation id="5152451685298621771">(Bērniem paredzēts konts)</translation>
<translation id="5154108062446123722"><ph name="PRINTING_DESTINATION" />: papildu iestatījumi</translation>
<translation id="5154176924561037127">F8</translation>
@@ -3041,6 +3054,7 @@ Lai turpinātu skatīšanu, nospiediet jebkuru taustiņu.</translation>
<translation id="5271247532544265821">Pārslēgt ķīniešu vienkāršotās/tradicionālās valodas režīmu</translation>
<translation id="5271549068863921519">Saglabāt paroli</translation>
<translation id="5273628206174272911">Eksperimentāla navigācija vēsturē, horizontāli ritinot pāri malai.</translation>
+<translation id="5275795814002959418"><ph name="COUNT" /> no šīs vietnes</translation>
<translation id="5275973617553375938">No Google diska atkoptie faili</translation>
<translation id="527605719918376753">Izslēgt cilnes skaņu</translation>
<translation id="527605982717517565">Vienmēr atļaut izmantot JavaScript vietnē <ph name="HOST" /></translation>
@@ -3087,6 +3101,7 @@ Lai turpinātu skatīšanu, nospiediet jebkuru taustiņu.</translation>
<translation id="5328285148748012771">Piekļūstiet visām savām lietotnēm no šīs ērtās palaišanas programmas. Spēlējiet spēles, piedalieties video tērzēšanā, klausieties mūziku, rediģējiet dokumentus, kā arī iegūstiet vairāk lietotņu no Chrome interneta veikala.</translation>
<translation id="5329858601952122676">Dzēst</translation>
<translation id="5330145655348521461">Šie faili tika atvērti citā darbvirsmā. Lai skatītu šo darbvirsmu, izmantojiet profilu <ph name="USER_NAME" /> (<ph name="MAIL_ADDRESS" />).</translation>
+<translation id="5331975486040154427">USB-C ierīce (pieslēgvieta kreisajā pusē aizmugurē)</translation>
<translation id="5332624210073556029">Laika josla:</translation>
<translation id="5334142896108694079">Skriptu kešatmiņa</translation>
<translation id="533433379391851622">Paredzētā versija bija <ph name="EXPECTED_VERSION" />, bet faktiskā versija ir <ph name="NEW_ID" />.</translation>
@@ -3133,6 +3148,7 @@ Lai turpinātu skatīšanu, nospiediet jebkuru taustiņu.</translation>
<translation id="539755880180803351">Anotē tīmekļa veidlapas ar Automātiskās aizpildes lauka tipa paredzējumiem kā viettura tekstu.</translation>
<translation id="5397578532367286026">Šī lietotāja datu lietojumu un vēsturi var pārvaldīt pārzinis (<ph name="MANAGER_EMAIL" />) vietnē chrome.com.</translation>
<translation id="5397794290049113714">Jūs</translation>
+<translation id="5398824043967640339"><ph name="COUNT" /> no citām vietnēm</translation>
<translation id="5399158067281117682">PIN nav pareizs.</translation>
<translation id="5400640815024374115">Uzticama platformas moduļa (TPM) mikroshēma ir atspējota, vai arī tās vispār nav.</translation>
<translation id="5402367795255837559">Braila raksts</translation>
@@ -3959,6 +3975,7 @@ Iespējams, dažas funkcijas nebūs pieejamas. Pārbaudiet, vai profils eksistē
<translation id="6575251558004911012">Vaicāt, ja vietne pieprasa piekļuvi manai kamerai (ieteicams)</translation>
<translation id="6581162200855843583">Google diska saite</translation>
<translation id="6583070985841601920">Esat pierakstījies kā lietotājs <ph name="USER_EMAIL_ADDRESS" />. Administrators ir atspējojis sinhronizēšanu.</translation>
+<translation id="65832705307647870">Jaunas cilnes lapa iepriekš tiek aizpildīta ar populārām vietnēm.</translation>
<translation id="6584878029876017575">Microsoft beztermiņa parakstīšana</translation>
<translation id="6585234750898046415">Izvēlieties attēlu, ko attēlot savā kontā reģistrācijas lapā.</translation>
<translation id="6585283250473596934">Notiek pievienošanās publiskai sesijai.</translation>
@@ -4302,6 +4319,7 @@ Iespējams, dažas funkcijas nebūs pieejamas. Pārbaudiet, vai profils eksistē
<translation id="7092106376816104">Uznirstošo logu izņēmumi</translation>
<translation id="7093866338626856921">apmainīties datiem ar šādām ierīcēm: <ph name="HOSTNAMES" /></translation>
<translation id="7096082900368329802">Vai vēlaties atklāt vairāk lielisku funkciju?</translation>
+<translation id="7098389117866926363">USB-C ierīce (pieslēgvieta aizmugurē pa kreisi)</translation>
<translation id="7100897339030255923">Atlasīti <ph name="COUNT" /> vienumi</translation>
<translation id="7106346894903675391">Iegādāties papildu vietu krātuvē...</translation>
<translation id="7108338896283013870">Slēpt</translation>
@@ -5071,6 +5089,7 @@ Tiek rēķināts atlikušais laiks</translation>
<translation id="8190193592390505034">Savienojas ar <ph name="PROVIDER_NAME" /></translation>
<translation id="8191230140820435481">Pārvaldīt jūsu lietotnes, paplašinājumus un motīvus</translation>
<translation id="8191453843330043793">V8 starpniekservera atrisinātājs</translation>
+<translation id="8199491812735365610">Izvēlieties kontu, kurā pieteikties</translation>
<translation id="8200772114523450471">Kopsavilkums</translation>
<translation id="8202160505685531999">Lai atjauninātu savu <ph name="DEVICE_TYPE" /> profilu, lūdzu, atkārtoti ievadiet paroli.</translation>
<translation id="8204086856545141093">Serverim nosūtītie pieprasījumi ir bloķēti politikas dēļ.</translation>
@@ -5202,6 +5221,7 @@ Tiek rēķināts atlikušais uzlādes laiks</translation>
<translation id="8381977081675353473">Slovāku</translation>
<translation id="8382645631174981738"><ph name="EXTENSION_NAME" /> tika instalēts attāli</translation>
<translation id="8382913212082956454">Kopēt un nosūtīt adresi pa e-pastu</translation>
+<translation id="8384113940676655504">Tiek iespējots Smart Lock iestatījums, kas ļauj Chromebook datorā uztvert tālruņus, izmantojot tehnoloģiju Bluetooth Low Energy, lai atbloķētu Chromebook datoru, kad tālrunis atrodas tā tuvumā.</translation>
<translation id="8390029840652165810">Lūdzu, pārliecinieties, vai jūsu tīkla savienojums darbojas. Ja problēma joprojām pastāv, izrakstieties un atkārtoti pierakstieties, lai atsvaidzinātu savus akreditācijas datus.</translation>
<translation id="8390445751804042000">Iespējo ierīces aktivizēšanu, pamatojoties uz dažu tīkla pakešu saņemšanu.</translation>
<translation id="8390449457866780408">Serveris nav pieejams.</translation>
@@ -5288,6 +5308,7 @@ Tiek rēķināts atlikušais uzlādes laiks</translation>
<translation id="8509646642152301857">Pareizrakstības pārbaudes vārdnīcas lejupielāde neizdevās.</translation>
<translation id="8512476990829870887">Pārtraukt procesu</translation>
<translation id="851263357009351303">Vienmēr atļaut vietnei <ph name="HOST" /> rādīt attēlus</translation>
+<translation id="8513191386157529469"><ph name="CLIENT_NAME" /> atkļūdo šo pārlūku.</translation>
<translation id="8513974249124254369">ChromeVox (balss komentāri) ir iespējoti. Nospiediet taustiņu kombināciju Ctrl+Alt+Z, lai tos atspējotu.</translation>
<translation id="8515737884867295000">Uz sertifikātu balstītā autentifikācija neizdevās</translation>
<translation id="8518865679229538285">Tamilu ievades metode (rakstāmmašīna)</translation>
@@ -5407,6 +5428,7 @@ Tiek rēķināts atlikušais uzlādes laiks</translation>
<translation id="8677039480012021122">Notīrīt datus un atvienot</translation>
<translation id="8677212948402625567">Sakļaut visu...</translation>
<translation id="8678648549315280022">Pārvaldīt lejupielādes iestatījumus...</translation>
+<translation id="8680251145628383637">Pierakstieties, lai lietotu savas grāmatzīmes, vēsturi, paroles un citus iestatījumus visās savās ierīcēs. Turklāt jūs tiksiet automātiski pierakstīts savos Google pakalpojumos.</translation>
<translation id="8680536109547170164"><ph name="QUERY" />, atbilde, <ph name="ANSWER" /></translation>
<translation id="8680787084697685621">Konta pierakstīšanās informācija ir novecojusi.</translation>
<translation id="8684255857039823328">Parole saglabāta. Piekļūstiet savām parolēm no jebkuras ierīces vietnē <ph name="MANAGEMENT_LINK" />.</translation>
@@ -5462,6 +5484,7 @@ Tiek rēķināts atlikušais uzlādes laiks</translation>
<translation id="874420130893181774">Tradicionālā piņjiņa ievades metode</translation>
<translation id="8744525654891896746">Atveida atlasīšana uzraudzītajam lietotājam</translation>
<translation id="8744641000906923997">Romaji</translation>
+<translation id="8744959718895556609">Izvēlieties kontu no <ph name="LINK_TEXT" /></translation>
<translation id="8749863574775030885">Piekļūt USB ierīcēm, ko piedāvā nezināms ražotājs</translation>
<translation id="8754200782896249056">&lt;p&gt;Lietojot pārlūkprogrammu <ph name="PRODUCT_NAME" /> atbalstītā darbvirsmas vidē, tiks izmantoti sistēmas starpniekservera iestatījumi. Tomēr vai nu sistēma netiek atbalstīta, vai arī radās problēma ar sistēmas konfigurācijas palaišanu.&lt;/p&gt;
@@ -5582,6 +5605,7 @@ Tiek rēķināts atlikušais uzlādes laiks</translation>
<translation id="8933960630081805351">Rādīt lietojumprogrammā &amp;Finder</translation>
<translation id="8934732568177537184">Turpināt</translation>
<translation id="8938356204940892126">Es padodos</translation>
+<translation id="8938800817013097409">USB-C ierīce (pieslēgvieta aizmugurē pa labi)</translation>
<translation id="8940081510938872932">Šobrīd jūsu dators izpilda pārāk daudz darbību. Vēlāk mēģiniet vēlreiz.</translation>
<translation id="8941173171815156065">Atsaukt atļauju “<ph name="PERMISSION" />”</translation>
<translation id="8941248009481596111">Jūsu savienojums ar šo vietni ir privāts.</translation>
diff --git a/chromium/chrome/app/resources/generated_resources_ml.xtb b/chromium/chrome/app/resources/generated_resources_ml.xtb
index 5cb422f058a..afaffc5351e 100644
--- a/chromium/chrome/app/resources/generated_resources_ml.xtb
+++ b/chromium/chrome/app/resources/generated_resources_ml.xtb
@@ -136,6 +136,8 @@
<translation id="1178581264944972037">അല്പംനിര്‍ത്തൂ</translation>
<translation id="1179803038870941185"><ph name="URL" />-ന് നിങ്ങളുടെ MIDI ഉപകരണങ്ങളുടെ പൂർണ്ണമായ നിയന്ത്രണം ആവശ്യമുണ്ട്.</translation>
<translation id="1181037720776840403">നീക്കംചെയ്യൂ</translation>
+<translation id="11814323404622888">"&gt;
+ USB-C ഉപകരണം (പുറകിൽ വലതുവശത്തെ പോർട്ട്)</translation>
<translation id="1183083053288481515">അഡ്‌മിനിസ്‌ട്രേറ്റർ നൽകിയ സർട്ടിഫിക്കറ്റ് ഉപയോഗിക്കുന്നു</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>
@@ -330,6 +332,7 @@
<translation id="1468038450257740950">WebGL പിന്തുണയ്‌ക്കുന്നില്ല.</translation>
<translation id="1470719357688513792">പേജ് റീലോഡ് ചെയ്തതിനുശേഷം പുതിയ കുക്കി ക്രമീകരണങ്ങള്‍ പ്രാബല്യത്തില്‍ വരും.</translation>
<translation id="14720830734893704">വെർച്വൽ കീബോർഡ് പിന്തുണ പ്രവർത്തനക്ഷമമാക്കുക.</translation>
+<translation id="1474079335130556426">പുഷ് API-യ്‌ക്കായി പശ്ചാത്തല മോഡ് പ്രവർത്തനക്ഷമമാക്കുക. പുഷ് API-യ്‌ക്ക് ആവശ്യമെങ്കിൽ, അവസാന വിൻഡോ അടച്ചശേഷവും തുടർന്ന് പ്രവർത്തിക്കാനും ഒപ്പം OS സ്‌റ്റാർട്ടപ്പിൽ സമാരംഭിക്കുന്നതിനും ഇത് Chrome-നെ അനുവദിക്കുന്നു.</translation>
<translation id="1474339897586437869">"<ph name="FILENAME" />" അപ്‌ലോഡുചെയ്‌തില്ല. നിങ്ങളുടെ Google ഡ്രൈവിൽ മതിയായ ഇടമില്ല.</translation>
<translation id="1476503841242751994">{COUNT,plural, =1{ഒരു പാസ്‌വേഡ്}other{# പാസ്‌വേഡുകൾ}}</translation>
<translation id="1476949146811612304"><ph name="BEGIN_LINK" />ഓമ്‌നിബോക്‌സിൽ<ph name="END_LINK" />
@@ -652,6 +655,7 @@
<translation id="1918141783557917887">&amp;വളരെ ചെറുത്</translation>
<translation id="192144045824434199">ബ്രൗസർ ഫ്രെയിമിന് പുറത്ത് തുറക്കുന്ന പാനൽ വിൻഡോകൾ പ്രാപ്‌തമാക്കുക. പ്രാപ്‌തമാക്കിയിട്ടില്ലെങ്കിൽ, ഒരു പാനൽ തുറക്കാൻ ശ്രമിക്കുന്നത് പകരമായി ഒരു പോപ്പ്അപ്പിനെ തുറക്കുന്നതാണ്. dev, canary ചാനലുകളിൽ പാനലുകൾ എല്ലായ്പ്പോഴും പ്രാപ്‌തമാക്കിയിരിക്കുന്നു.</translation>
<translation id="1921584744613111023"><ph name="DPI" /> dpi</translation>
+<translation id="1921986354447415460">ടർക്കിഷ്-എഫ് കീബോർഡ്</translation>
<translation id="1923786009776354244">WebRTC സ്റ്റൺ ആരംഭ ഹെഡ്ഡറിനായുള്ള പിന്തുണ പ്രവർത്തനക്ഷമമാക്കുക.</translation>
<translation id="1926741348654461781">ഓഫ്‌ലൈൻ പേജുകൾ പ്രവർത്തനക്ഷമമാക്കുക</translation>
<translation id="1929546189971853037">നിങ്ങളുടെ സൈൻ ഇൻ ചെയ്ത എല്ലാ ഉപകരണങ്ങളിലെയും ബ്രൗസിംഗ് ചരിത്രം വായിക്കുക</translation>
@@ -856,6 +860,7 @@
<translation id="2231990265377706070">ആശ്ചര്യചിഹ്ന പോയിന്‍റ്</translation>
<translation id="2232876851878324699">ഫയലില്‍ ഒരു സാക്‌ഷ്യപത്രം ഉണ്ടായിരുന്നു, അത് ഇറക്കുമതി ചെയ്തിട്ടില്ല:</translation>
<translation id="2233502537820838181">&amp;കൂടുതൽ വിവരങ്ങൾ</translation>
+<translation id="2233587473672843170">പുതിയ ടാബ് പേജിൽ ജനപ്രിയ സൈറ്റുകൾ കാണിക്കുക</translation>
<translation id="223714078860837942">പേജ് റഫറർ നയം വിശദമാക്കുന്നത് സജ്ജീകരിച്ചില്ലെങ്കിൽ,
ക്രോസ് ഒറിജിൻ അഭ്യർത്ഥനകൾക്കായുള്ള 'റഫറർ' തലക്കെട്ടിൽ വിവരത്തെ ഈ ഫ്ലാഗ് സജ്ജീകരിക്കുന്നത് കുറയ്‌ക്കുന്നു.</translation>
<translation id="2238379619048995541">ആവൃത്തി നില ഡാറ്റ</translation>
@@ -935,6 +940,7 @@
<translation id="2326606747676847821">ആൾമാറാട്ടത്തിലേക്ക് പോകുക</translation>
<translation id="2326931316514688470">അപ്ലിക്കേഷൻ &amp;വീണ്ടും ലോഡുചെയ്യുക</translation>
<translation id="2327492829706409234">അപ്ലിക്കേഷനുകൾ പ്രാപ്‌തമാക്കുക</translation>
+<translation id="2329597144923131178">നിങ്ങളുടെ എല്ലാ ഉപകരണങ്ങളിലും ബുക്ക്‌മാർക്കുകളും ചരിത്രവും മറ്റ് ക്രമീകരണവും ലഭിക്കാൻ സൈൻ ഇൻ ചെയ്യുക.</translation>
<translation id="2332131598580221120">സ്റ്റോറിൽ കാണുക</translation>
<translation id="2332742915001411729">സ്ഥിരസ്ഥിതിയിലേക്ക് പുനഃസജ്ജമാക്കുക</translation>
<translation id="2335122562899522968">ഈ പേജ് കുക്കികളെ സജ്ജമാക്കുന്നു.</translation>
@@ -1323,6 +1329,7 @@
<translation id="2838379631617906747">ഇൻസ്‌റ്റാളുചെയ്യുന്നു</translation>
<translation id="2841837950101800123">ദാതാവ്</translation>
<translation id="2843806747483486897">സ്ഥിരസ്ഥിതി മാറ്റുക...</translation>
+<translation id="2844169650293029770">USB-C ഉപകരണം (ഇടത് വശത്ത് മുൻഭാഗത്തെ പോർട്ട്)</translation>
<translation id="2845382757467349449">ബുക്ക്മാര്‍‌ക്കുകള്‍‌ ബാര്‍ എപ്പോഴും കാണിക്കുക</translation>
<translation id="2846816712032308263">വേഗത്തിലുള്ള ടാബ്/വിൻഡോ അടയ്‌ക്കൽ പ്രവർത്തനക്ഷമമാക്കുന്നു - ഒരു ടാബിന്റെ onunload js ഹാൻഡ്ലർ GUI അവലംബിക്കാതെ പ്രവർത്തിപ്പിക്കുന്നു.</translation>
<translation id="284970761985428403"><ph name="ASCII_NAME" /> (<ph name="UNICODE_NAME" />)</translation>
@@ -1390,6 +1397,7 @@
<translation id="2923469375796950815">പുതിയ ZIP അൺപാക്കർ പ്രവർത്തനരഹിതമാക്കുക.</translation>
<translation id="2924296707677495905">ലിപ്യന്തരണം (namaskaram → ನಮಸ್ಕಾರ)</translation>
<translation id="2925966894897775835">ഷീറ്റുകൾ</translation>
+<translation id="2927017729816812676">കാഷെ സ്‌റ്റോറേജ്</translation>
<translation id="2927657246008729253">മാറ്റൂ...</translation>
<translation id="2928526264833629376">Hangouts-ൽ തുടരുക</translation>
<translation id="2930644991850369934">റിക്കവറി ഇമേജ് ഡൗൺലോഡ് ചെയ്യുന്നതിനിടെ ഒരു പ്രശ്നം ഉണ്ടായി. നെറ്റ്‌വര്‍ക്ക് ബന്ധം നഷ്ടപ്പെട്ടു.</translation>
@@ -1732,6 +1740,7 @@
<translation id="3396331542604645348">തിരഞ്ഞെടുത്ത പ്രിന്റർ ലഭ്യമല്ല അല്ലെങ്കിൽ ശരിയായി ഇൻസ്റ്റാൾ ചെയ്തിട്ടില്ല. നിങ്ങളുടെ പ്രിന്റർ പരിശോധിക്കുകയോ മറ്റൊരു പ്രിന്റർ തിരഞ്ഞെടുക്കാൻ ശ്രമിക്കുകയോ ചെയ്യുക</translation>
<translation id="3399597614303179694">മാസിഡോണിയൻ കീബോർഡ്</translation>
<translation id="340013220407300675">ആക്രമണകാരികൾ നിങ്ങളുടെ വിവരം <ph name="BEGIN_BOLD" /><ph name="SITE" /><ph name="END_BOLD" /> എന്നതിൽ നിന്ന് മോഷ്‌ടിക്കാൻ ശ്രമിക്കാം (ഉദാഹരണത്തിന്, പാസ്‌വേഡുകൾ, സന്ദേശങ്ങൾ, അല്ലെങ്കിൽ ക്രെഡിറ്റ് കാർഡുകൾ).</translation>
+<translation id="3401130144947259741">പ്രവർത്തനക്ഷമമാക്കിയിട്ടുണ്ടെങ്കിൽ ട്രെയ്‌സ് ഇവന്റുകൾ, Windows-നായുള്ള ഇവന്റ് ട്രെയ്‌സിംഗിലേക്ക് (ETW) എക്‌സ്‌പോർട്ടുചെയ്യും ഒപ്പം അത് UIForETW അല്ലെങ്കിൽ Xperf എന്നീ ടൂളുകൾ ഉപയോഗിച്ച് ക്യാപ്‌ച്ചർ ചെയ്യാനുമാകും.</translation>
<translation id="340282674066624"><ph name="DOWNLOAD_RECEIVED" />, <ph name="TIME_LEFT" /></translation>
<translation id="3406605057700382950">ബുക്ക്മാർക്ക് ബാർ &amp;കാണിക്കുക</translation>
<translation id="3412265149091626468">തിരഞ്ഞെടുക്കുന്നതിലേക്ക് പോകുക</translation>
@@ -1891,6 +1900,7 @@
<translation id="3603385196401704894">കനേഡിയന്‍ ഫ്രഞ്ച്</translation>
<translation id="3603622770190368340">നെറ്റ്‌വർക്ക് സർട്ടിഫിക്കറ്റ് ലഭ്യമാക്കുക</translation>
<translation id="3605780360466892872">ബട്ടൺഡൗൺ</translation>
+<translation id="3606220979431771195">ടർക്കിഷ്-എഫ്</translation>
<translation id="3608454375274108141">F10</translation>
<translation id="3608576286259426129">ഉപയോക്തൃ ചിത്ര പ്രിവ്യൂ</translation>
<translation id="3609138628363401169">സെര്‍‌വര്‍‌ TLS പുനരാലോചന വിപുലീകരണത്തെ പിന്തുണയ്‌ക്കുന്നില്ല.</translation>
@@ -2409,6 +2419,7 @@
<translation id="4321136812570927563">{NUM_DOWNLOAD,plural, =1{ഡൗൺലോഡ് തുടരുക}other{ഡൗൺലോഡുകൾ തുടരുക}}</translation>
<translation id="4321179778687042513">ctrl</translation>
<translation id="4322394346347055525">മറ്റ് ടാബുകള്‍ അടയ്‌ക്കുക</translation>
+<translation id="4325378361067528777">പുഷ് API പശ്ചാത്തല മോഡ് പ്രവർത്തനക്ഷമമാക്കുക</translation>
<translation id="4326952458285403282">പരീക്ഷണാത്മക DirectWrite ഫോണ്ട് റെൻഡറിംഗ് സംവിധാനം ഉപയോഗിക്കുന്നത് പ്രവർത്തനരഹിതമാക്കുന്നു.</translation>
<translation id="4326999707196471878">ടൂൾക്കിറ്റ്-കാഴ്‌ച ബ്രൗസർ ഡയലോഗുകൾ.</translation>
<translation id="4330406155931244378">ബഹുഭാഷ അക്ഷരത്തെറ്റ് പ്രവർത്തനക്ഷമമാക്കുക</translation>
@@ -2951,6 +2962,8 @@
<translation id="5148652308299789060">3D സോഫ്റ്റ്‌വെയർ റാസ്‌റ്ററൈസർ അപ്രാപ്‌തമാക്കുക</translation>
<translation id="5150254825601720210">നെറ്റ്‌സ്‌കേപ്പ് സര്‍‌ട്ടിഫിക്കറ്റ് SSL സെര്‍‌വര്‍‌ നാമം</translation>
<translation id="5151034238407558331">നിഭാഗ്യവശാൽ, യുഎസ് വിലാസമുള്ളവർക്ക് മാത്രമേ ഈ വ്യാപാര കേന്ദ്രത്തിൽ Google പേയ്‌മെന്റ് ഉപയോഗിക്കാൻ കഴിയൂ. നിങ്ങൾ യുഎസിലെ താമസക്കാരനാണെങ്കിൽ നിങ്ങളുടെ പേയ്‌മെന്റിലെ വീട്ടുവിലാസം മാറ്റുക| അല്ലെങ്കിൽ Google പേയ്‌മെന്റ് ഉപയോഗിക്കാതെ പണമടയ്‌ക്കുക.</translation>
+<translation id="5151639798712723370">"&gt;
+ USB-C ഉപകരണം (വലത് വശത്ത് മുൻഭാഗത്തെ പോർട്ട്)</translation>
<translation id="5152451685298621771">(കുട്ടികൾക്കായുള്ള അക്കൗണ്ട്)</translation>
<translation id="5154108062446123722"><ph name="PRINTING_DESTINATION" /> എന്നതിനുള്ള വിപുലമായ ക്രമീകരണങ്ങൾ</translation>
<translation id="5154176924561037127">F8</translation>
@@ -3049,6 +3062,7 @@
<translation id="5271247532544265821">ലളിതവല്‍‌ക്കരിച്ച/പരമ്പരാഗത ചൈനീസ് മോഡ് ടോഗിള്‍‌ ചെയ്യുക</translation>
<translation id="5271549068863921519">പാസ്‌വേഡ് സംരക്ഷിക്കുക</translation>
<translation id="5273628206174272911">തിരശ്ചീന ഓവർസ്‌ക്രോളിനുള്ള പ്രതികരണമായ പരീക്ഷണാത്മക ചരിത്ര നാവിഗേഷൻ.</translation>
+<translation id="5275795814002959418">ഈ സൈറ്റിൽ നിന്നും <ph name="COUNT" /> എണ്ണം</translation>
<translation id="5275973617553375938">Google ഡ്രൈവിൽ നിന്നും ഫയലുകൾ വീണ്ടെടുത്തു</translation>
<translation id="527605719918376753">ടാബ് മ്യൂട്ടുചെയ്യുക</translation>
<translation id="527605982717517565"><ph name="HOST" /> ല്‍‌ എല്ലായ്‌പ്പോഴുംJavaScript അനുവദിക്കുക </translation>
@@ -3095,6 +3109,7 @@
<translation id="5328285148748012771">ഈ ഹാൻഡി ലോഞ്ചറിൽ നിന്ന് നിങ്ങളുടെ എല്ലാ അപ്ലിക്കേഷനുകളും ആക്‌സസ്സുചെയ്യുക. ഗെയിമുകൾ പ്ലേ ചെയ്യുക, വീഡിയോ ചാറ്റ് ചെയ്യുക, സംഗീതം ആസ്വദിക്കുക, പ്രമാണങ്ങൾ എഡിറ്റുചെയ്യുക അല്ലെങ്കിൽ Chrome വെബ് സ്റ്റോറിൽ നിന്ന് കൂടുതൽ അപ്ലിക്കേഷനുകൾ നേടുക.</translation>
<translation id="5329858601952122676">&amp;ഇല്ലാതാക്കൂ</translation>
<translation id="5330145655348521461">ഈ ഫയലുകൾ മറ്റൊരു ഡെസ്‌ക്‌ടോപ്പിലാണ് തുറന്നിരിക്കുന്നത്. അത് കാണാൻ <ph name="USER_NAME" /> (<ph name="MAIL_ADDRESS" />) എന്നതിലേക്ക് നീക്കുക.</translation>
+<translation id="5331975486040154427">USB-C ഉപകരണം (പുറകിൽ ഇടതുവശത്തെ പോർട്ട്)</translation>
<translation id="5332624210073556029">സമയ മേഖല :</translation>
<translation id="5334142896108694079">സ്‌ക്രിപ്റ്റ് കാഷെ</translation>
<translation id="533433379391851622">പ്രതീക്ഷിച്ച പതിപ്പ് "<ph name="EXPECTED_VERSION" />" ആണ്, എന്നാൽ ലഭിച്ച പതിപ്പ് "<ph name="NEW_ID" />" ആണ്.</translation>
@@ -3141,6 +3156,7 @@
<translation id="539755880180803351">ഓട്ടോമാറ്റിക് ആയി പൂരിപ്പിച്ച ഫീൽഡ് ടൈപ്പ് പ്രവചനങ്ങളെ പ്ലേസ്‌ഹോൾഡർ വാചകത്തോട് കൂടി വെബ് ഫോമുകൾ വ്യാഖ്യാനിക്കുന്നു.</translation>
<translation id="5397578532367286026">ഈ ഉപയോക്താവിന്റെ ഉപയോഗവും ചരിത്രവും chrome.com-ൽ മാനേജർക്ക് (<ph name="MANAGER_EMAIL" />) അവലോകനം ചെയ്യാനാകും.</translation>
<translation id="5397794290049113714">നിങ്ങള്‍</translation>
+<translation id="5398824043967640339">മറ്റ് സൈറ്റുകളിൽ നിന്നും <ph name="COUNT" /> എണ്ണം</translation>
<translation id="5399158067281117682">PIN-കള്‍ പൊരുത്തപ്പെടുന്നില്ല!</translation>
<translation id="5400640815024374115">ട്രസ്റ്റഡ് പ്ലാറ്റ്ഫോം മൊഡ്യൂള്‍ (TPM) ചിപ്പ് അപ്രാപ്തമാക്കി അല്ലെങ്കില്‍ ഹാജരല്ല.</translation>
<translation id="5402367795255837559">ബ്രെയ്‌ലി</translation>
@@ -3963,6 +3979,7 @@
<translation id="6575251558004911012">ഒരു സൈറ്റിന് നിങ്ങളുടെ ക്യാമറയിലേക്ക് ആക്‌സസ്സ് വേണ്ടി വരുമ്പോൾ ആവശ്യപ്പെടുക (ശുപാർശ ചെയ്‌തത്)</translation>
<translation id="6581162200855843583">Google ഡ്രൈവ് ലിങ്ക്</translation>
<translation id="6583070985841601920"><ph name="USER_EMAIL_ADDRESS" /> എന്നായി സൈൻ ഇൻ ചെയ്‌തു. നിങ്ങളുടെ അഡ്‌മിനിസ്‌ട്രേറ്റർ സമന്വയം പ്രവർത്തനരഹിതമാക്കിയിരിക്കുന്നു.</translation>
+<translation id="65832705307647870">ജനപ്രിയ സൈറ്റുകൾ ഉപയോഗിച്ച് പുതിയ ടാബ് പേജ് പ്രീപോപ്പുലേറ്റുചെയ്യുക.</translation>
<translation id="6584878029876017575">Microsoft Lifetime Signing</translation>
<translation id="6585234750898046415">പ്രവേശന സ്ക്രീനിലുള്ള നിങ്ങളുടെ അക്കൌണ്ടില്‍ പ്രദര്‍ശിപ്പിക്കുന്നതിനായി ഒരു ചിത്രം തിരഞ്ഞെടുക്കുക. </translation>
<translation id="6585283250473596934">എല്ലാവർക്കുമുള്ള സെഷനിൽ പ്രവേശിക്കുന്നു.</translation>
@@ -4306,6 +4323,7 @@
<translation id="7092106376816104">പോപ്പ്-അപ്പ് ഒഴിവാക്കലുകള്‍‌</translation>
<translation id="7093866338626856921"><ph name="HOSTNAMES" /> പേരിലുള്ള ഉപകരണങ്ങൾ ഉപയോഗിച്ച് ഡാറ്റ എക്‌സ്‌ചേഞ്ചുചെയ്യുക</translation>
<translation id="7096082900368329802">കൂടുതൽ ആകർഷണീയ സവിശേഷതകൾ കണ്ടെത്തണോ?</translation>
+<translation id="7098389117866926363">USB-C ഉപകരണം (പുറകിൽ ഇടതുവശത്തെ പോർട്ട്)</translation>
<translation id="7100897339030255923"><ph name="COUNT" /> ഇനങ്ങൾ തിരഞ്ഞെടുത്തു</translation>
<translation id="7106346894903675391">കൂടുതൽ സംഭരണം വാങ്ങുക...</translation>
<translation id="7108338896283013870">മറയ്ക്കുക</translation>
@@ -5083,6 +5101,7 @@
<translation id="8190193592390505034"><ph name="PROVIDER_NAME" /> ലേക്ക് ബന്ധിപ്പിക്കുന്നു</translation>
<translation id="8191230140820435481">നിങ്ങളുടെ അപ്ലിക്കേഷനുകൾ, വിപുലീകരണങ്ങൾ, തീമുകൾ എന്നിവ നിയന്ത്രിക്കുക</translation>
<translation id="8191453843330043793">V8 പ്രോക്‌സി റിസോൾവർ</translation>
+<translation id="8199491812735365610">ലോഗിൻ ചെയ്യാൻ ഒരു അക്കൗണ്ട് തിരഞ്ഞെടുക്കുക</translation>
<translation id="8200772114523450471">തുടരൂ</translation>
<translation id="8202160505685531999">നിങ്ങളുടെ <ph name="DEVICE_TYPE" /> പ്രൊഫൈൽ അപ്‌ഡേറ്റുചെയ്യാൻ പാസ്‌വേഡ് വീണ്ടും നൽകുക.</translation>
<translation id="8204086856545141093">സെർവറിലേക്കുള്ള അഭ്യർത്ഥനകളെ ഒരു നയം തടഞ്ഞു.</translation>
@@ -5212,6 +5231,7 @@
<translation id="8381977081675353473">സ്ലൊവൊക്യന്‍</translation>
<translation id="8382645631174981738"><ph name="EXTENSION_NAME" />, വിദൂരമായി ഇൻസ്‌റ്റാളുചെയ്തു</translation>
<translation id="8382913212082956454">ഇമെയില്‍ വിലാസം&amp; പകര്‍ത്തുക</translation>
+<translation id="8384113940676655504">ഫോൺ അടുത്തുള്ളപ്പോൾ Chromebook അൺലോക്കുചെയ്യുന്നതിനായി, 'Bluetooth ലോ എനർജി' വഴി ഫോണുകൾ കണ്ടെത്താൻ Chromebook-നെ അനുവദിക്കുന്ന Smart Lock ക്രമീകരണം പ്രവർത്തനക്ഷമമാക്കുന്നു.</translation>
<translation id="8390029840652165810">നിങ്ങളുടെ നെറ്റ്‌വർക്ക് കണക്ഷൻ പ്രവർത്തിക്കുന്നുവെന്ന് ഉറപ്പാക്കുക, പ്രശ്‌നം നിലനിൽക്കുകയാണെങ്കിൽ, നിങ്ങളുടെ ക്രെഡൻഷ്യലുകൾ പുതുക്കുന്നതിന് സൈൻ ഔട്ട് ചെയ്‌ത് വീണ്ടും സൈൻ ഇൻ ചെയ്യുക.</translation>
<translation id="8390445751804042000">ചില നെറ്റ്‌വർക്ക് പാക്കറ്റുകളുടെ ലഭ്യത അടിസ്ഥാനമാക്കി ഉപകരണം സജീവമാക്കുന്നത് പ്രവർത്തനക്ഷമമാക്കുന്നു.</translation>
<translation id="8390449457866780408">സെര്‍വര്‍ ലഭ്യമല്ല.</translation>
@@ -5298,6 +5318,7 @@
<translation id="8509646642152301857">അക്ഷരപ്പിശക് പരിശോധന നിഘണ്ടു ഡൗൺലോഡുചെയ്യുന്നത് പരാജയപ്പെട്ടു.</translation>
<translation id="8512476990829870887">പ്രോസസ്സ് അവസാനിപ്പിക്കുക</translation>
<translation id="851263357009351303">ചിത്രങ്ങള്‍‌ കാണിക്കുന്നതിന്<ph name="HOST" /> നെ എല്ലായ്‌പ്പോഴും അനുവദിക്കുക</translation>
+<translation id="8513191386157529469">"<ph name="CLIENT_NAME" />" ഈ ബ്രൗസറിനെ ഡീബഗുചെയ്യുന്നു.</translation>
<translation id="8513974249124254369">ChromeVox (സ്‌പോക്കൺ ഫീഡ്‌ബാക്ക്) പ്രവർത്തനക്ഷമമാണ്. പ്രവർത്തനരഹിതമാക്കാൻ Ctrl+Alt+Z അമർത്തുക.</translation>
<translation id="8515737884867295000">സര്‍ട്ടിഫിക്കറ്റ്-അടിസ്ഥാന പ്രാമാണീകരണം പരാജയപ്പെട്ടു</translation>
<translation id="8518865679229538285">തമിഴ് ഇൻപുട്ട് രീതി (ടൈപ്പ്റൈറ്റർ)</translation>
@@ -5417,6 +5438,7 @@
<translation id="8677039480012021122">ഡാറ്റ മായ്‌ച്ചതിനുശേഷം വിച്‌ഛേദിക്കുക</translation>
<translation id="8677212948402625567">എല്ലാം സങ്കോചിപ്പിക്കുക...</translation>
<translation id="8678648549315280022">ഡൗൺലോഡ് ക്രമീകരണങ്ങൾ നിയന്ത്രിക്കുക...</translation>
+<translation id="8680251145628383637">നിങ്ങളുടെ എല്ലാ ഉപകരണങ്ങളിലും ബുക്ക്‌മാർക്കുകൾ, ചരിത്രം, പാസ്‌വേഡുകൾ, മറ്റ് ക്രമീകരണം എന്നിവ ലഭിക്കാൻ സൈൻ ഇൻ ചെയ്യുക. നിങ്ങളുടെ Google സേവനങ്ങളിലേക്ക് സ്വയമേവ നിങ്ങൾ സൈൻ ഇൻ ആകുന്നതുമാണ്.</translation>
<translation id="8680536109547170164"><ph name="QUERY" />, ഉത്തരം, <ph name="ANSWER" /></translation>
<translation id="8680787084697685621">അക്കൗണ്ട് പ്രവേശന വിവരങ്ങള്‍ കാലഹരണപ്പെട്ടതാണ്.</translation>
<translation id="8684255857039823328">പാസ്‌വേഡ് സംരക്ഷിച്ചു. <ph name="MANAGEMENT_LINK" /> എന്നതിലെ ഏതൊരു ഉപകരണത്തിൽ നിന്നും നിങ്ങളുടെ പാസ്‌വേഡ് ആക്‌സസ്സുചെയ്യുക.</translation>
@@ -5472,6 +5494,7 @@
<translation id="874420130893181774">പരമ്പരാഗത പിൻയിൻ ടൈപ്പുചെയ്യൽ രീതി</translation>
<translation id="8744525654891896746">ഈ സൂപ്പർവൈസുചെയ്‌ത ഉപയോക്താവിനായി ഒരു അവതാർ തിരഞ്ഞെടുക്കുക</translation>
<translation id="8744641000906923997">Romaji</translation>
+<translation id="8744959718895556609">നിങ്ങളുടെ <ph name="LINK_TEXT" /> എന്നതിൽ നിന്ന് ഒരു അക്കൗണ്ട് തിരഞ്ഞെടുക്കുക</translation>
<translation id="8749863574775030885">ഒരു അജ്ഞാത വെണ്ടറിൽ നിന്നും USB ഉപകരണങ്ങൾ ആക്‌സസ്സുചെയ്യുക</translation>
<translation id="8754200782896249056">&lt;p&gt; ഒരു പിന്തുണ ഡെസ്ക്ടോപ്പ് പരിതസ്ഥിതിയ്‌ക്ക് കീഴിൽ <ph name="PRODUCT_NAME" /> പ്രവർത്തിക്കുമ്പോൾ, സിസ്‌റ്റം പ്രോക്‌സി ക്രമീകരണം ഉപയോഗിക്കും. നിങ്ങളുടെ സിസ്‌റ്റം പിന്തുണച്ചില്ല അല്ലെങ്കിൽ നിങ്ങളുടെ സിസ്‌റ്റം കോൺഫിഗറേഷൻ സമാരംഭിക്കുന്നതിൽ ഒരു പ്രശ്നമുണ്ടായി.&lt;/p&gt;
&lt;p&gt;പക്ഷേ കമാൻഡ് ലൈൻ വഴി നിങ്ങൾക്ക് ഇപ്പോഴും കോൺഫിഗർചെയ്യാനാവും. ഫ്ലാഗുകളെയും പരിതസ്ഥിതി വേരിയബിളുകളെയും കുറിച്ചുള്ള കൂടുതൽ വിവരങ്ങൾക്ക് &lt;code&gt;man <ph name="PRODUCT_BINARY_NAME" />&lt;/code&gt;കാണുക .&lt;/p&gt;</translation>
@@ -5592,6 +5615,7 @@
<translation id="8933960630081805351">&amp;ഫൈന്‍‌ഡറില്‍ കാണിക്കുക</translation>
<translation id="8934732568177537184">തുടരുക</translation>
<translation id="8938356204940892126">ഞാൻ നിർത്തി</translation>
+<translation id="8938800817013097409">USB-C ഉപകരണം (പുറകിൽ വലതുവശത്തെ പോർട്ട്)</translation>
<translation id="8940081510938872932">നിങ്ങളുടെ കമ്പ്യൂട്ടർ ഇപ്പോൾ വളരെയധികം കാര്യങ്ങൾ ചെയ്യുന്നു. പിന്നീട് വീണ്ടും ശ്രമിക്കുക.</translation>
<translation id="8941173171815156065">'<ph name="PERMISSION" />' എന്ന അനുമതി റദ്ദാക്കുക</translation>
<translation id="8941248009481596111">ഈ സൈറ്റിലേക്കുള്ള നിങ്ങളുടെ കണക്ഷൻ സ്വകാര്യമാണ്.</translation>
diff --git a/chromium/chrome/app/resources/generated_resources_mr.xtb b/chromium/chrome/app/resources/generated_resources_mr.xtb
index dff27a69ce3..f49fa9c9d2d 100644
--- a/chromium/chrome/app/resources/generated_resources_mr.xtb
+++ b/chromium/chrome/app/resources/generated_resources_mr.xtb
@@ -136,6 +136,8 @@
<translation id="1178581264944972037">विराम द्या</translation>
<translation id="1179803038870941185"><ph name="URL" /> आपल्या MIDI डिव्हाइसचे पूर्ण नियंत्रण मिळवू इच्छिते.</translation>
<translation id="1181037720776840403">काढा</translation>
+<translation id="11814323404622888">"&gt;
+ USB-C डिव्‍हाइस (उजव्या बाजूचे मागील पोर्ट)</translation>
<translation id="1183083053288481515">प्रशासकाने-प्रदान केलेले प्रमाणपत्र वापरत आहे</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>
@@ -330,6 +332,7 @@
<translation id="1468038450257740950">WebGL समर्थित नाही.</translation>
<translation id="1470719357688513792">नवीन कुकी सेटिंग्ज हे पृष्ठ रीलोड केल्यानंतर प्रभावी होतील.</translation>
<translation id="14720830734893704">व्हर्च्युअल कीबोर्ड समर्थन सक्षम करा.</translation>
+<translation id="1474079335130556426">Push API साठी पार्श्वभूमी मोड सक्षम करा. हे अखरेची विंडो बंद केल्यानंतर आणि OS प्रारंभ लाँच करताना Push API ला आवश्‍यक असल्यास, Chrome ला सुरु राहण्‍याची अनुमती देते.</translation>
<translation id="1474339897586437869">"<ph name="FILENAME" />" अपलोड केली नाही. आपल्या Google ड्राइव्हमध्ये पर्याप्त स्थान नाही.</translation>
<translation id="1476503841242751994">{COUNT,plural, =1{1 संकेतशब्द}one{# संकेतशब्द}other{# संकेतशब्द}}</translation>
<translation id="1476949146811612304"><ph name="BEGIN_LINK" />विविधोपयोगी क्षेत्रातून<ph name="END_LINK" /> शोध घेत असताना कोणते शोध इंजिन वापरले जावे हे सेट करा.</translation>
@@ -653,6 +656,7 @@
<translation id="1918141783557917887">&amp;जरा लहान</translation>
<translation id="192144045824434199">ब्राऊझर फ्रेमच्या बाहेर उघडणार्‍या पॅनेल विंडो सक्षम करा. सक्षम न केल्यास पॅनेल उघडण्याच्या प्रयत्नातून त्याऐवजी एक पॉपअप उघडेल. dev आणि canary चॅनेलवर पॅनेल नेहमीच सक्षम केली जातात.</translation>
<translation id="1921584744613111023"><ph name="DPI" /> dpi</translation>
+<translation id="1921986354447415460">तुर्की-F कीबोर्ड</translation>
<translation id="1923786009776354244">WebRTC Stun मूळ शीर्षलेखासाठी समर्थन सक्षम करा.</translation>
<translation id="1926741348654461781">ऑफलाइन पृष्‍ठे सक्षम करा</translation>
<translation id="1929546189971853037">आपल्या सर्व साइन इन केलेल्या डिव्हाइसेसवर आपला ब्राउझिंग इतिहास वाचा</translation>
@@ -857,6 +861,7 @@
<translation id="2231990265377706070">उद्गार चिन्ह</translation>
<translation id="2232876851878324699">फाइलमध्ये एक प्रमाणपत्र आहे, जे आयात झाले नाही:</translation>
<translation id="2233502537820838181">&amp;अधिक माहिती</translation>
+<translation id="2233587473672843170">नवीन टॅब पृष्ठावर लोकप्रिय साइट दर्शवा</translation>
<translation id="223714078860837942">पृष्ठावर सुस्पष्ट संदर्भकर्ता धोरण सेट केले नसल्यास, हे ध्वजांकन सेट करण्यामुळे क्रॉस-मूळ विनंत्यांच्या 'संदर्भकर्ता' शीर्षलेखात माहितीचे प्रमाण कमी करेल.</translation>
<translation id="2238379619048995541">फ्रिक्वेन्सी स्थिती डेटा</translation>
<translation id="2239921694246509981">पर्यवेक्षी व्यक्ती जोडा</translation>
@@ -935,6 +940,7 @@
<translation id="2326606747676847821">गुप्त व्हा</translation>
<translation id="2326931316514688470">&amp;अ‍ॅप रीलोड करा</translation>
<translation id="2327492829706409234">अ‍ॅप सक्षम करा</translation>
+<translation id="2329597144923131178">आपल्‍या सर्व डिव्‍हाइसेस वरील आपले बुकमार्क, इतिहास, संकेतशब्द आणि इतर सेटिंग्ज मिळविण्‍यासाठी साइन इन करा.</translation>
<translation id="2332131598580221120">स्टोअर मध्ये पहा</translation>
<translation id="2332742915001411729">डीफॉल्टवर रीसेट करा</translation>
<translation id="2335122562899522968">हे पृष्ठ कुकीज सेट करते.</translation>
@@ -1323,6 +1329,7 @@
<translation id="2838379631617906747">स्थापित करीत आहे</translation>
<translation id="2841837950101800123">प्रदाता</translation>
<translation id="2843806747483486897">डीफॉल्ट बदला...</translation>
+<translation id="2844169650293029770">USB-C डिव्‍हाइस (डाव्‍या बाजूचे पुढील पोर्ट)</translation>
<translation id="2845382757467349449">नेहमी बुकमार्क बार दर्शवा</translation>
<translation id="2846816712032308263">जलद टॅब/विंडो बंद करणे सक्षम करते - GUI च्या टॅब चे onunload js हँडलर वैयक्तिकरित्या चालविते.</translation>
<translation id="284970761985428403"><ph name="ASCII_NAME" /> (<ph name="UNICODE_NAME" />)</translation>
@@ -1387,6 +1394,7 @@
<translation id="2923469375796950815">नवीन ZIP अनपॅकर अक्षम करा.</translation>
<translation id="2924296707677495905">लिप्यंतरण (namaskaram → ನಮಸ್ಕಾರ)</translation>
<translation id="2925966894897775835">पत्रके</translation>
+<translation id="2927017729816812676">कॅशे संचय</translation>
<translation id="2927657246008729253">बदला...</translation>
<translation id="2928526264833629376">Hangouts वर सुरु ठेवा</translation>
<translation id="2930644991850369934">पुनर्प्राप्ती प्रतिमा डाउनलोड करताना एक समस्या आली. नेटवर्क कनेक्शन गमावले गेले आहे.</translation>
@@ -1730,6 +1738,7 @@
<translation id="3396331542604645348">निवडलेले प्रिंटर उपलब्ध नाही किंवा योग्यरितीने स्थापित केले नाही. आपला प्रिंटर तपासा किंवा दुसरा प्रिंटर निवडून पहा.</translation>
<translation id="3399597614303179694">मॅसेडोनियन कीबोर्ड</translation>
<translation id="340013220407300675">आक्रमणकर्ते कदाचित <ph name="BEGIN_BOLD" /><ph name="SITE" /><ph name="END_BOLD" /> वरून आपली माहिती चोरण्याचा प्रयत्न करत असू शकतात (उदाहरणार्थ, संकेतशब्द, संदेश किंवा क्रेडिट कार्ड).</translation>
+<translation id="3401130144947259741">सक्षम केले असल्‍यास, ट्रेस इ्व्हेंट Windows साठी इव्हेंट ट्रेसिंग ETW वर निर्यात केले जातील आणि नंतर ते UIForETW किंवा Xperf सारख्‍या साधनांद्वारे कॅप्चर केले जाऊ शकतात.</translation>
<translation id="340282674066624"><ph name="DOWNLOAD_RECEIVED" />, <ph name="TIME_LEFT" /></translation>
<translation id="3406605057700382950">बुकमार्क बार &amp;दर्शवा</translation>
<translation id="3412265149091626468">निवड वर जा</translation>
@@ -1889,6 +1898,7 @@
<translation id="3603385196401704894">कॅनेडियन फ्रेंच</translation>
<translation id="3603622770190368340">नेटवर्क प्रमाणपत्र प्राप्त करा</translation>
<translation id="3605780360466892872">बटनडाउन</translation>
+<translation id="3606220979431771195">तुर्की-F</translation>
<translation id="3608454375274108141">F10</translation>
<translation id="3608576286259426129">वापरकर्ता प्रतिमा पूर्वावलोकन</translation>
<translation id="3609138628363401169">सर्व्हर TLS रीनिगोसिएशन विस्तारास समर्थन देत नाही.</translation>
@@ -2408,6 +2418,7 @@
<translation id="4321136812570927563">{NUM_DOWNLOAD,plural, =1{डाउनलोड सुरु ठेवा}one{डाउनलोड सुरु ठेवा}other{डाउनलोड सुरु ठेवा}}</translation>
<translation id="4321179778687042513">ctrl</translation>
<translation id="4322394346347055525">अन्य टॅब बंद करा</translation>
+<translation id="4325378361067528777">Push API पार्श्वभूमी मोड सक्षम करा</translation>
<translation id="4326952458285403282">प्रायोगिक DirectWrite फॉन्‍ट प्रस्‍तुती प्रणालीचा वापर अक्षम करते.</translation>
<translation id="4326999707196471878">टूलकिट-दृश्ये ब्राउझर संवाद.</translation>
<translation id="4330406155931244378">बहुभाषिक शब्दलेखन-तपासक सक्षम करा</translation>
@@ -2943,6 +2954,8 @@
<translation id="5148652308299789060">3D सॉफ्टवेअर रेस्टरायझर अक्षम करा</translation>
<translation id="5150254825601720210">Netscape प्रमाणपत्र SSL सर्व्हर नाव</translation>
<translation id="5151034238407558331">दुर्दैवाने, Google Payments केवळ एका यूएस पत्त्यासह खरेदीदारांद्वारे या व्यापार्‍याकडे वापरले जाऊ शकते. आपण यूएस रहिवासी असल्यास, कृपया |आपला निवासस्थान पत्ता Google Payments सह बदला| किंवा Google Payments न वापरता देयक द्या.</translation>
+<translation id="5151639798712723370">"&gt;
+ USB-C डिव्‍हाइस (उजव्‍या बाजूचे पुढील पोर्ट)</translation>
<translation id="5152451685298621771">(मुलांसाठी खाती)</translation>
<translation id="5154108062446123722"><ph name="PRINTING_DESTINATION" /> यासाठी प्रगत सेटिंग्ज</translation>
<translation id="5154176924561037127">F8</translation>
@@ -3041,6 +3054,7 @@
<translation id="5271247532544265821">सरलीकृत/पारंपारिक चीनी मोड टॉगल करा</translation>
<translation id="5271549068863921519">संकेतशब्द जतन करा</translation>
<translation id="5273628206174272911">क्षैतिज ओव्हरस्क्रोलला प्रतिसाद म्हणून प्रायोगिक इतिहास नेव्हिगेशन.</translation>
+<translation id="5275795814002959418">या साइट वरील <ph name="COUNT" /></translation>
<translation id="5275973617553375938">Google ड्राइव्ह वरून पुनर्प्राप्त केलेल्‍या फायली</translation>
<translation id="527605719918376753">टॅब नि:शब्द करा</translation>
<translation id="527605982717517565"><ph name="HOST" /> वर JavaScript ला नेहमी परवानगी द्या</translation>
@@ -3087,6 +3101,7 @@
<translation id="5328285148748012771">या हँडी लाँचरवरील आपल्या सर्व अॅप्सवर प्रवेश करा. गेम खेळा, व्हिडिओ चॅट करा, संगीत ऐका, दस्तऐवज संपादित करा किंवा Chrome वेब स्टोअरवरून अधिक अॅप्स मिळवा.</translation>
<translation id="5329858601952122676">&amp;हटवा</translation>
<translation id="5330145655348521461">या फायली एका भिन्न डेस्कटॉपवर उघडलेल्या आहेत. या पाहण्यासाठी <ph name="USER_NAME" /> (<ph name="MAIL_ADDRESS" />) वर हलवा.</translation>
+<translation id="5331975486040154427">USB-C डिव्‍हाइस (डाव्या बाजूचे मागील पोर्ट)</translation>
<translation id="5332624210073556029">टाइम झोन:</translation>
<translation id="5334142896108694079">स्क्रिप्ट कॅशे</translation>
<translation id="533433379391851622">अपेक्षित आवृत्ती "<ph name="EXPECTED_VERSION" />", परंतु आवृत्ती "<ph name="NEW_ID" />" होती.</translation>
@@ -3133,6 +3148,7 @@
<translation id="539755880180803351">प्लेसहोल्डर मजकूर म्हणून स्वयंभरण फील्ड प्रकार अंदाजासह वेब फॉर्म वैयक्तिकृत करा. </translation>
<translation id="5397578532367286026">या वापरकर्त्याच्या वापर आणि इतिहासाचे chrome.com वरील व्यवस्थापकाद्वारे (<ph name="MANAGER_EMAIL" />) पुनरावलोकन केले जाऊ शकते.</translation>
<translation id="5397794290049113714">आपण</translation>
+<translation id="5398824043967640339">अन्य साइट वरील <ph name="COUNT" /></translation>
<translation id="5399158067281117682">पिन जुळत नाहीत!</translation>
<translation id="5400640815024374115">विश्वसनीय प्लॅटफॉर्म मॉड्यूल (TPM) चिप अक्षम किंवा अनुपस्थित आहे.</translation>
<translation id="5402367795255837559">ब्रेल</translation>
@@ -3958,6 +3974,7 @@
<translation id="6575251558004911012">एखाद्या साइटला आपल्या कॅमेर्‍यावर प्रवेश करायचे असते तेव्हा विचारा (शिफारस केलेले)</translation>
<translation id="6581162200855843583">Google ड्राइव्ह दुवा</translation>
<translation id="6583070985841601920"><ph name="USER_EMAIL_ADDRESS" /> च्या रूपात साइन इन केले. आपल्या प्रशासकाद्वारे संकालन अक्षम केले आहे.</translation>
+<translation id="65832705307647870">लोकप्रिय साइटसह नवीन टॅब पृष्ठ पूर्वीपासून भरलेले राहू द्या.</translation>
<translation id="6584878029876017575">Microsoft Lifetime Signing</translation>
<translation id="6585234750898046415">साइन-इन स्क्रीनवर आपल्या खात्यासाठी प्रदर्शित करण्याकरिता एक चित्र निवडा.</translation>
<translation id="6585283250473596934">सार्वजनिक सत्रात प्रवेश करत आहे.</translation>
@@ -4302,6 +4319,7 @@
<translation id="7092106376816104">पॉप-अप अपवाद</translation>
<translation id="7093866338626856921">या नावाच्या डिव्हाइसेससह डेटा अदलाबदल करा: <ph name="HOSTNAMES" /></translation>
<translation id="7096082900368329802">अधिक अद्भुत वैशिष्ट्ये शोधू इच्छिता?</translation>
+<translation id="7098389117866926363">USB-C डिव्‍हाइस (मागील बाजूचे डावे पोर्ट)</translation>
<translation id="7100897339030255923"><ph name="COUNT" /> आयटम निवडले</translation>
<translation id="7106346894903675391">अधिक संचयन विकत घ्या...</translation>
<translation id="7108338896283013870">लपवा</translation>
@@ -5074,6 +5092,7 @@
<translation id="8190193592390505034"><ph name="PROVIDER_NAME" /> सह कनेक्ट करत आहे</translation>
<translation id="8191230140820435481">आपले अनुप्रयोग, विस्तार आणि थीम व्यवस्थापित करा</translation>
<translation id="8191453843330043793">V8 प्रॉक्सी निराकरणकर्ता</translation>
+<translation id="8199491812735365610">लॉग इन करण्यासाठी एक खाते निवडा</translation>
<translation id="8200772114523450471">रेझ्युमे</translation>
<translation id="8202160505685531999">कृपया आपले <ph name="DEVICE_TYPE" /> प्रोफाईल अद्यतनित करण्‍यासाठी आपला संकेतशब्द पु्न्हा-प्रविष्‍ट करा.</translation>
<translation id="8204086856545141093">सर्व्हरवरील विनंत्या एका धोरणाद्वारे अवरोधित करण्यात आल्या आहेत.</translation>
@@ -5204,6 +5223,7 @@
<translation id="8381977081675353473">स्लोव्हाकियन</translation>
<translation id="8382645631174981738"><ph name="EXTENSION_NAME" /> दूरस्थपणे स्थापित केले</translation>
<translation id="8382913212082956454">&amp;ईमेल पत्ता कॉपी करा</translation>
+<translation id="8384113940676655504">Chromebook जवळ फोन असताना ते अनलॉक करण्‍यासाठी Chromebook ला 'Bluetooth कमी उर्जा' वरून फोन शोधण्‍याची अनुमती देणारे Smart Lock सेटिंग सक्षम करते.</translation>
<translation id="8390029840652165810">कृपया आपले नेटवर्क कनेक्शन कार्यरत असल्याचे सुनिश्चित करा आणि समस्या कायम राहिल्यास, कृपया साइन आउट करा आणि आपली क्रेडेन्शियल रीफ्रेश करण्यासाठी पुन्हा साइन इन करा.</translation>
<translation id="8390445751804042000">काही नेटवर्क पॅकेटच्या पावतीवर आधारित डिव्हाइस सक्रिय करणे सक्षम करते.</translation>
<translation id="8390449457866780408">सर्व्हर अनुपलब्ध.</translation>
@@ -5290,6 +5310,7 @@
<translation id="8509646642152301857">शब्दलेखन तपासक शब्दकोश डाउनलोड करणे अयशस्वी.</translation>
<translation id="8512476990829870887">प्रक्रिया समाप्त करा</translation>
<translation id="851263357009351303"> <ph name="HOST" /> ना प्रतिमा दर्शविण्यासाठी नेहमी परवानगी द्या </translation>
+<translation id="8513191386157529469">"<ph name="CLIENT_NAME" />" हा ब्राउझर डीबग करीत आहे.</translation>
<translation id="8513974249124254369">ChromeVox (बोललेला अभिप्राय) सक्षम केलेला आहे. अक्षम करण्यासाठी Ctrl+Alt+Z दाबा.</translation>
<translation id="8515737884867295000">प्रमाणपत्र-आधारित प्रमाणीकरण अयशस्वी</translation>
<translation id="8518865679229538285">तमिळ इनपुट पद्धत (Typewriter) </translation>
@@ -5409,6 +5430,7 @@
<translation id="8677039480012021122">डेटा साफ करा आणि डिस्कनेक्ट करा</translation>
<translation id="8677212948402625567">सर्व संकुचित करा...</translation>
<translation id="8678648549315280022">डाउनलोड सेटिंग्ज व्यवस्थापित करा...</translation>
+<translation id="8680251145628383637">आपल्या सर्व डिव्हाइसेसवर आपले बुकमार्क, इतिहास, संकेतशब्द आणि इतर सेटिंग्ज मिळविण्‍यासाठी साइन इन करा. आपण स्वयंचलितपणे आपल्‍या Google सेवांवर देखील साइन इन कराल.</translation>
<translation id="8680536109547170164"><ph name="QUERY" />, उत्तर, <ph name="ANSWER" /></translation>
<translation id="8680787084697685621">खाते साइन-इन तपशील कालबाह्य झाला.</translation>
<translation id="8684255857039823328"><ph name="MANAGEMENT_LINK" /> वर कोणत्याही डिव्हाइसेसवरून आपल्या संकेतशब्दांवर प्रवेश करा.</translation>
@@ -5464,6 +5486,7 @@
<translation id="874420130893181774">पारंपारिक पिनयिन इनपुट पद्धत</translation>
<translation id="8744525654891896746">या पर्यवेक्षी वापरकर्त्यासाठी अवतार निवडा</translation>
<translation id="8744641000906923997">रोमाजी</translation>
+<translation id="8744959718895556609">आपल्या <ph name="LINK_TEXT" /> वरून एक खाते निवडा</translation>
<translation id="8749863574775030885">अज्ञात विक्रेत्याकडील USB डिव्हाइसेसवर प्रवेश करा</translation>
<translation id="8754200782896249056">&lt;p&gt;समर्थित डेस्कटॉप परिस्थिती अंतर्गत <ph name="PRODUCT_NAME" /> चालविताना, सिस्टीम प्रॉक्सी सेटिंग्ज वापरल्या जातील. तथापि, एकतर आपली सिस्टीम समर्थित नसते किंवा आपले सिस्टीम कॉन्फिगरेशन लाँच करताना समस्या आली.&lt;/p&gt;
@@ -5585,6 +5608,7 @@
<translation id="8933960630081805351">फाइंडर मध्ये &amp;दर्शवा</translation>
<translation id="8934732568177537184">सुरु ठेवा</translation>
<translation id="8938356204940892126">मी सोडून देतो</translation>
+<translation id="8938800817013097409">USB-C डिव्‍हाइस (मागील बाजूचे उजवे पोर्ट)</translation>
<translation id="8940081510938872932">आपले संगणक यावेळी असंख्य गोष्‍टी करीत आहे. नंतर पुन्हा प्रयत्न करा.</translation>
<translation id="8941173171815156065">'<ph name="PERMISSION" />' परवानगी मागे घ्या</translation>
<translation id="8941248009481596111">या साइटवर आपले कनेक्शन खाजगी आहे.</translation>
diff --git a/chromium/chrome/app/resources/generated_resources_ms.xtb b/chromium/chrome/app/resources/generated_resources_ms.xtb
index c33ec67ab63..2b9ba3e3334 100644
--- a/chromium/chrome/app/resources/generated_resources_ms.xtb
+++ b/chromium/chrome/app/resources/generated_resources_ms.xtb
@@ -136,6 +136,8 @@
<translation id="1178581264944972037">Jeda</translation>
<translation id="1179803038870941185"><ph name="URL" /> mahu mendapatkan kawalan penuh ke atas peranti MIDI anda.</translation>
<translation id="1181037720776840403">Buang</translation>
+<translation id="11814323404622888">"&gt;
+ Peranti USB-C (port belakang sebelah kanan)</translation>
<translation id="1183083053288481515">Menggunakan perakuan yang disediakan pentadbir</translation>
<translation id="1183237619868651138">Tidak boleh memasang <ph name="EXTERNAL_CRX_FILE" /> dalam cache tempatan.</translation>
<translation id="1185924365081634987">Anda boleh cuba <ph name="GUEST_SIGNIN_LINK_START" />semak imbas sebagai tetamu<ph name="GUEST_SIGNIN_LINK_END" /> untuk membetulkan ralat rangkaian ini juga.</translation>
@@ -329,6 +331,7 @@
<translation id="1468038450257740950">WebGL tidak disokong.</translation>
<translation id="1470719357688513792">Tetapan kuki baharu akan berkesan selepas memuatkan semula halaman.</translation>
<translation id="14720830734893704">Dayakan sokongan papan kekunci maya.</translation>
+<translation id="1474079335130556426">Dayakan mod latar untuk API Tolak. Ini membolehkan Chrome terus berjalan selepas tetingkap terakhir ditutup, dan untuk dilancarkan pada permulaan OS, jika API Tolak memerlukannya.</translation>
<translation id="1474339897586437869">"<ph name="FILENAME" />" tidak dimuat naik. Ruang kosong tidak mencukupi dalam Google Drive anda.</translation>
<translation id="1476503841242751994">{COUNT,plural, =1{1 kata laluan}other{# kata laluan}}</translation>
<translation id="1476949146811612304">Tetapkan enjin carian mana digunakan ketika mencari dari <ph name="BEGIN_LINK" />kotak omni<ph name="END_LINK" /> .</translation>
@@ -656,6 +659,7 @@
<translation id="1918141783557917887">&amp;Lebih kecil</translation>
<translation id="192144045824434199">Dayakan tetingkap Panel yang dibuka di luar bingkai penyemak imbas. Sebaliknya, percubaan untuk membuka Panel akan membuka pop timbul jika tidak didayakan. Panel sentiasa diaktifkan pada saluran pembangun dan kenari.</translation>
<translation id="1921584744613111023"><ph name="DPI" /> dpi</translation>
+<translation id="1921986354447415460">Papan kekunci Turki-F</translation>
<translation id="1923786009776354244">Dayakan sokongan untuk pengepala asal WebRTC Stun.</translation>
<translation id="1926741348654461781">Dayakan halaman luar talian</translation>
<translation id="1929546189971853037">Baca sejarah penyemakan anda pada semua peranti yang anda log masuk.</translation>
@@ -862,6 +866,7 @@
<translation id="2231990265377706070">Tanda seru</translation>
<translation id="2232876851878324699">Fail ini mengandungi satu sijil, yang tidak diimport:</translation>
<translation id="2233502537820838181">&amp;Maklumat lanjut</translation>
+<translation id="2233587473672843170">Menunjukkan tapak popular di halaman Tab Baharu</translation>
<translation id="223714078860837942">Jika halaman belum menetapkan dasar perujuk yang jelas, menetapkan bendera ini akan mengurangkan jumlah maklumat dalam pengepala 'perujuk' untuk permintaan silang asal.</translation>
<translation id="2238379619048995541">Data Keadaan Kekerapan</translation>
<translation id="2239921694246509981">Tambahkan orang di bawah seliaan</translation>
@@ -940,6 +945,7 @@ Selepas anda membuat pengguna di bawah seliaan yang baharu, anda boleh mengurus
<translation id="2326606747676847821">Gunakan Inkognito</translation>
<translation id="2326931316514688470">&amp;Muat semula apl</translation>
<translation id="2327492829706409234">Dayakan apl</translation>
+<translation id="2329597144923131178">Log masuk untuk mendapatkan penanda halaman, sejarah, kata laluan dan tetapan lain pada semua peranti anda.</translation>
<translation id="2332131598580221120">Lihat di gedung</translation>
<translation id="2332742915001411729">Tetapkan semula kepada lalai</translation>
<translation id="2335122562899522968">Halaman ini menetapkan kuki.</translation>
@@ -1329,6 +1335,7 @@ Saya tidak fikir tapak web ini perlu disekat!</translation>
<translation id="2838379631617906747">Memasang</translation>
<translation id="2841837950101800123">Penyedia</translation>
<translation id="2843806747483486897">Tukar lalai...</translation>
+<translation id="2844169650293029770">Peranti USB-C (port depan sebelah kiri)</translation>
<translation id="2845382757467349449">Sentiasa Paparkan Bar Penanda Halaman</translation>
<translation id="2846816712032308263">Membolehkan penutupan pantas tab/tetingkap - menjalankan pengendali js onunload tab secara berasingan daripada GUI.</translation>
<translation id="284970761985428403"><ph name="ASCII_NAME" /> (<ph name="UNICODE_NAME" />)</translation>
@@ -1393,6 +1400,7 @@ Saya tidak fikir tapak web ini perlu disekat!</translation>
<translation id="2923469375796950815">Lumpuhkan nyahpadat ZIP baharu.</translation>
<translation id="2924296707677495905">Pengalihan huruf (namaskaram → ನಮಸ್ಕಾರ)</translation>
<translation id="2925966894897775835">Helaian</translation>
+<translation id="2927017729816812676">Storan Cache</translation>
<translation id="2927657246008729253">Tukar...</translation>
<translation id="2928526264833629376">Terus ke Hangout</translation>
<translation id="2930644991850369934">Terdapat masalah semasa muat turun imej pemulihan. Sambungan rangkaian hilang.</translation>
@@ -1734,6 +1742,7 @@ Saya tidak fikir tapak web ini perlu disekat!</translation>
<translation id="3396331542604645348">Pencetak yang dipilih tidak tersedia atau tidak dipasang dengan betul. Periksa pencetak anda atau cuba pilih pencetak lain.</translation>
<translation id="3399597614303179694">papan kekunci Macedonia</translation>
<translation id="340013220407300675">Penyerang mungkin akan cuba mencuri maklumat anda daripada <ph name="BEGIN_BOLD" /><ph name="SITE" /><ph name="END_BOLD" /> (sebagai contoh, kata laluan, mesej atau kad kredit).</translation>
+<translation id="3401130144947259741">Jika didayakan, peristiwa surih akan dieksport ke Penyurih Peristiwa untuk Windows (ETW) dan kemudian dapat ditangkap oleh alatan seperti UIForETW atau Xperf.</translation>
<translation id="340282674066624"><ph name="DOWNLOAD_RECEIVED" />, <ph name="TIME_LEFT" /></translation>
<translation id="3406605057700382950">&amp;Tunjukkan bar penanda halaman</translation>
<translation id="3412265149091626468">Lompat ke Pemilihan</translation>
@@ -1893,6 +1902,7 @@ Saya tidak fikir tapak web ini perlu disekat!</translation>
<translation id="3603385196401704894">Bahasa Perancis Kanada</translation>
<translation id="3603622770190368340">Dapatkan sijil rangkaian</translation>
<translation id="3605780360466892872">Buttondown</translation>
+<translation id="3606220979431771195">Turki-F</translation>
<translation id="3608454375274108141">F10</translation>
<translation id="3608576286259426129">Pratonton imej pengguna</translation>
<translation id="3609138628363401169">Pelayan tidak menyokong sambungan rundingan semula TLS.</translation>
@@ -2413,6 +2423,7 @@ Semua pengguna mesti melog keluar untuk meneruskan.</translation>
<translation id="4321136812570927563">{NUM_DOWNLOAD,plural, =1{Teruskan muat turun}other{Teruskan muat turun}}</translation>
<translation id="4321179778687042513">ctrl</translation>
<translation id="4322394346347055525">Tutup Tab Lain</translation>
+<translation id="4325378361067528777">Dayakan mod latar API Tolak</translation>
<translation id="4326952458285403282">Lumpuhkan penggunakan sistem pemaparan fon DirectWrite eksperimen.</translation>
<translation id="4326999707196471878">Dialog Penyemak Imbas Paparan Kit Alat.</translation>
<translation id="4330406155931244378">Dayakan Penyemak Ejaan Berbilang Bahasa</translation>
@@ -2954,6 +2965,8 @@ Tekan sebarang kekunci untuk terus meneroka.</translation>
<translation id="5148652308299789060">Lumpuhkan rasterizer perisian 3D</translation>
<translation id="5150254825601720210">Nama Pelayan SSL Sijil Netscape</translation>
<translation id="5151034238407558331">Malangnya, Google Payments hanya boleh digunakan untuk pedagang ini oleh pembeli yang mempunyai alamat AS. Jika anda penduduk AS, sila |tukar alamat kediaman anda dengan Google Payments| atau bayar tanpa menggunakan Google Payments.</translation>
+<translation id="5151639798712723370">"&gt;
+ Peranti USB-C (port depan sebelah kanan)</translation>
<translation id="5152451685298621771">(Akaun untuk kanak-kanak)</translation>
<translation id="5154108062446123722">Tetapan lanjutan untuk <ph name="PRINTING_DESTINATION" /></translation>
<translation id="5154176924561037127">F8</translation>
@@ -3052,6 +3065,7 @@ Tekan sebarang kekunci untuk terus meneroka.</translation>
<translation id="5271247532544265821">Togol mod Bahasa Cina Mudah/Tradisional</translation>
<translation id="5271549068863921519">Simpan kata laluan</translation>
<translation id="5273628206174272911">Navigasi sejarah percubaan sebagai tindak balas kepada tatal lampau melintang.</translation>
+<translation id="5275795814002959418"><ph name="COUNT" /> daripada tapak ini</translation>
<translation id="5275973617553375938">Fail yang diperoleh semula dari Google Drive</translation>
<translation id="527605719918376753">Redam tab</translation>
<translation id="527605982717517565">Sentiasa benarkan JavaScript di <ph name="HOST" /></translation>
@@ -3098,6 +3112,7 @@ Tekan sebarang kekunci untuk terus meneroka.</translation>
<translation id="5328285148748012771">Akses semua apl anda dari pelancar mudah guna ini. Main permainan, bersembang video, mendengar muzik, edit dokumen atau dapatkan lebih banyak apl dari Kedai Web Chrome.</translation>
<translation id="5329858601952122676">&amp;Padam</translation>
<translation id="5330145655348521461">Fail ini dibuka pada desktop yang berbeza. Alihkan ke <ph name="USER_NAME" /> (<ph name="MAIL_ADDRESS" />) untuk melihat fail.</translation>
+<translation id="5331975486040154427">Peranti USB-C (port belakang sebelah kiri)</translation>
<translation id="5332624210073556029">Zon waktu:</translation>
<translation id="5334142896108694079">Cache Skrip</translation>
<translation id="533433379391851622">Versi yang dijangkakan "<ph name="EXPECTED_VERSION" />", tetapi versi sebenar ialah "<ph name="NEW_ID" />".</translation>
@@ -3144,6 +3159,7 @@ Tekan sebarang kekunci untuk terus meneroka.</translation>
<translation id="539755880180803351">Mencatatkan borang web dengan ramalan jenis medan Auto Isi sebagai teks pemegang tempat.</translation>
<translation id="5397578532367286026">Penggunaan dan sejarah pengguna ini boleh disemak oleh pengurus (<ph name="MANAGER_EMAIL" />) di chrome.com.</translation>
<translation id="5397794290049113714">Anda</translation>
+<translation id="5398824043967640339"><ph name="COUNT" /> daripada tapak lain</translation>
<translation id="5399158067281117682">PIN tidak sepadan!</translation>
<translation id="5400640815024374115">Cip Modul Platform Dipercayai (TPM) dilumpuhkan atau tiada.</translation>
<translation id="5402367795255837559">Braille</translation>
@@ -3963,6 +3979,7 @@ Tekan sebarang kekunci untuk terus meneroka.</translation>
<translation id="6575251558004911012">Tanya apabila tapak memerlukan akses kepada kamera anda (disyorkan)</translation>
<translation id="6581162200855843583">Pautan Google Drive</translation>
<translation id="6583070985841601920">Log masuk sebagai <ph name="USER_EMAIL_ADDRESS" />. Penyegerakan dilumpuhkan oleh pentadbir anda.</translation>
+<translation id="65832705307647870">Praisi halaman Tab Baharu dengan tapak popular.</translation>
<translation id="6584878029876017575">Menandatangani Microsoft Sepanjang Hayat</translation>
<translation id="6585234750898046415">Pilih gambar untuk dipaparkan untuk akaun anda pada skrin log masuk.</translation>
<translation id="6585283250473596934">Memasuki sesi awam.</translation>
@@ -4311,6 +4328,7 @@ Tekan sebarang kekunci untuk terus meneroka.</translation>
<translation id="7092106376816104">Pengecualian pop timbul</translation>
<translation id="7093866338626856921">Bertukar data dengan peranti yang bernama: <ph name="HOSTNAMES" /></translation>
<translation id="7096082900368329802">Ingin menemui lebih banyak ciri hebat?</translation>
+<translation id="7098389117866926363">Peranti USB-C (port kiri di belakang)</translation>
<translation id="7100897339030255923"><ph name="COUNT" /> item dipilih</translation>
<translation id="7106346894903675391">Beli lagi storan...</translation>
<translation id="7108338896283013870">Sembunyikan</translation>
@@ -5087,6 +5105,7 @@ Simpan fail kunci anda di tempat selamat. Anda akan memerlukannya untuk mencipta
<translation id="8190193592390505034">Disambungkan ke <ph name="PROVIDER_NAME" /></translation>
<translation id="8191230140820435481">Uruskan apl, sambungan dan tema anda</translation>
<translation id="8191453843330043793">Pelerai Proksi V8</translation>
+<translation id="8199491812735365610">Pilih akaun untuk log masuk</translation>
<translation id="8200772114523450471">Sambung semula</translation>
<translation id="8202160505685531999">Sila masukkan semula kata laluan untuk mengemaskinikan profil <ph name="DEVICE_TYPE" /> anda.</translation>
<translation id="8204086856545141093">Permintaan kepada pelayan telah disekat oleh dasar.</translation>
@@ -5219,6 +5238,7 @@ perubahan ini berlaku, anda mungkin tidak mahukannya.</translation>
<translation id="8381977081675353473">Bahasa Slovakia</translation>
<translation id="8382645631174981738"><ph name="EXTENSION_NAME" /> telah dipasang secara jauh</translation>
<translation id="8382913212082956454">Salin &amp;alamat e-mel</translation>
+<translation id="8384113940676655504">Mendayakan tetapan Smart Lock yang membenarkan Chromebook menemui telefon melalui Bluetooth Tenaga Rendah untuk membuka kunci Chromebook apabila telefon itu berada berdekatan.</translation>
<translation id="8390029840652165810">Sila pastikan sambungan rangkaian anda berfungsi dan jika masalah ini berterusan, sila log keluar dan log masuk sekali lagi untuk memuatkan semula kelayakan anda.</translation>
<translation id="8390445751804042000">Mendayakan peranti diaktifkan berdasarkan penerimaan beberapa paket rangkaian.</translation>
<translation id="8390449457866780408">Pelayan tidak tersedia.</translation>
@@ -5305,6 +5325,7 @@ perubahan ini berlaku, anda mungkin tidak mahukannya.</translation>
<translation id="8509646642152301857">Muat turun kamus semakan ejaan gagal.</translation>
<translation id="8512476990829870887">Tamatkan Proses</translation>
<translation id="851263357009351303">Sentiasa benarkan <ph name="HOST" /> untuk memaparkan imej</translation>
+<translation id="8513191386157529469">"<ph name="CLIENT_NAME" />" sedang menyahpepijat penyemak imbas ini.</translation>
<translation id="8513974249124254369">ChromeVox (maklum balas dituturkan) didayakan. Tekan Ctrl+Alt+Z untuk melumpuhkan.</translation>
<translation id="8515737884867295000">Gagal pengesahan berdasarkan sijil</translation>
<translation id="8518865679229538285">Kaedah input Tamil (Mesin taip)</translation>
@@ -5424,6 +5445,7 @@ perubahan ini berlaku, anda mungkin tidak mahukannya.</translation>
<translation id="8677039480012021122">Kosongkan data dan putuskan sambungan</translation>
<translation id="8677212948402625567">Runtuhkan semua...</translation>
<translation id="8678648549315280022">Urus tetapan muat turun...</translation>
+<translation id="8680251145628383637">Log masuk untuk mendapatkan penanda halaman, sejarah, kata laluan dan tetapan anda yang lain pada semua peranti anda. Anda turut akan dilog masuk secara automatik ke perkhidmatan Google anda.</translation>
<translation id="8680536109547170164"><ph name="QUERY" />, jawapan, <ph name="ANSWER" /></translation>
<translation id="8680787084697685621">Butiran log masuk akaun sudah lapuk.</translation>
<translation id="8684255857039823328">Kata laluan disimpan. Akses kata laluan anda daripada sebarang peranti di <ph name="MANAGEMENT_LINK" />.</translation>
@@ -5479,6 +5501,7 @@ perubahan ini berlaku, anda mungkin tidak mahukannya.</translation>
<translation id="874420130893181774">Kaedah input Pinyin Tradisional</translation>
<translation id="8744525654891896746">Pilih avatar untuk pengguna diselia ini</translation>
<translation id="8744641000906923997">Romaji</translation>
+<translation id="8744959718895556609">Pilih akaun daripada <ph name="LINK_TEXT" /> anda</translation>
<translation id="8749863574775030885">Akses peranti USB daripada vendor yang tidak diketahui</translation>
<translation id="8754200782896249056">&lt;p&gt;Apabila menjalankan <ph name="PRODUCT_NAME" /> di bawah persekitaran desktop yang disokong, tetapan proksi sistem akan digunakan. Bagaimanapun, sama ada sistem anda tidak disokong atau terdapat masalah melancarkan konfigurasi sistem anda.&lt;/p&gt;
@@ -5599,6 +5622,7 @@ perubahan ini berlaku, anda mungkin tidak mahukannya.</translation>
<translation id="8933960630081805351">&amp;Paparkan dalam Pencari</translation>
<translation id="8934732568177537184">Teruskan</translation>
<translation id="8938356204940892126">Saya mengalah</translation>
+<translation id="8938800817013097409">Peranti USB-C (port kanan di belakang)</translation>
<translation id="8940081510938872932">Komputer anda melakukan terlalu banyak perkara sekarang. Cuba semula sebentar lagi.</translation>
<translation id="8941173171815156065">Tarik balik kebenaran '<ph name="PERMISSION" />'</translation>
<translation id="8941248009481596111">Sambungan anda ke tapak ini berciri peribadi.</translation>
diff --git a/chromium/chrome/app/resources/generated_resources_nl.xtb b/chromium/chrome/app/resources/generated_resources_nl.xtb
index a95ee8a1978..51145e0f3e4 100644
--- a/chromium/chrome/app/resources/generated_resources_nl.xtb
+++ b/chromium/chrome/app/resources/generated_resources_nl.xtb
@@ -135,6 +135,8 @@
<translation id="1178581264944972037">Onderbreken</translation>
<translation id="1179803038870941185"><ph name="URL" /> wil volledig beheer van je MIDI-apparaten hebben.</translation>
<translation id="1181037720776840403">Verwijderen</translation>
+<translation id="11814323404622888">"&gt;
+ USB-C-apparaat (poort rechts aan de achterkant)</translation>
<translation id="1183083053288481515">Een door de beheerder verstrekt certificaat gebruiken</translation>
<translation id="1183237619868651138">Kan <ph name="EXTERNAL_CRX_FILE" /> niet in lokale cache installeren.</translation>
<translation id="1185924365081634987">Je kunt ook proberen te <ph name="GUEST_SIGNIN_LINK_START" />browsen als gast<ph name="GUEST_SIGNIN_LINK_END" /> om deze netwerkfout op te lossen.</translation>
@@ -175,7 +177,7 @@
<translation id="1227507814927581609">Verificatie mislukt tijdens verbinden met '<ph name="DEVICE_NAME" />'.</translation>
<translation id="1231728991993914119">Melding bij sluiten inschakelen voor gehoste apps.</translation>
<translation id="1232569758102978740">Naamloos</translation>
-<translation id="1233721473400465416">Taal</translation>
+<translation id="1233721473400465416">Landinstelling</translation>
<translation id="1234808891666923653">Service Workers</translation>
<translation id="123578888592755962">Schijf is vol</translation>
<translation id="1240892293903523606">DOM Inspector</translation>
@@ -329,6 +331,7 @@
<translation id="1468038450257740950">WebGL wordt niet ondersteund.</translation>
<translation id="1470719357688513792">De nieuwe cookie-instellingen worden van kracht nadat de pagina opnieuw is geladen.</translation>
<translation id="14720830734893704">Hiermee schakel je ondersteuning voor een virtueel toetsenbord in.</translation>
+<translation id="1474079335130556426">Schakel de achtergrondmodus in voor de Push-API. Hierdoor kan Chrome actief blijven nadat het laatste venster is gesloten en worden gestart wanneer het besturingssysteem wordt opgestart in het geval dat de Push API dit nodig heeft.</translation>
<translation id="1474339897586437869">'<ph name="FILENAME" />' is niet geüpload. Er is onvoldoende ruimte beschikbaar in je Google Drive.</translation>
<translation id="1476503841242751994">{COUNT,plural, =1{1 wachtwoord}other{# wachtwoorden}}</translation>
<translation id="1476949146811612304">Instellen welke zoekmachine wordt gebruikt bij het zoeken via de <ph name="BEGIN_LINK" />omnibox<ph name="END_LINK" />.</translation>
@@ -653,6 +656,7 @@
<translation id="1918141783557917887">&amp;Kleiner</translation>
<translation id="192144045824434199">Vensters inschakelen die buiten het browserframe worden geopend. Als dit niet is ingeschakeld, dan wordt bij het openen van een venster een pop-up geopend. Vensters zijn altijd ingeschakeld op de ontwikkelaars- en canary-kanalen.</translation>
<translation id="1921584744613111023"><ph name="DPI" /> dpi</translation>
+<translation id="1921986354447415460">Turks-F-toetsenbord</translation>
<translation id="1923786009776354244">Ondersteuning inschakelen voor origin-header van WebRTC Stun.</translation>
<translation id="1926741348654461781">Offline pagina's inschakelen</translation>
<translation id="1929546189971853037">Je browsegeschiedenis lezen voor alle ingelogde apparaten</translation>
@@ -852,6 +856,7 @@
<translation id="2231990265377706070">Uitroepteken</translation>
<translation id="2232876851878324699">Het bestand bevat één certificaat. Dit certificaat is niet geïmporteerd:</translation>
<translation id="2233502537820838181">&amp;Meer informatie</translation>
+<translation id="2233587473672843170">Populaire sites weergeven op de nieuwe tabbladpagina</translation>
<translation id="223714078860837942">Als een pagina geen expliciet beleid voor verwijzende URL's heeft ingesteld, wordt met het instellen van deze markering de hoeveelheid informatie beperkt in de 'referer'-header voor cross-origin-verzoeken.</translation>
<translation id="2238379619048995541">Gegevens van frequentiestatus</translation>
<translation id="2239921694246509981">Persoon met beperkte rechten toevoegen</translation>
@@ -927,6 +932,7 @@ Nadat je een nieuwe gebruiker met beperkte rechten hebt gemaakt, kun je zijn ins
<translation id="2326606747676847821">Incognito gaan</translation>
<translation id="2326931316514688470">App opnieuw &amp;laden</translation>
<translation id="2327492829706409234">App inschakelen</translation>
+<translation id="2329597144923131178">Log in om je bladwijzers, geschiedenis, wachtwoorden en andere instellingen op al je apparaten te gebruiken.</translation>
<translation id="2332131598580221120">Bekijken in de Web Store</translation>
<translation id="2332742915001411729">Terugzetten naar standaardinstelling</translation>
<translation id="2335122562899522968">Deze pagina stelt cookies in.</translation>
@@ -1314,6 +1320,7 @@ Ik denk niet dat deze site moet worden geblokkeerd.</translation>
<translation id="2838379631617906747">Installeren</translation>
<translation id="2841837950101800123">Provider</translation>
<translation id="2843806747483486897">Standaardactie wijzigen...</translation>
+<translation id="2844169650293029770">USB-C-apparaat (poort links aan de voorkant)</translation>
<translation id="2845382757467349449">Bladwijzerbalk altijd weergeven</translation>
<translation id="2846816712032308263">Snel sluiten van tabbladen/vensters inschakelen. Hiervoor wordt de onunload js handler van een tabblad onafhankelijk van de GUI uitgevoerd.</translation>
<translation id="284970761985428403"><ph name="ASCII_NAME" /> (<ph name="UNICODE_NAME" />)</translation>
@@ -1381,6 +1388,7 @@ Ik denk niet dat deze site moet worden geblokkeerd.</translation>
<translation id="2923469375796950815">De nieuwe ZIP-uitpakker uitschakelen.</translation>
<translation id="2924296707677495905">Transliteratie (namaskaram → ನಮಸ್ಕಾರ)</translation>
<translation id="2925966894897775835">Bladen</translation>
+<translation id="2927017729816812676">Cache-opslag</translation>
<translation id="2927657246008729253">Wijzigen...</translation>
<translation id="2928526264833629376">Doorgaan naar Hangouts</translation>
<translation id="2930644991850369934">Er is een probleem opgetreden tijdens het downloaden van de herstelkopie. De netwerkverbinding is verbroken.</translation>
@@ -1723,6 +1731,7 @@ Ik denk niet dat deze site moet worden geblokkeerd.</translation>
<translation id="3396331542604645348">De geselecteerde printer is niet beschikbaar of niet correct geïnstalleerd. Controleer de printer of probeer een andere printer te selecteren.</translation>
<translation id="3399597614303179694">Macedonisch toetsenbord</translation>
<translation id="340013220407300675">Aanvallers proberen mogelijk je gegevens van <ph name="BEGIN_BOLD" /><ph name="SITE" /><ph name="END_BOLD" /> te stelen (bijvoorbeeld wachtwoorden, berichten of creditcarddetails).</translation>
+<translation id="3401130144947259741">Als traceringsgebeurtenissen zijn ingeschakeld, worden ze geëxporteerd naar ETW (Event Tracing for Windows) en kunnen ze worden geregistreerd door tools als UIForETW of Xperf.</translation>
<translation id="340282674066624"><ph name="DOWNLOAD_RECEIVED" />, <ph name="TIME_LEFT" /></translation>
<translation id="3406605057700382950">&amp;Bladwijzerbalk weergeven</translation>
<translation id="3412265149091626468">Ga naar selectie</translation>
@@ -1882,6 +1891,7 @@ Ik denk niet dat deze site moet worden geblokkeerd.</translation>
<translation id="3603385196401704894">Canadees Frans</translation>
<translation id="3603622770190368340">Netwerkcertificaat verkrijgen</translation>
<translation id="3605780360466892872">Zakenman</translation>
+<translation id="3606220979431771195">Turks-F</translation>
<translation id="3608454375274108141">F10</translation>
<translation id="3608576286259426129">Voorbeeld van gebruikersafbeelding</translation>
<translation id="3609138628363401169">De server ondersteunt de extensie voor TLS-onderhandeling niet.</translation>
@@ -2401,6 +2411,7 @@ Alle gebruikers moet uitloggen om door te gaan.</translation>
<translation id="4321136812570927563">{NUM_DOWNLOAD,plural, =1{Download hervatten}other{Downloads hervatten}}</translation>
<translation id="4321179778687042513">ctrl</translation>
<translation id="4322394346347055525">Andere tabbladen sluiten</translation>
+<translation id="4325378361067528777">Achtergrondmodus voor Push-API inschakelen</translation>
<translation id="4326952458285403282">Hiermee wordt het gebruik van het experimentele DirectWrite-weergavesysteem voor lettertypen uitgeschakeld.</translation>
<translation id="4326999707196471878">Browserdialoogvensters van Toolkit-Views.</translation>
<translation id="4330406155931244378">Meertalige spellingcontrole inschakelen</translation>
@@ -2939,6 +2950,8 @@ Druk op een toets om door te gaan met verkennen.</translation>
<translation id="5148652308299789060">3D-software-raster uitschakelen</translation>
<translation id="5150254825601720210">SSL-servernaam van Netscape-certificaat</translation>
<translation id="5151034238407558331">Google Payments kan bij deze koper alleen worden gebruikt door kopers met een Amerikaans adres. Als je in Amerika woont, |wijzig je je thuisadres voor Google Payments|. Je kunt ook betalen zonder Google Payments te gebruiken.</translation>
+<translation id="5151639798712723370">"&gt;
+ USB-C-apparaat (poort rechts aan de voorkant)</translation>
<translation id="5152451685298621771">(Account voor kinderen)</translation>
<translation id="5154108062446123722">Geavanceerde instellingen voor <ph name="PRINTING_DESTINATION" /></translation>
<translation id="5154176924561037127">F8</translation>
@@ -3036,6 +3049,7 @@ Druk op een toets om door te gaan met verkennen.</translation>
<translation id="5271247532544265821">Schakelen tussen Vereenvoudigd en Traditioneel Chinees</translation>
<translation id="5271549068863921519">Wachtwoord opslaan</translation>
<translation id="5273628206174272911">Experimentele geschiedenisnavigatie in reactie op horizontaal overscrollen.</translation>
+<translation id="5275795814002959418"><ph name="COUNT" /> van deze site</translation>
<translation id="5275973617553375938">Bestanden hersteld vanaf Google Drive</translation>
<translation id="527605719918376753">Tabblad dempen</translation>
<translation id="527605982717517565">JavaScript altijd toestaan op <ph name="HOST" /></translation>
@@ -3082,6 +3096,7 @@ Druk op een toets om door te gaan met verkennen.</translation>
<translation id="5328285148748012771">Open al je apps vanuit deze handige launcher. Speel games, start videochats, luister naar muziek, bewerk documenten of download meer apps uit de Chrome Web Store.</translation>
<translation id="5329858601952122676">Verwij&amp;deren</translation>
<translation id="5330145655348521461">Deze bestanden zijn op een ander bureaublad geopend. Verplaats ze naar <ph name="USER_NAME" /> (<ph name="MAIL_ADDRESS" />) om ze weer te geven.</translation>
+<translation id="5331975486040154427">USB-C-apparaat (poort links aan de achterkant)</translation>
<translation id="5332624210073556029">Tijdzone:</translation>
<translation id="5334142896108694079">Script in cache</translation>
<translation id="533433379391851622">Verwachte versie '<ph name="EXPECTED_VERSION" />', maar versie is '<ph name="NEW_ID" />'.</translation>
@@ -3128,6 +3143,7 @@ Druk op een toets om door te gaan met verkennen.</translation>
<translation id="539755880180803351">Annoteert webformulieren met tijdelijke tekst als deze velden bevatten die automatisch kunnen worden ingevuld.</translation>
<translation id="5397578532367286026">Het gebruik en de geschiedenis van deze gebruiker kunnen worden bekeken door de beheerder (<ph name="MANAGER_EMAIL" />) op chrome.com.</translation>
<translation id="5397794290049113714">Jij</translation>
+<translation id="5398824043967640339"><ph name="COUNT" /> van andere sites</translation>
<translation id="5399158067281117682">Pincodes komen niet overeen!</translation>
<translation id="5400640815024374115">TPM-chip (Trusted Platform Module) is uitgeschakeld of ontbreekt.</translation>
<translation id="5402367795255837559">Braille</translation>
@@ -3954,6 +3970,7 @@ Sommige functies zijn wellicht niet beschikbaar. Controleer of het profiel besta
<translation id="6575251558004911012">Goedkeuring vragen wanneer een site toegang tot je camera vereist (aanbevolen)</translation>
<translation id="6581162200855843583">Google Drive-link</translation>
<translation id="6583070985841601920">Ingelogd als <ph name="USER_EMAIL_ADDRESS" />. Synchronisatie is uitgeschakeld door je beheerder.</translation>
+<translation id="65832705307647870">Nieuwe tabbladpagina vooraf vullen met populaire sites.</translation>
<translation id="6584878029876017575">Microsoft-ondertekening van levensduur</translation>
<translation id="6585234750898046415">Selecteer een foto als weergave van je account op het inlogscherm.</translation>
<translation id="6585283250473596934">Openbare sessie wordt geopend.</translation>
@@ -4301,6 +4318,7 @@ Sommige functies zijn wellicht niet beschikbaar. Controleer of het profiel besta
<translation id="7092106376816104">Uitzonderingen voor pop-ups</translation>
<translation id="7093866338626856921">Gegevens uitwisselen met de apparaten met de naam: <ph name="HOSTNAMES" /></translation>
<translation id="7096082900368329802">Wil je nog meer fantastische functies ontdekken?</translation>
+<translation id="7098389117866926363">USB-C-apparaat (poort links aan de achterkant)</translation>
<translation id="7100897339030255923"><ph name="COUNT" /> items geselecteerd</translation>
<translation id="7106346894903675391">Meer opslagruimte kopen...</translation>
<translation id="7108338896283013870">Verbergen</translation>
@@ -5077,6 +5095,7 @@ Resterende tijd berekenen</translation>
<translation id="8190193592390505034">Verbinding maken met <ph name="PROVIDER_NAME" /></translation>
<translation id="8191230140820435481">Je apps, extensies en thema's beheren</translation>
<translation id="8191453843330043793">V8 Proxy Resolver</translation>
+<translation id="8199491812735365610">Kies een account om in te loggen</translation>
<translation id="8200772114523450471">Hervatten</translation>
<translation id="8202160505685531999">Geef je wachtwoord opnieuw op om je <ph name="DEVICE_TYPE" />-profiel te updaten.</translation>
<translation id="8204086856545141093">Verzoeken aan de server zijn geblokkeerd door een beleid.</translation>
@@ -5208,6 +5227,7 @@ Tijd berekenen tot vol</translation>
<translation id="8381977081675353473">Slowaaks</translation>
<translation id="8382645631174981738"><ph name="EXTENSION_NAME" /> is op afstand geïnstalleerd</translation>
<translation id="8382913212082956454">&amp;E-mailadres kopiëren</translation>
+<translation id="8384113940676655504">Schakelt een Smart Lock-instelling in waarmee de Chromebook telefoons kan vinden via Bluetooth Low Energy om de Chromebook te ontgrendelen wanneer de telefoon in de buurt is.</translation>
<translation id="8390029840652165810">Controleer of je netwerkverbinding werkt. Als het probleem blijft optreden, log je uit en log je weer in om je referenties te vernieuwen.</translation>
<translation id="8390445751804042000">Schakelt apparaat wekken in wanneer netwerkpakketten worden ontvangen.</translation>
<translation id="8390449457866780408">Server niet beschikbaar.</translation>
@@ -5294,6 +5314,7 @@ Tijd berekenen tot vol</translation>
<translation id="8509646642152301857">Downloaden van woordenboek voor spellingcontrole is mislukt.</translation>
<translation id="8512476990829870887">Proces beëindigen</translation>
<translation id="851263357009351303"><ph name="HOST" /> altijd toestaan afbeeldingen weer te geven</translation>
+<translation id="8513191386157529469">'<ph name="CLIENT_NAME" />' voert foutopsporing uit in deze browser.</translation>
<translation id="8513974249124254369">ChromeVox (gesproken feedback) is ingeschakeld. Druk op Ctrl+Alt+Z om uit te schakelen.</translation>
<translation id="8515737884867295000">Verificatie via certificaat is mislukt</translation>
<translation id="8518865679229538285">Invoermethode voor Tamil (schrijfmachine)</translation>
@@ -5413,6 +5434,7 @@ Tijd berekenen tot vol</translation>
<translation id="8677039480012021122">Gegevens wissen en verbinding verbreken</translation>
<translation id="8677212948402625567">Alles samenvouwen...</translation>
<translation id="8678648549315280022">Downloadinstellingen beheren...</translation>
+<translation id="8680251145628383637">Log in om je bladwijzers, geschiedenis, wachtwoorden en andere instellingen op te halen op al je apparaten. Je wordt ook automatisch ingelogd bij je Google-services.</translation>
<translation id="8680536109547170164"><ph name="QUERY" />, antwoord, <ph name="ANSWER" /></translation>
<translation id="8680787084697685621">De inloggegevens voor het account zijn verouderd.</translation>
<translation id="8684255857039823328">Wachtwoord opgeslagen. Je hebt toegang tot je wachtwoorden op elk apparaat via <ph name="MANAGEMENT_LINK" />.</translation>
@@ -5468,6 +5490,7 @@ Tijd berekenen tot vol</translation>
<translation id="874420130893181774">Traditionele Pinyin-invoermethode</translation>
<translation id="8744525654891896746">Een avatar selecteren voor deze gebruiker met beperkte rechten</translation>
<translation id="8744641000906923997">Romaji</translation>
+<translation id="8744959718895556609">Een account kiezen uit je <ph name="LINK_TEXT" /></translation>
<translation id="8749863574775030885">Toegang verkrijgen tot USB-apparaten van een onbekende leverancier</translation>
<translation id="8754200782896249056">&lt;p&gt;Wanneer je <ph name="PRODUCT_NAME" /> uitvoert in een ondersteunde desktopomgeving, worden de proxyinstellingen van het systeem gebruikt. Je systeem wordt echter niet ondersteund of er is een probleem opgetreden met het lanceren van je systeemconfiguratie.&lt;/p&gt;
@@ -5589,6 +5612,7 @@ Tijd berekenen tot vol</translation>
<translation id="8933960630081805351">&amp;Toon in Finder</translation>
<translation id="8934732568177537184">Doorgaan</translation>
<translation id="8938356204940892126">Ik geef het op</translation>
+<translation id="8938800817013097409">USB-C-apparaat (poort rechts aan de achterkant)</translation>
<translation id="8940081510938872932">Je computer voert op dit moment te veel acties tegelijk uit. Probeer het later opnieuw.</translation>
<translation id="8941173171815156065">Het recht '<ph name="PERMISSION" />' intrekken</translation>
<translation id="8941248009481596111">Je verbinding met deze site is privé.</translation>
diff --git a/chromium/chrome/app/resources/generated_resources_no.xtb b/chromium/chrome/app/resources/generated_resources_no.xtb
index d2e31fcbc21..f56e423ce18 100644
--- a/chromium/chrome/app/resources/generated_resources_no.xtb
+++ b/chromium/chrome/app/resources/generated_resources_no.xtb
@@ -135,6 +135,8 @@
<translation id="1178581264944972037">Stans midlertidig</translation>
<translation id="1179803038870941185"><ph name="URL" /> ønsker full kontroll over MIDI-enhetene dine.</translation>
<translation id="1181037720776840403">Fjern</translation>
+<translation id="11814323404622888">"&gt;
+ USB-C-enhet (porten bak på høyre side)</translation>
<translation id="1183083053288481515">Bruk av et administratorlevert sertifikat</translation>
<translation id="1183237619868651138"><ph name="EXTERNAL_CRX_FILE" /> kan ikke installeres i lokalbufferen.</translation>
<translation id="1185924365081634987">Du kan også prøve å <ph name="GUEST_SIGNIN_LINK_START" />surfe som gjest<ph name="GUEST_SIGNIN_LINK_END" /> for å løse denne nettverksfeilen.</translation>
@@ -296,7 +298,7 @@
<translation id="1425734930786274278">Følgende informasjonskapsler er blokkert (informasjonskapsler fra tredjeparter blokkeres uten unntak):</translation>
<translation id="1426410128494586442">Ja</translation>
<translation id="1427049173708736891">Hold <ph name="DEVICE_TYPE" />-enheten ulåst når Android-telefonen er låst opp og i nærheten – du trenger ikke å skrive inn passordet ditt.</translation>
-<translation id="142758023928848008">Aktiver trege taster (for å bruke hurtigtaster ved å trykke sekvensen)</translation>
+<translation id="142758023928848008">Slå på trege taster (for å bruke hurtigtaster ved å trykke sekvensen)</translation>
<translation id="1429740407920618615">Signalstyrke:</translation>
<translation id="143027896309062157">lese og endre alle dataene på datamaskinen din og nettstedene du besøker</translation>
<translation id="1430915738399379752">Skriv ut</translation>
@@ -329,6 +331,7 @@
<translation id="1468038450257740950">WebGL støttes ikke.</translation>
<translation id="1470719357688513792">Nye innstillinger for informasjonskapsler trer i kraft etter siden er lastet inn på nytt.</translation>
<translation id="14720830734893704">Aktiver støtte for virtuelt tastatur.</translation>
+<translation id="1474079335130556426">Slå på bakgrunnsmodus for Push API. Dette gjør at Chrome kan fortsette å kjøre etter at det siste vinduet er lukket, og starte når OS-et starter, dersom Push API trenger det.</translation>
<translation id="1474339897586437869">«<ph name="FILENAME" />» ble ikke lastet opp. Det er ikke nok ledig plass på Google Disk.</translation>
<translation id="1476503841242751994">{COUNT,plural, =1{1 passord}other{# passord}}</translation>
<translation id="1476949146811612304">Angi hvilken søkemotor som brukes når du søker i <ph name="BEGIN_LINK" />søkefeltet<ph name="END_LINK" />.</translation>
@@ -653,6 +656,7 @@
<translation id="1918141783557917887">&amp;Mindre</translation>
<translation id="192144045824434199">Aktiver panelvinduer som åpnes utenfor nettleserrammen. Hvis dette alternativet ikke er aktivert, fører forsøk på å åpne et panel til at et forgrunnsvindu åpnes i stedet. Paneler er alltid aktiverte på dev- og canary-kanalene.</translation>
<translation id="1921584744613111023"><ph name="DPI" /> ppt</translation>
+<translation id="1921986354447415460">Tyrkisk F-tastatur</translation>
<translation id="1923786009776354244">Slå på støtte for Origin-topptekst for WebRTC Stun.</translation>
<translation id="1926741348654461781">Slå på frakoblede sider</translation>
<translation id="1929546189971853037">lese nettleserloggen din på alle enheter du er logget på</translation>
@@ -851,6 +855,7 @@
<translation id="2231990265377706070">Utropstegn</translation>
<translation id="2232876851878324699">Filen inneholdt ett sertifikat som ikke ble importert:</translation>
<translation id="2233502537820838181">Mer informasjon</translation>
+<translation id="2233587473672843170">Vis populære nettsteder på Ny fane-siden.</translation>
<translation id="223714078860837942">Hvis en side ikke har angitt bestemte retningslinjer for henvisningsadresse, kan dette flagget angis for å redusere informasjonsmengden i «referer»-toppteksten for forespørsler som henter ressurser fra flere steder.</translation>
<translation id="2238379619048995541">Data om frekvenstilstand</translation>
<translation id="2239921694246509981">Legg til en administrert person</translation>
@@ -917,7 +922,7 @@ Når du har opprettet en ny administrert bruker, kan du når som helst – og fr
<translation id="230927227160767054">Denne nettsiden ber om å få installere en behandlingssnarvei for en tjeneste.</translation>
<translation id="2309760508720442723">Det finnes problemer med nettstedets sertifikatkjede (<ph name="CERT_ERROR_DESCRIPTION" />).</translation>
<translation id="2312980885338881851">Ojsann! Det ser ut til at du ikke har noen eksisterende overvåkende brukere å importere. Opprett én eller flere fra en annen enhet, og så kan du importere dem hit etterpå.</translation>
-<translation id="2316129865977710310">Nei takk</translation>
+<translation id="2316129865977710310">Nei, takk</translation>
<translation id="2317031807364506312">AVBRYT</translation>
<translation id="2318143611928805047">Papirstørrelse</translation>
<translation id="2320435940785160168">Tjeneren krever et autentiseringssertifikat og godkjente ikke sertifikatet som ble sendt av nettleseren.
@@ -929,6 +934,7 @@ annet sertifikat, kan du prøve å bruke dette. Ellers kan du forsøke å
<translation id="2326606747676847821">Start inkognitomodus</translation>
<translation id="2326931316514688470">&amp;Last inn appen på nytt</translation>
<translation id="2327492829706409234">Aktiver appen</translation>
+<translation id="2329597144923131178">Logg på for å få bokmerkene, loggen, passordene og de andre innstillingene dine på alle enhetene du bruker.</translation>
<translation id="2332131598580221120">Se i Nettmarked</translation>
<translation id="2332742915001411729">Tilbakestill til standard</translation>
<translation id="2335122562899522968">Denne siden plasserer informasjonskapsler på datamaskinen.</translation>
@@ -1315,6 +1321,7 @@ Jeg tror ikke det er nødvendig å blokkere dette nettstedet.</translation>
<translation id="2838379631617906747">Installerer</translation>
<translation id="2841837950101800123">Leverandør</translation>
<translation id="2843806747483486897">Endre standardhandling</translation>
+<translation id="2844169650293029770">USB-C-enhet (porten foran på venstre side)</translation>
<translation id="2845382757467349449">Vis alltid bokmerkerad</translation>
<translation id="2846816712032308263">Muliggjør rask lukking av faner og vinduer – kjøres på fanens onunload js-behandler, uavhengig av GUI,</translation>
<translation id="284970761985428403"><ph name="ASCII_NAME" /> (<ph name="UNICODE_NAME" />)</translation>
@@ -1379,6 +1386,7 @@ Jeg tror ikke det er nødvendig å blokkere dette nettstedet.</translation>
<translation id="2923469375796950815">Deaktiver den nye ZIP-utpakkeren.</translation>
<translation id="2924296707677495905">Translitterasjon (namaskaram → ನಮಸ್ಕಾರ)</translation>
<translation id="2925966894897775835">Regneark</translation>
+<translation id="2927017729816812676">Bufferlagring</translation>
<translation id="2927657246008729253">Endre</translation>
<translation id="2928526264833629376">Fortsett til Hangouts</translation>
<translation id="2930644991850369934">Det oppstod et problem under nedlasting av gjenopprettingsbilde. Nettverkstilkoblingen ble brutt.</translation>
@@ -1719,6 +1727,7 @@ Jeg tror ikke det er nødvendig å blokkere dette nettstedet.</translation>
<translation id="3396331542604645348">Den valgte skriveren er ikke tilgjengelig, eller har ikke blitt installert på riktig måte. Kontrollér skriveren din, eller prøv å velge en annen skriver.</translation>
<translation id="3399597614303179694">Makedonsk tastatur</translation>
<translation id="340013220407300675">Angripere prøver kanskje å stjele informasjonen din fra <ph name="BEGIN_BOLD" /><ph name="SITE" /><ph name="END_BOLD" /> (for eksempel passord, e-post eller kredittkort).</translation>
+<translation id="3401130144947259741">Hvis dette er slått på, blir sporingshendelsene eksportert til Hendelsessporing for Windows (ETW), og de kan registreres av enten UIForETW eller Xperf.</translation>
<translation id="340282674066624"><ph name="DOWNLOAD_RECEIVED" />, <ph name="TIME_LEFT" /></translation>
<translation id="3406605057700382950">&amp;Vis bokmerkerad</translation>
<translation id="3412265149091626468">Gå til utvalg</translation>
@@ -1877,6 +1886,7 @@ Jeg tror ikke det er nødvendig å blokkere dette nettstedet.</translation>
<translation id="3603385196401704894">Canadisk fransk</translation>
<translation id="3603622770190368340">Hent nettverkssertifikat</translation>
<translation id="3605780360466892872">Businessmann</translation>
+<translation id="3606220979431771195">Tyrkisk F</translation>
<translation id="3608454375274108141">F10</translation>
<translation id="3608576286259426129">Forhåndsvisning av brukerbilde</translation>
<translation id="3609138628363401169">Tjeneren håndterer ikke TLS-utvidelsen for reforhandling.</translation>
@@ -2124,7 +2134,7 @@ Jeg tror ikke det er nødvendig å blokkere dette nettstedet.</translation>
<translation id="3915280005470252504">Søk med tale</translation>
<translation id="3916445069167113093">Denne filtypen kan skade datamaskinen. Ønsker du å beholde <ph name="FILE_NAME" /> likevel?</translation>
<translation id="3920504717067627103">Administratorinnstillinger for sertifikater</translation>
-<translation id="392089482157167418">Aktiver ChromeVox (muntlig tilbakemelding)</translation>
+<translation id="392089482157167418">Slå på ChromeVox (taletilbakemelding)</translation>
<translation id="3924145049010392604">Meta</translation>
<translation id="3925083541997316308">Apper og utvidelser kan ikke endres av administrerte brukere.</translation>
<translation id="3925247638945319984">Du har ingen nylig lagrede WebRTC-logger.</translation>
@@ -2395,6 +2405,7 @@ Alle brukere må logge av for å fortsette.</translation>
<translation id="4321136812570927563">{NUM_DOWNLOAD,plural, =1{Fortsett nedlastingen}other{Fortsett nedlastingene}}</translation>
<translation id="4321179778687042513">ctrl</translation>
<translation id="4322394346347055525">Lukk andre faner</translation>
+<translation id="4325378361067528777">Slå på bakgrunnsmodus for Push API</translation>
<translation id="4326952458285403282">Deaktiverer bruken av det eksperimentelle DirectWrite-systemet for skrifttypegjengivelse.</translation>
<translation id="4326999707196471878">Toolkit-Views-baserte nettleser-dialogbokser.</translation>
<translation id="4330406155931244378">Slå på flerspråklig stavekontroll</translation>
@@ -2932,6 +2943,8 @@ Trykk på en tast for å fortsette økten.</translation>
<translation id="5148652308299789060">Deaktiver 3D-programvare for rasterisering</translation>
<translation id="5150254825601720210">Navn på Netscape SSL-tjenersertifikat</translation>
<translation id="5151034238407558331">Dessverre kan bare kjøpere med adresse i USA bruke Google Payments ved kjøp fra denne selgeren. Hvis du bor i USA, må du endre hjemmeadressen din i Google Payments, eller du kan betale uten å bruke Google Payments.</translation>
+<translation id="5151639798712723370">"&gt;
+ USB-C-enhet (porten foran på høyre side)</translation>
<translation id="5152451685298621771">(Konto for barn)</translation>
<translation id="5154108062446123722">Avanserte innstillinger for <ph name="PRINTING_DESTINATION" /></translation>
<translation id="5154176924561037127">F8</translation>
@@ -3028,6 +3041,7 @@ Trykk på en tast for å fortsette økten.</translation>
<translation id="5271247532544265821">Bytt mellom forenklet og tradisjonell kinesisk</translation>
<translation id="5271549068863921519">Lagre passord</translation>
<translation id="5273628206174272911">Eksperimentell loggnavigering som følge av horisontal overrulling.</translation>
+<translation id="5275795814002959418"><ph name="COUNT" /> fra dette nettstedet</translation>
<translation id="5275973617553375938">Gjenopprettede filer fra Google Disk</translation>
<translation id="527605719918376753">Slå av lyden for fanen</translation>
<translation id="527605982717517565">Tillat alltid JavaScript på <ph name="HOST" /></translation>
@@ -3074,6 +3088,7 @@ Trykk på en tast for å fortsette økten.</translation>
<translation id="5328285148748012771">Du finner alle appene dine i dette startprogrammet. Spill spill, ha videosamtaler, hør på musikk, rediger dokumenter – eller finn flere apper i Chrome Nettmarked.</translation>
<translation id="5329858601952122676">&amp;Slett</translation>
<translation id="5330145655348521461">Disse filene ble åpnet på et annet skrivebord. Flytt til <ph name="USER_NAME" /> (<ph name="MAIL_ADDRESS" />) for å se dem.</translation>
+<translation id="5331975486040154427">USB-C-enhet (porten bak på venstre side)</translation>
<translation id="5332624210073556029">Tidssone:</translation>
<translation id="5334142896108694079">Skriptbuffer</translation>
<translation id="533433379391851622">Den forventede versjonen var «<ph name="EXPECTED_VERSION" />», men den faktiske versjonen var «<ph name="NEW_ID" />».</translation>
@@ -3120,6 +3135,7 @@ Trykk på en tast for å fortsette økten.</translation>
<translation id="539755880180803351">Kommenterer nettskjemaer med autofyll-forslag som plassholdertekst.</translation>
<translation id="5397578532367286026">Bruken og loggen for denne brukeren kan gjennomgås av administratoren (<ph name="MANAGER_EMAIL" />) på chrome.com</translation>
<translation id="5397794290049113714">Deg</translation>
+<translation id="5398824043967640339"><ph name="COUNT" /> fra andre nettsteder</translation>
<translation id="5399158067281117682">De personlige kodene stemmer ikke overens.</translation>
<translation id="5400640815024374115">Pålitelig plattformmodul (TPM)-brikke er deaktivert eller mangler.</translation>
<translation id="5402367795255837559">Punktskrift</translation>
@@ -3941,6 +3957,7 @@ Trykk på en tast for å fortsette økten.</translation>
<translation id="6575251558004911012">Spør når et nettsted krever tilgang til kameraet (anbefales)</translation>
<translation id="6581162200855843583">Google Disk-link</translation>
<translation id="6583070985841601920">Pålogget som <ph name="USER_EMAIL_ADDRESS" />. Synkronisering er deaktivert av administratoren din.</translation>
+<translation id="65832705307647870">Forhåndsfyll Ny fane-siden med populære nettsteder.</translation>
<translation id="6584878029876017575">Microsoft-livstidssignering</translation>
<translation id="6585234750898046415">Velg et bilde som vises på påloggingsskjermen for kontoen.</translation>
<translation id="6585283250473596934">Starter offentlig økt …</translation>
@@ -4041,7 +4058,7 @@ Trykk på en tast for å fortsette økten.</translation>
<translation id="6740369132746915122">Hvis du forstår sikkerhetsrisikoen, kan du <ph name="BEGIN_LINK" />gå til dette usikre nettstedet<ph name="END_LINK" />.</translation>
<translation id="6745592621698551453">Oppdater nå</translation>
<translation id="6745994589677103306">Avbryt</translation>
-<translation id="674632704103926902">Aktivér trykk og dra</translation>
+<translation id="674632704103926902">Slå på trykk og dra</translation>
<translation id="6746392203843147041">økt lydstyrke</translation>
<translation id="6748140994595080445">Endre hvordan <ph name="APP_NAME" /> behandler og viser språk.</translation>
<translation id="6748465660675848252">Du kan fortsette, men bare synkroniserte data og innstillinger blir gjenopprettet. Alle lokale data går tapt.</translation>
@@ -4285,6 +4302,7 @@ Trykk på en tast for å fortsette økten.</translation>
<translation id="7092106376816104">Unntak for forgrunnsvinduer</translation>
<translation id="7093866338626856921">Utveksle data med enhetene <ph name="HOSTNAMES" /></translation>
<translation id="7096082900368329802">Har du lyst til å oppdage flere fantastiske funksjoner?</translation>
+<translation id="7098389117866926363">USB-C-enhet (venstre port på baksiden)</translation>
<translation id="7100897339030255923"><ph name="COUNT" /> elementer er valgt</translation>
<translation id="7106346894903675391">Kjøp mer lagringsplass</translation>
<translation id="7108338896283013870">Skjul</translation>
@@ -4361,7 +4379,7 @@ Trykk på en tast for å fortsette økten.</translation>
<translation id="7222245588540287464">Hvorvidt Kontekstbasert søk er aktivert eller ikke.</translation>
<translation id="7222373446505536781">F11</translation>
<translation id="7222624196722476520">Bulgarsk tastatur (fonetisk)</translation>
-<translation id="722363467515709460">Aktiver skjermforstørrer</translation>
+<translation id="722363467515709460">Slå på lupe</translation>
<translation id="7223775956298141902">Huff a meg, du har ingen utvidelser :-(</translation>
<translation id="7224023051066864079">Delnettsmaske:</translation>
<translation id="7225179976675429563">Nettverkstype mangler</translation>
@@ -4465,7 +4483,7 @@ Trykk på en tast for å fortsette økten.</translation>
<translation id="7375125077091615385">Type:</translation>
<translation id="7377169924702866686">Caps Lock er på.</translation>
<translation id="7377249249140280793"><ph name="RELATIVE_DATE" /> – <ph name="FULL_DATE" /></translation>
-<translation id="7378627244592794276">Nei takk</translation>
+<translation id="7378627244592794276">Nei, takk</translation>
<translation id="7378810950367401542">/</translation>
<translation id="7382160026931194400">Lagrede |innholdsinnstillinger| og #søkemotorer# fjernes ikke, og disse kan inneholde informasjon om surfevanene dine.</translation>
<translation id="7385854874724088939">Det oppstod en feil under forsøket på å skrive ut. Kontroller skriveren og prøv igjen.</translation>
@@ -4535,7 +4553,7 @@ Forresten: Inkognitomodus (<ph name="SHORTCUT_KEY" />) kan være kjekt neste gan
<translation id="7469894403370665791">Koble til dette nettverket automatisk</translation>
<translation id="747114903913869239">Feil: Kan ikke avkode etternavnet</translation>
<translation id="7472639616520044048">MIME-typer:</translation>
-<translation id="7473891865547856676">Nei takk</translation>
+<translation id="7473891865547856676">Nei, takk</translation>
<translation id="747459581954555080">Gjenopprett alt</translation>
<translation id="7474889694310679759">Engelsk tastatur (Canada)</translation>
<translation id="7475671414023905704">Nettadresse for mistet passord – Netscape</translation>
@@ -4761,7 +4779,7 @@ Forresten: Inkognitomodus (<ph name="SHORTCUT_KEY" />) kan være kjekt neste gan
<translation id="7800304661137206267">Tilkoblingen er kryptert ved hjelp av <ph name="CIPHER" />, med <ph name="MAC" /> for autentisering av meldinger og <ph name="KX" /> som nøkkelutvekslingsmekanisme.</translation>
<translation id="7800518121066352902">Rotér m&amp;ot klokken</translation>
<translation id="7801746894267596941">Bare folk som har passordfrasen din kan lese de krypterte dataene dine – passordfrasen hverken sendes til eller lagres av Google. Hvis du glemmer den, må du</translation>
-<translation id="780301667611848630">Nei takk</translation>
+<translation id="780301667611848630">Nei, takk</translation>
<translation id="7805768142964895445">Status</translation>
<translation id="7806513705704909664">Aktivér autofyll for å fylle ut nettskjemaer med ett enkelt klikk.</translation>
<translation id="7807711621188256451">Tillat alltid at <ph name="HOST" /> bruker kameraet ditt</translation>
@@ -5052,6 +5070,7 @@ Oppbevar nøkkelfilen på et trygt sted. Du får bruk for den når du skal oppre
<translation id="8190193592390505034">Kobler til <ph name="PROVIDER_NAME" /></translation>
<translation id="8191230140820435481">Administrering av programmer, utvidelser og temaer</translation>
<translation id="8191453843330043793">V8 Proxy Resolver</translation>
+<translation id="8199491812735365610">Velg en konto for å logge på</translation>
<translation id="8200772114523450471">Fortsett</translation>
<translation id="8202160505685531999">Legg inn passordet på nytt for å oppdatere <ph name="DEVICE_TYPE" />-profilen din.</translation>
<translation id="8204086856545141093">Forespørsler til tjeneren har blitt blokkert av en innstilling.</translation>
@@ -5182,6 +5201,7 @@ Oppbevar nøkkelfilen på et trygt sted. Du får bruk for den når du skal oppre
<translation id="8381977081675353473">Slovakisk</translation>
<translation id="8382645631174981738"><ph name="EXTENSION_NAME" /> ble installert eksternt</translation>
<translation id="8382913212082956454">Kopier &amp;e-postadresse</translation>
+<translation id="8384113940676655504">Slår på en Smart Lock-innstilling som gjør at Chromebook kan oppdage telefoner via Bluetooth Low Energy for å låse opp Chromebooken når telefonen er i nærheten.</translation>
<translation id="8390029840652165810">Påse at nettverkstilkoblingen fungerer. Og hvis problemet vedvarer, må du logge deg av for så å logge deg på igjen, slik at du får lastet inn legitimasjonene dine på nytt.</translation>
<translation id="8390445751804042000">Aktiverer avslutning av hvilemodus basert på mottak av enkelte nettverkspakker.</translation>
<translation id="8390449457866780408">Tjeneren er ikke tilgjengelig.</translation>
@@ -5268,6 +5288,7 @@ Oppbevar nøkkelfilen på et trygt sted. Du får bruk for den når du skal oppre
<translation id="8509646642152301857">Nedlastingen av ordboken for stavekontroll mislyktes.</translation>
<translation id="8512476990829870887">Avslutt prosessen</translation>
<translation id="851263357009351303">Tillat alltid <ph name="HOST" /> å vise bilder</translation>
+<translation id="8513191386157529469">«<ph name="CLIENT_NAME" />» feilsøker denne nettleseren.</translation>
<translation id="8513974249124254369">ChromeVox (muntlig tilbakemelding) er aktivert. Trykk på Ctrl+Alt+Z for å deaktivere.</translation>
<translation id="8515737884867295000">Den sertifikatbaserte autentiseringen mislyktes</translation>
<translation id="8518865679229538285">Inndatametode for tamil (skrivemaskin)</translation>
@@ -5385,6 +5406,7 @@ Oppbevar nøkkelfilen på et trygt sted. Du får bruk for den når du skal oppre
<translation id="8677039480012021122">Slett data og koble fra</translation>
<translation id="8677212948402625567">Skjul alle</translation>
<translation id="8678648549315280022">Administrer nedlastingsinnstillinger</translation>
+<translation id="8680251145628383637">Logg på for å hente bokmerkene dine, loggen din, passordene dine og andre innstillinger på alle enhetene du bruker. Du blir dessuten automatisk logget på Google-tjenestene du bruker.</translation>
<translation id="8680536109547170164"><ph name="QUERY" />, svar, <ph name="ANSWER" /></translation>
<translation id="8680787084697685621">Kontoens påloggingsdetaljer er utdaterte.</translation>
<translation id="8684255857039823328">Passordet er lagret. Via <ph name="MANAGEMENT_LINK" /> kan du finne passordene dine fra alle enheter.</translation>
@@ -5440,6 +5462,7 @@ Oppbevar nøkkelfilen på et trygt sted. Du får bruk for den når du skal oppre
<translation id="874420130893181774">Inndatametode for tradisjonell pinyin</translation>
<translation id="8744525654891896746">Velg et brukerbilde for denne administrerte brukeren</translation>
<translation id="8744641000906923997">Romaji</translation>
+<translation id="8744959718895556609">Velg en konto fra <ph name="LINK_TEXT" /></translation>
<translation id="8749863574775030885">Les USB-enheter fra en ukjent leverandør</translation>
<translation id="8754200782896249056">&lt;p&gt;Når <ph name="PRODUCT_NAME" /> kjører i et støttet skrivebordsmiljø, brukes systemets mellomtjenerinnstillinger. Men enten støttes ikke systemet, eller så oppsto det et problem under oppstart av systemkonfigurasjonen.&lt;/p&gt;
@@ -5560,6 +5583,7 @@ Oppbevar nøkkelfilen på et trygt sted. Du får bruk for den når du skal oppre
<translation id="8933960630081805351">&amp;Vis i Finder</translation>
<translation id="8934732568177537184">Fortsett</translation>
<translation id="8938356204940892126">Jeg gir opp</translation>
+<translation id="8938800817013097409">USB-C-enhet (høyre port på baksiden)</translation>
<translation id="8940081510938872932">Datamaskinen din har for mange baller i luften nå. Prøv på nytt senere.</translation>
<translation id="8941173171815156065">Opphev tillatelsen «<ph name="PERMISSION" />»</translation>
<translation id="8941248009481596111">Tilkoblingen til dette nettstedet er privat.</translation>
@@ -5810,7 +5834,7 @@ Oppbevar nøkkelfilen på et trygt sted. Du får bruk for den når du skal oppre
<translation id="991969738502325513">Hva bør du gjøre?</translation>
<translation id="992032470292211616">Utvidelser, apper og temaer kan skade enheten din. Er du sikker på at du vil fortsette?</translation>
<translation id="992543612453727859">Legg til fraser i begynnelsen</translation>
-<translation id="992592832486024913">Deaktiver ChromeVox (muntlig tilbakemelding)</translation>
+<translation id="992592832486024913">Slå av ChromeVox (taletilbakemelding)</translation>
<translation id="994289308992179865">&amp;Gjenta</translation>
<translation id="996250603853062861">Etablerer sikker tilkobling ...</translation>
<translation id="996987097147224996">Trykk på Ctrl + mellomromstasten for å velge forrige inndatametode.</translation>
diff --git a/chromium/chrome/app/resources/generated_resources_pl.xtb b/chromium/chrome/app/resources/generated_resources_pl.xtb
index e46d5ad2d62..f47fe4b2f15 100644
--- a/chromium/chrome/app/resources/generated_resources_pl.xtb
+++ b/chromium/chrome/app/resources/generated_resources_pl.xtb
@@ -136,6 +136,8 @@
<translation id="1178581264944972037">Wstrzymaj</translation>
<translation id="1179803038870941185"><ph name="URL" /> chce mieć pełny dostęp do sterowania urządzeniami MIDI.</translation>
<translation id="1181037720776840403">Usuń</translation>
+<translation id="11814323404622888">"&gt;
+ Urządzenie USB-C (tylny port na prawym boku)</translation>
<translation id="1183083053288481515">Używanie certyfikatu dostarczonego przez administratora</translation>
<translation id="1183237619868651138">Nie można zainstalować pliku <ph name="EXTERNAL_CRX_FILE" /> w lokalnej pamięci podręcznej.</translation>
<translation id="1185924365081634987">Aby spróbować usunąć ten błąd sieci, możesz też użyć trybu <ph name="GUEST_SIGNIN_LINK_START" />przeglądania jako gość<ph name="GUEST_SIGNIN_LINK_END" />.</translation>
@@ -329,6 +331,7 @@
<translation id="1468038450257740950">Interfejs WebGL nie jest obsługiwany.</translation>
<translation id="1470719357688513792">Nowe ustawienia plików cookie zostaną zastosowane po ponownym załadowaniu strony.</translation>
<translation id="14720830734893704">Włącz obsługę klawiatury wirtualnej.</translation>
+<translation id="1474079335130556426">Włącza tryb działania interfejsu API Push w tle. To pozwala Chrome dalej działać po zamknięciu ostatniego okna oraz uruchamiać się przy starcie systemu operacyjnego, jeśli interfejs API Push tego wymaga.</translation>
<translation id="1474339897586437869">Plik „<ph name="FILENAME" />” nie został przesłany. Za mało wolnego miejsca na Dysku Google.</translation>
<translation id="1476503841242751994">{COUNT,plural, =1{1 hasło}few{# hasła}many{# haseł}other{# hasła}}</translation>
<translation id="1476949146811612304">Wybierz wyszukiwarkę używaną w <ph name="BEGIN_LINK" />omniboksie<ph name="END_LINK" />.</translation>
@@ -653,6 +656,7 @@
<translation id="1918141783557917887">&amp;Mniejszy</translation>
<translation id="192144045824434199">Włącz otwieranie okien paneli poza ramką przeglądarki. W przeciwnym razie przy próbie otwarcia panelu pojawia się wyskakujące okienko. Panele są zawsze włączone w wersji deweloperskiej i „canary”.</translation>
<translation id="1921584744613111023"><ph name="DPI" /> dpi</translation>
+<translation id="1921986354447415460">Klawiatura turecka (wersja F)</translation>
<translation id="1923786009776354244">Włącz obsługę nagłówka źródła STUN w WebRTC.</translation>
<translation id="1926741348654461781">Włącz strony offline</translation>
<translation id="1929546189971853037">Odczytywanie historii przeglądania na wszystkich zalogowanych urządzeniach</translation>
@@ -851,6 +855,7 @@
<translation id="2231990265377706070">Wykrzyknik</translation>
<translation id="2232876851878324699">Plik zawierał jeden certyfikat, który nie został zaimportowany:</translation>
<translation id="2233502537820838181">&amp;Więcej informacji</translation>
+<translation id="2233587473672843170">Pokazuj popularne witryny na stronie Nowa karta</translation>
<translation id="223714078860837942">Jeśli strona nie ma określonych zasad dotyczących strony odsyłającej, ustawienie tej flagi spowoduje zmniejszenie ilości informacji zawartych w nagłówku „odnośnika” w przypadku żądań z innych witryn.</translation>
<translation id="2238379619048995541">Dane o stanie częstotliwości</translation>
<translation id="2239921694246509981">Dodaj nadzorowaną osobę</translation>
@@ -929,6 +934,7 @@ Po utworzeniu nadzorowanego użytkownika możesz w dowolnym czasie i z dowolnego
<translation id="2326606747676847821">Włącz tryb incognito</translation>
<translation id="2326931316514688470">P&amp;rzeładuj aplikację</translation>
<translation id="2327492829706409234">Włącz aplikację</translation>
+<translation id="2329597144923131178">Zaloguj się, by korzystać z zakładek, historii, haseł i innych ustawień na wszystkich swoich urządzeniach.</translation>
<translation id="2332131598580221120">Wyświetl w sklepie</translation>
<translation id="2332742915001411729">Przywróć domyślne</translation>
<translation id="2335122562899522968">Ta strona ustawia pliki cookie.</translation>
@@ -1317,6 +1323,7 @@ Ta strona nie powinna być zablokowana.</translation>
<translation id="2838379631617906747">Instaluję</translation>
<translation id="2841837950101800123">Dostawca</translation>
<translation id="2843806747483486897">Zmień ustawienie domyślne...</translation>
+<translation id="2844169650293029770">Urządzenie USB-C (przedni port na lewym boku)</translation>
<translation id="2845382757467349449">Zawsze pokazuj pasek zakładek</translation>
<translation id="2846816712032308263">Włącza szybkie zamykanie kart/okien – uruchamia moduł js zwolnienia karty niezależnie od GUI.</translation>
<translation id="284970761985428403"><ph name="ASCII_NAME" /> (<ph name="UNICODE_NAME" />)</translation>
@@ -1381,6 +1388,7 @@ Ta strona nie powinna być zablokowana.</translation>
<translation id="2923469375796950815">Wyłącz nowy program do rozpakowywania plików ZIP.</translation>
<translation id="2924296707677495905">Transliteracja (namaskaram → ನಮಸ್ಕಾರ)</translation>
<translation id="2925966894897775835">Arkusze</translation>
+<translation id="2927017729816812676">Pamięć podręczna</translation>
<translation id="2927657246008729253">Zmień...</translation>
<translation id="2928526264833629376">Otwórz Hangouts</translation>
<translation id="2930644991850369934">Wystąpił problem podczas pobierania obrazu odzyskiwania. Połączenie sieciowe zostało zerwane.</translation>
@@ -1455,7 +1463,7 @@ Ta strona nie powinna być zablokowana.</translation>
<translation id="3031417829280473749">Agentka X</translation>
<translation id="3031557471081358569">Wybierz elementy do zaimportowania:</translation>
<translation id="3033332627063280038">Włącz eksperymentalną implementację dyrektywy stale-while-revalidate funkcji Cache-Control. Pozwala to serwerom na określenie, że w tle może być przeprowadzane przywracanie ważności w przypadku niektórych zasobów, by zmniejszyć czas oczekiwania.</translation>
-<translation id="3037605927509011580">Niedobrze!</translation>
+<translation id="3037605927509011580">Kurza twarz!</translation>
<translation id="3039828483675273919">Przenoszę $1 elementy(ów)...</translation>
<translation id="304009983491258911">Zmień PIN karty SIM</translation>
<translation id="3041612393474885105">Informacje o certyfikacie</translation>
@@ -1722,6 +1730,7 @@ Ta strona nie powinna być zablokowana.</translation>
<translation id="3396331542604645348">Wybrana drukarka jest niedostępna lub nieprawidłowo zainstalowana. Sprawdź ją lub wybierz inną.</translation>
<translation id="3399597614303179694">Klawiatura macedońska</translation>
<translation id="340013220407300675">Hakerzy mogą próbować wykraść Twoje dane z <ph name="BEGIN_BOLD" /><ph name="SITE" /><ph name="END_BOLD" /> (np. hasła, wiadomości lub informacje o karcie kredytowej).</translation>
+<translation id="3401130144947259741">Jeśli ta opcja jest włączona, zdarzenia śledzenia są eksportowane do ETW (Event Tracing for Windows) i mogą być przechwytywane przez takie narzędzia jak UIForETW czy Xperf.</translation>
<translation id="340282674066624"><ph name="DOWNLOAD_RECEIVED" />, <ph name="TIME_LEFT" /></translation>
<translation id="3406605057700382950">&amp;Pokaż pasek zakładek</translation>
<translation id="3412265149091626468">Przejdź do zaznaczenia</translation>
@@ -1881,6 +1890,7 @@ Ta strona nie powinna być zablokowana.</translation>
<translation id="3603385196401704894">kanadyjski francuski</translation>
<translation id="3603622770190368340">Pobierz certyfikat sieci</translation>
<translation id="3605780360466892872">Garnitur</translation>
+<translation id="3606220979431771195">Turecki (wersja F)</translation>
<translation id="3608454375274108141">F10</translation>
<translation id="3608576286259426129">Podgląd obrazu użytkownika</translation>
<translation id="3609138628363401169">Serwer nie obsługuje rozszerzenia ponownej negocjacji protokołu TLS.</translation>
@@ -2401,6 +2411,7 @@ Aby kontynuować, wszyscy użytkownicy muszą się wylogować.</translation>
<translation id="4321136812570927563">{NUM_DOWNLOAD,plural, =1{Kontynuuj pobieranie}few{Kontynuuj pobieranie}many{Kontynuuj pobieranie}other{Kontynuuj pobieranie}}</translation>
<translation id="4321179778687042513">ctrl</translation>
<translation id="4322394346347055525">Zamknij inne karty</translation>
+<translation id="4325378361067528777">Włącz tryb działania interfejsu API Push w tle</translation>
<translation id="4326952458285403282">Wyłącza eksperymentalny system renderowania czcionek DirectWrite.</translation>
<translation id="4326999707196471878">Okna dialogowe przeglądarki widoków zestawu narzędzi.</translation>
<translation id="4330406155931244378">Włącz wielojęzyczne sprawdzanie pisowni</translation>
@@ -2576,7 +2587,7 @@ Naciśnij dowolny klawisz, by kontynuować przeglądanie.</translation>
<translation id="462288279674432182">Adres IP z ograniczeniami:</translation>
<translation id="4623525071606576283">Strony, których nie udało się załadować w trybie offline zostaną automatycznie wczytane, gdy przeglądarka połączy się z internetem.</translation>
<translation id="4623537843784569564">Rozszerzenie mogło zostać niewłaściwie zaktualizowane. Zainstaluj je ponownie.</translation>
-<translation id="4624768044135598934">Zakończono pomyślnie!</translation>
+<translation id="4624768044135598934">Gotowe!</translation>
<translation id="4626106357471783850">Zastosowanie aktualizacji wymaga ponownego uruchomienia produktu <ph name="PRODUCT_NAME" />.</translation>
<translation id="4628314759732363424">Zmień...</translation>
<translation id="4628757576491864469">Urządzenia</translation>
@@ -2932,6 +2943,8 @@ Naciśnij dowolny klawisz, by kontynuować przeglądanie.</translation>
<translation id="5148652308299789060">Wyłącz programowy rasteryzator 3D</translation>
<translation id="5150254825601720210">Nazwa serwera SSL certyfikatu firmy Netscape</translation>
<translation id="5151034238407558331">W przypadku tego sprzedawcy z Google Payments mogą skorzystać tylko kupujący, którzy mają adres w USA. Jeśli mieszkasz w USA, |zmień swój adres domowy w Google Payments|. Możesz też zapłacić, nie korzystając z tej usługi.</translation>
+<translation id="5151639798712723370">"&gt;
+ Urządzenie USB-C (przedni port na prawym boku)</translation>
<translation id="5152451685298621771">(Konto dla dzieci)</translation>
<translation id="5154108062446123722">Ustawienia zaawansowane dla <ph name="PRINTING_DESTINATION" /></translation>
<translation id="5154176924561037127">F8</translation>
@@ -3031,6 +3044,7 @@ Naciśnij dowolny klawisz, by kontynuować przeglądanie.</translation>
<translation id="5271247532544265821">Przełącz język chiński uproszczony/tradycyjny</translation>
<translation id="5271549068863921519">Zapisz hasło</translation>
<translation id="5273628206174272911">Eksperymentalna nawigacja po historii w odpowiedzi na dalekie przewinięcie w poziomie.</translation>
+<translation id="5275795814002959418"><ph name="COUNT" /> z tej witryny</translation>
<translation id="5275973617553375938">Pliki odzyskane z Dysku Google</translation>
<translation id="527605719918376753">Wycisz kartę</translation>
<translation id="527605982717517565">Zawsze zezwalaj na wykonywanie kodu JavaScript w witrynie <ph name="HOST" /></translation>
@@ -3077,6 +3091,7 @@ Naciśnij dowolny klawisz, by kontynuować przeglądanie.</translation>
<translation id="5328285148748012771">Otwieraj wszystkie aplikacje w tym praktycznym programie uruchamiającym. Graj w gry, rozmawiaj ze znajomymi na czacie wideo, słuchaj muzyki, edytuj dokumenty lub pobieraj kolejne aplikacje z Chrome Web Store.</translation>
<translation id="5329858601952122676">&amp;Usuń</translation>
<translation id="5330145655348521461">Te pliki zostały otwarte na innym pulpicie. Przejdź do <ph name="USER_NAME" /> (<ph name="MAIL_ADDRESS" />), aby je zobaczyć.</translation>
+<translation id="5331975486040154427">Urządzenie USB-C (tylny port na lewym boku)</translation>
<translation id="5332624210073556029">Strefa czasowa</translation>
<translation id="5334142896108694079">Pamięć podręczna skryptów</translation>
<translation id="533433379391851622">Oczekiwano wersji „<ph name="EXPECTED_VERSION" />”, wersja: „<ph name="NEW_ID" />”.</translation>
@@ -3123,6 +3138,7 @@ Naciśnij dowolny klawisz, by kontynuować przeglądanie.</translation>
<translation id="539755880180803351">Dodaje do formularzy internetowych informacje o typie pola autouzupełniania jako tekst zastępczy.</translation>
<translation id="5397578532367286026">Działania i historia tego użytkownika mogą być sprawdzane przez menedżera (<ph name="MANAGER_EMAIL" />) na chrome.com.</translation>
<translation id="5397794290049113714">Ty</translation>
+<translation id="5398824043967640339"><ph name="COUNT" /> z innych witryn</translation>
<translation id="5399158067281117682">Kody PIN nie są identyczne!</translation>
<translation id="5400640815024374115">Moduł TPM (Trusted Platform Module) jest wyłączony lub nieobecny.</translation>
<translation id="5402367795255837559">Pismo Braille'a</translation>
@@ -3948,6 +3964,7 @@ Naciśnij dowolny klawisz, by kontynuować przeglądanie.</translation>
<translation id="6575251558004911012">Pytaj, gdy strona żąda dostępu do kamery (zalecane)</translation>
<translation id="6581162200855843583">Link Dysku Google</translation>
<translation id="6583070985841601920">Zalogowany jako <ph name="USER_EMAIL_ADDRESS" />. Administrator wyłączył synchronizację.</translation>
+<translation id="65832705307647870">Wyświetla popularne witryny na stronie Nowa karta.</translation>
<translation id="6584878029876017575">Podpisywanie dożywotnie firmy Microsoft</translation>
<translation id="6585234750898046415">Wybierz zdjęcie do Twojego konta, które pojawi się na ekranie logowania.</translation>
<translation id="6585283250473596934">Uruchamianie sesji publicznej.</translation>
@@ -4287,6 +4304,7 @@ Naciśnij dowolny klawisz, by kontynuować przeglądanie.</translation>
<translation id="7092106376816104">Wyjątki dla wyskakujących okienek</translation>
<translation id="7093866338626856921">Wymiana danych z urządzeniami o nazwach: <ph name="HOSTNAMES" /></translation>
<translation id="7096082900368329802">Chcesz poznać więcej przydatnych funkcji?</translation>
+<translation id="7098389117866926363">Urządzenie USB-C (lewy port z tyłu)</translation>
<translation id="7100897339030255923">Wybrane elementy: <ph name="COUNT" /></translation>
<translation id="7106346894903675391">Kup więcej miejsca...</translation>
<translation id="7108338896283013870">Ukryj</translation>
@@ -5048,6 +5066,7 @@ Przechowuj plik klucza w bezpiecznym miejscu. Będzie on potrzebny do utworzenia
<translation id="8190193592390505034">Łączenie z siecią <ph name="PROVIDER_NAME" /></translation>
<translation id="8191230140820435481">Zarządzanie Twoimi aplikacjami, rozszerzeniami i motywami</translation>
<translation id="8191453843330043793">Program do rozpoznawania serwera proxy V8</translation>
+<translation id="8199491812735365610">Wybierz konto, na które chcesz się zalogować</translation>
<translation id="8200772114523450471">Wznów</translation>
<translation id="8202160505685531999">Wpisz hasło ponownie, by zaktualizować swój profil na urządzeniu <ph name="DEVICE_TYPE" />.</translation>
<translation id="8204086856545141093">Żądania do serwera zostały zablokowane przez zasadę.</translation>
@@ -5178,6 +5197,7 @@ Przechowuj plik klucza w bezpiecznym miejscu. Będzie on potrzebny do utworzenia
<translation id="8381977081675353473">słowacki</translation>
<translation id="8382645631174981738">Rozszerzenie <ph name="EXTENSION_NAME" /> zostało zainstalowane zdalnie</translation>
<translation id="8382913212082956454">Kopiuj adres &amp;e-mail</translation>
+<translation id="8384113940676655504">Włącza ustawienie Smart Lock, dzięki któremu Chromebook wykrywa telefony za pomocą funkcji Bluetooth Low Energy i odblokowuje się, gdy odpowiedni telefon jest w pobliżu.</translation>
<translation id="8390029840652165810">Upewnij się, że połączenie sieciowe działa. Jeśli problem będzie się powtarzał, wyloguj się, a następnie zaloguj ponownie, by odświeżyć dane uwierzytelniające.</translation>
<translation id="8390445751804042000">Powoduje wybudzanie urządzenia po otrzymaniu niektórych pakietów sieciowych.</translation>
<translation id="8390449457866780408">Serwer jest niedostępny.</translation>
@@ -5264,6 +5284,7 @@ Przechowuj plik klucza w bezpiecznym miejscu. Będzie on potrzebny do utworzenia
<translation id="8509646642152301857">Nie udało się pobrać słownika funkcji sprawdzania pisowni.</translation>
<translation id="8512476990829870887">Zakończ proces</translation>
<translation id="851263357009351303">Zawsze zezwalaj na pokazywanie grafik w witrynie <ph name="HOST" /></translation>
+<translation id="8513191386157529469">„<ph name="CLIENT_NAME" />” debuguje tę przeglądarkę.</translation>
<translation id="8513974249124254369">ChromeVox (potwierdzenia głosowe) jest włączony. Aby wyłączyć, naciśnij Ctrl+Alt+Z.</translation>
<translation id="8515737884867295000">Uwierzytelnienie przy użyciu certyfikatu nie powiodło się</translation>
<translation id="8518865679229538285">Metoda wprowadzania znaków tamilskich (maszyna do pisania)</translation>
@@ -5383,6 +5404,7 @@ Przechowuj plik klucza w bezpiecznym miejscu. Będzie on potrzebny do utworzenia
<translation id="8677039480012021122">Wyczyść dane i odłącz</translation>
<translation id="8677212948402625567">Zwiń wszystko...</translation>
<translation id="8678648549315280022">Zarządzaj ustawieniami pobierania...</translation>
+<translation id="8680251145628383637">Zaloguj się, by korzystać ze swoich zakładek, historii, haseł i innych ustawień na wszystkich urządzeniach. Będziesz też automatycznie logować się do usług Google, których używasz.</translation>
<translation id="8680536109547170164"><ph name="QUERY" />, odpowiedź, <ph name="ANSWER" /></translation>
<translation id="8680787084697685621">Dane logowania na konto są nieaktualne.</translation>
<translation id="8684255857039823328">Hasło zostało zapisane. Swoje hasła możesz przeglądać z dowolnego urządzenia na stronie <ph name="MANAGEMENT_LINK" />.</translation>
@@ -5438,6 +5460,7 @@ Przechowuj plik klucza w bezpiecznym miejscu. Będzie on potrzebny do utworzenia
<translation id="874420130893181774">Tradycyjna metoda wprowadzania Pinyin</translation>
<translation id="8744525654891896746">Wybierz awatar dla tego użytkownika nadzorowanego.</translation>
<translation id="8744641000906923997">Rōmaji</translation>
+<translation id="8744959718895556609">Wybierz konto w <ph name="LINK_TEXT" /></translation>
<translation id="8749863574775030885">Uzyskaj dostęp do urządzeń USB od nieznanego dostawcy</translation>
<translation id="8754200782896249056">&lt;p&gt;Po uruchomieniu programu <ph name="PRODUCT_NAME" /> w obsługiwanym środowisku pulpitu są używane systemowe ustawienia serwera proxy. Jednak ten system nie jest obsługiwany lub wystąpił problem z zastosowaniem konfiguracji systemu.&lt;/p&gt;
@@ -5558,6 +5581,7 @@ Przechowuj plik klucza w bezpiecznym miejscu. Będzie on potrzebny do utworzenia
<translation id="8933960630081805351">&amp;Pokaż w Finderze</translation>
<translation id="8934732568177537184">Dalej</translation>
<translation id="8938356204940892126">Rezygnuję</translation>
+<translation id="8938800817013097409">Urządzenie USB-C (prawy port z tyłu)</translation>
<translation id="8940081510938872932">Komputer robi teraz zbyt wiele rzeczy. Spróbuj ponownie później.</translation>
<translation id="8941173171815156065">Cofnij uprawnienie „<ph name="PERMISSION" />”</translation>
<translation id="8941248009481596111">Twoje połączenie z tą witryną jest prywatne.</translation>
diff --git a/chromium/chrome/app/resources/generated_resources_pt-BR.xtb b/chromium/chrome/app/resources/generated_resources_pt-BR.xtb
index e7e0775513a..b7ab9ed0fa1 100644
--- a/chromium/chrome/app/resources/generated_resources_pt-BR.xtb
+++ b/chromium/chrome/app/resources/generated_resources_pt-BR.xtb
@@ -136,6 +136,8 @@
<translation id="1178581264944972037">Pausar</translation>
<translation id="1179803038870941185"><ph name="URL" /> deseja obter controle total de seus dispositivos MIDI.</translation>
<translation id="1181037720776840403">Remover</translation>
+<translation id="11814323404622888">"&gt;
+ Dispositivo USB-C (porta traseira da direita)</translation>
<translation id="1183083053288481515">Usando um certificado fornecido pelo administrador</translation>
<translation id="1183237619868651138">Não foi possível instalar o arquivo <ph name="EXTERNAL_CRX_FILE" /> no cache local.</translation>
<translation id="1185924365081634987">Tente <ph name="GUEST_SIGNIN_LINK_START" />navegar como convidado<ph name="GUEST_SIGNIN_LINK_END" /> para corrigir este erro da rede.</translation>
@@ -329,6 +331,7 @@
<translation id="1468038450257740950">O WebGL não é suportado.</translation>
<translation id="1470719357688513792">Novas configurações de cookies entrarão em vigor depois que a página for atualizada.</translation>
<translation id="14720830734893704">Ativar suporte ao teclado virtual.</translation>
+<translation id="1474079335130556426">Ativa modo de segundo plano para a Push API. Isso permite que o Chrome continue em execução depois que a última janela for fechada e que ele seja iniciado na inicialização do SO, caso a Push API necessite.</translation>
<translation id="1474339897586437869">Não foi feito o upload de "<ph name="FILENAME" />". Não há espaço livre suficiente no seu Google Drive.</translation>
<translation id="1476503841242751994">{COUNT,plural, =1{1 senha}one{# senhas}other{# senhas}}</translation>
<translation id="1476949146811612304">Defina o mecanismo de pesquisa usado na pesquisa da <ph name="BEGIN_LINK" />omnibox<ph name="END_LINK" />.</translation>
@@ -653,6 +656,7 @@
<translation id="1918141783557917887">&amp;Menor</translation>
<translation id="192144045824434199">Ativa janelas do painel que se abrem fora do frame do navegador. As tentativas de abrir um painel abrirão um pop-up, caso esta opção não esteja ativada. Os painéis são sempre ativados nos canais dev e canary.</translation>
<translation id="1921584744613111023"><ph name="DPI" /> dpi</translation>
+<translation id="1921986354447415460">Teclado padrão F em turco</translation>
<translation id="1923786009776354244">Ativar o suporte para cabeçalho de origem do WebRTC Stun.</translation>
<translation id="1926741348654461781">Ativar páginas off-line</translation>
<translation id="1929546189971853037">Ler seu histórico de navegação em todos os dispositivos nos quais você fez login</translation>
@@ -851,6 +855,7 @@
<translation id="2231990265377706070">Ponto de exclamação</translation>
<translation id="2232876851878324699">O arquivo continha um certificado que não foi importado:</translation>
<translation id="2233502537820838181">&amp;Mais informações</translation>
+<translation id="2233587473672843170">Mostrar sites populares na página "Nova guia"</translation>
<translation id="223714078860837942">Se uma política de referenciador explícita não estiver definida para uma página, a definição desta sinalização reduzirá a quantidade de informações no cabeçalho do "referencial" para os pedidos de origem cruzada.</translation>
<translation id="2238379619048995541">Dados do estado de frequência</translation>
<translation id="2239921694246509981">Adicionar pessoa supervisionada</translation>
@@ -929,6 +934,7 @@ Depois que um novo usuário supervisionado é criado, é possível gerenciar as
<translation id="2326606747676847821">Navegar em modo anônimo</translation>
<translation id="2326931316514688470">&amp;Recarregar aplicativo</translation>
<translation id="2327492829706409234">Ativar aplicativo</translation>
+<translation id="2329597144923131178">Faça login para que favoritos, histórico, senhas e outras configurações fiquem disponíveis em todos os seus dispositivos.</translation>
<translation id="2332131598580221120">Ver na loja</translation>
<translation id="2332742915001411729">Redefinir para os valores padrão</translation>
<translation id="2335122562899522968">Cookies fornecidos por esta página.</translation>
@@ -1317,6 +1323,7 @@ Não acho que este site deva ser bloqueado.</translation>
<translation id="2838379631617906747">Instalando</translation>
<translation id="2841837950101800123">Provedor</translation>
<translation id="2843806747483486897">Alterar padrão...</translation>
+<translation id="2844169650293029770">Dispositivo USB-C (porta frontal da esquerda)</translation>
<translation id="2845382757467349449">Sempre mostrar a barra de favoritos</translation>
<translation id="2846816712032308263">Ativa o fechamento rápido de guias/janelas – executa um gerenciador js de onunload da guia, independentemente da GUI.</translation>
<translation id="284970761985428403"><ph name="ASCII_NAME" /> (<ph name="UNICODE_NAME" />)</translation>
@@ -1381,6 +1388,7 @@ Não acho que este site deva ser bloqueado.</translation>
<translation id="2923469375796950815">Desative o novo ZIP unpacker.</translation>
<translation id="2924296707677495905">Transliteração (namaskaram → ನಮಸ್ಕಾರ)</translation>
<translation id="2925966894897775835">Planilhas</translation>
+<translation id="2927017729816812676">Armazenamento de cache</translation>
<translation id="2927657246008729253">Alterar...</translation>
<translation id="2928526264833629376">Continuar no Hangouts</translation>
<translation id="2930644991850369934">Ocorreu um problema durante o download da imagem de recuperação. A conexão de rede foi perdida.</translation>
@@ -1722,6 +1730,7 @@ Não acho que este site deva ser bloqueado.</translation>
<translation id="3396331542604645348">A impressora selecionada não está disponível ou não foi instalada corretamente. Verifique sua impressora ou selecione outra.</translation>
<translation id="3399597614303179694">Teclado macedônio</translation>
<translation id="340013220407300675">Invasores podem estar tentando roubar suas informações de <ph name="BEGIN_BOLD" /><ph name="SITE" /><ph name="END_BOLD" /> (por exemplo, senhas, mensagens ou cartões de crédito).</translation>
+<translation id="3401130144947259741">Se esse recurso estiver ativado, os eventos de acompanhamento serão exportados para o Acompanhamento de eventos para Windows (ETW, na sigla em inglês) e poderão ser captados por ferramentas como UIForETW ou XPerf.</translation>
<translation id="340282674066624"><ph name="DOWNLOAD_RECEIVED" />, <ph name="TIME_LEFT" /></translation>
<translation id="3406605057700382950">&amp;Exibir barra de favoritos</translation>
<translation id="3412265149091626468">Ir para a seleção</translation>
@@ -1880,6 +1889,7 @@ Não acho que este site deva ser bloqueado.</translation>
<translation id="3603385196401704894">Francês canadense</translation>
<translation id="3603622770190368340">Obter certificado de rede</translation>
<translation id="3605780360466892872">Esporte fino</translation>
+<translation id="3606220979431771195">Turco-F</translation>
<translation id="3608454375274108141">F10</translation>
<translation id="3608576286259426129">Visualização da imagem do usuário</translation>
<translation id="3609138628363401169">O servidor não é compatível com a extensão de renegociação TLS.</translation>
@@ -2400,6 +2410,7 @@ Todos os usuários devem sair para continuar.</translation>
<translation id="4321136812570927563">{NUM_DOWNLOAD,plural, =1{Continuar download}one{Continuar downloads}other{Continuar downloads}}</translation>
<translation id="4321179778687042513">ctrl</translation>
<translation id="4322394346347055525">Fechar outras guias</translation>
+<translation id="4325378361067528777">Ativar modo de segundo plano da Push API</translation>
<translation id="4326952458285403282">Desativa o uso do sistema experimental de renderização de fontes DirectWrite.</translation>
<translation id="4326999707196471878">Caixas de diálogo do navegador com visualizações do kit de ferramentas.</translation>
<translation id="4330406155931244378">Ativar corretor ortográfico multilíngue</translation>
@@ -2931,6 +2942,8 @@ Todos os usuários devem sair para continuar.</translation>
<translation id="5148652308299789060">Desativar rasterizador de software 3D</translation>
<translation id="5150254825601720210">Nome do servidor SSL do certificado do Netscape</translation>
<translation id="5151034238407558331">O Google Payments só pode ser usado com este comerciante por compradores residentes nos EUA. Se você for morador dos EUA, |altere seu endereço residencial no Google Payments| ou pague usando outra forma de pagamento.</translation>
+<translation id="5151639798712723370">"&gt;
+ Dispositivo USB-C (porta frontal da direita)</translation>
<translation id="5152451685298621771">Conta para crianças</translation>
<translation id="5154108062446123722">Configurações avançadas para <ph name="PRINTING_DESTINATION" /></translation>
<translation id="5154176924561037127">F8</translation>
@@ -3029,6 +3042,7 @@ Todos os usuários devem sair para continuar.</translation>
<translation id="5271247532544265821">Alternar entre o modo chinês simplificado/tradicional</translation>
<translation id="5271549068863921519">Salvar senha</translation>
<translation id="5273628206174272911">Histórico de navegação experimental em resposta à rolagem horizontal.</translation>
+<translation id="5275795814002959418"><ph name="COUNT" /> desse site</translation>
<translation id="5275973617553375938">Arquivos recuperados a partir do Google Drive</translation>
<translation id="527605719918376753">Desativar som da guia</translation>
<translation id="527605982717517565">Sempre permitir JavaScript em <ph name="HOST" /></translation>
@@ -3075,6 +3089,7 @@ Todos os usuários devem sair para continuar.</translation>
<translation id="5328285148748012771">Acesse todos os seus aplicativos neste prático iniciador. Jogue, bata papo por vídeo, ouça música, edite documentos ou faça o download de mais aplicativos na Chrome Web Store.</translation>
<translation id="5329858601952122676">&amp;Excluir</translation>
<translation id="5330145655348521461">Estes arquivos estão abertos em uma área de trabalho diferente. Mude para <ph name="USER_NAME" /> (<ph name="MAIL_ADDRESS" />) para vê-los.</translation>
+<translation id="5331975486040154427">Dispositivo USB-C (porta traseira da esquerda)</translation>
<translation id="5332624210073556029">Fuso horário:</translation>
<translation id="5334142896108694079">Cache de script</translation>
<translation id="533433379391851622">Versão esperada "<ph name="EXPECTED_VERSION" />", mas era "<ph name="NEW_ID" />".</translation>
@@ -3121,6 +3136,7 @@ Todos os usuários devem sair para continuar.</translation>
<translation id="539755880180803351">Comenta formulários da web adicionando previsões de preenchimento automático como textos provisórios.</translation>
<translation id="5397578532367286026">O uso e o histórico deste usuário podem ser analisados pelo administrador (<ph name="MANAGER_EMAIL" />) em chrome.com.</translation>
<translation id="5397794290049113714">Você</translation>
+<translation id="5398824043967640339"><ph name="COUNT" /> de outros sites</translation>
<translation id="5399158067281117682">Os PINs não coincidem.</translation>
<translation id="5400640815024374115">O chip do TPM (Module Platform Trusted) está desativado ou ausente.</translation>
<translation id="5402367795255837559">Braille</translation>
@@ -3947,6 +3963,7 @@ permanentemente excluídos assim que esse usuário for removido. Os websites vis
<translation id="6575251558004911012">Perguntar quando um site exige o acesso à sua câmera (recomendado)</translation>
<translation id="6581162200855843583">Link do Google Drive</translation>
<translation id="6583070985841601920">Conectado como <ph name="USER_EMAIL_ADDRESS" />. A sincronização foi desativada pelo seu administrador.</translation>
+<translation id="65832705307647870">Preenche a página "Nova guia" antecipadamente com sites populares.</translation>
<translation id="6584878029876017575">Assinatura de tempo de vida da Microsoft</translation>
<translation id="6585234750898046415">Escolha uma imagem de exibição para sua conta na tela de login.</translation>
<translation id="6585283250473596934">Ingressando em uma sessão pública.</translation>
@@ -4288,6 +4305,7 @@ permanentemente excluídos assim que esse usuário for removido. Os websites vis
<translation id="7092106376816104">Exceções de pop-ups</translation>
<translation id="7093866338626856921">Trocar dados com os dispositivos chamados: <ph name="HOSTNAMES" /></translation>
<translation id="7096082900368329802">Quer descobrir mais recursos impressionantes?</translation>
+<translation id="7098389117866926363">Dispositivo USB-C (porta traseira da esquerda)</translation>
<translation id="7100897339030255923"><ph name="COUNT" /> itens selecionados</translation>
<translation id="7106346894903675391">Adquirir mais espaço de armazenamento...</translation>
<translation id="7108338896283013870">Ocultar</translation>
@@ -5057,6 +5075,7 @@ Mantenha a sua chave de arquivo em um local seguro. Você precisará dela para c
<translation id="8190193592390505034">Conectando-se a <ph name="PROVIDER_NAME" /></translation>
<translation id="8191230140820435481">Gerenciar seus aplicativos, extensões e temas</translation>
<translation id="8191453843330043793">V8 Proxy Resolver</translation>
+<translation id="8199491812735365610">Escolher uma conta para fazer login</translation>
<translation id="8200772114523450471">Retomar</translation>
<translation id="8202160505685531999">Digite sua senha novamente para atualizar o perfil do <ph name="DEVICE_TYPE" />.</translation>
<translation id="8204086856545141093">Solicitações ao servidor foram bloqueadas por uma política.</translation>
@@ -5187,6 +5206,7 @@ Mantenha a sua chave de arquivo em um local seguro. Você precisará dela para c
<translation id="8381977081675353473">Eslovaco</translation>
<translation id="8382645631174981738"><ph name="EXTENSION_NAME" /> foi instalado remotamente</translation>
<translation id="8382913212082956454">Copiar &amp;endereço de e-mail</translation>
+<translation id="8384113940676655504">Ativa uma configuração do Smart Lock que permite que o Chromebook descubra smartphones pelo Bluetooth de baixa energia para desbloquear o Chromebook quando o smartphone estiver próximo a ele.</translation>
<translation id="8390029840652165810">Certifique-se de que sua conexão de rede esteja funcionando e, se o problema persistir, saia e faça login novamente para atualizar suas credenciais.</translation>
<translation id="8390445751804042000">Permite despertar o dispositivo com base no recebimento de alguns pacotes de rede.</translation>
<translation id="8390449457866780408">Servidor não disponível.</translation>
@@ -5273,6 +5293,7 @@ Mantenha a sua chave de arquivo em um local seguro. Você precisará dela para c
<translation id="8509646642152301857">Falha no download do dicionário de correção ortográfica.</translation>
<translation id="8512476990829870887">Encerrar processo</translation>
<translation id="851263357009351303">Sempre permitir que <ph name="HOST" /> mostre imagens</translation>
+<translation id="8513191386157529469">"<ph name="CLIENT_NAME" />" está fazendo a depuração desse navegador.</translation>
<translation id="8513974249124254369">O ChromeVox (feedback falado) está ativado. Pressione Ctrl+Alt+Z para desativá-lo.</translation>
<translation id="8515737884867295000">A autenticação com base no certificado falhou</translation>
<translation id="8518865679229538285">Método de entrada Tamil (máquina de escrever)</translation>
@@ -5392,6 +5413,7 @@ Mantenha a sua chave de arquivo em um local seguro. Você precisará dela para c
<translation id="8677039480012021122">Excluir dados e desconectar</translation>
<translation id="8677212948402625567">Recolher tudo...</translation>
<translation id="8678648549315280022">Gerenciar configurações de download...</translation>
+<translation id="8680251145628383637">Faça login para ter acesso aos seus favoritos, histórico, senhas e outras configurações em todos os seus dispositivos. Você será conectado automaticamente aos seus serviços do Google.</translation>
<translation id="8680536109547170164"><ph name="QUERY" />, resposta, <ph name="ANSWER" /></translation>
<translation id="8680787084697685621">Os detalhes de login da conta estão desatualizados.</translation>
<translation id="8684255857039823328">Senha salva. Acesse suas senhas a partir de qualquer dispositivo em <ph name="MANAGEMENT_LINK" />.</translation>
@@ -5447,6 +5469,7 @@ Mantenha a sua chave de arquivo em um local seguro. Você precisará dela para c
<translation id="874420130893181774">Método de entrada Pinyin tradicional</translation>
<translation id="8744525654891896746">Selecione um avatar para este usuário supervisionado</translation>
<translation id="8744641000906923997">Romaji</translation>
+<translation id="8744959718895556609">Escolher uma conta no seu <ph name="LINK_TEXT" /></translation>
<translation id="8749863574775030885">Acessar dispositivos USB de um fornecedor desconhecido</translation>
<translation id="8754200782896249056">&lt;p&gt; Durante a execução do <ph name="PRODUCT_NAME" /> em um ambiente de computador compatível, serão utilizadas as configurações de proxy do sistema. No entanto, seu sistema não é suportado ou ocorreu um problema ao iniciar a configuração do sistema.&lt;/p&gt;
@@ -5567,6 +5590,7 @@ Mantenha a sua chave de arquivo em um local seguro. Você precisará dela para c
<translation id="8933960630081805351">&amp;Mostrar no Finder</translation>
<translation id="8934732568177537184">Continuar</translation>
<translation id="8938356204940892126">Eu desisto</translation>
+<translation id="8938800817013097409">Dispositivo USB-C (porta traseira da direita)</translation>
<translation id="8940081510938872932">Seu computador está fazendo muitas coisas no momento. Tente novamente mais tarde.</translation>
<translation id="8941173171815156065">Revogar a permissão "<ph name="PERMISSION" />"</translation>
<translation id="8941248009481596111">Sua conexão a este site é particular.</translation>
diff --git a/chromium/chrome/app/resources/generated_resources_pt-PT.xtb b/chromium/chrome/app/resources/generated_resources_pt-PT.xtb
index 65aa37f5f15..a6036876304 100644
--- a/chromium/chrome/app/resources/generated_resources_pt-PT.xtb
+++ b/chromium/chrome/app/resources/generated_resources_pt-PT.xtb
@@ -136,6 +136,8 @@
<translation id="1178581264944972037">Pausa</translation>
<translation id="1179803038870941185"><ph name="URL" /> pretende obter o controlo total sobre os seus dispositivos MIDI.</translation>
<translation id="1181037720776840403">Remover</translation>
+<translation id="11814323404622888">"&gt;
+ Dispositivo USB-C (porta traseira do lado direito)</translation>
<translation id="1183083053288481515">A utilizar um certificado fornecido por um administrador</translation>
<translation id="1183237619868651138">Não é possível instalar <ph name="EXTERNAL_CRX_FILE" /> na cache local.</translation>
<translation id="1185924365081634987">Também pode experimentar <ph name="GUEST_SIGNIN_LINK_START" />navegar como convidado<ph name="GUEST_SIGNIN_LINK_END" /> para corrigir este erro de rede.</translation>
@@ -329,6 +331,7 @@
<translation id="1468038450257740950">O WebGL não é suportado.</translation>
<translation id="1470719357688513792">As novas definições de cookies terão efeito depois de recarregar a página.</translation>
<translation id="14720830734893704">Ativa o suporte para o teclado virtual.</translation>
+<translation id="1474079335130556426">Ativar o modo em segundo plano para a API Push. Isto permite ao Chrome continuar em execução depois de a última janela ser fechada e iniciar no arranque do SO, se a API Push necessitar dele.</translation>
<translation id="1474339897586437869">"<ph name="FILENAME" />" não foi carregado. Não existe espaço livre suficiente no seu Google Drive.</translation>
<translation id="1476503841242751994">{COUNT,plural, =1{1 palavra-passe}other{# palavras-passe}}</translation>
<translation id="1476949146811612304">Defina o motor de pesquisa que será utilizado quando pesquisar a partir da
@@ -654,6 +657,7 @@
<translation id="1918141783557917887">Mai&amp;s pequeno</translation>
<translation id="192144045824434199">Ativa janelas do Painel que são abertas fora da moldura do navegador. As tentativas de abrir um Painel abrirão uma janela de pop-up, se este não estiver ativado. Os painéis são sempre ativados nos canais dev e canary.</translation>
<translation id="1921584744613111023"><ph name="DPI" /> ppp</translation>
+<translation id="1921986354447415460">Teclado Turco-F</translation>
<translation id="1923786009776354244">Ativar suporte para cabeçalhos de origem WebRTC Stun</translation>
<translation id="1926741348654461781">Ativar páginas offline</translation>
<translation id="1929546189971853037">Ler o seu histórico de navegação em todos os seus dispositivos com sessão iniciada</translation>
@@ -852,6 +856,7 @@
<translation id="2231990265377706070">Ponto de exclamação</translation>
<translation id="2232876851878324699">O ficheiro continha um certificado que não foi importado:</translation>
<translation id="2233502537820838181">&amp;Mais informações</translation>
+<translation id="2233587473672843170">Mostrar sites populares na página Novo separador</translation>
<translation id="223714078860837942">Se uma página não tiver definido uma política de referenciador explícita, definir este sinalizador reduz a quantidade de informações no cabeçalho "referenciador" para pedidos provenientes de várias origens.</translation>
<translation id="2238379619048995541">Dados do estado de frequência</translation>
<translation id="2239921694246509981">Adicionar pessoa supervisionada</translation>
@@ -929,6 +934,7 @@ Depois de criar um novo utilizador supervisionado, pode gerir as respetivas defi
<translation id="2326606747676847821">Entrar no modo de navegação anónima</translation>
<translation id="2326931316514688470">&amp;Recarregar aplicação</translation>
<translation id="2327492829706409234">Ativar aplicação</translation>
+<translation id="2329597144923131178">Inicie sessão para aceder aos marcadores, ao histórico, às palavras-passe e a outras definições em todos os dispositivos.</translation>
<translation id="2332131598580221120">Ver na loja</translation>
<translation id="2332742915001411729">Repor predefinição</translation>
<translation id="2335122562899522968">Esta página define os cookies.</translation>
@@ -1317,6 +1323,7 @@ Acho que este site não deveria estar bloqueado.</translation>
<translation id="2838379631617906747">A instalar</translation>
<translation id="2841837950101800123">Fornecedor</translation>
<translation id="2843806747483486897">Alterar predefinição...</translation>
+<translation id="2844169650293029770">Dispositivo USB-C (porta frontal do lado esquerdo)</translation>
<translation id="2845382757467349449">Mostrar Sempre a Barra de Marcadores</translation>
<translation id="2846816712032308263">Ativa o fecho rápido de separadores/janelas – executa um controlador onunload js de um separador independentemente da GUI.</translation>
<translation id="284970761985428403"><ph name="ASCII_NAME" /> (<ph name="UNICODE_NAME" />)</translation>
@@ -1381,6 +1388,7 @@ Acho que este site não deveria estar bloqueado.</translation>
<translation id="2923469375796950815">Desative o novo ZIP unpacker.</translation>
<translation id="2924296707677495905">Transliteração (namaskaram → ನಮಸ್ಕಾರ)</translation>
<translation id="2925966894897775835">Folhas</translation>
+<translation id="2927017729816812676">Armazenamento de cache</translation>
<translation id="2927657246008729253">Alterar...</translation>
<translation id="2928526264833629376">Continuar para o Hangouts</translation>
<translation id="2930644991850369934">Ocorreu um problema durante a transferência da imagem de recuperação. Ligação à rede perdida.</translation>
@@ -1722,6 +1730,7 @@ Pretende pará-lo?</translation>
<translation id="3396331542604645348">A impressora selecionada não está disponível ou não está instalada corretamente. Verifique a impressora ou tente selecionar outra impressora.</translation>
<translation id="3399597614303179694">Teclado macedónio</translation>
<translation id="340013220407300675">Os atacantes podem estar a tentar roubar as suas informações de <ph name="BEGIN_BOLD" /><ph name="SITE" /><ph name="END_BOLD" /> (por exemplo, palavras-passe, mensagens ou cartões de crédito).</translation>
+<translation id="3401130144947259741">Se a opção estiver ativada, os eventos de rastreio são exportados para o Rastreio de Eventos para o Windows (ETW) e podem ser capturados por ferramentas como o UIForETW ou o Xperf.</translation>
<translation id="340282674066624"><ph name="DOWNLOAD_RECEIVED" />, <ph name="TIME_LEFT" /></translation>
<translation id="3406605057700382950">&amp;Mostrar barra de marcadores</translation>
<translation id="3412265149091626468">Passar para a selecção</translation>
@@ -1881,6 +1890,7 @@ Pretende pará-lo?</translation>
<translation id="3603385196401704894">Francês canadiano</translation>
<translation id="3603622770190368340">Obter certificado de rede</translation>
<translation id="3605780360466892872">Empresário</translation>
+<translation id="3606220979431771195">Turco-F</translation>
<translation id="3608454375274108141">F10</translation>
<translation id="3608576286259426129">Pré-visualização da imagem do utilizador</translation>
<translation id="3609138628363401169">O servidor não suporta a extensão de renegociação TLS.</translation>
@@ -2401,6 +2411,7 @@ Todos os utilizadores têm de terminar sessão para continuar.</translation>
<translation id="4321136812570927563">{NUM_DOWNLOAD,plural, =1{Continuar transferência}other{Continuar transferências}}</translation>
<translation id="4321179778687042513">ctrl</translation>
<translation id="4322394346347055525">Fechar os Outros Separadores</translation>
+<translation id="4325378361067528777">Ativar modo em segundo plano da API Push</translation>
<translation id="4326952458285403282">Desativa a utilização do sistema experimental de processamento do tipo de letra do DirectWrite.</translation>
<translation id="4326999707196471878">Caixas de diálogo do navegador baseadas nas visualizações do conjunto de ferramentas.</translation>
<translation id="4330406155931244378">Ativar corretor ortográfico multilingue</translation>
@@ -2941,6 +2952,8 @@ Prima qualquer tecla para continuar a explorar.</translation>
<translation id="5148652308299789060">Desativar rasterizador de software 3D</translation>
<translation id="5150254825601720210">Nome do servidor SSL do certificado Netscape</translation>
<translation id="5151034238407558331">Infelizmente, o Google Payments só pode ser utilizado neste comerciante por compradores com endereço nos EUA. Caso seja residente nos EUA, |altere o seu endereço de residência no Google Payments| ou efetue o pagamento sem utilizar o Google Payments.</translation>
+<translation id="5151639798712723370">"&gt;
+ Dispositivo USB-C (porta frontal do lado direito)</translation>
<translation id="5152451685298621771">(Conta para crianças)</translation>
<translation id="5154108062446123722">Definições avançadas de <ph name="PRINTING_DESTINATION" /></translation>
<translation id="5154176924561037127">F8</translation>
@@ -3039,6 +3052,7 @@ Prima qualquer tecla para continuar a explorar.</translation>
<translation id="5271247532544265821">Activar/desactivar modo Chinês simplificado/tradicional</translation>
<translation id="5271549068863921519">Guardar palavra-passe</translation>
<translation id="5273628206174272911">Navegação no histórico experimental como resposta ao deslocamento horizontal.</translation>
+<translation id="5275795814002959418"><ph name="COUNT" /> deste site</translation>
<translation id="5275973617553375938">Ficheiros recuperados do Google Drive</translation>
<translation id="527605719918376753">Desativar som do separador</translation>
<translation id="527605982717517565">Permitir sempre JavaScript em <ph name="HOST" /></translation>
@@ -3085,6 +3099,7 @@ Prima qualquer tecla para continuar a explorar.</translation>
<translation id="5328285148748012771">Aceda a todas as suas aplicações a partir deste prático iniciador. Divirta-se com jogos, participe em chat de vídeo, ouça música, edite documentos ou obtenha mais aplicações a partir da Chrome Web Store.</translation>
<translation id="5329858601952122676">E&amp;liminar</translation>
<translation id="5330145655348521461">Estes ficheiros foram abertos num ambiente de trabalho diferente. Mova para <ph name="USER_NAME" /> (<ph name="MAIL_ADDRESS" />) para ver.</translation>
+<translation id="5331975486040154427">Dispositivo USB-C (porta traseira do lado esquerdo)</translation>
<translation id="5332624210073556029">Fuso horário:</translation>
<translation id="5334142896108694079">Cache de Script</translation>
<translation id="533433379391851622">A versão esperada era "<ph name="EXPECTED_VERSION" />", mas a versão foi "<ph name="NEW_ID" />".</translation>
@@ -3131,6 +3146,7 @@ Prima qualquer tecla para continuar a explorar.</translation>
<translation id="539755880180803351">Anota formulários web com previsões do tipo de campo de Preenchimento Automático como texto de placeholder.</translation>
<translation id="5397578532367286026">A utilização e o histórico deste utilizador podem ser consultados pelo gestor (<ph name="MANAGER_EMAIL" />) em chrome.com.</translation>
<translation id="5397794290049113714">Utilizador</translation>
+<translation id="5398824043967640339"><ph name="COUNT" /> de outros sites</translation>
<translation id="5399158067281117682">Os PINs não coincidem!</translation>
<translation id="5400640815024374115">O chip do TPM (Trusted Platform Module/Módulo de plataforma fidedigna) está desactivado ou não existe.</translation>
<translation id="5402367795255837559">Braille</translation>
@@ -3957,6 +3973,7 @@ para proteger a sua privacidade.</translation>
<translation id="6575251558004911012">Perguntar quando um site pretender aceder à sua câmara (recomendado)</translation>
<translation id="6581162200855843583">Link do Google Drive</translation>
<translation id="6583070985841601920">Com sessão iniciada em <ph name="USER_EMAIL_ADDRESS" />. A sincronização foi desativada pelo seu administrador.</translation>
+<translation id="65832705307647870">Preencher automaticamente a página Novo separador com sites populares.</translation>
<translation id="6584878029876017575">Assinatura vitalícia Microsoft</translation>
<translation id="6585234750898046415">Selecione uma imagem para apresentar no ecrã de entrada da sua conta.</translation>
<translation id="6585283250473596934">A entrar numa sessão pública.</translation>
@@ -4297,6 +4314,7 @@ para proteger a sua privacidade.</translation>
<translation id="7092106376816104">Exceções de pop-up</translation>
<translation id="7093866338626856921">Trocar dados com os seguintes dispositivos: <ph name="HOSTNAMES" /></translation>
<translation id="7096082900368329802">Pretende descobrir mais funcionalidades fantásticas?</translation>
+<translation id="7098389117866926363">Dispositivo USB-C (porta traseira esquerda)</translation>
<translation id="7100897339030255923"><ph name="COUNT" /> itens selecionados</translation>
<translation id="7106346894903675391">Comprar mais armazenamento...</translation>
<translation id="7108338896283013870">Ocultar</translation>
@@ -5065,6 +5083,7 @@ Mantenha o seu ficheiro de chave num local seguro, pois irá precisar dele para
<translation id="8190193592390505034">A ligar a <ph name="PROVIDER_NAME" /></translation>
<translation id="8191230140820435481">Gerir as suas aplicações, extensões e temas</translation>
<translation id="8191453843330043793">Resolução de proxy V8</translation>
+<translation id="8199491812735365610">Escolher uma conta para iniciar sessão</translation>
<translation id="8200772114523450471">Continuar</translation>
<translation id="8202160505685531999">Introduza a sua palavra-passe novamente para atualizar o perfil do <ph name="DEVICE_TYPE" />.</translation>
<translation id="8204086856545141093">Os pedidos para o servidor foram bloqueados por uma política.</translation>
@@ -5195,6 +5214,7 @@ Mantenha o seu ficheiro de chave num local seguro, pois irá precisar dele para
<translation id="8381977081675353473">Eslovaco</translation>
<translation id="8382645631174981738"><ph name="EXTENSION_NAME" /> foi instalado(a) remotamente</translation>
<translation id="8382913212082956454">Copiar &amp;endereço de email</translation>
+<translation id="8384113940676655504">Ativa uma definição de Smart Lock que permite que o Chromebook detete telemóveis através da tecnologia Bluetooth Low Energy, de modo a desbloquear o Chromebook quando o telemóvel estiver próximo.</translation>
<translation id="8390029840652165810">Certifique-se de que a ligação de rede está a funcionar e, se o problema persistir, termine sessão e inicie novamente para atualizar as credenciais.</translation>
<translation id="8390445751804042000">Permite reativar o dispositivo com base na receção de pacotes de rede.</translation>
<translation id="8390449457866780408">O servidor não se encontra disponível.</translation>
@@ -5281,6 +5301,7 @@ Mantenha o seu ficheiro de chave num local seguro, pois irá precisar dele para
<translation id="8509646642152301857">Falha na transferência do dicionário de verificação ortográfica.</translation>
<translation id="8512476990829870887">Terminar Processo</translation>
<translation id="851263357009351303">Permitir sempre que o site <ph name="HOST" /> mostre imagens</translation>
+<translation id="8513191386157529469">"<ph name="CLIENT_NAME" />" está a depurar este navegador.</translation>
<translation id="8513974249124254369">O ChromeVox (respostas faladas) está ativado. Prima Ctrl+Alt+Z para desativar.</translation>
<translation id="8515737884867295000">A autenticação baseada em certificado falhou</translation>
<translation id="8518865679229538285">Método de introdução Tamil (Máquina de escrever)</translation>
@@ -5400,6 +5421,7 @@ Mantenha o seu ficheiro de chave num local seguro, pois irá precisar dele para
<translation id="8677039480012021122">Limpar dados e desligar</translation>
<translation id="8677212948402625567">Reduzir tudo...</translation>
<translation id="8678648549315280022">Gerir definições de transferência...</translation>
+<translation id="8680251145628383637">Inicie sessão para obter os seus separadores, os marcadores, o histórico, as palavras-passe e outras definições em todos os seus dispositivos. Além disso, também inicia sessão automaticamente nos serviços Google.</translation>
<translation id="8680536109547170164"><ph name="QUERY" />, resposta, <ph name="ANSWER" /></translation>
<translation id="8680787084697685621">Os detalhes de início de sessão na conta estão desactualizados.</translation>
<translation id="8684255857039823328">Palavra-passe guardada. Aceda às suas palavras-passe a partir de qualquer dispositivo em <ph name="MANAGEMENT_LINK" />.</translation>
@@ -5455,6 +5477,7 @@ Mantenha o seu ficheiro de chave num local seguro, pois irá precisar dele para
<translation id="874420130893181774">Método de introdução pinyin tradicional</translation>
<translation id="8744525654891896746">Selecionar um avatar para este utilizador supervisionado</translation>
<translation id="8744641000906923997">Romaji</translation>
+<translation id="8744959718895556609">Escolher uma conta a partir do <ph name="LINK_TEXT" /></translation>
<translation id="8749863574775030885">Aceder a dispositivos USB de um fornecedor desconhecido</translation>
<translation id="8754200782896249056">&lt;p&gt;Ao executar o <ph name="PRODUCT_NAME" /> num ambiente de trabalho suportado, são utilizadas as definições de proxy do sistema. No entanto, o seu sistema não é suportado ou ocorreu um problema no início da configuração do sistema.&lt;/p&gt;
@@ -5575,6 +5598,7 @@ Mantenha o seu ficheiro de chave num local seguro, pois irá precisar dele para
<translation id="8933960630081805351">Mo&amp;strar no Localizador</translation>
<translation id="8934732568177537184">Continuar</translation>
<translation id="8938356204940892126">Desisto</translation>
+<translation id="8938800817013097409">Dispositivo USB-C (porta traseira direita)</translation>
<translation id="8940081510938872932">O seu computador está a executar demasiadas operações neste momento. Tente novamente mais tarde.</translation>
<translation id="8941173171815156065">Revogar a autorização "<ph name="PERMISSION" />"</translation>
<translation id="8941248009481596111">A sua ligação a este site é privada.</translation>
diff --git a/chromium/chrome/app/resources/generated_resources_ro.xtb b/chromium/chrome/app/resources/generated_resources_ro.xtb
index 181a2bc5e05..a96cae85881 100644
--- a/chromium/chrome/app/resources/generated_resources_ro.xtb
+++ b/chromium/chrome/app/resources/generated_resources_ro.xtb
@@ -136,6 +136,8 @@
<translation id="1178581264944972037">Întrerupe</translation>
<translation id="1179803038870941185">Adresa <ph name="URL" /> dorește să preia controlul complet asupra dispozitivelor MIDI.</translation>
<translation id="1181037720776840403">Elimină</translation>
+<translation id="11814323404622888">”&gt;
+ Dispozitiv USB-C (portul din dreapta spate)</translation>
<translation id="1183083053288481515">Se utilizează un certificat oferit de administrator</translation>
<translation id="1183237619868651138">Nu se poate instala <ph name="EXTERNAL_CRX_FILE" /> în memoria cache locală.</translation>
<translation id="1185924365081634987">Pentru a remedia eroarea de rețea, puteți încerca și să <ph name="GUEST_SIGNIN_LINK_START" />navigați ca invitat<ph name="GUEST_SIGNIN_LINK_END" />.</translation>
@@ -329,6 +331,7 @@
<translation id="1468038450257740950">WebGL nu este acceptat.</translation>
<translation id="1470719357688513792">Noile setări pentru cookie-uri se vor aplica după reîncărcarea paginii.</translation>
<translation id="14720830734893704">Activați compatibilitatea cu tastatura virtuală.</translation>
+<translation id="1474079335130556426">Activează modul fundal pentru API-ul Push. Astfel, Chrome rulează în continuare după ce ultima fereastră este închisă și se lansează la pornirea sistemului de operare, dacă API-ul Push o solicită.</translation>
<translation id="1474339897586437869">„<ph name="FILENAME" />” nu s-a încărcat. Nu există spațiu liber suficient în Google Drive.</translation>
<translation id="1476503841242751994">{COUNT,plural, =1{O parolă}few{# parole}other{# de parole}}</translation>
<translation id="1476949146811612304">Setați ce motor de căutare este utilizat atunci când se caută din <ph name="BEGIN_LINK" />caseta polivalentă<ph name="END_LINK" />.</translation>
@@ -656,6 +659,7 @@
<translation id="1918141783557917887">&amp;Mai mic</translation>
<translation id="192144045824434199">Activați ferestrele panou care se deschid în afara cadrului de browser. Încercările de a deschide un panou vor determina deschiderea unei ferestre de tip pop-up, dacă această setare nu este activată. Panourile sunt activate întotdeauna în canalele pentru dezvoltatori și în cele din versiunea canary.</translation>
<translation id="1921584744613111023"><ph name="DPI" /> dpi</translation>
+<translation id="1921986354447415460">Tastatură turcă-F</translation>
<translation id="1923786009776354244">Activează compatibilitatea cu antetul Origin pentru WebRTC Stun.</translation>
<translation id="1926741348654461781">Activează paginile offline</translation>
<translation id="1929546189971853037">Citește istoricul de navigare pe toate dispozitivele conectate</translation>
@@ -862,6 +866,7 @@
<translation id="2231990265377706070">Semnul exclamării</translation>
<translation id="2232876851878324699">Fișierul conținea un certificat, care nu a fost importat:</translation>
<translation id="2233502537820838181">&amp;Mai multe informații</translation>
+<translation id="2233587473672843170">Afișează site-uri populare pe pagina Filă nouă</translation>
<translation id="223714078860837942">Dacă o pagină nu are configurată o politică explicită privind antetul „referer”, setarea acestui semnalizator va reduce volumul de informații din antetul „referer” pentru solicitările din mai multe surse.</translation>
<translation id="2238379619048995541">Date pentru starea activă</translation>
<translation id="2239921694246509981">Adaugă o persoană monitorizată</translation>
@@ -940,6 +945,7 @@ După ce creezi un utilizator monitorizat, poți gestiona setările oricând și
<translation id="2326606747676847821">Treci în incognito</translation>
<translation id="2326931316514688470">&amp;Reîncarcă aplicația</translation>
<translation id="2327492829706409234">Activați aplicația</translation>
+<translation id="2329597144923131178">Conectează-te și accesează marcajele, istoricul, parolele și alte setări pe toate dispozitivele.</translation>
<translation id="2332131598580221120">Vedeți în magazin</translation>
<translation id="2332742915001411729">Resetați la valorile prestabilite</translation>
<translation id="2335122562899522968">Această pagină a setat cookie-uri.</translation>
@@ -1328,6 +1334,7 @@ Nu cred că acest site ar trebui blocat!</translation>
<translation id="2838379631617906747">Se instalează</translation>
<translation id="2841837950101800123">Furnizor</translation>
<translation id="2843806747483486897">Schimbați valoarea prestabilită...</translation>
+<translation id="2844169650293029770">Dispozitiv USB-C (portul din stânga față)</translation>
<translation id="2845382757467349449">Afișează mereu bara de marcaje</translation>
<translation id="2846816712032308263">Activează închiderea rapidă a filei/ferestrei – rulează un handler js onunload al filei independent de GUI.</translation>
<translation id="284970761985428403"><ph name="ASCII_NAME" /> (<ph name="UNICODE_NAME" />)</translation>
@@ -1392,6 +1399,7 @@ Nu cred că acest site ar trebui blocat!</translation>
<translation id="2923469375796950815">Dezactivează noul Dezarhivator ZIP.</translation>
<translation id="2924296707677495905">Transliterație (namaskaram → ನಮಸ್ಕಾರ)</translation>
<translation id="2925966894897775835">Foi de calcul</translation>
+<translation id="2927017729816812676">Stocarea pentru memoria cache</translation>
<translation id="2927657246008729253">Modifică...</translation>
<translation id="2928526264833629376">Continuă în Hangouts</translation>
<translation id="2930644991850369934">A apărut o problemă în timpul descărcării imaginii de recuperare. Conexiunea la rețea a fost pierdută.</translation>
@@ -1732,6 +1740,7 @@ Nu cred că acest site ar trebui blocat!</translation>
<translation id="3396331542604645348">Imprimanta selectată nu este disponibilă sau nu este instalată corect. Verificați imprimanta sau încercați să selectați altă imprimantă.</translation>
<translation id="3399597614303179694">Tastatură macedoneană</translation>
<translation id="340013220407300675">Atacatorii pot încerca să vă fure informațiile de pe <ph name="BEGIN_BOLD" /><ph name="SITE" /><ph name="END_BOLD" /> (de exemplu, parolele, mesajele sau informațiile despre cardurile de credit).</translation>
+<translation id="3401130144947259741">Dacă este activat, evenimentele de urmărire vor fi exportate în Urmărirea evenimentelor Windows (ETW) și pot fi apoi capturate de instrumente cum ar fi UIForETW sau Xperf.</translation>
<translation id="340282674066624"><ph name="DOWNLOAD_RECEIVED" />, <ph name="TIME_LEFT" /></translation>
<translation id="3406605057700382950">&amp;Afișați bara de marcaje</translation>
<translation id="3412265149091626468">Accesează selecția</translation>
@@ -1891,6 +1900,7 @@ Nu cred că acest site ar trebui blocat!</translation>
<translation id="3603385196401704894">Franceză canadiană</translation>
<translation id="3603622770190368340">Obțineți certificatul de rețea</translation>
<translation id="3605780360466892872">Om de afaceri</translation>
+<translation id="3606220979431771195">Turcă-F</translation>
<translation id="3608454375274108141">F10</translation>
<translation id="3608576286259426129">Previzualizare a imaginii utilizatorului</translation>
<translation id="3609138628363401169">Serverul nu acceptă extensia de renegociere TLS.</translation>
@@ -2410,6 +2420,7 @@ Toți utilizatorii trebuie să se deconecteze pentru a continua.</translation>
<translation id="4321136812570927563">{NUM_DOWNLOAD,plural, =1{Continuă descărcarea}few{Continuă descărcările}other{Continuă descărcările}}</translation>
<translation id="4321179778687042513">ctrl</translation>
<translation id="4322394346347055525">Închide celelalte file</translation>
+<translation id="4325378361067528777">Activează modul fundal pentru API-ul Push</translation>
<translation id="4326952458285403282">Dezactivează utilizarea sistemului experimental DirectWrite de afișare a fonturilor.</translation>
<translation id="4326999707196471878">Casetele de dialog din browser pentru afișările setului de instrumente.</translation>
<translation id="4330406155931244378">Activează verificatorul ortografic multilingv</translation>
@@ -2950,6 +2961,8 @@ Apăsați pe orice tastă pentru a continua explorarea.</translation>
<translation id="5148652308299789060">Dezactivați software-ul de rasterizare 3D</translation>
<translation id="5150254825601720210">Nume de server SSL pentru certificat Netscape</translation>
<translation id="5151034238407558331">Din păcate, Google Payments poate fi folosit la acest comerciant numai de cumpărătorii care au o adresă în S.U.A. Dacă locuiești în S.U.A., |modifică adresa de domiciliu în Google Payments| sau plătește fără să folosești Google Payments.</translation>
+<translation id="5151639798712723370">”&gt;
+ Dispozitiv USB-C (portul din dreapta față)</translation>
<translation id="5152451685298621771">(Cont pentru copii)</translation>
<translation id="5154108062446123722">Setări avansate pentru <ph name="PRINTING_DESTINATION" /></translation>
<translation id="5154176924561037127">F8</translation>
@@ -3048,6 +3061,7 @@ Apăsați pe orice tastă pentru a continua explorarea.</translation>
<translation id="5271247532544265821">Comută între modurile de introducere a textului în chineză simplificată și chineză tradițională</translation>
<translation id="5271549068863921519">Salvează parola</translation>
<translation id="5273628206174272911">Navigarea experimentală în istoric ca reacție la derularea suplimentară pe orizontală.</translation>
+<translation id="5275795814002959418"><ph name="COUNT" /> de pe acest site</translation>
<translation id="5275973617553375938">Fișiere recuperate din Google Drive</translation>
<translation id="527605719918376753">Dezactivează sunetul filei</translation>
<translation id="527605982717517565">Permite întotdeauna JavaScript pe <ph name="HOST" /></translation>
@@ -3094,6 +3108,7 @@ Apăsați pe orice tastă pentru a continua explorarea.</translation>
<translation id="5328285148748012771">Accesați toate aplicațiile dvs. din acest lansator ușor de utilizat. Jucați jocuri, comunicați prin chat video, ascultați muzică, editați documente sau obțineți mai multe aplicații din Magazinul web Chrome.</translation>
<translation id="5329858601952122676">&amp;Șterge</translation>
<translation id="5330145655348521461">Aceste fișiere au fost deschise pe alt desktop. Pentru a le vedea, treceți la <ph name="USER_NAME" /> (<ph name="MAIL_ADDRESS" />).</translation>
+<translation id="5331975486040154427">Dispozitiv USB-C (portul din stânga spate)</translation>
<translation id="5332624210073556029">Fus orar:</translation>
<translation id="5334142896108694079">Memorie cache de scripturi</translation>
<translation id="533433379391851622">Versiunea așteptată era „<ph name="EXPECTED_VERSION" />”, dar versiunea a fost „<ph name="NEW_ID" />”.</translation>
@@ -3140,6 +3155,7 @@ Apăsați pe orice tastă pentru a continua explorarea.</translation>
<translation id="539755880180803351">Adnotează formularele web cu predicțiile de introducere din câmpul de completare automată ca text substituent.</translation>
<translation id="5397578532367286026">Datele privind utilizarea și istoricul ale acestui utilizator pot fi examinate de administrator (<ph name="MANAGER_EMAIL" />) pe chrome.com.</translation>
<translation id="5397794290049113714">Dvs.</translation>
+<translation id="5398824043967640339"><ph name="COUNT" /> de pe alte site-uri</translation>
<translation id="5399158067281117682">Codurile PIN nu coincid!</translation>
<translation id="5400640815024374115">Chipul Trusted Platform Module (TPM) este dezactivat sau absent.</translation>
<translation id="5402367795255837559">Braille</translation>
@@ -3964,6 +3980,7 @@ Apăsați pe orice tastă pentru a continua explorarea.</translation>
<translation id="6575251558004911012">Notifică-mă dacă un site solicită acces la cameră (recomandat)</translation>
<translation id="6581162200855843583">Link Disc Google</translation>
<translation id="6583070985841601920">Sunteți conectat(ă) ca <ph name="USER_EMAIL_ADDRESS" />. Sincronizarea este dezactivată de administrator.</translation>
+<translation id="65832705307647870">Populează anticipat pagina Filă nouă cu site-uri populare.</translation>
<translation id="6584878029876017575">Semnare Microsoft pe durata de viață</translation>
<translation id="6585234750898046415">Alege o imagine pentru a fi afișată pentru contul tău pe ecranul de conectare.</translation>
<translation id="6585283250473596934">Se pornește sesiunea publică.</translation>
@@ -4310,6 +4327,7 @@ Apăsați pe orice tastă pentru a continua explorarea.</translation>
<translation id="7092106376816104">Excepții privind ferestrele de tip pop-up</translation>
<translation id="7093866338626856921">Fă schimb de date cu dispozitivele numite: <ph name="HOSTNAMES" /></translation>
<translation id="7096082900368329802">Doriți să descoperiți mai multe funcții extraordinare?</translation>
+<translation id="7098389117866926363">Dispozitiv USB-C (portul din stânga în spate)</translation>
<translation id="7100897339030255923"><ph name="COUNT" /> (de) elemente selectate</translation>
<translation id="7106346894903675391">Cumpărați mai mult spațiu de stocare...</translation>
<translation id="7108338896283013870">Ascunde</translation>
@@ -5088,6 +5106,7 @@ Păstrează fișierul cu cheia într-un loc sigur. Acesta va fi necesar la crear
<translation id="8190193592390505034">Se conectează la <ph name="PROVIDER_NAME" /></translation>
<translation id="8191230140820435481">Gestionează aplicațiile, extensiile și temele dvs.</translation>
<translation id="8191453843330043793">Rezolvitorul proxy-ului V8</translation>
+<translation id="8199491812735365610">Alege un cont pentru a te conecta</translation>
<translation id="8200772114523450471">Reia</translation>
<translation id="8202160505685531999">Reintrodu parola pentru a actualiza profilul <ph name="DEVICE_TYPE" />.</translation>
<translation id="8204086856545141093">Solicitările trimise la server au fost blocate de o politică.</translation>
@@ -5218,6 +5237,7 @@ Păstrează fișierul cu cheia într-un loc sigur. Acesta va fi necesar la crear
<translation id="8381977081675353473">Slovacă</translation>
<translation id="8382645631174981738"><ph name="EXTENSION_NAME" /> a fost instalată la distanță</translation>
<translation id="8382913212082956454">Copiază adresa de &amp;e-mail</translation>
+<translation id="8384113940676655504">Activează o setare Smart Lock care permite Chromebookului să descopere telefoane prin Bluetooth Low Energy pentru a debloca Chromebookul atunci când telefonul se află în apropiere.</translation>
<translation id="8390029840652165810">Asigurați-vă că funcționează conexiunea la rețea. Dacă problema continuă, deconectați-vă și reconectați-vă pentru a actualiza datele de conectare.</translation>
<translation id="8390445751804042000">Permite activarea dispozitivului la primirea anumitor pachete din rețea.</translation>
<translation id="8390449457866780408">Server indisponibil.</translation>
@@ -5304,6 +5324,7 @@ Păstrează fișierul cu cheia într-un loc sigur. Acesta va fi necesar la crear
<translation id="8509646642152301857">Descărcarea dicționarului de verificare ortografică nu a reușit.</translation>
<translation id="8512476990829870887">Opriți procesul</translation>
<translation id="851263357009351303">Permite întotdeauna afișarea de imagini de la <ph name="HOST" /></translation>
+<translation id="8513191386157529469">„<ph name="CLIENT_NAME" />” remediază erorile din acest browser.</translation>
<translation id="8513974249124254369">ChromeVox (feedbackul rostit) este activat. Apăsați pe Ctrl+Alt+Z pentru dezactivare.</translation>
<translation id="8515737884867295000">Autentificarea pe bază de certificat nu a reușit</translation>
<translation id="8518865679229538285">Metodă de introducere pentru tamilă (mașină de scris)</translation>
@@ -5423,6 +5444,7 @@ Păstrează fișierul cu cheia într-un loc sigur. Acesta va fi necesar la crear
<translation id="8677039480012021122">Ștergeți datele și deconectați-vă</translation>
<translation id="8677212948402625567">Restrânge-le pe toate...</translation>
<translation id="8678648549315280022">Gestionați setările pentru descărcare...</translation>
+<translation id="8680251145628383637">Conectează-te pentru a-ți accesa marcajele, istoricul, parolele și alte setări pe toate dispozitivele. În plus, te vei conecta automat la serviciile Google.</translation>
<translation id="8680536109547170164"><ph name="QUERY" />, răspuns, <ph name="ANSWER" /></translation>
<translation id="8680787084697685621">Datele de conectare la cont au expirat.</translation>
<translation id="8684255857039823328">Parola a fost salvată. Accesează-ți parolele de pe orice dispozitiv la <ph name="MANAGEMENT_LINK" />.</translation>
@@ -5478,6 +5500,7 @@ Păstrează fișierul cu cheia într-un loc sigur. Acesta va fi necesar la crear
<translation id="874420130893181774">Metoda de introducere a textului Pinyin pentru chineză tradițională</translation>
<translation id="8744525654891896746">Selectați un avatar pentru utilizatorul monitorizat</translation>
<translation id="8744641000906923997">Romaji</translation>
+<translation id="8744959718895556609">Alege un cont din <ph name="LINK_TEXT" /></translation>
<translation id="8749863574775030885">Accesează dispozitive USB de la un producător necunoscut</translation>
<translation id="8754200782896249056">&lt;p&gt;Când rulezi <ph name="PRODUCT_NAME" /> într-un mediu de desktop acceptat, vor fi utilizate setările de proxy ale sistemului. Cu toate acestea, fie sistemul nu este acceptat, fie a existat o problemă la lansarea configurației sistemului.&lt;/p&gt;
@@ -5598,6 +5621,7 @@ Păstrează fișierul cu cheia într-un loc sigur. Acesta va fi necesar la crear
<translation id="8933960630081805351">&amp;Afișează în Finder</translation>
<translation id="8934732568177537184">Continuați</translation>
<translation id="8938356204940892126">Renunț</translation>
+<translation id="8938800817013097409">Dispozitiv USB-C (portul din dreapta în spate)</translation>
<translation id="8940081510938872932">Computerul dvs. efectuează prea multe lucruri în acest moment. Încercați din nou mai târziu.</translation>
<translation id="8941173171815156065">Revocă permisiunea „<ph name="PERMISSION" />”</translation>
<translation id="8941248009481596111">Conexiunea la acest site este privată.</translation>
diff --git a/chromium/chrome/app/resources/generated_resources_ru.xtb b/chromium/chrome/app/resources/generated_resources_ru.xtb
index a2e6fc44612..70959072a29 100644
--- a/chromium/chrome/app/resources/generated_resources_ru.xtb
+++ b/chromium/chrome/app/resources/generated_resources_ru.xtb
@@ -136,6 +136,8 @@
<translation id="1178581264944972037">Пауза</translation>
<translation id="1179803038870941185"><ph name="URL" /> запрашивает полный контроль над устройствами MIDI.</translation>
<translation id="1181037720776840403">Удалить</translation>
+<translation id="11814323404622888">"&gt;
+ Устройство USB-C (дальний порт справа)</translation>
<translation id="1183083053288481515">Использование сертификата, предоставленного администратором</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>
@@ -329,6 +331,7 @@
<translation id="1468038450257740950">WebGL не поддерживается.</translation>
<translation id="1470719357688513792">Новые настройки файлов cookie вступят в силу после обновления страницы.</translation>
<translation id="14720830734893704">Включает поддержку виртуальной клавиатуры.</translation>
+<translation id="1474079335130556426">Включите фоновый режим для Push API. Браузер Chrome продолжит работать после закрытия всех окон, а также будет автоматически запускаться после загрузки системы (когда это необходимо).</translation>
<translation id="1474339897586437869">Не удалось загрузить <ph name="FILENAME" />. Не хватает пространства на Google Диске.</translation>
<translation id="1476503841242751994">{COUNT,plural, =1{1 пароль}one{# пароль}few{# пароля}many{# паролей}other{# пароля}}</translation>
<translation id="1476949146811612304">Выберите <ph name="BEGIN_LINK" />поисковую систему по умолчанию<ph name="END_LINK" />.</translation>
@@ -653,6 +656,7 @@
<translation id="1918141783557917887">&amp;Мельче</translation>
<translation id="192144045824434199">Активация окон панели, открывающихся за пределами окна браузера. Если панель не активирована, при попытке открыть ее появится всплывающее окно. Панели всегда включены в каналах dev и canary.</translation>
<translation id="1921584744613111023"><ph name="DPI" /> dpi</translation>
+<translation id="1921986354447415460">Турецкая раскладка (Turkish-F)</translation>
<translation id="1923786009776354244">Включить поддержку исходного заголовка STUN WebRTC</translation>
<translation id="1926741348654461781">Включение офлайн-страниц</translation>
<translation id="1929546189971853037">Чтение истории просмотров на всех устройствах, где вы используете этот аккаунт.</translation>
@@ -681,7 +685,7 @@
<translation id="1973277570128718649">Включить медиамаршрутизатор</translation>
<translation id="1973491249112991739">Не удалось скачать плагин <ph name="PLUGIN_NAME" />.</translation>
<translation id="1974043046396539880">Точки распространения списков отзыва сертификатов</translation>
-<translation id="1974060860693918893">Дополнительно</translation>
+<translation id="1974060860693918893">Дополнительные</translation>
<translation id="1974371662733320303">Применение стратегии сброса памяти</translation>
<translation id="1975360744064614709">Отключение аппаратного ускорения для декодирования MJPEG при захвате кадра</translation>
<translation id="197560921582345123">Редактирование</translation>
@@ -851,6 +855,7 @@
<translation id="2231990265377706070">Восклицательный знак</translation>
<translation id="2232876851878324699">Файл содержит один сертификат, который не был импортирован:</translation>
<translation id="2233502537820838181">&amp;Дополнительная информация</translation>
+<translation id="2233587473672843170">Показывать популярные сайты на странице быстрого доступа</translation>
<translation id="223714078860837942">Если на странице не задана четкая политика относительно источника ссылки, при установке этого флага в заголовке referer для встречных запросов будет содержаться меньше информации.</translation>
<translation id="2238379619048995541">Данные о работе процессора на разных ступенях частоты</translation>
<translation id="2239921694246509981">Добавить управляемый профиль</translation>
@@ -927,6 +932,7 @@
<translation id="2326606747676847821">Режим инкогнито</translation>
<translation id="2326931316514688470">Пере&amp;загрузить приложение</translation>
<translation id="2327492829706409234">Включить приложение</translation>
+<translation id="2329597144923131178">Войдите, чтобы синхронизировать закладки, пароли, историю и т. д. на всех устройствах.</translation>
<translation id="2332131598580221120">Открыть в Интернет-магазине</translation>
<translation id="2332742915001411729">Масштаб по умолчанию</translation>
<translation id="2335122562899522968">Эта страница установила файлы cookie.</translation>
@@ -1317,6 +1323,7 @@ http://www.chromium.org/chromium-os/how-tos-and-troubleshooting/debugging-featur
<translation id="2838379631617906747">Установка...</translation>
<translation id="2841837950101800123">Поставщик</translation>
<translation id="2843806747483486897">Изменить настройки по умолчанию…</translation>
+<translation id="2844169650293029770">Устройство USB-C (ближний порт слева)</translation>
<translation id="2845382757467349449">Всегда показывать панель закладок</translation>
<translation id="2846816712032308263">Быстрое закрытие окон и вкладок – JS-обработчик "onunload" для вкладки выполняется независимо от интерфейса пользователя.</translation>
<translation id="284970761985428403"><ph name="ASCII_NAME" /> (<ph name="UNICODE_NAME" />)</translation>
@@ -1381,6 +1388,7 @@ http://www.chromium.org/chromium-os/how-tos-and-troubleshooting/debugging-featur
<translation id="2923469375796950815">Отключить новый Распаковщик ZIP</translation>
<translation id="2924296707677495905">Транслитерация (namaskaram → ನಮಸ್ಕಾರ)</translation>
<translation id="2925966894897775835">Таблицы</translation>
+<translation id="2927017729816812676">CacheStorage</translation>
<translation id="2927657246008729253">Изменить...</translation>
<translation id="2928526264833629376">Перейти к Hangouts</translation>
<translation id="2930644991850369934">При скачивании образа для восстановления произошла ошибка. Нет подключения к сети.</translation>
@@ -1721,6 +1729,7 @@ http://www.chromium.org/chromium-os/how-tos-and-troubleshooting/debugging-featur
<translation id="3396331542604645348">Принтер недоступен или установлен неправильно. Проверьте его или выберите другой.</translation>
<translation id="3399597614303179694">Македонская раскладка</translation>
<translation id="340013220407300675">Злоумышленники могут пытаться похитить ваши данные с сайта <ph name="BEGIN_BOLD" /><ph name="SITE" /><ph name="END_BOLD" /> (например, пароли, сообщения или номера банковских карт).</translation>
+<translation id="3401130144947259741">Экспортирует отслеженные события в ETW. Затем их можно сохранить с помощью UIForETW или XPerf.</translation>
<translation id="340282674066624"><ph name="DOWNLOAD_RECEIVED" />, <ph name="TIME_LEFT" /></translation>
<translation id="3406605057700382950">Показывать панель &amp;закладок</translation>
<translation id="3412265149091626468">Перейти к выделенному</translation>
@@ -1880,6 +1889,7 @@ http://www.chromium.org/chromium-os/how-tos-and-troubleshooting/debugging-featur
<translation id="3603385196401704894">Канадская (французская)</translation>
<translation id="3603622770190368340">Получение сетевого сертификата</translation>
<translation id="3605780360466892872">Бизнесмен</translation>
+<translation id="3606220979431771195">Турецкая раскладка</translation>
<translation id="3608454375274108141">F10</translation>
<translation id="3608576286259426129">Предварительный просмотр фото</translation>
<translation id="3609138628363401169">Сервер не поддерживает возобновление подключения TLS.</translation>
@@ -2400,6 +2410,7 @@ http://www.chromium.org/chromium-os/how-tos-and-troubleshooting/debugging-featur
<translation id="4321136812570927563">{NUM_DOWNLOAD,plural, =1{Продолжить скачивание}one{Продолжить скачивание}few{Продолжить скачивание}many{Продолжить скачивание}other{Продолжить скачивание}}</translation>
<translation id="4321179778687042513">ctrl</translation>
<translation id="4322394346347055525">Закрыть другие вкладки</translation>
+<translation id="4325378361067528777">Включить Push API в фоновом режиме</translation>
<translation id="4326952458285403282">Отключение тестовой системы рендеринга шрифтов DirectWrite.</translation>
<translation id="4326999707196471878">Окна браузера на базе Toolkit-Views</translation>
<translation id="4330406155931244378">Включить проверку правописания на нескольких языках</translation>
@@ -2934,6 +2945,8 @@ http://www.chromium.org/chromium-os/how-tos-and-troubleshooting/debugging-featur
<translation id="5148652308299789060">Отключить растеризатор 3D-программ</translation>
<translation id="5150254825601720210">Имя сервера SSL-сертификатов Netscape</translation>
<translation id="5151034238407558331">К сожалению, расчеты с этим продавцом в Google Payments доступны только для покупателей, указавших свой адрес в США. Если вы резидент США, |измените свой домашний адрес в Google Payments| или оплатите покупку другим способом.</translation>
+<translation id="5151639798712723370">"&gt;
+Устройство USB-C (ближний порт справа)</translation>
<translation id="5152451685298621771">(детский аккаунт)</translation>
<translation id="5154108062446123722"><ph name="PRINTING_DESTINATION" /> – дополнительные настройки</translation>
<translation id="5154176924561037127">F8</translation>
@@ -3032,6 +3045,7 @@ http://www.chromium.org/chromium-os/how-tos-and-troubleshooting/debugging-featur
<translation id="5271247532544265821">Переключить режим упрощенного/традиционного китайского письма</translation>
<translation id="5271549068863921519">Сохранить пароль</translation>
<translation id="5273628206174272911">Обеспечивает перемещение по истории просмотра при достижении конца горизонтальной прокрутки.</translation>
+<translation id="5275795814002959418"><ph name="COUNT" /> на этом сайте</translation>
<translation id="5275973617553375938">Восстановленные файлы с Google Диска</translation>
<translation id="527605719918376753">Отключение звука на вкладке</translation>
<translation id="527605982717517565">Всегда разрешать JavaScript для сайта <ph name="HOST" /></translation>
@@ -3078,6 +3092,7 @@ http://www.chromium.org/chromium-os/how-tos-and-troubleshooting/debugging-featur
<translation id="5328285148748012771">На этой панели запуска доступны все ваши приложения. Воспользуйтесь ей, когда захотите поиграть, пообщаться в видеочате, послушать музыку, открыть документ или скачать другие приложения из Интернет-магазина Chrome.</translation>
<translation id="5329858601952122676">&amp;Удалить</translation>
<translation id="5330145655348521461">Эти файлы открыты на другом рабочем столе. Чтобы увидеть их, переключитесь на профиль пользователя <ph name="USER_NAME" /> (<ph name="MAIL_ADDRESS" />).</translation>
+<translation id="5331975486040154427">Устройство USB-C (дальний порт слева)</translation>
<translation id="5332624210073556029">Часовой пояс:</translation>
<translation id="5334142896108694079">Кеш скрипта</translation>
<translation id="533433379391851622">Ожидаемая версия: <ph name="EXPECTED_VERSION" />, полученная версия: <ph name="NEW_ID" />.</translation>
@@ -3124,6 +3139,7 @@ http://www.chromium.org/chromium-os/how-tos-and-troubleshooting/debugging-featur
<translation id="539755880180803351">Добавляет подсказки автозаполнения в веб-формы в виде текста-заполнителя.</translation>
<translation id="5397578532367286026">Менеджер (<ph name="MANAGER_EMAIL" />) может просматривать данные об использовании и историю этого профиля на сайте chrome.com.</translation>
<translation id="5397794290049113714">Вы</translation>
+<translation id="5398824043967640339"><ph name="COUNT" /> на других сайтах</translation>
<translation id="5399158067281117682">PIN-коды не совпадают.</translation>
<translation id="5400640815024374115">Микросхема доверенного платформенного модуля отключена или отсутствует.</translation>
<translation id="5402367795255837559">Шрифт Брайля</translation>
@@ -3948,6 +3964,7 @@ http://www.chromium.org/chromium-os/how-tos-and-troubleshooting/debugging-featur
<translation id="6575251558004911012">Спрашивать, если сайт пытается получить доступ к камере (рекомендуется)</translation>
<translation id="6581162200855843583">Ссылка на Google Диск</translation>
<translation id="6583070985841601920">Выполнен вход в аккаунт <ph name="USER_EMAIL_ADDRESS" />. Синхронизация отключена администратором.</translation>
+<translation id="65832705307647870">Показывать популярные сайты на странице быстрого доступа.</translation>
<translation id="6584878029876017575">Бессрочная подписка Microsoft</translation>
<translation id="6585234750898046415">Выберите картинку, которая будет отображаться в вашем аккаунте на экране входа.</translation>
<translation id="6585283250473596934">Переход в сеанс общего доступа.</translation>
@@ -4289,6 +4306,7 @@ http://www.chromium.org/chromium-os/how-tos-and-troubleshooting/debugging-featur
<translation id="7092106376816104">Исключения для всплывающих окон</translation>
<translation id="7093866338626856921">Обмен данными с устройствами <ph name="HOSTNAMES" /></translation>
<translation id="7096082900368329802">Хотите узнать больше о функциях Chrome?</translation>
+<translation id="7098389117866926363">Устройство USB-C (порт слева на задней панели)</translation>
<translation id="7100897339030255923">Выбрано элементов: <ph name="COUNT" /></translation>
<translation id="7106346894903675391">Приобрести дополнительное пространство…</translation>
<translation id="7108338896283013870">Скрыть</translation>
@@ -5057,6 +5075,7 @@ http://www.chromium.org/chromium-os/how-tos-and-troubleshooting/debugging-featur
<translation id="8190193592390505034">Соединение с <ph name="PROVIDER_NAME" /></translation>
<translation id="8191230140820435481">Управление приложениями, расширениями и темами</translation>
<translation id="8191453843330043793">Прокси-сервер V8</translation>
+<translation id="8199491812735365610">Выберите аккаунт</translation>
<translation id="8200772114523450471">Возобновить</translation>
<translation id="8202160505685531999">Чтобы обновить профиль устройства <ph name="DEVICE_TYPE" />, введите пароль ещё раз</translation>
<translation id="8204086856545141093">Запросы к серверу заблокированы одной из политик.</translation>
@@ -5187,6 +5206,7 @@ http://www.chromium.org/chromium-os/how-tos-and-troubleshooting/debugging-featur
<translation id="8381977081675353473">словацкая</translation>
<translation id="8382645631174981738"><ph name="EXTENSION_NAME" />: установка выполнена удаленно</translation>
<translation id="8382913212082956454">Копировать &amp;адрес электронной почты</translation>
+<translation id="8384113940676655504">Включает настройку Smart Lock. После этого устройство Chromebook сможет находить расположенные поблизости телефоны, используя Bluetooth с низким энергопотреблением. Когда такой телефон найден, с устройства Chromebook снимается блокировка.</translation>
<translation id="8390029840652165810">Проверьте подключение к сети. Если проблема повторится, выйдите и снова войдите, чтобы обновить свои учетные данные.</translation>
<translation id="8390445751804042000">Вывод устройства из спящего режима путем передачи сетевых пакетов.</translation>
<translation id="8390449457866780408">Сервер недоступен.</translation>
@@ -5273,6 +5293,7 @@ http://www.chromium.org/chromium-os/how-tos-and-troubleshooting/debugging-featur
<translation id="8509646642152301857">Не удалось скачать словарь проверки правописания</translation>
<translation id="8512476990829870887">Завершить процесс</translation>
<translation id="851263357009351303">Всегда показывать изображения с сайта <ph name="HOST" /></translation>
+<translation id="8513191386157529469"><ph name="CLIENT_NAME" /> отлаживает этот браузер.</translation>
<translation id="8513974249124254369">Голосовое сопровождение ChromeVox включено. Чтобы отключить его, нажмите CTRL+ALT+Z.</translation>
<translation id="8515737884867295000">Аутентификация на основе сертификата завершилась со сбоем</translation>
<translation id="8518865679229538285">Способ ввода для тамильского языка (машинописный)</translation>
@@ -5392,6 +5413,7 @@ http://www.chromium.org/chromium-os/how-tos-and-troubleshooting/debugging-featur
<translation id="8677039480012021122">Удалить данные и отключить</translation>
<translation id="8677212948402625567">Свернуть все...</translation>
<translation id="8678648549315280022">Настройки скачивания…</translation>
+<translation id="8680251145628383637">Войдите в аккаунт, чтобы синхронизировать закладки, историю, пароли и другие настройки на всех устройствах. Одновременно будет выполнена авторизация в сервисах Google.</translation>
<translation id="8680536109547170164"><ph name="QUERY" />, ответ, <ph name="ANSWER" /></translation>
<translation id="8680787084697685621">Данные для входа в аккаунт устарели.</translation>
<translation id="8684255857039823328">Пароль сохранен. Чтобы получить доступ к своим паролям с любого устройства, перейдите по этой ссылке: <ph name="MANAGEMENT_LINK" />.</translation>
@@ -5447,6 +5469,7 @@ http://www.chromium.org/chromium-os/how-tos-and-troubleshooting/debugging-featur
<translation id="874420130893181774">Пиньинь</translation>
<translation id="8744525654891896746">Выберите аватар для этого контролируемого профиля</translation>
<translation id="8744641000906923997">Ромадзи</translation>
+<translation id="8744959718895556609">Выберите аккаунт для входа с помощью <ph name="LINK_TEXT" /></translation>
<translation id="8749863574775030885">Доступ к USB-устройствам от неизвестного поставщика</translation>
<translation id="8754200782896249056">&lt;p&gt;При работе <ph name="PRODUCT_NAME" /> в поддерживаемой среде на компьютере используются системные настройки прокси-сервера. Однако либо ваша система не поддерживается, либо возникли неполадки при запуске системной конфигурации.&lt;/p&gt;
@@ -5567,6 +5590,7 @@ http://www.chromium.org/chromium-os/how-tos-and-troubleshooting/debugging-featur
<translation id="8933960630081805351">Показать в Finder</translation>
<translation id="8934732568177537184">Продолжить</translation>
<translation id="8938356204940892126">Отменить запуск</translation>
+<translation id="8938800817013097409">Устройство USB-C (порт справа на задней панели)</translation>
<translation id="8940081510938872932">В данный момент выполняется слишком много процессов. Повторите попытку позже.</translation>
<translation id="8941173171815156065">Отозвать разрешение "<ph name="PERMISSION" />"</translation>
<translation id="8941248009481596111">Подключение к веб-сайту защищено</translation>
diff --git a/chromium/chrome/app/resources/generated_resources_sk.xtb b/chromium/chrome/app/resources/generated_resources_sk.xtb
index a6b805077da..53fada6980e 100644
--- a/chromium/chrome/app/resources/generated_resources_sk.xtb
+++ b/chromium/chrome/app/resources/generated_resources_sk.xtb
@@ -136,6 +136,8 @@
<translation id="1178581264944972037">Pozastaviť</translation>
<translation id="1179803038870941185">Stránka <ph name="URL" /> chce získať úplnú kontrolu nad vašimi zariadeniami MIDI.</translation>
<translation id="1181037720776840403">Odstrániť</translation>
+<translation id="11814323404622888">"&gt;
+ Zariadenie USB-C (port vpravo vzadu)</translation>
<translation id="1183083053288481515">Používa sa certifikát, ktorý poskytol správca</translation>
<translation id="1183237619868651138">Súbor <ph name="EXTERNAL_CRX_FILE" /> nie je možné nainštalovať v miestnej vyrovnávacej pamäti</translation>
<translation id="1185924365081634987">Ak chcete túto chybu siete odstrániť, môžete tiež skúsiť <ph name="GUEST_SIGNIN_LINK_START" />prehliadanie v režime hosťa<ph name="GUEST_SIGNIN_LINK_END" />.</translation>
@@ -330,6 +332,7 @@
<translation id="1468038450257740950">Rozhranie WebGL nie je podporované.</translation>
<translation id="1470719357688513792">Nové nastavenia súborov cookie sa použijú po obnovení stránky.</translation>
<translation id="14720830734893704">Povolí podporu virtuálnej klávesnice.</translation>
+<translation id="1474079335130556426">Povoľte režim na pozadí pre rozhranie Push API. Prehliadaču Chrome týmto povolíte, aby zostal spustený aj po zatvorení posledného okna a tiež aby sa aktivoval pri spustení operačného systému, ak ho rozhranie Push API potrebuje.</translation>
<translation id="1474339897586437869">Súbor <ph name="FILENAME" /> nebol nahraný. Na Disku Google nemáte dostatok voľného miesta.</translation>
<translation id="1476503841242751994">{COUNT,plural, =1{1 heslo}few{# heslá}many{# hesla}other{# hesiel}}</translation>
<translation id="1476949146811612304">Nastavte, ktorý vyhľadávač sa použije pri vyhľadávaní vo <ph name="BEGIN_LINK" />všeobecnom poli<ph name="END_LINK" />.</translation>
@@ -654,6 +657,7 @@
<translation id="1918141783557917887">&amp;Menší</translation>
<translation id="192144045824434199">Povolí okná Panela, ktoré sa otvárajú mimo rámca prehliadača. Ak toto nastavenie nebude povolené, pokusy o otvorenie Panela otvoria kontextové okná. Panely sú vždy povolené vo verziách pre vývojárov a v testovacej verzii canary.</translation>
<translation id="1921584744613111023"><ph name="DPI" /> dpi</translation>
+<translation id="1921986354447415460">Turecká klávesnica (typ F)</translation>
<translation id="1923786009776354244">Povolenie podpory hlavičky Origin zo služby WebRTC Stun</translation>
<translation id="1926741348654461781">Povolenie stránok offline</translation>
<translation id="1929546189971853037">Čítať históriu prehliadania na všetkých prihlásených zariadeniach</translation>
@@ -854,6 +858,7 @@ Do úplného nabitia zostáva: <ph name="HOUR" />:<ph name="MINUTE" /></translat
<translation id="2231990265377706070">Výkričník</translation>
<translation id="2232876851878324699">Súbor obsahoval jeden certifikát, ktorý nebol importovaný:</translation>
<translation id="2233502537820838181">&amp;Viac informácií</translation>
+<translation id="2233587473672843170">Zobrazenie populárnych webov na stránke na novej karte</translation>
<translation id="223714078860837942">Ak stránka nenastavila explicitné pravidlá pre sprostredkovateľov, nastavením tohto príznaku obmedzíte množstvo informácií, ktoré sa budú odosielať v hlavičke „referer“ pre medzidoménové žiadosti.</translation>
<translation id="2238379619048995541">Údaje stavu frekvencie</translation>
<translation id="2239921694246509981">Pridať kontrolovanú osobu</translation>
@@ -932,6 +937,7 @@ s ostatnými, a to všetko na jednom mieste.<ph name="MARKUP_9" /></translation>
<translation id="2326606747676847821">Režim inkognito</translation>
<translation id="2326931316514688470">&amp;Znova načítať aplikáciu</translation>
<translation id="2327492829706409234">Povoliť aplikáciu</translation>
+<translation id="2329597144923131178">Prihláste sa a získajte tak svoje záložky, históriu, heslá a ďalšie nastavenia na všetkých svojich zariadeniach.</translation>
<translation id="2332131598580221120">Zobraziť v obchode</translation>
<translation id="2332742915001411729">Obnoviť na predvolené hodnoty</translation>
<translation id="2335122562899522968">Táto stránka nastavila súbory cookie.</translation>
@@ -1320,6 +1326,7 @@ Tieto webové stránky by podľa mňa nemali byť blokované.</translation>
<translation id="2838379631617906747">Inštalácia</translation>
<translation id="2841837950101800123">Poskytovateľ</translation>
<translation id="2843806747483486897">Zmeniť predvolenú akciu...</translation>
+<translation id="2844169650293029770">Zariadenie USB-C (port vľavo vpredu)</translation>
<translation id="2845382757467349449">Vždy zobraziť panel so záložkami</translation>
<translation id="2846816712032308263">Povoliť rýchle zatváranie kariet alebo okien – táto možnosť spustí ovládač karty onunload v jazyku JavaScript nezávisle od hlavného používateľského rozhrania.</translation>
<translation id="284970761985428403"><ph name="ASCII_NAME" /> (<ph name="UNICODE_NAME" />)</translation>
@@ -1384,6 +1391,7 @@ Tieto webové stránky by podľa mňa nemali byť blokované.</translation>
<translation id="2923469375796950815">Zakázať nový nástroj na rozbaľovanie priečinkov ZIP.</translation>
<translation id="2924296707677495905">Prepis (namaskaram → ನಮಸ್ಕಾರ)</translation>
<translation id="2925966894897775835">Tabuľky</translation>
+<translation id="2927017729816812676">Úložisko vyrovnávacej pamäte</translation>
<translation id="2927657246008729253">Zmeniť...</translation>
<translation id="2928526264833629376">Pokračovať do služby Hangouts</translation>
<translation id="2930644991850369934">Pri sťahovaní obrazu na obnovenie sa vyskytol problém. Sieťové pripojenie bolo prerušené.</translation>
@@ -1726,6 +1734,7 @@ Tieto webové stránky by podľa mňa nemali byť blokované.</translation>
<translation id="3396331542604645348">Vybratá tlačiareň nie je k dispozícii alebo nie je správne nainštalovaná. Skontrolujte ju alebo vyberte inú.</translation>
<translation id="3399597614303179694">Macedónska klávesnica</translation>
<translation id="340013220407300675">Útočníci sa možno pokúšajú ukradnúť vaše informácie zo stránok <ph name="BEGIN_BOLD" /><ph name="SITE" /><ph name="END_BOLD" /> (napríklad heslá, správy alebo informácie o kreditných kartách).</translation>
+<translation id="3401130144947259741">Ak je toto nastavenie povolené, udalosti sledovania budú exportované do služby ETW (sledovanie udalostí pre systém Windows) a môžu byť zaznamenané nástrojom, ako je UIForETW alebo Xperf.</translation>
<translation id="340282674066624"><ph name="DOWNLOAD_RECEIVED" />, <ph name="TIME_LEFT" /></translation>
<translation id="3406605057700382950">&amp;Zobraziť panel so záložkami</translation>
<translation id="3412265149091626468">Prejsť na výber</translation>
@@ -1885,6 +1894,7 @@ Tieto webové stránky by podľa mňa nemali byť blokované.</translation>
<translation id="3603385196401704894">Kanadská francúzska klávesnica</translation>
<translation id="3603622770190368340">Získanie certifkátu siete</translation>
<translation id="3605780360466892872">Manažér</translation>
+<translation id="3606220979431771195">Turecká (typ F)</translation>
<translation id="3608454375274108141">F10</translation>
<translation id="3608576286259426129">Ukážka obrázka používateľa</translation>
<translation id="3609138628363401169">Server nepodporuje rozšírenie opätovného vyjednávania TLS.</translation>
@@ -2405,6 +2415,7 @@ Všetci používatelia sa musia odhlásiť a až potom môžu pokračovať.</tra
<translation id="4321136812570927563">{NUM_DOWNLOAD,plural, =1{Pokračovať v sťahovaní}few{Pokračovať v sťahovaní}many{Pokračovať v sťahovaní}other{Pokračovať v sťahovaní}}</translation>
<translation id="4321179778687042513">ctrl</translation>
<translation id="4322394346347055525">Zatvoriť ostatné karty</translation>
+<translation id="4325378361067528777">Povolenie režimu na pozadí pre rozhranie Push API</translation>
<translation id="4326952458285403282">Zakáže použitie experimentálneho systému vykresľovania písma DirectWrite.</translation>
<translation id="4326999707196471878">Dialógové okná prehliadača založené na prvku Toolkit-Views</translation>
<translation id="4330406155931244378">Povoliť viacjazyčnú kontrolu pravopisu</translation>
@@ -2945,6 +2956,8 @@ Ak chcete pokračovať v práci, stlačte ľubovoľný kláves.</translation>
<translation id="5148652308299789060">Zakázať softvérový rasterizér 3D</translation>
<translation id="5150254825601720210">Netscape – názov servera SSL certifikátu</translation>
<translation id="5151034238407558331">U tohto obchodníka môžu službu Google Payments používať iba kupujúci s adresou v Spojených štátoch. Ak bývate v Spojených štátoch, zmeňte si v službe Google Payments adresu bydliska alebo zaplaťte bez použitia služby Google Payments.</translation>
+<translation id="5151639798712723370">"&gt;
+ Zariadenie USB-C (port vpravo vpredu)</translation>
<translation id="5152451685298621771">(Detský účet)</translation>
<translation id="5154108062446123722">Rozšírené nastavenia pre <ph name="PRINTING_DESTINATION" /></translation>
<translation id="5154176924561037127">F8</translation>
@@ -3043,6 +3056,7 @@ Ak chcete pokračovať v práci, stlačte ľubovoľný kláves.</translation>
<translation id="5271247532544265821">Prepínať medzi režimami zjednodušenej a tradičnej čínštiny</translation>
<translation id="5271549068863921519">Uložiť heslo</translation>
<translation id="5273628206174272911">Experimentálna navigácia v histórii pri posúvaní vo vodorovnom smere.</translation>
+<translation id="5275795814002959418"><ph name="COUNT" /> z tohto webu</translation>
<translation id="5275973617553375938">Obnovené súbory z Disku Google</translation>
<translation id="527605719918376753">Stlmiť kartu</translation>
<translation id="527605982717517565">Vždy povoliť jazyk JavaScript na stránkach <ph name="HOST" /></translation>
@@ -3089,6 +3103,7 @@ Ak chcete pokračovať v práci, stlačte ľubovoľný kláves.</translation>
<translation id="5328285148748012771">Z tohto praktického spúšťača môžete pristupovať do všetkých aplikácií. Hrajte sa hry, uskutočňujte videohovory, počúvajte hudbu, upravujte dokumenty alebo získajte ďalšie aplikácie z Internetového obchodu Chrome.</translation>
<translation id="5329858601952122676">&amp;Odstrániť</translation>
<translation id="5330145655348521461">Tieto súbory sú otvorené na inej pracovnej ploche. Ak ich chcete zobraziť, prejdite do profilu <ph name="USER_NAME" /> (<ph name="MAIL_ADDRESS" />).</translation>
+<translation id="5331975486040154427">Zariadenie USB-C (port vľavo vzadu)</translation>
<translation id="5332624210073556029">Časová zóna:</translation>
<translation id="5334142896108694079">Vyrovnávacia pamäť skriptov</translation>
<translation id="533433379391851622">Očakávaná verzia bola „<ph name="EXPECTED_VERSION" />“. Skutočná verzia bola „<ph name="NEW_ID" />“.</translation>
@@ -3135,6 +3150,7 @@ Ak chcete pokračovať v práci, stlačte ľubovoľný kláves.</translation>
<translation id="539755880180803351">Pridá k webovým formulárom anotácie tak, že ako zástupný text vloží typ poľa predpovedaný funkciou Automatické dopĺňanie.</translation>
<translation id="5397578532367286026">Aktivitu a históriu tohto používateľa môže skontrolovať správca (<ph name="MANAGER_EMAIL" />) na adrese chrome.com.</translation>
<translation id="5397794290049113714">Vy</translation>
+<translation id="5398824043967640339"><ph name="COUNT" /> z iných webov</translation>
<translation id="5399158067281117682">Kódy PIN sa nezhodujú.</translation>
<translation id="5400640815024374115">Čip modulu TPM (Trusted Platform Module) je zakázaný alebo chýba.</translation>
<translation id="5402367795255837559">Braillovo písmo</translation>
@@ -3961,6 +3977,7 @@ Niektoré funkcie nemusia byť k dispozícii. Skontrolujte, či profil existuje
<translation id="6575251558004911012">Opýtať sa, keď stránky požadujú prístup k vašej kamere (odporúčané)</translation>
<translation id="6581162200855843583">Odkaz na službu Disk Google</translation>
<translation id="6583070985841601920">Prihlásený/-á ako <ph name="USER_EMAIL_ADDRESS" />. Synchronizáciu zakázal váš správca.</translation>
+<translation id="65832705307647870">Vložte populárne weby na stránku na novej karte</translation>
<translation id="6584878029876017575">Podpisovanie s neobmedzenou platnosťou spoločnosti Microsoft</translation>
<translation id="6585234750898046415">Vyberte si obrázok pre svoj účet, ktorý sa zobrazí na obrazovke prihlásenia.</translation>
<translation id="6585283250473596934">Vstupuje sa do verejnej relácie.</translation>
@@ -4303,6 +4320,7 @@ Niektoré funkcie nemusia byť k dispozícii. Skontrolujte, či profil existuje
<translation id="7092106376816104">Výnimky kontextových okien</translation>
<translation id="7093866338626856921">Vymieňať údaje so zariadeniami s nasledujúcimi názvami: <ph name="HOSTNAMES" /></translation>
<translation id="7096082900368329802">Chcete objaviť viac skvelých funkcií?</translation>
+<translation id="7098389117866926363">Zariadenie USB-C (ľavý port vzadu)</translation>
<translation id="7100897339030255923">Počet vybratých položiek: <ph name="COUNT" /></translation>
<translation id="7106346894903675391">Kúpiť väčší ukladací priestor...</translation>
<translation id="7108338896283013870">Skryť</translation>
@@ -5071,6 +5089,7 @@ Súbor kľúča uložte na bezpečné miesto. Budete ho potrebovať na vytvoreni
<translation id="8190193592390505034">Prebieha pripájanie na stránku <ph name="PROVIDER_NAME" /></translation>
<translation id="8191230140820435481">Spravovať vaše aplikácie, rozšírenia a motívy</translation>
<translation id="8191453843330043793">V8 Proxy Resolver</translation>
+<translation id="8199491812735365610">Výber účtu na prihlásenie</translation>
<translation id="8200772114523450471">Pokračovať</translation>
<translation id="8202160505685531999">Zadajte znova svoje heslo a aktualizujte tak profil zariadenia <ph name="DEVICE_TYPE" />.</translation>
<translation id="8204086856545141093">Žiadosti odoslané serveru boli zablokované pravidlami.</translation>
@@ -5202,6 +5221,7 @@ Prebieha výpočet času do úplného nabitia</translation>
<translation id="8381977081675353473">slovenčina</translation>
<translation id="8382645631174981738">Rozšírenie <ph name="EXTENSION_NAME" /> bolo nainštalované vzdialene</translation>
<translation id="8382913212082956454">Kopírovať &amp;e-mailovú adresu</translation>
+<translation id="8384113940676655504">Povolí nastavenie funkcie Smart Lock, ktorá umožňuje Chromebooku objavovať telefóny pomocou rozhrania Bleutooth Low Energy s cieľom odomknúť Chromebook, keď sa v blízkosti nachádza telefón.</translation>
<translation id="8390029840652165810">Skontrolujte, či máte pripojenie k sieti a ak problém pretrváva, obnovte svoje poverenia tým, že sa odhlásite a znova prihlásite.</translation>
<translation id="8390445751804042000">Tento príznak povolí prebudenie zariadenia pri prijatí paketov siete.</translation>
<translation id="8390449457866780408">Server je nedostupný.</translation>
@@ -5288,6 +5308,7 @@ Prebieha výpočet času do úplného nabitia</translation>
<translation id="8509646642152301857">Sťahovanie slovníka na kontrolu pravopisu zlyhalo.</translation>
<translation id="8512476990829870887">Ukončiť proces</translation>
<translation id="851263357009351303">Vždy povoliť stránkam <ph name="HOST" /> zobrazovať obrázky</translation>
+<translation id="8513191386157529469"><ph name="CLIENT_NAME" /> ladí tento prehliadač.</translation>
<translation id="8513974249124254369">Funkcia ChromeVox (hlasová spätná väzba) je povolená. Zakážete ju kombináciou klávesov Ctrl+Alt+Z.</translation>
<translation id="8515737884867295000">Overenie pomocou certifikátu zlyhalo</translation>
<translation id="8518865679229538285">Metóda vstupu tamilčiny (písací stroj)</translation>
@@ -5407,6 +5428,7 @@ Prebieha výpočet času do úplného nabitia</translation>
<translation id="8677039480012021122">Vymazať údaje a odpojiť</translation>
<translation id="8677212948402625567">Zbaliť všetky...</translation>
<translation id="8678648549315280022">Spravovať nastavenia stiahnutia...</translation>
+<translation id="8680251145628383637">Prihláste sa, aby ste získali svoje karty, záložky, históriu a ďalšie nastavenia na všetkých zariadeniach. Navyše budete automaticky prihlásený/-á do služieb Google.</translation>
<translation id="8680536109547170164"><ph name="QUERY" />, odpoveď, <ph name="ANSWER" /></translation>
<translation id="8680787084697685621">Informácie o prihlásení do účtu sú neaktuálne.</translation>
<translation id="8684255857039823328">Heslo bolo uložené. K heslám môžete pristupovať v ľubovoľnom zariadení na adrese <ph name="MANAGEMENT_LINK" />.</translation>
@@ -5462,6 +5484,7 @@ Prebieha výpočet času do úplného nabitia</translation>
<translation id="874420130893181774">Metóda vstupu tradičnej Pchin-jin</translation>
<translation id="8744525654891896746">Vyberte avatar pre tohto kontrolovaného používateľa</translation>
<translation id="8744641000906923997">Romaji</translation>
+<translation id="8744959718895556609">Vyberte účet zo svojej funkcie <ph name="LINK_TEXT" /></translation>
<translation id="8749863574775030885">Prístup k zariadeniam USB od neznámeho dodávateľa</translation>
<translation id="8754200782896249056">&lt;p&gt;Pri spustení aplikácie <ph name="PRODUCT_NAME" /> v podporovanom prostredí počítača sa použijú systémové nastavenia servera proxy. Váš systém však nie je podporovaný alebo sa pri spúšťaní konfigurácie vášho systému vyskytol problém.&lt;/p&gt;
@@ -5582,6 +5605,7 @@ Prebieha výpočet času do úplného nabitia</translation>
<translation id="8933960630081805351">&amp;Zobraziť v aplikácii Finder</translation>
<translation id="8934732568177537184">Pokračovať</translation>
<translation id="8938356204940892126">Vzdávam sa</translation>
+<translation id="8938800817013097409">Zariadenie USB-C (pravý port vzadu)</translation>
<translation id="8940081510938872932">Počítač momentálne vykonáva priveľa úloh. Skúste to znova neskôr.</translation>
<translation id="8941173171815156065">Odvolať povolenie „<ph name="PERMISSION" />“</translation>
<translation id="8941248009481596111">Vaše pripojenie k týmto stránkam je súkromné.</translation>
diff --git a/chromium/chrome/app/resources/generated_resources_sl.xtb b/chromium/chrome/app/resources/generated_resources_sl.xtb
index 69080705c87..fb9c13e7d94 100644
--- a/chromium/chrome/app/resources/generated_resources_sl.xtb
+++ b/chromium/chrome/app/resources/generated_resources_sl.xtb
@@ -136,6 +136,8 @@
<translation id="1178581264944972037">Prekini</translation>
<translation id="1179803038870941185"><ph name="URL" /> želi pridobiti popolni nadzor nad vašimi napravami MIDI.</translation>
<translation id="1181037720776840403">Odstrani</translation>
+<translation id="11814323404622888">"&gt;
+ Naprava USB-C (vrata desno zadaj)</translation>
<translation id="1183083053288481515">Uporabljeno je potrdilo skrbnika</translation>
<translation id="1183237619868651138">Datoteke <ph name="EXTERNAL_CRX_FILE" /> ni mogoče namestiti v lokalnem predpomnilniku.</translation>
<translation id="1185924365081634987">Če želite odpraviti to omrežno napako, lahko prav tako poskusite <ph name="GUEST_SIGNIN_LINK_START" />brskati kot gost<ph name="GUEST_SIGNIN_LINK_END" />.</translation>
@@ -329,6 +331,7 @@
<translation id="1468038450257740950">WebGL ni podprt.</translation>
<translation id="1470719357688513792">Nove nastavitve za piškotke bodo začele veljati, ko znova naložite stran.</translation>
<translation id="14720830734893704">Omogočanje podpore za virtualno tipkovnico.</translation>
+<translation id="1474079335130556426">Omogočanje načina v ozadju za API Push. Chromu omogoča, da se po zaprtju zadnjega okna še naprej izvaja in zažene ob zagonu operacijskega sistema, če ga API Push potrebuje.</translation>
<translation id="1474339897586437869">Datoteka »<ph name="FILENAME" />« ni bila naložena. V Googlu Drive nimate dovolj razpoložljivega prostora.</translation>
<translation id="1476503841242751994">{COUNT,plural, =1{1 geslo}one{# geslo}two{# gesli}few{# gesla}other{# gesel}}</translation>
<translation id="1476949146811612304">Nastavite, kateri iskalnik boste uporabljali pri iskanju v
@@ -657,6 +660,7 @@
<translation id="1918141783557917887">&amp;Pomanjšaj</translation>
<translation id="192144045824434199">Omogoči podokna, ki se odprejo zunaj okvira brskalnika. Če niso omogočena, se pri poskusu odpiranja podokna odpre pojavno okno. Podokna so omogočena v različici za razvijalce in v delovni različici.</translation>
<translation id="1921584744613111023"><ph name="DPI" /> dpi</translation>
+<translation id="1921986354447415460">Turška tipkovnica F</translation>
<translation id="1923786009776354244">Omogočanje podpore za glavo izvora za WebRTC Stun</translation>
<translation id="1926741348654461781">Omogočanje strani brez povezave</translation>
<translation id="1929546189971853037">Branje zgodovine brskanja v vseh napravah, v katerih ste prijavljeni.</translation>
@@ -856,6 +860,7 @@
<translation id="2231990265377706070">Klicaj</translation>
<translation id="2232876851878324699">V datoteki je bilo eno potrdilo, ki ni bilo uvoženo:</translation>
<translation id="2233502537820838181">&amp;Več informacij</translation>
+<translation id="2233587473672843170">Prikaz priljubljenih spletnih mest na strani »Nov zavihek«</translation>
<translation id="223714078860837942">Če za stran ni nastavljen pravilnik o izključnem napotitelju, se z nastavitvijo te zastavice zmanjša količina podatkov v glavi »referer« za zunanje zahteve.</translation>
<translation id="2238379619048995541">Podatki o stanju frekvence</translation>
<translation id="2239921694246509981">Dodajanje zaščitene osebe</translation>
@@ -932,6 +937,7 @@ Ko ustvarite novega zaščitenega uporabnika, lahko na <ph name="DISPLAY_LINK" /
<translation id="2326606747676847821">Brskaj brez beleženja zgodovine</translation>
<translation id="2326931316514688470">&amp;Znova naloži aplikacijo</translation>
<translation id="2327492829706409234">Omogoči aplikacijo</translation>
+<translation id="2329597144923131178">Prijavite se, da boste lahko dostopali do zaznamkov, zgodovine, gesel in drugih nastavitev v vseh napravah.</translation>
<translation id="2332131598580221120">Ogled v trgovini</translation>
<translation id="2332742915001411729">Ponastavi na privzeto</translation>
<translation id="2335122562899522968">Ta stran je nastavila piškotke.</translation>
@@ -1320,6 +1326,7 @@ To spletno mesto ne sme biti blokirano.</translation>
<translation id="2838379631617906747">Nameščanje</translation>
<translation id="2841837950101800123">Ponudnik</translation>
<translation id="2843806747483486897">Spremeni privzeto dejanje ...</translation>
+<translation id="2844169650293029770">Naprava USB-C (vrata levo spredaj)</translation>
<translation id="2845382757467349449">Vedno pokaži vrstico z zaznamki</translation>
<translation id="2846816712032308263">Omogoči hitro zapiranje zavihka/okna – zažene rutino za obravnavo onunload js za zavihek neodvisno od grafičnega uporabniškega vmesnika.</translation>
<translation id="284970761985428403"><ph name="ASCII_NAME" /> (<ph name="UNICODE_NAME" />)</translation>
@@ -1384,6 +1391,7 @@ To spletno mesto ne sme biti blokirano.</translation>
<translation id="2923469375796950815">Onemogočanje nove razširitve za odpiranje arhivov ZIP.</translation>
<translation id="2924296707677495905">Prečrkovanje (namaskaram → ನಮಸ್ಕಾರ)</translation>
<translation id="2925966894897775835">Preglednice</translation>
+<translation id="2927017729816812676">Shramba predpomnilnika</translation>
<translation id="2927657246008729253">Spremeni ...</translation>
<translation id="2928526264833629376">Nadaljuj v Hangouts</translation>
<translation id="2930644991850369934">Pri prenosu posnetka za obnovitev je prišlo do težave. Omrežna povezava je bila prekinjena.</translation>
@@ -1725,6 +1733,7 @@ To spletno mesto ne sme biti blokirano.</translation>
<translation id="3396331542604645348">Izbrani tiskalnik ni na voljo ali ni pravilno nameščen. Preverite tiskalnik ali izberite drugega.</translation>
<translation id="3399597614303179694">Makedonska tipkovnica</translation>
<translation id="340013220407300675">Napadalci morda poskušajo ukrasti vaše podatke s spletnega mesta <ph name="BEGIN_BOLD" /><ph name="SITE" /><ph name="END_BOLD" /> (na primer gesla, sporočila ali kreditne kartice).</translation>
+<translation id="3401130144947259741">Če je zastavica omogočena, so dogodki sledenja izvoženi v ETW (Event Tracing for Windows) in jih je mogoče zajeti z orodji, kot je UIForETW ali Xperf.</translation>
<translation id="340282674066624"><ph name="DOWNLOAD_RECEIVED" />, <ph name="TIME_LEFT" /></translation>
<translation id="3406605057700382950">&amp;Pokaži vrstico z zaznamki</translation>
<translation id="3412265149091626468">Skoči na izbor</translation>
@@ -1885,6 +1894,7 @@ To spletno mesto ne sme biti blokirano.</translation>
<translation id="3603385196401704894">kanadska francoščina</translation>
<translation id="3603622770190368340">Prejemanje omrežnega potrdila</translation>
<translation id="3605780360466892872">Srajca</translation>
+<translation id="3606220979431771195">Turška tipkovnica F</translation>
<translation id="3608454375274108141">F10</translation>
<translation id="3608576286259426129">Predogled slike uporabnika</translation>
<translation id="3609138628363401169">Strežnik ne podpora razširitve za vnovično pogajanje TLS.</translation>
@@ -2404,6 +2414,7 @@ To spletno mesto ne sme biti blokirano.</translation>
<translation id="4321136812570927563">{NUM_DOWNLOAD,plural, =1{Nadaljevanje prenosa}one{Nadaljevanje prenosov}two{Nadaljevanje prenosov}few{Nadaljevanje prenosov}other{Nadaljevanje prenosov}}</translation>
<translation id="4321179778687042513">ctrl</translation>
<translation id="4322394346347055525">Zapri druge zavihke</translation>
+<translation id="4325378361067528777">Omogočanje načina v ozadju za API Push</translation>
<translation id="4326952458285403282">Onemogoča uporabo poskusnega sistema za upodabljanje pisave DirectWrite.</translation>
<translation id="4326999707196471878">Toolkit-Views Browser Dialogs.</translation>
<translation id="4330406155931244378">Omogočanje večjezikovnega preverjanja črkovanja</translation>
@@ -2945,6 +2956,8 @@ Pritisnite katero koli tipko, če želite še naprej raziskovati.</translation>
<translation id="5148652308299789060">Onemogočanje programskega rasterizatorja 3D</translation>
<translation id="5150254825601720210">Ime strežnika SLL Netscapeovega potrdila</translation>
<translation id="5151034238407558331">Pri tem trgovcu lahko Google Payments uporabljajo samo kupci z naslovom v Združenih državah. Če prebivate v Združenih državah, |spremenite domači naslov z Google Payments| ali plačajte, ne da bi uporabili Google Payments.</translation>
+<translation id="5151639798712723370">"&gt;
+ Naprava USB-C (vrata desno spredaj)</translation>
<translation id="5152451685298621771">(Račun za otroke)</translation>
<translation id="5154108062446123722">Dodatne nastavitve za: <ph name="PRINTING_DESTINATION" /></translation>
<translation id="5154176924561037127">F8</translation>
@@ -3043,6 +3056,7 @@ Pritisnite katero koli tipko, če želite še naprej raziskovati.</translation>
<translation id="5271247532544265821">Preklopi med načinom poenostavljene/tradicionalne kitajščine</translation>
<translation id="5271549068863921519">Shrani geslo</translation>
<translation id="5273628206174272911">Poskusno krmarjenje po zgodovini z odzivom na vodoravno drsenje čez rob strani.</translation>
+<translation id="5275795814002959418"><ph name="COUNT" /> s tega spletnega mesta</translation>
<translation id="5275973617553375938">Obnovljene datoteke iz Googla Drive</translation>
<translation id="527605719918376753">Izklop zvoka zavihka</translation>
<translation id="527605982717517565">Vedno dovoli JavaScript na mestu <ph name="HOST" /></translation>
@@ -3089,6 +3103,7 @@ Pritisnite katero koli tipko, če želite še naprej raziskovati.</translation>
<translation id="5328285148748012771">Dostopajte do vseh aplikacij s tem priročnim zaganjalnikom. Igrajte igre, uporabljajte videoklepet, poslušajte glasbo, urejajte dokumente ali prenesite aplikacije iz Spletne trgovine Chrome.</translation>
<translation id="5329858601952122676">&amp;Izbriši</translation>
<translation id="5330145655348521461">Te datoteke so odprte na drugem namizju. Če si jih želite ogledati, preklopite na uporabnika <ph name="USER_NAME" /> (<ph name="MAIL_ADDRESS" />).</translation>
+<translation id="5331975486040154427">Naprava USB-C (vrata levo zadaj)</translation>
<translation id="5332624210073556029">Časovni pas:</translation>
<translation id="5334142896108694079">Predpomnilnik za skripte</translation>
<translation id="533433379391851622">Pričakovana različica je »<ph name="EXPECTED_VERSION" />«, toda različica je bila »<ph name="NEW_ID" />«.</translation>
@@ -3135,6 +3150,7 @@ Pritisnite katero koli tipko, če želite še naprej raziskovati.</translation>
<translation id="539755880180803351">Spletnim obrazcem pripiše samodejno izpolnjena predvidevanja kot besedilo ograde.</translation>
<translation id="5397578532367286026">Upravitelj (<ph name="MANAGER_EMAIL" />) lahko na chrome.com pregleduje uporabo in zgodovino tega uporabnika.</translation>
<translation id="5397794290049113714">Vi</translation>
+<translation id="5398824043967640339"><ph name="COUNT" /> z drugih spletnih mest</translation>
<translation id="5399158067281117682">Kodi PIN se ne ujemata.</translation>
<translation id="5400640815024374115">Čip modula zaupanja (TPM) je onemogočen ali ni nameščen.</translation>
<translation id="5402367795255837559">Braillova pisava</translation>
@@ -3960,6 +3976,7 @@ Nekatere funkcije morda ne bodo na voljo. Preverite, ali profil obstaja in ali i
<translation id="6575251558004911012">Vprašaj, če spletno mesto zahteva dostop do kamere (priporočeno)</translation>
<translation id="6581162200855843583">Povezava Google Drive</translation>
<translation id="6583070985841601920">Prijavljeni ste kot <ph name="USER_EMAIL_ADDRESS" />. Skrbnik je onemogočil sinhronizacijo.</translation>
+<translation id="65832705307647870">Na strani »Nov zavihek« pokaže priljubljena spletna mesta.</translation>
<translation id="6584878029876017575">Microsoftovo doživljenjsko podpisovanje</translation>
<translation id="6585234750898046415">Izberite sliko za vaš račun na zaslonu za prijavo.</translation>
<translation id="6585283250473596934">Prijava v javno sejo.</translation>
@@ -4303,6 +4320,7 @@ Nekatere funkcije morda ne bodo na voljo. Preverite, ali profil obstaja in ali i
<translation id="7092106376816104">Izjeme za pojavna okna</translation>
<translation id="7093866338626856921">Izmenjava podatkov z napravami, imenovanimi: <ph name="HOSTNAMES" /></translation>
<translation id="7096082900368329802">Želite odkriti več super funkcij?</translation>
+<translation id="7098389117866926363">Naprava USB-C (vrata levo zadaj)</translation>
<translation id="7100897339030255923">Št. izbranih elementov: <ph name="COUNT" /></translation>
<translation id="7106346894903675391">Nakup dodatnega prostora za shranjevanje ...</translation>
<translation id="7108338896283013870">Skrij</translation>
@@ -5078,6 +5096,7 @@ Datoteko s ključem shranite na varnem. Potrebovali jo boste za izdelavo novih r
<translation id="8190193592390505034">Vzpostavljanje povezave z <ph name="PROVIDER_NAME" /></translation>
<translation id="8191230140820435481">Upravljajte aplikacije, razširitve in teme</translation>
<translation id="8191453843330043793">Razreševalnik za proxy mehanizma V8</translation>
+<translation id="8199491812735365610">Izbira računa za prijavo</translation>
<translation id="8200772114523450471">Nadaljuj</translation>
<translation id="8202160505685531999">Znova vnesite geslo, če želite posodobiti profil v napravi <ph name="DEVICE_TYPE" />.</translation>
<translation id="8204086856545141093">Zahteve za strežnik je blokiral pravilnik.</translation>
@@ -5209,6 +5228,7 @@ izračun časa do napolnjenosti</translation>
<translation id="8381977081675353473">slovaščina</translation>
<translation id="8382645631174981738">Razširitev <ph name="EXTENSION_NAME" /> je bila nameščena na daljavo</translation>
<translation id="8382913212082956454">Kopiraj &amp;e-poštni naslov</translation>
+<translation id="8384113940676655504">Omogoča nastavitev funkcije Smart Lock, ki Chromebookom omogoča odkrivanje telefonov prek tehnologije Bluetooth Low Energy, tako da lahko telefon odklene Chromebook, ko je v njegovi bližini.</translation>
<translation id="8390029840652165810">Preverite, ali omrežna povezava deluje, in če težave ne odpravite, se odjavite in znova prijavite, da osvežite poverilnice.</translation>
<translation id="8390445751804042000">Omogoča preklop naprave iz stanja pripravljenosti na podlagi prejema nekaterih omrežnih paketov.</translation>
<translation id="8390449457866780408">Strežnik ni na voljo.</translation>
@@ -5295,6 +5315,7 @@ izračun časa do napolnjenosti</translation>
<translation id="8509646642152301857">Prenos slovarja za preverjanje črkovanja ni uspel.</translation>
<translation id="8512476990829870887">Končaj proces</translation>
<translation id="851263357009351303">Vedno dovoli mestu <ph name="HOST" />, da pokaže slike</translation>
+<translation id="8513191386157529469">»<ph name="CLIENT_NAME" />« odpravlja napake v brskalniku.</translation>
<translation id="8513974249124254369">ChromeVox (izgovorjava povratnih informacij) je omogočen.
Če ga želite onemogočiti, pritisnite Ctrl + Alt + Z.</translation>
<translation id="8515737884867295000">Preverjanje pristnosti s potrdilom ni uspelo</translation>
@@ -5415,6 +5436,7 @@ izračun časa do napolnjenosti</translation>
<translation id="8677039480012021122">Izbriši podatke in prekini povezavo</translation>
<translation id="8677212948402625567">Strni vse ...</translation>
<translation id="8678648549315280022">Upravljanje nastavitev prenosa ...</translation>
+<translation id="8680251145628383637">Prijavite se, če želite uporabljati zaznamke, zgodovino, gesla in druge nastavitve v vseh napravah. Prav tako boste samodejno prijavljeni v Googlove storitve.</translation>
<translation id="8680536109547170164"><ph name="QUERY" />, odgovor, <ph name="ANSWER" /></translation>
<translation id="8680787084697685621">Podrobnosti prijave v račun so zastarele.</translation>
<translation id="8684255857039823328">Geslo je shranjeno. Dostopajte do gesel v kateri koli napravi na <ph name="MANAGEMENT_LINK" />.</translation>
@@ -5470,6 +5492,7 @@ izračun časa do napolnjenosti</translation>
<translation id="874420130893181774">Način vnosa tradicionalni pinjin</translation>
<translation id="8744525654891896746">Izberite avatarja za tega zaščitenega uporabnika</translation>
<translation id="8744641000906923997">Romadži</translation>
+<translation id="8744959718895556609">Izbira računa v funkciji <ph name="LINK_TEXT" /></translation>
<translation id="8749863574775030885">Dostop do naprav USB neznanega prodajalca</translation>
<translation id="8754200782896249056">&lt;p&gt;Ko se <ph name="PRODUCT_NAME" /> izvaja v podprtem namiznem okolju, se uporabijo sistemske nastavitve strežnika proxy. Morda vaš sistem ni podprt ali pa je med zagonom sistemske konfiguracije prišlo do težave.&lt;/p&gt;
@@ -5590,6 +5613,7 @@ izračun časa do napolnjenosti</translation>
<translation id="8933960630081805351">&amp;Pokaži v Finderju</translation>
<translation id="8934732568177537184">Naprej</translation>
<translation id="8938356204940892126">Predam se</translation>
+<translation id="8938800817013097409">Naprava USB-C (vrata desno zadaj)</translation>
<translation id="8940081510938872932">V računalniku se trenutno izvaja preveč procesov. Poskusite znova pozneje.</translation>
<translation id="8941173171815156065">Preklic dovoljenja »<ph name="PERMISSION" />«</translation>
<translation id="8941248009481596111">Povezava s tem mestom je zasebna.</translation>
diff --git a/chromium/chrome/app/resources/generated_resources_sr.xtb b/chromium/chrome/app/resources/generated_resources_sr.xtb
index 251a84fda47..64287721f5d 100644
--- a/chromium/chrome/app/resources/generated_resources_sr.xtb
+++ b/chromium/chrome/app/resources/generated_resources_sr.xtb
@@ -136,6 +136,8 @@
<translation id="1178581264944972037">Паузирај</translation>
<translation id="1179803038870941185"><ph name="URL" /> жели да у потпуности контролише MIDI уређаје.</translation>
<translation id="1181037720776840403">Уклони</translation>
+<translation id="11814323404622888">"&gt;
+ Уређај са USB прикључком типа C (десни задњи порт)</translation>
<translation id="1183083053288481515">Коришћење сертификата који је обезбедио администратор</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>
@@ -329,6 +331,7 @@
<translation id="1468038450257740950">WebGL није подржан.</translation>
<translation id="1470719357688513792">Ново подешавање колачића биће примењено након поновног учитавања странице.</translation>
<translation id="14720830734893704">Омогућите подршку за виртуелну тастатуру.</translation>
+<translation id="1474079335130556426">Омогућава позадински режим за API Push. То омогућава Chrome-у да настави да ради када се затвори последњи прозор, као и да се покреће при покретању ОС-а, ако је то потребно API-ју Push.</translation>
<translation id="1474339897586437869">Датотека „<ph name="FILENAME" />“ није отпремљена. Није било довољно слободног места на Google диску.</translation>
<translation id="1476503841242751994">{COUNT,plural, =1{1 лозинка}one{# лозинка}few{# лозинке}other{# лозинки}}</translation>
<translation id="1476949146811612304">Подесите претраживач који ће се користити када претражујете из <ph name="BEGIN_LINK" />омнибокса<ph name="END_LINK" />.</translation>
@@ -653,6 +656,7 @@
<translation id="1918141783557917887">&amp;Мање</translation>
<translation id="192144045824434199">Омогућите прозоре табли који се отварају изван оквира прегледача. Покушаји да се отвори табла ће уместо тога отворити искачући прозор ако табла није омогућена. Табле су увек омогућене на програмерским и canary каналима.</translation>
<translation id="1921584744613111023"><ph name="DPI" /> dpi</translation>
+<translation id="1921986354447415460">турска F тастатура</translation>
<translation id="1923786009776354244">Омогући подршку за заглавље Порекло у WebRTC Stun порукама.</translation>
<translation id="1926741348654461781">Омогући офлајн странице</translation>
<translation id="1929546189971853037">Читање ваше историје прегледања на свим уређајима на којима сте пријављени</translation>
@@ -852,6 +856,7 @@
<translation id="2231990265377706070">Знак узвика</translation>
<translation id="2232876851878324699">Датотека садржи један сертификат, који није увезен:</translation>
<translation id="2233502537820838181">&amp;Више информација</translation>
+<translation id="2233587473672843170">Приказуј популарне сајтове на страници нове картице</translation>
<translation id="223714078860837942">Ако страница није подесила изричите смернице за упућиваче, подешавањем овог обележја смањујете количину информација у заглављу „упућивач“ за захтеве упућене из више извора.</translation>
<translation id="2238379619048995541">Подаци о стању фреквенције</translation>
<translation id="2239921694246509981">Додај особу под надзором</translation>
@@ -930,6 +935,7 @@
<translation id="2326606747676847821">Пређи у режим без архивирања</translation>
<translation id="2326931316514688470">&amp;Поново учитај апликацију</translation>
<translation id="2327492829706409234">Омогући апликацију</translation>
+<translation id="2329597144923131178">Пријавите се да би вам обележивачи, историја, лозинке и друга подешавања били доступни на свим уређајима.</translation>
<translation id="2332131598580221120">Прикажи у продавници</translation>
<translation id="2332742915001411729">Врати на подразумевану вредност</translation>
<translation id="2335122562899522968">Ова страница поставља колачиће.</translation>
@@ -1317,6 +1323,7 @@
<translation id="2838379631617906747">Инсталира се</translation>
<translation id="2841837950101800123">Добављач</translation>
<translation id="2843806747483486897">Промени подразумевано...</translation>
+<translation id="2844169650293029770">Уређај са USB прикључком типа C (леви предњи порт)</translation>
<translation id="2845382757467349449">Увек приказуј траку са обележивачима</translation>
<translation id="2846816712032308263">Омогућава брзо затварање картице/прозора – покреће js обрађивач onunload на картици независно од графичког корисничког интерфејса.</translation>
<translation id="284970761985428403"><ph name="ASCII_NAME" /> (<ph name="UNICODE_NAME" />)</translation>
@@ -1381,6 +1388,7 @@
<translation id="2923469375796950815">Онемогући нови ZIP отпакивач.</translation>
<translation id="2924296707677495905">Транслитерација (namaskaram → ನಮಸ್ಕಾರ)</translation>
<translation id="2925966894897775835">Табеле</translation>
+<translation id="2927017729816812676">Меморијски простор кеша</translation>
<translation id="2927657246008729253">Промени...</translation>
<translation id="2928526264833629376">Настави на Hangouts</translation>
<translation id="2930644991850369934">Дошло је до проблема при преузимању слике за обнављање. Прекинута је веза са мрежом.</translation>
@@ -1722,6 +1730,7 @@
<translation id="3396331542604645348">Изабрани штампач није доступан или није правилно инсталиран. Проверите штампач или покушајте да изаберете неки други.</translation>
<translation id="3399597614303179694">Македонска тастатура</translation>
<translation id="340013220407300675">Хакери можда покушавају да украду ваше информације из <ph name="BEGIN_BOLD" /><ph name="SITE" /><ph name="END_BOLD" /> (на пример, лозинке, поруке или информације о кредитним картицама).</translation>
+<translation id="3401130144947259741">Ако омогућите ово, догађаји праћења ће бити извезени у Event Tracing for Windows (ETW) (Праћење догађаја за Windows), па могу да их снимају алатке као што су UIForETW или Xperf.</translation>
<translation id="340282674066624"><ph name="DOWNLOAD_RECEIVED" />, <ph name="TIME_LEFT" /></translation>
<translation id="3406605057700382950">&amp;Прикажи траку са обележивачима</translation>
<translation id="3412265149091626468">Пређи на избор</translation>
@@ -1881,6 +1890,7 @@
<translation id="3603385196401704894">канадска француска</translation>
<translation id="3603622770190368340">Добијање сертификата мреже</translation>
<translation id="3605780360466892872">Јапи</translation>
+<translation id="3606220979431771195">турска F</translation>
<translation id="3608454375274108141">F10</translation>
<translation id="3608576286259426129">Преглед слике корисника</translation>
<translation id="3609138628363401169">Сервер не подржава додатак за поновно прихватање TLS-а.</translation>
@@ -2401,6 +2411,7 @@
<translation id="4321136812570927563">{NUM_DOWNLOAD,plural, =1{Настави преузимање}one{Настави преузимања}few{Настави преузимања}other{Настави преузимања}}</translation>
<translation id="4321179778687042513">ctrl</translation>
<translation id="4322394346347055525">Затвори друге картице</translation>
+<translation id="4325378361067528777">Омогући позадински режим за API Push</translation>
<translation id="4326952458285403282">Онемогућава коришћење експерименталног DirectWrite система за приказивање фонтова.</translation>
<translation id="4326999707196471878">Дијалози прегледача засновани на приказима комплета алатки.</translation>
<translation id="4330406155931244378">Омогући проверу правописа за више језика</translation>
@@ -2942,6 +2953,8 @@
<translation id="5148652308299789060">Онемогућавање 3D софтверског растеризатора</translation>
<translation id="5150254825601720210">Назив SSL сервера Netscape сертификата</translation>
<translation id="5151034238407558331">Нажалост, Google Payments код овог продавца могу да користе само купци са адресом у САД. Ако сте корисник у САД, |промените кућну адресу помоћу Google Payments-а| или плаћајте без коришћења Google Payments-а.</translation>
+<translation id="5151639798712723370">"&gt;
+ Уређај са USB прикључком типа C (десни предњи порт)</translation>
<translation id="5152451685298621771">(Налог за децу)</translation>
<translation id="5154108062446123722">Напредна подешавања за <ph name="PRINTING_DESTINATION" /></translation>
<translation id="5154176924561037127">F8</translation>
@@ -3040,6 +3053,7 @@
<translation id="5271247532544265821">Укључи/искључи режим за поједностављени/традиционални кинески језик</translation>
<translation id="5271549068863921519">Сачувај лозинку</translation>
<translation id="5273628206174272911">Експериментална навигација кроз историју коју активира водоравно бочно превлачење.</translation>
+<translation id="5275795814002959418"><ph name="COUNT" /> са овог сајта</translation>
<translation id="5275973617553375938">Враћене датотеке са Google диска</translation>
<translation id="527605719918376753">Искључи звук картице</translation>
<translation id="527605982717517565">Увек дозволи JavaScript на сајту <ph name="HOST" /></translation>
@@ -3086,6 +3100,7 @@
<translation id="5328285148748012771">Приступајте свим апликацијама из овог практичног покретача. Играјте игре, користите видео ћаскање, слушајте музику, мењајте документе или набавите још апликација из Chrome веб-продавнице.</translation>
<translation id="5329858601952122676">&amp;Избриши</translation>
<translation id="5330145655348521461">Ове датотеке су отворене на другом профилу. Пређите на <ph name="USER_NAME" /> (<ph name="MAIL_ADDRESS" />) да бисте их погледали.</translation>
+<translation id="5331975486040154427">Уређај са USB прикључком типа C (леви задњи порт)</translation>
<translation id="5332624210073556029">Временска зона:</translation>
<translation id="5334142896108694079">Кеш скрипте</translation>
<translation id="533433379391851622">Очекивана је верзија „<ph name="EXPECTED_VERSION" />“, али наведена је верзија „<ph name="NEW_ID" />“.</translation>
@@ -3132,6 +3147,7 @@
<translation id="539755880180803351">Означава веб-обрасце са типом поља са предвиђањима помоћу аутоматског попуњавања који функционишу као текст резервисаног места.</translation>
<translation id="5397578532367286026">Менаџер (<ph name="MANAGER_EMAIL" />) може да прегледа коришћење и историју овог корисника на chrome.com.</translation>
<translation id="5397794290049113714">Ви</translation>
+<translation id="5398824043967640339"><ph name="COUNT" /> са других сајтова</translation>
<translation id="5399158067281117682">PIN-ови се не подударају!</translation>
<translation id="5400640815024374115">TPM (Trusted Platform Module) чип је онемогућен или недостаје.</translation>
<translation id="5402367795255837559">Брајева азбука</translation>
@@ -3957,6 +3973,7 @@
<translation id="6575251558004911012">Питај када сајт захтева приступ мојој камери (препоручено)</translation>
<translation id="6581162200855843583">Веза Google диска</translation>
<translation id="6583070985841601920">Пријављени сте као <ph name="USER_EMAIL_ADDRESS" />. Администратор је онемогућио синхронизацију.</translation>
+<translation id="65832705307647870">Унапред попуњава страницу нове картице популарним сајтовима.</translation>
<translation id="6584878029876017575">Microsoft доживотно потписивање</translation>
<translation id="6585234750898046415">Изаберите слику која ће се приказивати за ваш налог на екрану за пријављивање.</translation>
<translation id="6585283250473596934">Улазите у јавну сесију.</translation>
@@ -4302,6 +4319,7 @@
<translation id="7092106376816104">Изузеци за искачуће прозоре</translation>
<translation id="7093866338626856921">Размена података са уређајима следећих назива: <ph name="HOSTNAMES" /></translation>
<translation id="7096082900368329802">Желите ли да откријете још сјајних функција?</translation>
+<translation id="7098389117866926363">Уређај са USB прикључком типа C (леви задњи порт)</translation>
<translation id="7100897339030255923">Изабраних ставки: <ph name="COUNT" /></translation>
<translation id="7106346894903675391">Купи још складишног простора...</translation>
<translation id="7108338896283013870">Сакриј</translation>
@@ -5072,6 +5090,7 @@
<translation id="8190193592390505034">Повезивање са мрежом <ph name="PROVIDER_NAME" /></translation>
<translation id="8191230140820435481">Управљање апликацијама, додацима и темама</translation>
<translation id="8191453843330043793">Разрешивач проксија V8</translation>
+<translation id="8199491812735365610">Изаберите налог за пријављивање</translation>
<translation id="8200772114523450471">Настави</translation>
<translation id="8202160505685531999">Унесите поново лозинку да бисте ажурирали профил за <ph name="DEVICE_TYPE" />.</translation>
<translation id="8204086856545141093">Смернице су блокирале захтеве упућене серверу.</translation>
@@ -5203,6 +5222,7 @@
<translation id="8381977081675353473">словачки</translation>
<translation id="8382645631174981738">Компонента <ph name="EXTENSION_NAME" /> је даљински инсталирана</translation>
<translation id="8382913212082956454">Копирај &amp;е-адресу</translation>
+<translation id="8384113940676655504">Омогућава подешавање за Smart Lock које омогућава да Chromebook открива телефоне преко Bluetooth-а са ниском потрошњом да би се Chromebook откључао када је телефон у близини.</translation>
<translation id="8390029840652165810">Проверите да ли мрежна веза функционише, а ако се проблем и даље јавља, одјавите се и поново се пријавите да бисте освежили акредитиве.</translation>
<translation id="8390445751804042000">Омогућава буђење уређаја на основу пријема неких мрежних пакета.</translation>
<translation id="8390449457866780408">Сервер је недоступан.</translation>
@@ -5289,6 +5309,7 @@
<translation id="8509646642152301857">Преузимање речника за проверу правописа није успело.</translation>
<translation id="8512476990829870887">Заврши процес</translation>
<translation id="851263357009351303">Увек дозволи сајту <ph name="HOST" /> да приказује слике</translation>
+<translation id="8513191386157529469">„<ph name="CLIENT_NAME" />“ отклања грешке из овог прегледача.</translation>
<translation id="8513974249124254369">ChromeVox (говорне повратне информације) је омогућен. Притисните Ctrl+Alt+Z да бисте га онемогућили.</translation>
<translation id="8515737884867295000">Потврда идентитета заснована на сертификатима није успела</translation>
<translation id="8518865679229538285">Метод уноса за тамилски (писаћа машина)</translation>
@@ -5408,6 +5429,7 @@
<translation id="8677039480012021122">Обриши податке и прекини везу</translation>
<translation id="8677212948402625567">Скупи све...</translation>
<translation id="8678648549315280022">Управљај подешавањима преузимања...</translation>
+<translation id="8680251145628383637">Пријавите се да би вам обележивачи, историја, лозинке и друга подешавања били доступни на свим уређајима. Аутоматски ћете бити пријављени и на Google услуге.</translation>
<translation id="8680536109547170164"><ph name="QUERY" />, одговор, <ph name="ANSWER" /></translation>
<translation id="8680787084697685621">Детаљи за пријављивање на налог су застарели.</translation>
<translation id="8684255857039823328">Лозинка је сачувана. Приступајте лозинкама са било ког уређаја на <ph name="MANAGEMENT_LINK" />.</translation>
@@ -5463,6 +5485,7 @@
<translation id="874420130893181774">Традиционални метод уноса пинјин</translation>
<translation id="8744525654891896746">Изаберите аватар за овог корисника под надзором</translation>
<translation id="8744641000906923997">Ромађи</translation>
+<translation id="8744959718895556609">Изаберите налог из <ph name="LINK_TEXT" />-а</translation>
<translation id="8749863574775030885">Приступ USB уређајима непознатог продавца</translation>
<translation id="8754200782896249056">&lt;p&gt;Када користите <ph name="PRODUCT_NAME" /> у подржаном рачунарском окружењу, користиће се подешавања проксија система. Међутим, или систем није подржан или је дошло до проблема при покретању конфигурације система.&lt;/p&gt;
@@ -5583,6 +5606,7 @@
<translation id="8933960630081805351">&amp;Прикажи у Finder-у</translation>
<translation id="8934732568177537184">Настави</translation>
<translation id="8938356204940892126">Одустајем</translation>
+<translation id="8938800817013097409">Уређај са USB прикључком типа C (задњи десни порт)</translation>
<translation id="8940081510938872932">Рачунар тренутно ради превише ствари. Покушајте поново касније.</translation>
<translation id="8941173171815156065">Опозовите дозволу „<ph name="PERMISSION" />“</translation>
<translation id="8941248009481596111">Веза са овим сајтом је приватна.</translation>
diff --git a/chromium/chrome/app/resources/generated_resources_sv.xtb b/chromium/chrome/app/resources/generated_resources_sv.xtb
index 14b1501dde5..9141088e8b2 100644
--- a/chromium/chrome/app/resources/generated_resources_sv.xtb
+++ b/chromium/chrome/app/resources/generated_resources_sv.xtb
@@ -136,6 +136,8 @@
<translation id="1178581264944972037">Paus</translation>
<translation id="1179803038870941185"><ph name="URL" /> vill ha fullständig kontroll över dina MIDI-enheter.</translation>
<translation id="1181037720776840403">Ta bort</translation>
+<translation id="11814323404622888">"&gt;
+ USB-C-enhet (bakre porten på höger sida)</translation>
<translation id="1183083053288481515">Använder ett certifikat från en administratör</translation>
<translation id="1183237619868651138">Det går inte att installera <ph name="EXTERNAL_CRX_FILE" /> i det lokala cacheminnet.</translation>
<translation id="1185924365081634987">Du kan också försöka lösa nätverksproblemet genom att <ph name="GUEST_SIGNIN_LINK_START" />surfa som gäst<ph name="GUEST_SIGNIN_LINK_END" />.</translation>
@@ -330,6 +332,7 @@
<translation id="1468038450257740950">WebGL stöds inte.</translation>
<translation id="1470719357688513792">De nya cookie-inställningarna börjar gälla när sidan uppdateras.</translation>
<translation id="14720830734893704">Aktivera stöd för virtuellt tangentbord.</translation>
+<translation id="1474079335130556426">Aktivera bakgrundsläge för Push-API:et. Det gör att Chrome fortfarande kan köras när det sista fönstret har stängts, och att det kan startas tillsammans med operativsystemet, om Push-API:et behöver det.</translation>
<translation id="1474339897586437869"><ph name="FILENAME" /> laddades inte upp. Det fanns inte tillräckligt mycket ledigt utrymme på Google Drive.</translation>
<translation id="1476503841242751994">{COUNT,plural, =1{1 lösenord}other{# lösenord}}</translation>
<translation id="1476949146811612304">Ange vilken sökmotor som används när du söker från <ph name="BEGIN_LINK" />adressfältet<ph name="END_LINK" />.</translation>
@@ -653,6 +656,7 @@
<translation id="1918141783557917887">&amp;Mindre</translation>
<translation id="192144045824434199">Aktiverar panelfönster som öppnas utanför webbläsarramen. Om du försöker öppna en panel som inte är aktiverad kommer ett popup-fönster att öppnas istället. Paneler är alltid aktiverade på dev- och canary-kanaler.</translation>
<translation id="1921584744613111023"><ph name="DPI" /> dpi</translation>
+<translation id="1921986354447415460">Tangentbord för turkiska F</translation>
<translation id="1923786009776354244">Aktivera stöd för Origin-huvud i WebRTC STUN</translation>
<translation id="1926741348654461781">Aktivera offline-sidor</translation>
<translation id="1929546189971853037">Läsa webbhistoriken på alla enheter där du är inloggad</translation>
@@ -852,6 +856,7 @@
<translation id="2231990265377706070">Utropstecken</translation>
<translation id="2232876851878324699">Filen innehöll ett certifikat och det importerades inte:</translation>
<translation id="2233502537820838181">Mer information</translation>
+<translation id="2233587473672843170">Visa populära webbplatser på sidan Ny flik</translation>
<translation id="223714078860837942">Om inte sida inte har angivit någon tydlig hänvisningspolicy minskas mängden information i rubriken ”referer” för COR-begäranden.</translation>
<translation id="2238379619048995541">Data för frekvenstillstånd</translation>
<translation id="2239921694246509981">Lägg till kontrollerad person</translation>
@@ -930,6 +935,7 @@ När du har skapat en ny kontrollerad användare kan du hantera inställningarna
<translation id="2326606747676847821">Surfa inkognito</translation>
<translation id="2326931316514688470">&amp;Läs in appen igen</translation>
<translation id="2327492829706409234">Aktivera app</translation>
+<translation id="2329597144923131178">Logga in så blir bokmärken, historik, lösenord med mera tillgängligt på alla dina enheter.</translation>
<translation id="2332131598580221120">Visa i butik</translation>
<translation id="2332742915001411729">Återställ standardvärden</translation>
<translation id="2335122562899522968">Den här sidan angav cookies.</translation>
@@ -1318,6 +1324,7 @@ Jag tycker inte att den här webbplatsen ska blockeras!</translation>
<translation id="2838379631617906747">Installerar</translation>
<translation id="2841837950101800123">Leverantör</translation>
<translation id="2843806747483486897">Ändra standard ...</translation>
+<translation id="2844169650293029770">USB-C-enhet (främre porten på vänster sida)</translation>
<translation id="2845382757467349449">Visa alltid bokmärkesfältet</translation>
<translation id="2846816712032308263">Aktiverar snabb stängning av flikar/fönster – kör en fliks js-hanterare som inte lästs in oberoende av GUI.</translation>
<translation id="284970761985428403"><ph name="ASCII_NAME" /> (<ph name="UNICODE_NAME" />)</translation>
@@ -1384,6 +1391,7 @@ hanteraren
<translation id="2923469375796950815">Inaktivera det nya uppackningsverktyget för zip-filer.</translation>
<translation id="2924296707677495905">Translitterering (namaskaram → ನಮಸ್ಕಾರ)</translation>
<translation id="2925966894897775835">Kalkylark</translation>
+<translation id="2927017729816812676">Cachelagring</translation>
<translation id="2927657246008729253">Ändra...</translation>
<translation id="2928526264833629376">Fortsätt till Hangouts</translation>
<translation id="2930644991850369934">Det uppstod ett problem när återställningsavbildningen laddades ned. Nätverksanslutningen avbröts.</translation>
@@ -1726,6 +1734,7 @@ hanteraren
<translation id="3396331542604645348">Den valda skrivaren är inte tillgänglig eller har inte installerats korrekt. Kontrollera skrivaren eller välj en annan.</translation>
<translation id="3399597614303179694">Makedonskt tangentbord</translation>
<translation id="340013220407300675">Det är möjligt att hackare försöker stjäla dina uppgifter från <ph name="BEGIN_BOLD" /><ph name="SITE" /><ph name="END_BOLD" /> (till exempel lösenord, meddelanden eller kreditkort).</translation>
+<translation id="3401130144947259741">När detta alternativ har aktiverats exporteras händelsespårningen till Händelsespårning för Windows (ETW) så att den kan registreras med verktyg som UIForETW eller Xperf.</translation>
<translation id="340282674066624"><ph name="DOWNLOAD_RECEIVED" />, <ph name="TIME_LEFT" /></translation>
<translation id="3406605057700382950">&amp;Visa bokmärkesfältet</translation>
<translation id="3412265149091626468">Hoppa till markering</translation>
@@ -1885,6 +1894,7 @@ hanteraren
<translation id="3603385196401704894">Kanadensisk franska</translation>
<translation id="3603622770190368340">Skaffa nätverkscertifikat</translation>
<translation id="3605780360466892872">Proper</translation>
+<translation id="3606220979431771195">Turkiska F</translation>
<translation id="3608454375274108141">F10</translation>
<translation id="3608576286259426129">Förhandsgranskning av användarens bild</translation>
<translation id="3609138628363401169">Servern stöder inte tillägget för TLS-omförhandling.</translation>
@@ -2405,6 +2415,7 @@ Alla användare måste logga ut för att fortsätta.</translation>
<translation id="4321136812570927563">{NUM_DOWNLOAD,plural, =1{Fortsätt med nedladdningen}other{Fortsätt med nedladdningarna}}</translation>
<translation id="4321179778687042513">ctrl</translation>
<translation id="4322394346347055525">Stäng andra flikar</translation>
+<translation id="4325378361067528777">Aktivera bakgrundsläge för Push-API</translation>
<translation id="4326952458285403282">Inaktiverar användning av det experimentella DirectWrite-systemet för teckensnitt.</translation>
<translation id="4326999707196471878">Dialogrutor i webbläsaren använder toolkit-views.</translation>
<translation id="4330406155931244378">Aktivera flerspråkig stavningskontroll</translation>
@@ -2946,6 +2957,8 @@ Tryck på någon tangent om du vill fortsätta utforska.</translation>
<translation id="5148652308299789060">Inaktivera rastrering för 3D-program</translation>
<translation id="5150254825601720210">SSL-servernamn för Netscape-certifikat</translation>
<translation id="5151034238407558331">Tyvärr kan Google Payments endast användas hos den här säljaren av köpare med en amerikansk adress. Om du är bosatt i USA |ändrar du din hemadress för Payments| eller betalar utan att använda Google Payments.</translation>
+<translation id="5151639798712723370">"&gt;
+ USB-C-enhet (främre porten på höger sida)</translation>
<translation id="5152451685298621771">(Konto för barn)</translation>
<translation id="5154108062446123722">Avancerade inställningar för <ph name="PRINTING_DESTINATION" /></translation>
<translation id="5154176924561037127">F8</translation>
@@ -3044,6 +3057,7 @@ Tryck på någon tangent om du vill fortsätta utforska.</translation>
<translation id="5271247532544265821">Växla mellan förenklad/traditionell kinesiska</translation>
<translation id="5271549068863921519">Spara lösenord</translation>
<translation id="5273628206174272911">Historiknavigering på experimentstadiet som svar på horisontell överrullning.</translation>
+<translation id="5275795814002959418"><ph name="COUNT" /> från den här webbplatsen</translation>
<translation id="5275973617553375938">Återställda filer från Google Drive</translation>
<translation id="527605719918376753">Stäng av ljud från flik</translation>
<translation id="527605982717517565">Tillåt alltid JavaScript på <ph name="HOST" /></translation>
@@ -3090,6 +3104,7 @@ Tryck på någon tangent om du vill fortsätta utforska.</translation>
<translation id="5328285148748012771">Få åtkomst till alla dina appar från det här praktiska startprogrammet. Spela spel, starta videosamtal, lyssna på musik, redigera dokument eller hämta fler appar från Chrome Web Store.</translation>
<translation id="5329858601952122676">&amp;Ta bort</translation>
<translation id="5330145655348521461">Filerna öppnades på ett annat skrivbord. Byt till <ph name="USER_NAME" /> (<ph name="MAIL_ADDRESS" />) om du vill visa dem.</translation>
+<translation id="5331975486040154427">USB-C-enhet (bakre porten på vänster sida)</translation>
<translation id="5332624210073556029">Tidszon:</translation>
<translation id="5334142896108694079">Cacheminne för skript</translation>
<translation id="533433379391851622">Förväntad version <ph name="EXPECTED_VERSION" />, men versionen var <ph name="NEW_ID" />.</translation>
@@ -3136,6 +3151,7 @@ Tryck på någon tangent om du vill fortsätta utforska.</translation>
<translation id="539755880180803351">Fyller i webbformulär med förslag från Autofyll som platshållartext.</translation>
<translation id="5397578532367286026">Användning och historik för den här användaren kan granskas av den ansvarige (<ph name="MANAGER_EMAIL" />) på chrome.com.</translation>
<translation id="5397794290049113714">Du</translation>
+<translation id="5398824043967640339"><ph name="COUNT" /> från andra webbplatser</translation>
<translation id="5399158067281117682">PIN-koderna matchar inte varandra!</translation>
<translation id="5400640815024374115">TPM-chippet (Trusted Platform Module) har inaktiverats eller tagits bort.</translation>
<translation id="5402367795255837559">Punktskrift</translation>
@@ -3963,6 +3979,7 @@ Tryck på någon tangent om du vill fortsätta utforska.</translation>
<translation id="6575251558004911012">Fråga när en webbplats begär åtkomst till kameran (rekommenderas)</translation>
<translation id="6581162200855843583">Google Drive-länk</translation>
<translation id="6583070985841601920">Inloggad som <ph name="USER_EMAIL_ADDRESS" />. Synkronisering har inaktiverats av administratören.</translation>
+<translation id="65832705307647870">Visa en första uppsättning populära webbplatser på sidan Ny flik.</translation>
<translation id="6584878029876017575">Microsofts Livstids signering</translation>
<translation id="6585234750898046415">Välj en bild som ska visas för ditt konto på inloggningsskärmen.</translation>
<translation id="6585283250473596934">Loggar in på offentlig session.</translation>
@@ -4306,6 +4323,7 @@ Tryck på någon tangent om du vill fortsätta utforska.</translation>
<translation id="7092106376816104">Undantag för popup-fönster</translation>
<translation id="7093866338626856921">Utväxla data med enheterna <ph name="HOSTNAMES" /></translation>
<translation id="7096082900368329802">Vill du hitta fler grymma funktioner?</translation>
+<translation id="7098389117866926363">USB-C-enhet (vänstra porten på baksidan)</translation>
<translation id="7100897339030255923"><ph name="COUNT" /> markerade objekt</translation>
<translation id="7106346894903675391">Köp mer lagringsutrymme ...</translation>
<translation id="7108338896283013870">Dölj</translation>
@@ -5073,6 +5091,7 @@ Spara nyckelfilen på ett säkert ställe. Den behövs om du ska skapa nya versi
<translation id="8190193592390505034">Ansluter till <ph name="PROVIDER_NAME" /></translation>
<translation id="8191230140820435481">Hantera dina appar, tillägg och teman</translation>
<translation id="8191453843330043793">V8-proxytolk</translation>
+<translation id="8199491812735365610">Välj ett konto att logga in på</translation>
<translation id="8200772114523450471">Återuppta</translation>
<translation id="8202160505685531999">Ange lösenordet på nytt om du vill uppdatera din profil på <ph name="DEVICE_TYPE" />.</translation>
<translation id="8204086856545141093">Förfrågningar till servern har blockerats av en policy.</translation>
@@ -5203,6 +5222,7 @@ Spara nyckelfilen på ett säkert ställe. Den behövs om du ska skapa nya versi
<translation id="8381977081675353473">slovakiska</translation>
<translation id="8382645631174981738"><ph name="EXTENSION_NAME" /> fjärrinstallerades</translation>
<translation id="8382913212082956454">Kopiera &amp;e-postadress</translation>
+<translation id="8384113940676655504">Aktiverar en Smart Lock-inställning som gör att Chromebook kan upptäcka mobiler via Bluetooth Low Energy för att låsa upp Chromebook när mobilen är i närheten.</translation>
<translation id="8390029840652165810">Se till att nätverksanslutningen fungerar. Om problemet kvarstår loggar du ut och sedan in igen för att uppdatera inloggningsuppgifterna.</translation>
<translation id="8390445751804042000">Möjliggör att enheten aktiveras när vissa nätverkspaket tas emot.</translation>
<translation id="8390449457866780408">Servern är inte tillgänglig.</translation>
@@ -5289,6 +5309,7 @@ Spara nyckelfilen på ett säkert ställe. Den behövs om du ska skapa nya versi
<translation id="8509646642152301857">Det gick inte att ladda ned ordlistan för stavningskontrollen.</translation>
<translation id="8512476990829870887">Avsluta process</translation>
<translation id="851263357009351303">Tillåt alltid att <ph name="HOST" /> visar bilder</translation>
+<translation id="8513191386157529469"><ph name="CLIENT_NAME" /> felsöker den här webbläsaren.</translation>
<translation id="8513974249124254369">ChromeVox (talad feedback) har aktiverats. Inaktivera funktionen genom att trycka på Ctrl+Alt+Z.</translation>
<translation id="8515737884867295000">Certifikatbaserad autentisering misslyckades</translation>
<translation id="8518865679229538285">Inmatningsmetod för tamil (Typewriter)</translation>
@@ -5408,6 +5429,7 @@ Spara nyckelfilen på ett säkert ställe. Den behövs om du ska skapa nya versi
<translation id="8677039480012021122">Rensa data och koppla från</translation>
<translation id="8677212948402625567">Dölj alla...</translation>
<translation id="8678648549315280022">Hantera inställningar för nedladdning ...</translation>
+<translation id="8680251145628383637">Logga in om du vill få tillgång till samma bokmärken, historik, lösenord och andra inställningar på alla dina enheter. Dessutom blir du automatiskt inloggad på Googles tjänster.</translation>
<translation id="8680536109547170164"><ph name="QUERY" />, svar, <ph name="ANSWER" /></translation>
<translation id="8680787084697685621">Inloggningsuppgifterna för kontot är inte aktuella.</translation>
<translation id="8684255857039823328">Lösenordet har sparats. Få tillgång till dina lösenord från alla enheter på <ph name="MANAGEMENT_LINK" />.</translation>
@@ -5463,6 +5485,7 @@ Spara nyckelfilen på ett säkert ställe. Den behövs om du ska skapa nya versi
<translation id="874420130893181774">Inmatningsmetod för traditionell Pinyin</translation>
<translation id="8744525654891896746">Välj en avatar för den här hanterade användaren</translation>
<translation id="8744641000906923997">Romaji</translation>
+<translation id="8744959718895556609">Välj ett konto från <ph name="LINK_TEXT" /></translation>
<translation id="8749863574775030885">Komma åt USB-enheter från en okänd leverantör</translation>
<translation id="8754200782896249056">&lt;p&gt;När <ph name="PRODUCT_NAME" /> körs i en skrivbordsmiljö som stöds används datorns proxyinställningar. Det kan hända att din dator inte stöds eller att det uppstod ett problem vid start av systemkonfigurationen.&lt;/p&gt;
@@ -5583,6 +5606,7 @@ Spara nyckelfilen på ett säkert ställe. Den behövs om du ska skapa nya versi
<translation id="8933960630081805351">&amp;Visa i Finder</translation>
<translation id="8934732568177537184">Fortsätt</translation>
<translation id="8938356204940892126">Jag ger upp</translation>
+<translation id="8938800817013097409">USB-C-enhet (högra porten på baksidan)</translation>
<translation id="8940081510938872932">Datorn har för mycket att göra just nu. Försök igen senare.</translation>
<translation id="8941173171815156065">Återkalla behörigheten <ph name="PERMISSION" /></translation>
<translation id="8941248009481596111">Din anslutning till webbplatsen är privat.</translation>
diff --git a/chromium/chrome/app/resources/generated_resources_sw.xtb b/chromium/chrome/app/resources/generated_resources_sw.xtb
index 2ae8023f954..e7408d4c9c4 100644
--- a/chromium/chrome/app/resources/generated_resources_sw.xtb
+++ b/chromium/chrome/app/resources/generated_resources_sw.xtb
@@ -136,6 +136,8 @@
<translation id="1178581264944972037">Sitisha</translation>
<translation id="1179803038870941185"><ph name="URL" /> inataka kupata udhibiti kamili wa vifaa vyako vya MIDI.</translation>
<translation id="1181037720776840403">Ondoa</translation>
+<translation id="11814323404622888">"&gt;
+ Kifaa cha USB-C (mlango wa kulia nyuma)</translation>
<translation id="1183083053288481515">Kutumia cheti kilichotolewa cha msimamizi</translation>
<translation id="1183237619868651138">Haiwezi kusakinisha <ph name="EXTERNAL_CRX_FILE" /> katika akiba ya ndani.</translation>
<translation id="1185924365081634987">Pia unaweza kujaribu <ph name="GUEST_SIGNIN_LINK_START" />kuvinjari kama aliyealikwa<ph name="GUEST_SIGNIN_LINK_END" /> ili kurekebisha hitilafu hii ya mtandao.</translation>
@@ -329,6 +331,7 @@
<translation id="1468038450257740950">WebGL haihimiliwi.</translation>
<translation id="1470719357688513792">Mipangilio mipya ya kidakuzi itaanza kutumika baada ya kupakia upya ukurasa.</translation>
<translation id="14720830734893704">Washa utumiaji wa kibodi isiyo bayana.</translation>
+<translation id="1474079335130556426">Washa kipengele cha hali ya chini chini ya API ya Push. Hii huruhusu Chrome kuendelea kutekeleza baada ya dirisha la mwisho kufungwa, na kufungua Mfumo wa Uendeshaji unapoanzishwa, ikiwa API ya Push inaihitaji.</translation>
<translation id="1474339897586437869">"<ph name="FILENAME" />" haikupakiwa. Hakuna nafasi ya kutosha katika Hifadhi yako ya Google.</translation>
<translation id="1476503841242751994">{COUNT,plural, =1{Nenosiri 1}other{Manenosiri #}}</translation>
<translation id="1476949146811612304">Bainisha ni mtambo upi wa kutafuta unaotumika wakati wa kutafuta kutoka
@@ -651,6 +654,7 @@
<translation id="1918141783557917887">&amp;Ndogo zaidi</translation>
<translation id="192144045824434199">Washa vidirisha vinavyofungukia nje ya fremu ya kivinjari. Jaribio la kufungua Kidirisha, badala yake, litafungua kiibukizi iwapo hakijawashwa. Vidirisha vinawashwa mara kwa mara kwenye vituo vya usanidi na kanari.</translation>
<translation id="1921584744613111023">Dpi <ph name="DPI" /></translation>
+<translation id="1921986354447415460">Kibodi ya Kituruki-F</translation>
<translation id="1923786009776354244">Washa matumizi ya kijajuu asili cha WebRTC Stun.</translation>
<translation id="1926741348654461781">Washa kurasa zilizo nje ya mtandao</translation>
<translation id="1929546189971853037">Kusoma historia yako ya kuvinjari kwenye vifaa vyako vyote ambavyo umetumia kuingia katika akaunti</translation>
@@ -854,6 +858,7 @@ Imebakisha <ph name="HOUR" />:<ph name="MINUTE" /> ijae</translation>
<translation id="2231990265377706070">Sehemu ya kuhisishi</translation>
<translation id="2232876851878324699">Faili ilikuwa na cheti kimoja, ambacho hakikuwa kimeletwa:</translation>
<translation id="2233502537820838181">&amp;Maelezo Zaidi</translation>
+<translation id="2233587473672843170">Onyesha tovuti maarufu kwenye ukurasa wa Kichupo Kipya</translation>
<translation id="223714078860837942">Ikiwa ukurasa haujaweka sera ya rejeleo, kuweka ripoti hii kutapunguza kiwango cha maelezo katika kijajuu cha 'rejeleo' kwa maombi yenye asili mchanganyiko.</translation>
<translation id="2238379619048995541">Data ya Hali ya Masafa</translation>
<translation id="2239921694246509981">Ongeza mtu anayesimamiwa</translation>
@@ -929,6 +934,7 @@ Baada ya kuunda mtumiaji mpya anayesimamiwa, unaweza kudhibiti mipangilio yake w
<translation id="2326606747676847821">Vinjari katika Hali Fiche</translation>
<translation id="2326931316514688470">Pakia upya programu</translation>
<translation id="2327492829706409234">Washa programu</translation>
+<translation id="2329597144923131178">Ingia katika akaunti ili upate alamisho, historia, manenosiri, na mipangilio yako mingine kwenye vifaa vyako vyote.</translation>
<translation id="2332131598580221120">Angalia katika Duka la Wavuti</translation>
<translation id="2332742915001411729">Rejesha kwenye chaguo-msingi</translation>
<translation id="2335122562899522968">Ukurasa huu unaweka vidakuzi.</translation>
@@ -1316,6 +1322,7 @@ Sidhani ikiwa tovuti hii inapaswa kuzuiwa!</translation>
<translation id="2838379631617906747">Inasakinisha</translation>
<translation id="2841837950101800123">Mtoa huduma</translation>
<translation id="2843806747483486897">Badilisha chaguo-msingi...</translation>
+<translation id="2844169650293029770">Kifaa cha USB-C (mlango wa upande wa kushoto mbele)</translation>
<translation id="2845382757467349449">Onyesha Upau wa Alamisho Kila Wakati</translation>
<translation id="2846816712032308263">Huwasha ufungaji wa haraka wa kichupo/dirisha - huendesha vishikilizi vya onunload js vya kichupo kwa kujitegemea kando ya GUI.</translation>
<translation id="284970761985428403"><ph name="ASCII_NAME" /> (<ph name="UNICODE_NAME" />)</translation>
@@ -1381,6 +1388,7 @@ Sidhani ikiwa tovuti hii inapaswa kuzuiwa!</translation>
<translation id="2923469375796950815">Zima ZIP unpacker mpya.</translation>
<translation id="2924296707677495905">Unukuzi wa mfumo wa kuandika (namaskaram → ನಮಸ್ಕಾರ)</translation>
<translation id="2925966894897775835">Majedwali</translation>
+<translation id="2927017729816812676">Hifadhi ya Akiba</translation>
<translation id="2927657246008729253">Badilisha...</translation>
<translation id="2928526264833629376">Nenda kwenye Hangouts</translation>
<translation id="2930644991850369934">Kulikuwa na tatizo wakati wa kufufua picha ya upakuaji. Muunganisho wa mtandao umepotea.</translation>
@@ -1718,6 +1726,7 @@ Sidhani ikiwa tovuti hii inapaswa kuzuiwa!</translation>
<translation id="3396331542604645348">Printa iliyochaguliwa haipatikani au haijasakinishwa vizuri. Angalia printa yako au ujaribu kuchagua printa nyingine.</translation>
<translation id="3399597614303179694">Kibodi ya Kimasedonia</translation>
<translation id="340013220407300675">Huenda wavamizi wanajaribu kuiba maelezo yako kutoka <ph name="BEGIN_BOLD" /><ph name="SITE" /><ph name="END_BOLD" /> (kwa mfano, manenosiri, ujumbe, au kadi za malipo).</translation>
+<translation id="3401130144947259741">Ikiwashwa, matukio ya kufuatilia yatahamishwa hadi kwenye Ufuatiliaji wa Matukio ya Windows (ETW) kisha yanaweza kupigwa picha kwa zana kama vile UIForETW au Xperf.</translation>
<translation id="340282674066624"><ph name="DOWNLOAD_RECEIVED" />, <ph name="TIME_LEFT" /></translation>
<translation id="3406605057700382950">&amp;Onyesha upau alamisho</translation>
<translation id="3412265149091626468">Ruka hadi Iliyochaguliwa</translation>
@@ -1874,6 +1883,7 @@ Sidhani ikiwa tovuti hii inapaswa kuzuiwa!</translation>
<translation id="3603385196401704894">Kifaransa cha Kanada</translation>
<translation id="3603622770190368340">Pata cheti cha mtandao</translation>
<translation id="3605780360466892872">Kitufechini</translation>
+<translation id="3606220979431771195">Kituruki-F</translation>
<translation id="3608454375274108141">F10</translation>
<translation id="3608576286259426129">Kihakiki cha picha ya mtumiaji</translation>
<translation id="3609138628363401169">Seva haihimili kiendelezi cha TLS cha utambuaji.</translation>
@@ -2389,6 +2399,7 @@ Ungependa kuanza <ph name="CONTROL_PANEL_APPLET_NAME" />?</translation>
<translation id="4321136812570927563">{NUM_DOWNLOAD,plural, =1{Endeleza kipakuliwa}other{Endeleza vipakuliwa}}</translation>
<translation id="4321179778687042513">ctrl</translation>
<translation id="4322394346347055525">Funga Vichupo Vingine</translation>
+<translation id="4325378361067528777">Washa kipengele cha hali ya chini chini ya API ya Push</translation>
<translation id="4326952458285403282">Huwasha matumizi ya mfumo wa majaribio wa utekelezaji wa fonti ya DirectWrite.</translation>
<translation id="4326999707196471878">Vidirisha vya Kivinjari cha Toolkit-Views.</translation>
<translation id="4330406155931244378">Washa Kipengee cha Kikagua Maendelezo cha Lugha Nyingi</translation>
@@ -2927,6 +2938,8 @@ Bonyeza kitufe chochote ili kuendelea kuchunguza.</translation>
<translation id="5148652308299789060">Inalemaza rasterizer ya programu ya 3D</translation>
<translation id="5150254825601720210">Jina la Seva ya SSL ya Cheti cha Netscape</translation>
<translation id="5151034238407558331">Kwa bahati mbaya, Google Payments inaweza kutumiwa tu kwa muuzaji huyu na wanunuzi wenye anwani ya Marekani. Ikiwa wewe ni mkazi wa Marekani, tafadhali badilisha anwani yako ya nyumbani ukitumia Google Payments| au lipa bila kutumia Google Payments.</translation>
+<translation id="5151639798712723370">"&gt;
+ Kifaa cha USB-C (mlango wa upande wa kulia mbele)</translation>
<translation id="5152451685298621771">(Akaunti ya watoto)</translation>
<translation id="5154108062446123722">Mipangilio ya kina ya <ph name="PRINTING_DESTINATION" /></translation>
<translation id="5154176924561037127">F8</translation>
@@ -3025,6 +3038,7 @@ Bonyeza kitufe chochote ili kuendelea kuchunguza.</translation>
<translation id="5271247532544265821">Togoa modi Iliyorahisishwa/Kichina cha Jadi</translation>
<translation id="5271549068863921519">Hifadhi nenosiri</translation>
<translation id="5273628206174272911">Uendeshaji wa historia ya jaribio katika kujibu utembezaji zaidi wa mlalo.</translation>
+<translation id="5275795814002959418"><ph name="COUNT" /> kutoka kwenye tovuti hii</translation>
<translation id="5275973617553375938">Faili zilizorejeshwa kutoka Hifadhi ya Google</translation>
<translation id="527605719918376753">Nyamazisha kichupo</translation>
<translation id="527605982717517565">Ruhusu <ph name="HOST" /> iendeshe JavaScript kila wakati</translation>
@@ -3071,6 +3085,7 @@ Bonyeza kitufe chochote ili kuendelea kuchunguza.</translation>
<translation id="5328285148748012771">Pata programu zako zote kutoka kwenye Kifungua Programu hiki muhimu. Cheza michezo, piga gumzo la video, sikiliza muziki, hariri hati, au upate programu zaidi kutoka kwenye Duka la Chrome Wavutini.</translation>
<translation id="5329858601952122676">&amp;Futa</translation>
<translation id="5330145655348521461">Faili hizi zilifunguka kwenye eneo-kazi tofauti. Sogea kwenye <ph name="USER_NAME" /> ( <ph name="MAIL_ADDRESS" /> ) ili uzione.</translation>
+<translation id="5331975486040154427">Kifaa cha USB-C (mlango wa upande wa kushoto nyuma)</translation>
<translation id="5332624210073556029">Saa za eneo:</translation>
<translation id="5334142896108694079">Akiba ya Hati</translation>
<translation id="533433379391851622">Toleo linalotarajiwa "<ph name="EXPECTED_VERSION" />", lakini toleo lilikuwa "<ph name="NEW_ID" />".</translation>
@@ -3117,6 +3132,7 @@ Bonyeza kitufe chochote ili kuendelea kuchunguza.</translation>
<translation id="539755880180803351">Ongezea maelezo fomu zilizo na utabiri wa aina ya uga Mjazo-otomatiki kama maandishi ya kishika nafasi.</translation>
<translation id="5397578532367286026">Matumizi na historia ya mtumiaji huyu yanaweza kukaguliwa na msimamizi ( <ph name="MANAGER_EMAIL" /> ) kwenye chrome.com.</translation>
<translation id="5397794290049113714">Wewe</translation>
+<translation id="5398824043967640339"><ph name="COUNT" /> kutoka kwenye tovuti nyingine</translation>
<translation id="5399158067281117682">PIN hazioani!</translation>
<translation id="5400640815024374115">Chipu ya Mfumo wa uendeshaji unaoaminika (TPM) imelemazwa au haipo.</translation>
<translation id="5402367795255837559">Breli</translation>
@@ -3938,6 +3954,7 @@ Vipengee fulani huenda visipatikane, Tafadhali hakikisha kuwa wasifu upo na una
<translation id="6575251558004911012">Uliza wakati tovuti inahitaji kufikia kamera yako (inapendekezwa)</translation>
<translation id="6581162200855843583">Kiungo cha Hifadhi ya Google</translation>
<translation id="6583070985841601920">Uliingia kama <ph name="USER_EMAIL_ADDRESS" />. Usawazishaji umefungwa na msimamizi wako.</translation>
+<translation id="65832705307647870">Jaza ukurasa wa Kichupo Kipya mapema kwa tovuti maarufu.</translation>
<translation id="6584878029876017575">Uwekaji Sahihi wa Maisha kutoka Microsoft</translation>
<translation id="6585234750898046415">Chagua picha ya kuonyesha ya akaunti yako kwenye skrini ya kuingia.</translation>
<translation id="6585283250473596934">Inaingia kipindi cha umma.</translation>
@@ -4284,6 +4301,7 @@ Vipengee fulani huenda visipatikane, Tafadhali hakikisha kuwa wasifu upo na una
<translation id="7092106376816104">Vighairi madirisha ibukizi</translation>
<translation id="7093866338626856921">Badilisha data kwa vifaa viitwavyo: <ph name="HOSTNAMES" /></translation>
<translation id="7096082900368329802">Je, unataka kugundua vipengee maridadi zaidi?</translation>
+<translation id="7098389117866926363">Kifaa cha USB-C (mlango wa kushoto nyuma)</translation>
<translation id="7100897339030255923">Vipengee vilivyoteuliwa<ph name="COUNT" /></translation>
<translation id="7106346894903675391">Nunua hifadhi zaidi...</translation>
<translation id="7108338896283013870">Ficha</translation>
@@ -4383,7 +4401,7 @@ Vipengee fulani huenda visipatikane, Tafadhali hakikisha kuwa wasifu upo na una
<translation id="7255935316994522020">Tuma</translation>
<translation id="7256710573727326513">Fungua katika kichupo</translation>
<translation id="7257173066616499747">Mitandao ya Wi-Fi</translation>
-<translation id="7257666756905341374">Soma data unayonakili na kubandika</translation>
+<translation id="7257666756905341374">Kusoma data unayonakili na kubandika</translation>
<translation id="7260002739296185724">Washa matumizi ya AVFoundation kwa ajili ya kuchukua picha za video na ufuatiliaji wa kifaa cha video kwenye OS X&gt; = 10.7. QTKit itatumika badala yake.</translation>
<translation id="7262221505565121">Vighairi vya idhini ya kufikia programu-jalizi isiyo kwenye sandbox</translation>
<translation id="7264275118036872269">Imeshindwa kuanzisha ugunduzi wa kifaa cha Bluetooth.</translation>
@@ -4769,7 +4787,7 @@ Hebu! Huenda hali fiche <ph name="SHORTCUT_KEY" /> ikakufaa wakati ujao.</transl
<translation id="7800304661137206267">Muunganisho umesimbwa fiche kwa kutumia <ph name="CIPHER" />, kwa <ph name="MAC" /> ya uthibitishaji wa ujumbe na <ph name="KX" /> kama utaratibu muhimu wa ubadilishanaji.</translation>
<translation id="7800518121066352902">Zungusha Kinyume saa</translation>
<translation id="7801746894267596941">Mtu aliye na kaulisiri yako tu ndiye anayeweza kusoma data yako iliyosimbwa kwa njia fiche. Kaulisiri haitumwi au kuhifadhiwa na Google. Ukisahau kaulisiri yako, utaihitaji ku</translation>
-<translation id="780301667611848630">La, asante</translation>
+<translation id="780301667611848630">Sitaki</translation>
<translation id="7805768142964895445">Hali</translation>
<translation id="7806513705704909664">Washa kipengele cha Kujaza Kiotomatiki ili kujaza fomu za wavuti kwa mbofyo mmoja.</translation>
<translation id="7807711621188256451">Ruhusu <ph name="HOST" /> kufikia kamera yako kila wakati</translation>
@@ -5062,6 +5080,7 @@ Inakokotoa muda unaosalia</translation>
<translation id="8190193592390505034">Inaunganisha kwenye <ph name="PROVIDER_NAME" /></translation>
<translation id="8191230140820435481">Kudhibiti programu, viendelezi na mandhari yako</translation>
<translation id="8191453843330043793">Kitatuaji cha Seva Mbadala ya V8</translation>
+<translation id="8199491812735365610">Chagua akaunti ya kuingia</translation>
<translation id="8200772114523450471">Endelea</translation>
<translation id="8202160505685531999">Tafadhali andika tena nenosiri lako ili usasishe wasifu wako kwenye <ph name="DEVICE_TYPE" />.</translation>
<translation id="8204086856545141093">Maombi kwenda kwa seva yamezuiwa na sera.</translation>
@@ -5193,6 +5212,7 @@ Inakokotoa muda wa kujaa</translation>
<translation id="8381977081675353473">Kislovakia</translation>
<translation id="8382645631174981738"><ph name="EXTENSION_NAME" /> kilisakinishwa kwa mbali</translation>
<translation id="8382913212082956454">Nakili barua p&amp;epe</translation>
+<translation id="8384113940676655504">Huwasha mipangilio ya Smart Lock inayoruhusu Chromebook kugundua simu kupitia Bluetooth Low Energy ili kufungua Chromebook simu ikiwa karibu nayo.</translation>
<translation id="8390029840652165810">Tafadhali hakikisha muunganisho wako wa mtandao unafanya kazi na ikiwa tatizo litaendelea, tafadhali ondoka na uingie tena ili kuonyesha upya stakabadhi zako.</translation>
<translation id="8390445751804042000">Huwasha kuamsha kifaa kutegemea stakabadhi za pakiti za baadhi ya mitandao.</translation>
<translation id="8390449457866780408">Seva haipatikani.</translation>
@@ -5279,6 +5299,7 @@ Inakokotoa muda wa kujaa</translation>
<translation id="8509646642152301857">Upakuaji wa kamusi ya kukagua hijai umeshindwa.</translation>
<translation id="8512476990829870887">Komesha Shughuli</translation>
<translation id="851263357009351303">Ruhusu <ph name="HOST" /> ionyeshe picha kila wakati</translation>
+<translation id="8513191386157529469">"<ph name="CLIENT_NAME" />" inatatua kivinjari hiki.</translation>
<translation id="8513974249124254369">ChromeVox (maoni yaliyotamkwa) yamewashwa. Bonyeza Ctrl+Alt+Z ili uzime.</translation>
<translation id="8515737884867295000">Uthibitishaji unaolingana na cheti umeshindikana</translation>
<translation id="8518865679229538285">Mbinu ingizo ya Kitamili (Typewriter)</translation>
@@ -5398,6 +5419,7 @@ Inakokotoa muda wa kujaa</translation>
<translation id="8677039480012021122">Futa data na uondoe akaunti ya mtumiaji</translation>
<translation id="8677212948402625567">Kunja zote...</translation>
<translation id="8678648549315280022">Dhibiti mipangilio ya upakuaji...</translation>
+<translation id="8680251145628383637">Ingia katika akaunti ili upate alamisho, historia, manenosiri, na mipangilio yako mingine kwenye vifaa vyako vyote. Pia utaingia katika huduma zako kwenye Google kiotomatiki.</translation>
<translation id="8680536109547170164"><ph name="QUERY" />, jibu, <ph name="ANSWER" /></translation>
<translation id="8680787084697685621">Maelezo ya kuingia kwenye akaunti yamechina.</translation>
<translation id="8684255857039823328">Nenosiri limehifadhiwa. Fikia manenosiri yako kutoka kifaa chochote kwenye <ph name="MANAGEMENT_LINK" />.</translation>
@@ -5453,6 +5475,7 @@ Inakokotoa muda wa kujaa</translation>
<translation id="874420130893181774">Mbinu ya kuingiza data ya Pinyin ya Jadi</translation>
<translation id="8744525654891896746">Chagua ishara kwa mtumiaji huyu anayesimamiwa</translation>
<translation id="8744641000906923997">Romaji</translation>
+<translation id="8744959718895556609">Chagua akaunti kutoka kwenye <ph name="LINK_TEXT" /> yako</translation>
<translation id="8749863574775030885">Fikia vifaa vya USB kutoka kwa mchuuzi asiyejulikana</translation>
<translation id="8754200782896249056">&lt;p&gt;Unapotekeleza <ph name="PRODUCT_NAME" /> chini ya mazingira ya eneo-kazi yanayotumika, mipangilio ya mfumo ya proksi itatumiwa. Hata hivyo, huenda mfumo wako hautumiki au kulikuwa na tatizo wakati wa kufungua usanidi wako wa mfumo.&lt;/p&gt;
@@ -5570,6 +5593,7 @@ Inakokotoa muda wa kujaa</translation>
<translation id="8933960630081805351">Onye&amp;sha katika Kipataji</translation>
<translation id="8934732568177537184">Endelea</translation>
<translation id="8938356204940892126">Ninasalimu amri</translation>
+<translation id="8938800817013097409">Kifaa cha USB-C (mlango wa kulia nyuma)</translation>
<translation id="8940081510938872932">Kompyuta yako inafanya vitu vingi sana kwa wakati huu. Jaribu tena baadaye.</translation>
<translation id="8941173171815156065">Batilisha ruhusa '<ph name="PERMISSION" />'</translation>
<translation id="8941248009481596111">Muunganisho wako kwenye tovuti hii ni wa faragha.</translation>
diff --git a/chromium/chrome/app/resources/generated_resources_ta.xtb b/chromium/chrome/app/resources/generated_resources_ta.xtb
index 6cad35d2719..f5d746e7ff0 100644
--- a/chromium/chrome/app/resources/generated_resources_ta.xtb
+++ b/chromium/chrome/app/resources/generated_resources_ta.xtb
@@ -135,6 +135,8 @@
<translation id="1178581264944972037">இடைநிறுத்து</translation>
<translation id="1179803038870941185"><ph name="URL" /> MIDI சாதனங்களின் முழுக் கட்டுப்பாடையும் பெற விரும்புகிறது.</translation>
<translation id="1181037720776840403">அகற்று</translation>
+<translation id="11814323404622888">"&gt;
+ USB-C சாதனம் (வலது பக்கம் பின்னே இருக்கும் போர்ட்)</translation>
<translation id="1183083053288481515">நிர்வாகி வழங்கிய சான்றிதழ் பயன்படுத்தப்படுகிறது</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>
@@ -328,6 +330,7 @@
<translation id="1468038450257740950">WebGL ஆனது ஆதரவளிக்கப்படவில்லை.</translation>
<translation id="1470719357688513792">பக்கத்தை மறுஏற்றம் செய்ததும் புதிய குக்கீ அமைப்புகள் செயல்படும்.</translation>
<translation id="14720830734893704">விர்ச்சுவல் விசைப்பலகை ஆதரவை இயக்கு.</translation>
+<translation id="1474079335130556426">புஷ் APIக்கான பின்னணிப் பயன்முறையை இயக்கும். இது கடைசி சாளரம் மூடப்பட்ட பிறகும் Chromeஐத் தொடர்ந்து இயங்க அனுமதிக்கும், புஷ் APIக்கு தேவைப்பட்டால் OS தொடங்கும் போது இயங்கச் செய்யும்.</translation>
<translation id="1474339897586437869">"<ph name="FILENAME" />" ஏற்றப்படவில்லை. உங்கள் Google இயக்ககத்தில் போதுமான காலியிடம் இல்லை.</translation>
<translation id="1476503841242751994">{COUNT,plural, =1{ஒரு கடவுச்சொல்}other{# கடவுச்சொற்கள்}}</translation>
<translation id="1476949146811612304"><ph name="BEGIN_LINK" />சர்வபுலத்திலிருந்து<ph name="END_LINK" /> தேடும் போது பயன்படுத்தப்படும் தேடு பொறியை அமைக்கலாம்.</translation>
@@ -652,6 +655,7 @@
<translation id="1918141783557917887">&amp;சிறியது</translation>
<translation id="192144045824434199">உலாவிச் சட்டகத்திற்கு வெளிப்புறத்தில் திறக்கும் பலகச் சாளரங்களை இயக்கலாம். இயக்கப்பட்டிருக்கவில்லை என்றால், பலகத்தைத் திறப்பதற்கான முயற்சிகள் பாப்அப்பை திறக்கும். பலகங்கள் எப்போதும் தேவ் மற்றும் கனரி சேனல்களில் இயக்கப்படும்.</translation>
<translation id="1921584744613111023"><ph name="DPI" /> dpi</translation>
+<translation id="1921986354447415460">டர்கிஷ்-F விசைப்பலகை</translation>
<translation id="1923786009776354244">WebRTC ஸ்டன் அசல் மேற்தலைப்பு ஆதரவை இயக்கு.</translation>
<translation id="1926741348654461781">ஆஃப்லைன் பக்கங்களை இயக்கு</translation>
<translation id="1929546189971853037">நீங்கள் உள்நுழைந்துள்ள எல்லா சாதனங்களிலிருக்கும் உலாவல் வரலாற்றைப் படித்தல்</translation>
@@ -853,6 +857,7 @@
<translation id="2231990265377706070">வியப்புக்குறி</translation>
<translation id="2232876851878324699">கோப்பில் ஒரு இறக்குமதி செய்யப்படாத சான்றிதழ் உள்ளது:</translation>
<translation id="2233502537820838181">&amp;மேலும் தகவல்</translation>
+<translation id="2233587473672843170">புதிய தாவல் பக்கத்தில் பிரபலமான தளங்களைக் காட்டு</translation>
<translation id="223714078860837942">பக்கத்தில் வெளிப்படையான பரிந்துரையாளர் கொள்கையை அமைக்காமல் இருந்தால், இந்தக் கொடி அமைப்பது, குறுக்குத் தோற்ற கோரிக்கைகளுக்கான 'பரிந்துரைத்தவர்' தலைப்பில் தகவல் அளவு குறையும்.</translation>
<translation id="2238379619048995541">காலஇடைவெளி நிலையின் தரவு</translation>
<translation id="2239921694246509981">கண்காணிக்கும் பயனரைச் சேர்</translation>
@@ -931,6 +936,7 @@
<translation id="2326606747676847821">மறைநிலைக்குச் செல்</translation>
<translation id="2326931316514688470">&amp;பயன்பாட்டை மீண்டும் ஏற்று</translation>
<translation id="2327492829706409234">பயன்பாட்டை இயக்கு</translation>
+<translation id="2329597144923131178">உங்கள் எல்லா சாதனங்களிலும் புத்தகக்குறிகள், வரலாறு, கடவுச்சொற்கள் மற்றும் பிற அமைப்புகளைப் பெற உள்நுழையவும்.</translation>
<translation id="2332131598580221120">அங்காடியில் காட்டு</translation>
<translation id="2332742915001411729">இயல்புநிலைக்கு மீட்டமை</translation>
<translation id="2335122562899522968">இந்தப் பக்கம் குக்கீகளை அமைக்கும்.</translation>
@@ -1320,6 +1326,7 @@
<translation id="2838379631617906747">நிறுவுகிறது</translation>
<translation id="2841837950101800123">வழங்குநர்</translation>
<translation id="2843806747483486897">இயல்புநிலைக்கு மாற்று...</translation>
+<translation id="2844169650293029770">USB-C சாதனம் (இடது பக்கம் முன்னே இருக்கும் போர்ட்)</translation>
<translation id="2845382757467349449">எப்பொழுதும் புக்மார்க்ஸ் பட்டியைக் காண்பி</translation>
<translation id="2846816712032308263">வேகமான தாவல்/சாளரங்களை மூடுதல் ஆகியவற்றை இயக்குகிறது - GUI ஐச் சாராமலேயே தாவலின் onunload js ஹேண்ட்லரில் இயங்குகிறது.</translation>
<translation id="284970761985428403"><ph name="ASCII_NAME" /> (<ph name="UNICODE_NAME" />)</translation>
@@ -1388,6 +1395,7 @@
<translation id="2923469375796950815">புதிய ஜிப் கோப்பு பிரிப்பானை முடக்கு</translation>
<translation id="2924296707677495905">ஒலிபெயர்ப்பு (namaskaram → ನಮಸ್ಕಾರ)</translation>
<translation id="2925966894897775835">தாள்கள்</translation>
+<translation id="2927017729816812676">தற்காலிகச் சேமிப்பிடம்</translation>
<translation id="2927657246008729253">மாற்று...</translation>
<translation id="2928526264833629376">Hangouts இல் தொடரவும்</translation>
<translation id="2930644991850369934">மீட்டெடுப்பதற்கான படத்தைப் பதிவிறக்கும்போது சிக்கல் ஏற்பட்டது. பிணைய இணைப்பு இழக்கப்பட்டது.</translation>
@@ -1728,6 +1736,7 @@
<translation id="3396331542604645348">தேர்ந்தெடுத்த அச்சுப்பொறியானது இல்லை அல்லது சரியாக நிறுவப்படவில்லை. பிரிண்டரைச் சரிபார்க்கவும் அல்லது மற்றொரு பிரிண்டரைத் தேர்ந்தெடுக்கவும்.</translation>
<translation id="3399597614303179694">மாஸிடோனியன் விசைப்பலகை</translation>
<translation id="340013220407300675">தீங்கிழைப்பவர்கள் <ph name="BEGIN_BOLD" /><ph name="SITE" /><ph name="END_BOLD" /> இலிருந்து உங்கள் தகவலைத் திருட முயற்சிக்கலாம் (எடுத்துக்காட்டாக, கடவுச்சொற்கள், செய்திகள் அல்லது கிரெடிட் கார்டுகள்).</translation>
+<translation id="3401130144947259741">இயக்கப்பட்டால், பதிவெடுக்கப்படும் நிகழ்வுகள் Windowsக்கான நிகழ்வுப் பதிவெடுத்தலுக்கு (ETW) ஏற்றுமதி செய்யப்பட்டு, UIForETW அல்லது Xperf போன்ற கருவிகள் மூலம் பயன்படுத்தப்படலாம்.</translation>
<translation id="340282674066624"><ph name="DOWNLOAD_RECEIVED" />, <ph name="TIME_LEFT" /></translation>
<translation id="3406605057700382950">புக்மார்க்ஸ் பட்டியைக் &amp;காண்பி</translation>
<translation id="3412265149091626468">தேர்வுக்கு செல்</translation>
@@ -1884,6 +1893,7 @@
<translation id="3603385196401704894">கனடியன் ஃபிரெஞ்சு</translation>
<translation id="3603622770190368340">நெட்வொர்க் சான்றிதழ் பெறுதல்</translation>
<translation id="3605780360466892872">பட்டன்டவுண்</translation>
+<translation id="3606220979431771195">டர்கிஷ்-F</translation>
<translation id="3608454375274108141">F10</translation>
<translation id="3608576286259426129">பயனர் படத்தின் மாதிரிக்காட்சி</translation>
<translation id="3609138628363401169">TLS மறுபேர நீட்டிப்பை சேவையகம் ஆதரிக்கவில்லை.</translation>
@@ -2402,6 +2412,7 @@
<translation id="4321136812570927563">{NUM_DOWNLOAD,plural, =1{பதிவிறக்கத்தைத் தொடரவும்}other{பதிவிறக்கங்களைத் தொடரவும்}}</translation>
<translation id="4321179778687042513">ctrl</translation>
<translation id="4322394346347055525">பிற தாவல்களை மூடுக</translation>
+<translation id="4325378361067528777">புஷ் APIக்கான பின்னணிப் பயன்முறையை இயக்கு</translation>
<translation id="4326952458285403282">சோதனை முறையிலான DirectWrite எழுத்துரு ஒழுங்கமைவு அமைப்பின் பயன்பாட்டை முடக்குகிறது.</translation>
<translation id="4326999707196471878">டூல்கிட்-வியூஸ் உலாவி உரையாடல்கள்.</translation>
<translation id="4330406155931244378">பன்மொழிப் பிழைத்திருத்தியை இயக்கு</translation>
@@ -2931,6 +2942,8 @@
<translation id="5148652308299789060">3D மென்பொருள் மாற்றியை முடக்கு</translation>
<translation id="5150254825601720210">Netscape சான்றிதழ் SSL சேவையகப் பெயர்</translation>
<translation id="5151034238407558331">அமெரிக்க முகவரி உள்ளவர்கள் மட்டுமே இந்த விற்பனையாளரிடம் Google Paymentsஐப் பயன்படுத்த முடியும். நீங்கள் அமெரிக்கக் குடியுரிமை உள்ளவர் என்றால், |Google Payments இல் உங்கள் வீட்டு முகவரியை மாற்றவும்| அல்லது Google Paymentsஐப் பயன்படுத்தாமல் பணம் செலுத்தவும்.</translation>
+<translation id="5151639798712723370">"&gt;
+ USB-C சாதனம் (வலது பக்கம் முன்னே இருக்கும் போர்ட்)</translation>
<translation id="5152451685298621771">(குழந்தைகளுக்கான கணக்கு)</translation>
<translation id="5154108062446123722"><ph name="PRINTING_DESTINATION" /> க்கான மேம்பட்ட அமைப்புகள்</translation>
<translation id="5154176924561037127">F8</translation>
@@ -3027,6 +3040,7 @@
<translation id="5271247532544265821">எளிமையாக்கப்பட்ட/பாரம்பரிய சீனப் பயன்முறைகளுக்கு இடையே மாற்றுக</translation>
<translation id="5271549068863921519">கடவுச்சொல்லைச் சேமி</translation>
<translation id="5273628206174272911">கிடைமட்ட மிகைஉருட்டலுக்கான, பரிசோதனைக்குரிய வரலாற்றை வழிசெலுத்து.</translation>
+<translation id="5275795814002959418">இந்தத் தளத்திலிருந்து <ph name="COUNT" /></translation>
<translation id="5275973617553375938">Google இயக்கத்திலிருந்து மீட்கப்பட்ட கோப்புகள்</translation>
<translation id="527605719918376753">தாவலை முடக்கு</translation>
<translation id="527605982717517565"><ph name="HOST" /> இல் JavaScript ஐ எப்போதும் அனுமதி</translation>
@@ -3073,6 +3087,7 @@
<translation id="5328285148748012771">இந்த கையடக்க துவக்கியிலிருந்து உங்களின் எல்லா பயன்பாடுகளையும் அணுகலாம். கேம்களை விளையாடலாம், வீடியோ அரட்டையடிக்கலாம், இசைக் கேட்கலாம், ஆவணங்களைத் திருத்தலாம் அல்லது Chrome இணைய அங்காடியிலிருந்து கூடுதல் பயன்பாடுகளைப் பெறலாம்.</translation>
<translation id="5329858601952122676">&amp;நீக்கு</translation>
<translation id="5330145655348521461">இந்தக் கோப்புகள் மற்றொரு டெஸ்க்டாப்பில் திறக்கப்பட்டன. இதைப் பார்க்க, <ph name="USER_NAME" /> (<ph name="MAIL_ADDRESS" />) க்கு நகர்த்தவும்.</translation>
+<translation id="5331975486040154427">USB-C சாதனம் (இடது பக்கம் பின்னே இருக்கும் போர்ட்)</translation>
<translation id="5332624210073556029">நேர மண்டலம்:</translation>
<translation id="5334142896108694079">ஸ்கிரிப்ட் தற்காலிக சேமிப்பு</translation>
<translation id="533433379391851622">எதிர்பார்க்கப்பட்ட பதிப்பு "<ph name="EXPECTED_VERSION" />", ஆனால் பதிப்பு "<ph name="NEW_ID" />" ஆகும்.</translation>
@@ -3119,6 +3134,7 @@
<translation id="539755880180803351">தன்னிரப்பி புல வகை முன்கணிப்புகளுடன், வலைப் படிவங்களை ஒதுக்கிட உரையாகக் குறிக்கிறது.</translation>
<translation id="5397578532367286026">இந்தப் பயனரின் பயன்பாடு மற்றும் வரலாறு chrome.com இன் நிர்வாகியால் (<ph name="MANAGER_EMAIL" />) மதிப்பாய்வு செய்யப்படும்.</translation>
<translation id="5397794290049113714">நீங்கள்</translation>
+<translation id="5398824043967640339">பிற தளங்களிலிருந்து <ph name="COUNT" /></translation>
<translation id="5399158067281117682">பின்கள் பொருந்தவில்லை!</translation>
<translation id="5400640815024374115">Trusted Platform Module (TPM) சிப் முடக்கப்பட்டுள்ளது அல்லது இல்லை.</translation>
<translation id="5402367795255837559">பிரெய்ல்</translation>
@@ -3939,6 +3955,7 @@
<translation id="6575251558004911012">எனது கேமராவைத் தளம் அணுக வேண்டிய அவசியம் ஏற்படும்போது கேள் (பரிந்துரைக்கப்பட்டது)</translation>
<translation id="6581162200855843583">Google இயக்கக இணைப்பு</translation>
<translation id="6583070985841601920"><ph name="USER_EMAIL_ADDRESS" /> ஆக உள்நுழைந்துள்ளார். உங்கள் நிர்வாகியால் ஒத்திசைவு முடக்கப்பட்டது.</translation>
+<translation id="65832705307647870">புதிய தாவல் பக்கங்களைப் பிரபலமான தளங்களுடன் ஏற்றும்.</translation>
<translation id="6584878029876017575">Microsoft Lifetime Signing</translation>
<translation id="6585234750898046415">உங்கள் கணக்கிற்கான உள் நுழைவு திரையில் காண்பிக்க, ஒரு படத்தினைத் தேர்வுசெய்க.</translation>
<translation id="6585283250473596934">பொது அமர்வுக்கு மாறுகிறது.</translation>
@@ -4283,6 +4300,7 @@
<translation id="7092106376816104">பாப்-அப் விதிவிலக்குகள்</translation>
<translation id="7093866338626856921">பின்வரும் பெயரிடப்பட்ட எந்தச் சாதனங்களுடனும் தரவைப் பரிமாறவும்: <ph name="HOSTNAMES" /></translation>
<translation id="7096082900368329802">சிறந்த அற்புதமான அம்சங்களைக் கண்டறிய விரும்புகிறீர்களா?</translation>
+<translation id="7098389117866926363">USB-C சாதனம் (பின்பக்கம் உள்ள இடது போர்ட்)</translation>
<translation id="7100897339030255923"><ph name="COUNT" /> உருப்படிகள் தேர்ந்தெடுக்கப்பட்டுள்ளன.</translation>
<translation id="7106346894903675391">கூடுதல் சேமிப்பிடத்தை வாங்கு...</translation>
<translation id="7108338896283013870">மறை</translation>
@@ -5044,6 +5062,7 @@
<translation id="8190193592390505034"><ph name="PROVIDER_NAME" /> உடன் இணைக்கிறது</translation>
<translation id="8191230140820435481">உங்கள் பயன்பாடுகள், நீட்டிப்புகள் மற்றும் தீம்களை நிர்வகிக்கலாம்</translation>
<translation id="8191453843330043793">V8 புராக்ஸி ரிசால்வர்</translation>
+<translation id="8199491812735365610">உள்நுழைய ஒரு கணக்கைத் தேர்வுசெய்யவும்</translation>
<translation id="8200772114523450471">மீண்டும் தொடங்கு</translation>
<translation id="8202160505685531999">உங்கள் <ph name="DEVICE_TYPE" /> சுயவிவரத்தைப் புதுப்பிக்க உங்கள் கடவுச்சொல்லை மீண்டும் உள்ளிடவும்.</translation>
<translation id="8204086856545141093">சேவையகத்திற்கான கோரிக்கைகள் கொள்கையால் தடுக்கப்பட்டன.</translation>
@@ -5173,6 +5192,7 @@
<translation id="8381977081675353473">ஸ்லோவேக்கியன்</translation>
<translation id="8382645631174981738">தொலைநிலை மூலம் <ph name="EXTENSION_NAME" /> நிறுவப்பட்டுள்ளது</translation>
<translation id="8382913212082956454">&amp;மின்னஞ்சல் முகவரியை நகலெடு</translation>
+<translation id="8384113940676655504">Chromebook இன் அருகில் மொபைல் இருக்கும் போது Chromebookஐத் திறக்க, புளூடூத் லோ எனர்ஜி மூலம் மொபைல்களை Chromebook கண்டறிவதை அனுமதிக்கும் Smart Lock அமைப்பை இயக்கும்.</translation>
<translation id="8390029840652165810">உங்கள் பிணைய இணைப்பு வேலை செய்கிறதா என்பதை உறுதிசெய்யவும் மேலும் சிக்கல் தொடர்ந்தால், உங்கள் நற்சான்றுகளைப் புதுப்பிக்க வெளியேறி மீண்டும் உள்நுழையவும்.</translation>
<translation id="8390445751804042000">பெற்ற சில நெட்வொர்க் தொகுப்புகளின் அடிப்படையில், சாதனத்தை எழுப்புவதை இயக்குகிறது.</translation>
<translation id="8390449457866780408">சேவையகம் கிடைக்கவில்லை.</translation>
@@ -5259,6 +5279,7 @@
<translation id="8509646642152301857">எழுத்துப் பிழை சரிபார்ப்பு அகராதியைப் பதிவிறக்குவதில் தோல்வி.</translation>
<translation id="8512476990829870887">செயலாக்கத்தை முடி</translation>
<translation id="851263357009351303"><ph name="HOST" /> ஐ படங்களைக் காண்பிக்க எப்போதும் அனுமதி</translation>
+<translation id="8513191386157529469">"<ph name="CLIENT_NAME" />", இந்த உலாவியைப் பிழைத்திருத்தம் செய்கிறது.</translation>
<translation id="8513974249124254369">ChromeVox (பேச்சுவடிவ கருத்து) செயலாக்கப்பட்டது.
முடக்க Ctrl+Alt+Z அழுத்தவும்.</translation>
<translation id="8515737884867295000">சான்றிதழ் அடிப்படையிலான அங்கீகரிப்பு தோல்வியடைந்தது</translation>
@@ -5379,6 +5400,7 @@
<translation id="8677039480012021122">தரவை அழித்து, துண்டி</translation>
<translation id="8677212948402625567">அனைத்தையும் சுருக்கு...</translation>
<translation id="8678648549315280022">பதிவிறக்க அமைப்புகளை நிர்வகிக்கவும்...</translation>
+<translation id="8680251145628383637">உள்நுழைந்து, உங்கள் சாதனங்கள் எல்லாவற்றிலும் உள்ள புத்தகக்குறிகள், வரலாறு, கடவுச்சொற்கள் மற்றும் பிற அமைப்புகளைப் பெறவும். உங்கள் Google சேவைகளிலும் தானாகவே உள்நுழைவீர்கள்.</translation>
<translation id="8680536109547170164"><ph name="QUERY" />, பதில், <ph name="ANSWER" /></translation>
<translation id="8680787084697685621">கணக்கு உள்நுழைவு விவரங்கள் காலாவதியாகிவிட்டன.</translation>
<translation id="8684255857039823328">கடவுச்சொல் சேமிக்கப்பட்டது. எந்தச் சாதனத்திலிருந்தும் <ph name="MANAGEMENT_LINK" />க்குச் சென்று உங்கள் கடவுச்சொற்களை அணுகலாம்.</translation>
@@ -5434,6 +5456,7 @@
<translation id="874420130893181774">பாரம்பரிய பின்யின் உள்ளீட்டு முறை</translation>
<translation id="8744525654891896746">இந்தக் கண்காணிக்கப்படும் பயனருக்கான தோற்றத்தைத் தேர்ந்தெடுக்கவும்.</translation>
<translation id="8744641000906923997">ரோமாஜி</translation>
+<translation id="8744959718895556609">உங்கள் <ph name="LINK_TEXT" /> இலிருந்து ஒரு கணக்கைத் தேர்வுசெய்யவும்</translation>
<translation id="8749863574775030885">அறியப்படாத விற்பனையாளரிடமிருந்து USB சாதனங்களை அணுகு</translation>
<translation id="8754200782896249056">&lt;p&gt;ஆதரிக்கப்பட்ட டெஸ்க்டாப் சூழலில் <ph name="PRODUCT_NAME" /> இயங்கும்போது, கணினி ப்ராக்ஸி அமைப்புகள் பயன்படுத்தப்படும். எனினும், உங்கள் கணினி ஆதரிக்கப்படாமல் இருக்கலாம் அல்லது உங்கள் கணினி உள்ளமைவை தொடங்குவதில் சிக்கல் இருக்கலாம்.&lt;/p&gt;
@@ -5554,6 +5577,7 @@
<translation id="8933960630081805351">&amp;கண்டுபிடிப்பானில் காண்பி</translation>
<translation id="8934732568177537184">தொடரவும்</translation>
<translation id="8938356204940892126">விட்டுவிடு</translation>
+<translation id="8938800817013097409">USB-C சாதனம் (பின்பக்கம் உள்ள வலது போர்ட்)</translation>
<translation id="8940081510938872932">உங்கள் கணினி தற்போது பல விஷயங்களைச் செய்கிறது. பின்னர் மீண்டும் முயலவும்.</translation>
<translation id="8941173171815156065">'<ph name="PERMISSION" />' அனுமதியை அகற்று</translation>
<translation id="8941248009481596111">இந்தத் தளத்திற்கான உங்கள் இணைப்பு தனிப்பட்டது.</translation>
diff --git a/chromium/chrome/app/resources/generated_resources_te.xtb b/chromium/chrome/app/resources/generated_resources_te.xtb
index d880a61690c..99194eb1968 100644
--- a/chromium/chrome/app/resources/generated_resources_te.xtb
+++ b/chromium/chrome/app/resources/generated_resources_te.xtb
@@ -136,6 +136,8 @@
<translation id="1178581264944972037">పాజ్ చేయి</translation>
<translation id="1179803038870941185"><ph name="URL" /> మీ MIDI పరికరాలకు పూర్తి నియంత్రణను పొందాలనుకుంటోంది.</translation>
<translation id="1181037720776840403">తొలగించు</translation>
+<translation id="11814323404622888">"&gt;
+ USB-C పరికరం (కుడివైపు వెనుక పోర్ట్)</translation>
<translation id="1183083053288481515">నిర్వాహకుని ద్వారా అందించబడిన ప్రమాణపత్రాన్ని ఉపయోగిస్తున్నారు</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>
@@ -329,6 +331,7 @@
<translation id="1468038450257740950">WebGLకి మద్దతు లేదు.</translation>
<translation id="1470719357688513792">పేజీ లోడ్ అయిన తర్వాత క్రొత్త కుకీ సెట్టింగ్‌లు ప్రభావం చూపుతాయి.</translation>
<translation id="14720830734893704">వర్చువల్ కీబోర్డ్ మద్దతును ప్రారంభించండి.</translation>
+<translation id="1474079335130556426">పుష్ API కోసం నేపథ్య మోడ్ ప్రారంభించండి. దీని వలన Chrome చివరి విండో మూసివేసినా కూడా కొనసాగడానికి మరియు పుష్ APIకి అవసరమైతే OS స్టార్ట్అప్‌లో ప్రారంభించడానికి అనుమతించబడుతుంది.</translation>
<translation id="1474339897586437869">"<ph name="FILENAME" />" అప్‌లోడ్ కాలేదు. మీ Google డిస్క్‌లో తగినంత ఖాళీ స్థలం లేదు.</translation>
<translation id="1476503841242751994">{COUNT,plural, =1{1 పాస్‌వర్డ్}other{# పాస్‌వర్డ్‌లు}}</translation>
<translation id="1476949146811612304"><ph name="BEGIN_LINK" />ఓమ్నిపెట్టె<ph name="END_LINK" /> నుండి శోధించినప్పుడు ఉపయోగించవల్సిన శోధన ఇంజిన్‌ను సెట్ చేయండి.</translation>
@@ -653,6 +656,7 @@
<translation id="1918141783557917887">&amp;చిన్నగా</translation>
<translation id="192144045824434199">బ్రౌజర్ ఫ్రేమ్ వెలుపల తెరవబడే ప్యానెల్ విండోను ప్రారంభించండి. ప్రారంభించబడకుంటే, ప్యానెల్‌ను తెరవడానికి చేసిన ప్రయత్నాల్లో ఒక పాప్అప్ తెరవబడుతుంది. డెవలపర్ మరియు కెనరీ ఛానెల్‌లలో ఎల్లప్పుడూ ప్యానెల్‌లు ప్రారంభించబడి ఉంటాయి.</translation>
<translation id="1921584744613111023"><ph name="DPI" /> dpi</translation>
+<translation id="1921986354447415460">టర్కిష్-ఎఫ్ కీబోర్డ్</translation>
<translation id="1923786009776354244">WebRTC స్టన్ మూల శీర్షిక కోసం మద్దతుని ప్రారంభించండి.</translation>
<translation id="1926741348654461781">ఆఫ్‌లైన్ పేజీలను ప్రారంభించండి</translation>
<translation id="1929546189971853037">మీరు సైన్-ఇన్ చేసిన అన్ని పరికరాల్లో మీ బ్రౌజింగ్ చరిత్రను చదవడానికి అనుమతి</translation>
@@ -857,6 +861,7 @@
<translation id="2231990265377706070">ఆశ్యర్యార్థక గుర్తు</translation>
<translation id="2232876851878324699">ఫైల్ దిగుమతి చెయ్యని ఒక ప్రమాణపత్రాన్ని కలిగి ఉంది:</translation>
<translation id="2233502537820838181">&amp;మరింత సమాచారం</translation>
+<translation id="2233587473672843170">కొత్త ట్యాబ్ పేజీలో జనాదరణ పొందిన సైట్‌లను చూపు</translation>
<translation id="223714078860837942">పేజీలో ప్రత్యేకమైన రెఫరర్ విధానాన్ని సెట్ చేయకపోతే, ఈ ఫ్లాగ్‌ను సెట్ చేయడం వలన వేరే చోటు నుండి వచ్చే అభ్యర్థనల కోసం 'రెఫరర్' ముఖ్య శీర్షికలో సమాచారం పరిమాణాన్ని తగ్గిస్తుంది.</translation>
<translation id="2238379619048995541">తరచుదనం స్థితి డేటా</translation>
<translation id="2239921694246509981">పర్యవేక్షించబడే వ్యక్తిని జోడించు</translation>
@@ -935,6 +940,7 @@
<translation id="2326606747676847821">అజ్ఞాతంలోకి వెళ్లు</translation>
<translation id="2326931316514688470">అనువర్తనాన్ని &amp;మళ్లీ లోడ్ చేయి</translation>
<translation id="2327492829706409234">అనువర్తనాన్ని ప్రారంభించు</translation>
+<translation id="2329597144923131178">మీ బుక్‌మార్క్‌లు, చరిత్ర, పాస్‌వర్డ్‌లు, ఇతర సెట్టింగ్‌లను మీ అన్ని పరికరాల్లో పొందడానికి సైన్ ఇన్ చేయండి.</translation>
<translation id="2332131598580221120">స్టోర్‌లో వీక్షించండి</translation>
<translation id="2332742915001411729">డిఫాల్ట్‌కు రీసెట్ చేయి</translation>
<translation id="2335122562899522968">ఈ పేజీ కుక్కీలను సెట్ చేస్తుంది.</translation>
@@ -1323,6 +1329,7 @@
<translation id="2838379631617906747">ఇన్‌స్టాల్ చేస్తోంది</translation>
<translation id="2841837950101800123">ప్రదాత</translation>
<translation id="2843806747483486897">డిఫాల్ట్‌ను మార్చు...</translation>
+<translation id="2844169650293029770">USB-C పరికరం (ఎడమవైపు ముందు పోర్ట్)</translation>
<translation id="2845382757467349449">ఎల్లప్పుడూ బుక్‌మార్క్‌ల బార్‌ను చూపు</translation>
<translation id="2846816712032308263">వేగంగా ట్యాబ్/విండో మూసివేతను ప్రారంభిస్తుంది - ట్యాబ్ యొక్క onunload js హ్యాండ్లర్‌ను GUI లేకుండా స్వతంత్రంగా అమలు చేస్తుంది.</translation>
<translation id="284970761985428403"><ph name="ASCII_NAME" /> (<ph name="UNICODE_NAME" />)</translation>
@@ -1388,6 +1395,7 @@
<translation id="2923469375796950815">కొత్త ZIP అన్‌ప్యాకర్‌ను నిలిపివేయండి.</translation>
<translation id="2924296707677495905">లిప్యంతరీకరణ (namaskaram → ನಮಸ್ಕಾರ)</translation>
<translation id="2925966894897775835">షీట్‌లు</translation>
+<translation id="2927017729816812676">కాష్ నిల్వ</translation>
<translation id="2927657246008729253">మార్చు...</translation>
<translation id="2928526264833629376">Hangoutsకు కొనసాగించు</translation>
<translation id="2930644991850369934">రికవరీ చిత్రం డౌన్‌లోన్ చేస్తున్నప్పుడు లోపం సంభవించింది. నెట్‌వర్క్ కనెక్షన్‌ని కోల్పోయింది.</translation>
@@ -1729,6 +1737,7 @@
<translation id="3396331542604645348">ఎంచుకున్న ముద్రకం అందుబాటులో లేదు లేదా సరిగ్గా వ్యవస్థాపించబడలేదు. మీ ముద్రకాన్ని తనిఖీ చేయండి లేదా మరొక ముద్రకాన్ని ఎంచుకోవడానికి ప్రయత్నించండి.</translation>
<translation id="3399597614303179694">మేసిడోనియన్ కీబోర్డ్</translation>
<translation id="340013220407300675">దాడి చేసేవారు <ph name="BEGIN_BOLD" /><ph name="SITE" /><ph name="END_BOLD" /> నుండి మీ సమాచారాన్ని దొంగిలించడానికి ప్రయత్నిస్తుండవచ్చు (ఉదాహరణకు, పాస్‌వర్డ్‌లు, సందేశాలు లేదా క్రెడిట్ కార్డ్‌లు).</translation>
+<translation id="3401130144947259741">ప్రారంభిస్తే, ట్రేస్ ఈవెంట్‌లు Windows (ETW) కోసం ఈవెంట్ ట్రేసింగ్‌కు ఎగుమతి చేయబడతాయి, ఆపై UIForETW లేదా Xperf వంటి సాధనాల ద్వారా క్యాప్చర్ చేయబడతాయి.</translation>
<translation id="340282674066624"><ph name="DOWNLOAD_RECEIVED" />, <ph name="TIME_LEFT" /></translation>
<translation id="3406605057700382950"> &amp;బుక్‌మార్క్‌ల బార్‌ను చూపు</translation>
<translation id="3412265149091626468">ఎంపికకు వెళ్ళు</translation>
@@ -1888,6 +1897,7 @@
<translation id="3603385196401704894">కెనడియెన్ ఫ్రెంచ్</translation>
<translation id="3603622770190368340">నెట్‌వర్క్ ప్రమాణపత్రాన్ని పొందండి</translation>
<translation id="3605780360466892872">బటన్‌డౌన్</translation>
+<translation id="3606220979431771195">టర్కిష్-ఎఫ్</translation>
<translation id="3608454375274108141">F10</translation>
<translation id="3608576286259426129">వినియోగదారు చిత్ర పరిదృశ్యం</translation>
<translation id="3609138628363401169">సర్వర్ TLS పునఃసంప్రదింపు పొడిగింపుకు మద్దతు ఇవ్వలేదు.</translation>
@@ -2407,6 +2417,7 @@
<translation id="4321136812570927563">{NUM_DOWNLOAD,plural, =1{డౌన్‌లోడ్‌ను కొనసాగించు}other{డౌన్‌లోడ్‌లను కొనసాగించు}}</translation>
<translation id="4321179778687042513">ctrl</translation>
<translation id="4322394346347055525">ఇతర టాబ్‌లను మూసివేయి</translation>
+<translation id="4325378361067528777">పుష్ API నేపథ్య మోడ్‌ను ప్రారంభించండి</translation>
<translation id="4326952458285403282">ప్రయోగాత్మక DirectWrite ఫాంట్ భాషాంతరీకరణ సిస్టమ్ ఉపయోగాన్ని నిలిపివేస్తుంది.</translation>
<translation id="4326999707196471878">టూల్‌కిట్ వీక్షణల బ్రౌజర్ డైలాగ్‌లు.</translation>
<translation id="4330406155931244378">బహుభాషా అక్షరక్రమ తనిఖీని ప్రారంభించండి</translation>
@@ -2941,6 +2952,8 @@
<translation id="5148652308299789060">3డి సాఫ్ట్‌వేర్ రేస్టరైజర్‌ను నిలిపివేయి</translation>
<translation id="5150254825601720210">Netscape సర్టిఫికెట్ SSL సర్వర్ పేరు</translation>
<translation id="5151034238407558331">దురదృష్టవశాత్తూ, US చిరునామా గల కొనుగోలుదారులు మాత్రమే ఈ వ్యాపారి వద్ద Google Paymentsను ఉపయోగించగలరు. మీరు US నివాసి అయితే, దయచేసి |Google Paymentsలో మీ ఇంటి చిరునామాను మార్చండి| లేదా Google Payments ఉపయోగించకుండా చెల్లించండి.</translation>
+<translation id="5151639798712723370">"&gt;
+ USB-C పరికరం (కుడివైపు ముందు పోర్ట్)</translation>
<translation id="5152451685298621771">(చిన్నపిల్లల ఖాతా)</translation>
<translation id="5154108062446123722"><ph name="PRINTING_DESTINATION" /> కోసం అధునాతన సెట్టింగ్‌లు</translation>
<translation id="5154176924561037127">F8</translation>
@@ -3039,6 +3052,7 @@
<translation id="5271247532544265821">సులభతర/సాంప్రదాయ చైనీస్ మోడ్‌ను మార్చండి</translation>
<translation id="5271549068863921519">పాస్‌వర్డ్‌ను సేవ్ చెయ్యి</translation>
<translation id="5273628206174272911">సమతల ఓవర్‌స్క్రోల్‌కు ప్రతిస్పందనగా ప్రయోగాత్మక చరిత్ర నావిగేషన్.</translation>
+<translation id="5275795814002959418">ఈ సైట్ నుండి <ph name="COUNT" /></translation>
<translation id="5275973617553375938">Google డిస్క్ నుండి పునరుద్ధరించబడిన ఫైల్‌లు</translation>
<translation id="527605719918376753">ట్యాబ్‌ను మ్యూట్ చేయి</translation>
<translation id="527605982717517565"><ph name="HOST" />పై ఎల్లప్పుడూ JavaScriptను అనుమతించు</translation>
@@ -3085,6 +3099,7 @@
<translation id="5328285148748012771">ఈ అందుబాటులో ఉన్న లాంచర్ నుండి మీ అన్ని అనువర్తనాలను ప్రాప్యత చేయండి. ఆటలను ఆడండి, వీడియో చాట్ చేయండి, సంగీతాన్ని వినండి, పత్రాలను సవరించండి లేదా Chrome వెబ్ స్టోర్ నుండి మరిన్ని అనువర్తనాలను పొందండి.</translation>
<translation id="5329858601952122676">&amp;తొలగించు</translation>
<translation id="5330145655348521461">ఈ ఫైల్‌లు వేరే డెస్క్‌టాప్‌లో తెరవబడ్డాయి. దీన్ని వీక్షించడానికి <ph name="USER_NAME" /> (<ph name="MAIL_ADDRESS" />)కి తరలించండి.</translation>
+<translation id="5331975486040154427">USB-C పరికరం (ఎడమవైపు వెనుక పోర్ట్)</translation>
<translation id="5332624210073556029">టైమ్ జోన్:</translation>
<translation id="5334142896108694079">స్క్రిప్ట్ క్యాష్</translation>
<translation id="533433379391851622">ఆశించిన సంస్కరణ "<ph name="EXPECTED_VERSION" />", కానీ "<ph name="NEW_ID" />" సంస్కరణ అందించబడింది.</translation>
@@ -3131,6 +3146,7 @@
<translation id="539755880180803351">ప్లేస్‌హోల్డర్ వచనం వలె స్వీయ పూరింపు ఫీల్డ్ రకం సూచనలతో వెబ్ ఫారమ్‌లను వ్యాఖ్యానిస్తుంది.</translation>
<translation id="5397578532367286026">ఈ వినియోగదారు యొక్క వినియోగం మరియు చరిత్రను chrome.comలో నిర్వాహకుడు (<ph name="MANAGER_EMAIL" />) సమీక్షించవచ్చు.</translation>
<translation id="5397794290049113714">మీరు</translation>
+<translation id="5398824043967640339">ఇతర సైట్‌ల నుండి <ph name="COUNT" /></translation>
<translation id="5399158067281117682">పిన్‌లు సరిపోలడం లేదు!</translation>
<translation id="5400640815024374115">నమ్మకమైన ప్లాట్‌ఫామ్ మాడ్యూల్ (TPM) చిప్ ఆపివెయ్యబడింది లేదా హాజరు కాలేదు.</translation>
<translation id="5402367795255837559">బ్రెయిలీ</translation>
@@ -3955,6 +3971,7 @@
<translation id="6575251558004911012">సైట్ మీ కెమెరాకు ప్రాప్యత కావాలనుకున్నప్పుడు అడగాలి (సిఫార్సు చేయబడింది)</translation>
<translation id="6581162200855843583">Google డిస్క్ లింక్</translation>
<translation id="6583070985841601920"><ph name="USER_EMAIL_ADDRESS" />గా సైన్ ఇన్ చేసారు. మీ నిర్వాహకుడు సమకాలీకరణను నిలిపివేసారు.</translation>
+<translation id="65832705307647870">కొత్త ట్యాబ్ పేజీని జనాదరణ పొందిన సైట్‌లతో ముందే నింపేస్తుంది.</translation>
<translation id="6584878029876017575">Microsoft Lifetime Signing</translation>
<translation id="6585234750898046415">మీ ఖాతా కోసం సైన్-ఇన్ స్క్రీన్‌లో చూపడానికి ఒక చిత్రాన్ని ఎంచుకోండి.</translation>
<translation id="6585283250473596934">పబ్లిక్ సెషన్‌లోకి ప్రవేశిస్తోంది.</translation>
@@ -4299,6 +4316,7 @@
<translation id="7092106376816104">పాప్-అప్ మినహాయింపులు</translation>
<translation id="7093866338626856921">ఈ పేర్లు గల పరికరాలతో డేటాను ఇచ్చిపుచ్చుకోవడానికి అనుమతి: <ph name="HOSTNAMES" /></translation>
<translation id="7096082900368329802">మరిన్ని అద్భుతమైన లక్షణాలను కనుగొనాలనుకుంటున్నారా?</translation>
+<translation id="7098389117866926363">USB-C పరికరం (వెనుక భాగంలో ఎడమ పోర్ట్)</translation>
<translation id="7100897339030255923"><ph name="COUNT" /> అంశాలు ఎంచుకోబడ్డాయి</translation>
<translation id="7106346894903675391">మరింత నిల్వని కొనుగోలు చేయండి...</translation>
<translation id="7108338896283013870">దాచిపెట్టు</translation>
@@ -5066,6 +5084,7 @@
<translation id="8190193592390505034"><ph name="PROVIDER_NAME" />కు కనెక్ట్ చేస్తోంది</translation>
<translation id="8191230140820435481">మీ అనువర్తనాలను, పొడిగింపులను మరియు థీమ్‌లను నిర్వహించండి</translation>
<translation id="8191453843330043793">V8 ప్రాక్సీ రిసాల్వర్</translation>
+<translation id="8199491812735365610">లాగిన్ చేయడానికి ఖాతాను ఎంచుకోండి</translation>
<translation id="8200772114523450471">మళ్ళీ ప్రారంభించు</translation>
<translation id="8202160505685531999">దయచేసి మీ <ph name="DEVICE_TYPE" /> ప్రొఫైల్‌ను నవీకరించడానికి మీ పాస్‌వర్డ్‌ను మళ్లీ నమోదు చేయండి.</translation>
<translation id="8204086856545141093">సర్వర్‌కు అభ్యర్థనలు ఒక విధానం ద్వారా బ్లాక్ చేయబడ్డాయి.</translation>
@@ -5196,6 +5215,7 @@
<translation id="8381977081675353473">స్లొవేకియన్</translation>
<translation id="8382645631174981738"><ph name="EXTENSION_NAME" /> రిమోట్‌ విధానంలో ఇన్‌స్టాల్ చేయబడింది</translation>
<translation id="8382913212082956454">&amp;ఇమెయిల్ చిరునామాను కాపీ చెయ్యి</translation>
+<translation id="8384113940676655504">ఫోన్ సమీపంలో ఉన్నప్పుడు Chromebookని అన్‌లాక్ చేయడం కోసం తక్కువ శక్తి వినియోగ బ్లూటూత్ ద్వారా ఫోన్‌లను కనుగొనడానికి Chromebookను అనుమతించే Smart Lock సెట్టింగ్‌ను ప్రారంభిస్తుంది.</translation>
<translation id="8390029840652165810">దయచేసి మీ నెట్‌వర్క్ కనెక్షన్ పనిచేస్తోందని నిర్ధారించుకోండి మరియు సమస్య కొనసాగితే, దయచేసి మీ ఆధారాలను రిఫ్రెష్ చేయడానికి సైన్ అవుట్ చేసి మళ్లీ సైన్ ఇన్ చేయండి.</translation>
<translation id="8390445751804042000">కొన్ని నెట్‌వర్క్ ప్యాకెట్‌లను స్వీకరించినప్పుడు పరికరాన్ని సక్రియం చేయడం ప్రారంభిస్తుంది.</translation>
<translation id="8390449457866780408">సర్వర్ అందుబాటులో లేదు.</translation>
@@ -5282,6 +5302,7 @@
<translation id="8509646642152301857">అక్షరక్రమ తనిఖీ నిఘంటువును డౌన్‌లోడ్ చేయడం విఫలమైంది.</translation>
<translation id="8512476990829870887">ప్రాసెస్‌ని ముగించు</translation>
<translation id="851263357009351303">చిత్రాలను చూపించడానికి ఎల్లప్పుడూ <ph name="HOST" />ను అనుమతించు</translation>
+<translation id="8513191386157529469">"<ph name="CLIENT_NAME" />" ఈ బ్రౌజర్‌ను డీబగ్ చేస్తోంది.</translation>
<translation id="8513974249124254369">ChromeVox (చదవబడే అభిప్రాయం) ప్రారంభించబడింది. నిలిపివేయడానికి Ctrl+Alt+Z నొక్కండి.</translation>
<translation id="8515737884867295000">ప్రమాణపత్ర-ఆధారిత ప్రామాణీకరణ విఫలమైంది</translation>
<translation id="8518865679229538285">తమిళం ఇన్‌పుట్ విధానం (టైప్‌రైటర్)</translation>
@@ -5401,6 +5422,7 @@
<translation id="8677039480012021122">డేటాను క్లియర్ చేసి, డిస్‌కనెక్ట్ చేయి</translation>
<translation id="8677212948402625567">అన్నీ కుదించు...</translation>
<translation id="8678648549315280022">డౌన్‌లోడ్ సెట్టింగ్‌లను నిర్వహించండి...</translation>
+<translation id="8680251145628383637">మీ బుక్‌మార్క్‌లు, చరిత్ర, పాస్‌వర్డ్‌లు మరియు ఇతర సెట్టింగ్‌లను మీ అన్ని పరికరాల్లో పొందడానికి సైన్ ఇన్ చేయండి. మీరు మీ Google సేవలకు కూడా స్వయంచాలకంగా సైన్ ఇన్ చేయబడతారు.</translation>
<translation id="8680536109547170164"><ph name="QUERY" />, సమాధానం, <ph name="ANSWER" /></translation>
<translation id="8680787084697685621">ఖాతా సైన్-ఇన్ వివరాల గడువు తేదీ ముగిసింది.</translation>
<translation id="8684255857039823328">పాస్‌వర్డ్ సేవ్ చేయబడింది. <ph name="MANAGEMENT_LINK" />లో ఏ పరికరం నుండైనా మీ పాస్‌వర్డ్‌లను ప్రాప్యత చేయండి.</translation>
@@ -5456,6 +5478,7 @@
<translation id="874420130893181774">సాంప్రదాయ పిన్యిన్ ఇన్‌పుట్ పద్ధతి</translation>
<translation id="8744525654891896746">ఈ పర్యవేక్షించబడే వినియోగదారు కోసం అవతార్‌ను ఎంచుకోండి</translation>
<translation id="8744641000906923997">రోమాజీ</translation>
+<translation id="8744959718895556609">మీ <ph name="LINK_TEXT" /> నుండి ఖాతాను ఎంచుకోండి</translation>
<translation id="8749863574775030885">తెలియని విక్రేత అందించిన USB పరికరాలకు ప్రాప్యత</translation>
<translation id="8754200782896249056">&lt;p&gt;<ph name="PRODUCT_NAME" />ని మద్దతు ఉన్న డెస్క్‌టాప్ పరిసరంలో అమలు చేస్తున్నప్పుడు, సిస్టమ్ ప్రాక్సీ సెట్టింగ్‌లు ఉపయోగించబడతాయి. అయితే, మీ సిస్టమ్ మద్దతు ఇవ్వడం లేదు లేదా మీ సిస్టమ్ కాన్ఫిగరేషన్‌ను ప్రారంభించడంలో సమస్య ఉంది.&lt;/p&gt;
@@ -5576,6 +5599,7 @@
<translation id="8933960630081805351">శోధినిలో &amp;చూపించు</translation>
<translation id="8934732568177537184">కొనసాగించు</translation>
<translation id="8938356204940892126">నా వల్ల కాలేదు</translation>
+<translation id="8938800817013097409">USB-C పరికరం (వెనుక భాగంలో కుడి పోర్ట్)</translation>
<translation id="8940081510938872932">ప్రస్తుతం మీ కంప్యూటర్ అనేక విషయాలను చేస్తోంది. తర్వాత మళ్లీ ప్రయత్నించండి.</translation>
<translation id="8941173171815156065">'<ph name="PERMISSION" />' అనుమతిని ఉపసంహరించు</translation>
<translation id="8941248009481596111">ఈ సైట్‌కి మీ కనెక్షన్ ప్రైవేట్‌గా ఉంది.</translation>
diff --git a/chromium/chrome/app/resources/generated_resources_th.xtb b/chromium/chrome/app/resources/generated_resources_th.xtb
index 8d65dd4494c..efa92a9af93 100644
--- a/chromium/chrome/app/resources/generated_resources_th.xtb
+++ b/chromium/chrome/app/resources/generated_resources_th.xtb
@@ -136,6 +136,8 @@
<translation id="1178581264944972037">หยุดชั่วคราว</translation>
<translation id="1179803038870941185"><ph name="URL" /> ต้องการที่จะได้รับสิทธิ์ควบคุมอุปกรณ์ MIDI เต็มรูปแบบ</translation>
<translation id="1181037720776840403">ลบ</translation>
+<translation id="11814323404622888">"&gt;
+ อุปกรณ์ USB-C (พอร์ตด้านหลังขวา)</translation>
<translation id="1183083053288481515">การใช้ใบรับรองที่ผู้ดูแลระบบออกให้</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>
@@ -330,6 +332,7 @@
<translation id="1468038450257740950">WebGL ไม่ไ้ด้รับการสนับสนุน</translation>
<translation id="1470719357688513792">การตั้งค่าคุกกี้ใหม่จะแสดงผลหลังจากการโหลดหน้านี้อีกครั้ง</translation>
<translation id="14720830734893704">เปิดใช้งานการสนับสนุนแป้นพิมพ์เสมือน</translation>
+<translation id="1474079335130556426">เปิดใช้โหมดพื้นหลังสำหรับ Push API ซึ่งจะทำให้ Chrome ยังทำงานต่อหลังจากที่ปิดหน้าต่างสุดท้าย และเพื่อเปิด Chrome เมื่อเริ่มระบบปฏิบัติการ ในกรณีที่ Push API จำเป็นต้องใช้งาน</translation>
<translation id="1474339897586437869">ไม่ได้อัปโหลด "<ph name="FILENAME" />" มีพื้นที่ว่างไม่เพียงพอใน Google ไดรฟ์ของคุณ</translation>
<translation id="1476503841242751994">{COUNT,plural, =1{รหัสผ่าน 1 รายการ}other{รหัสผ่าน # รายการ}}</translation>
<translation id="1476949146811612304">ตั้งค่าว่าจะใช้เครื่องมือค้นหาใดเมื่อค้นหาจาก<ph name="BEGIN_LINK" />แถบอเนกประสงค์<ph name="END_LINK" /></translation>
@@ -654,6 +657,7 @@
<translation id="1918141783557917887">เ&amp;ล็กลง</translation>
<translation id="192144045824434199">เปิดใช้งานหน้าต่างแผงที่เปิดภายนอกเฟรมของเบราว์เซอร์ ความพยายามที่จะเปิดแผงจะเป็นการเปิดป๊อปอัปแทนหากไม่ได้เปิดใช้งานแผงไว้ แผงจะถูกเปิดใช้งานเสมอในช่องนักพัฒนาและ Canary</translation>
<translation id="1921584744613111023"><ph name="DPI" /> dpi</translation>
+<translation id="1921986354447415460">แป้นพิมพ์ภาษาตุรกี-F</translation>
<translation id="1923786009776354244">เปิดใช้การสนับสนุนสำหรับส่วนหัวเดิมของ WebRTC Stun</translation>
<translation id="1926741348654461781">เปิดใช้หน้าออฟไลน์</translation>
<translation id="1929546189971853037">อ่านประวัติการเข้าชมบนอุปกรณ์ที่คุณลงชื่อเข้าใช้ทุกเครื่อง</translation>
@@ -852,6 +856,7 @@
<translation id="2231990265377706070">อัศเจรีย์</translation>
<translation id="2232876851878324699">ไฟล์นี้มีใบรับรองหนึ่งใบซึ่งไม่ได้นำเข้า:</translation>
<translation id="2233502537820838181">&amp;ข้อมูลเพิ่มเติม</translation>
+<translation id="2233587473672843170">แสดงเว็บไซต์ยอดนิยมในหน้าแท็บใหม่</translation>
<translation id="223714078860837942">หากหน้าไม่ได้กำหนดนโยบายผู้อ้างอิงอย่างชัดแจ้ง การตั้งค่าสถานะนี้จะลดปริมาณข้อมูลในส่วนหัว "ผู้อ้างอิง" สำหรับคำขอข้ามต้นทาง</translation>
<translation id="2238379619048995541">ข้อมูลสถานะความถี่</translation>
<translation id="2239921694246509981">เพิ่มบุคคลภายใต้การดูแล</translation>
@@ -927,6 +932,7 @@
<translation id="2326606747676847821">เข้าโหมดไม่ระบุตัวตน</translation>
<translation id="2326931316514688470">โ&amp;หลดแอปซ้ำ</translation>
<translation id="2327492829706409234">เปิดใช้งานแอปพลิเคชัน</translation>
+<translation id="2329597144923131178">ลงชื่อเข้าใช้เพื่อรับบุ๊กมาร์ก ประวัติ รหัสผ่าน และการตั้งค่าอื่นๆ ในอุปกรณ์ทั้งหมด</translation>
<translation id="2332131598580221120">ดูในสโตร์</translation>
<translation id="2332742915001411729">รีเซ็ตเป็นค่าเริ่มต้น</translation>
<translation id="2335122562899522968">หน้าเว็บนี้ได้บันทึกคุกกี้แล้ว</translation>
@@ -1315,6 +1321,7 @@
<translation id="2838379631617906747">การติดตั้ง</translation>
<translation id="2841837950101800123">ผู้ให้บริการ</translation>
<translation id="2843806747483486897">เปลี่ยนค่าเริ่มต้น...</translation>
+<translation id="2844169650293029770">อุปกรณ์ USB-C (พอร์ตด้านหน้าซ้าย)</translation>
<translation id="2845382757467349449">แสดงแถบบุ๊กมาร์กเสมอ</translation>
<translation id="2846816712032308263">ช่วยให้ปิดแท็บ/หน้าต่างได้อย่างรวดเร็ว - เรียกใช้เครื่องจัดการ onunload js ของแท็บอย่างเป็นอิสระจาก GUI</translation>
<translation id="284970761985428403"><ph name="ASCII_NAME" /> (<ph name="UNICODE_NAME" />)</translation>
@@ -1379,6 +1386,7 @@
<translation id="2923469375796950815">ปิดใช้โปรแกรมเปิดไฟล์ ZIP ใหม่</translation>
<translation id="2924296707677495905">การทับศัพท์ (namaskaram → ನಮಸ್ಕಾರ)</translation>
<translation id="2925966894897775835">แผ่นงาน</translation>
+<translation id="2927017729816812676">พื้นที่เก็บข้อมูลแคช</translation>
<translation id="2927657246008729253">เปลี่ยน...</translation>
<translation id="2928526264833629376">ไปยังแฮงเอาท์</translation>
<translation id="2930644991850369934">เกิดปัญหาขณะดาวน์โหลดอิมเมจการกู้คืน การเชื่อมต่อเครือข่ายขาดหาย</translation>
@@ -1720,6 +1728,7 @@
<translation id="3396331542604645348">เครื่องพิมพ์ที่เลือกไว้ไม่สามารถใช้ได้หรือไม่ได้รับการติดตั้งอย่างถูกต้อง โปรดตรวจสอบเครื่องพิมพ์ของคุณหรือลองเลือกเครื่องพิมพ์อื่น</translation>
<translation id="3399597614303179694">แป้นพิมพ์ภาษามาซิโดเนีย</translation>
<translation id="340013220407300675">ผู้บุกรุกอาจพยายามขโมยข้อมูลของคุณจาก <ph name="BEGIN_BOLD" /><ph name="SITE" /><ph name="END_BOLD" /> (ตัวอย่างเช่น รหัสผ่าน ข้อความ หรือบัตรเครดิต)</translation>
+<translation id="3401130144947259741">หากเปิดใช้งาน การติดตามเหตุการณ์จะถูกส่งออกไปที่ Event Tracing for Windows (ETW) จากนั้น จะสามารถบันทึกได้ด้วยเครื่องมือต่างๆ เช่น UIForETW หรือ Xperf</translation>
<translation id="340282674066624"><ph name="DOWNLOAD_RECEIVED" />, <ph name="TIME_LEFT" /></translation>
<translation id="3406605057700382950">&amp;แสดงแถบบุ๊กมาร์ก</translation>
<translation id="3412265149091626468">ข้ามไปที่สิ่งที่เลือก</translation>
@@ -1879,6 +1888,7 @@
<translation id="3603385196401704894">ฝรั่งเศสแบบแคนาดา</translation>
<translation id="3603622770190368340">รับใบรับรองเครือข่าย</translation>
<translation id="3605780360466892872">บัตเทิ่นดาวน์</translation>
+<translation id="3606220979431771195">ภาษาตุรกี-F</translation>
<translation id="3608454375274108141">F10</translation>
<translation id="3608576286259426129">ตัวอย่างภาพผู้ใช้</translation>
<translation id="3609138628363401169">เซิร์ฟเวอร์ไม่สนับสนุนการยอมรับการแก้ไข TLS ซ้ำอีกครั้ง</translation>
@@ -2399,6 +2409,7 @@
<translation id="4321136812570927563">{NUM_DOWNLOAD,plural, =1{ดำเนินการดาวน์โหลดต่อ}other{ดำเนินการดาวน์โหลดต่อ}}</translation>
<translation id="4321179778687042513">ctrl</translation>
<translation id="4322394346347055525">ปิดแท็บอื่นๆ</translation>
+<translation id="4325378361067528777">เปิดใช้โหมดพื้นหลัง Push API</translation>
<translation id="4326952458285403282">ปิดการใช้งานระบบแสดงผลแบบอักษร DirectWrite แบบทดลอง</translation>
<translation id="4326999707196471878">กล่องโต้ตอบของเบราว์เซอร์ชุดเครื่องมือ-มุมมอง</translation>
<translation id="4330406155931244378">เปิดใช้เครื่องตรวจตัวสะกดแบบหลายภาษา</translation>
@@ -2932,6 +2943,8 @@
<translation id="5148652308299789060">ปิดใช้งานซอฟต์แวร์แปลงรูปแบบภาพ 3 มิติ</translation>
<translation id="5150254825601720210">ใบรับรองชื่อเซิร์ฟเวอร์ SSL ของ Netscape</translation>
<translation id="5151034238407558331">ขออภัย เฉพาะผู้ซื้อที่มีที่อยู่ในสหรัฐอเมริกาจะสามารถใช้งาน Google Payments กับผู้ขายนี้ได้ หากคุณเป็นผู้พำนักในสหรัฐฯ โปรด|เปลี่ยนที่อยู่บ้านของคุณที่ให้ไว้กับ Google Payments| หรือชำระเงินโดยไม่ใช้ Google Payments</translation>
+<translation id="5151639798712723370">"&gt;
+ อุปกรณ์ USB-C (พอร์ตด้านหน้าขวา)</translation>
<translation id="5152451685298621771">(บัญชีสำหรับเด็ก)</translation>
<translation id="5154108062446123722">การตั้งค่าขั้นสูงสำหรับ <ph name="PRINTING_DESTINATION" /></translation>
<translation id="5154176924561037127">F8</translation>
@@ -3030,6 +3043,7 @@
<translation id="5271247532544265821">สลับระหว่างโหมดภาษาจีนตัวย่อ/ตัวเต็ม</translation>
<translation id="5271549068863921519">บันทึกรหัสผ่าน</translation>
<translation id="5273628206174272911">การนำทางของประวัติแบบทดลองเพื่อเป็นการตอบสนองการเลื่อนในแนวนอน</translation>
+<translation id="5275795814002959418"><ph name="COUNT" /> รายการจากเว็บไซต์นี้</translation>
<translation id="5275973617553375938">ไฟล์ที่กู้คืนจาก Google ไดรฟ์</translation>
<translation id="527605719918376753">ปิดเสียงแท็บ</translation>
<translation id="527605982717517565">อนุญาตให้เรียกใช้ JavaScript บน <ph name="HOST" /> เสมอ</translation>
@@ -3076,6 +3090,7 @@
<translation id="5328285148748012771">เข้าถึงทุกแอปของคุณจากตัวเรียกใช้งานที่ใช้ง่ายนี้ เล่นเกม วิดีโอแชท ฟังเพลง แก้ไขเอกสาร หรือโหลดแอปเพิ่มเติมจาก Chrome เว็บสโตร์</translation>
<translation id="5329858601952122676">&amp;ลบ</translation>
<translation id="5330145655348521461">ไฟล์เหล่านี้เปิดอยู่บนเดสก์ท็อปเครื่องอื่น โปรดย้ายมายัง <ph name="USER_NAME" /> (<ph name="MAIL_ADDRESS" />) เพื่อดู</translation>
+<translation id="5331975486040154427">อุปกรณ์ USB-C (พอร์ตด้านหลังซ้าย)</translation>
<translation id="5332624210073556029">โซนเวลา:</translation>
<translation id="5334142896108694079">แคชของสคริปต์</translation>
<translation id="533433379391851622">รุ่นที่คาดการณ์ "<ph name="EXPECTED_VERSION" />" แต่รุ่นที่แจ้งคือ "<ph name="NEW_ID" />"</translation>
@@ -3122,6 +3137,7 @@
<translation id="539755880180803351">ป้อนข้อมูลในเว็บฟอร์มด้วยการคาดคะเนประเภทฟิลด์การป้อนอัตโนมัติเป็นข้อความตัวยึด</translation>
<translation id="5397578532367286026">การใช้งานและประวัติของผู้ใช้รายนี้อาจถูกตรวจสอบโดยผู้จัดการ (<ph name="MANAGER_EMAIL" />) บน chrome.com</translation>
<translation id="5397794290049113714">คุณ</translation>
+<translation id="5398824043967640339"><ph name="COUNT" /> รายการจากเว็บไซต์อื่น</translation>
<translation id="5399158067281117682">PIN ไม่ตรงกัน!</translation>
<translation id="5400640815024374115">ไม่พบชิป Trusted Platform Module (TPM) หรือถูกปิดการใช้งานไว้</translation>
<translation id="5402367795255837559">เบรลล์</translation>
@@ -3932,6 +3948,7 @@
<translation id="6575251558004911012">ถามเมื่อไซต์ต้องการเข้าถึงกล้องของคุณ (แนะนำ)</translation>
<translation id="6581162200855843583">ลิงก์ Google ไดรฟ์</translation>
<translation id="6583070985841601920">ลงชื่อเข้าใช้ในชื่อ <ph name="USER_EMAIL_ADDRESS" /> การซิงค์ถูกปิดใช้งานโดยผู้ดูแลระบบของคุณ</translation>
+<translation id="65832705307647870">แสดงเว็บไซต์ยอดนิยมล่วงหน้าในหน้าแท็บใหม่</translation>
<translation id="6584878029876017575">การรับรองตลอดชีพของ Microsoft</translation>
<translation id="6585234750898046415">เลือกรูปภาพสำหรับบัญชีของคุณเพื่อแสดงในหน้าลงชื่อเข้าใช้</translation>
<translation id="6585283250473596934">กำลังเข้าสู่การเข้าชมแบบสาธารณะ</translation>
@@ -4272,6 +4289,7 @@
<translation id="7092106376816104">ข้อยกเว้นป๊อปอัป</translation>
<translation id="7093866338626856921">แลกเปลี่ยนข้อมูลกับอุปกรณ์ชื่อ <ph name="HOSTNAMES" /></translation>
<translation id="7096082900368329802">หากต้องการค้นพบคุณลักษณะที่ยอดเยี่ยมอื่นๆ</translation>
+<translation id="7098389117866926363">อุปกรณ์ USB-C (พอร์ตด้านหลังซ้าย)</translation>
<translation id="7100897339030255923">รายการที่เลือก <ph name="COUNT" /> รายการ</translation>
<translation id="7106346894903675391">ซื้อพื้นที่เก็บข้อมูลเพิ่มเติม...</translation>
<translation id="7108338896283013870">ซ่อน</translation>
@@ -5040,6 +5058,7 @@
<translation id="8190193592390505034">กำลังเชื่อมต่อกับ <ph name="PROVIDER_NAME" /></translation>
<translation id="8191230140820435481">จัดการแอปพลิเคชัน ส่วนขยาย และธีมของคุณ</translation>
<translation id="8191453843330043793">ตัวแก้ไขพร็อกซี V8</translation>
+<translation id="8199491812735365610">เลือกบัญชีที่จะลงชื่อเข้าสู่ระบบ</translation>
<translation id="8200772114523450471">ทำต่อ</translation>
<translation id="8202160505685531999">โปรดป้อนรหัสผ่านใหม่เพื่ออัปเดตโปรไฟล์ <ph name="DEVICE_TYPE" /> ของคุณ</translation>
<translation id="8204086856545141093">คำขอไปยังเซิร์ฟเวอร์ถูกบล็อกโดยนโยบาย</translation>
@@ -5170,6 +5189,7 @@
<translation id="8381977081675353473">สโลวัก</translation>
<translation id="8382645631174981738">ติดตั้ง <ph name="EXTENSION_NAME" /> แล้วจากระยะไกล</translation>
<translation id="8382913212082956454">คัดลอก&amp;ที่อยู่อีเมล</translation>
+<translation id="8384113940676655504">เปิดใช้การตั้งค่า Smart Lock ที่อนุญาตให้ Chromebook สำรวจโทรศัพท์ผ่านบลูทูธพลังงานต่ำเพื่อปลดล็อก Chromebook เมื่อโทรศัพท์อยู่ในระยะใกล้</translation>
<translation id="8390029840652165810">โปรดตรวจสอบให้แน่ใจการเชื่อมต่อเครือข่ายของคุณทำงานอยู่ และหากปัญหายังคงอยู่ โปรดออกจากระบบและลงชื่อเข้าใช้อีกครั้งเพื่อรีเฟรชข้อมูลรับรองของคุณ</translation>
<translation id="8390445751804042000">เปิดใช้การปลุกอุปกรณ์ตามการได้รับแพ็กเก็ตเครือข่ายบางอย่าง</translation>
<translation id="8390449457866780408">เซิร์ฟเวอร์ไม่พร้อมใช้งาน</translation>
@@ -5255,6 +5275,7 @@
<translation id="8509646642152301857">การดาวน์โหลดพจนานุกรมตรวจสอบการสะกดล้มเหลว</translation>
<translation id="8512476990829870887">สิ้นสุดกระบวนการ</translation>
<translation id="851263357009351303">อนุญาตให้ <ph name="HOST" /> แสดงภาพเสมอ</translation>
+<translation id="8513191386157529469">"<ph name="CLIENT_NAME" />" กำลังแก้ปัญหาของเบราว์เซอร์นี้</translation>
<translation id="8513974249124254369">เปิดใช้ ChromeVox (การตอบสนองด้วยเสียง) อยู่ กด Ctrl+Alt+Z เพื่อปิด</translation>
<translation id="8515737884867295000">การตรวจสอบสิทธิ์ตามใบรับรองล้มเหลว</translation>
<translation id="8518865679229538285">วิธีการป้อนข้อมูลภาษาทมิฬ (พิมพ์ดีด)</translation>
@@ -5372,6 +5393,7 @@
<translation id="8677039480012021122">ล้างข้อมูลและยกเลิกการเชื่อมต่อ</translation>
<translation id="8677212948402625567">ยุบทั้งหมด...</translation>
<translation id="8678648549315280022">จัดการการตั้งค่าการดาวน์โหลด...</translation>
+<translation id="8680251145628383637">ลงชื่อเข้าใช้เพื่อดึงบุ๊กมาร์ก ประวัติ รหัสผ่าน และการตั้งค่าอื่นๆ บนอุปกรณ์ทุกเครื่องของคุณ ทั้งนี้ ระบบจะลงชื่อเข้าใช้บริการต่างๆ ของ Google ให้คุณโดยอัตโนมัติ</translation>
<translation id="8680536109547170164"><ph name="QUERY" />, คำตอบ, <ph name="ANSWER" /></translation>
<translation id="8680787084697685621">รายละเอียดการลงชื่อเข้าใช้บัญชีเก่าเกินไป</translation>
<translation id="8684255857039823328">บันทึกรหัสผ่านแล้ว เข้าถึงรหัสผ่านของคุณจากทุกอุปกรณ์ที่ <ph name="MANAGEMENT_LINK" /></translation>
@@ -5427,6 +5449,7 @@
<translation id="874420130893181774">วิธีการป้อนข้อมูลแบบพินอินดั้งเดิม</translation>
<translation id="8744525654891896746">เลือกอวาตาร์สำหรับผู้ใช้ภายใต้การดูแลนี้</translation>
<translation id="8744641000906923997">Romaji</translation>
+<translation id="8744959718895556609">เลือกบัญชีจาก <ph name="LINK_TEXT" /> ของคุณ</translation>
<translation id="8749863574775030885">เข้าถึงอุปกรณ์ USB จากผู้ขายที่ไม่รู้จัก</translation>
<translation id="8754200782896249056">&lt;p&gt;เมื่อเรียกใช้ <ph name="PRODUCT_NAME" /> ภายใต้สภาพแวดล้อมของเดสก์ท็อปที่สนับสนุน จะมีการใช้การตั้งค่าพร็อกซีของระบบ อย่างไรก็ตาม ระบบของคุณอาจไม่ได้รับการสนับสนุนหรือมีปัญหาในการเปิดการกำหนดค่าระบบ&lt;/p&gt;
@@ -5548,6 +5571,7 @@
<translation id="8933960630081805351">&amp;แสดงใน Finder</translation>
<translation id="8934732568177537184">ต่อไป</translation>
<translation id="8938356204940892126">ฉันขอยกเลิก</translation>
+<translation id="8938800817013097409">อุปกรณ์ USB-C (พอร์ตด้านหลังขวา)</translation>
<translation id="8940081510938872932">คอมพิวเตอร์ของคุณทำงานหลายอย่างเกินไปในขณะนี้ โปรดลองอีกครั้งในภายหลัง</translation>
<translation id="8941173171815156065">เพิกถอนสิทธิ์ "<ph name="PERMISSION" />"</translation>
<translation id="8941248009481596111">การเชื่อมต่อกับไซต์นี้เป็นแบบส่วนตัว</translation>
diff --git a/chromium/chrome/app/resources/generated_resources_tr.xtb b/chromium/chrome/app/resources/generated_resources_tr.xtb
index df35a6409eb..0184eb0031a 100644
--- a/chromium/chrome/app/resources/generated_resources_tr.xtb
+++ b/chromium/chrome/app/resources/generated_resources_tr.xtb
@@ -136,6 +136,8 @@
<translation id="1178581264944972037">Duraklat</translation>
<translation id="1179803038870941185"><ph name="URL" />, MIDI cihazlarınız üzerinde tam denetim istiyor.</translation>
<translation id="1181037720776840403">Kaldır</translation>
+<translation id="11814323404622888">"&gt;
+ USB-C cihaz (sağ arka bağlantı noktası)</translation>
<translation id="1183083053288481515">Yönetici tarafından sağlanan bir sertifika kullanılıyor</translation>
<translation id="1183237619868651138"><ph name="EXTERNAL_CRX_FILE" /> yerel önbelleğe yüklenemiyor.</translation>
<translation id="1185924365081634987">Ayrıca, bu ağ hatasını gidermek için <ph name="GUEST_SIGNIN_LINK_START" />misafir olarak göz atmayı<ph name="GUEST_SIGNIN_LINK_END" /> da deneyebilirsiniz.</translation>
@@ -329,6 +331,7 @@
<translation id="1468038450257740950">WebGL desteklenmez.</translation>
<translation id="1470719357688513792">Yeni çerez ayarları sayfa yeniden yüklendikten sonra etkinleşecek.</translation>
<translation id="14720830734893704">Sanal klavye desteğini etkinleştirin.</translation>
+<translation id="1474079335130556426">Push API'sı için arka plan modunu etkinleştirin. Bu mod, Chrome'un, son pencere kapatıldıktan sonra çalışmaya devam etmesine ve Push API'sı ihtiyaç duyarsa OS başlatılırken açılmasına olanak tanır.</translation>
<translation id="1474339897586437869">"<ph name="FILENAME" />" yüklenmedi. Google Drive'ınızda yeterli boş alan yok.</translation>
<translation id="1476503841242751994">{COUNT,plural, =1{1 şifre}other{# şifre}}</translation>
<translation id="1476949146811612304"><ph name="BEGIN_LINK" />Çok amaçlı adres çubuğundan<ph name="END_LINK" /> arama yaparken hangi arama motorunun kullanılacağını ayarlayın.</translation>
@@ -656,6 +659,7 @@
<translation id="1918141783557917887">Daha &amp;küçük</translation>
<translation id="192144045824434199">Tarayıcı çerçevesinin dışında Panel pencerelerinin açılmasını etkinleştirin. Bu etkinleştirilmezse, bir Panel açılmaya çalışıldığında onun yerine bir pop-up açılır. Paneller geliştirici ve canary kanallarında her zaman etkindir.</translation>
<translation id="1921584744613111023"><ph name="DPI" /> dpi</translation>
+<translation id="1921986354447415460">Türkçe F klavye</translation>
<translation id="1923786009776354244">WebRTC Stun başlangıç noktası desteğini etkinleştirin.</translation>
<translation id="1926741348654461781">Çevrimdışı sayfaları etkinleştir</translation>
<translation id="1929546189971853037">Oturum açtığınız tüm cihazlarda göz atma geçmişinizi okuma</translation>
@@ -855,6 +859,7 @@ Dolması için gereken süre: <ph name="HOUR" />:<ph name="MINUTE" /></translati
<translation id="2231990265377706070">Ünlem işareti</translation>
<translation id="2232876851878324699">Dosya bir sertifika içeriyordu ve bu sertifika içe aktarılmadı:</translation>
<translation id="2233502537820838181">&amp;Daha fazla bilgi</translation>
+<translation id="2233587473672843170">Yeni Sekme sayfasında popüler siteleri göster</translation>
<translation id="223714078860837942">Bir sayfa açık bir yönlendiren politikası ayarlamadıysa bu işaretin ayarlanması, başlangıç noktaları arası istekler için "yönlendiren" üst bilgisindeki bilgi miktarını azaltır.</translation>
<translation id="2238379619048995541">Frekans Durumu Verileri</translation>
<translation id="2239921694246509981">Denetlenen kişi ekle</translation>
@@ -930,6 +935,7 @@ Yeni bir denetlenen kullanıcı oluşturduktan sonra, istediğiniz zaman herhang
<translation id="2326606747676847821">Gizli mod</translation>
<translation id="2326931316514688470">&amp;Uygulamayı yeniden yükle</translation>
<translation id="2327492829706409234">Uygulamayı etkinleştir</translation>
+<translation id="2329597144923131178">Yer işaretlerinize, geçmişinize ve diğer ayarlarınıza tüm cihazlarınızdan erişmek için oturum açın.</translation>
<translation id="2332131598580221120">Mağazada görüntüle</translation>
<translation id="2332742915001411729">Varsayılana sıfırla</translation>
<translation id="2335122562899522968">Bu sayfa çerez ayarlar.</translation>
@@ -1318,6 +1324,7 @@ Bu sitenin engellenmesi gerektiğini düşünmüyorum!</translation>
<translation id="2838379631617906747">Yükleme</translation>
<translation id="2841837950101800123">Sağlayıcı</translation>
<translation id="2843806747483486897">Varsayılanı değiştir...</translation>
+<translation id="2844169650293029770">USB-C cihaz (sol ön bağlantı noktası)</translation>
<translation id="2845382757467349449">Yer İşareti Çubuğunu Her Zaman Göster</translation>
<translation id="2846816712032308263">Hızlı sekme/pencere kapatmayı etkinleştirir - bir sekmenin "onunload" js işleyicisini GUI'den bağımsız olarak çalıştırır.</translation>
<translation id="284970761985428403"><ph name="ASCII_NAME" /> (<ph name="UNICODE_NAME" />)</translation>
@@ -1382,6 +1389,7 @@ Bu sitenin engellenmesi gerektiğini düşünmüyorum!</translation>
<translation id="2923469375796950815">Yeni ZIP paket açıcıyı devre dışı bırak.</translation>
<translation id="2924296707677495905">Harf çevirisi (namaskaram → ನಮಸ್ಕಾರ)</translation>
<translation id="2925966894897775835">E-Tablolar</translation>
+<translation id="2927017729816812676">Önbellek Depolama Alanı</translation>
<translation id="2927657246008729253">Değiştir...</translation>
<translation id="2928526264833629376">Hangouts ile devam et</translation>
<translation id="2930644991850369934">Kurtarma görüntüsü indirilirken bir sorun oluştu. Ağ bağlantısı kesildi.</translation>
@@ -1723,6 +1731,7 @@ Bu sitenin engellenmesi gerektiğini düşünmüyorum!</translation>
<translation id="3396331542604645348">Seçilen yazıcı kullanılamıyor veya doğru yüklenmemiş. Yazıcınızı kontrol edin veya başka yazıcı seçmeyi deneyin.</translation>
<translation id="3399597614303179694">Makedonca klavye</translation>
<translation id="340013220407300675">Saldırganlar <ph name="BEGIN_BOLD" /><ph name="SITE" /><ph name="END_BOLD" /> sitesinden bilgilerinizi çalmaya çalışıyor olabilir (örneğin, şifreler, mesajlar veya kredi kartı bilgileri).</translation>
+<translation id="3401130144947259741">Etkinleştirilirse, izleme etkinlikleri Windows için Etkinlik İzleme'ye (ETW) aktırılır ve daha sonra, UIForETW veya Xperf gibi araçlar tarafından yakalanabilir.</translation>
<translation id="340282674066624"><ph name="DOWNLOAD_RECEIVED" />, <ph name="TIME_LEFT" /></translation>
<translation id="3406605057700382950">Yer işaretleri ç&amp;ubuğunu göster</translation>
<translation id="3412265149091626468">Seçim'e Atla</translation>
@@ -1882,6 +1891,7 @@ Bu sitenin engellenmesi gerektiğini düşünmüyorum!</translation>
<translation id="3603385196401704894">Kanada Fransızcası</translation>
<translation id="3603622770190368340">Ağ sertifikası edinme</translation>
<translation id="3605780360466892872">İş adamı</translation>
+<translation id="3606220979431771195">Türkçe-F</translation>
<translation id="3608454375274108141">F10</translation>
<translation id="3608576286259426129">Kullanıcı resmi önizlemesi</translation>
<translation id="3609138628363401169">Sunucu TLS yeniden anlaşma uzantısını desteklemiyor.</translation>
@@ -2402,6 +2412,7 @@ Tüm kullanıcılar devam etmek için çıkış yapmalıdır.</translation>
<translation id="4321136812570927563">{NUM_DOWNLOAD,plural, =1{İndirme işlemine devam et}other{İndirme işlemlerine devam et}}</translation>
<translation id="4321179778687042513">ctrl</translation>
<translation id="4322394346347055525">Diğer Sekmeleri Kapat</translation>
+<translation id="4325378361067528777">Push API'sı arka plan modunu etkinleştir</translation>
<translation id="4326952458285403282">Deneysel DirectWrite yazı tipi oluşturma sisteminin kullanılmasını devre dışı bırakır.</translation>
<translation id="4326999707196471878">Araç Seti-Görünümler Tarayıcı İletişim Kutuları.</translation>
<translation id="4330406155931244378">Çok Dilde Yazım Denetimini Etkinleştir</translation>
@@ -2943,6 +2954,8 @@ Keşfetmeye devam etmek için herhangi bir tuşa basın.</translation>
<translation id="5148652308299789060">3D yazılım oluşturucusunu devre dışı bırakın</translation>
<translation id="5150254825601720210">Netscape Sertifikası SSL Sunucu Adı</translation>
<translation id="5151034238407558331">Maalesef bu satıcıda Google Payments sadece ABD adresine sahip alıcılar tarafından kullanılabilir. ABD'de yaşıyorsanız lütfen |Google Payments ev adresinizi değiştirin| veya Google Payments kullanmadan ödeyin.</translation>
+<translation id="5151639798712723370">"&gt;
+ USB-C cihaz (sağ ön bağlantı noktası)</translation>
<translation id="5152451685298621771">(Çocuklar için hesap)</translation>
<translation id="5154108062446123722"><ph name="PRINTING_DESTINATION" /> için gelişmiş ayarlar</translation>
<translation id="5154176924561037127">F8</translation>
@@ -3041,6 +3054,7 @@ Keşfetmeye devam etmek için herhangi bir tuşa basın.</translation>
<translation id="5271247532544265821">Basitleştirilmiş/Geleneksel Çince modları arasında geçiş yap</translation>
<translation id="5271549068863921519">Şifreyi kaydet</translation>
<translation id="5273628206174272911">Yatay yönde fazla kaydırma yapıldığında geçmişte deneysel gezinti.</translation>
+<translation id="5275795814002959418">Bu siteden <ph name="COUNT" /> çerez</translation>
<translation id="5275973617553375938">Dosyalar Google Drive'dan geri yüklendi</translation>
<translation id="527605719918376753">Sekmenin sesini kapat</translation>
<translation id="527605982717517565"><ph name="HOST" /> sitesinde JavaScript'e her zaman izin ver</translation>
@@ -3087,6 +3101,7 @@ Keşfetmeye devam etmek için herhangi bir tuşa basın.</translation>
<translation id="5328285148748012771">Bu kullanışlı başlatıcıdan tüm uygulamalarınıza erişebilirsiniz. Oyun oynayın, görüntülü sohbet edin, müzik dinleyin, doküman düzenleyin veya Chrome Web Mağazası'ndan başka uygulamalar edinin.</translation>
<translation id="5329858601952122676">&amp;Sil</translation>
<translation id="5330145655348521461">Bu dosyalar farklı bir masaüstünde açıldı. Görüntülemek için <ph name="USER_NAME" /> (<ph name="MAIL_ADDRESS" />) adlı kullanıcıya geçin.</translation>
+<translation id="5331975486040154427">USB-C cihaz (sol arka bağlantı noktası)</translation>
<translation id="5332624210073556029">Saat dilimi:</translation>
<translation id="5334142896108694079">Komut Dosyası Önbelleği</translation>
<translation id="533433379391851622">Beklenen sürüm "<ph name="EXPECTED_VERSION" />" idi, ancak "<ph name="NEW_ID" />" sürümü belirlendi.</translation>
@@ -3133,6 +3148,7 @@ Keşfetmeye devam etmek için herhangi bir tuşa basın.</translation>
<translation id="539755880180803351">Web formlarında, Otomatik Doldur alan türü tahminlerini yer tutucu metin olarak ek açıklama şeklinde belirtir.</translation>
<translation id="5397578532367286026">Bu kullanıcıyla ilgili kullanım ve geçmiş bilgileri, yönetici (<ph name="MANAGER_EMAIL" />) tarafından chrome.com adresinden incelenebilir.</translation>
<translation id="5397794290049113714">Siz</translation>
+<translation id="5398824043967640339">Diğer sitelerden <ph name="COUNT" /> çerez</translation>
<translation id="5399158067281117682">PIN'ler eşleşmiyor!</translation>
<translation id="5400640815024374115">Güvenilir Platform Modülü (TPM) yongası devre dışı bırakıldı veya yok.</translation>
<translation id="5402367795255837559">Braille</translation>
@@ -3956,6 +3972,7 @@ Hassas bilgileri vermediğinizden emin olun.</translation>
<translation id="6575251558004911012">Bir sitenin kamerama erişmesi gerektiğinde bana sor (önerilen)</translation>
<translation id="6581162200855843583">Google Drive bağlantısı</translation>
<translation id="6583070985841601920"><ph name="USER_EMAIL_ADDRESS" /> olarak oturum açıldı. Senkronizasyon, yöneticiniz tarafından devre dışı bırakıldı.</translation>
+<translation id="65832705307647870">Yeni Sekme sayfasını popüler sitelerle önceden doldurun.</translation>
<translation id="6584878029876017575">Microsoft Ömür Boyu İmzalama</translation>
<translation id="6585234750898046415">Oturum açma ekranında hesabınız için görüntülenecek bir resim seçin.</translation>
<translation id="6585283250473596934">Herkese açık oturuma giriliyor.</translation>
@@ -4300,6 +4317,7 @@ Hassas bilgileri vermediğinizden emin olun.</translation>
<translation id="7092106376816104">Pop-up istisnaları</translation>
<translation id="7093866338626856921"><ph name="HOSTNAMES" /> adlı cihazlarla veri alışverişi</translation>
<translation id="7096082900368329802">Başka harika özellikler keşfetmek ister misiniz?</translation>
+<translation id="7098389117866926363">USB-C cihaz (arkadaki sol bağlantı noktası)</translation>
<translation id="7100897339030255923"><ph name="COUNT" /> öğe seçildi</translation>
<translation id="7106346894903675391">Daha fazla depolama alanı satın alın...</translation>
<translation id="7108338896283013870">Gizle</translation>
@@ -5072,6 +5090,7 @@ Kalan süre hesaplanıyor</translation>
<translation id="8190193592390505034"><ph name="PROVIDER_NAME" /> ağına bağlanılıyor</translation>
<translation id="8191230140820435481">Uygulamalarınızı, uzantılarınızı ve temalarınızı yönetme</translation>
<translation id="8191453843330043793">V8 Proxy Çözümleyici</translation>
+<translation id="8199491812735365610">Giriş yapmak için bir hesap seçin</translation>
<translation id="8200772114523450471">Sürdür</translation>
<translation id="8202160505685531999"><ph name="DEVICE_TYPE" /> profilinizi güncellemek için lütfen şifrenizi tekrar girin.</translation>
<translation id="8204086856545141093">Sunucuya gönderilen istekler bir politika tarafından engellendi.</translation>
@@ -5203,6 +5222,7 @@ Dolana kadar geçecek süre hesaplanıyor</translation>
<translation id="8381977081675353473">Slovakça</translation>
<translation id="8382645631174981738"><ph name="EXTENSION_NAME" /> uzaktan yüklendi</translation>
<translation id="8382913212082956454">E-posta &amp;adresini kopyala</translation>
+<translation id="8384113940676655504">Telefon yakındayken Chromebook'un kilidinin açılmasını sağlamak üzere Chromebook'un Bluetooth Düşük Enerji üzerinden telefonları keşfetmesine olanak tanıyan bir Smart Lock ayarını etkinleştirir.</translation>
<translation id="8390029840652165810">Lütfen ağ bağlantınızın çalışır durumda olduğundan emin olun ve sorun devam ederse, kimlik bilgilerinizi yenilemek için oturumunuzu kapatıp tekrar açın.</translation>
<translation id="8390445751804042000">Bazı ağ paketleri alındığında cihazın uyandırılması özelliğini etkinleştirir.</translation>
<translation id="8390449457866780408">Sunucu kullanılamıyor.</translation>
@@ -5289,6 +5309,7 @@ Dolana kadar geçecek süre hesaplanıyor</translation>
<translation id="8509646642152301857">Yazım denetimi sözlüğü indirilemedi.</translation>
<translation id="8512476990829870887">İşlemi Bitir</translation>
<translation id="851263357009351303"><ph name="HOST" /> sitesindeki resimlerin gösterilmesine her zaman izin ver</translation>
+<translation id="8513191386157529469">"<ph name="CLIENT_NAME" />" bu tarayıcıda hata ayıklıyor.</translation>
<translation id="8513974249124254369">ChromeVox (sesli geri bildirim) etkin. Devre dışı bırakmak için Ctrl+Alt+Z tuşlarına basın.</translation>
<translation id="8515737884867295000">Sertifikaya dayalı kimlik doğrulaması başarısız oldu</translation>
<translation id="8518865679229538285">Tamil giriş yöntemi (Daktilo)</translation>
@@ -5408,6 +5429,7 @@ Dolana kadar geçecek süre hesaplanıyor</translation>
<translation id="8677039480012021122">Verileri temizle ve bağlantıyı kes</translation>
<translation id="8677212948402625567">Tümünü daralt...</translation>
<translation id="8678648549315280022">İndirme ayarlarını yönet...</translation>
+<translation id="8680251145628383637">Tüm cihazlarınızdaki sekmeleri, geçmişi ve diğer ayarları almak için oturum açın. Google hizmetlerinizde de otomatik olarak oturum açarsınız.</translation>
<translation id="8680536109547170164"><ph name="QUERY" />, yanıt, <ph name="ANSWER" /></translation>
<translation id="8680787084697685621">Hesap oturum açma ayrıntıları eski.</translation>
<translation id="8684255857039823328">Şifre kaydedildi. <ph name="MANAGEMENT_LINK" /> bağlantısını kullanarak, şifrelerinize istediğiniz cihazdan erişin.</translation>
@@ -5463,6 +5485,7 @@ Dolana kadar geçecek süre hesaplanıyor</translation>
<translation id="874420130893181774">Geleneksel Pinyin giriş yöntemi</translation>
<translation id="8744525654891896746">Denetlenen bu kullanıcı için bir avatar seçin</translation>
<translation id="8744641000906923997">Romaji</translation>
+<translation id="8744959718895556609"><ph name="LINK_TEXT" /> uygulamanızdan bir hesap seçin</translation>
<translation id="8749863574775030885">Bilinmeyen bir tedarikçinin USB cihazlarına erişme</translation>
<translation id="8754200782896249056">&lt;p&gt;<ph name="PRODUCT_NAME" />, desteklenen bir masaüstü ortamında çalışırken sistem proxy ayarları kullanılır. Ancak, ya sisteminiz desteklenmiyor ya da sistem yapılandırmanız başlatılırken bir hata oluştu.&lt;/p&gt;
@@ -5583,6 +5606,7 @@ Dolana kadar geçecek süre hesaplanıyor</translation>
<translation id="8933960630081805351">Bulucu'da &amp;Göster</translation>
<translation id="8934732568177537184">Devam</translation>
<translation id="8938356204940892126">Vazgeçiyorum</translation>
+<translation id="8938800817013097409">USB-C cihaz (arkadaki sağ bağlantı noktası)</translation>
<translation id="8940081510938872932">Bilgisayarınız şu anda çok şey yapıyor. Daha sonra tekrar deneyin.</translation>
<translation id="8941173171815156065">"<ph name="PERMISSION" />" iznini kaldır</translation>
<translation id="8941248009481596111">Bu siteye bağlantınız gizli.</translation>
diff --git a/chromium/chrome/app/resources/generated_resources_uk.xtb b/chromium/chrome/app/resources/generated_resources_uk.xtb
index be5fd710ffe..e0bf06d7d54 100644
--- a/chromium/chrome/app/resources/generated_resources_uk.xtb
+++ b/chromium/chrome/app/resources/generated_resources_uk.xtb
@@ -136,6 +136,8 @@
<translation id="1178581264944972037">Пауза</translation>
<translation id="1179803038870941185"><ph name="URL" /> хоче повністю контролювати ваші пристрої MIDI.</translation>
<translation id="1181037720776840403">Видалити</translation>
+<translation id="11814323404622888">"&gt;
+ Пристрій, під’єднаний до порту USB-C (праворуч на задній панелі)</translation>
<translation id="1183083053288481515">Використовується наданий адміністратором сертифікат</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>
@@ -329,6 +331,7 @@
<translation id="1468038450257740950">WebGL не підтримується.</translation>
<translation id="1470719357688513792">Нові налаштування файлів cookie почнуть діяти після перезавантаження сторінки.</translation>
<translation id="14720830734893704">Увімкнути підтримку віртуальної клавіатури.</translation>
+<translation id="1474079335130556426">Увімкнути фоновий режим для Push API. Chrome працюватиме, навіть коли ви закриєте всі вікна, і відкриватиметься під час запуску ОС, якщо він потрібен для Push API.</translation>
<translation id="1474339897586437869">Файл "<ph name="FILENAME" />" не додано. Замало вільного місця на Google Диску.</translation>
<translation id="1476503841242751994">{COUNT,plural, =1{1 пароль}one{# пароль}few{# паролі}many{# паролів}other{# пароля}}</translation>
<translation id="1476949146811612304">Налаштувати, яку пошукову систему використовувати під час пошуку з <ph name="BEGIN_LINK" />універсального вікна пошуку<ph name="END_LINK" />.</translation>
@@ -653,6 +656,7 @@
<translation id="1918141783557917887">&amp;Малий</translation>
<translation id="192144045824434199">Увімкнути вікна панелі, що відкриваються поза межами веб-переглядача. Якщо не ввімкнено, під час спроби відкрити панель відкриватиметься спливаюче вікно. Панелі завжди ввімкнено у версії для розробників і версії canary.</translation>
<translation id="1921584744613111023">Роздільна здатність: <ph name="DPI" /></translation>
+<translation id="1921986354447415460">Турецька клавіатура F</translation>
<translation id="1923786009776354244">Увімкнути підтримку вихідного заголовка WebRTC Stun.</translation>
<translation id="1926741348654461781">Дозволити перегляд сторінок у режимі офлайн</translation>
<translation id="1929546189971853037">Переглядати історію веб-перегляду на всіх пристроях, на яких ви ввійшли в обліковий запис</translation>
@@ -851,6 +855,7 @@
<translation id="2231990265377706070">Знак оклику</translation>
<translation id="2232876851878324699">Файл містив сертифікат, який не було імпортовано:</translation>
<translation id="2233502537820838181">&amp;Докладніше</translation>
+<translation id="2233587473672843170">Показувати популярні сайти на сторінці нової вкладки</translation>
<translation id="223714078860837942">Якщо для сторінки не налаштовано правило джерела посилання на непристойний вміст, установлення цієї позначки зменшить обсяг інформації в заголовку джерела посилання для міждоменних запитів.</translation>
<translation id="2238379619048995541">Дані про стан частоти</translation>
<translation id="2239921694246509981">Додати контрольованого користувача</translation>
@@ -926,6 +931,7 @@
<translation id="2326606747676847821">Відкрити в анонімному вікні</translation>
<translation id="2326931316514688470">&amp;Перезавантажити додаток</translation>
<translation id="2327492829706409234">Увімкнути програму</translation>
+<translation id="2329597144923131178">Увійдіть, щоб мати доступ до закладок, історії, паролів та інших налаштувань на всіх своїх пристроях.</translation>
<translation id="2332131598580221120">Переглянути в магазині</translation>
<translation id="2332742915001411729">Відновити масштаб за умовчанням</translation>
<translation id="2335122562899522968">Ця сторінка налаштувала файли cookie.</translation>
@@ -1314,6 +1320,7 @@
<translation id="2838379631617906747">Встановлення</translation>
<translation id="2841837950101800123">Постачальник</translation>
<translation id="2843806747483486897">Змінити дію за умовчанням...</translation>
+<translation id="2844169650293029770">Пристрій, під’єднаний до порту USB-C (ліворуч на передній панелі)</translation>
<translation id="2845382757467349449">Завжди показувати панель закладок</translation>
<translation id="2846816712032308263">Дозволяє швидко закривати вкладки або вікна – використовує обробник JS під час закриття вкладок незалежно від GUI.</translation>
<translation id="284970761985428403"><ph name="ASCII_NAME" /> (<ph name="UNICODE_NAME" />)</translation>
@@ -1378,6 +1385,7 @@
<translation id="2923469375796950815">Вимкнути новий Розпакувальник ZIP-архівів.</translation>
<translation id="2924296707677495905">Транслітерація (namaskaram → ನಮಸ್ಕಾರ)</translation>
<translation id="2925966894897775835">Таблиці</translation>
+<translation id="2927017729816812676">Кеш-пам’ять</translation>
<translation id="2927657246008729253">Змінити...</translation>
<translation id="2928526264833629376">Перейти в Hangouts</translation>
<translation id="2930644991850369934">Під час завантаження образу для відновлення виникла проблема. З’єднання з мережею втрачено.</translation>
@@ -1718,6 +1726,7 @@
<translation id="3396331542604645348">Вибраний принтер недоступний або його неправильно встановлено. Перевірте принтер або спробуйте вибрати інший.</translation>
<translation id="3399597614303179694">Македонська клавіатура</translation>
<translation id="340013220407300675">Зловмисники можуть намагатися викрасти вашу інформацію з <ph name="BEGIN_BOLD" /><ph name="SITE" /><ph name="END_BOLD" /> (наприклад, паролі, повідомлення чи кредитні картки).</translation>
+<translation id="3401130144947259741">Події експортуватимуться в розділ відстеження подій для Windows (ETW), де їх зможуть реєструвати такі інструменти, як UIForETW або Xperf.</translation>
<translation id="340282674066624"><ph name="DOWNLOAD_RECEIVED" />, <ph name="TIME_LEFT" /></translation>
<translation id="3406605057700382950">&amp;Показати панель закладок</translation>
<translation id="3412265149091626468">Перейти до виділення</translation>
@@ -1877,6 +1886,7 @@
<translation id="3603385196401704894">Французька (Канада)</translation>
<translation id="3603622770190368340">Отримати сертифікат мережі</translation>
<translation id="3605780360466892872">Консерватор</translation>
+<translation id="3606220979431771195">Турецька клавіатура F</translation>
<translation id="3608454375274108141">F10</translation>
<translation id="3608576286259426129">Попередній перегляд зображення користувача</translation>
<translation id="3609138628363401169">Сервер не підтримує розширення для повторного узгодження протоколу TLS.</translation>
@@ -2397,6 +2407,7 @@
<translation id="4321136812570927563">{NUM_DOWNLOAD,plural, =1{Продовжити завантаження}one{Продовжити завантаження}few{Продовжити завантаження}many{Продовжити завантаження}other{Продовжити завантаження}}</translation>
<translation id="4321179778687042513">ctrl</translation>
<translation id="4322394346347055525">Закрити інші вкладки</translation>
+<translation id="4325378361067528777">Увімкнути фоновий режим Push API</translation>
<translation id="4326952458285403282">Вимикає використання експериментальної системи відображення шрифтів DirectWrite.</translation>
<translation id="4326999707196471878">Toolkit-Views Browser Dialogs (Вікна веб-переглядача для інструментів).</translation>
<translation id="4330406155931244378">Увімкнути перевірку правопису для кількох мов</translation>
@@ -2931,6 +2942,8 @@
<translation id="5148652308299789060">Вимкнути 3D-раструвальник програмного забезпечення</translation>
<translation id="5150254825601720210">Ім'я SSL-сервера сертифіката Netscape</translation>
<translation id="5151034238407558331">На жаль, цей продавець приймає оплату через Google Payments лише від покупців зі США. Якщо ви проживаєте в США, |змініть свою домашню адресу в Google Payments| або виберіть інший спосіб оплати.</translation>
+<translation id="5151639798712723370">"&gt;
+ Пристрій, під’єднаний до порту USB-C (праворуч на передній панелі)</translation>
<translation id="5152451685298621771">(обліковий запис для дітей)</translation>
<translation id="5154108062446123722"><ph name="PRINTING_DESTINATION" />: розширені налаштування</translation>
<translation id="5154176924561037127">F8</translation>
@@ -3029,6 +3042,7 @@
<translation id="5271247532544265821">Переключити режим китайська спрощена/традиційна</translation>
<translation id="5271549068863921519">Зберегти пароль</translation>
<translation id="5273628206174272911">Експериментальна навігація в історії за допомогою горизонтального прокручування.</translation>
+<translation id="5275795814002959418"><ph name="COUNT" /> з цього сайту</translation>
<translation id="5275973617553375938">Відновлені файли з Google Диска</translation>
<translation id="527605719918376753">Вимкнути звук на вкладці</translation>
<translation id="527605982717517565">Завжди дозволяти JavaScript на хості <ph name="HOST" /></translation>
@@ -3075,6 +3089,7 @@
<translation id="5328285148748012771">Отримуйте доступ до всіх своїх програм із цієї зручної панелі запуску. Грайте в ігри, спілкуйтеся у відеочатах, слухайте музику, редагуйте документи та завантажуйте інші програми з Веб-магазину Chrome.</translation>
<translation id="5329858601952122676">&amp;Видалити</translation>
<translation id="5330145655348521461">Ці файли відкрито на іншому комп’ютері. Перейдіть до <ph name="USER_NAME" /> (<ph name="MAIL_ADDRESS" />), щоб переглянути їх.</translation>
+<translation id="5331975486040154427">Пристрій, під’єднаний до порту USB-C (ліворуч на задній панелі)</translation>
<translation id="5332624210073556029">Часовий пояс:</translation>
<translation id="5334142896108694079">Кеш сценаріїв</translation>
<translation id="533433379391851622">Очікувана версія – "<ph name="EXPECTED_VERSION" />". Використана версія – "<ph name="NEW_ID" />".</translation>
@@ -3121,6 +3136,7 @@
<translation id="539755880180803351">Додає примітки до веб-форм за допомогою передбачень типу поля автозаповнення як тексту заповнювача.</translation>
<translation id="5397578532367286026">Менеджер (<ph name="MANAGER_EMAIL" />) може переглядати дії й історію цього користувача на chrome.com.</translation>
<translation id="5397794290049113714">Ви</translation>
+<translation id="5398824043967640339"><ph name="COUNT" /> з інших сайтів</translation>
<translation id="5399158067281117682">PIN-коди не підходять!</translation>
<translation id="5400640815024374115">Модуль Trusted Platform Module (TPM) вимкнено або його немає.</translation>
<translation id="5402367795255837559">Команди Брайля</translation>
@@ -3925,6 +3941,7 @@
<translation id="6575251558004911012">Запитувати, якщо сайту потрібен доступ до вашої камери (рекомендовано)</translation>
<translation id="6581162200855843583">Посилання Google Диска</translation>
<translation id="6583070985841601920">Ви ввійшли як <ph name="USER_EMAIL_ADDRESS" />. Синхронізацію вимкнено вашим адміністратором.</translation>
+<translation id="65832705307647870">Додавати популярні сайти на сторінку нової вкладки.</translation>
<translation id="6584878029876017575">Безстроковий підпис Microsoft</translation>
<translation id="6585234750898046415">Виберіть зображення, яке представлятиме ваш обліковий запис на екрані входу. </translation>
<translation id="6585283250473596934">Початок загальнодоступного сеансу.</translation>
@@ -4266,6 +4283,7 @@
<translation id="7092106376816104">Винятки для спливаючих вікон</translation>
<translation id="7093866338626856921">Обмінюватися даними з пристроями з назвами: <ph name="HOSTNAMES" /></translation>
<translation id="7096082900368329802">Хочете дізнатися про інші корисні функції?</translation>
+<translation id="7098389117866926363">Пристрій, під’єднаний до порту USB-C (ліворуч на задній панелі)</translation>
<translation id="7100897339030255923">Вибрано елементів: <ph name="COUNT" /></translation>
<translation id="7106346894903675391">Придбати більше місця...</translation>
<translation id="7108338896283013870">Сховати</translation>
@@ -5034,6 +5052,7 @@
<translation id="8190193592390505034">З'єднання з <ph name="PROVIDER_NAME" /></translation>
<translation id="8191230140820435481">Керувати вашими програмами, розширеннями та темами</translation>
<translation id="8191453843330043793">Засіб розпізнавання проксі-сервера V8</translation>
+<translation id="8199491812735365610">Виберіть обліковий запис, у який ви хочете ввійти</translation>
<translation id="8200772114523450471">Поновити</translation>
<translation id="8202160505685531999">Щоб оновити профіль <ph name="DEVICE_TYPE" />, введіть пароль ще раз.</translation>
<translation id="8204086856545141093">Надсилання запитів на сервер заблоковано правилом.</translation>
@@ -5160,6 +5179,7 @@
<translation id="8381977081675353473">словацька</translation>
<translation id="8382645631174981738"><ph name="EXTENSION_NAME" /> встановлено віддалено</translation>
<translation id="8382913212082956454">Копіювати &amp;адресу електронної пошти</translation>
+<translation id="8384113940676655504">Вмикається налаштування Smart Lock, завдяки якому Chromebook знаходить телефони в режимі енергозбереження Bluetooth. Chromebook розблоковується, коли поблизу є телефон.</translation>
<translation id="8390029840652165810">Переконайтеся, що з’єднання з мережею працює. Якщо проблема не зникне, вийдіть з облікового запису й увійдіть знову, щоб оновити облікові дані.</translation>
<translation id="8390445751804042000">Виводити пристрій зі сну в разі отримання мережевих пакетів.</translation>
<translation id="8390449457866780408">Сервер не доступний.</translation>
@@ -5245,6 +5265,7 @@
<translation id="8509646642152301857">Помилка завантаження словника перевірки орфографії.</translation>
<translation id="8512476990829870887">Закінчити процес</translation>
<translation id="851263357009351303">Завжди дозволяти хосту <ph name="HOST" /> показувати зображення</translation>
+<translation id="8513191386157529469"><ph name="CLIENT_NAME" /> налагоджує цей веб-переглядач.</translation>
<translation id="8513974249124254369">ChromeVox (голосові підказки) увімкнено. Натисніть Ctrl+Alt+Z, щоб вимкнути.</translation>
<translation id="8515737884867295000">Автентифікацію за сертифікатом не здійснено</translation>
<translation id="8518865679229538285">Метод введення тамільської мови (Typewriter)</translation>
@@ -5364,6 +5385,7 @@
<translation id="8677039480012021122">Видалити дані та від’єднатися</translation>
<translation id="8677212948402625567">Згорнути все...</translation>
<translation id="8678648549315280022">Керувати налаштуваннями завантаження…</translation>
+<translation id="8680251145628383637">Увійдіть в обліковий запис, щоб мати доступ до закладок, історії, паролів та інших налаштувань на всіх своїх пристроях. Крім того, ви автоматично входитимете в служби Google.</translation>
<translation id="8680536109547170164">"<ph name="QUERY" />", відповідь: "<ph name="ANSWER" />"</translation>
<translation id="8680787084697685621">Дані для входу в обліковий запис застаріли.</translation>
<translation id="8684255857039823328">Пароль збережено. Ви можете переглянути свої паролі з будь-якого пристрою на сторінці <ph name="MANAGEMENT_LINK" />.</translation>
@@ -5419,6 +5441,7 @@
<translation id="874420130893181774">Метод введення для стандарту піньїнь традиційної китайської мови</translation>
<translation id="8744525654891896746">Вибрати аватар для цього контрольованого користувача</translation>
<translation id="8744641000906923997">Ромадзі</translation>
+<translation id="8744959718895556609">Виберіть обліковий запис у <ph name="LINK_TEXT" /></translation>
<translation id="8749863574775030885">Отримувати доступ до пристроїв USB від невідомого постачальника</translation>
<translation id="8754200782896249056">&lt;p&gt;Коли <ph name="PRODUCT_NAME" /> працює в підтримуваному середовищі настільного комп’ютера використовуються налаштування проксі-сервера системи. Однак ваша система не підтримується або виникла проблема із запуском її конфігурації.&lt;/p&gt;
@@ -5539,6 +5562,7 @@
<translation id="8933960630081805351">&amp;Показати в програмі Finder</translation>
<translation id="8934732568177537184">Продовжити</translation>
<translation id="8938356204940892126">Припинити</translation>
+<translation id="8938800817013097409">Пристрій, під’єднаний до порту USB-C (праворуч на задній панелі)</translation>
<translation id="8940081510938872932">Зараз ваш комп’ютер виконує забагато завдань. Повторіть спробу пізніше.</translation>
<translation id="8941173171815156065">Скасувати дозвіл "<ph name="PERMISSION" />"</translation>
<translation id="8941248009481596111">Ваше з’єднання з цим сайтом конфіденційне.</translation>
diff --git a/chromium/chrome/app/resources/generated_resources_vi.xtb b/chromium/chrome/app/resources/generated_resources_vi.xtb
index e5d775e4ef1..441011271a2 100644
--- a/chromium/chrome/app/resources/generated_resources_vi.xtb
+++ b/chromium/chrome/app/resources/generated_resources_vi.xtb
@@ -136,6 +136,8 @@
<translation id="1178581264944972037">Tạm dừng</translation>
<translation id="1179803038870941185"><ph name="URL" /> muốn có quyền kiểm soát toàn bộ thiết bị MIDI của bạn.</translation>
<translation id="1181037720776840403">Xóa</translation>
+<translation id="11814323404622888">"&gt;
+ Thiết bị USB-C (cổng phía sau, bên phải)</translation>
<translation id="1183083053288481515">Sử dụng chứng chỉ do quản trị viên cung cấp</translation>
<translation id="1183237619868651138">Không thể cài đặt <ph name="EXTERNAL_CRX_FILE" /> trong bộ nhớ cache cục bộ.</translation>
<translation id="1185924365081634987">Bạn cũng có thể thử <ph name="GUEST_SIGNIN_LINK_START" />duyệt với tư cách khách<ph name="GUEST_SIGNIN_LINK_END" /> để khắc phục lỗi mạng này.</translation>
@@ -330,6 +332,7 @@
<translation id="1468038450257740950">WebGL không được hỗ trợ.</translation>
<translation id="1470719357688513792">Cài đặt cookie mới sẽ có hiệu lực sau khi tải lại trang.</translation>
<translation id="14720830734893704">Bật hỗ trợ bàn phím ảo.</translation>
+<translation id="1474079335130556426">Bật chế độ nền cho API Push. Điều này cho phép Chrome tiếp tục chạy sau khi cửa sổ cuối cùng đóng và khởi chạy khi khởi động OS nếu API Push cần.</translation>
<translation id="1474339897586437869">"<ph name="FILENAME" />" không được tải lên. Không có đủ dung lượng trống trong Google Drive của bạn.</translation>
<translation id="1476503841242751994">{COUNT,plural, =1{1 mật khẩu}other{# mật khẩu}}</translation>
<translation id="1476949146811612304">Đặt công cụ tìm kiếm được sử dụng khi tìm kiếm từ
@@ -655,6 +658,7 @@
<translation id="1918141783557917887">&amp;Nhỏ hơn</translation>
<translation id="192144045824434199">Cửa sổ Bật bảng điều khiển mở bên ngoài khung trình duyệt. Nếu chưa được bật, các lần mở Bảng điều khiển sẽ mở cửa sổ bật lên thay vào đó. Bảng điều khiển luôn được bật trên các kênh dành cho nhà phát triển và kênh canary.</translation>
<translation id="1921584744613111023"><ph name="DPI" /> dpi</translation>
+<translation id="1921986354447415460">Bàn phím tiếng Thổ Nhĩ Kỳ-F</translation>
<translation id="1923786009776354244">Bật hỗ trợ cho tiêu đề gốc WebRTC Stun.</translation>
<translation id="1926741348654461781">Bật trang ngoại tuyến</translation>
<translation id="1929546189971853037">Đọc lịch sử duyệt web của bạn trên tất cả các thiết bị đã đăng nhập</translation>
@@ -854,6 +858,7 @@
<translation id="2231990265377706070">Dấu chấm than</translation>
<translation id="2232876851878324699">Tệp có chứa một chứng chỉ chưa được nhập:</translation>
<translation id="2233502537820838181">&amp;Thông tin khác</translation>
+<translation id="2233587473672843170">Hiển thị trang web phổ biến trên trang Tab mới</translation>
<translation id="223714078860837942">Nếu trang chưa thiết lập chính sách liên kết giới thiệu rõ ràng, đặt cờ này sẽ giảm lượng thông tin trong tiêu đề 'referer "cho các yêu cầu nguồn chéo.</translation>
<translation id="2238379619048995541">Dữ liệu trạng thái tần suất</translation>
<translation id="2239921694246509981">Thêm người được giám sát</translation>
@@ -932,6 +937,7 @@ Sau khi tạo người dùng được giám sát mới, bạn có thể quản l
<translation id="2326606747676847821">Truy cập ẩn danh</translation>
<translation id="2326931316514688470">Tải &amp;lại ứng dụng</translation>
<translation id="2327492829706409234">Bật ứng dụng</translation>
+<translation id="2329597144923131178">Đăng nhập để nhận dấu trang, lịch sử, mật khẩu và các cài đặt khác trên tất cả các thiết bị của bạn.</translation>
<translation id="2332131598580221120">Xem trong cửa hàng</translation>
<translation id="2332742915001411729">Đặt lại về mặc định</translation>
<translation id="2335122562899522968">Trang này đã đặt các cookie.</translation>
@@ -1320,6 +1326,7 @@ Tôi không cho rằng nên chặn trang web này!</translation>
<translation id="2838379631617906747">Đang cài đặt</translation>
<translation id="2841837950101800123">Nhà cung cấp</translation>
<translation id="2843806747483486897">Thay đổi mặc định...</translation>
+<translation id="2844169650293029770">Thiết bị USB-C (cổng phía trước, bên trái)</translation>
<translation id="2845382757467349449">Luôn Hiển thị Thanh Dấu trang</translation>
<translation id="2846816712032308263">Bật tính năng đóng tab/cửa sổ nhanh - chạy độc lập trình xử lý onunload.js cho tab của GUI.</translation>
<translation id="284970761985428403"><ph name="ASCII_NAME" /> (<ph name="UNICODE_NAME" />)</translation>
@@ -1387,6 +1394,7 @@ Tôi không cho rằng nên chặn trang web này!</translation>
<translation id="2923469375796950815">Tắt trình giải nén ZIP mới.</translation>
<translation id="2924296707677495905">Chuyển ngữ (namaskaram → ನಮಸ್ಕಾರ)</translation>
<translation id="2925966894897775835">Bảng tính</translation>
+<translation id="2927017729816812676">Bộ nhớ cache</translation>
<translation id="2927657246008729253">Thay đổi...</translation>
<translation id="2928526264833629376">Tiếp tục với Hangouts</translation>
<translation id="2930644991850369934">Đã xảy ra sự cố trong quá trình tải xuống hình ảnh khôi phục. Kết nối mạng đã bị mất.</translation>
@@ -1729,6 +1737,7 @@ Tôi không cho rằng nên chặn trang web này!</translation>
<translation id="3396331542604645348">Máy in đã chọn không khả dụng hoặc không được cài đặt chính xác. Hãy kiểm tra máy in của bạn hoặc thử chọn một máy in khác.</translation>
<translation id="3399597614303179694">Bàn phím Macedonia</translation>
<translation id="340013220407300675">Có thể những kẻ tấn công đang cố đánh cắp thông tin của bạn từ <ph name="BEGIN_BOLD" /><ph name="SITE" /><ph name="END_BOLD" /> (ví dụ: mật khẩu, tin nhắn hoặc thẻ tín dụng).</translation>
+<translation id="3401130144947259741">Nếu đã bật, các sự kiện theo dõi sẽ được xuất sang Theo dõi sự kiện cho Windows (ETW) và có thể chụp được bằng công cụ như UIForETW hoặc Xperf.</translation>
<translation id="340282674066624"><ph name="DOWNLOAD_RECEIVED" />, <ph name="TIME_LEFT" /></translation>
<translation id="3406605057700382950">&amp;Hiển thị thanh dấu trang</translation>
<translation id="3412265149091626468">Chuyển tới Phần lựa chọn</translation>
@@ -1888,6 +1897,7 @@ Tôi không cho rằng nên chặn trang web này!</translation>
<translation id="3603385196401704894">Tiếng Pháp ở Canada</translation>
<translation id="3603622770190368340">Nhận chứng chỉ mạng</translation>
<translation id="3605780360466892872">Doanh nhân</translation>
+<translation id="3606220979431771195">Tiếng Thổ Nhĩ Kỳ-F</translation>
<translation id="3608454375274108141">F10</translation>
<translation id="3608576286259426129">Bản xem trước hình ảnh dành cho người dùng</translation>
<translation id="3609138628363401169">Máy chủ không hỗ trợ tiện ích đàm phán lại TLS.</translation>
@@ -2407,6 +2417,7 @@ Tất cả người dùng phải đăng xuất để tiếp tục.</translation>
<translation id="4321136812570927563">{NUM_DOWNLOAD,plural, =1{Tiếp tục tải xuống}other{Tiếp tục tải xuống}}</translation>
<translation id="4321179778687042513">ctrl</translation>
<translation id="4322394346347055525">Đóng các Tab Khác</translation>
+<translation id="4325378361067528777">Bật chế độ nền API Push</translation>
<translation id="4326952458285403282">Không cho phép sử dụng hệ thống hiển thị phông chữ DirectWrite thử nghiệm.</translation>
<translation id="4326999707196471878">Hộp thoại trình duyệt chế độ xem bộ công cụ.</translation>
<translation id="4330406155931244378">Bật Trình kiểm tra chính tả đa ngôn ngữ</translation>
@@ -2948,6 +2959,8 @@ Nhấn phím bất kỳ để tiếp tục khám phá.</translation>
<translation id="5148652308299789060">Vô hiệu hóa trình tạo ảnh điểm trên phần mềm 3D</translation>
<translation id="5150254825601720210">Tên Máy chủ SSL của Chứng chỉ Netscape</translation>
<translation id="5151034238407558331">Rất tiếc, chỉ người mua có địa chỉ ở Hoa Kỳ mới có thể sử dụng Google Payments với người bán này. Nếu bạn là cư dân Hoa Kỳ, vui lòng |thay đổi địa chỉ nhà riêng của bạn với Google Payments| hoặc thanh toán mà không sử dụng Google Payments.</translation>
+<translation id="5151639798712723370">"&gt;
+ Thiết bị USB-C (cổng phía trước, bên phải)</translation>
<translation id="5152451685298621771">(Tài khoản cho trẻ em)</translation>
<translation id="5154108062446123722">Cài đặt nâng cao cho <ph name="PRINTING_DESTINATION" /></translation>
<translation id="5154176924561037127">F8</translation>
@@ -3046,6 +3059,7 @@ Nhấn phím bất kỳ để tiếp tục khám phá.</translation>
<translation id="5271247532544265821">Chuyển giữa chế độ tiếng Trung Giản thể/tiếng Trung Phồn thể</translation>
<translation id="5271549068863921519">Lưu mật khẩu</translation>
<translation id="5273628206174272911">Điều hướng lịch sử thử nghiệm theo thanh cuộn qua ngang.</translation>
+<translation id="5275795814002959418"><ph name="COUNT" /> từ trang web này</translation>
<translation id="5275973617553375938">Tệp được khôi phục từ Google Drive</translation>
<translation id="527605719918376753">Tắt tiếng tab</translation>
<translation id="527605982717517565">Luôn cho phép JavaScript trên <ph name="HOST" /></translation>
@@ -3092,6 +3106,7 @@ Nhấn phím bất kỳ để tiếp tục khám phá.</translation>
<translation id="5328285148748012771">Truy cập tất cả ứng dụng của bạn từ trình chạy tiện dụng này. Chơi trò chơi, trò chuyện video, nghe nhạc, chỉnh sửa tài liệu hoặc tải thêm ứng dụng từ Cửa hàng Chrome trực tuyến.</translation>
<translation id="5329858601952122676">&amp;Xoá</translation>
<translation id="5330145655348521461">Những tệp này được mở trên máy tính khác. Chuyển tới <ph name="USER_NAME" /> (<ph name="MAIL_ADDRESS" />) để xem tệp đó.</translation>
+<translation id="5331975486040154427">Thiết bị USB-C (cổng phía sau, bên trái)</translation>
<translation id="5332624210073556029">Múi giờ:</translation>
<translation id="5334142896108694079">Bộ nhớ cache tập lệnh</translation>
<translation id="533433379391851622">Phiên bản mong muốn "<ph name="EXPECTED_VERSION" />", nhưng phiên bản là "<ph name="NEW_ID" />".</translation>
@@ -3138,6 +3153,7 @@ Nhấn phím bất kỳ để tiếp tục khám phá.</translation>
<translation id="539755880180803351">Chú thích biểu mẫu web với dự đoán loại trường Tự động điền là văn bản giữ chỗ.</translation>
<translation id="5397578532367286026">Người quản lý (<ph name="MANAGER_EMAIL" />) trên chrome.com có thể xem lại mức sử dụng và lịch sử của người dùng này.</translation>
<translation id="5397794290049113714">Bạn</translation>
+<translation id="5398824043967640339"><ph name="COUNT" /> từ trang web khác</translation>
<translation id="5399158067281117682">Các mã PIN không khớp!</translation>
<translation id="5400640815024374115">Phần Mô-đun nền tảng đáng tin cậy (TPM) đã bị vô hiệu hóa hoặc bị thiếu.</translation>
<translation id="5402367795255837559">Chữ nổi</translation>
@@ -3965,6 +3981,7 @@ Một số tính năng có thể không có sẵn. Hãy kiểm tra xem hồ sơ
<translation id="6575251558004911012">Hỏi khi một trang web yêu cầu quyền truy cập vào máy ảnh của bạn (được đề xuất)</translation>
<translation id="6581162200855843583">Liên kết Google Drive</translation>
<translation id="6583070985841601920">Đã đăng nhập là <ph name="USER_EMAIL_ADDRESS" />. Đồng bộ hóa bị tắt bởi quản trị viên của bạn.</translation>
+<translation id="65832705307647870">Điền trước những trang web phổ biến vào trang Tab mới.</translation>
<translation id="6584878029876017575">Ký Trọn đời của Microsoft</translation>
<translation id="6585234750898046415">Chọn hình ảnh để hiển thị cho tài khoản của bạn trên màn hình đăng nhập.</translation>
<translation id="6585283250473596934">Đăng nhập vào phiên công khai.</translation>
@@ -4311,6 +4328,7 @@ Một số tính năng có thể không có sẵn. Hãy kiểm tra xem hồ sơ
<translation id="7092106376816104">Ngoại lệ cho cửa sổ bật lên</translation>
<translation id="7093866338626856921">Trao đổi dữ liệu với thiết bị có tên: <ph name="HOSTNAMES" /></translation>
<translation id="7096082900368329802">Bạn muốn khám phá thêm những tính năng tuyệt vời?</translation>
+<translation id="7098389117866926363">Thiết bị USB-C (cổng bên trái ở phía sau)</translation>
<translation id="7100897339030255923">Đã chọn <ph name="COUNT" /> mục</translation>
<translation id="7106346894903675391">Mua thêm dung lượng lưu trữ...</translation>
<translation id="7108338896283013870">Ẩn</translation>
@@ -5086,6 +5104,7 @@ Giữ tệp khóa của bạn ở nơi an toàn. Bạn sẽ cần tệp khóa đ
<translation id="8190193592390505034">Đang kết nối đến <ph name="PROVIDER_NAME" /></translation>
<translation id="8191230140820435481">Quản lý ứng dụng, tiện ích và chủ đề của bạn</translation>
<translation id="8191453843330043793">Trình phân giải proxy V8</translation>
+<translation id="8199491812735365610">Chọn tài khoản để đăng nhập</translation>
<translation id="8200772114523450471">Tiếp tục</translation>
<translation id="8202160505685531999">Vui lòng nhập lại mật khẩu để cập nhật hồ sơ <ph name="DEVICE_TYPE" /> của bạn.</translation>
<translation id="8204086856545141093">Yêu cầu tới máy chủ đã bị chặn bởi chính sách.</translation>
@@ -5216,6 +5235,7 @@ Giữ tệp khóa của bạn ở nơi an toàn. Bạn sẽ cần tệp khóa đ
<translation id="8381977081675353473">Tiếng Slovakia</translation>
<translation id="8382645631174981738"><ph name="EXTENSION_NAME" /> được cài đặt từ xa</translation>
<translation id="8382913212082956454">Sao chép địa chỉ &amp;email</translation>
+<translation id="8384113940676655504">Bật cài đặt Smart Lock cho phép Chromebook khám phá các điện thoại qua Bluetooth Low Energy để mở khóa Chromebook khi điện thoại ở gần đó.</translation>
<translation id="8390029840652165810">Vui lòng đảm bảo kết nối mạng của bạn đang hoạt động và nếu sự cố vẫn tiếp diễn, vui lòng đăng xuất và đăng nhập lại để làm mới thông tin đăng nhập của bạn.</translation>
<translation id="8390445751804042000">Cho phép đánh thức thiết bị dựa vào khả năng nhận một số gói mạng.</translation>
<translation id="8390449457866780408">Máy chủ không khả dụng.</translation>
@@ -5302,6 +5322,7 @@ Giữ tệp khóa của bạn ở nơi an toàn. Bạn sẽ cần tệp khóa đ
<translation id="8509646642152301857">Tải xuống từ điển kiểm tra lỗi chính tả không thành công.</translation>
<translation id="8512476990829870887">Kết thúc quá trình</translation>
<translation id="851263357009351303">Luôn cho phép <ph name="HOST" /> hiển thị hình ảnh</translation>
+<translation id="8513191386157529469">"<ph name="CLIENT_NAME" />" đang gỡ lỗi trình duyệt này.</translation>
<translation id="8513974249124254369">ChromeVox (phản hồi bằng giọng nói) được bật. Nhấn Ctrl+Alt+Z để tắt.</translation>
<translation id="8515737884867295000">Không thể xác thực dựa theo chứng chỉ</translation>
<translation id="8518865679229538285">Phương thức nhập Tamil (máy đánh chữ)</translation>
@@ -5421,6 +5442,7 @@ Giữ tệp khóa của bạn ở nơi an toàn. Bạn sẽ cần tệp khóa đ
<translation id="8677039480012021122">Xóa dữ liệu và ngắt kết nối</translation>
<translation id="8677212948402625567">Thu gọn tất cả...</translation>
<translation id="8678648549315280022">Quản lý cài đặt tải xuống...</translation>
+<translation id="8680251145628383637">Đăng nhập để nhận dấu trang, lịch sử, mật khẩu và cài đặt khác trên tất cả thiết bị của bạn. Bạn cũng sẽ tự động được đăng nhập vào các dịch vụ Google của mình.</translation>
<translation id="8680536109547170164"><ph name="QUERY" />, câu trả lời, <ph name="ANSWER" /></translation>
<translation id="8680787084697685621">Chi tiết đăng nhập tài khoản đã lỗi thời.</translation>
<translation id="8684255857039823328">Đã lưu mật khẩu. Truy cập mật khẩu của bạn từ bất kỳ thiết bị nào tại <ph name="MANAGEMENT_LINK" />.</translation>
@@ -5476,6 +5498,7 @@ Giữ tệp khóa của bạn ở nơi an toàn. Bạn sẽ cần tệp khóa đ
<translation id="874420130893181774">Phương thức nhập Bính âm truyền thống</translation>
<translation id="8744525654891896746">Chọn hình đại diện cho người dùng được giám sát này</translation>
<translation id="8744641000906923997">Romaji</translation>
+<translation id="8744959718895556609">Chọn tài khoản từ <ph name="LINK_TEXT" /> của bạn</translation>
<translation id="8749863574775030885">Truy cập thiết bị USB từ nhà cung cấp không xác định</translation>
<translation id="8754200782896249056">&lt;p&gt;Khi chạy <ph name="PRODUCT_NAME" /> trong môi trường màn hình được hỗ trợ, cài đặt proxy hệ thống sẽ được sử dụng. Tuy nhiên, hệ thống của bạn không được hỗ trợ hoặc đã xảy ra sự cố khi khởi chạy cấu hình hệ thống của bạn.&lt;/p&gt;
@@ -5596,6 +5619,7 @@ Giữ tệp khóa của bạn ở nơi an toàn. Bạn sẽ cần tệp khóa đ
<translation id="8933960630081805351">&amp;Hiển thị trong Trình tìm kiếm</translation>
<translation id="8934732568177537184">Tiếp tục</translation>
<translation id="8938356204940892126">Từ bỏ</translation>
+<translation id="8938800817013097409">Thiết bị USB-C (cổng bên phải ở phía sau)</translation>
<translation id="8940081510938872932">Máy tính của bạn hiện đang thực hiện quá nhiều tác vụ. Hãy thử lại sau.</translation>
<translation id="8941173171815156065">Thu hồi quyền '<ph name="PERMISSION" />'</translation>
<translation id="8941248009481596111">Kết nối của bạn tới trang web này ở chế độ riêng tư.</translation>
diff --git a/chromium/chrome/app/resources/generated_resources_zh-CN.xtb b/chromium/chrome/app/resources/generated_resources_zh-CN.xtb
index b92b0238a20..e82db4b51fb 100644
--- a/chromium/chrome/app/resources/generated_resources_zh-CN.xtb
+++ b/chromium/chrome/app/resources/generated_resources_zh-CN.xtb
@@ -135,6 +135,8 @@
<translation id="1178581264944972037">暂停</translation>
<translation id="1179803038870941185"><ph name="URL" /> 想要获取您的 MIDI 设备的完全控制权。</translation>
<translation id="1181037720776840403">删除</translation>
+<translation id="11814323404622888">"&gt;
+ USB-C 设备(右侧后端端口)</translation>
<translation id="1183083053288481515">正在使用管理员提供的证书</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>
@@ -328,6 +330,7 @@
<translation id="1468038450257740950">WebGL 不受支持。</translation>
<translation id="1470719357688513792">新的 Cookie 设置会在重新加载网页后生效。</translation>
<translation id="14720830734893704">启用虚拟键盘支持。</translation>
+<translation id="1474079335130556426">启用 Push API 后台模式。这样一来,Chrome 将在最后一个窗口关闭后继续运行,并在操作系统启动时一并启动(如果 Push API 需要使用 Chrome)。</translation>
<translation id="1474339897586437869">未上传“<ph name="FILENAME" />”,因为您的 Google 云端硬盘没有足够的可用空间。</translation>
<translation id="1476503841242751994">{COUNT,plural, =1{1 个密码}other{# 个密码}}</translation>
<translation id="1476949146811612304">设置在通过<ph name="BEGIN_LINK" />多功能框<ph name="END_LINK" />搜索时所用的搜索引擎。</translation>
@@ -652,6 +655,7 @@
<translation id="1918141783557917887">缩小(&amp;S)</translation>
<translation id="192144045824434199">启用在浏览器框架之外打开的面板窗口。如果未启用,在尝试打开面板时就会打开一个弹出窗口。在 dev 和 canary 版本中,面板是始终启用的。</translation>
<translation id="1921584744613111023"><ph name="DPI" /> dpi</translation>
+<translation id="1921986354447415460">土耳其语 F 键盘</translation>
<translation id="1923786009776354244">启用对 WebRTC Stun 的“Origin”标头的支持。</translation>
<translation id="1926741348654461781">启用离线版网页</translation>
<translation id="1929546189971853037">读取您在所有登录过的设备上的浏览记录</translation>
@@ -850,6 +854,7 @@
<translation id="2231990265377706070">感叹号</translation>
<translation id="2232876851878324699">该文件包含一个证书,但未导入:</translation>
<translation id="2233502537820838181">详细信息(&amp;M)</translation>
+<translation id="2233587473672843170">在“打开新的标签页”页面中显示热门网站</translation>
<translation id="223714078860837942">如果网页尚未设置明确的引荐来源政策,那么在您设置此项后,跨域请求对应的“referer”标头中的信息量将会减少。</translation>
<translation id="2238379619048995541">频率状态数据</translation>
<translation id="2239921694246509981">添加受监管用户</translation>
@@ -927,6 +932,7 @@
<translation id="2326606747676847821">进入隐身模式</translation>
<translation id="2326931316514688470">重新加载应用(&amp;R)</translation>
<translation id="2327492829706409234">启用应用</translation>
+<translation id="2329597144923131178">登录后可获取您所有设备上保存的书签、历史记录、密码和其他设置。</translation>
<translation id="2332131598580221120">在应用店中查看</translation>
<translation id="2332742915001411729">重置为默认设置</translation>
<translation id="2335122562899522968">该页用于设置 Cookie。</translation>
@@ -1313,6 +1319,7 @@
<translation id="2838379631617906747">正在安装</translation>
<translation id="2841837950101800123">提供方</translation>
<translation id="2843806747483486897">更改默认设置...</translation>
+<translation id="2844169650293029770">USB-C 设备(左侧前端端口)</translation>
<translation id="2845382757467349449">总是显示书签栏</translation>
<translation id="2846816712032308263">启用快速关闭标签页/窗口功能 - 将标签页的 onunload js 处理程序与 GUI 分开运行。</translation>
<translation id="284970761985428403"><ph name="ASCII_NAME" /> (<ph name="UNICODE_NAME" />)</translation>
@@ -1377,6 +1384,7 @@
<translation id="2923469375796950815">停用新版 ZIP 解压缩程序。</translation>
<translation id="2924296707677495905">音译(namaskaram → ನಮಸ್ಕಾರ)</translation>
<translation id="2925966894897775835">表格</translation>
+<translation id="2927017729816812676">缓存空间</translation>
<translation id="2927657246008729253">更改...</translation>
<translation id="2928526264833629376">继续使用环聊</translation>
<translation id="2930644991850369934">下载恢复映像时出现问题。网络连接已断开。</translation>
@@ -1715,6 +1723,7 @@
<translation id="3396331542604645348">所选打印机无法使用或未正确安装。请检查打印机,或尝试选择其他打印机。</translation>
<translation id="3399597614303179694">马其顿语键盘</translation>
<translation id="340013220407300675">攻击者可能会试图从<ph name="BEGIN_BOLD" /><ph name="SITE" /><ph name="END_BOLD" />窃取您的信息(例如:密码、通讯内容或信用卡信息)。</translation>
+<translation id="3401130144947259741">此项处于启用状态时,跟踪事件将被导出到 Event Tracing for Windows (ETW),然后可使用 UIForETW 或 Xperf 等工具捕获。</translation>
<translation id="340282674066624">已下载 <ph name="DOWNLOAD_RECEIVED" />,还需 <ph name="TIME_LEFT" /></translation>
<translation id="3406605057700382950">显示书签栏(&amp;S)</translation>
<translation id="3412265149091626468">跳到所选部分</translation>
@@ -1871,6 +1880,7 @@
<translation id="3603385196401704894">加拿大法语</translation>
<translation id="3603622770190368340">获取网络证书</translation>
<translation id="3605780360466892872">男性商务人士</translation>
+<translation id="3606220979431771195">土耳其语 F</translation>
<translation id="3608454375274108141">F10</translation>
<translation id="3608576286259426129">用户图片预览</translation>
<translation id="3609138628363401169">服务器不支持 TLS 重新协商修正。</translation>
@@ -2387,6 +2397,7 @@
<translation id="4321136812570927563">{NUM_DOWNLOAD,plural, =1{继续下载}other{继续下载}}</translation>
<translation id="4321179778687042513">ctrl</translation>
<translation id="4322394346347055525">关闭其他标签页</translation>
+<translation id="4325378361067528777">启用 Push API 后台模式</translation>
<translation id="4326952458285403282">停用实验版DirectWrite字体渲染系统。</translation>
<translation id="4326999707196471878">Toolkit-Views 浏览器对话框。</translation>
<translation id="4330406155931244378">启用多语言拼写检查工具</translation>
@@ -2914,6 +2925,8 @@
<translation id="5148652308299789060">停用 3D 软件光栅器</translation>
<translation id="5150254825601720210">Netscape 证书 SSL 服务器名称</translation>
<translation id="5151034238407558331">抱歉,只有地址在美国的买家才能使用 Google Payments 向此商家付款。如果您是美国居民,请|更改 Google Payments 中保存的您的家庭住址|,或在不使用 Google Payments 的情况下付款。</translation>
+<translation id="5151639798712723370">"&gt;
+ USB-C 设备(右侧前端端口)</translation>
<translation id="5152451685298621771">(未成年人帐户)</translation>
<translation id="5154108062446123722"><ph name="PRINTING_DESTINATION" />高级设置</translation>
<translation id="5154176924561037127">F8</translation>
@@ -3010,6 +3023,7 @@
<translation id="5271247532544265821">在简体中文/繁体中文模式之间切换</translation>
<translation id="5271549068863921519">保存密码</translation>
<translation id="5273628206174272911">在发生水平反弹时浏览实验性历史记录。</translation>
+<translation id="5275795814002959418">有 <ph name="COUNT" /> 个来自此网站</translation>
<translation id="5275973617553375938">从 Google 云端硬盘恢复的文件</translation>
<translation id="527605719918376753">将此标签页静音</translation>
<translation id="527605982717517565">始终允许使用 <ph name="HOST" /> 上的 JavaScript</translation>
@@ -3056,6 +3070,7 @@
<translation id="5328285148748012771">这个便捷的启动器不但可让您访问所有应用,还方便您玩游戏、视频聊天、欣赏音乐、修改文档,或者从 Chrome 网上应用店中获得更多应用。</translation>
<translation id="5329858601952122676">删除(&amp;D)</translation>
<translation id="5330145655348521461">这些文件已在其他桌面打开。请转至<ph name="USER_NAME" />(<ph name="MAIL_ADDRESS" />)查看这些文件。</translation>
+<translation id="5331975486040154427">USB-C 设备(左侧后端端口)</translation>
<translation id="5332624210073556029">时区:</translation>
<translation id="5334142896108694079">脚本缓存</translation>
<translation id="533433379391851622">正确版本应为“<ph name="EXPECTED_VERSION" />”,但实际版本为“<ph name="NEW_ID" />”。</translation>
@@ -3102,6 +3117,7 @@
<translation id="539755880180803351">以占位符文字的形式,使用自动填充的字段类型预测内容对网络表单进行注释。</translation>
<translation id="5397578532367286026">管理员 (<ph name="MANAGER_EMAIL" />) 可在 chrome.com 上查看该用户的使用情况和历史记录。</translation>
<translation id="5397794290049113714">您</translation>
+<translation id="5398824043967640339">有 <ph name="COUNT" /> 个来自其他网站</translation>
<translation id="5399158067281117682">PIN 不正确!</translation>
<translation id="5400640815024374115">可信平台模块 (TPM) 芯片已停用或缺失。</translation>
<translation id="5402367795255837559">盲文</translation>
@@ -3919,6 +3935,7 @@
<translation id="6575251558004911012">当网站要求使用您的摄像头时询问您(推荐)</translation>
<translation id="6581162200855843583">Google 云端硬盘链接</translation>
<translation id="6583070985841601920">您已经以 <ph name="USER_EMAIL_ADDRESS" /> 的身份登录,但同步已被管理员阻止。</translation>
+<translation id="65832705307647870">在“打开新的标签页”页面中预先显示热门网站。</translation>
<translation id="6584878029876017575">Microsoft 生存时间签名</translation>
<translation id="6585234750898046415">选择您帐户在登录屏幕上显示的图片。</translation>
<translation id="6585283250473596934">正在进入公开会话。</translation>
@@ -4262,6 +4279,7 @@
<translation id="7092106376816104">弹出式窗口例外情况</translation>
<translation id="7093866338626856921">与具有下列名称的设备交换数据:<ph name="HOSTNAMES" /></translation>
<translation id="7096082900368329802">想了解更多超棒的功能?</translation>
+<translation id="7098389117866926363">USB-C 设备(背面左侧端口)</translation>
<translation id="7100897339030255923">已选择 <ph name="COUNT" /> 项</translation>
<translation id="7106346894903675391">购买更多存储空间...</translation>
<translation id="7108338896283013870">隐藏</translation>
@@ -5023,6 +5041,7 @@
<translation id="8190193592390505034">正在连接到<ph name="PROVIDER_NAME" /></translation>
<translation id="8191230140820435481">管理您的应用、扩展程序和主题背景</translation>
<translation id="8191453843330043793">V8 代理解析工具</translation>
+<translation id="8199491812735365610">选择要登录的帐户</translation>
<translation id="8200772114523450471">继续</translation>
<translation id="8202160505685531999">请重新输入密码,以便更新您的<ph name="DEVICE_TYPE" />资料。</translation>
<translation id="8204086856545141093">向服务器发送的请求已被某政策拦截。</translation>
@@ -5153,6 +5172,7 @@
<translation id="8381977081675353473">斯洛伐克语</translation>
<translation id="8382645631174981738">已远程安装<ph name="EXTENSION_NAME" /></translation>
<translation id="8382913212082956454">复制电子邮件地址(&amp;E)</translation>
+<translation id="8384113940676655504">启用 Smart Lock 设置,让 Chromebook 通过蓝牙低功耗模式发现附近的配对手机,以便用来解锁 Chromebook。</translation>
<translation id="8390029840652165810">请确保您的网络连接正常,如果仍然有问题,请退出后重新登录并刷新您的凭据。</translation>
<translation id="8390445751804042000">允许在收到某些网络数据包时唤醒设备。</translation>
<translation id="8390449457866780408">服务器无法使用。</translation>
@@ -5239,6 +5259,7 @@
<translation id="8509646642152301857">拼写检查字典下载失败。</translation>
<translation id="8512476990829870887">结束进程</translation>
<translation id="851263357009351303">始终允许 <ph name="HOST" /> 显示图片</translation>
+<translation id="8513191386157529469">“<ph name="CLIENT_NAME" />”正在调试此浏览器。</translation>
<translation id="8513974249124254369">已启用 ChromeVox(语音反馈)。要停用,请按 Ctrl+Alt+Z。</translation>
<translation id="8515737884867295000">基于证书的身份验证失败</translation>
<translation id="8518865679229538285">泰米尔语输入法(打字机)</translation>
@@ -5356,6 +5377,7 @@
<translation id="8677039480012021122">清除数据并取消关联</translation>
<translation id="8677212948402625567">全部折叠...</translation>
<translation id="8678648549315280022">管理下载设置…</translation>
+<translation id="8680251145628383637">登录后即可在您的任何设备上获取自己的书签、历史记录、密码和其他设置。此外,您还会自动登录到 Google 服务。</translation>
<translation id="8680536109547170164"><ph name="QUERY" />,答案,<ph name="ANSWER" /></translation>
<translation id="8680787084697685621">帐户登录详细信息已过期。</translation>
<translation id="8684255857039823328">密码已保存。您可以在任意设备上通过 <ph name="MANAGEMENT_LINK" /> 获取自己的密码。</translation>
@@ -5411,6 +5433,7 @@
<translation id="874420130893181774">传统拼音输入法</translation>
<translation id="8744525654891896746">为该受监管用户选择头像</translation>
<translation id="8744641000906923997">罗马字</translation>
+<translation id="8744959718895556609">从 <ph name="LINK_TEXT" /> 中选择帐户</translation>
<translation id="8749863574775030885">访问来自未知供应商的 USB 设备</translation>
<translation id="8754200782896249056">&lt;p&gt;在受支持的桌面环境中运行<ph name="PRODUCT_NAME" />时,将使用系统代理设置。但您的系统不受支持,或启动系统配置时出现问题。&lt;/p&gt;
@@ -5528,6 +5551,7 @@
<translation id="8933960630081805351">在 Finder 中显示(&amp;S)</translation>
<translation id="8934732568177537184">继续</translation>
<translation id="8938356204940892126">放弃</translation>
+<translation id="8938800817013097409">USB-C 设备(背面右侧端口)</translation>
<translation id="8940081510938872932">计算机当前处理的内容过多。请稍后重试。</translation>
<translation id="8941173171815156065">撤消“<ph name="PERMISSION" />”权限</translation>
<translation id="8941248009481596111">您与此网站建立的是私密连接。</translation>
@@ -5614,7 +5638,7 @@
<translation id="9035022520814077154">安全错误</translation>
<translation id="9036125247615883233">此网站的身份已通过了<ph name="ISSUER" />验证。服务器已提供 Certificate Transparency 信息,但系统无法识别一份或多份 Certificate Transparency 日志。</translation>
<translation id="9037008143807155145">https://www.google.com/calendar/render?cid=%s</translation>
-<translation id="9039213469156557790">而且,此页中包含其他不安全的资源。他人能在这些资源传输过程中进行查看,攻击者也可以修改这些资源,从而改变此页的行为。</translation>
+<translation id="9039213469156557790">而且,此页中包含其他不安全的资源。他人能在这些资源传输过程中进行查看,而攻击者可以修改这些资源,从而改变此页的行为。</translation>
<translation id="9039663905644212491">PEAP</translation>
<translation id="9039890312082871605">将所有标签页静音</translation>
<translation id="9040185888511745258"><ph name="BEGIN_BOLD" /><ph name="SITE" /><ph name="END_BOLD" />上的攻击程序可能会试图骗您安装有损浏览体验(例如,更改您的主页或在您访问的网站上显示额外的广告)的程序。</translation>
diff --git a/chromium/chrome/app/resources/generated_resources_zh-TW.xtb b/chromium/chrome/app/resources/generated_resources_zh-TW.xtb
index f9d0ec6af42..46cd2784df4 100644
--- a/chromium/chrome/app/resources/generated_resources_zh-TW.xtb
+++ b/chromium/chrome/app/resources/generated_resources_zh-TW.xtb
@@ -136,6 +136,8 @@
<translation id="1178581264944972037">暫停</translation>
<translation id="1179803038870941185"><ph name="URL" /> 想要取得 MIDI 裝置的完整控制。</translation>
<translation id="1181037720776840403">移除</translation>
+<translation id="11814323404622888">"&gt;
+ USB-C 裝置 (右後方連接埠)</translation>
<translation id="1183083053288481515">現正使用管理員提供的憑證</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>
@@ -329,6 +331,7 @@
<translation id="1468038450257740950">系統不支援 WebGL。</translation>
<translation id="1470719357688513792">新的 Cookie 設定會在重新載入網頁後生效。</translation>
<translation id="14720830734893704">啟用虛擬鍵盤支援。</translation>
+<translation id="1474079335130556426">為 Push API 啟用背景模式,讓 Chrome 在最後一個視窗關閉後繼續執行,以及配合作業系統一併啟動 (依 Push API 的要求)。</translation>
<translation id="1474339897586437869">您的 Google 雲端硬碟的可用空間不足,因此無法上傳「<ph name="FILENAME" />」。</translation>
<translation id="1476503841242751994">{COUNT,plural, =1{1 組密碼}other{# 組密碼}}</translation>
<translation id="1476949146811612304">設定透過<ph name="BEGIN_LINK" />網址列<ph name="END_LINK" />進行搜尋時要使用哪個搜尋引擎。</translation>
@@ -656,6 +659,7 @@
<translation id="1918141783557917887">縮小(&amp;S)</translation>
<translation id="192144045824434199">啟用在瀏覽器頁框外開啟「面板」視窗功能。如果未啟用,嘗試開啟「面板」時,會以彈出式視窗取代。在開發人員版和 Canary 版中,一律會啟用「面板」功能。</translation>
<translation id="1921584744613111023"><ph name="DPI" /> dpi</translation>
+<translation id="1921986354447415460">土耳其文 F 鍵盤</translation>
<translation id="1923786009776354244">啟用 WebRTC Stun 起始標頭支援功能。</translation>
<translation id="1926741348654461781">啟用離線網頁</translation>
<translation id="1929546189971853037">讀取您已登入的所有裝置上的瀏覽紀錄</translation>
@@ -854,6 +858,7 @@
<translation id="2231990265377706070">驚嘆號</translation>
<translation id="2232876851878324699">檔案含有一個憑證,但無法匯入:</translation>
<translation id="2233502537820838181">更多資訊(&amp;M)</translation>
+<translation id="2233587473672843170">在新分頁顯示熱門網站</translation>
<translation id="223714078860837942">如果網頁並未設定特定的參照網址政策,設定這個標記會讓跨來源要求的「referer」標頭資訊量減少。</translation>
<translation id="2238379619048995541">頻率狀態資料</translation>
<translation id="2239921694246509981">新增受監管的使用者</translation>
@@ -929,6 +934,7 @@
<translation id="2326606747676847821">進入無痕模式</translation>
<translation id="2326931316514688470">重新載入應用程式(&amp;R)</translation>
<translation id="2327492829706409234">啟用應用程式</translation>
+<translation id="2329597144923131178">登入後,即可從您使用的任何裝置取得自己的書籤、歷史紀錄、密碼和其他設定。</translation>
<translation id="2332131598580221120">前往商店查看</translation>
<translation id="2332742915001411729">重設為預設值</translation>
<translation id="2335122562899522968">這個網頁會設定 Cookie。</translation>
@@ -1317,6 +1323,7 @@
<translation id="2838379631617906747">安裝中</translation>
<translation id="2841837950101800123">提供者</translation>
<translation id="2843806747483486897">變更預設值...</translation>
+<translation id="2844169650293029770">USB-C 裝置 (左前方連接埠)</translation>
<translation id="2845382757467349449">永遠顯示書籤列</translation>
<translation id="2846816712032308263">快速關閉分頁/視窗,將分頁的 onunload js 處理常式與 GUI 分別執行。</translation>
<translation id="284970761985428403"><ph name="ASCII_NAME" /> (<ph name="UNICODE_NAME" />)</translation>
@@ -1381,6 +1388,7 @@
<translation id="2923469375796950815">停用新版 ZIP 解壓縮工具。</translation>
<translation id="2924296707677495905">音譯 (namaskaram → ನಮಸ್ಕಾರ)</translation>
<translation id="2925966894897775835">試算表</translation>
+<translation id="2927017729816812676">快取儲存空間</translation>
<translation id="2927657246008729253">變更...</translation>
<translation id="2928526264833629376">繼續 Hangouts</translation>
<translation id="2930644991850369934">下載還原映像檔時發生問題,網路連線已中斷。</translation>
@@ -1721,6 +1729,7 @@
<translation id="3396331542604645348">選取的印表機無法使用或未正確安裝。請檢查您的印表機,或改選其他印表機。</translation>
<translation id="3399597614303179694">馬其頓文鍵盤</translation>
<translation id="340013220407300675">攻擊者可能會嘗試從 <ph name="BEGIN_BOLD" /><ph name="SITE" /><ph name="END_BOLD" /> 竊取您的資訊 (例如密碼、郵件或信用卡資訊)。</translation>
+<translation id="3401130144947259741">啟用後,追蹤事件將匯出到 Windows 事件追蹤 (ETW),並可使用 UIForETW 或 Xperf 等工具擷取。</translation>
<translation id="340282674066624"><ph name="DOWNLOAD_RECEIVED" />,<ph name="TIME_LEFT" /></translation>
<translation id="3406605057700382950">顯示書籤列(&amp;S)</translation>
<translation id="3412265149091626468">跳至所選範圍</translation>
@@ -1880,6 +1889,7 @@
<translation id="3603385196401704894">加拿大法文</translation>
<translation id="3603622770190368340">取得網路憑證</translation>
<translation id="3605780360466892872">小員工</translation>
+<translation id="3606220979431771195">土耳其文 F</translation>
<translation id="3608454375274108141">F10</translation>
<translation id="3608576286259426129">使用者圖片預覽</translation>
<translation id="3609138628363401169">伺服器並不支援 TLS 重新交涉擴充功能。</translation>
@@ -2399,6 +2409,7 @@
<translation id="4321136812570927563">{NUM_DOWNLOAD,plural, =1{繼續執行一項下載作業}other{繼續執行多項下載作業}}</translation>
<translation id="4321179778687042513">Ctrl</translation>
<translation id="4322394346347055525">關閉其他分頁</translation>
+<translation id="4325378361067528777">啟用 Push API 背景模式</translation>
<translation id="4326952458285403282">停用實驗性 DirectWrite 字型轉譯系統。</translation>
<translation id="4326999707196471878">工具包介面型瀏覽器對話方塊。</translation>
<translation id="4330406155931244378">啟用多語拼字檢查工具</translation>
@@ -2929,6 +2940,8 @@
<translation id="5148652308299789060">停用 3D 軟體點陣圖轉換器</translation>
<translation id="5150254825601720210">Netscape 憑證 SSL 伺服器名稱</translation>
<translation id="5151034238407558331">很抱歉,這個商家只接受地址位於美國的買家使用 Google Payments。如果您居住在美國,請前往 |Google Payments 修改住家地址|,或是不要使用 Google Payments 付款。</translation>
+<translation id="5151639798712723370">"&gt;
+ USB-C 裝置 (右前方連接埠)</translation>
<translation id="5152451685298621771">(兒童專用帳戶)</translation>
<translation id="5154108062446123722">「<ph name="PRINTING_DESTINATION" />」進階設定</translation>
<translation id="5154176924561037127">F8</translation>
@@ -3026,6 +3039,7 @@
<translation id="5271247532544265821">切換簡體中文/繁體中文模式</translation>
<translation id="5271549068863921519">儲存密碼</translation>
<translation id="5273628206174272911">實驗性的橫向捲動紀錄導覽功能 (可透過橫向捲動啟動)。</translation>
+<translation id="5275795814002959418">有 <ph name="COUNT" /> 個 Cookie 來自這個網站</translation>
<translation id="5275973617553375938">從 Google 雲端硬碟還原檔案</translation>
<translation id="527605719918376753">關閉分頁音訊</translation>
<translation id="527605982717517565">永遠允許在 <ph name="HOST" /> 執行 JavaScript</translation>
@@ -3072,6 +3086,7 @@
<translation id="5328285148748012771">這個便捷的啟動器能讓您存取所有應用程式。您可以從這裡玩遊戲、進行視訊通訊、聆聽音樂、編輯文件,或是前往 Chrome 線上應用程式商店取得更多應用程式。</translation>
<translation id="5329858601952122676">刪除(&amp;D)</translation>
<translation id="5330145655348521461">這些檔案已在其他電腦上開啟。前往 <ph name="USER_NAME" /> (<ph name="MAIL_ADDRESS" />) 查看。</translation>
+<translation id="5331975486040154427">USB-C 裝置 (左後方連接埠)</translation>
<translation id="5332624210073556029">時區:</translation>
<translation id="5334142896108694079">指令碼快取</translation>
<translation id="533433379391851622">預期的版本為「<ph name="EXPECTED_VERSION" />」,但指向的版本為「<ph name="NEW_ID" />」。</translation>
@@ -3118,6 +3133,7 @@
<translation id="539755880180803351">使用自動填入的欄位類型建議為網路表單加上註解,做為預留位置文字。</translation>
<translation id="5397578532367286026">管理員 (<ph name="MANAGER_EMAIL" />) 可以在 chrome.com 瞭解這名使用者的使用情形和紀錄。</translation>
<translation id="5397794290049113714">您</translation>
+<translation id="5398824043967640339">有 <ph name="COUNT" /> 個 Cookie 來自其他網站</translation>
<translation id="5399158067281117682">PIN 不符!</translation>
<translation id="5400640815024374115">可信任平台模組 (TPM) 晶片已停用或遺失。</translation>
<translation id="5402367795255837559">點字</translation>
@@ -3928,6 +3944,7 @@
<translation id="6575251558004911012">當網站需要使用您的攝影機時,必須先詢問您 (建議)</translation>
<translation id="6581162200855843583">Google 雲端硬碟連結</translation>
<translation id="6583070985841601920">您使用了 <ph name="USER_EMAIL_ADDRESS" /> 的身分登入,但管理員已關閉同步功能。</translation>
+<translation id="65832705307647870">讓新分頁顯示預設的熱門網站。</translation>
<translation id="6584878029876017575">Microsoft 永久簽署</translation>
<translation id="6585234750898046415">請選擇登入畫面上的個人帳戶圖片。</translation>
<translation id="6585283250473596934">正在進入公開工作階段</translation>
@@ -4271,6 +4288,7 @@
<translation id="7092106376816104">彈出式視窗例外</translation>
<translation id="7093866338626856921">與下列名稱的裝置交換資料:<ph name="HOSTNAMES" /></translation>
<translation id="7096082900368329802">想要探索更多超讚功能嗎?</translation>
+<translation id="7098389117866926363">USB-C 裝置 (背面左側連接埠)</translation>
<translation id="7100897339030255923">已選取 <ph name="COUNT" /> 個項目</translation>
<translation id="7106346894903675391">購買更多儲存空間...</translation>
<translation id="7108338896283013870">隱藏</translation>
@@ -5043,6 +5061,7 @@
<translation id="8190193592390505034">正在連線至 <ph name="PROVIDER_NAME" /></translation>
<translation id="8191230140820435481">管理您的應用程式、擴充功能和主題</translation>
<translation id="8191453843330043793">V8 Proxy 解析工具</translation>
+<translation id="8199491812735365610">選擇要登入的帳戶</translation>
<translation id="8200772114523450471">繼續</translation>
<translation id="8202160505685531999">請再次輸入您的密碼,以更新您的 <ph name="DEVICE_TYPE" /> 設定檔。</translation>
<translation id="8204086856545141093">政策已封鎖要傳送至伺服器的要求。</translation>
@@ -5173,6 +5192,7 @@
<translation id="8381977081675353473">斯洛伐克文</translation>
<translation id="8382645631174981738"><ph name="EXTENSION_NAME" /> 是從遠端安裝</translation>
<translation id="8382913212082956454">複製電子郵件地址(&amp;E)</translation>
+<translation id="8384113940676655504">啟用 Smart Lock 設定,讓 Chromebook 透過藍牙低功耗技術 (Bluetooth Low Energy) 探索附近的手機,以便解鎖 Chromebook。</translation>
<translation id="8390029840652165810">請確認您的網路連線是否正常。如果問題持續發生,請登出帳戶並重新登入,以重新整理您的憑證。</translation>
<translation id="8390445751804042000">允許在收到特定網路封包時喚醒裝置。</translation>
<translation id="8390449457866780408">無法與伺服器連線。</translation>
@@ -5259,6 +5279,7 @@
<translation id="8509646642152301857">拼字檢查字典下載失敗。</translation>
<translation id="8512476990829870887">結束處理程序</translation>
<translation id="851263357009351303">永遠允許 <ph name="HOST" /> 顯示圖片</translation>
+<translation id="8513191386157529469">「<ph name="CLIENT_NAME" />」正在為這個瀏覽器偵錯。</translation>
<translation id="8513974249124254369">ChromeVox (互動朗讀) 已啟用,可按 Ctrl+Alt+Z 鍵停用。</translation>
<translation id="8515737884867295000">憑證式驗證失敗</translation>
<translation id="8518865679229538285">泰米爾文輸入法 (Typewriter)</translation>
@@ -5376,6 +5397,7 @@
<translation id="8677039480012021122">清除資料並解除連結</translation>
<translation id="8677212948402625567">全部收合...</translation>
<translation id="8678648549315280022">管理下載設定...</translation>
+<translation id="8680251145628383637">只要登入帳戶,您在任何裝置上都能取得自己的書籤、歷史紀錄和密碼,並套用相同的設定。此外,系統還會自動讓您登入各項 Google 服務。</translation>
<translation id="8680536109547170164"><ph name="QUERY" />,答案:<ph name="ANSWER" /></translation>
<translation id="8680787084697685621">帳戶登入詳細資料已過期。</translation>
<translation id="8684255857039823328">已儲存密碼。在任何裝置上皆可透過 <ph name="MANAGEMENT_LINK" /> 存取您的密碼。</translation>
@@ -5431,6 +5453,7 @@
<translation id="874420130893181774">傳統拼音輸入法</translation>
<translation id="8744525654891896746">選取這位受監管使用者的顯示圖片</translation>
<translation id="8744641000906923997">羅馬字</translation>
+<translation id="8744959718895556609">從您的 <ph name="LINK_TEXT" /> 選擇帳戶</translation>
<translation id="8749863574775030885">存取製造商不明的 USB 裝置</translation>
<translation id="8754200782896249056">&lt;p&gt;在受支援的桌面環境下執行「<ph name="PRODUCT_NAME" />」時,瀏覽器會使用系統的 Proxy 設定。不過,您的系統可能不受支援,或在啟動系統設定時發生問題。&lt;/p&gt;
@@ -5551,6 +5574,7 @@
<translation id="8933960630081805351">在 Finder 中顯示(&amp;S)</translation>
<translation id="8934732568177537184">繼續</translation>
<translation id="8938356204940892126">我放棄</translation>
+<translation id="8938800817013097409">USB-C 裝置 (背面右側連接埠)</translation>
<translation id="8940081510938872932">目前電腦過於繁忙,請稍後再試。</translation>
<translation id="8941173171815156065">撤銷「<ph name="PERMISSION" />」權限</translation>
<translation id="8941248009481596111">您與這個網站建立了私人連線。</translation>
diff --git a/chromium/chrome/app/resources/google_chrome_strings_ca.xtb b/chromium/chrome/app/resources/google_chrome_strings_ca.xtb
index 3a1ea063372..fb7a576c03e 100644
--- a/chromium/chrome/app/resources/google_chrome_strings_ca.xtb
+++ b/chromium/chrome/app/resources/google_chrome_strings_ca.xtb
@@ -219,7 +219,7 @@ En iniciar la sessió, sigui amb l'usuari que sigui, es combinarà amb <ph name=
<translation id="7408085963519505752">Condicions de Chrome OS</translation>
<translation id="7419046106786626209">Chrome OS no ha pogut sincronitzar les vostres dades perquè la sincronització no està disponible per al vostre domini.</translation>
<translation id="7436949144778751379">Google Chrome necessita Windows XP o una versió posterior. És possible que algunes funcions no estiguin disponibles.</translation>
-<translation id="7459554271817304652">Configureu la sincronització per desar al web les funcions personalitzades del navegador i per accedir-hi des de qualsevol equip mitjançant Google Chrome.</translation>
+<translation id="7459554271817304652">Configureu la sincronització per desar al web les funcions personalitzades del navegador i per accedir-hi des de qualsevol ordinador mitjançant Google Chrome.</translation>
<translation id="7473136999113284234">Chrome s'actualitza automàticament perquè en tingueu sempre la versió més recent.</translation>
<translation id="7473891865547856676">No, gràcies</translation>
<translation id="7494905215383356681">Llicències de programari lliure de Chrome</translation>
diff --git a/chromium/chrome/app/resources/google_chrome_strings_cs.xtb b/chromium/chrome/app/resources/google_chrome_strings_cs.xtb
index 7591b67bb4f..c15a2055f81 100644
--- a/chromium/chrome/app/resources/google_chrome_strings_cs.xtb
+++ b/chromium/chrome/app/resources/google_chrome_strings_cs.xtb
@@ -106,7 +106,7 @@ Pokud se přesto přihlásíte, budou data prohlížeče Chrome (například zá
<translation id="4309555186815777032">(vyžaduje <ph name="BEGIN_BUTTON" />restartování<ph name="END_BUTTON" /> prohlížeče Chrome)</translation>
<translation id="4331809312908958774">Chrome OS</translation>
<translation id="4367618624832907428">Google Chrome nemůže webovou stránku zobrazit, protože počítač není připojen k internetu.</translation>
-<translation id="4407807842708586359">Google Chrome</translation>
+<translation id="4407807842708586359">Google Chrome OS</translation>
<translation id="4458285410772214805">Chcete-li, aby se změny projevily, odhlaste se a znovu se přihlaste.</translation>
<translation id="4480040274068703980">Chrome OS vaše data nemohl synchronizovat z důvodu chyby při přihlášení.</translation>
<translation id="4513711165509885787">Fakturační údaje byly uloženy do prohlížeče Chrome.</translation>
diff --git a/chromium/chrome/app/resources/google_chrome_strings_en-GB.xtb b/chromium/chrome/app/resources/google_chrome_strings_en-GB.xtb
index 9f2aff938d2..1b1b17aa2f4 100644
--- a/chromium/chrome/app/resources/google_chrome_strings_en-GB.xtb
+++ b/chromium/chrome/app/resources/google_chrome_strings_en-GB.xtb
@@ -9,7 +9,7 @@
Some features may be unavailable and changes to preferences won't be saved.</translation>
<translation id="1073391069195728457">Chrome - Notifications</translation>
-<translation id="1104959162601287462">About the &amp;Chrome OS</translation>
+<translation id="1104959162601287462">About &amp;Chrome OS</translation>
<translation id="110877069173485804">This is your Chrome</translation>
<translation id="1225016890511909183">Chrome will securely store your information so you don't need to type it in again, but you will still need to verify your card's security code for future payments.</translation>
<translation id="123620459398936149">Chrome OS could not sync your data. Please update your Sync passphrase.</translation>
diff --git a/chromium/chrome/app/resources/google_chrome_strings_fa.xtb b/chromium/chrome/app/resources/google_chrome_strings_fa.xtb
index 7c4dedd3a82..a3a106a0519 100644
--- a/chromium/chrome/app/resources/google_chrome_strings_fa.xtb
+++ b/chromium/chrome/app/resources/google_chrome_strings_fa.xtb
@@ -154,7 +154,7 @@
<translation id="5931853610562009806">‏در Mac ممکن است گذرواژه‌ها در Keychain شما ذخیره شوند و سایر کاربران Chrome که این حساب OS X را دارند به آن دسترسی داشته باشند یا بتوانند همگام‌سازی کنند.</translation>
<translation id="5940385492829620908">‏وب، نشانک‌ها و موارد دیگر Chrome شما در اینجا هستند.</translation>
<translation id="5941830788786076944">‏Google Chrome مرورگر پیش‌فرض شود</translation>
-<translation id="597770749449734237">‏میانبرهای اضافی صفحه‌کلید را که برای اشکال زدایی Google Chrome مفید هستند، فعال می‌کند.</translation>
+<translation id="597770749449734237">‏میان‌برهای اضافی صفحه‌کلید را که برای اشکال زدایی Google Chrome مفید هستند، فعال می‌کند.</translation>
<translation id="6011049234605203654">‏به
منوی Chrome &gt;
<ph name="SETTINGS_TITLE" />
diff --git a/chromium/chrome/app/resources/google_chrome_strings_no.xtb b/chromium/chrome/app/resources/google_chrome_strings_no.xtb
index 2fab783bd2d..9bc54bb261a 100644
--- a/chromium/chrome/app/resources/google_chrome_strings_no.xtb
+++ b/chromium/chrome/app/resources/google_chrome_strings_no.xtb
@@ -43,7 +43,7 @@
<translation id="2286950485307333924">Nå er du logget på Chrome</translation>
<translation id="2290014774651636340">API-nøkler for Google mangler. Noe funksjonalitet i Google Chrome blir deaktivert.</translation>
<translation id="2290095356545025170">Er du sikker på at du vil avinstallere Google Chrome?</translation>
-<translation id="2316129865977710310">Nei takk</translation>
+<translation id="2316129865977710310">Nei, takk</translation>
<translation id="2334084861041072223">Copyright <ph name="YEAR" /> Google Inc. Med enerett.</translation>
<translation id="2346876346033403680">Noen har tidligere logget seg på Chrome på denne datamaskinen som <ph name="ACCOUNT_EMAIL_LAST" />. Hvis det ikke er kontoen din, må du opprette en ny Chrome-bruker for å holde informasjonen din atskilt.
@@ -221,7 +221,7 @@ Hvis du logger deg på allikevel, blir Chrome-informasjon som bokmerker, loggen
<translation id="7436949144778751379">Google Chrome krever Windows XP eller nyere. Enkelte funksjoner vil kanskje ikke fungere.</translation>
<translation id="7459554271817304652">Konfigurer Synkronisering til å lagre de personlig tilpassede nettleserfunksjonene dine på nettet slik at du kan bruke dem fra Google Chrome på enhver datamaskin.</translation>
<translation id="7473136999113284234">Chrome oppdateres automatisk, sånn at du alltid har den nyeste versjonen.</translation>
-<translation id="7473891865547856676">Nei takk</translation>
+<translation id="7473891865547856676">Nei, takk</translation>
<translation id="7494905215383356681">Åpen kildekode-lisenser for Chrome</translation>
<translation id="7552219221109926349">Vis Chrome OS på dette språket</translation>
<translation id="7592736734348559088">Google Chrome kunne ikke synkronisere dataene dine. Dette skyldes at påloggingsopplysningene for kontoen din er foreldede.</translation>
diff --git a/chromium/chrome/app/theme/chromium/win/README b/chromium/chrome/app/theme/chromium/win/README
new file mode 100644
index 00000000000..e80d67dcaa7
--- /dev/null
+++ b/chromium/chrome/app/theme/chromium/win/README
@@ -0,0 +1,4 @@
+Whenever chromium.ico changes, the profile shortcut icons (generated dynamically
+at runtime) need to be migrated to the new icon. Please increment the constant
+kCurrentProfileIconVersion in
+chrome/browser/profiles/profile_shortcut_manager_win.cc.
diff --git a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_am.xtb b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_am.xtb
index 30231ac711c..fa327a28475 100644
--- a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_am.xtb
+++ b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_am.xtb
@@ -682,6 +682,7 @@
<translation id="8540054775867439484">ወደ ላይ ተጠቅልሏል</translation>
<translation id="8548973727659841685">ቁምፊ</translation>
<translation id="8561322612995434619">ብቅ-ባይ አለው</translation>
+<translation id="8571096049907249734">በርካታ ምርጫ</translation>
<translation id="8584721346566392021">h5</translation>
<translation id="8587549812518406253">የቀጣይ ዝርዝር ንጥል</translation>
<translation id="860150890330522909"><ph name="NAME" /> አመልካች ሳጥን ላይ ምልክት ተደርጓል</translation>
diff --git a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ar.xtb b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ar.xtb
index 655ce45c68e..72cfd054cd8 100644
--- a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ar.xtb
+++ b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ar.xtb
@@ -682,6 +682,7 @@
<translation id="8540054775867439484">التفاف إلى أعلى</translation>
<translation id="8548973727659841685">حرف</translation>
<translation id="8561322612995434619">له نافذة منبثقة</translation>
+<translation id="8571096049907249734">multsel</translation>
<translation id="8584721346566392021">h5</translation>
<translation id="8587549812518406253">عنصر القائمة التالي</translation>
<translation id="860150890330522909">تم تحديد مربع الاختيار <ph name="NAME" /></translation>
diff --git a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_bg.xtb b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_bg.xtb
index 0adaf8751b9..327e485afd0 100644
--- a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_bg.xtb
+++ b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_bg.xtb
@@ -682,6 +682,7 @@
<translation id="8540054775867439484">Пренасяне в началото</translation>
<translation id="8548973727659841685">Символ</translation>
<translation id="8561322612995434619">има изскачащ прозорец</translation>
+<translation id="8571096049907249734">multsel</translation>
<translation id="8584721346566392021">заглавие от пето ниво</translation>
<translation id="8587549812518406253">Следващият списъчен елемент</translation>
<translation id="860150890330522909">квадратче „<ph name="NAME" />“ с отметка</translation>
diff --git a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_bn.xtb b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_bn.xtb
index c7b92215c25..ffef3920b82 100644
--- a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_bn.xtb
+++ b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_bn.xtb
@@ -682,6 +682,7 @@
<translation id="8540054775867439484">শীর্ষে সম্পৃক্ত রয়েছে</translation>
<translation id="8548973727659841685">চরিত্র</translation>
<translation id="8561322612995434619">পপ আপ রয়েছে</translation>
+<translation id="8571096049907249734">বহুনির্বাচন</translation>
<translation id="8584721346566392021">h5</translation>
<translation id="8587549812518406253">পরবর্তী তালিকা আইটেম</translation>
<translation id="860150890330522909"><ph name="NAME" /> চেকবাক্সে চেক করা হয়েছে</translation>
diff --git a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ca.xtb b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ca.xtb
index e4b8e951971..67ff4408c5a 100644
--- a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ca.xtb
+++ b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ca.xtb
@@ -682,6 +682,7 @@
<translation id="8540054775867439484">Ajustat a la part superior</translation>
<translation id="8548973727659841685">Caràcter</translation>
<translation id="8561322612995434619">té una finestra emergent</translation>
+<translation id="8571096049907249734">selmult</translation>
<translation id="8584721346566392021">h5</translation>
<translation id="8587549812518406253">Element de llista següent</translation>
<translation id="860150890330522909">S'ha marcat la casella de selecció <ph name="NAME" />.</translation>
diff --git a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_cs.xtb b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_cs.xtb
index ba382eec482..479df9e9aab 100644
--- a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_cs.xtb
+++ b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_cs.xtb
@@ -682,6 +682,7 @@
<translation id="8540054775867439484">Skok na začátek</translation>
<translation id="8548973727659841685">Znak</translation>
<translation id="8561322612995434619">má vyskakovací okno</translation>
+<translation id="8571096049907249734">více možn</translation>
<translation id="8584721346566392021">nadp 5</translation>
<translation id="8587549812518406253">Další položka seznamu</translation>
<translation id="860150890330522909">zaškrtnuto políčko <ph name="NAME" /></translation>
diff --git a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_da.xtb b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_da.xtb
index 4200046dbff..3fad4eccf39 100644
--- a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_da.xtb
+++ b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_da.xtb
@@ -682,6 +682,7 @@
<translation id="8540054775867439484">Ombrudt til toppen</translation>
<translation id="8548973727659841685">Tegn</translation>
<translation id="8561322612995434619">har pop op-vindue</translation>
+<translation id="8571096049907249734">flr vlg</translation>
<translation id="8584721346566392021">h5</translation>
<translation id="8587549812518406253">Næste element på listen</translation>
<translation id="860150890330522909">Afkrydsningsfeltet <ph name="NAME" /> er markeret</translation>
diff --git a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_de.xtb b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_de.xtb
index cb6efcb53c0..9e14f204ecd 100644
--- a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_de.xtb
+++ b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_de.xtb
@@ -682,6 +682,7 @@
<translation id="8540054775867439484">Umbruch am Seitenanfang</translation>
<translation id="8548973727659841685">Zeichen</translation>
<translation id="8561322612995434619">enthält ein Pop-up-Fenster</translation>
+<translation id="8571096049907249734">div</translation>
<translation id="8584721346566392021">h5</translation>
<translation id="8587549812518406253">Nächstes Listenelement</translation>
<translation id="860150890330522909">Kästchen "<ph name="NAME" />" aktiviert</translation>
diff --git a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_el.xtb b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_el.xtb
index 7fecc672ded..f26c8602d59 100644
--- a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_el.xtb
+++ b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_el.xtb
@@ -682,6 +682,7 @@
<translation id="8540054775867439484">Ενσωμάτωση στο επάνω μέρος</translation>
<translation id="8548973727659841685">Χαρακτήρας</translation>
<translation id="8561322612995434619">διαθέτει αναδυόμενο</translation>
+<translation id="8571096049907249734">με δυνατότητα πολλαπλής επιλογής</translation>
<translation id="8584721346566392021">κεφαλίδα 5</translation>
<translation id="8587549812518406253">Επόμενο στοιχείο λίστας</translation>
<translation id="860150890330522909">Το πλαίσιο ελέγχου <ph name="NAME" /> επιλέχθηκε</translation>
diff --git a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_en-GB.xtb b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_en-GB.xtb
index 54a95c7fc08..5c36606676e 100644
--- a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_en-GB.xtb
+++ b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_en-GB.xtb
@@ -682,6 +682,7 @@
<translation id="8540054775867439484">Wrapped to top</translation>
<translation id="8548973727659841685">Character</translation>
<translation id="8561322612995434619">has pop up</translation>
+<translation id="8571096049907249734">multsel</translation>
<translation id="8584721346566392021">h5</translation>
<translation id="8587549812518406253">Next list item</translation>
<translation id="860150890330522909"><ph name="NAME" /> tick box ticked</translation>
diff --git a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_es-419.xtb b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_es-419.xtb
index a95a716961d..19adfd96391 100644
--- a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_es-419.xtb
+++ b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_es-419.xtb
@@ -682,6 +682,7 @@
<translation id="8540054775867439484">Ajustar a la parte superior</translation>
<translation id="8548973727659841685">Carácter</translation>
<translation id="8561322612995434619">con componente emergente</translation>
+<translation id="8571096049907249734">mult sel</translation>
<translation id="8584721346566392021">h5</translation>
<translation id="8587549812518406253">Siguiente elemento de la lista</translation>
<translation id="860150890330522909">casilla de verificación <ph name="NAME" /> seleccionada</translation>
diff --git a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_es.xtb b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_es.xtb
index d351bfc3695..b0243ba8a5a 100644
--- a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_es.xtb
+++ b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_es.xtb
@@ -682,6 +682,7 @@
<translation id="8540054775867439484">Continuar al principio</translation>
<translation id="8548973727659841685">Carácter</translation>
<translation id="8561322612995434619">tiene un componente emergente</translation>
+<translation id="8571096049907249734">selmult</translation>
<translation id="8584721346566392021">h5</translation>
<translation id="8587549812518406253">Siguiente elemento de la lista</translation>
<translation id="860150890330522909"><ph name="NAME" />, casilla de verificación activada</translation>
diff --git a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_et.xtb b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_et.xtb
index 873e994ab94..3705d47418c 100644
--- a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_et.xtb
+++ b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_et.xtb
@@ -682,6 +682,7 @@
<translation id="8540054775867439484">Pakitud lehe ülaossa</translation>
<translation id="8548973727659841685">Tähemärk</translation>
<translation id="8561322612995434619">koos hüpikuga</translation>
+<translation id="8571096049907249734">multsel</translation>
<translation id="8584721346566392021">h5</translation>
<translation id="8587549812518406253">Järgmine loendiüksus</translation>
<translation id="860150890330522909">Ruut <ph name="NAME" /> on märgitud</translation>
diff --git a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_fa.xtb b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_fa.xtb
index 699ee2ca33f..df5aa9a5f54 100644
--- a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_fa.xtb
+++ b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_fa.xtb
@@ -15,7 +15,7 @@
<translation id="1120743664840974483">{«ا»: «اسب»، «ب»: «بازی»، «پ»: «پروین»، «ت»: «ترانه»، «ث»: «ثریا»، «ج»: «جوجه»، «چ»: «چرخ»، «ح»: «حریم»، « خ»:«خصوصی »، « د»: «دفترچه»، «ذ»: «ذلیل»، «ر»: «روز»، «ز»: «زمان»، «ژ»: «ژولیت»، «س»: «سیاست»، «ش»: «شنبه»، «ص»: «صفحه»، «ض»: «ضروری»، «ط»: «طراوت»، «ظ»: «ظهر»، «ع»: «عصر»، « غ»: «غروب»، «ف»: «فروش»، «ق»: «قلب»، «ک»: «کودکان»، «گ»: «گوشی»، «ل»: «لوله»، «م»: «مرز»، «ن»: «نامناسب»، «و»: «ویلا»، «ه»: «هیاهو»، «ی»: «یادآور»}</translation>
<translation id="113582498867142724">مجموعه <ph name="TAG" /> با <ph name="NUM" /> مورد</translation>
<translation id="1155043339247954670">مورد لیست بعدی وجود ندارد.</translation>
-<translation id="1157782847298808853">راهنمای صفحه کلید</translation>
+<translation id="1157782847298808853">راهنمای صفحه‌کلید</translation>
<translation id="1157843803349774103"><ph name="VALUE" />، <ph name="NAME" />، کادر ترکیبی</translation>
<translation id="1167230103353892028"><ph name="NAME" />، مورد منو، با منوی فرعی</translation>
<translation id="1177863135347784049">سفارشی</translation>
@@ -570,7 +570,7 @@
<translation id="7161771961008409533">دکمه بازشو</translation>
<translation id="7167657087543110">بازگویی نویسه</translation>
<translation id="7170733337935166589">در حین مطالعه متوالی، به جلو بروید</translation>
-<translation id="7181697990050180700">میانبرهای صفحه‌کلید را برای فرمان‌هایی که اغلب استفاده می‌شوند با تایپ کردن آنها در قسمت‌های مربوطه در زیر سفارشی کنید.</translation>
+<translation id="7181697990050180700">میان‌برهای صفحه‌کلید را برای فرمان‌هایی که اغلب استفاده می‌شوند با تایپ کردن آنها در قسمت‌های مربوطه در زیر سفارشی کنید.</translation>
<translation id="7203150201908454328">باز شده</translation>
<translation id="7210211103303402262">دقیقه</translation>
<translation id="7217912842225915592">‎+<ph name="NUM" /></translation>
@@ -682,6 +682,7 @@
<translation id="8540054775867439484">جمع کردن به بالا</translation>
<translation id="8548973727659841685">نویسه</translation>
<translation id="8561322612995434619">پنجره بازشو دارد</translation>
+<translation id="8571096049907249734">چندانتخاب</translation>
<translation id="8584721346566392021">h5</translation>
<translation id="8587549812518406253">مورد لیست بعدی</translation>
<translation id="860150890330522909">کادر تأیید <ph name="NAME" /> علامت‌گذاری شد</translation>
diff --git a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_fi.xtb b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_fi.xtb
index e0e3a4af4f3..381e29c7635 100644
--- a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_fi.xtb
+++ b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_fi.xtb
@@ -682,6 +682,7 @@
<translation id="8540054775867439484">Sijoitettu yläreunaan</translation>
<translation id="8548973727659841685">Merkki</translation>
<translation id="8561322612995434619">sisältää ponnahdusikkunan</translation>
+<translation id="8571096049907249734">monival.</translation>
<translation id="8584721346566392021">h5</translation>
<translation id="8587549812518406253">Seuraava luettelokohde</translation>
<translation id="860150890330522909"><ph name="NAME" />-valintaruutu valittu</translation>
diff --git a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_fil.xtb b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_fil.xtb
index 61d3d2037b2..a158e05b119 100644
--- a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_fil.xtb
+++ b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_fil.xtb
@@ -682,6 +682,7 @@
<translation id="8540054775867439484">Naka-wrap sa itaas</translation>
<translation id="8548973727659841685">Character</translation>
<translation id="8561322612995434619">may pop up</translation>
+<translation id="8571096049907249734">multsel</translation>
<translation id="8584721346566392021">h5</translation>
<translation id="8587549812518406253">Susunod na item sa listahan</translation>
<translation id="860150890330522909">Nilagyan ng check ang checkbox na <ph name="NAME" /></translation>
diff --git a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_fr.xtb b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_fr.xtb
index d72062f985a..cdeb4bc71cb 100644
--- a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_fr.xtb
+++ b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_fr.xtb
@@ -682,6 +682,7 @@
<translation id="8540054775867439484">Revenir au début</translation>
<translation id="8548973727659841685">Caractère</translation>
<translation id="8561322612995434619">avec fenêtre pop-up</translation>
+<translation id="8571096049907249734">sél_multiple</translation>
<translation id="8584721346566392021">h5</translation>
<translation id="8587549812518406253">Élément de liste suivant</translation>
<translation id="860150890330522909">case <ph name="NAME" /> cochée</translation>
diff --git a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_gu.xtb b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_gu.xtb
index b6a1fee1282..5bfdad38b89 100644
--- a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_gu.xtb
+++ b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_gu.xtb
@@ -682,6 +682,7 @@
<translation id="8540054775867439484">ટોચ પર રૅપ કર્યું</translation>
<translation id="8548973727659841685">અક્ષર</translation>
<translation id="8561322612995434619">તેમાં પૉપ અપ છે</translation>
+<translation id="8571096049907249734">multsel</translation>
<translation id="8584721346566392021">h5</translation>
<translation id="8587549812518406253">આગલી સૂચિ આઇટમ</translation>
<translation id="860150890330522909"><ph name="NAME" /> ચેકબોક્સ ચેક કર્યો છે</translation>
diff --git a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_hi.xtb b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_hi.xtb
index 2ca05b0f2e1..acf6c561eeb 100644
--- a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_hi.xtb
+++ b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_hi.xtb
@@ -682,6 +682,7 @@
<translation id="8540054775867439484">शीर्ष पर लपेटा गया</translation>
<translation id="8548973727659841685">अक्षर</translation>
<translation id="8561322612995434619">पॉप अप है</translation>
+<translation id="8571096049907249734">एकाधिक चयन</translation>
<translation id="8584721346566392021">h5</translation>
<translation id="8587549812518406253">अगला सूची आइटम</translation>
<translation id="860150890330522909"><ph name="NAME" />, चेकबॉक्‍स चेक किया गया</translation>
diff --git a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_hr.xtb b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_hr.xtb
index 4289170f77a..9661f41ffcc 100644
--- a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_hr.xtb
+++ b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_hr.xtb
@@ -682,6 +682,7 @@
<translation id="8540054775867439484">Prelomljeno na vrh</translation>
<translation id="8548973727659841685">Znak</translation>
<translation id="8561322612995434619">ima skočni prozor</translation>
+<translation id="8571096049907249734">všstrk odbr</translation>
<translation id="8584721346566392021">h5</translation>
<translation id="8587549812518406253">Sljedeća stavka popisa</translation>
<translation id="860150890330522909">označen je potvrdni okvir <ph name="NAME" /></translation>
diff --git a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_hu.xtb b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_hu.xtb
index ad492b07fff..10dba6dc069 100644
--- a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_hu.xtb
+++ b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_hu.xtb
@@ -682,6 +682,7 @@
<translation id="8540054775867439484">A tetejére kerül</translation>
<translation id="8548973727659841685">Karakter</translation>
<translation id="8561322612995434619">pop-uppal rendelkezik</translation>
+<translation id="8571096049907249734">többkijel</translation>
<translation id="8584721346566392021">h5</translation>
<translation id="8587549812518406253">Következő listaelem</translation>
<translation id="860150890330522909"><ph name="NAME" /> négyzet bejelölve</translation>
diff --git a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_id.xtb b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_id.xtb
index f80a64f4586..625f0e5445d 100644
--- a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_id.xtb
+++ b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_id.xtb
@@ -682,6 +682,7 @@
<translation id="8540054775867439484">Terbungkus ke atas</translation>
<translation id="8548973727659841685">Karakter</translation>
<translation id="8561322612995434619">memiliki munculan</translation>
+<translation id="8571096049907249734">multsel</translation>
<translation id="8584721346566392021">h5</translation>
<translation id="8587549812518406253">Item daftar berikutnya</translation>
<translation id="860150890330522909">kotak centang <ph name="NAME" /> dicentang</translation>
diff --git a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_it.xtb b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_it.xtb
index af7fc426d82..0aa02de2fa6 100644
--- a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_it.xtb
+++ b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_it.xtb
@@ -682,6 +682,7 @@
<translation id="8540054775867439484">Ricomincia dall'inizio</translation>
<translation id="8548973727659841685">Carattere</translation>
<translation id="8561322612995434619">con popup</translation>
+<translation id="8571096049907249734">sel mult</translation>
<translation id="8584721346566392021">h5</translation>
<translation id="8587549812518406253">Voce elenco successiva</translation>
<translation id="860150890330522909">Casella di controllo <ph name="NAME" /> selezionata</translation>
diff --git a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_iw.xtb b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_iw.xtb
index 6efad75862b..ce6aea63363 100644
--- a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_iw.xtb
+++ b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_iw.xtb
@@ -682,6 +682,7 @@
<translation id="8540054775867439484">גלישה לחלק העליון</translation>
<translation id="8548973727659841685">תו</translation>
<translation id="8561322612995434619">כולל חלון קופץ</translation>
+<translation id="8571096049907249734">בחירה מרובה</translation>
<translation id="8584721346566392021">h5</translation>
<translation id="8587549812518406253">הפריט הבא ברשימה</translation>
<translation id="860150890330522909">תיבת הסימון <ph name="NAME" /> סומנה</translation>
diff --git a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ja.xtb b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ja.xtb
index 4573ee5da30..9b5ce8bb022 100644
--- a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ja.xtb
+++ b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ja.xtb
@@ -682,6 +682,7 @@
<translation id="8540054775867439484">先頭に戻ります</translation>
<translation id="8548973727659841685">文字</translation>
<translation id="8561322612995434619">ポップアップあり</translation>
+<translation id="8571096049907249734">複数選択</translation>
<translation id="8584721346566392021">見出し 5</translation>
<translation id="8587549812518406253">次のリスト項目</translation>
<translation id="860150890330522909"><ph name="NAME" /> チェックボックスがオンです</translation>
diff --git a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_kn.xtb b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_kn.xtb
index 1ba80647d88..a531dd8e8b6 100644
--- a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_kn.xtb
+++ b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_kn.xtb
@@ -682,6 +682,7 @@
<translation id="8540054775867439484">ಮೇಲಕ್ಕೆ ಆವರಿಸಲಾಗಿದೆ</translation>
<translation id="8548973727659841685">ಅಕ್ಷರ</translation>
<translation id="8561322612995434619">ಪಾಪ್ ಅಪ್ ಹೊಂದಿದೆ</translation>
+<translation id="8571096049907249734">multsel</translation>
<translation id="8584721346566392021">h5</translation>
<translation id="8587549812518406253">ಮುಂದಿನ ಪಟ್ಟಿಯ ಐಟಂ</translation>
<translation id="860150890330522909"><ph name="NAME" /> ಚೆಕ್‌ಬಾಕ್ಸ್ ಗುರುತಿಸಲಾಗಿದೆ</translation>
diff --git a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ko.xtb b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ko.xtb
index 0cea92c01ce..0a46d98e2a6 100644
--- a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ko.xtb
+++ b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ko.xtb
@@ -682,6 +682,7 @@
<translation id="8540054775867439484">페이지 상단으로 행 이동</translation>
<translation id="8548973727659841685">문자</translation>
<translation id="8561322612995434619">팝업 있음</translation>
+<translation id="8571096049907249734">다중 선택</translation>
<translation id="8584721346566392021">h5</translation>
<translation id="8587549812518406253">다음 목록 항목</translation>
<translation id="860150890330522909"><ph name="NAME" /> 체크박스 선택됨</translation>
diff --git a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_lt.xtb b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_lt.xtb
index 219f2cbd4d0..f94267cb3b2 100644
--- a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_lt.xtb
+++ b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_lt.xtb
@@ -682,6 +682,7 @@
<translation id="8540054775867439484">Skaidyti į viršų</translation>
<translation id="8548973727659841685">Simbolis</translation>
<translation id="8561322612995434619">yra iššokantysis elementas</translation>
+<translation id="8571096049907249734">keli pasirinkimai</translation>
<translation id="8584721346566392021">h5</translation>
<translation id="8587549812518406253">Kitas sąrašo elementas</translation>
<translation id="860150890330522909">Žymimasis laukelis „<ph name="NAME" />“ pažymėtas</translation>
diff --git a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_lv.xtb b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_lv.xtb
index 890118e8c54..b092d2f06a1 100644
--- a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_lv.xtb
+++ b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_lv.xtb
@@ -682,6 +682,7 @@
<translation id="8540054775867439484">Doties uz sākumu</translation>
<translation id="8548973727659841685">Rakstzīme</translation>
<translation id="8561322612995434619">ietver uznirstošu elementu</translation>
+<translation id="8571096049907249734">vairākatlase</translation>
<translation id="8584721346566392021">5. līmeņa virsraksts</translation>
<translation id="8587549812518406253">Nākamais saraksta vienums</translation>
<translation id="860150890330522909">Atzīmēta izvēles rūtiņa <ph name="NAME" /></translation>
diff --git a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ml.xtb b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ml.xtb
index eca9d67b42c..426c9e2fd3c 100644
--- a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ml.xtb
+++ b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ml.xtb
@@ -682,6 +682,7 @@
<translation id="8540054775867439484">മുകളിലേയ്‌ക്ക് റാപ്പുചെ‌യ്‌തു</translation>
<translation id="8548973727659841685">പ്രതീകം</translation>
<translation id="8561322612995434619">പോപ്പ് അപ്പ് ഉണ്ട്</translation>
+<translation id="8571096049907249734">ഒന്നിലധികം തിരഞ്ഞെടുക്കൽ</translation>
<translation id="8584721346566392021">h5</translation>
<translation id="8587549812518406253">അടുത്ത ലിസ്റ്റ് ഇനം</translation>
<translation id="860150890330522909"><ph name="NAME" /> ചെക്ക്ബോക്‌സ് ചെക്കുചെയ്‌തു</translation>
diff --git a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_mr.xtb b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_mr.xtb
index e8a396fe47f..31dd3c99be8 100644
--- a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_mr.xtb
+++ b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_mr.xtb
@@ -682,6 +682,7 @@
<translation id="8540054775867439484">शीर्षस्थानी ओघ वळविला</translation>
<translation id="8548973727659841685">वर्ण</translation>
<translation id="8561322612995434619">यास पॉप अप आहे</translation>
+<translation id="8571096049907249734">एकाधिक निवड</translation>
<translation id="8584721346566392021">h5</translation>
<translation id="8587549812518406253">पुढील सूची आयटम</translation>
<translation id="860150890330522909"><ph name="NAME" /> चेकबॉक्स चेक केला</translation>
diff --git a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ms.xtb b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ms.xtb
index a11eb9342d7..5d9b2ff368c 100644
--- a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ms.xtb
+++ b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ms.xtb
@@ -682,6 +682,7 @@
<translation id="8540054775867439484">Dibalut ke atas</translation>
<translation id="8548973727659841685">Aksara</translation>
<translation id="8561322612995434619">mempunyai pop timbul</translation>
+<translation id="8571096049907249734">multisel</translation>
<translation id="8584721346566392021">h5</translation>
<translation id="8587549812518406253">Item senarai seterusnya</translation>
<translation id="860150890330522909">Kotak pilihan <ph name="NAME" /> ditandai</translation>
diff --git a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_nl.xtb b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_nl.xtb
index 70e83071492..6fe7b575bc8 100644
--- a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_nl.xtb
+++ b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_nl.xtb
@@ -682,6 +682,7 @@
<translation id="8540054775867439484">Omloop naar boven</translation>
<translation id="8548973727659841685">Teken</translation>
<translation id="8561322612995434619">heeft pop-up</translation>
+<translation id="8571096049907249734">multisel</translation>
<translation id="8584721346566392021">k5</translation>
<translation id="8587549812518406253">Volgend item in de lijst</translation>
<translation id="860150890330522909">selectievakje <ph name="NAME" /> aangevinkt</translation>
diff --git a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_no.xtb b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_no.xtb
index 24d1d093cd8..23f67edbd1a 100644
--- a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_no.xtb
+++ b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_no.xtb
@@ -682,6 +682,7 @@
<translation id="8540054775867439484">Legges sammen øverst</translation>
<translation id="8548973727659841685">Tegn</translation>
<translation id="8561322612995434619">har forgrunnsvindu</translation>
+<translation id="8571096049907249734">flervalg</translation>
<translation id="8584721346566392021">h5</translation>
<translation id="8587549812518406253">Neste listepunkt</translation>
<translation id="860150890330522909"><ph name="NAME" />-ruten er avmerket</translation>
diff --git a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_pl.xtb b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_pl.xtb
index a789293bee7..a081136948a 100644
--- a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_pl.xtb
+++ b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_pl.xtb
@@ -682,6 +682,7 @@
<translation id="8540054775867439484">Zawijanie do góry</translation>
<translation id="8548973727659841685">Znak</translation>
<translation id="8561322612995434619">ma wyskakujące okienko</translation>
+<translation id="8571096049907249734">wybór wielokrotny</translation>
<translation id="8584721346566392021">h5</translation>
<translation id="8587549812518406253">Następny element listy</translation>
<translation id="860150890330522909"><ph name="NAME" />, zaznaczone pole wyboru</translation>
diff --git a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_pt-BR.xtb b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_pt-BR.xtb
index 2bd4672e975..7861340c4be 100644
--- a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_pt-BR.xtb
+++ b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_pt-BR.xtb
@@ -682,6 +682,7 @@
<translation id="8540054775867439484">Retornar para o topo</translation>
<translation id="8548973727659841685">Caractere</translation>
<translation id="8561322612995434619">possui pop-up</translation>
+<translation id="8571096049907249734">mult sel</translation>
<translation id="8584721346566392021">h5</translation>
<translation id="8587549812518406253">Próximo item da lista</translation>
<translation id="860150890330522909">Caixa de seleção <ph name="NAME" /> marcada</translation>
diff --git a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_pt-PT.xtb b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_pt-PT.xtb
index ded2d05cb73..0e1885069b1 100644
--- a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_pt-PT.xtb
+++ b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_pt-PT.xtb
@@ -682,6 +682,7 @@
<translation id="8540054775867439484">Direcionado para o início</translation>
<translation id="8548973727659841685">Caráter</translation>
<translation id="8561322612995434619">inclui pop-up</translation>
+<translation id="8571096049907249734">mult sel</translation>
<translation id="8584721346566392021">h5</translation>
<translation id="8587549812518406253">Item de lista seguinte</translation>
<translation id="860150890330522909">Caixa de verificação <ph name="NAME" /> marcada</translation>
diff --git a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ro.xtb b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ro.xtb
index 90f445853bd..ec965ad535a 100644
--- a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ro.xtb
+++ b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ro.xtb
@@ -682,6 +682,7 @@
<translation id="8540054775867439484">Încadrare sus</translation>
<translation id="8548973727659841685">Caracter</translation>
<translation id="8561322612995434619">are fereastră pop-up</translation>
+<translation id="8571096049907249734">selectare multiplă</translation>
<translation id="8584721346566392021">titlu 5</translation>
<translation id="8587549812518406253">Elementul următor din listă</translation>
<translation id="860150890330522909">Casetă de validare <ph name="NAME" /> bifată</translation>
diff --git a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ru.xtb b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ru.xtb
index eb4305a6eab..0842f26120f 100644
--- a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ru.xtb
+++ b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ru.xtb
@@ -682,6 +682,7 @@
<translation id="8540054775867439484">Смещение вверх</translation>
<translation id="8548973727659841685">Символ.</translation>
<translation id="8561322612995434619">вызывает всплывающее окно.</translation>
+<translation id="8571096049907249734">multsel</translation>
<translation id="8584721346566392021">h5</translation>
<translation id="8587549812518406253">Перейти к следующему пункту списка</translation>
<translation id="860150890330522909">Флажок "<ph name="NAME" />", установлен</translation>
diff --git a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_sk.xtb b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_sk.xtb
index a0a625d124b..c429621e433 100644
--- a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_sk.xtb
+++ b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_sk.xtb
@@ -682,6 +682,7 @@
<translation id="8540054775867439484">Skok na začiatok</translation>
<translation id="8548973727659841685">Znak</translation>
<translation id="8561322612995434619">má kontextové okno</translation>
+<translation id="8571096049907249734">viac volieb</translation>
<translation id="8584721346566392021">h5</translation>
<translation id="8587549812518406253">Ďalšia položka zoznamu</translation>
<translation id="860150890330522909">začiarkavacie políčko <ph name="NAME" /> je začiarknuté</translation>
diff --git a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_sl.xtb b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_sl.xtb
index f4f7ff86842..c639e14d155 100644
--- a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_sl.xtb
+++ b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_sl.xtb
@@ -682,6 +682,7 @@
<translation id="8540054775867439484">Prelom do vrha</translation>
<translation id="8548973727659841685">Znakovna</translation>
<translation id="8561322612995434619">ima pojavno okno</translation>
+<translation id="8571096049907249734">večizb</translation>
<translation id="8584721346566392021">n5</translation>
<translation id="8587549812518406253">Naslednji element seznama</translation>
<translation id="860150890330522909">Potrditveno polje <ph name="NAME" /> je označeno</translation>
diff --git a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_sr.xtb b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_sr.xtb
index 0c7fba16791..9cf86f26b43 100644
--- a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_sr.xtb
+++ b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_sr.xtb
@@ -682,6 +682,7 @@
<translation id="8540054775867439484">Пребачено на врх</translation>
<translation id="8548973727659841685">Знак</translation>
<translation id="8561322612995434619">има искачући прозор</translation>
+<translation id="8571096049907249734">вишеизб</translation>
<translation id="8584721346566392021">h5</translation>
<translation id="8587549812518406253">Следећа ставка листе</translation>
<translation id="860150890330522909">Поље за потврду <ph name="NAME" /> је означено</translation>
diff --git a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_sv.xtb b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_sv.xtb
index f955a93eb03..ed3e3fbbba3 100644
--- a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_sv.xtb
+++ b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_sv.xtb
@@ -682,6 +682,7 @@
<translation id="8540054775867439484">Till början</translation>
<translation id="8548973727659841685">Tecken</translation>
<translation id="8561322612995434619">med popup</translation>
+<translation id="8571096049907249734">flerval</translation>
<translation id="8584721346566392021">rubr5</translation>
<translation id="8587549812518406253">Nästa post i listan</translation>
<translation id="860150890330522909">Kryssrutan <ph name="NAME" /> har markerats</translation>
diff --git a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_sw.xtb b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_sw.xtb
index a75b93575cc..1b76cdd6f29 100644
--- a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_sw.xtb
+++ b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_sw.xtb
@@ -682,6 +682,7 @@
<translation id="8540054775867439484">Imefungwa hadi juu</translation>
<translation id="8548973727659841685">Herufi</translation>
<translation id="8561322612995434619">ina dirisha ibukizi</translation>
+<translation id="8571096049907249734">chagua nyingi</translation>
<translation id="8584721346566392021">h5</translation>
<translation id="8587549812518406253">Kipengee cha orodha kinachofuata</translation>
<translation id="860150890330522909">Kisanduku cha kuteua <ph name="NAME" /> kimeteuliwa</translation>
diff --git a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ta.xtb b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ta.xtb
index 18d658ae84c..3aaec837138 100644
--- a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ta.xtb
+++ b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_ta.xtb
@@ -682,6 +682,7 @@
<translation id="8540054775867439484">மேல்பகுதிக்கு மடிக்கப்படும்</translation>
<translation id="8548973727659841685">எழுத்து</translation>
<translation id="8561322612995434619">பாப்-அப் உள்ளது</translation>
+<translation id="8571096049907249734">multsel</translation>
<translation id="8584721346566392021">h5</translation>
<translation id="8587549812518406253">அடுத்த பட்டியல் உருப்படி</translation>
<translation id="860150890330522909"><ph name="NAME" /> செக் பாக்ஸ் தேர்ந்தெடுக்கப்பட்டது</translation>
diff --git a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_te.xtb b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_te.xtb
index 509e59ccc50..455070479b9 100644
--- a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_te.xtb
+++ b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_te.xtb
@@ -682,6 +682,7 @@
<translation id="8540054775867439484">ఎగువకు సర్దుబాటు చేయబడింది</translation>
<translation id="8548973727659841685">అక్షరం</translation>
<translation id="8561322612995434619">పాప్ అప్‌ను కలిగి ఉంది</translation>
+<translation id="8571096049907249734">బహు ఎంపి</translation>
<translation id="8584721346566392021">h5</translation>
<translation id="8587549812518406253">తదుపరి జాబితా అంశం</translation>
<translation id="860150890330522909"><ph name="NAME" /> తనిఖీపెట్టె ఎంచుకోబడింది</translation>
diff --git a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_th.xtb b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_th.xtb
index 20b74cb5ab9..c06f086a7e1 100644
--- a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_th.xtb
+++ b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_th.xtb
@@ -682,6 +682,7 @@
<translation id="8540054775867439484">ข้ามไปด้านบน</translation>
<translation id="8548973727659841685">อักขระ</translation>
<translation id="8561322612995434619">มีป๊อปอัป</translation>
+<translation id="8571096049907249734">multsel</translation>
<translation id="8584721346566392021">h5</translation>
<translation id="8587549812518406253">รายการถัดไป</translation>
<translation id="860150890330522909">เลือกช่องทำเครื่องหมาย <ph name="NAME" /> แล้ว</translation>
diff --git a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_tr.xtb b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_tr.xtb
index ba87e0aa158..e2586b03082 100644
--- a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_tr.xtb
+++ b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_tr.xtb
@@ -682,6 +682,7 @@
<translation id="8540054775867439484">Üste döner</translation>
<translation id="8548973727659841685">Karakter</translation>
<translation id="8561322612995434619">pop-up'ı var</translation>
+<translation id="8571096049907249734">çoklsçm</translation>
<translation id="8584721346566392021">h5</translation>
<translation id="8587549812518406253">Sonraki liste öğesi</translation>
<translation id="860150890330522909"><ph name="NAME" /> onay kutusu işaretli</translation>
diff --git a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_uk.xtb b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_uk.xtb
index 75639385134..e82d1543f28 100644
--- a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_uk.xtb
+++ b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_uk.xtb
@@ -682,6 +682,7 @@
<translation id="8540054775867439484">Перенесення вгору</translation>
<translation id="8548973727659841685">Символ</translation>
<translation id="8561322612995434619">має спливаюче вікно</translation>
+<translation id="8571096049907249734">вибір кількох пунктів</translation>
<translation id="8584721346566392021">заголовок 5</translation>
<translation id="8587549812518406253">Наступний пункт списку</translation>
<translation id="860150890330522909"><ph name="NAME" /> вибрано</translation>
diff --git a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_vi.xtb b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_vi.xtb
index 2807820059c..dcc4bdb1422 100644
--- a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_vi.xtb
+++ b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_vi.xtb
@@ -682,6 +682,7 @@
<translation id="8540054775867439484">Đã bao gồm cả đầu trang</translation>
<translation id="8548973727659841685">Ký tự</translation>
<translation id="8561322612995434619">có cửa sổ bật lên</translation>
+<translation id="8571096049907249734">đa chọn</translation>
<translation id="8584721346566392021">h5</translation>
<translation id="8587549812518406253">Mục danh sách tiếp theo</translation>
<translation id="860150890330522909">Hộp kiểm <ph name="NAME" /> đã được chọn</translation>
diff --git a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_zh-CN.xtb b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_zh-CN.xtb
index 061a3426514..7388b040558 100644
--- a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_zh-CN.xtb
+++ b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_zh-CN.xtb
@@ -682,6 +682,7 @@
<translation id="8540054775867439484">转至顶部</translation>
<translation id="8548973727659841685">逐个字符</translation>
<translation id="8561322612995434619">包含弹出式窗口</translation>
+<translation id="8571096049907249734">多选</translation>
<translation id="8584721346566392021">5级标题标记</translation>
<translation id="8587549812518406253">下一个列表项</translation>
<translation id="860150890330522909">已选中“<ph name="NAME" />”复选框</translation>
diff --git a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_zh-TW.xtb b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_zh-TW.xtb
index 23ec81407e3..d7d90fe6d8c 100644
--- a/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_zh-TW.xtb
+++ b/chromium/chrome/browser/resources/chromeos/chromevox/strings/chromevox_strings_zh-TW.xtb
@@ -682,6 +682,7 @@
<translation id="8540054775867439484">自動換行至頂端</translation>
<translation id="8548973727659841685">字元</translation>
<translation id="8561322612995434619">含彈出式元件</translation>
+<translation id="8571096049907249734">複選</translation>
<translation id="8584721346566392021">第 5 階</translation>
<translation id="8587549812518406253">下一個清單項目</translation>
<translation id="860150890330522909">「<ph name="NAME" />」核取方塊已勾選</translation>
diff --git a/chromium/chrome/browser/resources/chromeos/user_images_grid.js b/chromium/chrome/browser/resources/chromeos/user_images_grid.js
index aaecf7af964..9f17b992deb 100644
--- a/chromium/chrome/browser/resources/chromeos/user_images_grid.js
+++ b/chromium/chrome/browser/resources/chromeos/user_images_grid.js
@@ -235,12 +235,22 @@ cr.define('options', function() {
if (this.cameraVideo_)
this.cameraVideo_.src = '';
if (this.cameraStream_)
- this.cameraStream_.stop();
+ this.stopVideoTracks_(this.cameraStream_);
// Cancel any pending getUserMedia() checks.
this.cameraStartInProgress_ = false;
},
/**
+ * Stops all video tracks associated with a MediaStream object.
+ * @param {MediaStream} stream
+ */
+ stopVideoTracks_: function(stream) {
+ var tracks = stream.getVideoTracks();
+ for (var t of tracks)
+ t.stop();
+ },
+
+ /**
* Handles successful camera check.
* @param {function(): boolean} onAvailable Callback to call. If it returns
* |true|, capture is started immediately.
@@ -253,7 +263,7 @@ cr.define('options', function() {
this.cameraVideo_.src = URL.createObjectURL(stream);
this.cameraStream_ = stream;
} else {
- stream.stop();
+ this.stopVideoTracks_(stream);
}
this.cameraStartInProgress_ = false;
},
diff --git a/chromium/chrome/browser/resources/plugin_metadata/plugins_linux.json b/chromium/chrome/browser/resources/plugin_metadata/plugins_linux.json
index 6a3c94acc79..940a126cc2b 100644
--- a/chromium/chrome/browser/resources/plugin_metadata/plugins_linux.json
+++ b/chromium/chrome/browser/resources/plugin_metadata/plugins_linux.json
@@ -1,5 +1,5 @@
{
- "x-version": 7,
+ "x-version": 9,
"google-talk": {
"mime_types": [
],
@@ -80,9 +80,9 @@
],
"versions": [
{
- "version": "18.0.0.233",
+ "version": "19.0.0.245",
"status": "up_to_date",
- "reference": "https://helpx.adobe.com/security/products/flash-player/apsb15-19.html"
+ "reference": "https://helpx.adobe.com/security/products/flash-player/apsb15-28.html"
}
],
"lang": "en-US",
diff --git a/chromium/chrome/browser/resources/plugin_metadata/plugins_mac.json b/chromium/chrome/browser/resources/plugin_metadata/plugins_mac.json
index 63a450c8ef2..8b8ef6eec35 100644
--- a/chromium/chrome/browser/resources/plugin_metadata/plugins_mac.json
+++ b/chromium/chrome/browser/resources/plugin_metadata/plugins_mac.json
@@ -1,5 +1,5 @@
{
- "x-version": 13,
+ "x-version": 15,
"google-talk": {
"mime_types": [
],
@@ -115,9 +115,9 @@
],
"versions": [
{
- "version": "18.0.0.232",
+ "version": "19.0.0.245",
"status": "requires_authorization",
- "reference": "https://helpx.adobe.com/security/products/flash-player/apsb15-19.html"
+ "reference": "https://helpx.adobe.com/security/products/flash-player/apsb15-28.html"
}
],
"lang": "en-US",
diff --git a/chromium/chrome/browser/resources/plugin_metadata/plugins_win.json b/chromium/chrome/browser/resources/plugin_metadata/plugins_win.json
index 01ab30860a3..da9f9ff5e26 100644
--- a/chromium/chrome/browser/resources/plugin_metadata/plugins_win.json
+++ b/chromium/chrome/browser/resources/plugin_metadata/plugins_win.json
@@ -1,5 +1,5 @@
{
- "x-version": 22,
+ "x-version": 24,
"google-talk": {
"mime_types": [
],
@@ -137,9 +137,9 @@
],
"versions": [
{
- "version": "18.0.0.232",
+ "version": "19.0.0.245",
"status": "requires_authorization",
- "reference": "https://helpx.adobe.com/security/products/flash-player/apsb15-19.html"
+ "reference": "https://helpx.adobe.com/security/products/flash-player/apsb15-28.html"
}
],
"lang": "en-US",
diff --git a/chromium/chrome/chrome_browser.gypi b/chromium/chrome/chrome_browser.gypi
index 6703e32f845..684e20d5091 100644
--- a/chromium/chrome/chrome_browser.gypi
+++ b/chromium/chrome/chrome_browser.gypi
@@ -2546,6 +2546,10 @@
'browser/safe_browsing/sandboxed_zip_analyzer.h',
'browser/safe_browsing/two_phase_uploader.cc',
'browser/safe_browsing/two_phase_uploader.h',
+ 'browser/safe_browsing/unverified_download_field_trial.cc',
+ 'browser/safe_browsing/unverified_download_field_trial.h',
+ 'browser/safe_browsing/unverified_download_policy.cc',
+ 'browser/safe_browsing/unverified_download_policy.h',
],
'chrome_browser_search_engines_sources': [
'browser/search_engines/chrome_template_url_service_client.cc',
diff --git a/chromium/chrome/chrome_tests.gypi b/chromium/chrome/chrome_tests.gypi
index 19c851f4893..ec2d71e4549 100644
--- a/chromium/chrome/chrome_tests.gypi
+++ b/chromium/chrome/chrome_tests.gypi
@@ -619,6 +619,7 @@
'test/data/webui/webui_resource_browsertest.cc',
'test/gpu/webgl_infobar_browsertest.cc',
'test/ppapi/ppapi_browsertest.cc',
+ 'test/ppapi/ppapi_filechooser_browsertest.cc',
],
# Cross-platform views browser tests ready for toolkit-views on Mac.
'chrome_browser_tests_views_sources': [
diff --git a/chromium/chrome/chrome_tests_unit.gypi b/chromium/chrome/chrome_tests_unit.gypi
index d69a2b6f4fa..ebf53f129c7 100644
--- a/chromium/chrome/chrome_tests_unit.gypi
+++ b/chromium/chrome/chrome_tests_unit.gypi
@@ -1014,6 +1014,8 @@
'browser/safe_browsing/test_database_manager.cc',
'browser/safe_browsing/test_database_manager.h',
'browser/safe_browsing/two_phase_uploader_unittest.cc',
+ 'browser/safe_browsing/unverified_download_field_trial_unittest.cc',
+ 'browser/safe_browsing/unverified_download_policy_unittest.cc',
'common/safe_browsing/binary_feature_extractor_mac_unittest.cc',
'common/safe_browsing/binary_feature_extractor_unittest.cc',
'common/safe_browsing/binary_feature_extractor_win_unittest.cc',
diff --git a/chromium/chrome/common/chrome_switches.cc b/chromium/chrome/common/chrome_switches.cc
index 6e728f9a423..42ffbc702c4 100644
--- a/chromium/chrome/common/chrome_switches.cc
+++ b/chromium/chrome/common/chrome_switches.cc
@@ -57,6 +57,13 @@ const char kDisablePluginPowerSaver[] = "disable-plugin-power-saver";
const char kEnablePluginPowerSaver[] = "enable-plugin-power-saver";
#endif
+#if defined(FULL_SAFE_BROWSING)
+const char kAllowUncheckedDangerousDownloads[] =
+ "allow-unchecked-dangerous-downloads";
+const char kDisallowUncheckedDangerousDownloads[] =
+ "disallow-unchecked-dangerous-downloads";
+#endif
+
// Don't block outdated plugins.
const char kAllowOutdatedPlugins[] = "allow-outdated-plugins";
@@ -958,6 +965,15 @@ const char kSbDisableDownloadProtection[] =
const char kSbDisableExtensionBlacklist[] =
"safebrowsing-disable-extension-blacklist";
+// List of comma-separated sha256 hashes of executable files which the
+// download-protection service should treat as "dangerous." For a file to
+// show a warning, it also must be considered a dangerous filetype and not
+// be whitelisted otherwise (by signature or URL) and must be on a supported
+// OS. Hashes are in hex. This is used for manual testing when looking
+// for ways to by-pass download protection.
+const char kSbManualDownloadBlacklist[] =
+ "safebrowsing-manual-download-blacklist";
+
// Causes the process to run as a service process.
const char kServiceProcess[] = "service";
diff --git a/chromium/chrome/common/chrome_switches.h b/chromium/chrome/common/chrome_switches.h
index 46eb1f7f7a6..b8b77fa3851 100644
--- a/chromium/chrome/common/chrome_switches.h
+++ b/chromium/chrome/common/chrome_switches.h
@@ -260,6 +260,7 @@ extern const char kSavePageAsMHTML[];
extern const char kSbDisableAutoUpdate[];
extern const char kSbDisableDownloadProtection[];
extern const char kSbDisableExtensionBlacklist[];
+extern const char kSbManualDownloadBlacklist[];
extern const char kServiceProcess[];
extern const char kSilentDebuggerExtensionAPI[];
extern const char kSilentLaunch[];
@@ -400,6 +401,11 @@ extern const char kDisablePluginPowerSaver[];
extern const char kEnablePluginPowerSaver[];
#endif
+#if defined(FULL_SAFE_BROWSING)
+extern const char kAllowUncheckedDangerousDownloads[];
+extern const char kDisallowUncheckedDangerousDownloads[];
+#endif
+
#if defined(ENABLE_TASK_MANAGER)
extern const char kDisableNewTaskManager[];
#endif // defined(ENABLE_TASK_MANAGER)
diff --git a/chromium/chrome/common/spellcheck_bdict_language.h b/chromium/chrome/common/spellcheck_bdict_language.h
new file mode 100644
index 00000000000..2272c372735
--- /dev/null
+++ b/chromium/chrome/common/spellcheck_bdict_language.h
@@ -0,0 +1,17 @@
+// Copyright 2015 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_COMMON_SPELLCHECK_BDICT_LANGUAGE_H_
+#define CHROME_COMMON_SPELLCHECK_BDICT_LANGUAGE_H_
+
+#include <string>
+
+#include "ipc/ipc_platform_file.h"
+
+struct SpellCheckBDictLanguage {
+ IPC::PlatformFileForTransit file;
+ std::string language;
+};
+
+#endif // CHROME_COMMON_SPELLCHECK_BDICT_LANGUAGE_H_
diff --git a/chromium/chrome/common/spellcheck_common.cc b/chromium/chrome/common/spellcheck_common.cc
new file mode 100644
index 00000000000..cee08836181
--- /dev/null
+++ b/chromium/chrome/common/spellcheck_common.cc
@@ -0,0 +1,209 @@
+// Copyright (c) 2012 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/common/spellcheck_common.h"
+
+#include "base/command_line.h"
+#include "base/files/file_path.h"
+#include "base/logging.h"
+#include "base/macros.h"
+#include "base/metrics/field_trial.h"
+#include "base/strings/string_util.h"
+#include "chrome/common/chrome_switches.h"
+#include "third_party/icu/source/common/unicode/uloc.h"
+#include "third_party/icu/source/common/unicode/urename.h"
+#include "third_party/icu/source/common/unicode/utypes.h"
+
+namespace chrome {
+namespace spellcheck_common {
+
+const char kMultilingualSpellcheckFieldTrial[] = "MultilingualSpellcheck";
+
+struct LanguageRegion {
+ const char* language; // The language.
+ const char* language_region; // language & region, used by dictionaries.
+};
+
+struct LanguageVersion {
+ const char* language; // The language input.
+ const char* version; // The corresponding version.
+};
+
+static const LanguageRegion g_supported_spellchecker_languages[] = {
+ // Several languages are not to be included in the spellchecker list:
+ // th-TH, vi-VI.
+ {"af", "af-ZA"},
+ {"bg", "bg-BG"},
+ {"ca", "ca-ES"},
+ {"cs", "cs-CZ"},
+ {"da", "da-DK"},
+ {"de", "de-DE"},
+ {"el", "el-GR"},
+ {"en-AU", "en-AU"},
+ {"en-CA", "en-CA"},
+ {"en-GB", "en-GB"},
+ {"en-US", "en-US"},
+ {"es", "es-ES"},
+ {"et", "et-EE"},
+ {"fo", "fo-FO"},
+ {"fr", "fr-FR"},
+ {"he", "he-IL"},
+ {"hi", "hi-IN"},
+ {"hr", "hr-HR"},
+ {"hu", "hu-HU"},
+ {"id", "id-ID"},
+ {"it", "it-IT"},
+ {"ko", "ko"},
+ {"lt", "lt-LT"},
+ {"lv", "lv-LV"},
+ {"nb", "nb-NO"},
+ {"nl", "nl-NL"},
+ {"pl", "pl-PL"},
+ {"pt-BR", "pt-BR"},
+ {"pt-PT", "pt-PT"},
+ {"ro", "ro-RO"},
+ {"ru", "ru-RU"},
+ {"sh", "sh"},
+ {"sk", "sk-SK"},
+ {"sl", "sl-SI"},
+ {"sq", "sq"},
+ {"sr", "sr"},
+ {"sv", "sv-SE"},
+ {"ta", "ta-IN"},
+ {"tg", "tg-TG"},
+ {"tr", "tr-TR"},
+ {"uk", "uk-UA"},
+ {"vi", "vi-VN"},
+};
+
+bool IsValidRegion(const std::string& region) {
+ for (size_t i = 0; i < arraysize(g_supported_spellchecker_languages);
+ ++i) {
+ if (g_supported_spellchecker_languages[i].language_region == region)
+ return true;
+ }
+ return false;
+}
+
+// This function returns the language-region version of language name.
+// e.g. returns hi-IN for hi.
+std::string GetSpellCheckLanguageRegion(const std::string& input_language) {
+ for (size_t i = 0; i < arraysize(g_supported_spellchecker_languages);
+ ++i) {
+ if (g_supported_spellchecker_languages[i].language == input_language) {
+ return std::string(
+ g_supported_spellchecker_languages[i].language_region);
+ }
+ }
+
+ return input_language;
+}
+
+base::FilePath GetVersionedFileName(const std::string& input_language,
+ const base::FilePath& dict_dir) {
+ // The default dictionary version is 3-0. This version indicates that the bdic
+ // file contains a checksum.
+ static const char kDefaultVersionString[] = "-3-0";
+
+ // Add non-default version strings here. Use the same version for all the
+ // dictionaries that you add at the same time. Increment the major version
+ // number if you're updating either dic or aff files. Increment the minor
+ // version number if you're updating only dic_delta files.
+ static LanguageVersion special_version_string[] = {
+ {"tr-TR", "-4-0"}, // Jan 9, 2013: Add "FLAG num" to aff to avoid heapcheck
+ // crash.
+ {"tg-TG", "-5-0"}, // Mar 4, 2014: Add Tajik dictionary.
+
+ // Oct 28, 2014: Update from upstream, add new words.
+ {"en-AU", "-4-0"},
+ {"en-GB", "-4-0"},
+
+ // March 10, 2015: Update from upstream, enable typographical apostrophe.
+ {"en-CA", "-6-1"},
+ {"en-US", "-6-1"},
+ };
+
+ // Generate the bdict file name using default version string or special
+ // version string, depending on the language.
+ std::string language = GetSpellCheckLanguageRegion(input_language);
+ std::string versioned_bdict_file_name(language + kDefaultVersionString +
+ ".bdic");
+ for (size_t i = 0; i < arraysize(special_version_string); ++i) {
+ if (language == special_version_string[i].language) {
+ versioned_bdict_file_name =
+ language + special_version_string[i].version + ".bdic";
+ break;
+ }
+ }
+
+ return dict_dir.AppendASCII(versioned_bdict_file_name);
+}
+
+std::string GetCorrespondingSpellCheckLanguage(const std::string& language) {
+ // Look for exact match in the Spell Check language list.
+ for (size_t i = 0; i < arraysize(g_supported_spellchecker_languages);
+ ++i) {
+ // First look for exact match in the language region of the list.
+ std::string spellcheck_language(
+ g_supported_spellchecker_languages[i].language);
+ if (spellcheck_language == language)
+ return language;
+
+ // Next, look for exact match in the language_region part of the list.
+ std::string spellcheck_language_region(
+ g_supported_spellchecker_languages[i].language_region);
+ if (spellcheck_language_region == language)
+ return g_supported_spellchecker_languages[i].language;
+ }
+
+ // No match found - return blank.
+ return std::string();
+}
+
+void SpellCheckLanguages(std::vector<std::string>* languages) {
+ for (size_t i = 0; i < arraysize(g_supported_spellchecker_languages);
+ ++i) {
+ languages->push_back(g_supported_spellchecker_languages[i].language);
+ }
+}
+
+void GetISOLanguageCountryCodeFromLocale(const std::string& locale,
+ std::string* language_code,
+ std::string* country_code) {
+ DCHECK(language_code);
+ DCHECK(country_code);
+ char language[ULOC_LANG_CAPACITY] = ULOC_ENGLISH;
+ const char* country = "USA";
+ if (!locale.empty()) {
+ UErrorCode error = U_ZERO_ERROR;
+ char id[ULOC_LANG_CAPACITY + ULOC_SCRIPT_CAPACITY + ULOC_COUNTRY_CAPACITY];
+ uloc_addLikelySubtags(locale.c_str(), id, arraysize(id), &error);
+ error = U_ZERO_ERROR;
+ uloc_getLanguage(id, language, arraysize(language), &error);
+ country = uloc_getISO3Country(id);
+ }
+ *language_code = std::string(language);
+ *country_code = std::string(country);
+}
+
+bool IsMultilingualSpellcheckEnabled() {
+ // TODO(rouslan): Remove field trial and command line flags when M49 is
+ // stable.
+ const std::string& group_name =
+ base::FieldTrialList::FindFullName(kMultilingualSpellcheckFieldTrial);
+ if (base::CommandLine::ForCurrentProcess()->HasSwitch(
+ switches::kDisableMultilingualSpellChecker)) {
+ return false;
+ }
+ if (base::CommandLine::ForCurrentProcess()->HasSwitch(
+ switches::kEnableMultilingualSpellChecker)) {
+ return true;
+ }
+ // Enabled by default, but can be disabled in field trial.
+ return !base::StartsWith(group_name, "Disabled",
+ base::CompareCase::INSENSITIVE_ASCII);
+}
+
+} // namespace spellcheck_common
+} // namespace chrome
diff --git a/chromium/chrome/common/spellcheck_common.h b/chromium/chrome/common/spellcheck_common.h
new file mode 100644
index 00000000000..deb3617daa1
--- /dev/null
+++ b/chromium/chrome/common/spellcheck_common.h
@@ -0,0 +1,67 @@
+// Copyright (c) 2012 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_COMMON_SPELLCHECK_COMMON_H_
+#define CHROME_COMMON_SPELLCHECK_COMMON_H_
+
+#include <string>
+#include <vector>
+
+namespace base {
+class FilePath;
+}
+
+namespace chrome {
+namespace spellcheck_common {
+
+// The number of hours that a session of feedback for spelling service lasts.
+// After this number of hours passes, all feedback.
+static const int kSessionHours = 6;
+
+// The number of context words to keep on either side of a misspelling for
+// spelling service feedback.
+static const int kContextWordCount = 2;
+
+// The number of seconds between sending feedback to spelling service.
+static const int kFeedbackIntervalSeconds = 1800; // 30 minutes
+
+// Max number of dictionary suggestions.
+static const int kMaxSuggestions = 5;
+
+static const int kMaxAutoCorrectWordSize = 8;
+
+// Maximum number of words in the custom spellcheck dictionary that can be
+// synced.
+static const size_t MAX_SYNCABLE_DICTIONARY_WORDS = 1300;
+
+// Maximum number of bytes in a word that can be added to the custom spellcheck
+// dictionary.
+static const size_t MAX_CUSTOM_DICTIONARY_WORD_BYTES = 99;
+
+// The name of the field trial for multilingual spellchecker.
+extern const char kMultilingualSpellcheckFieldTrial[];
+
+base::FilePath GetVersionedFileName(const std::string& input_language,
+ const base::FilePath& dict_dir);
+
+std::string GetCorrespondingSpellCheckLanguage(const std::string& language);
+
+// Get SpellChecker supported languages.
+void SpellCheckLanguages(std::vector<std::string>* languages);
+
+// Gets the ISO codes for the language and country of this |locale|. The
+// |locale| is an ISO locale ID that may not include a country ID, e.g., "fr" or
+// "de". This method converts the UI locale to a full locale ID and converts the
+// full locale ID to an ISO language code and an ISO3 country code.
+void GetISOLanguageCountryCodeFromLocale(const std::string& locale,
+ std::string* language_code,
+ std::string* country_code);
+
+// Returns true if multilingual spellchecker is enabled.
+bool IsMultilingualSpellcheckEnabled();
+
+} // namespace spellcheck_common
+} // namespace chrome
+
+#endif // CHROME_COMMON_SPELLCHECK_COMMON_H_
diff --git a/chromium/chrome/common/spellcheck_common_unittest.cc b/chromium/chrome/common/spellcheck_common_unittest.cc
new file mode 100644
index 00000000000..4f877c5524d
--- /dev/null
+++ b/chromium/chrome/common/spellcheck_common_unittest.cc
@@ -0,0 +1,51 @@
+// Copyright 2015 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/common/spellcheck_common.h"
+
+#include "base/command_line.h"
+#include "base/metrics/field_trial.h"
+#include "chrome/common/chrome_switches.h"
+#include "components/variations/entropy_provider.h"
+#include "testing/gtest/include/gtest/gtest.h"
+
+namespace {
+
+using chrome::spellcheck_common::IsMultilingualSpellcheckEnabled;
+using chrome::spellcheck_common::kMultilingualSpellcheckFieldTrial;
+
+TEST(SpellcheckCommonTest, MultilingualByDefault) {
+ EXPECT_TRUE(IsMultilingualSpellcheckEnabled());
+}
+
+TEST(SpellcheckCommonTest, CanDisableMultlingualInFieldTrial) {
+ base::FieldTrialList trials(new metrics::SHA1EntropyProvider("foo"));
+ scoped_refptr<base::FieldTrial> trial =
+ base::FieldTrialList::CreateFieldTrial(kMultilingualSpellcheckFieldTrial,
+ "Disabled");
+ trial->group();
+
+ EXPECT_FALSE(IsMultilingualSpellcheckEnabled());
+}
+
+TEST(SpellcheckCommonTest, CanDisableMultlingualFromCommandLine) {
+ base::CommandLine::ForCurrentProcess()->AppendSwitch(
+ switches::kDisableMultilingualSpellChecker);
+
+ EXPECT_FALSE(IsMultilingualSpellcheckEnabled());
+}
+
+TEST(SpellcheckCommonTest, CanForceMultlingualFromCommandLine) {
+ base::FieldTrialList trials(new metrics::SHA1EntropyProvider("foo"));
+ scoped_refptr<base::FieldTrial> trial =
+ base::FieldTrialList::CreateFieldTrial(kMultilingualSpellcheckFieldTrial,
+ "Disabled");
+ trial->group();
+ base::CommandLine::ForCurrentProcess()->AppendSwitch(
+ switches::kEnableMultilingualSpellChecker);
+
+ EXPECT_TRUE(IsMultilingualSpellcheckEnabled());
+}
+
+} // namespace
diff --git a/chromium/chrome/common/spellcheck_marker.h b/chromium/chrome/common/spellcheck_marker.h
new file mode 100644
index 00000000000..bc02918460c
--- /dev/null
+++ b/chromium/chrome/common/spellcheck_marker.h
@@ -0,0 +1,31 @@
+// Copyright (c) 2013 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_COMMON_SPELLCHECK_MARKER_H_
+#define CHROME_COMMON_SPELLCHECK_MARKER_H_
+
+class SpellCheckMarker {
+ public:
+ // A predicate to test spellcheck marker validity.
+ class IsValidPredicate {
+ public:
+ typedef SpellCheckMarker argument_type;
+ explicit IsValidPredicate(size_t text_length) : text_length_(text_length) {}
+ bool operator()(const SpellCheckMarker& marker) const {
+ return marker.offset < text_length_;
+ }
+ private:
+ size_t text_length_;
+ };
+
+ // IPC requires a default constructor.
+ SpellCheckMarker() : hash(0xFFFFFFFF), offset(static_cast<size_t>(-1)) {}
+
+ SpellCheckMarker(uint32 hash, size_t offset) : hash(hash), offset(offset) {}
+
+ uint32 hash;
+ size_t offset;
+};
+
+#endif // CHROME_COMMON_SPELLCHECK_MARKER_H_
diff --git a/chromium/chrome/common/spellcheck_messages.h b/chromium/chrome/common/spellcheck_messages.h
new file mode 100644
index 00000000000..f4878acf458
--- /dev/null
+++ b/chromium/chrome/common/spellcheck_messages.h
@@ -0,0 +1,151 @@
+// Copyright (c) 2012 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.
+
+// IPC messages for spellcheck.
+// Multiply-included message file, hence no include guard.
+
+#include "chrome/common/spellcheck_bdict_language.h"
+#include "chrome/common/spellcheck_marker.h"
+#include "chrome/common/spellcheck_result.h"
+#include "ipc/ipc_message_macros.h"
+#include "ipc/ipc_platform_file.h"
+
+#if !defined(ENABLE_SPELLCHECK)
+#error "Spellcheck should be enabled"
+#endif
+
+#define IPC_MESSAGE_START SpellCheckMsgStart
+
+IPC_ENUM_TRAITS(SpellCheckResult::Decoration)
+
+IPC_STRUCT_TRAITS_BEGIN(SpellCheckResult)
+ IPC_STRUCT_TRAITS_MEMBER(decoration)
+ IPC_STRUCT_TRAITS_MEMBER(location)
+ IPC_STRUCT_TRAITS_MEMBER(length)
+ IPC_STRUCT_TRAITS_MEMBER(replacement)
+ IPC_STRUCT_TRAITS_MEMBER(hash)
+IPC_STRUCT_TRAITS_END()
+
+IPC_STRUCT_TRAITS_BEGIN(SpellCheckMarker)
+ IPC_STRUCT_TRAITS_MEMBER(hash)
+ IPC_STRUCT_TRAITS_MEMBER(offset)
+IPC_STRUCT_TRAITS_END()
+
+IPC_STRUCT_TRAITS_BEGIN(SpellCheckBDictLanguage)
+ IPC_STRUCT_TRAITS_MEMBER(file)
+ IPC_STRUCT_TRAITS_MEMBER(language)
+IPC_STRUCT_TRAITS_END()
+
+// Messages sent from the browser to the renderer.
+
+IPC_MESSAGE_CONTROL1(SpellCheckMsg_EnableSpellCheck,
+ bool)
+
+// Passes some initialization params from the browser to the renderer's
+// spellchecker. This can be called directly after startup or in (async)
+// response to a RequestDictionary ViewHost message.
+IPC_MESSAGE_CONTROL3(SpellCheckMsg_Init,
+ std::vector<SpellCheckBDictLanguage> /* bdict_languages */,
+ std::set<std::string> /* custom_dict_words */,
+ bool /* auto spell correct */)
+
+// Words have been added and removed in the custom dictionary; update the local
+// custom word list.
+IPC_MESSAGE_CONTROL2(SpellCheckMsg_CustomDictionaryChanged,
+ std::set<std::string> /* words_added */,
+ std::set<std::string> /* words_removed */)
+
+// Toggle the auto spell correct functionality.
+IPC_MESSAGE_CONTROL1(SpellCheckMsg_EnableAutoSpellCorrect,
+ bool /* enable */)
+
+// Request a list of all document markers in the renderer for spelling service
+// feedback.
+IPC_MESSAGE_CONTROL0(SpellCheckMsg_RequestDocumentMarkers)
+
+// Send a list of document markers in the renderer to the spelling service
+// feedback sender.
+IPC_MESSAGE_CONTROL1(SpellCheckHostMsg_RespondDocumentMarkers,
+ std::vector<uint32> /* document marker identifiers */)
+
+#if !defined(USE_BROWSER_SPELLCHECKER)
+// Sends text-check results from the Spelling service when the service finishes
+// checking text received by a SpellCheckHostMsg_CallSpellingService message.
+// If the service is not available, the 4th parameter should be false and the
+// 5th parameter should contain the requested sentence.
+IPC_MESSAGE_ROUTED4(SpellCheckMsg_RespondSpellingService,
+ int /* request identifier given by WebKit */,
+ bool /* succeeded calling service */,
+ base::string16 /* sentence */,
+ std::vector<SpellCheckResult>)
+#endif
+
+#if defined(USE_BROWSER_SPELLCHECKER)
+// This message tells the renderer to advance to the next misspelling. It is
+// sent when the user clicks the "Find Next" button on the spelling panel.
+IPC_MESSAGE_ROUTED0(SpellCheckMsg_AdvanceToNextMisspelling)
+
+// Sends when NSSpellChecker finishes checking text received by a preceding
+// SpellCheckHostMsg_RequestTextCheck message.
+IPC_MESSAGE_ROUTED3(SpellCheckMsg_RespondTextCheck,
+ int /* request identifier given by WebKit */,
+ base::string16 /* sentence */,
+ std::vector<SpellCheckResult>)
+
+IPC_MESSAGE_ROUTED1(SpellCheckMsg_ToggleSpellPanel,
+ bool)
+#endif
+
+// Messages sent from the renderer to the browser.
+
+// The renderer has tried to spell check a word, but couldn't because no
+// dictionary was available to load. Request that the browser find an
+// appropriate dictionary and return it.
+IPC_MESSAGE_CONTROL0(SpellCheckHostMsg_RequestDictionary)
+
+// Tracks spell checking occurrence to collect histogram.
+IPC_MESSAGE_ROUTED2(SpellCheckHostMsg_NotifyChecked,
+ base::string16 /* word */,
+ bool /* true if checked word is misspelled */)
+
+#if !defined(USE_BROWSER_SPELLCHECKER)
+// Asks the Spelling service to check text. When the service finishes checking
+// the input text, it sends a SpellingCheckMsg_RespondSpellingService with
+// text-check results.
+IPC_MESSAGE_CONTROL4(SpellCheckHostMsg_CallSpellingService,
+ int /* route_id for response */,
+ int /* request identifier given by WebKit */,
+ base::string16 /* sentence */,
+ std::vector<SpellCheckMarker> /* markers */)
+#endif
+
+#if defined(USE_BROWSER_SPELLCHECKER)
+// Tells the browser to display or not display the SpellingPanel
+IPC_MESSAGE_ROUTED1(SpellCheckHostMsg_ShowSpellingPanel,
+ bool /* if true, then show it, otherwise hide it*/)
+
+// Tells the browser to update the spelling panel with the given word.
+IPC_MESSAGE_ROUTED1(SpellCheckHostMsg_UpdateSpellingPanelWithMisspelledWord,
+ base::string16 /* the word to update the panel with */)
+
+// TODO(groby): This needs to originate from SpellcheckProvider.
+IPC_SYNC_MESSAGE_CONTROL2_1(SpellCheckHostMsg_CheckSpelling,
+ base::string16 /* word */,
+ int /* route_id */,
+ bool /* correct */)
+
+IPC_SYNC_MESSAGE_CONTROL1_1(SpellCheckHostMsg_FillSuggestionList,
+ base::string16 /* word */,
+ std::vector<base::string16> /* suggestions */)
+
+IPC_MESSAGE_CONTROL4(SpellCheckHostMsg_RequestTextCheck,
+ int /* route_id for response */,
+ int /* request identifier given by WebKit */,
+ base::string16 /* sentence */,
+ std::vector<SpellCheckMarker> /* markers */)
+
+IPC_MESSAGE_ROUTED2(SpellCheckHostMsg_ToggleSpellCheck,
+ bool /* enabled */,
+ bool /* checked */)
+#endif // USE_BROWSER_SPELLCHECKER
diff --git a/chromium/chrome/common/spellcheck_result.h b/chromium/chrome/common/spellcheck_result.h
new file mode 100644
index 00000000000..cbd4a8b8d95
--- /dev/null
+++ b/chromium/chrome/common/spellcheck_result.h
@@ -0,0 +1,43 @@
+// Copyright (c) 2012 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_COMMON_SPELLCHECK_RESULT_H_
+#define CHROME_COMMON_SPELLCHECK_RESULT_H_
+
+#include "base/strings/string16.h"
+
+// This class mirrors blink::WebTextCheckingResult which holds a
+// misspelled range inside the checked text. It also contains a
+// possible replacement of the misspelling if it is available.
+struct SpellCheckResult {
+ enum Decoration {
+ // Red underline for misspelled words.
+ SPELLING = 1 << 1,
+
+ // Gray underline for correctly spelled words that are incorrectly used in
+ // their context.
+ GRAMMAR = 1 << 2,
+
+ // No underline for words that spellcheck needs to track. For example, a
+ // word in the custom spellcheck dictionary.
+ INVISIBLE = 1 << 3,
+ };
+
+ explicit SpellCheckResult(
+ Decoration d = SPELLING,
+ int loc = 0,
+ int len = 0,
+ const base::string16& rep = base::string16(),
+ uint32 h = 0)
+ : decoration(d), location(loc), length(len), replacement(rep), hash(h) {
+ }
+
+ Decoration decoration;
+ int location;
+ int length;
+ base::string16 replacement;
+ uint32 hash;
+};
+
+#endif // CHROME_COMMON_SPELLCHECK_RESULT_H_
diff --git a/chromium/chromecast/common/media/cma_param_traits.cc b/chromium/chromecast/common/media/cma_param_traits.cc
index ab0f62a32b0..2ae4fd91748 100644
--- a/chromium/chromecast/common/media/cma_param_traits.cc
+++ b/chromium/chromecast/common/media/cma_param_traits.cc
@@ -34,13 +34,7 @@ void ParamTraits<media::AudioDecoderConfig>::Write(
WriteParam(m, p.channel_layout());
WriteParam(m, p.samples_per_second());
WriteParam(m, p.is_encrypted());
- std::vector<uint8> extra_data;
- if (p.extra_data_size() > 0) {
- extra_data =
- std::vector<uint8>(p.extra_data(),
- p.extra_data() + p.extra_data_size());
- }
- WriteParam(m, extra_data);
+ WriteParam(m, p.extra_data());
}
bool ParamTraits<media::AudioDecoderConfig>::Read(
@@ -58,13 +52,8 @@ bool ParamTraits<media::AudioDecoderConfig>::Read(
!ReadParam(m, iter, &samples_per_second) ||
!ReadParam(m, iter, &is_encrypted) || !ReadParam(m, iter, &extra_data))
return false;
- const uint8* extra_data_ptr = nullptr;
- if (!extra_data.empty())
- extra_data_ptr = &extra_data[0];
*r = media::AudioDecoderConfig(codec, sample_format, channel_layout,
- samples_per_second,
- extra_data_ptr, extra_data.size(),
- is_encrypted);
+ samples_per_second, extra_data, is_encrypted);
return true;
}
@@ -83,13 +72,7 @@ void ParamTraits<media::VideoDecoderConfig>::Write(
WriteParam(m, p.visible_rect());
WriteParam(m, p.natural_size());
WriteParam(m, p.is_encrypted());
- std::vector<uint8> extra_data;
- if (p.extra_data_size() > 0) {
- extra_data =
- std::vector<uint8>(p.extra_data(),
- p.extra_data() + p.extra_data_size());
- }
- WriteParam(m, extra_data);
+ WriteParam(m, p.extra_data());
}
bool ParamTraits<media::VideoDecoderConfig>::Read(
@@ -111,13 +94,9 @@ bool ParamTraits<media::VideoDecoderConfig>::Read(
!ReadParam(m, iter, &natural_size) ||
!ReadParam(m, iter, &is_encrypted) || !ReadParam(m, iter, &extra_data))
return false;
- const uint8* extra_data_ptr = nullptr;
- if (!extra_data.empty())
- extra_data_ptr = &extra_data[0];
*r = media::VideoDecoderConfig(codec, profile, format, color_space,
coded_size, visible_rect, natural_size,
- extra_data_ptr, extra_data.size(),
- is_encrypted);
+ extra_data, is_encrypted);
return true;
}
diff --git a/chromium/chromecast/media/audio/cast_audio_output_stream.cc b/chromium/chromecast/media/audio/cast_audio_output_stream.cc
index bb7a54efce7..71187276da5 100644
--- a/chromium/chromecast/media/audio/cast_audio_output_stream.cc
+++ b/chromium/chromecast/media/audio/cast_audio_output_stream.cc
@@ -52,8 +52,6 @@ bool InitAudioDevice(const ::media::AudioParameters& audio_params,
audio_config.bytes_per_channel = audio_params.bits_per_sample() / 8;
audio_config.channel_number = audio_params.channels();
audio_config.samples_per_second = audio_params.sample_rate();
- audio_config.extra_data = nullptr;
- audio_config.extra_data_size = 0;
audio_config.is_encrypted = false;
if (!audio_device->SetConfig(audio_config))
return false;
diff --git a/chromium/chromecast/media/cma/base/decoder_config_adapter.cc b/chromium/chromecast/media/cma/base/decoder_config_adapter.cc
index b75d5f2be86..248edd0295a 100644
--- a/chromium/chromecast/media/cma/base/decoder_config_adapter.cc
+++ b/chromium/chromecast/media/cma/base/decoder_config_adapter.cc
@@ -182,8 +182,8 @@ AudioConfig DecoderConfigAdapter::ToCastAudioConfig(
::media::ChannelLayoutToChannelCount(config.channel_layout()),
audio_config.samples_per_second = config.samples_per_second();
audio_config.extra_data =
- (config.extra_data_size() > 0) ? config.extra_data() : nullptr;
- audio_config.extra_data_size = config.extra_data_size();
+ (config.extra_data().empty()) ? nullptr : &config.extra_data()[0];
+ audio_config.extra_data_size = config.extra_data().size();
audio_config.is_encrypted = config.is_encrypted();
return audio_config;
}
@@ -191,11 +191,16 @@ AudioConfig DecoderConfigAdapter::ToCastAudioConfig(
// static
::media::AudioDecoderConfig DecoderConfigAdapter::ToMediaAudioDecoderConfig(
const AudioConfig& config) {
+ std::vector<uint8_t> extra_data;
+ if (config.extra_data_size > 0)
+ extra_data.assign(config.extra_data,
+ config.extra_data + config.extra_data_size);
+
return ::media::AudioDecoderConfig(
ToMediaAudioCodec(config.codec),
ToMediaSampleFormat(config.sample_format),
ToMediaChannelLayout(config.channel_number), config.samples_per_second,
- config.extra_data, config.extra_data_size, config.is_encrypted);
+ extra_data, config.is_encrypted);
}
// static
@@ -210,9 +215,9 @@ VideoConfig DecoderConfigAdapter::ToCastVideoConfig(
video_config.id = id;
video_config.codec = ToVideoCodec(config.codec());
video_config.profile = ToVideoProfile(config.profile());
- video_config.extra_data = (config.extra_data_size() > 0) ?
- config.extra_data() : nullptr;
- video_config.extra_data_size = config.extra_data_size();
+ video_config.extra_data = (config.extra_data().empty()) ?
+ nullptr : &config.extra_data()[0];
+ video_config.extra_data_size = config.extra_data().size();
video_config.is_encrypted = config.is_encrypted();
return video_config;
}
diff --git a/chromium/chromecast/media/cma/ipc_streamer/audio_decoder_config_marshaller.cc b/chromium/chromecast/media/cma/ipc_streamer/audio_decoder_config_marshaller.cc
index d595bdaac3d..2bc40f48fbd 100644
--- a/chromium/chromecast/media/cma/ipc_streamer/audio_decoder_config_marshaller.cc
+++ b/chromium/chromecast/media/cma/ipc_streamer/audio_decoder_config_marshaller.cc
@@ -4,6 +4,8 @@
#include "chromecast/media/cma/ipc_streamer/audio_decoder_config_marshaller.h"
+#include <vector>
+
#include "base/basictypes.h"
#include "base/logging.h"
#include "chromecast/media/cma/ipc/media_message.h"
@@ -24,9 +26,10 @@ void AudioDecoderConfigMarshaller::Write(
CHECK(msg->WritePod(config.samples_per_second()));
CHECK(msg->WritePod(config.sample_format()));
CHECK(msg->WritePod(config.is_encrypted()));
- CHECK(msg->WritePod(config.extra_data_size()));
- if (config.extra_data_size() > 0)
- CHECK(msg->WriteBuffer(config.extra_data(), config.extra_data_size()));
+ CHECK(msg->WritePod(config.extra_data().size()));
+ if (!config.extra_data().empty())
+ CHECK(msg->WriteBuffer(&config.extra_data()[0],
+ config.extra_data().size()));
}
// static
@@ -38,7 +41,7 @@ void AudioDecoderConfigMarshaller::Write(
int samples_per_second;
bool is_encrypted;
size_t extra_data_size;
- scoped_ptr<uint8[]> extra_data;
+ std::vector<uint8_t> extra_data;
CHECK(msg->ReadPod(&codec));
CHECK(msg->ReadPod(&channel_layout));
@@ -55,15 +58,14 @@ void AudioDecoderConfigMarshaller::Write(
CHECK_LE(sample_format, ::media::kSampleFormatMax);
CHECK_LT(extra_data_size, kMaxExtraDataSize);
if (extra_data_size > 0) {
- extra_data.reset(new uint8[extra_data_size]);
- CHECK(msg->ReadBuffer(extra_data.get(), extra_data_size));
+ extra_data.resize(extra_data_size);
+ CHECK(msg->ReadBuffer(&extra_data[0], extra_data.size()));
}
return ::media::AudioDecoderConfig(
codec, sample_format,
channel_layout, samples_per_second,
- extra_data.get(), extra_data_size,
- is_encrypted);
+ extra_data, is_encrypted);
}
} // namespace media
diff --git a/chromium/chromecast/media/cma/ipc_streamer/video_decoder_config_marshaller.cc b/chromium/chromecast/media/cma/ipc_streamer/video_decoder_config_marshaller.cc
index 1c07352eed3..8cd28aee5e5 100644
--- a/chromium/chromecast/media/cma/ipc_streamer/video_decoder_config_marshaller.cc
+++ b/chromium/chromecast/media/cma/ipc_streamer/video_decoder_config_marshaller.cc
@@ -4,6 +4,8 @@
#include "chromecast/media/cma/ipc_streamer/video_decoder_config_marshaller.h"
+#include <vector>
+
#include "base/basictypes.h"
#include "base/logging.h"
#include "chromecast/media/cma/ipc/media_message.h"
@@ -64,9 +66,10 @@ void VideoDecoderConfigMarshaller::Write(
RectMarshaller::Write(config.visible_rect(), msg);
SizeMarshaller::Write(config.natural_size(), msg);
CHECK(msg->WritePod(config.is_encrypted()));
- CHECK(msg->WritePod(config.extra_data_size()));
- if (config.extra_data_size() > 0)
- CHECK(msg->WriteBuffer(config.extra_data(), config.extra_data_size()));
+ CHECK(msg->WritePod(config.extra_data().size()));
+ if (!config.extra_data().empty())
+ CHECK(msg->WriteBuffer(&config.extra_data()[0],
+ config.extra_data().size()));
}
// static
@@ -81,7 +84,7 @@ void VideoDecoderConfigMarshaller::Write(
gfx::Size natural_size;
bool is_encrypted;
size_t extra_data_size;
- scoped_ptr<uint8[]> extra_data;
+ std::vector<uint8_t> extra_data;
CHECK(msg->ReadPod(&codec));
CHECK(msg->ReadPod(&profile));
@@ -103,15 +106,14 @@ void VideoDecoderConfigMarshaller::Write(
CHECK_LE(color_space, ::media::COLOR_SPACE_MAX);
CHECK_LT(extra_data_size, kMaxExtraDataSize);
if (extra_data_size > 0) {
- extra_data.reset(new uint8[extra_data_size]);
- CHECK(msg->ReadBuffer(extra_data.get(), extra_data_size));
+ extra_data.resize(extra_data_size);
+ CHECK(msg->ReadBuffer(&extra_data[0], extra_data.size()));
}
return ::media::VideoDecoderConfig(
codec, profile, format, color_space,
coded_size, visible_rect, natural_size,
- extra_data.get(), extra_data_size,
- is_encrypted);
+ extra_data, is_encrypted);
}
} // namespace media
diff --git a/chromium/chromecast/media/cma/pipeline/audio_video_pipeline_impl_unittest.cc b/chromium/chromecast/media/cma/pipeline/audio_video_pipeline_impl_unittest.cc
index 4d716524eee..991234f1de1 100644
--- a/chromium/chromecast/media/cma/pipeline/audio_video_pipeline_impl_unittest.cc
+++ b/chromium/chromecast/media/cma/pipeline/audio_video_pipeline_impl_unittest.cc
@@ -27,6 +27,7 @@
#include "chromecast/public/media/media_clock_device.h"
#include "media/base/audio_decoder_config.h"
#include "media/base/decoder_buffer.h"
+#include "media/base/media_util.h"
#include "media/base/video_decoder_config.h"
#include "testing/gtest/include/gtest/gtest.h"
@@ -94,13 +95,13 @@ void AudioVideoPipelineImplTest::Initialize(
::media::kSampleFormatS16,
::media::CHANNEL_LAYOUT_STEREO,
44100,
- NULL, 0, false);
+ ::media::EmptyExtraData(), false);
std::vector<::media::VideoDecoderConfig> video_configs;
video_configs.push_back(::media::VideoDecoderConfig(
::media::kCodecH264, ::media::H264PROFILE_MAIN,
::media::PIXEL_FORMAT_I420, ::media::COLOR_SPACE_UNSPECIFIED,
- gfx::Size(640, 480), gfx::Rect(0, 0, 640, 480), gfx::Size(640, 480), NULL,
- 0, false));
+ gfx::Size(640, 480), gfx::Rect(0, 0, 640, 480), gfx::Size(640, 480),
+ ::media::EmptyExtraData(), false));
// Frame generation on the producer side.
std::vector<FrameGeneratorForTest::FrameSpec> frame_specs;
diff --git a/chromium/components/components_tests.gyp b/chromium/components/components_tests.gyp
index 4e8dc9e7af6..91d4a4b8021 100644
--- a/chromium/components/components_tests.gyp
+++ b/chromium/components/components_tests.gyp
@@ -585,6 +585,7 @@
'scheduler/child/webthread_impl_for_worker_scheduler_unittest.cc',
'scheduler/child/worker_scheduler_impl_unittest.cc',
'scheduler/renderer/deadline_task_runner_unittest.cc',
+ 'scheduler/renderer/idle_time_estimator_unittest.cc',
'scheduler/renderer/renderer_scheduler_impl_unittest.cc',
'scheduler/renderer/task_cost_estimator_unittest.cc',
'scheduler/renderer/user_model_unittest.cc',
diff --git a/chromium/components/devtools_http_handler/devtools_http_handler.cc b/chromium/components/devtools_http_handler/devtools_http_handler.cc
index e4af63d474d..63727fd186f 100644
--- a/chromium/components/devtools_http_handler/devtools_http_handler.cc
+++ b/chromium/components/devtools_http_handler/devtools_http_handler.cc
@@ -377,6 +377,9 @@ static std::string GetMimeType(const std::string& filename) {
} else if (base::EndsWith(filename, ".json",
base::CompareCase::INSENSITIVE_ASCII)) {
return "application/json";
+ } else if (base::EndsWith(filename, ".svg",
+ base::CompareCase::INSENSITIVE_ASCII)) {
+ return "image/svg+xml";
}
LOG(ERROR) << "GetMimeType doesn't know mime type for: "
<< filename
diff --git a/chromium/components/scheduler/base/task_queue_manager.cc b/chromium/components/scheduler/base/task_queue_manager.cc
index fda6e7ed6bf..b053e4be073 100644
--- a/chromium/components/scheduler/base/task_queue_manager.cc
+++ b/chromium/components/scheduler/base/task_queue_manager.cc
@@ -146,10 +146,20 @@ void TaskQueueManager::RegisterAsUpdatableTaskQueue(
void TaskQueueManager::UnregisterAsUpdatableTaskQueue(
internal::TaskQueueImpl* queue) {
DCHECK(main_thread_checker_.CalledOnValidThread());
+ MoveNewlyUpdatableQueuesIntoUpdatableQueueSet();
+#ifndef NDEBUG
+ {
+ base::AutoLock lock(newly_updatable_lock_);
+ DCHECK(!(updatable_queue_set_.find(queue) == updatable_queue_set_.end() &&
+ std::find(newly_updatable_.begin(), newly_updatable_.end(),
+ queue) != newly_updatable_.end()));
+ }
+#endif
updatable_queue_set_.erase(queue);
}
void TaskQueueManager::MoveNewlyUpdatableQueuesIntoUpdatableQueueSet() {
+ DCHECK(main_thread_checker_.CalledOnValidThread());
base::AutoLock lock(newly_updatable_lock_);
while (!newly_updatable_.empty()) {
updatable_queue_set_.insert(newly_updatable_.back());
@@ -168,14 +178,7 @@ void TaskQueueManager::UpdateWorkQueues(
// Move any ready delayed tasks into the incomming queues.
WakeupReadyDelayedQueues(&lazy_now);
- // Insert any newly updatable queues into the updatable_queue_set_.
- {
- base::AutoLock lock(newly_updatable_lock_);
- while (!newly_updatable_.empty()) {
- updatable_queue_set_.insert(newly_updatable_.back());
- newly_updatable_.pop_back();
- }
- }
+ MoveNewlyUpdatableQueuesIntoUpdatableQueueSet();
auto iter = updatable_queue_set_.begin();
while (iter != updatable_queue_set_.end()) {
diff --git a/chromium/components/scheduler/child/web_scheduler_impl.cc b/chromium/components/scheduler/child/web_scheduler_impl.cc
index 9bf2c0583bf..3dfdde0cada 100644
--- a/chromium/components/scheduler/child/web_scheduler_impl.cc
+++ b/chromium/components/scheduler/child/web_scheduler_impl.cc
@@ -94,7 +94,9 @@ void WebSchedulerImpl::postTimerTaskAt(
tracked_objects::Location location(web_location.functionName(),
web_location.fileName(), -1, nullptr);
timer_task_runner_->PostDelayedTaskAt(
- location, base::Bind(&blink::WebTaskRunner::Task::run, base::Owned(task)),
+ location,
+ base::Bind(&WebTaskRunnerImpl::runTask,
+ base::Passed(scoped_ptr<blink::WebTaskRunner::Task>(task))),
base::TimeTicks() + base::TimeDelta::FromSecondsD(monotonicTime));
}
diff --git a/chromium/components/scheduler/child/web_task_runner_impl.cc b/chromium/components/scheduler/child/web_task_runner_impl.cc
index b4794a4c545..339917ba4a0 100644
--- a/chromium/components/scheduler/child/web_task_runner_impl.cc
+++ b/chromium/components/scheduler/child/web_task_runner_impl.cc
@@ -21,8 +21,10 @@ void WebTaskRunnerImpl::postTask(const blink::WebTraceLocation& web_location,
blink::WebTaskRunner::Task* task) {
tracked_objects::Location location(web_location.functionName(),
web_location.fileName(), -1, nullptr);
- task_runner_->PostTask(location, base::Bind(&blink::WebTaskRunner::Task::run,
- base::Owned(task)));
+ task_runner_->PostTask(
+ location,
+ base::Bind(&WebTaskRunnerImpl::runTask,
+ base::Passed(scoped_ptr<blink::WebTaskRunner::Task>(task))));
}
void WebTaskRunnerImpl::postDelayedTask(
@@ -32,8 +34,15 @@ void WebTaskRunnerImpl::postDelayedTask(
tracked_objects::Location location(web_location.functionName(),
web_location.fileName(), -1, nullptr);
task_runner_->PostDelayedTask(
- location, base::Bind(&blink::WebTaskRunner::Task::run, base::Owned(task)),
+ location,
+ base::Bind(&WebTaskRunnerImpl::runTask,
+ base::Passed(scoped_ptr<blink::WebTaskRunner::Task>(task))),
base::TimeDelta::FromMillisecondsD(delayMs));
}
+void WebTaskRunnerImpl::runTask(scoped_ptr<blink::WebTaskRunner::Task> task)
+{
+ task->run();
+}
+
} // namespace scheduler
diff --git a/chromium/components/scheduler/child/web_task_runner_impl.h b/chromium/components/scheduler/child/web_task_runner_impl.h
index 73a1e46fc60..a78b9917ba7 100644
--- a/chromium/components/scheduler/child/web_task_runner_impl.h
+++ b/chromium/components/scheduler/child/web_task_runner_impl.h
@@ -35,6 +35,13 @@ class SCHEDULER_EXPORT WebTaskRunnerImpl : public blink::WebTaskRunner {
blink::WebTaskRunner::Task* task,
double delayMs) override;
+ // blink::WebTaskRunner::Task should be wrapped by base::Passed() when
+ // used with base::Bind(). See https://crbug.com/551356.
+ // runTask() is a helper to call blink::WebTaskRunner::Task::run from
+ // scoped_ptr<blink::WebTaskRunner::Task>.
+ // runTask() is placed here because scoped_ptr<> cannot be used from Blink.
+ static void runTask(scoped_ptr<blink::WebTaskRunner::Task>);
+
private:
scoped_refptr<base::SingleThreadTaskRunner> task_runner_;
diff --git a/chromium/components/scheduler/renderer/idle_time_estimator.cc b/chromium/components/scheduler/renderer/idle_time_estimator.cc
new file mode 100644
index 00000000000..5d572a28317
--- /dev/null
+++ b/chromium/components/scheduler/renderer/idle_time_estimator.cc
@@ -0,0 +1,73 @@
+// Copyright 2015 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/scheduler/renderer/idle_time_estimator.h"
+
+#include "base/time/default_tick_clock.h"
+
+namespace scheduler {
+
+IdleTimeEstimator::IdleTimeEstimator(
+ const scoped_refptr<TaskQueue>& compositor_task_runner,
+ int sample_count,
+ double estimation_percentile)
+ : compositor_task_runner_(compositor_task_runner),
+ per_frame_compositor_task_runtime_(sample_count),
+ time_source_(new base::DefaultTickClock),
+ estimation_percentile_(estimation_percentile),
+ nesting_level_(0),
+ did_commit_(false) {
+ compositor_task_runner_->AddTaskObserver(this);
+}
+
+IdleTimeEstimator::~IdleTimeEstimator() {
+ compositor_task_runner_->RemoveTaskObserver(this);
+}
+
+base::TimeDelta IdleTimeEstimator::GetExpectedIdleDuration(
+ base::TimeDelta compositor_frame_interval) const {
+ base::TimeDelta expected_compositor_task_runtime_ =
+ per_frame_compositor_task_runtime_.Percentile(estimation_percentile_);
+ return std::max(base::TimeDelta(), compositor_frame_interval -
+ expected_compositor_task_runtime_);
+}
+
+void IdleTimeEstimator::DidCommitFrameToCompositor() {
+ // This will run inside of a WillProcessTask / DidProcessTask pair, let
+ // DidProcessTask know a frame was comitted.
+ did_commit_ = true;
+}
+
+void IdleTimeEstimator::Clear() {
+ task_start_time_ = base::TimeTicks();
+ prev_commit_time_ = base::TimeTicks();
+ cumulative_compositor_runtime_ = base::TimeDelta();
+ per_frame_compositor_task_runtime_.Clear();
+ did_commit_ = false;
+}
+
+void IdleTimeEstimator::SetTimeSourceForTesting(
+ scoped_ptr<base::TickClock> time_source) {
+ time_source_ = time_source.Pass();
+}
+
+void IdleTimeEstimator::WillProcessTask(const base::PendingTask& pending_task) {
+ nesting_level_++;
+ task_start_time_ = time_source_->NowTicks();
+}
+
+void IdleTimeEstimator::DidProcessTask(const base::PendingTask& pending_task) {
+ DCHECK_EQ(nesting_level_, 1);
+ cumulative_compositor_runtime_ += time_source_->NowTicks() - task_start_time_;
+
+ if (did_commit_) {
+ per_frame_compositor_task_runtime_.InsertSample(
+ cumulative_compositor_runtime_);
+ cumulative_compositor_runtime_ = base::TimeDelta();
+ did_commit_ = false;
+ }
+ nesting_level_--;
+}
+
+} // namespace scheduler
diff --git a/chromium/components/scheduler/renderer/idle_time_estimator.h b/chromium/components/scheduler/renderer/idle_time_estimator.h
new file mode 100644
index 00000000000..4b699154113
--- /dev/null
+++ b/chromium/components/scheduler/renderer/idle_time_estimator.h
@@ -0,0 +1,58 @@
+// Copyright 2015 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_SCHEDULER_RENDERER_IDLE_TIME_ESTIMATOR_H_
+#define COMPONENTS_SCHEDULER_RENDERER_IDLE_TIME_ESTIMATOR_H_
+
+#include "base/message_loop/message_loop.h"
+#include "base/time/tick_clock.h"
+#include "cc/base/rolling_time_delta_history.h"
+#include "components/scheduler/base/task_queue.h"
+#include "components/scheduler/scheduler_export.h"
+
+namespace scheduler {
+
+// Estimates how much idle time there is available.
+class SCHEDULER_EXPORT IdleTimeEstimator
+ : public base::MessageLoop::TaskObserver {
+ public:
+ IdleTimeEstimator(const scoped_refptr<TaskQueue>& compositor_task_runner,
+ int sample_count,
+ double estimation_percentile);
+
+ ~IdleTimeEstimator() override;
+
+ // Expected Idle time is defined as: |compositor_frame_interval| minus
+ // expected compositor task duration.
+ base::TimeDelta GetExpectedIdleDuration(
+ base::TimeDelta compositor_frame_interval) const;
+
+ void DidCommitFrameToCompositor();
+
+ void Clear();
+
+ // TaskObserver implementation:
+ void WillProcessTask(const base::PendingTask& pending_task) override;
+ void DidProcessTask(const base::PendingTask& pending_task) override;
+
+ void SetTimeSourceForTesting(scoped_ptr<base::TickClock> time_source);
+
+ private:
+ scoped_refptr<TaskQueue> compositor_task_runner_;
+ cc::RollingTimeDeltaHistory per_frame_compositor_task_runtime_;
+ scoped_ptr<base::TickClock> time_source_;
+ double estimation_percentile_;
+
+ base::TimeTicks task_start_time_;
+ base::TimeTicks prev_commit_time_;
+ base::TimeDelta cumulative_compositor_runtime_;
+ int nesting_level_;
+ bool did_commit_;
+
+ DISALLOW_COPY_AND_ASSIGN(IdleTimeEstimator);
+};
+
+} // namespace scheduler
+
+#endif // COMPONENTS_SCHEDULER_RENDERER_IDLE_TIME_ESTIMATOR_H_
diff --git a/chromium/components/scheduler/renderer/idle_time_estimator_unittest.cc b/chromium/components/scheduler/renderer/idle_time_estimator_unittest.cc
new file mode 100644
index 00000000000..8f34944304e
--- /dev/null
+++ b/chromium/components/scheduler/renderer/idle_time_estimator_unittest.cc
@@ -0,0 +1,146 @@
+// Copyright 2015 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/scheduler/renderer/idle_time_estimator.h"
+
+#include "base/test/simple_test_tick_clock.h"
+#include "cc/test/ordered_simple_task_runner.h"
+#include "components/scheduler/base/task_queue_manager.h"
+#include "components/scheduler/base/test_time_source.h"
+#include "components/scheduler/child/scheduler_task_runner_delegate_for_test.h"
+#include "testing/gmock/include/gmock/gmock.h"
+#include "testing/gtest/include/gtest/gtest.h"
+
+namespace scheduler {
+
+class IdleTimeEstimatorForTest : public IdleTimeEstimator {
+ public:
+ IdleTimeEstimatorForTest(
+ const scoped_refptr<TaskQueue>& compositor_task_runner,
+ base::SimpleTestTickClock* clock,
+ int sample_count,
+ double estimation_percentile)
+ : IdleTimeEstimator(compositor_task_runner,
+ sample_count,
+ estimation_percentile) {
+ SetTimeSourceForTesting(make_scoped_ptr(new TestTimeSource(clock)));
+ }
+};
+
+class IdleTimeEstimatorTest : public testing::Test {
+ public:
+ IdleTimeEstimatorTest()
+ : frame_length_(base::TimeDelta::FromMilliseconds(16)) {}
+
+ ~IdleTimeEstimatorTest() override {}
+
+ void SetUp() override {
+ clock_.reset(new base::SimpleTestTickClock());
+ clock_->Advance(base::TimeDelta::FromMicroseconds(5000));
+ mock_task_runner_ = make_scoped_refptr(
+ new cc::OrderedSimpleTaskRunner(clock_.get(), false));
+ main_task_runner_ =
+ SchedulerTaskRunnerDelegateForTest::Create(mock_task_runner_);
+ manager_ = make_scoped_ptr(new TaskQueueManager(
+ main_task_runner_, "test.scheduler", "test.scheduler.debug"));
+ compositor_task_runner_ =
+ manager_->NewTaskQueue(TaskQueue::Spec("compositor_tq"));
+ estimator_.reset(new IdleTimeEstimatorForTest(compositor_task_runner_,
+ clock_.get(), 10, 50));
+ }
+
+ void SimulateFrameWithOneCompositorTask(int compositor_time) {
+ base::TimeDelta non_idle_time =
+ base::TimeDelta::FromMilliseconds(compositor_time);
+ base::PendingTask task(FROM_HERE, base::Closure());
+ estimator_->WillProcessTask(task);
+ clock_->Advance(non_idle_time);
+ estimator_->DidCommitFrameToCompositor();
+ estimator_->DidProcessTask(task);
+ if (non_idle_time < frame_length_)
+ clock_->Advance(frame_length_ - non_idle_time);
+ }
+
+ void SimulateFrameWithTwoCompositorTasks(int compositor_time1,
+ int compositor_time2) {
+ base::TimeDelta non_idle_time1 =
+ base::TimeDelta::FromMilliseconds(compositor_time1);
+ base::TimeDelta non_idle_time2 =
+ base::TimeDelta::FromMilliseconds(compositor_time2);
+ base::PendingTask task(FROM_HERE, base::Closure());
+ estimator_->WillProcessTask(task);
+ clock_->Advance(non_idle_time1);
+ estimator_->DidProcessTask(task);
+
+ estimator_->WillProcessTask(task);
+ clock_->Advance(non_idle_time2);
+ estimator_->DidCommitFrameToCompositor();
+ estimator_->DidProcessTask(task);
+
+ base::TimeDelta idle_time = frame_length_ - non_idle_time1 - non_idle_time2;
+ clock_->Advance(idle_time);
+ }
+
+ scoped_ptr<base::SimpleTestTickClock> clock_;
+ scoped_refptr<cc::OrderedSimpleTaskRunner> mock_task_runner_;
+ scoped_refptr<SchedulerTaskRunnerDelegate> main_task_runner_;
+ scoped_ptr<TaskQueueManager> manager_;
+ scoped_refptr<TaskQueue> compositor_task_runner_;
+ scoped_ptr<IdleTimeEstimatorForTest> estimator_;
+ const base::TimeDelta frame_length_;
+};
+
+TEST_F(IdleTimeEstimatorTest, InitialTimeEstimateWithNoData) {
+ EXPECT_EQ(frame_length_, estimator_->GetExpectedIdleDuration(frame_length_));
+}
+
+TEST_F(IdleTimeEstimatorTest, BasicEstimation_SteadyState) {
+ SimulateFrameWithOneCompositorTask(5);
+ SimulateFrameWithOneCompositorTask(5);
+
+ EXPECT_EQ(base::TimeDelta::FromMilliseconds(11),
+ estimator_->GetExpectedIdleDuration(frame_length_));
+}
+
+TEST_F(IdleTimeEstimatorTest, BasicEstimation_Variable) {
+ SimulateFrameWithOneCompositorTask(5);
+ SimulateFrameWithOneCompositorTask(6);
+ SimulateFrameWithOneCompositorTask(7);
+ SimulateFrameWithOneCompositorTask(7);
+ SimulateFrameWithOneCompositorTask(7);
+ SimulateFrameWithOneCompositorTask(8);
+
+ // We expect it to return the median.
+ EXPECT_EQ(base::TimeDelta::FromMilliseconds(9),
+ estimator_->GetExpectedIdleDuration(frame_length_));
+}
+
+TEST_F(IdleTimeEstimatorTest, NoIdleTime) {
+ SimulateFrameWithOneCompositorTask(100);
+ SimulateFrameWithOneCompositorTask(100);
+
+ EXPECT_EQ(base::TimeDelta::FromMilliseconds(0),
+ estimator_->GetExpectedIdleDuration(frame_length_));
+}
+
+TEST_F(IdleTimeEstimatorTest, Clear) {
+ SimulateFrameWithOneCompositorTask(5);
+ SimulateFrameWithOneCompositorTask(5);
+
+ EXPECT_EQ(base::TimeDelta::FromMilliseconds(11),
+ estimator_->GetExpectedIdleDuration(frame_length_));
+ estimator_->Clear();
+
+ EXPECT_EQ(frame_length_, estimator_->GetExpectedIdleDuration(frame_length_));
+}
+
+TEST_F(IdleTimeEstimatorTest, Estimation_MultipleTasks) {
+ SimulateFrameWithTwoCompositorTasks(1, 4);
+ SimulateFrameWithTwoCompositorTasks(1, 4);
+
+ EXPECT_EQ(base::TimeDelta::FromMilliseconds(11),
+ estimator_->GetExpectedIdleDuration(frame_length_));
+}
+
+} // namespace scheduler
diff --git a/chromium/components/scheduler/renderer/renderer_scheduler_impl.cc b/chromium/components/scheduler/renderer/renderer_scheduler_impl.cc
index 1193339bddd..52086b0e45d 100644
--- a/chromium/components/scheduler/renderer/renderer_scheduler_impl.cc
+++ b/chromium/components/scheduler/renderer/renderer_scheduler_impl.cc
@@ -20,7 +20,7 @@ const double kLoadingTaskEstimationPercentile = 90;
const int kTimerTaskEstimationSampleCount = 200;
const double kTimerTaskEstimationPercentile = 90;
const int kShortIdlePeriodDurationSampleCount = 10;
-const double kShortIdlePeriodDurationPercentile = 20;
+const double kShortIdlePeriodDurationPercentile = 50;
}
RendererSchedulerImpl::RendererSchedulerImpl(
@@ -43,6 +43,7 @@ RendererSchedulerImpl::RendererSchedulerImpl(
base::Bind(&RendererSchedulerImpl::UpdatePolicy,
base::Unretained(this)),
helper_.ControlTaskRunner()),
+ main_thread_only_(compositor_task_runner_),
policy_may_need_update_(&any_thread_lock_),
weak_factory_(this) {
update_policy_closure_ = base::Bind(&RendererSchedulerImpl::UpdatePolicy,
@@ -61,10 +62,6 @@ RendererSchedulerImpl::RendererSchedulerImpl(
TRACE_DISABLED_BY_DEFAULT("renderer.scheduler"), "RendererScheduler",
this);
- // Make sure that we don't initially assume there is no idle time.
- MainThreadOnly().short_idle_period_duration.InsertSample(
- cc::BeginFrameArgs::DefaultInterval());
-
helper_.SetObserver(this);
}
@@ -94,12 +91,15 @@ RendererSchedulerImpl::Policy::Policy()
timer_queue_priority(TaskQueue::NORMAL_PRIORITY),
default_queue_priority(TaskQueue::NORMAL_PRIORITY) {}
-RendererSchedulerImpl::MainThreadOnly::MainThreadOnly()
+RendererSchedulerImpl::MainThreadOnly::MainThreadOnly(
+ const scoped_refptr<TaskQueue>& compositor_task_runner)
: loading_task_cost_estimator(kLoadingTaskEstimationSampleCount,
kLoadingTaskEstimationPercentile),
timer_task_cost_estimator(kTimerTaskEstimationSampleCount,
kTimerTaskEstimationPercentile),
- short_idle_period_duration(kShortIdlePeriodDurationSampleCount),
+ idle_time_estimator(compositor_task_runner,
+ kShortIdlePeriodDurationSampleCount,
+ kShortIdlePeriodDurationPercentile),
current_use_case(UseCase::NONE),
timer_queue_suspend_count(0),
navigation_task_expected_count(0),
@@ -220,6 +220,7 @@ void RendererSchedulerImpl::WillBeginFrame(const cc::BeginFrameArgs& args) {
EndIdlePeriod();
MainThreadOnly().estimated_next_frame_begin = args.frame_time + args.interval;
MainThreadOnly().have_seen_a_begin_main_frame = true;
+ MainThreadOnly().compositor_frame_interval = args.interval;
{
base::AutoLock lock(any_thread_lock_);
AnyThread().begin_main_frame_on_critical_path = args.on_critical_path;
@@ -240,16 +241,9 @@ void RendererSchedulerImpl::DidCommitFrameToCompositor() {
idle_helper_.StartIdlePeriod(
IdleHelper::IdlePeriodState::IN_SHORT_IDLE_PERIOD, now,
MainThreadOnly().estimated_next_frame_begin);
- MainThreadOnly().short_idle_period_duration.InsertSample(
- MainThreadOnly().estimated_next_frame_begin - now);
- } else {
- // There was no idle time :(
- MainThreadOnly().short_idle_period_duration.InsertSample(base::TimeDelta());
}
- MainThreadOnly().expected_short_idle_period_duration =
- MainThreadOnly().short_idle_period_duration.Percentile(
- kShortIdlePeriodDurationPercentile);
+ MainThreadOnly().idle_time_estimator.DidCommitFrameToCompositor();
}
void RendererSchedulerImpl::BeginFrameNotExpectedSoon() {
@@ -260,6 +254,10 @@ void RendererSchedulerImpl::BeginFrameNotExpectedSoon() {
return;
idle_helper_.EnableLongIdlePeriod();
+ {
+ base::AutoLock lock(any_thread_lock_);
+ AnyThread().begin_main_frame_on_critical_path = false;
+ }
}
void RendererSchedulerImpl::OnRendererHidden() {
@@ -559,14 +557,19 @@ void RendererSchedulerImpl::UpdatePolicyLocked(UpdateType update_type) {
use_case, now, &touchstart_expected_flag_valid_for_duration);
MainThreadOnly().touchstart_expected_soon = touchstart_expected_soon;
+ base::TimeDelta expected_idle_duration =
+ MainThreadOnly().idle_time_estimator.GetExpectedIdleDuration(
+ MainThreadOnly().compositor_frame_interval);
+ MainThreadOnly().expected_idle_duration = expected_idle_duration;
+
bool loading_tasks_seem_expensive =
MainThreadOnly().loading_task_cost_estimator.expected_task_duration() >
- MainThreadOnly().expected_short_idle_period_duration;
+ expected_idle_duration;
MainThreadOnly().loading_tasks_seem_expensive = loading_tasks_seem_expensive;
bool timer_tasks_seem_expensive =
MainThreadOnly().timer_task_cost_estimator.expected_task_duration() >
- MainThreadOnly().expected_short_idle_period_duration;
+ expected_idle_duration;
MainThreadOnly().timer_tasks_seem_expensive = timer_tasks_seem_expensive;
// The |new_policy_duration| is the minimum of |expected_use_case_duration|
@@ -639,7 +642,8 @@ void RendererSchedulerImpl::UpdatePolicyLocked(UpdateType update_type) {
if (block_expensive_tasks && loading_tasks_seem_expensive)
new_policy.loading_queue_priority = TaskQueue::DISABLED_PRIORITY;
- if (MainThreadOnly().timer_queue_suspend_count != 0 ||
+ if ((block_expensive_tasks && timer_tasks_seem_expensive) ||
+ MainThreadOnly().timer_queue_suspend_count != 0 ||
MainThreadOnly().timer_queue_suspended_when_backgrounded) {
new_policy.timer_queue_priority = TaskQueue::DISABLED_PRIORITY;
}
@@ -758,6 +762,10 @@ RendererSchedulerImpl::GetTimerTaskCostEstimatorForTesting() {
return &MainThreadOnly().timer_task_cost_estimator;
}
+IdleTimeEstimator* RendererSchedulerImpl::GetIdleTimeEstimatorForTesting() {
+ return &MainThreadOnly().idle_time_estimator;
+}
+
void RendererSchedulerImpl::SuspendTimerQueue() {
MainThreadOnly().timer_queue_suspend_count++;
ForceUpdatePolicy();
@@ -838,9 +846,11 @@ RendererSchedulerImpl::AsValueLocked(base::TimeTicks optional_now) const {
.timer_task_cost_estimator.expected_task_duration()
.InMillisecondsF());
// TODO(skyostil): Can we somehow trace how accurate these estimates were?
+ state->SetDouble("expected_idle_duration",
+ MainThreadOnly().expected_idle_duration.InMillisecondsF());
state->SetDouble(
- "expected_short_idle_period_duration",
- MainThreadOnly().expected_short_idle_period_duration.InMillisecondsF());
+ "compositor_frame_interval",
+ MainThreadOnly().compositor_frame_interval.InMillisecondsF());
state->SetDouble(
"estimated_next_frame_begin",
(MainThreadOnly().estimated_next_frame_begin - base::TimeTicks())
@@ -917,10 +927,7 @@ void RendererSchedulerImpl::ResetForNavigationLocked() {
any_thread_lock_.AssertAcquired();
MainThreadOnly().loading_task_cost_estimator.Clear();
MainThreadOnly().timer_task_cost_estimator.Clear();
- MainThreadOnly().short_idle_period_duration.Clear();
- // Make sure that we don't initially assume there is no idle time.
- MainThreadOnly().short_idle_period_duration.InsertSample(
- cc::BeginFrameArgs::DefaultInterval());
+ MainThreadOnly().idle_time_estimator.Clear();
AnyThread().user_model.Reset();
MainThreadOnly().have_seen_a_begin_main_frame = false;
UpdatePolicyLocked(UpdateType::MAY_EARLY_OUT_IF_POLICY_UNCHANGED);
diff --git a/chromium/components/scheduler/renderer/renderer_scheduler_impl.h b/chromium/components/scheduler/renderer/renderer_scheduler_impl.h
index dbe1c003cd6..11061670619 100644
--- a/chromium/components/scheduler/renderer/renderer_scheduler_impl.h
+++ b/chromium/components/scheduler/renderer/renderer_scheduler_impl.h
@@ -11,6 +11,7 @@
#include "components/scheduler/child/idle_helper.h"
#include "components/scheduler/child/scheduler_helper.h"
#include "components/scheduler/renderer/deadline_task_runner.h"
+#include "components/scheduler/renderer/idle_time_estimator.h"
#include "components/scheduler/renderer/renderer_scheduler.h"
#include "components/scheduler/renderer/task_cost_estimator.h"
#include "components/scheduler/renderer/user_model.h"
@@ -75,6 +76,7 @@ class SCHEDULER_EXPORT RendererSchedulerImpl
SchedulerHelper* GetSchedulerHelperForTesting();
TaskCostEstimator* GetLoadingTaskCostEstimatorForTesting();
TaskCostEstimator* GetTimerTaskCostEstimatorForTesting();
+ IdleTimeEstimator* GetIdleTimeEstimatorForTesting();
base::TimeTicks CurrentIdleTaskDeadlineForTesting() const;
private:
@@ -142,6 +144,10 @@ class SCHEDULER_EXPORT RendererSchedulerImpl
// other tasks during the initial page load.
static const int kRailsInitialLoadingPrioritizationMillis = 1000;
+ // The amount of time in milliseconds we have to respond to user input as
+ // defined by RAILS.
+ static const int kRailsResponseTimeMillis = 50;
+
// For the purposes of deciding whether or not it's safe to turn timers and
// loading tasks on only in idle periods, we regard the system as being as
// being "idle period" starved if there hasn't been an idle period in the last
@@ -229,17 +235,19 @@ class SCHEDULER_EXPORT RendererSchedulerImpl
// (the accessors) for the following data members.
struct MainThreadOnly {
- MainThreadOnly();
+ explicit MainThreadOnly(
+ const scoped_refptr<TaskQueue>& compositor_task_runner);
~MainThreadOnly();
TaskCostEstimator loading_task_cost_estimator;
TaskCostEstimator timer_task_cost_estimator;
- cc::RollingTimeDeltaHistory short_idle_period_duration;
+ IdleTimeEstimator idle_time_estimator;
UseCase current_use_case;
Policy current_policy;
base::TimeTicks current_policy_expiration_time;
base::TimeTicks estimated_next_frame_begin;
- base::TimeDelta expected_short_idle_period_duration;
+ base::TimeDelta compositor_frame_interval;
+ base::TimeDelta expected_idle_duration;
int timer_queue_suspend_count; // TIMER_TASK_QUEUE suspended if non-zero.
int navigation_task_expected_count;
bool renderer_hidden;
diff --git a/chromium/components/scheduler/renderer/renderer_scheduler_impl_unittest.cc b/chromium/components/scheduler/renderer/renderer_scheduler_impl_unittest.cc
index 4956bf135d1..460a67f74c2 100644
--- a/chromium/components/scheduler/renderer/renderer_scheduler_impl_unittest.cc
+++ b/chromium/components/scheduler/renderer/renderer_scheduler_impl_unittest.cc
@@ -266,6 +266,8 @@ class RendererSchedulerImplTest : public testing::Test {
make_scoped_ptr(new TestTimeSource(clock_.get())));
scheduler_->GetTimerTaskCostEstimatorForTesting()->SetTimeSourceForTesting(
make_scoped_ptr(new TestTimeSource(clock_.get())));
+ scheduler_->GetIdleTimeEstimatorForTesting()->SetTimeSourceForTesting(
+ make_scoped_ptr(new TestTimeSource(clock_.get())));
}
void TearDown() override {
@@ -294,7 +296,7 @@ class RendererSchedulerImplTest : public testing::Test {
void DoMainFrame() {
cc::BeginFrameArgs begin_frame_args = cc::BeginFrameArgs::Create(
BEGINFRAME_FROM_HERE, clock_->NowTicks(), base::TimeTicks(),
- base::TimeDelta::FromMilliseconds(1000), cc::BeginFrameArgs::NORMAL);
+ base::TimeDelta::FromMilliseconds(16), cc::BeginFrameArgs::NORMAL);
begin_frame_args.on_critical_path = false;
scheduler_->WillBeginFrame(begin_frame_args);
scheduler_->DidCommitFrameToCompositor();
@@ -303,7 +305,7 @@ class RendererSchedulerImplTest : public testing::Test {
void ForceMainThreadScrollingUseCase() {
cc::BeginFrameArgs begin_frame_args = cc::BeginFrameArgs::Create(
BEGINFRAME_FROM_HERE, clock_->NowTicks(), base::TimeTicks(),
- base::TimeDelta::FromMilliseconds(1000), cc::BeginFrameArgs::NORMAL);
+ base::TimeDelta::FromMilliseconds(16), cc::BeginFrameArgs::NORMAL);
begin_frame_args.on_critical_path = true;
scheduler_->WillBeginFrame(begin_frame_args);
}
@@ -337,6 +339,27 @@ class RendererSchedulerImplTest : public testing::Test {
mock_task_runner_->SetAutoAdvanceNowToPendingTasks(false);
}
+ void WillBeginMainThreadGestureFrame() {
+ scheduler_->DidAnimateForInputOnCompositorThread();
+ cc::BeginFrameArgs begin_frame_args = cc::BeginFrameArgs::Create(
+ BEGINFRAME_FROM_HERE, clock_->NowTicks(), base::TimeTicks(),
+ base::TimeDelta::FromMilliseconds(16), cc::BeginFrameArgs::NORMAL);
+ begin_frame_args.on_critical_path = true;
+ scheduler_->WillBeginFrame(begin_frame_args);
+ }
+
+ void SimulateMainThreadGestureCompositorTask(
+ base::TimeDelta begin_main_frame_duration) {
+ WillBeginMainThreadGestureFrame();
+ clock_->Advance(begin_main_frame_duration);
+ scheduler_->DidCommitFrameToCompositor();
+ }
+
+ void SimulateTimerTask(base::TimeDelta duration) {
+ clock_->Advance(duration);
+ simulate_timer_task_ran_ = true;
+ }
+
void EnableIdleTasks() { DoMainFrame(); }
UseCase CurrentUseCase() {
@@ -364,6 +387,10 @@ class RendererSchedulerImplTest : public testing::Test {
return scheduler_->MainThreadOnly().timer_tasks_seem_expensive;
}
+ base::TimeTicks EstimatedNextFrameBegin() {
+ return scheduler_->MainThreadOnly().estimated_next_frame_begin;
+ }
+
// Helper for posting several tasks of specific types. |task_descriptor| is a
// string with space delimited task identifiers. The first letter of each
// task identifier specifies the task type:
@@ -466,6 +493,7 @@ class RendererSchedulerImplTest : public testing::Test {
scoped_refptr<base::SingleThreadTaskRunner> loading_task_runner_;
scoped_refptr<SingleThreadIdleTaskRunner> idle_task_runner_;
scoped_refptr<base::SingleThreadTaskRunner> timer_task_runner_;
+ bool simulate_timer_task_ran_;
DISALLOW_COPY_AND_ASSIGN(RendererSchedulerImplTest);
};
@@ -736,10 +764,9 @@ TEST_F(RendererSchedulerImplTest, TestCompositorPolicy_DidAnimateForInput) {
EXPECT_EQ(RendererScheduler::UseCase::COMPOSITOR_GESTURE, CurrentUseCase());
}
-// TODO(skyostil): Re-enable once timer blocking is re-enabled.
TEST_F(
RendererSchedulerImplTest,
- DISABLED_TestCompositorPolicy_ExpensiveTimersDontRunWhenMainThreadOnCriticalPath) {
+ TestCompositorPolicy_ExpensiveTimersDontRunWhenMainThreadOnCriticalPath) {
std::vector<std::string> run_order;
SimulateExpensiveTasks(timer_task_runner_);
@@ -748,12 +775,7 @@ TEST_F(
PostTestTasks(&run_order, "C1 T1");
// Trigger main_thread_gesture UseCase
- scheduler_->DidAnimateForInputOnCompositorThread();
- cc::BeginFrameArgs begin_frame_args1 = cc::BeginFrameArgs::Create(
- BEGINFRAME_FROM_HERE, clock_->NowTicks(), base::TimeTicks(),
- base::TimeDelta::FromMilliseconds(16), cc::BeginFrameArgs::NORMAL);
- begin_frame_args1.on_critical_path = true;
- scheduler_->WillBeginFrame(begin_frame_args1);
+ WillBeginMainThreadGestureFrame();
RunUntilIdle();
EXPECT_EQ(RendererScheduler::UseCase::MAIN_THREAD_GESTURE, CurrentUseCase());
@@ -773,12 +795,7 @@ TEST_F(RendererSchedulerImplTest, Navigation_ResetsTaskCostEstimations) {
scheduler_->OnNavigationStarted();
PostTestTasks(&run_order, "C1 T1");
- scheduler_->DidAnimateForInputOnCompositorThread();
- cc::BeginFrameArgs begin_frame_args1 = cc::BeginFrameArgs::Create(
- BEGINFRAME_FROM_HERE, clock_->NowTicks(), base::TimeTicks(),
- base::TimeDelta::FromMilliseconds(1000), cc::BeginFrameArgs::NORMAL);
- begin_frame_args1.on_critical_path = true;
- scheduler_->WillBeginFrame(begin_frame_args1);
+ WillBeginMainThreadGestureFrame();
scheduler_->DidCommitFrameToCompositor(); // Starts Idle Period
RunUntilIdle();
@@ -2101,5 +2118,62 @@ TEST_F(
EXPECT_THAT(run_order, testing::ElementsAre(std::string("D1")));
}
+TEST_F(RendererSchedulerImplTest, ModeratelyExpensiveTimer_NotBlocked) {
+ for (int i = 0; i < 20; i++) {
+ simulate_timer_task_ran_ = false;
+ compositor_task_runner_->PostTask(
+ FROM_HERE,
+ base::Bind(
+ &RendererSchedulerImplTest::SimulateMainThreadGestureCompositorTask,
+ base::Unretained(this), base::TimeDelta::FromMilliseconds(4)));
+ timer_task_runner_->PostTask(
+ FROM_HERE, base::Bind(&RendererSchedulerImplTest::SimulateTimerTask,
+ base::Unretained(this),
+ base::TimeDelta::FromMilliseconds(10)));
+
+ RunUntilIdle();
+ EXPECT_TRUE(simulate_timer_task_ran_);
+ EXPECT_EQ(RendererScheduler::UseCase::MAIN_THREAD_GESTURE,
+ CurrentUseCase());
+ EXPECT_FALSE(LoadingTasksSeemExpensive());
+ EXPECT_FALSE(TimerTasksSeemExpensive());
+
+ base::TimeDelta time_till_next_frame =
+ EstimatedNextFrameBegin() - clock_->NowTicks();
+ if (time_till_next_frame > base::TimeDelta())
+ clock_->Advance(time_till_next_frame);
+ }
+}
+TEST_F(RendererSchedulerImplTest, ExpensiveTimer_Blocked) {
+ for (int i = 0; i < 20; i++) {
+ simulate_timer_task_ran_ = false;
+ compositor_task_runner_->PostTask(
+ FROM_HERE,
+ base::Bind(
+ &RendererSchedulerImplTest::SimulateMainThreadGestureCompositorTask,
+ base::Unretained(this), base::TimeDelta::FromMilliseconds(8)));
+ timer_task_runner_->PostTask(
+ FROM_HERE, base::Bind(&RendererSchedulerImplTest::SimulateTimerTask,
+ base::Unretained(this),
+ base::TimeDelta::FromMilliseconds(10)));
+
+ RunUntilIdle();
+ EXPECT_EQ(RendererScheduler::UseCase::MAIN_THREAD_GESTURE,
+ CurrentUseCase());
+ EXPECT_FALSE(LoadingTasksSeemExpensive());
+ if (i == 0) {
+ EXPECT_FALSE(TimerTasksSeemExpensive());
+ EXPECT_TRUE(simulate_timer_task_ran_);
+ } else {
+ EXPECT_TRUE(TimerTasksSeemExpensive());
+ EXPECT_FALSE(simulate_timer_task_ran_);
+ }
+
+ base::TimeDelta time_till_next_frame =
+ EstimatedNextFrameBegin() - clock_->NowTicks();
+ if (time_till_next_frame > base::TimeDelta())
+ clock_->Advance(time_till_next_frame);
+ }
+}
} // namespace scheduler
diff --git a/chromium/components/scheduler/scheduler.gypi b/chromium/components/scheduler/scheduler.gypi
index 13ca288e6c3..b9b8cdd07d6 100644
--- a/chromium/components/scheduler/scheduler.gypi
+++ b/chromium/components/scheduler/scheduler.gypi
@@ -48,6 +48,8 @@
'ppapi/webthread_impl_for_ppapi.h',
'renderer/deadline_task_runner.cc',
'renderer/deadline_task_runner.h',
+ 'renderer/idle_time_estimator.cc',
+ 'renderer/idle_time_estimator.h',
'renderer/renderer_scheduler.cc',
'renderer/renderer_scheduler.h',
'renderer/renderer_scheduler_impl.cc',
diff --git a/chromium/components/strings/components_strings_am.xtb b/chromium/components/strings/components_strings_am.xtb
index c2813bb01d6..58fb3db2f09 100644
--- a/chromium/components/strings/components_strings_am.xtb
+++ b/chromium/components/strings/components_strings_am.xtb
@@ -24,6 +24,9 @@
<translation id="1455235771979731432">የእርስዎን ካርድ ማረጋገጥ ላይ ችግር ነበር። የእርስዎን የበይነመረብ ግንኙነት ይፈትሹ እና እንደገና ይሞክሩ።</translation>
<translation id="1491151370853475546">ይህን ገጽ ዳግም ይጫኑ</translation>
<translation id="1549470594296187301">ይህን ባህሪ ለመጠቀም ጃቫስክሪፕት መንቃት አለበት።</translation>
+<translation id="1559572115229829303">&lt;p&gt;የእርስዎ መሣሪያ ቀን እና ሰዓት (<ph name="DATE_AND_TIME" />) ትክክል ስላልሆኑ ወደ <ph name="BEGIN_BOLD" /><ph name="DOMAIN" /><ph name="END_BOLD" /> የግል ግንኙነት ሊመሰረት አይችልም።&lt;/p&gt;
+
+ &lt;p&gt;እባክዎ በ&lt;strong&gt;ቅንብሮች&lt;/strong&gt; መተግበሪያው የ&lt;strong&gt;አጠቃላይ&lt;/strong&gt; ክፍል ላይ ቀን እና ሰዓቱን ያስተካክሉ።&lt;/p&gt;</translation>
<translation id="1640180200866533862">የተጠቃሚ መምሪያዎች</translation>
<translation id="1644184664548287040">የአውታረ መረቡ ውቅር ልክ ያልሆነ እና ሊመጣ የማይችል ነው።</translation>
<translation id="1655462015569774233">{1,plural, =1{ይህ አገልጋይ <ph name="DOMAIN" /> መሆኑን ለማረጋገጥ አይችልም፤ የደህንነት ማረጋገጫ እውቅና ማረጋገጫው ትላንትና ጊዜው አልፎበታል። ይሄ በተሳሳተ አወቃቀር ወይም አንድ አጥቂ ግንኙነትዎን በመጥለፉ የተከሰተ ሊሆን ይችላል። የኮምፒውተርዎ ሰዓት አሁን በ<ph name="CURRENT_DATE" /> ተቀናብሯል። ትክክል ይመስልዎታል? ትክክል ካልሆነ፣ የእርስዎን ስርዓት ሰዓት ማስተካከል እና ይህንን ገፅ ማደስ አለብዎ።}one{ይህ አገልጋይ <ph name="DOMAIN" /> መሆኑን ለማረጋገጥ አይችልም፤ የደህንነት ማረጋገጫ እውቅና ማረጋገጫው ከ# ቀኖች በፊት ጊዜው አልፏል። ይሄ በተሳሳተ አወቃቀር ወይም አንድ አጥቂ ግንኙነትዎን በመጥለፉ የተከሰተ ሊሆን ይችላል። የኮምፒውተርዎ ሰዓት አሁን በ<ph name="CURRENT_DATE" /> ተቀናብሯል። ትክክል ይመስልዎታል? ትክክል ካልሆነ፣ የእርስዎን ስርዓት ሰዓት ማስተካከል እና ይህንን ገፅ ማደስ አለብዎ።}other{ይህ አገልጋይ <ph name="DOMAIN" /> መሆኑን ለማረጋገጥ አይችልም፤ የደህንነት ማረጋገጫ እውቅና ማረጋገጫው ከ# ቀኖች በፊት ጊዜው አልፏል። ይሄ በተሳሳተ አወቃቀር ወይም አንድ አጥቂ ግንኙነትዎን በመጥለፉ የተከሰተ ሊሆን ይችላል። የኮምፒውተርዎ ሰዓት አሁን በ<ph name="CURRENT_DATE" /> ተቀናብሯል። ትክክል ይመስልዎታል? ትክክል ካልሆነ፣ የእርስዎን ስርዓት ሰዓት ማስተካከል እና ይህንን ገፅ ማደስ አለብዎ።}}</translation>
@@ -90,6 +93,7 @@
<translation id="2922350208395188000">የአገልጋይ እውቅና ማረጋገጫ ሊረጋገጥ አልቻለም።</translation>
<translation id="2941952326391522266">ይህ አገልጋይ <ph name="DOMAIN" /> መሆኑን ሊያረጋግጥ አልቻለም፤ የደህንነት እውቅና ማረጋገጫው በ<ph name="DOMAIN2" /> ነው የተሰጠው። ይሄ በተሳሳተ አወቃቀር ወይም አንድ አጥቂ ግንኙነትዎን በመጥለፉ የተከሰተ ሊሆን ይችላል።</translation>
<translation id="2958431318199492670">የአውታረ መረብ ውቅሩ በኦ ኤን ሲ መስፈርቱ አይገዛም። አንዳንድ የውቅሩ ክፍሎች ላይመጡ ይችላሉ።</translation>
+<translation id="2969319727213777354">ደህንነቱ የተጠበቀ ግንኙነት ለመመስረት የእርስዎ ሰዓት በትክክል መዋቀር አለበት። ይሄ የሆነበት ምክንያት ድር ጣቢያዎች ራሳቸውን ለማሳወቅ የሚጠቀሙባቸው የእውቅና ማረጋገጫዎች የሚሰሩት ለተወሰኑ ጊዜዎች ብቻ ስለሆነ ነው። የእርስዎ መሣሪያ ሰዓት ትክክል እንዳለመሆኑ መጠን Google Chrome እነዚህን የእውቅና ማረጋገጫዎች ሊያረጋግጥ አይችልም።</translation>
<translation id="2972581237482394796">&amp;ድገም</translation>
<translation id="3010559122411665027">የዝርዝር ግቤት «<ph name="ENTRY_INDEX" />»፦ <ph name="ERROR" /></translation>
<translation id="3024663005179499861">የተሳሳተ የመምሪያ አይነት</translation>
diff --git a/chromium/components/strings/components_strings_ar.xtb b/chromium/components/strings/components_strings_ar.xtb
index 5a433fe318b..bd43141cf1b 100644
--- a/chromium/components/strings/components_strings_ar.xtb
+++ b/chromium/components/strings/components_strings_ar.xtb
@@ -24,6 +24,9 @@
<translation id="1455235771979731432">حدثت مشكلة أثناء التحقق من بطاقتك. تحقق من اتصالك بالإنترنت وأعد المحاولة.</translation>
<translation id="1491151370853475546">إعادة تحميل هذه الصفحة</translation>
<translation id="1549470594296187301">‏يجب تمكين JavaScript لاستخدام هذه الميزة.</translation>
+<translation id="1559572115229829303">‏&lt;p&gt;تعذر إنشاء اتصال خاص بـ <ph name="BEGIN_BOLD" /><ph name="DOMAIN" /><ph name="END_BOLD" /> نظرًا لأن تاريخ ووقت جهازك (<ph name="DATE_AND_TIME" />) غير صحيحين.&lt;/p&gt;
+
+ &lt;p&gt;يُرجى تعديل التاريخ والوقت من القسم &lt;strong&gt;عام&lt;/strong&gt; في تطبيق &lt;strong&gt;الإعدادات&lt;/strong&gt; .&lt;/p&gt;</translation>
<translation id="1640180200866533862">سياسات المستخدم</translation>
<translation id="1644184664548287040">تهيئة الشبكة غير صالحة ويتعذر استيرادها.</translation>
<translation id="1655462015569774233">{1,plural, =1{هذا الخادم لم يتمكن من إثبات أن ذلك <ph name="DOMAIN" />؛ انتهت صلاحية شهادة أمانه أمس. ربما يكون السبب في ذلك خطأ في التهيئة أو مهاجمًا يعترض اتصالك. تم تعيين ساعة الكمبيوتر لديك حاليًا على <ph name="CURRENT_DATE" />. هل يبدو ذلك صحيحًا؟ إذا لم يكن الأمر كذلك، يجب تصحيح ساعة النظام لديك ثم تحديث هذه الصفحة.}zero{هذا الخادم لم يتمكن من إثبات أن ذلك <ph name="DOMAIN" />؛ انتهت صلاحية شهادة أمانه منذ # يوم. ربما يكون السبب في ذلك خطأ في التهيئة أو مهاجمًا يعترض اتصالك. تم تعيين ساعة الكمبيوتر لديك حاليًا على <ph name="CURRENT_DATE" />. هل يبدو ذلك صحيحًا؟ إذا لم يكن الأمر كذلك، يجب تصحيح ساعة النظام لديك ثم تحديث هذه الصفحة.}two{هذا الخادم لم يتمكن من إثبات أن ذلك <ph name="DOMAIN" />؛ انتهت صلاحية شهادة أمانه منذ يومين (#). ربما يكون السبب في ذلك خطأ في التهيئة أو مهاجمًا يعترض اتصالك. تم تعيين ساعة الكمبيوتر لديك حاليًا على <ph name="CURRENT_DATE" />. هل يبدو ذلك صحيحًا؟ إذا لم يكن الأمر كذلك، يجب تصحيح ساعة النظام لديك ثم تحديث هذه الصفحة.}few{هذا الخادم لم يتمكن من إثبات أن ذلك <ph name="DOMAIN" />؛ انتهت صلاحية شهادة أمانه منذ # أيام. ربما يكون السبب في ذلك خطأ في التهيئة أو مهاجمًا يعترض اتصالك. تم تعيين ساعة الكمبيوتر لديك حاليًا على <ph name="CURRENT_DATE" />. هل يبدو ذلك صحيحًا؟ إذا لم يكن الأمر كذلك، يجب تصحيح ساعة النظام لديك ثم تحديث هذه الصفحة.}many{هذا الخادم لم يتمكن من إثبات أن ذلك <ph name="DOMAIN" />؛ انتهت صلاحية شهادة أمانه منذ # يومًا. ربما يكون السبب في ذلك خطأ في التهيئة أو مهاجمًا يعترض اتصالك. تم تعيين ساعة الكمبيوتر لديك حاليًا على <ph name="CURRENT_DATE" />. هل يبدو ذلك صحيحًا؟ إذا لم يكن الأمر كذلك، يجب تصحيح ساعة النظام لديك ثم تحديث هذه الصفحة.}other{هذا الخادم لم يتمكن من إثبات أن ذلك <ph name="DOMAIN" />؛ انتهت صلاحية شهادة أمانه منذ # يوم. ربما يكون السبب في ذلك خطأ في التهيئة أو مهاجمًا يعترض اتصالك. تم تعيين ساعة الكمبيوتر لديك حاليًا على <ph name="CURRENT_DATE" />. هل يبدو ذلك صحيحًا؟ إذا لم يكن الأمر كذلك، يجب تصحيح ساعة النظام لديك ثم تحديث هذه الصفحة.}}</translation>
@@ -90,6 +93,7 @@
<translation id="2922350208395188000">لا يمكن التحقق من شهادة الخادم.</translation>
<translation id="2941952326391522266">هذا الخادم لم يتمكن من إثبات أن ذلك <ph name="DOMAIN" />؛ بل إنه شهادة أمان من <ph name="DOMAIN2" />. وربما سبب ذلك خطأ في التكوين أو مهاجمًا يعترض اتصالك.</translation>
<translation id="2958431318199492670">‏لا تتوافق تهيئة الشبكة مع معيار ONC. قد لا يتم استيراد بعض أجزاء التهيئة.</translation>
+<translation id="2969319727213777354">‏لإنشاء اتصال آمن، فإنك بحاجة إلى ضبط ساعتك بشكل صحيح. وذلك لأن الشهادات التي تستخدمها مواقع الويب لتعريف نفسها تكون صالحة فقط لفترات محددة من الوقت. فإذا كانت ساعة جهازك غير صحيحة، فلن يتمكن Google Chrome من التحقق من هذه الشهادات.</translation>
<translation id="2972581237482394796">إعا&amp;دة</translation>
<translation id="3010559122411665027">إدخال القائمة "<ph name="ENTRY_INDEX" />": <ph name="ERROR" /></translation>
<translation id="3024663005179499861">نوع السياسة غير صحيح</translation>
diff --git a/chromium/components/strings/components_strings_bg.xtb b/chromium/components/strings/components_strings_bg.xtb
index cb32f2d17fa..a6cf4ab902a 100644
--- a/chromium/components/strings/components_strings_bg.xtb
+++ b/chromium/components/strings/components_strings_bg.xtb
@@ -24,6 +24,9 @@
<translation id="1455235771979731432">При потвърждаването на картата ви възникна проблем. Проверете връзката си с интернет и опитайте отново.</translation>
<translation id="1491151370853475546">Презареждане на тази страница</translation>
<translation id="1549470594296187301">Трябва да активирате JavaScript, за да използвате тази функция.</translation>
+<translation id="1559572115229829303">&lt;p&gt;Не може да се установи частна връзка с/ъс <ph name="BEGIN_BOLD" /><ph name="DOMAIN" /><ph name="END_BOLD" />, тъй като датата и часът на устройството ви (<ph name="DATE_AND_TIME" />) са неправилни.&lt;/p&gt;
+
+&lt;p&gt;Моля, коригирайте датата и часа от секцията &lt;strong&gt;General&lt;/strong&gt; на приложението &lt;strong&gt;Settings&lt;/strong&gt;.&lt;/p&gt;</translation>
<translation id="1640180200866533862">Правила за потребителите</translation>
<translation id="1644184664548287040">Конфигурацията на мрежата е невалидна и не можа да се импортира.</translation>
<translation id="1655462015569774233">{1,plural, =1{Сървърът не можа да докаже, че е <ph name="DOMAIN" />. Сертификатът му за сигурност е изтекъл вчера. Това може да се дължи на неправилно конфигуриране или на прехващане на връзката ви от извършител на атака. Понастоящем часовникът на компютъра ви показва <ph name="CURRENT_DATE" />. Това изглежда ли правилно? Ако не е, трябва да сверите системния часовник и след това да опресните страницата.}other{Сървърът не можа да докаже, че е <ph name="DOMAIN" />. Сертификатът му за сигурност е изтекъл преди # дни. Това може да се дължи на неправилно конфигуриране или на прехващане на връзката ви от извършител на атака. Понастоящем часовникът на компютъра ви показва <ph name="CURRENT_DATE" />. Това изглежда ли правилно? Ако не е, трябва да сверите системния часовник и след това да опресните страницата.}}</translation>
@@ -90,6 +93,7 @@
<translation id="2922350208395188000">Сертификатът на сървъра не може да бъде проверен.</translation>
<translation id="2941952326391522266">Сървърът не можа да докаже, че е <ph name="DOMAIN" />; сертификатът му за сигурност е от <ph name="DOMAIN2" />. Това може да се дължи на неправилно конфигуриране или на прихващане на връзката ви от атакуващ.</translation>
<translation id="2958431318199492670">Конфигурацията на мрежата не спазва стандарта на ONC. Възможно е части от нея да не са импортирани.</translation>
+<translation id="2969319727213777354">За установяване на сигурна връзка е необходимо часовникът ви да е верен. Това е така, защото сертификатите, с които уебсайтовете се идентифицират, са валидни само за конкретни периоди от време. Тъй като часовникът на устройството ви не е верен, Google Chrome не може да потвърди тези сертификати.</translation>
<translation id="2972581237482394796">&amp;Възстановяване</translation>
<translation id="3010559122411665027">Списъчен запис „<ph name="ENTRY_INDEX" />“: <ph name="ERROR" /></translation>
<translation id="3024663005179499861">Грешен тип на правилото</translation>
diff --git a/chromium/components/strings/components_strings_bn.xtb b/chromium/components/strings/components_strings_bn.xtb
index ad05886be3c..f157e51a167 100644
--- a/chromium/components/strings/components_strings_bn.xtb
+++ b/chromium/components/strings/components_strings_bn.xtb
@@ -24,6 +24,9 @@
<translation id="1455235771979731432">আপনার কার্ডটি যাচাই করতে একটি সমস্যা হয়েছিল৷ আপনার ইন্টারনেট সংযোগ পরীক্ষা করুন এবং আবার চেষ্টা করুন৷</translation>
<translation id="1491151370853475546">এই পৃষ্ঠাটি পুনঃ লোড করুন</translation>
<translation id="1549470594296187301">এই বৈশিষ্ট্যটি ব্যবহার করার জন্য JavaScript সক্ষম করা প্রয়োজন।</translation>
+<translation id="1559572115229829303">&lt;p&gt;<ph name="BEGIN_BOLD" /><ph name="DOMAIN" /><ph name="END_BOLD" /> এ একটি ব্যক্তিগত সংযোগ স্থাপন করা যায়নি কারণ আপনার ডিভাইসের তারিখ এবং সময় (<ph name="DATE_AND_TIME" />) সঠিক নয়৷&lt;/p&gt;
+
+&lt;p&gt;দয়া করে &lt;strong&gt;সেটিংস&lt;/strong&gt; অ্যাপ্লিকেশানের &lt;strong&gt;সাধারণ&lt;/strong&gt; বিভাগ থেকে তারিখ এবং সময় সংশোধন করুন৷&lt;/p&gt;</translation>
<translation id="1640180200866533862">ব্যবহারকারীর নীতিসমূহ</translation>
<translation id="1644184664548287040">নেটওয়ার্ক কনফিগারেশনটি অবৈধ এবং আমদানি করা যায়নি৷</translation>
<translation id="1655462015569774233">{1,plural, =1{এই সার্ভার যে <ph name="DOMAIN" /> তা এটি প্রমাণ করতে পারেনি; এর নিরাপত্তা শংসাপত্রটি গতকাল মেয়াদোত্তীর্ণ হয়েছে। কোনো ভুল কনফিগারেশনের কারণে অথবা আপনার সংযোগে বাধাপ্রদানকারী কোনো আক্রমণকারীর কারণে এমনটি হতে পারে। আপনার কম্পিউটারের ঘড়ি বর্তমানে <ph name="CURRENT_DATE" /> এ সেট করা আছে। এটি কি ঠিক আছে বলে মনে হচ্ছে? যদি তা না হয়, তাহলে আপনার সিস্টেম ঘড়িটি ঠিক করা উচিত হবে এবং তারপর এই পৃষ্ঠাটি রিফ্রেশ করা উচিত।}one{এই সার্ভার যে <ph name="DOMAIN" /> তা এটি প্রমাণ করতে পারেনি; এর নিরাপত্তা শংসাপত্রটি # দিন আগে মেয়াদোত্তীর্ণ হয়েছে। কোনো ভুল কনফিগারেশনের কারণে অথবা আপনার সংযোগে বাধাপ্রদানকারী কোনো আক্রমণকারীর কারণে এমনটি হতে পারে। আপনার কম্পিউটারের ঘড়ি বর্তমানে <ph name="CURRENT_DATE" /> এ সেট করা আছে। এটি কি ঠিক আছে বলে মনে হচ্ছে? যদি তা না হয়, তাহলে আপনার সিস্টেম ঘড়িটি ঠিক করা উচিত হবে এবং তারপর এই পৃষ্ঠাটি রিফ্রেশ করা উচিত।}other{এই সার্ভার যে <ph name="DOMAIN" /> তা এটি প্রমাণ করতে পারেনি; এর নিরাপত্তা শংসাপত্রটি # দিন আগে মেয়াদোত্তীর্ণ হয়েছে। কোনো ভুল কনফিগারেশনের কারণে অথবা আপনার সংযোগে বাধাপ্রদানকারী কোনো আক্রমণকারীর কারণে এমনটি হতে পারে। আপনার কম্পিউটারের ঘড়ি বর্তমানে <ph name="CURRENT_DATE" /> এ সেট করা আছে। এটি কি ঠিক আছে বলে মনে হচ্ছে? যদি তা না হয়, তাহলে আপনার সিস্টেম ঘড়িটি ঠিক করা উচিত হবে এবং তারপর এই পৃষ্ঠাটি রিফ্রেশ করা উচিত।}}</translation>
@@ -91,6 +94,7 @@
<translation id="2922350208395188000">সার্ভারের শংসাপত্র চেক করা যাবে না৷</translation>
<translation id="2941952326391522266">এই সার্ভার প্রমাণ করতে পারেনি যে এটি <ph name="DOMAIN" />; এর নিরাপত্তা শংসাপত্র <ph name="DOMAIN2" /> থেকে পাওয়া। কোনো ভুল কনফিগারেশনের কারণে অথবা কোনো আক্রমণকারী আপনার সংযোগ মাঝপথে আটকে দিচ্ছে বলে এমনটা হতে পারে।</translation>
<translation id="2958431318199492670">নেটওয়ার্ক কনফিগারেশন ONC মানকের সাথে সম্মত নয়৷ কনফিগারেশনের অংশগুলি আমদানিকৃত নাও হতে পারে৷</translation>
+<translation id="2969319727213777354">নিরাপদ নেটওয়ার্ক সংযোগ স্থাপন করতে আপনার ঘড়িকে সঠিকভাবে সেট করতে হবে। এমন হওয়ার কারণ হলো, নিরাপদ সংযোগ স্থাপন করার জন্য নিজেদের সনাক্ত করার জন্য ওয়েবসাইটগুলি যে শংসাপত্রগুলি ব্যবহার করে, সেগুলি শুধুমাত্র নির্দিষ্ট সময়ের জন্য বৈধ থাকে। যেহেতু আপনার ডিভাইসের ঘড়িটি ভুল, সেই জন্য Google Chrome সঠিকভাবে শংসাপত্রগুলি পরীক্ষা করতে পারছে না।</translation>
<translation id="2972581237482394796">&amp;পুনরায় করুন</translation>
<translation id="3010559122411665027">তালিকার এন্ট্রি " <ph name="ENTRY_INDEX" /> ": <ph name="ERROR" /></translation>
<translation id="3024663005179499861">নীতির ভুল প্রকার</translation>
diff --git a/chromium/components/strings/components_strings_ca.xtb b/chromium/components/strings/components_strings_ca.xtb
index 20b865fd6fe..6ae5d96d9de 100644
--- a/chromium/components/strings/components_strings_ca.xtb
+++ b/chromium/components/strings/components_strings_ca.xtb
@@ -24,6 +24,9 @@
<translation id="1455235771979731432">S'ha produït un problema en verificar la targeta. Comproveu la connexió a Internet i torneu-ho a provar.</translation>
<translation id="1491151370853475546">Torna a carregar aquesta pàgina</translation>
<translation id="1549470594296187301">Heu d'activar el JavaScript per utilitzar aquesta funció.</translation>
+<translation id="1559572115229829303">&lt;p&gt;No es pot establir una connexió privada amb <ph name="BEGIN_BOLD" /><ph name="DOMAIN" /><ph name="END_BOLD" /> perquè la data i l'hora (<ph name="DATE_AND_TIME" />) del vostre dispositiu no són correctes.&lt;/p&gt;
+
+ &lt;p&gt;Canvieu la data i l'hora a la secció &lt;strong&gt;General&lt;/strong&gt; de l'aplicació &lt;strong&gt;Configuració&lt;/strong&gt;.&lt;/p&gt;</translation>
<translation id="1640180200866533862">Polítiques d'usuari</translation>
<translation id="1644184664548287040">La configuració de la xarxa no és vàlida i no s'ha pogut importar.</translation>
<translation id="1655462015569774233">{1,plural, =1{Aquest servidor no ha pogut demostrar que sigui <ph name="DOMAIN" /> perquè el seu certificat de seguretat va caducar ahir. Això pot ser a causa d'una configuració incorrecta o d'un atacant que intercepta la vostra connexió. Actualment, el rellotge del vostre ordinador està configurat amb la data <ph name="CURRENT_DATE" />. És correcta? Si no ho és, corregiu el rellotge del sistema i, a continuació, actualitzeu aquesta pàgina.}other{Aquest servidor no ha pogut demostrar que sigui <ph name="DOMAIN" /> perquè el seu certificat va caducar fa # dies. Això pot ser a causa d'una configuració incorrecta o d'un atacant que intercepta la vostra connexió. Actualment, el rellotge del vostre ordinador està configurat amb la data <ph name="CURRENT_DATE" />. És correcta? Si no ho és, corregiu el rellotge del sistema i, a continuació, actualitzeu aquesta pàgina.}}</translation>
@@ -90,6 +93,7 @@
<translation id="2922350208395188000">No es pot comprovar el certificat del servidor.</translation>
<translation id="2941952326391522266">Aquest servidor no ha pogut comprovar que sigui <ph name="DOMAIN" /> perquè el seu certificat de seguretat prové del domini <ph name="DOMAIN2" />. Això pot ser a causa d'una configuració incorrecta o d'un atacant que intercepta la vostra connexió.</translation>
<translation id="2958431318199492670">La configuració de la xarxa no compleix l'estàndard ONC. Pot ser que algunes opcions de configuració no s'hagin importat.</translation>
+<translation id="2969319727213777354">Per establir una connexió segura, heu de tenir el rellotge ben configurat, ja que els certificats que els llocs web fan servir per identificar-se només són vàlids durant períodes de temps concrets. Com que el rellotge del dispositiu no està ben configurat, Google Chrome no pot verificar aquests certificats.</translation>
<translation id="2972581237482394796">&amp;Refés</translation>
<translation id="3010559122411665027">Entrada de llista "<ph name="ENTRY_INDEX" />": <ph name="ERROR" /></translation>
<translation id="3024663005179499861">Tipus de política incorrecte</translation>
diff --git a/chromium/components/strings/components_strings_cs.xtb b/chromium/components/strings/components_strings_cs.xtb
index f736e938e7d..9e745eb2501 100644
--- a/chromium/components/strings/components_strings_cs.xtb
+++ b/chromium/components/strings/components_strings_cs.xtb
@@ -24,6 +24,9 @@
<translation id="1455235771979731432">Při ověřování vaší karty došlo k problému. Zkontrolujte připojení k internetu a zkuste to znovu.</translation>
<translation id="1491151370853475546">Načíst tuto stránku znovu</translation>
<translation id="1549470594296187301">Chcete-li tuto funkci použít, musí být aktivován JavaScript.</translation>
+<translation id="1559572115229829303">&lt;p&gt;Soukromé připojení k doméně <ph name="BEGIN_BOLD" /><ph name="DOMAIN" /><ph name="END_BOLD" /> nelze navázat, protože máte v zařízení nastaveno chybné datum a čas (<ph name="DATE_AND_TIME" />).&lt;/p&gt;
+
+ &lt;p&gt;Datum a čas upravte v aplikaci &lt;strong&gt;Nastavení&lt;/strong&gt; v sekci &lt;strong&gt;Obecné&lt;/strong&gt;.&lt;/p&gt;</translation>
<translation id="1640180200866533862">Zásady pro uživatele</translation>
<translation id="1644184664548287040">Konfigurace sítě je neplatná a nelze ji importovat.</translation>
<translation id="1655462015569774233">{1,plural, =1{Server nedokázal prokázat, že patří doméně <ph name="DOMAIN" />. Platnost jeho bezpečnostního certifikátu včera vypršela. Může to být způsobeno nesprávnou konfigurací nebo tím, že vaše připojení zachytává útočník. Hodiny ve vašem počítači jsou aktuálně nastaveny na <ph name="CURRENT_DATE" />. Je to správně? Pokud ne, měli byste nastavit správné hodiny systému a poté tuto stránku načíst znovu.}few{Server nedokázal prokázat, že patří doméně <ph name="DOMAIN" />. Platnost jeho bezpečnostního certifikátu vypršela před # dny. Může to být způsobeno nesprávnou konfigurací nebo tím, že vaše připojení zachytává útočník. Hodiny ve vašem počítači jsou aktuálně nastaveny na <ph name="CURRENT_DATE" />. Je to správně? Pokud ne, měli byste čas v počítači opravit a poté tuto stránku načíst znovu.}many{Server nedokázal prokázat, že patří doméně <ph name="DOMAIN" />. Platnost jeho bezpečnostního certifikátu vypršela před # dnem. Může to být způsobeno nesprávnou konfigurací nebo tím, že vaše připojení zachytává útočník. Hodiny ve vašem počítači jsou aktuálně nastaveny na <ph name="CURRENT_DATE" />. Je to správně? Pokud ne, měli byste nastavit správné hodiny systému a poté tuto stránku načíst znovu.}other{Server nedokázal prokázat, že patří doméně <ph name="DOMAIN" />. Platnost jeho bezpečnostního certifikátu vypršela před # dny. Může to být způsobeno nesprávnou konfigurací nebo tím, že vaše připojení zachytává útočník. Hodiny ve vašem počítači jsou aktuálně nastaveny na <ph name="CURRENT_DATE" />. Je to správně? Pokud ne, měli byste nastavit správné hodiny systému a poté tuto stránku načíst znovu.}}</translation>
@@ -90,6 +93,7 @@
<translation id="2922350208395188000">Certifikát serveru nelze zkontrolovat.</translation>
<translation id="2941952326391522266">Server nedokázal prokázat, že patří doméně <ph name="DOMAIN" />. Jeho bezpečnostní certifikát pochází z domény <ph name="DOMAIN2" />. Může to být způsobeno nesprávnou konfigurací nebo tím, že vaše připojení zachytává útočník.</translation>
<translation id="2958431318199492670">Konfigurace sítě nesplňuje standard ONC. Může se stát, že některé části konfigurace nebudou importovány.</translation>
+<translation id="2969319727213777354">Aby bylo možné navázat zabezpečené spojení, musejí být správně nastaveny hodiny. Důvodem je, že certifikáty, pomocí kterých se weby identifikují, platí pouze pro konkrétní období. Jelikož hodiny v zařízení nejsou nastaveny správně, Google Chrome tyto certifikáty nemůže ověřit.</translation>
<translation id="2972581237482394796">&amp;Opakovat</translation>
<translation id="3010559122411665027">Položka seznamu „<ph name="ENTRY_INDEX" />“: <ph name="ERROR" /></translation>
<translation id="3024663005179499861">Chybný typ zásady</translation>
diff --git a/chromium/components/strings/components_strings_da.xtb b/chromium/components/strings/components_strings_da.xtb
index 260a63f8e68..4d4e230ab62 100644
--- a/chromium/components/strings/components_strings_da.xtb
+++ b/chromium/components/strings/components_strings_da.xtb
@@ -24,6 +24,9 @@
<translation id="1455235771979731432">Dit kort kunne ikke godkendes. Kontrollér at du har forbindelse til internettet, og prøv igen.</translation>
<translation id="1491151370853475546">Genindlæs denne side</translation>
<translation id="1549470594296187301">JavaScript skal være aktiveret, før du kan bruge denne funktion.</translation>
+<translation id="1559572115229829303">&lt;p&gt;Der kan ikke oprettes en privat forbindelse til <ph name="BEGIN_BOLD" /><ph name="DOMAIN" /><ph name="END_BOLD" />, da datoen og tiden på din enhed (<ph name="DATE_AND_TIME" />) er forkert.&lt;/p&gt;
+
+ &lt;p&gt;Juster datoen og tiden i sektionen &lt;strong&gt;Generelt&lt;/strong&gt; i appen &lt;strong&gt;Indstillinger&lt;/strong&gt;.&lt;/p&gt;</translation>
<translation id="1640180200866533862">Brugerpolitikker</translation>
<translation id="1644184664548287040">Netværkskonfigurationen er ugyldig og kunne ikke importeres.</translation>
<translation id="1655462015569774233">{1,plural, =1{Denne server kunne ikke bevise, at den er <ph name="DOMAIN" />, da dens sikkerhedscertifikat udløb i går. Dette kan skyldes en fejlkonfiguration, eller at en hacker har opfanget din forbindelse. Computerens ur er angivet til <ph name="CURRENT_DATE" />. Er det korrekt? Hvis ikke, skal du rette systemets ur og derefter opdatere denne side.}one{Denne server kunne ikke bevise, at den er <ph name="DOMAIN" />, da dens sikkerhedscertifikat udløb for # dag siden. Dette kan skyldes en fejlkonfiguration, eller at en hacker har opfanget din forbindelse. Computerens ur er angivet til <ph name="CURRENT_DATE" />. Er det korrekt? Hvis ikke, skal du rette systemets ur og derefter opdatere denne side.}other{Denne server kunne ikke bevise, at den er <ph name="DOMAIN" />, da dens sikkerhedscertifikat udløb for # dage siden. Dette kan skyldes en fejlkonfiguration, eller at en hacker har opfanget din forbindelse. Computerens ur er angivet til <ph name="CURRENT_DATE" />. Er det korrekt? Hvis ikke, skal du rette systemets ur og derefter opdatere denne side.}}</translation>
@@ -90,6 +93,7 @@
<translation id="2922350208395188000">Serverens certifikat kan ikke kontrolleres.</translation>
<translation id="2941952326391522266">Denne server kunne ikke bevise, at den er <ph name="DOMAIN" />, da sikkerhedscertifikatet er fra <ph name="DOMAIN2" />. Dette kan skyldes en fejlkonfiguration, eller at en hacker har opfanget din forbindelse.</translation>
<translation id="2958431318199492670">Netværkskonfigurationen overholder ikke ONC-standarden. Dele af konfiguration kan muligvis ikke importeres.</translation>
+<translation id="2969319727213777354">Uret på din enhed skal være indstillet korrekt, før du kan oprette en sikker forbindelse. Dette er vigtigt, da de certifikater, websites bruger til at identificere sig selv, kun er gyldige i bestemte perioder. Da uret på din enhed er indstillet forkert, kan Chrome ikke bekræfte disse certifikater.</translation>
<translation id="2972581237482394796">&amp;Annuller fortryd</translation>
<translation id="3010559122411665027">Angiv posten "<ph name="ENTRY_INDEX" />": <ph name="ERROR" /></translation>
<translation id="3024663005179499861">Forkert politiktype</translation>
diff --git a/chromium/components/strings/components_strings_de.xtb b/chromium/components/strings/components_strings_de.xtb
index 795dcec278e..c6d762bf0c3 100644
--- a/chromium/components/strings/components_strings_de.xtb
+++ b/chromium/components/strings/components_strings_de.xtb
@@ -24,6 +24,9 @@
<translation id="1455235771979731432">Beim Bestätigen Ihrer Karte ist ein Problem aufgetreten. Überprüfen Sie Ihre Internetverbindung und versuchen Sie es erneut.</translation>
<translation id="1491151370853475546">Diese Seite aktualisieren</translation>
<translation id="1549470594296187301">Für diese Funktion muss JavaScript aktiviert sein.</translation>
+<translation id="1559572115229829303">&lt;p&gt;Es kann keine private Verbindung zu <ph name="BEGIN_BOLD" /><ph name="DOMAIN" /><ph name="END_BOLD" /> hergestellt werden, weil Datum und Uhrzeit (<ph name="DATE_AND_TIME" />) Ihres Geräts falsch sind.&lt;/p&gt;
+
+ &lt;p&gt;Stellen Sie in der App &lt;strong&gt;Einstellungen&lt;/strong&gt; im Bereich &lt;strong&gt;Allgemein&lt;/strong&gt; Datum und Uhrzeit richtig ein.&lt;/p&gt;</translation>
<translation id="1640180200866533862">Nutzerrichtlinien</translation>
<translation id="1644184664548287040">Die Netzwerkkonfiguration ist ungültig und konnte nicht importiert werden.</translation>
<translation id="1655462015569774233">{1,plural, =1{Dieser Server konnte nicht beweisen, dass er <ph name="DOMAIN" /> ist. Sein Sicherheitszertifikat ist gestern abgelaufen. Mögliche Gründe sind eine fehlerhafte Konfiguration oder ein Angreifer, der Ihre Verbindung abfängt. Die Uhr Ihres Computers ist derzeit auf <ph name="CURRENT_DATE" /> eingestellt. Ist das korrekt? Falls nicht, stellen Sie die Uhr Ihres Systems richtig ein und aktualisieren Sie anschließend diese Seite.}other{Dieser Server konnte nicht beweisen, dass er <ph name="DOMAIN" /> ist. Sein Sicherheitszertifikat ist vor # Tagen abgelaufen. Mögliche Gründe sind eine fehlerhafte Konfiguration oder ein Angreifer, der Ihre Verbindung abfängt. Die Uhr Ihres Computers ist derzeit auf <ph name="CURRENT_DATE" /> eingestellt. Ist das korrekt? Falls nicht, stellen Sie die Uhr Ihres Systems richtig ein und aktualisieren Sie anschließend diese Seite.}}</translation>
@@ -90,6 +93,7 @@
<translation id="2922350208395188000">Das Serverzertifikat kann nicht überprüft werden.</translation>
<translation id="2941952326391522266">Dieser Server konnte nicht beweisen, dass er <ph name="DOMAIN" /> ist. Sein Sicherheitszertifikat stammt von <ph name="DOMAIN2" />. Mögliche Gründe sind eine fehlerhafte Konfiguration oder ein Angreifer, der Ihre Verbindung abfängt.</translation>
<translation id="2958431318199492670">Die Netzwerkkonfiguration stimmt nicht mit dem ONC-Standard überein. Die Konfiguration wird unter Umständen nicht vollständig importiert.</translation>
+<translation id="2969319727213777354">Zum Herstellen einer sicheren Verbindung muss die Uhrzeit richtig eingestellt sein. Der Grund hierfür ist, dass Websites sich mithilfe von Zertifikaten identifizieren, die nur für einen bestimmten Zeitraum gelten. Da die Uhrzeit Ihres Geräts falsch ist, kann Google Chrome diese Zertifikate nicht bestätigen.</translation>
<translation id="2972581237482394796">&amp;Wiederholen</translation>
<translation id="3010559122411665027">Listeneintrag "<ph name="ENTRY_INDEX" />": <ph name="ERROR" /></translation>
<translation id="3024663005179499861">Falscher Richtlinientyp</translation>
diff --git a/chromium/components/strings/components_strings_el.xtb b/chromium/components/strings/components_strings_el.xtb
index 28069a546f4..61020979b03 100644
--- a/chromium/components/strings/components_strings_el.xtb
+++ b/chromium/components/strings/components_strings_el.xtb
@@ -24,6 +24,9 @@
<translation id="1455235771979731432">Παρουσιάστηκε ένα πρόβλημα με την επαλήθευση της κάρτας σας. Ελέγξτε τη σύνδεσή σας στο διαδίκτυο και δοκιμάστε ξανά.</translation>
<translation id="1491151370853475546">Εκ νέου φόρτωση αυτής της σελίδας</translation>
<translation id="1549470594296187301">Θα πρέπει να ενεργοποιηθεί η JavaScript για τη χρήση αυτής της λειτουργίας.</translation>
+<translation id="1559572115229829303">&lt;p&gt;Δεν είναι δυνατή η επίτευξη ιδιωτικής σύνδεσης με τον τομέα <ph name="BEGIN_BOLD" /><ph name="DOMAIN" /><ph name="END_BOLD" /> επειδή η ημερομηνία και η ώρα (<ph name="DATE_AND_TIME" />) της συσκευής σας είναι λανθασμένες.&lt;/p&gt;
+
+ &lt;p&gt;Προσαρμόστε την ημερομηνία και την ώρα από την ενότητα &lt;strong&gt;Γενικές&lt;/strong&gt; της εφαρμογής &lt;strong&gt;Ρυθμίσεις&lt;/strong&gt;.&lt;/p&gt;</translation>
<translation id="1640180200866533862">Πολιτικές χρηστών</translation>
<translation id="1644184664548287040">Η διαμόρφωση δικτύου είναι μη έγκυρη και δεν ήταν δυνατή η εισαγωγή της.</translation>
<translation id="1655462015569774233">{1,plural, =1{Αυτός ο διακομιστής δεν μπόρεσε να αποδείξει ότι είναι το <ph name="DOMAIN" />. Το πιστοποιητικό ασφαλείας του έληξε χθες. Αυτό μπορεί να οφείλεται σε εσφαλμένη ρύθμιση ή σε κάποιον εισβολέα που παρεμβαίνει στη σύνδεσή σας. Το ρολόι του υπολογιστή σας αυτήν τη στιγμή είναι ρυθμισμένο στην ημερομηνία <ph name="CURRENT_DATE" />. Είναι σωστή αυτή η ρύθμιση; Εάν όχι, θα πρέπει να διορθώσετε το ρολόι του συστήματός σας και έπειτα να ανανεώσετε αυτήν τη σελίδα.}other{Αυτός ο διακομιστής δεν μπόρεσε να αποδείξει ότι είναι το <ph name="DOMAIN" />. Το πιστοποιητικό ασφαλείας του έληξε πριν από # ημέρες. Αυτό μπορεί να οφείλεται σε εσφαλμένη ρύθμιση ή σε κάποιον εισβολέα που παρεμβαίνει στη σύνδεσή σας. Το ρολόι του υπολογιστή σας αυτήν τη στιγμή είναι ρυθμισμένο στην ημερομηνία <ph name="CURRENT_DATE" />. Είναι σωστή αυτή η ρύθμιση; Εάν όχι, θα πρέπει να διορθώσετε το ρολόι του συστήματός σας και έπειτα να ανανεώσετε αυτήν τη σελίδα.}}</translation>
@@ -90,6 +93,7 @@
<translation id="2922350208395188000">Δεν είναι δυνατός ο έλεγχος του πιστοποιητικού του διακομιστή.</translation>
<translation id="2941952326391522266">Ο διακομιστής δεν μπόρεσε να αποδείξει ότι είναι <ph name="DOMAIN" />. Το πιστοποιητικό ασφαλείας του είναι από το <ph name="DOMAIN2" />. Αυτό μπορεί να οφείλεται σε λανθασμένη ρύθμιση ή σε κάποιον τρίτο που επιτίθεται στη σύνδεσή σας.</translation>
<translation id="2958431318199492670">Η διαμόρφωση δικτύου δεν συμμορφώνεται με το πρότυπο ONC. Ορισμένα τμήματα αυτής της διαμόρφωσης ενδέχεται να μην εισαχθούν.</translation>
+<translation id="2969319727213777354">Για την επίτευξη μιας ασφαλούς σύνδεσης, θα πρέπει να γίνει σωστή ρύθμιση του ρολογιού σας. Αυτό οφείλεται στο γεγονός ότι τα πιστοποιητικά που χρησιμοποιούν οι ιστότοποι για την ταυτοποίησή τους είναι έγκυρα μόνο για συγκεκριμένες χρονικές περιόδους. Εφόσον το ρολόι της συσκευής σας δεν είναι σωστά ρυθμισμένο, το Google Chrome δεν μπορεί να επαληθεύσει αυτά τα πιστοποιητικά.</translation>
<translation id="2972581237482394796">&amp;Επανάληψη ενέργειας</translation>
<translation id="3010559122411665027">Καταχώριση λίστας "<ph name="ENTRY_INDEX" />": <ph name="ERROR" /></translation>
<translation id="3024663005179499861">Λανθασμένος τύπος πολιτικής</translation>
diff --git a/chromium/components/strings/components_strings_en-GB.xtb b/chromium/components/strings/components_strings_en-GB.xtb
index 37c419333d0..3dcbe9626c7 100644
--- a/chromium/components/strings/components_strings_en-GB.xtb
+++ b/chromium/components/strings/components_strings_en-GB.xtb
@@ -24,6 +24,9 @@
<translation id="1455235771979731432">There was a problem verifying your card. Check your Internet connection and try again.</translation>
<translation id="1491151370853475546">Reload this Page</translation>
<translation id="1549470594296187301">JavaScript must be enabled to use this feature.</translation>
+<translation id="1559572115229829303">&lt;p&gt;A private connection to <ph name="BEGIN_BOLD" /><ph name="DOMAIN" /><ph name="END_BOLD" /> can't be established because your device's date and time (<ph name="DATE_AND_TIME" />) are incorrect.&lt;/p&gt;
+
+ &lt;p&gt;Please adjust the date and time from the &lt;strong&gt;General&lt;/strong&gt; section of the &lt;strong&gt;Settings&lt;/strong&gt; app.&lt;/p&gt;</translation>
<translation id="1640180200866533862">User policies</translation>
<translation id="1644184664548287040">The network configuration is invalid and couldn't be imported.</translation>
<translation id="1655462015569774233">{1,plural, =1{This server could not prove that it is <ph name="DOMAIN" />; its security certificate expired yesterday. This may be caused by a misconfiguration or an attacker intercepting your connection. Your computer's clock is currently set to <ph name="CURRENT_DATE" />. Does that look right? If not, you should correct your system's clock and then refresh this page.}other{This server could not prove that it is <ph name="DOMAIN" />; its security certificate expired # days ago. This may be caused by a misconfiguration or an attacker intercepting your connection. Your computer's clock is currently set to <ph name="CURRENT_DATE" />. Does that look right? If not, you should correct your system's clock and then refresh this page.}}</translation>
@@ -90,6 +93,7 @@
<translation id="2922350208395188000">Server's certificate cannot be checked.</translation>
<translation id="2941952326391522266">This server could not prove that it is <ph name="DOMAIN" />; its security certificate is from <ph name="DOMAIN2" />. This may be caused by a misconfiguration or an attacker intercepting your connection.</translation>
<translation id="2958431318199492670">The network configuration doesn't comply to the ONC standard. Parts of the configuration may not be imported.</translation>
+<translation id="2969319727213777354">To establish a secure connection, your clock needs to be set correctly. This is because the certificates that websites use to identify themselves are only valid for specific periods of time. Since your device's clock is incorrect, Google Chrome cannot verify these certificates.</translation>
<translation id="2972581237482394796">&amp;Redo</translation>
<translation id="3010559122411665027">List entry "<ph name="ENTRY_INDEX" />": <ph name="ERROR" /></translation>
<translation id="3024663005179499861">Wrong policy type</translation>
diff --git a/chromium/components/strings/components_strings_es-419.xtb b/chromium/components/strings/components_strings_es-419.xtb
index 76bd2c976e5..718b00dc6c4 100644
--- a/chromium/components/strings/components_strings_es-419.xtb
+++ b/chromium/components/strings/components_strings_es-419.xtb
@@ -24,6 +24,9 @@
<translation id="1455235771979731432">Se produjo un problema al verificar la tarjeta. Verifica la conexión a Internet y vuelve a intentarlo.</translation>
<translation id="1491151370853475546">Volver a cargar esta página</translation>
<translation id="1549470594296187301">JavaScript debe estar habilitado para usar esta función.</translation>
+<translation id="1559572115229829303">&lt;p&gt;No se puede establecer una conexión privada a <ph name="BEGIN_BOLD" /><ph name="DOMAIN" /><ph name="END_BOLD" /> porque la fecha y la hora del dispositivo (<ph name="DATE_AND_TIME" />) son incorrectas.&lt;/p&gt;
+
+ &lt;p&gt;Ajusta la fecha y la hora desde la sección &lt;strong&gt;General&lt;/strong&gt; de la app de &lt;strong&gt;Configuración&lt;/strong&gt; .&lt;/p&gt;</translation>
<translation id="1640180200866533862">Políticas de usuario</translation>
<translation id="1644184664548287040">La configuración de red no es válida y no se pudo importar.</translation>
<translation id="1655462015569774233">{1,plural, =1{El servidor no logró comprobar si el dominio es <ph name="DOMAIN" />; el certificado de seguridad venció ayer. Es posible que esto se deba a una configuración incorrecta o a que un atacante haya interceptado la conexión. Actualmente, el reloj de la computadora está configurado en la siguiente fecha: <ph name="CURRENT_DATE" />. ¿Es correcto? De no ser así, corrige el reloj del sistema y, a continuación, actualiza la página.}other{El servidor no logró comprobar si el dominio es <ph name="DOMAIN" />; el certificado de seguridad venció hace # días. Es posible que esto se deba a una configuración incorrecta o a que un atacante haya interceptado la conexión. Actualmente, el reloj de la computadora está configurado en la siguiente fecha: <ph name="CURRENT_DATE" />. ¿Es correcto? De no ser así, corrige el reloj del sistema y, a continuación, actualiza la página.}}</translation>
@@ -90,6 +93,7 @@
<translation id="2922350208395188000">No se puede comprobar el certificado del servidor.</translation>
<translation id="2941952326391522266">Este servidor no pudo probar que su dominio es <ph name="DOMAIN" />; el certificado de seguridad proviene de <ph name="DOMAIN2" />. Es posible que esto se deba a una configuración incorrecta o a que un atacante interceptó la conexión.</translation>
<translation id="2958431318199492670">La configuración de red no cumple con el estándar ONC. Es posible que no se importen algunas partes de la configuración.</translation>
+<translation id="2969319727213777354">Para establecer una conexión segura, el reloj se debe configurar correctamente. Esto se debe a que los certificados que usan los sitios web para su identificación solo son válidos por períodos de tiempo específicos. Debido a que la configuración del reloj del dispositivo es incorrecta, Google Chrome no puede verificar estos certificados.</translation>
<translation id="2972581237482394796">&amp;Rehacer</translation>
<translation id="3010559122411665027">Entrada de lista "<ph name="ENTRY_INDEX" />": <ph name="ERROR" /></translation>
<translation id="3024663005179499861">Tipo de política incorrecto</translation>
diff --git a/chromium/components/strings/components_strings_es.xtb b/chromium/components/strings/components_strings_es.xtb
index 8a97d99aae2..bccb69dcbda 100644
--- a/chromium/components/strings/components_strings_es.xtb
+++ b/chromium/components/strings/components_strings_es.xtb
@@ -24,6 +24,9 @@
<translation id="1455235771979731432">Se ha producido un problema al verificar tu tarjeta. Comprueba tu conexión a Internet y vuelve a intentarlo.</translation>
<translation id="1491151370853475546">Volver a cargar esta página</translation>
<translation id="1549470594296187301">JavaScript debe estar habilitado para utilizar esta función.</translation>
+<translation id="1559572115229829303">&lt;p&gt;No se puede establecer una conexión privada con <ph name="BEGIN_BOLD" /><ph name="DOMAIN" /><ph name="END_BOLD" /> porque la fecha y la hora de tu dispositivo (<ph name="DATE_AND_TIME" />) no son correctas.&lt;/p&gt;
+
+ &lt;p&gt;Ajusta la fecha y la hora en la sección &lt;strong&gt;General&lt;/strong&gt; de la aplicación &lt;strong&gt;Ajustes&lt;/strong&gt;.&lt;/p&gt;</translation>
<translation id="1640180200866533862">Políticas de usuario</translation>
<translation id="1644184664548287040">La configuración de red no es válida y no se ha podido importar.</translation>
<translation id="1655462015569774233">{1,plural, =1{Este servidor no ha podido demostrar que es <ph name="DOMAIN" />; su certificado de seguridad caducó ayer. Este problema puede deberse a una configuración incorrecta o a que un atacante ha interceptado la conexión. El reloj de tu ordenador está establecido actualmente en las <ph name="CURRENT_DATE" />. ¿Es correcto? Si no lo es, corrige el reloj del sistema y, a continuación, actualiza esta página.}other{Este servidor no ha podido demostrar que es <ph name="DOMAIN" />; su certificado de seguridad caducó hace # días. Este problema puede deberse a una configuración incorrecta o a que un atacante ha interceptado la conexión. El reloj de tu ordenador está establecido actualmente en las <ph name="CURRENT_DATE" />. ¿Es correcto? Si no lo es, corrige el reloj del sistema y, a continuación, actualiza esta página.}}</translation>
@@ -90,6 +93,7 @@
<translation id="2922350208395188000">No es posible comprobar el certificado del servidor.</translation>
<translation id="2941952326391522266">Este servidor no ha podido probar que su dominio es <ph name="DOMAIN" />, su certificado de seguridad procede de <ph name="DOMAIN2" />. Este problema puede deberse a una configuración incorrecta o a que un atacante haya interceptado la conexión.</translation>
<translation id="2958431318199492670">La configuración de red no cumple el estándar ONC. Es posible que no se importen partes de la configuración.</translation>
+<translation id="2969319727213777354">Para establecer una conexión segura, el reloj debe estar configurado correctamente. Esto se debe a que los certificados que utilizan los sitios web para identificarse solo son válidos para períodos de tiempo específicos. Como el reloj de tu dispositivo no está configurado correctamente, Google Chrome no puede verificar estos certificados.</translation>
<translation id="2972581237482394796">&amp;Rehacer</translation>
<translation id="3010559122411665027">Entrada de lista "<ph name="ENTRY_INDEX" />": <ph name="ERROR" /></translation>
<translation id="3024663005179499861">Tipo de política incorrecto</translation>
diff --git a/chromium/components/strings/components_strings_et.xtb b/chromium/components/strings/components_strings_et.xtb
index aed2f91cfeb..12cef8c98cd 100644
--- a/chromium/components/strings/components_strings_et.xtb
+++ b/chromium/components/strings/components_strings_et.xtb
@@ -24,6 +24,9 @@
<translation id="1455235771979731432">Kaardi kinnitamisel tekkis probleem. Kontrollige Interneti-ühendust ja proovige uuesti.</translation>
<translation id="1491151370853475546">Laadi leht uuesti</translation>
<translation id="1549470594296187301">Selle funktsiooni kasutamiseks peab JavaScript olema lubatud.</translation>
+<translation id="1559572115229829303">&lt;p&gt;Domeeniga <ph name="BEGIN_BOLD" /><ph name="DOMAIN" /><ph name="END_BOLD" /> ei saa privaatset ühendust luua, kuna seadme kuupäev ja kellaaeg (<ph name="DATE_AND_TIME" />DATE_AND_TIME) on valed.&lt;/p&gt;
+
+ &lt;p&gt;Kohandage kuupäeva ja kellaaega rakenduse &lt;strong&gt;Seaded&lt;/strong&gt; jaotises &lt;strong&gt;Üldine&lt;/strong&gt;.&lt;/p&gt;</translation>
<translation id="1640180200866533862">Kasutajareeglid</translation>
<translation id="1644184664548287040">Võrgu seadistus on sobimatu ja seda ei saa importida.</translation>
<translation id="1655462015569774233">{1,plural, =1{Server ei suutnud tõestada, et tegemist on domeeniga <ph name="DOMAIN" />, selle turvasertifikaat aegus eile. Selle põhjuseks võib olla vale seadistus või teie ühendust segav ründaja. Teie arvuti kell on praegu seatud kuupäevale <ph name="CURRENT_DATE" />. Kas see on õige? Kui ei ole, seadke süsteemi kell õigeks ja värskendage lehte.}other{Server ei suutnud tõestada, et tegemist on domeeniga <ph name="DOMAIN" />, selle turvasertifikaat aegus # päeva tagasi. Selle põhjuseks võib olla vale seadistus või teie ühendust segav ründaja. Teie arvuti kell on praegu seatud kuupäevale <ph name="CURRENT_DATE" />. Kas see on õige? Kui ei ole, seadke süsteemi kell õigeks ja värskendage lehte.}}</translation>
@@ -90,6 +93,7 @@
<translation id="2922350208395188000">Serveri sertifikaati ei saa kontrollida.</translation>
<translation id="2941952326391522266">Server ei suutnud tõestada, et see on domeen <ph name="DOMAIN" />, selle turvasertifikaati pärineb domeenilt <ph name="DOMAIN2" />. Selle põhjuseks võib olla vale seadistus või ründaja, kes on sekkunud teie ühendusse.</translation>
<translation id="2958431318199492670">Võrgu seadistus ei vasta ONC standardile. On võimalik, et seadistuse mõnd osa ei saa importida.</translation>
+<translation id="2969319727213777354">Turvalise ühenduse loomiseks peab kell olema õigesti seadistatud, kuna sertifikaadid, mida veebisaidid kasutavad enda tuvastamiseks, kehtivad ainult teatud perioodi jooksul. Kuna teie seadme kell on vale, ei saa Chrome neid sertifikaate kinnitada.</translation>
<translation id="2972581237482394796">&amp;Tee uuesti</translation>
<translation id="3010559122411665027">Loendi kirje „<ph name="ENTRY_INDEX" />”: <ph name="ERROR" /></translation>
<translation id="3024663005179499861">Reegli tüüp on vale</translation>
diff --git a/chromium/components/strings/components_strings_fa.xtb b/chromium/components/strings/components_strings_fa.xtb
index e9ca89ae51e..81a95c343bc 100644
--- a/chromium/components/strings/components_strings_fa.xtb
+++ b/chromium/components/strings/components_strings_fa.xtb
@@ -24,6 +24,9 @@
<translation id="1455235771979731432">هنگام تأیید کارت‌تان مشکلی رخ داد. اتصال اینترنت را بررسی کرده و دوباره امتحان کنید.</translation>
<translation id="1491151370853475546">تازه‌سازی این صفحه</translation>
<translation id="1549470594296187301">برای استفاده از این قابلیت، جاوا اسکریپت باید فعال باشد.</translation>
+<translation id="1559572115229829303">‏&lt;p&gt;اتصال خصوصی به <ph name="BEGIN_BOLD" /><ph name="DOMAIN" /><ph name="END_BOLD" /> برقرار نشد، زیرا تاریخ و زمان دستگاه شما (<ph name="DATE_AND_TIME" />) نادرست است.&lt;/p&gt;
+
+ &lt;p&gt;لطفاً تاریخ و زمان را در بخش &lt;strong&gt;عمومی&lt;/strong&gt; برنامه &lt;strong&gt;تنظیمات&lt;/strong&gt; تنظیم کنید.&lt;/p&gt;</translation>
<translation id="1640180200866533862">خط‌مشی‌های کاربر</translation>
<translation id="1644184664548287040">پیکربندی شبکه نامعتبر است و نتوانست وارد شود.</translation>
<translation id="1655462015569774233">{1,plural, =1{این سرور نتوانست ثابت کند این <ph name="DOMAIN" /> است؛ اعتبار گواهی امنیتی آن دیروز به پایان رسیده است. ممکن است علت این موضوع پیکربندی اشتباه باشد یا مهاجمی اتصالتان را قطع می‌کند. ساعت رایانه‌تان درحال‌حاضر روی <ph name="CURRENT_DATE" /> تنظیم شده است. آیا درست است؟ اگر پاسخ منفی است، باید ساعت سیستمتان را درست کنید و سپس این صفحه را بازخوانی کنید.}one{این سرور نتوانست ثابت کند این <ph name="DOMAIN" /> است. اعتبار گواهی امنیتی آن # روز قبل به پایان رسیده است. ممکن است علت این موضوع پیکربندی اشتباه باشد یا مهاجمی اتصالتان را قطع می‌کند. ساعت رایانه‌تان درحال‌حاضر روی <ph name="CURRENT_DATE" /> تنظیم شده است. آیا درست است؟ اگر پاسخ منفی است، باید ساعت سیستمتان را درست کنید و سپس این صفحه را بازخوانی کنید.}other{این سرور نتوانست ثابت کند این <ph name="DOMAIN" /> است. اعتبار گواهی امنیتی آن # روز قبل به پایان رسیده است. ممکن است علت این موضوع پیکربندی اشتباه باشد یا مهاجمی اتصالتان را قطع می‌کند. ساعت رایانه‌تان درحال‌حاضر روی <ph name="CURRENT_DATE" /> تنظیم شده است. آیا درست است؟ اگر پاسخ منفی است، باید ساعت سیستمتان را درست کنید و سپس این صفحه را بازخوانی کنید.}}</translation>
@@ -90,6 +93,7 @@
<translation id="2922350208395188000">گواهی سرور بررسی نمی‌شود.</translation>
<translation id="2941952326391522266">این سرور نتوانست اثبات کند که این <ph name="DOMAIN" /> است؛ گواهی امنیتی آن از <ph name="DOMAIN2" /> است. ممکن است علت این موضوع پیکربندی اشتباه باشد یا مهاجی اتصال شما را قطع کرده است.</translation>
<translation id="2958431318199492670">‏پیکربندی شبکه با استاندارد ONC تطابق ندارد. بخشی از پیکربندی ممکن است وارد نشود.</translation>
+<translation id="2969319727213777354">‏برای برقراری یک اتصال امن، لازم است ساعت شما درست تنظیم شده باشد. زیرا گواهی‌هایی که وب‌سایت‌ها برای شناسایی خودشان استفاده می‌کنند، تنها برای دوره‌های زمانی خاصی معتبرند. از آنجا که ساعت دستگاه شما نادرست است، Google Chrome نمی‌تواند این گواهی‌ها را تأیید کند.</translation>
<translation id="2972581237482394796">انجام مجدد</translation>
<translation id="3010559122411665027">ورودی لیست "<ph name="ENTRY_INDEX" />": <ph name="ERROR" /></translation>
<translation id="3024663005179499861">نوع خط‌مشی اشتباه است</translation>
diff --git a/chromium/components/strings/components_strings_fi.xtb b/chromium/components/strings/components_strings_fi.xtb
index a5f4b98b6a9..43bad5b6718 100644
--- a/chromium/components/strings/components_strings_fi.xtb
+++ b/chromium/components/strings/components_strings_fi.xtb
@@ -24,6 +24,9 @@
<translation id="1455235771979731432">Korttia todennettaessa tapahtui virhe. Tarkista internetyhteys ja yritä uudelleen.</translation>
<translation id="1491151370853475546">Päivitä tämä sivu</translation>
<translation id="1549470594296187301">Tämän ominaisuuden käyttö edellyttää JavaScriptiä.</translation>
+<translation id="1559572115229829303">&lt;p&gt;Verkkotunnukseen <ph name="BEGIN_BOLD" /><ph name="DOMAIN" /><ph name="END_BOLD" /> ei voi muodostaa salattua yhteyttä, koska laitteesi aika ja päivämäärä (<ph name="DATE_AND_TIME" />) ovat virheelliset.&lt;/p&gt;
+
+ &lt;p&gt;Muokkaa aikaa ja päivämäärää &lt;strong&gt;Asetukset&lt;/strong&gt;‑sovelluksen &lt;strong&gt;Yleistä&lt;/strong&gt;‑osiossa.&lt;/p&gt;</translation>
<translation id="1640180200866533862">Käyttäjäkäytännöt</translation>
<translation id="1644184664548287040">Verkkoasetukset ovat virheelliset eikä niitä voi tuoda.</translation>
<translation id="1655462015569774233">{1,plural, =1{Palvelin ei voinut todistaa olevansa <ph name="DOMAIN" />; sen suojausvarmenne vanhentui eilen. Tämä voi johtua määritysvirheestä tai verkkoyhteytesi siepanneesta hyökkääjästä. Tietokoneesi kellonaika on tällä hetkellä <ph name="CURRENT_DATE" />. Onko se oikein? Jos ei, korjaa järjestelmän kellonaika ja päivitä sivu.}other{Palvelin ei voinut todistaa olevansa <ph name="DOMAIN" />; sen suojausvarmenne vanhentui # päivää sitten. Tämä voi johtua määritysvirheestä tai verkkoyhteytesi siepanneesta hyökkääjästä. Tietokoneesi kellonaika on tällä hetkellä <ph name="CURRENT_DATE" />. Onko se oikein? Jos ei, korjaa järjestelmän kellonaika ja päivitä sivu.}}</translation>
@@ -90,6 +93,7 @@
<translation id="2922350208395188000">Palvelimen varmennetta ei voi tarkistaa.</translation>
<translation id="2941952326391522266">Palvelin ei voinut todistaa olevansa <ph name="DOMAIN" />; sen suojausvarmenne on verkkotunnuksesta <ph name="DOMAIN2" />. Tämä voi johtua määritysvirheestä tai verkkoyhteytesi siepanneesta hyökkääjästä.</translation>
<translation id="2958431318199492670">Verkkoasetukset eivät noudata ONC-standardia. Kaikkia asetuksia ei välttämättä tuoda.</translation>
+<translation id="2969319727213777354">Kellosi täytyy asettaa oikeaan aikaan, jotta salattu yhteys voidaan muodostaa. Tämä johtuu siitä, että verkkosivustojen tunnistamisessa käytettävät varmenteet ovat voimassa vain tiettyinä aikoina. Chrome ei voi vahvistaa varmenteita, koska laitteesi kello on väärässä ajassa.</translation>
<translation id="2972581237482394796">&amp;Tee uudelleen</translation>
<translation id="3010559122411665027">Luettelokohde "<ph name="ENTRY_INDEX" />": <ph name="ERROR" /></translation>
<translation id="3024663005179499861">Väärä käytäntötyyppi</translation>
diff --git a/chromium/components/strings/components_strings_fil.xtb b/chromium/components/strings/components_strings_fil.xtb
index 125d770f0be..5b81c92974b 100644
--- a/chromium/components/strings/components_strings_fil.xtb
+++ b/chromium/components/strings/components_strings_fil.xtb
@@ -24,6 +24,9 @@
<translation id="1455235771979731432">Nagkaroon ng problema sa pag-verify ng iyong card. Tingnan ang koneksyon sa internet at subukang muli.</translation>
<translation id="1491151370853475546">I-reload ang Pahinang Ito</translation>
<translation id="1549470594296187301">Dapat naka-enable ang JavaScript upang magamit ang feature na ito.</translation>
+<translation id="1559572115229829303">&lt;p&gt;Hindi makapagtatag ng pribadong koneksyon sa <ph name="BEGIN_BOLD" /><ph name="DOMAIN" /><ph name="END_BOLD" /> dahil mali ang petsa at oras ng iyong device (<ph name="DATE_AND_TIME" />).&lt;/p&gt;
+
+ &lt;p&gt;Mangyaring isaayos ang petsa at oras mula sa seksyong &lt;strong&gt;Pangkalahatan&lt;/strong&gt; ng app na &lt;strong&gt;Mga Setting&lt;/strong&gt;.&lt;/p&gt;</translation>
<translation id="1640180200866533862">Mga patakaran ng user</translation>
<translation id="1644184664548287040">Di-wasto ang configuration ng network at hindi maaaring i-import.</translation>
<translation id="1655462015569774233">{1,plural, =1{Hindi mapatunayan ng server na ito na ito ang <ph name="DOMAIN" />; nag-expire na ang certificate ng seguridad nito kahapon. Maaaring resulta ito ng maling configuration o kaya ng isang attacker na humahadlang sa iyong koneksyon. Sa kasalukuyan, nakatakda ang orasan ng iyong computer sa <ph name="CURRENT_DATE" />. Mukha bang tama iyon? Kung hindi, dapat mong ayusin ang orasan ng iyong system at pagkatapos ay i-refresh ang page na ito.}one{Hindi mapatunayan ng server na ito na ito ang <ph name="DOMAIN" />; nag-expire na ang certificate ng seguridad nito # araw na ang nakalipas. Maaaring resulta ito ng maling configuration o kaya ng isang attacker na humahadlang sa iyong koneksyon. Sa kasalukuyan, nakatakda ang orasan ng iyong computer sa <ph name="CURRENT_DATE" />. Mukha bang tama iyon? Kung hindi, dapat mong ayusin ang orasan ng iyong system at pagkatapos ay i-refresh ang page na ito.}other{Hindi mapatunayan ng server na ito na ito ang <ph name="DOMAIN" />; nag-expire na ang certificate ng seguridad nito # na araw na ang nakalipas. Maaaring resulta ito ng maling configuration o kaya ng isang attacker na humahadlang sa iyong koneksyon. Sa kasalukuyan, nakatakda ang orasan ng iyong computer sa <ph name="CURRENT_DATE" />. Mukha bang tama iyon? Kung hindi, dapat mong ayusin ang orasan ng iyong system at pagkatapos ay i-refresh ang page na ito.}}</translation>
@@ -90,6 +93,7 @@
<translation id="2922350208395188000">Hindi masuri ang certificate ng server.</translation>
<translation id="2941952326391522266">Hindi mapatunayan ng server na ito na ito ay <ph name="DOMAIN" />; mula sa <ph name="DOMAIN2" /> ang certificate ng seguridad nito. Maaaring dulot ito ng maling configuration o isang umaatake na hinahadlangan ang iyong koneksyon.</translation>
<translation id="2958431318199492670">Hindi sumusunod ang configuration ng network sa pamantayan ng ONC. Hindi maaaring i-import ang mga bahagi ng configuration.</translation>
+<translation id="2969319727213777354">Upang makapagtatag ng secure na koneksyon, kailangang itakda nang tama ang iyong orasan. Ito ay dahil sa may-bisa lang ang mga certificate na ginagamit ng mga website upang tukuyin ang mga sarili ng mga ito sa loob ng mga partikular na tagal ng panahon. Dahil mali ang orasan ng iyong device, hindi ma-verify ng Google Chrome ang mga certificate na ito.</translation>
<translation id="2972581237482394796">&amp;I-redo</translation>
<translation id="3010559122411665027">Listahan ng entry na "<ph name="ENTRY_INDEX" />": <ph name="ERROR" /></translation>
<translation id="3024663005179499861">Maling uri ng patakaran</translation>
diff --git a/chromium/components/strings/components_strings_fr.xtb b/chromium/components/strings/components_strings_fr.xtb
index 5a385b62630..860bbfeb355 100644
--- a/chromium/components/strings/components_strings_fr.xtb
+++ b/chromium/components/strings/components_strings_fr.xtb
@@ -24,6 +24,9 @@
<translation id="1455235771979731432">Un problème est survenu lors de la validation de votre carte. Veuillez vérifier votre connexion Internet et réessayer.</translation>
<translation id="1491151370853475546">Actualiser cette page</translation>
<translation id="1549470594296187301">Vous devez activer JavaScript pour utiliser cette fonctionnalité.</translation>
+<translation id="1559572115229829303">&lt;p&gt;Impossible d'établir une connexion privée à <ph name="BEGIN_BOLD" /><ph name="DOMAIN" /><ph name="END_BOLD" /> : la date et l'heure de votre appareil (<ph name="DATE_AND_TIME" />) sont incorrectes.&lt;/p&gt;
+
+ &lt;p&gt;Veuillez ajuster la date et l'heure dans la section &lt;strong&gt;Général&lt;/strong&gt; de l'application &lt;strong&gt;Réglages&lt;/strong&gt;.&lt;/p&gt;</translation>
<translation id="1640180200866533862">Règles relatives aux utilisateurs</translation>
<translation id="1644184664548287040">Impossible d'importer la configuration du réseau : elle n'est pas valide.</translation>
<translation id="1655462015569774233">{1,plural, =1{Impossible de vérifier que ce serveur est bien <ph name="DOMAIN" />, car son certificat de sécurité a expiré hier. Cela peut être dû à une mauvaise configuration ou bien à l'interception de votre connexion par un pirate informatique. L'horloge de votre ordinateur indique actuellement : <ph name="CURRENT_DATE" />. Cela vous semble-t-il correct ? Si ce n'est pas le cas, vous devez corriger l'horloge de votre système, puis actualiser la page.}one{Impossible de vérifier que ce serveur est bien <ph name="DOMAIN" />, car son certificat de sécurité a expiré il y a # jour. Cela peut être dû à une mauvaise configuration ou bien à l'interception de votre connexion par un pirate informatique. L'horloge de votre ordinateur indique actuellement : <ph name="CURRENT_DATE" />. Cela vous semble-t-il correct ? Si ce n'est pas le cas, vous devez corriger l'horloge de votre système, puis actualiser la page.}other{Impossible de vérifier que ce serveur est bien <ph name="DOMAIN" />, car son certificat de sécurité a expiré il y a # jours. Cela peut être dû à une mauvaise configuration ou bien à l'interception de votre connexion par un pirate informatique. L'horloge de votre ordinateur indique actuellement : <ph name="CURRENT_DATE" />. Cela vous semble-t-il correct ? Si ce n'est pas le cas, vous devez corriger l'horloge de votre système, puis actualiser la page.}}</translation>
@@ -90,6 +93,7 @@
<translation id="2922350208395188000">Impossible de vérifier le certificat du serveur.</translation>
<translation id="2941952326391522266">Impossible de vérifier sur le serveur qu'il s'agit bien du domaine <ph name="DOMAIN" />, car son certificat de sécurité provient du domaine <ph name="DOMAIN2" />. Cela peut être dû à une mauvaise configuration ou bien à l'interception de votre connexion par un pirate informatique.</translation>
<translation id="2958431318199492670">La configuration du réseau ne respecte pas les normes de l'ONC. Il est possible que des parties de la configuration ne soient pas importées.</translation>
+<translation id="2969319727213777354">Afin d'établir une connexion sécurisée, votre horloge doit être réglée correctement. Les certificats permettant aux sites Web de s'identifier sont en effet valides pendant une période précise. Comme l'horloge de votre appareil est incorrecte, Google Chrome n'est pas en mesure de vérifier la validité des certificats.</translation>
<translation id="2972581237482394796">&amp;Rétablir</translation>
<translation id="3010559122411665027">Entrée de la liste "<ph name="ENTRY_INDEX" />" : <ph name="ERROR" /></translation>
<translation id="3024663005179499861">Type de règle incorrect.</translation>
diff --git a/chromium/components/strings/components_strings_gu.xtb b/chromium/components/strings/components_strings_gu.xtb
index b9a5a068a08..141c54abdd2 100644
--- a/chromium/components/strings/components_strings_gu.xtb
+++ b/chromium/components/strings/components_strings_gu.xtb
@@ -24,6 +24,9 @@
<translation id="1455235771979731432">તમારું કાર્ડ ચકાસવામાં એક સમસ્યા આવી હતી. તમારું ઇન્ટરનેટ કનેક્શન તપાસો અને ફરીથી પ્રયાસ કરો.</translation>
<translation id="1491151370853475546">આ પૃષ્ઠને ફરીથી લોડ કરો</translation>
<translation id="1549470594296187301">આ સુવિધાનો ઉપયોગ કરવા માટે JavaScript સક્ષમ કરેલ હોવી આવશ્યક છે.</translation>
+<translation id="1559572115229829303">&lt;p&gt;<ph name="BEGIN_BOLD" /><ph name="DOMAIN" /><ph name="END_BOLD" /> પર ખાનગી કનેક્શન સ્થાપિત કરી શકાતું નથી કારણ કે તમારા ઉપકરણની તારીખ અને સમય (<ph name="DATE_AND_TIME" />) અયોગ્ય છે.&lt;/p&gt;
+
+ &lt;p&gt;કૃપા કરીને &lt;strong&gt;સેટિંગ્સ&lt;/strong&gt; અ‍ૅપ્લિકેશનના &lt;strong&gt;સામાન્ય&lt;/strong&gt; વિભાગમાં તારીખ અને સમય સમાયોજિત કરો.&lt;/p&gt;</translation>
<translation id="1640180200866533862">વપરાશકર્તા નીતિઓ</translation>
<translation id="1644184664548287040">નેટવર્ક ગોઠવણી અમાન્ય છે અને આયાત કરી શકાઇ નથી.</translation>
<translation id="1655462015569774233">{1,plural, =1{આ સર્વર સાબિત કરી શક્યું નથી કે તે <ph name="DOMAIN" /> છે; તેના સુરક્ષા પ્રમાણપત્રની સમય સીમા ગઈકાલે સમાપ્ત થઈ ગઈ. આ કોઇ ખોટી ગોઠવણીને કારણે થયું હશે અથવા કોઇ હુમલાખોર તમારા કનેક્શનને અટકાવી રહ્યો છે. તમારા કમ્પ્યુટરની ઘડિયાળને હાલમાં <ph name="CURRENT_DATE" /> પર સેટ કરવામાં આવી છે. શું તે બરાબર લાગે છે? જો ઠીક ન લાગતી હોય, તો તમારે તમારી સિસ્ટમની ઘડિયાળને ઠીક કરવી જોઈએ અને પછી આ પૃષ્ઠ તાજું કરવું જોઈએ.}one{આ સર્વર સાબિત કરી શક્યું નથી કે તે <ph name="DOMAIN" /> છે; તેના સુરક્ષા પ્રમાણપત્રની સમય સીમા # દિવસ પહેલાં સમાપ્ત થઈ ગઈ. આ કોઇ ખોટી ગોઠવણીને કારણે થયું હશે અથવા કોઇ હુમલાખોર તમારા કનેક્શનને અટકાવી રહ્યો છે. તમારા કમ્પ્યુટરની ઘડિયાળને હાલમાં <ph name="CURRENT_DATE" /> પર સેટ કરવામાં આવી છે. શું તે બરાબર લાગે છે? જો ઠીક ન લાગતી હોય, તો તમારે તમારી સિસ્ટમની ઘડિયાળને ઠીક કરવી જોઈએ અને પછી આ પૃષ્ઠ તાજું કરવું જોઈએ.}other{આ સર્વર સાબિત કરી શક્યું નથી કે તે <ph name="DOMAIN" /> છે; તેના સુરક્ષા પ્રમાણપત્રની સમય સીમા # દિવસ પહેલાં સમાપ્ત થઈ ગઈ. આ કોઇ ખોટી ગોઠવણીને કારણે થયું હશે અથવા કોઇ હુમલાખોર તમારા કનેક્શનને અટકાવી રહ્યો છે. તમારા કમ્પ્યુટરની ઘડિયાળને હાલમાં <ph name="CURRENT_DATE" /> પર સેટ કરવામાં આવી છે. શું તે બરાબર લાગે છે? જો ઠીક ન લાગતી હોય, તો તમારે તમારી સિસ્ટમની ઘડિયાળને ઠીક કરવી જોઈએ અને પછી આ પૃષ્ઠ તાજું કરવું જોઈએ.}}</translation>
@@ -90,6 +93,7 @@
<translation id="2922350208395188000">સર્વરનું પ્રમાણપત્ર તપાસી શકાતું નથી.</translation>
<translation id="2941952326391522266">આ સર્વર સાબિત કરી શક્યું નથી કે તે <ph name="DOMAIN" /> છે; તેનું સુરક્ષા પ્રમાણપત્ર <ph name="DOMAIN2" /> નું છે. આ કોઈ ખોટી ગોઠવણીને કારણે થયું હશે અથવા કોઈ હુમલાખોર તમારા કનેક્શનને અટકાવી રહ્યો છે.</translation>
<translation id="2958431318199492670">નેટવર્ક ગોઠવણી ONC માનકનું પાલન કરતી નથી. ગોઠવણીના ભાગો આયાત કરી શકાશે નહીં.</translation>
+<translation id="2969319727213777354">એક સુરક્ષિત કનેક્શન સ્થાપિત કરવા માટે, તમારી ઘડિયાળ યોગ્ય રીતે સેટ હોવી જરૂરી છે. આનું કારણ એ કે વેબસાઇટ્સ તેઓને ઓળખવા માટે જે પ્રમાણપત્રોનો ઉપયોગ કરે છે તે ચોક્કસ સમય અવધિ માટે જ માન્ય હોય છે. તમારા ઉપકરણની ઘડિયાળ ખોટી હોવાને લીધે, Google Chrome આ પ્રમાણપત્રોને ચકાસી શકતું નથી.</translation>
<translation id="2972581237482394796">&amp;ફરી કરો</translation>
<translation id="3010559122411665027">"<ph name="ENTRY_INDEX" />" એન્ટ્રીને સૂચિબદ્ધ કરો: <ph name="ERROR" /></translation>
<translation id="3024663005179499861">ખોટો નીતિ પ્રકાર</translation>
diff --git a/chromium/components/strings/components_strings_hi.xtb b/chromium/components/strings/components_strings_hi.xtb
index f0e519ff47d..f249c5c71cb 100644
--- a/chromium/components/strings/components_strings_hi.xtb
+++ b/chromium/components/strings/components_strings_hi.xtb
@@ -24,6 +24,9 @@
<translation id="1455235771979731432">आपका कार्ड सत्‍यापित करते समय समस्‍या हुई थी. अपना इंटरनेट कनेक्‍शन जांचें और पुन: प्रयास करें.</translation>
<translation id="1491151370853475546">यह पृष्ठ पुन: लोड करें</translation>
<translation id="1549470594296187301">इस सुविधा का उपयोग करने के लिए JavaScript को सक्षम किया जाना चाहिए.</translation>
+<translation id="1559572115229829303">&lt;p&gt;<ph name="BEGIN_BOLD" /><ph name="DOMAIN" /><ph name="END_BOLD" /> से निजी कनेक्‍शन स्‍थापित नहीं किया जा सकता क्‍योंकि आपके डिवाइस का दिनांक और समय (<ph name="DATE_AND_TIME" />) गलत है.&lt;/p&gt;
+
+ &lt;p&gt;कृपया दिनांक और समय को &lt;strong&gt;सेटिंग&lt;/strong&gt; ऐप के &lt;strong&gt;सामान्‍य&lt;/strong&gt; अनुभाग से एडजस्‍ट करें.&lt;/p&gt;</translation>
<translation id="1640180200866533862">उपयोगकर्ता नीतियां</translation>
<translation id="1644184664548287040">नेटवर्क कॉन्फ़िगरेशन अमान्य है और उसे आयात नहीं किया जा सकेगा.</translation>
<translation id="1655462015569774233">{1,plural, =1{यह सर्वर प्रमाणित नहीं कर सका कि यह <ph name="DOMAIN" /> है; इसके सुरक्षा प्रमाणपत्र की समय सीमा कल समाप्त हो गई थी. ऐसा गलत कॉन्फ़िगरेशन के कारण या किसी आक्रमणकर्ता द्वारा आपके कनेक्शन को बाधित करने के कारण हो सकता है. आपके कंप्यूटर की घड़ी वर्तमान में <ph name="CURRENT_DATE" /> पर सेट है. क्‍या यह सही है? यदि नहीं, तो आपको अपने सिस्टम की घड़ी सही करनी चाहिए और फिर इस पृष्ठ को रीफ्रेश करना चाहिए.}one{यह सर्वर प्रमाणित नहीं कर सका कि यह <ph name="DOMAIN" /> है; इसके सुरक्षा प्रमाणपत्र की समय सीमा # दिन पहले समाप्त हो गई है. ऐसा गलत कॉन्फ़िगरेशन के कारण या किसी आक्रमणकर्ता द्वारा आपके कनेक्शन को बाधित करने के कारण हो सकता है. आपके कंप्यूटर की घड़ी वर्तमान में <ph name="CURRENT_DATE" /> पर सेट है. क्‍या यह सही है? यदि नहीं, तो आपको अपने सिस्टम की घड़ी सही करनी चाहिए और फिर इस पृष्ठ को रीफ्रेश करना चाहिए.}other{यह सर्वर प्रमाणित नहीं कर सका कि यह <ph name="DOMAIN" /> है; इसके सुरक्षा प्रमाणपत्र की समय सीमा # दिन पहले समाप्त हो गई है. ऐसा गलत कॉन्फ़िगरेशन के कारण या किसी आक्रमणकर्ता द्वारा आपके कनेक्शन को बाधित करने के कारण हो सकता है. आपके कंप्यूटर की घड़ी वर्तमान में <ph name="CURRENT_DATE" /> पर सेट है. क्‍या यह सही है? यदि नहीं, तो आपको अपने सिस्टम की घड़ी सही करनी चाहिए और फिर इस पृष्ठ को रीफ्रेश करना चाहिए.}}</translation>
@@ -90,6 +93,7 @@
<translation id="2922350208395188000">सर्वर प्रमाणपत्र की जांच नहीं की जा सकती.</translation>
<translation id="2941952326391522266">यह सर्वर यह प्रमाणित नहीं कर सका कि यह <ph name="DOMAIN" /> है; इसका सुरक्षा प्रमाणपत्र <ph name="DOMAIN2" /> की ओर से है. ऐसा गलत कॉन्फ़िगरेशन के कारण या किसी आक्रमणकर्ता द्वारा आपके कनेक्शन में अवरोध डालने के कारण हो सकता है.</translation>
<translation id="2958431318199492670">नेटवर्क कॉन्फ़िगरेशन ONC मानक का पालन नहीं करता. कॉन्फ़िगरेशन के कुछ भाग आयात नहीं किए जा सकते हैं.</translation>
+<translation id="2969319727213777354">सुरक्षित कनेक्‍शन स्‍थापित करने के लिए, आपकी घड़ी को सही तरीके से सेट किए जाने की आवश्‍यकता है. ऐसा इसलिए क्‍योंकि वेबसाइटों द्वारा स्‍वयं की पहचान करने के लिए उपयोग किए जाने वाले प्रमाणपत्र केवल विशिष्‍ट समयावधियों के लिए ही मान्‍य होते हैं. चूंकि आपके डिवाइस की घड़ी गलत है, इसलिए Google Chrome इन प्रमाणपत्रों का सत्‍यापन नहीं कर सकता.</translation>
<translation id="2972581237482394796">&amp;फिर से करें</translation>
<translation id="3010559122411665027">सूची प्रविष्ट‍ि "<ph name="ENTRY_INDEX" />": <ph name="ERROR" /></translation>
<translation id="3024663005179499861">गलत नीति प्रकार</translation>
diff --git a/chromium/components/strings/components_strings_hr.xtb b/chromium/components/strings/components_strings_hr.xtb
index 85b6def52ac..6d20d387bba 100644
--- a/chromium/components/strings/components_strings_hr.xtb
+++ b/chromium/components/strings/components_strings_hr.xtb
@@ -24,6 +24,9 @@
<translation id="1455235771979731432">Pojavio se problem prilikom potvrđivanja vaše kartice. Provjerite internetsku vezu i pokušajte ponovo.</translation>
<translation id="1491151370853475546">Ponovo učitaj ovu stranicu</translation>
<translation id="1549470594296187301">Za upotrebu te značajke mora biti omogućen JavaScript.</translation>
+<translation id="1559572115229829303">&lt;p&gt;Sigurna veza s domenom <ph name="BEGIN_BOLD" /><ph name="DOMAIN" /><ph name="END_BOLD" /> ne može se uspostaviti jer datum i vrijeme na uređaju (<ph name="DATE_AND_TIME" />) nisu točni.&lt;/p&gt;
+
+ &lt;p&gt;Prilagodite datum i vrijeme putem odjeljka &lt;strong&gt;Općenito&lt;/strong&gt; u aplikaciji &lt;strong&gt;Postavke&lt;/strong&gt;.&lt;/p&gt;</translation>
<translation id="1640180200866533862">Korisnička pravila</translation>
<translation id="1644184664548287040">Mrežna konfiguracija nije važeća i nije ju bilo moguće uvesti.</translation>
<translation id="1655462015569774233">{1,plural, =1{Poslužitelj nije mogao dokazati da je to <ph name="DOMAIN" /> jer je sigurnosni certifikat istekao jučer. Razlog može biti pogrešna konfiguracija ili napad na vašu vezu. Sat vašeg računala trenutačno je postavljen na <ph name="CURRENT_DATE" />. Je li to u redu? Ako nije, ispravite vrijeme na satu sustava, a zatim osvježite ovu stranicu.}one{Poslužitelj nije mogao dokazati da je to <ph name="DOMAIN" /> jer je sigurnosni certifikat istekao prije # dan. Razlog može biti pogrešna konfiguracija ili napad na vašu vezu. Sat vašeg računala trenutačno je postavljen na <ph name="CURRENT_DATE" />. Je li to u redu? Ako nije, ispravite vrijeme na satu sustava, a zatim osvježite ovu stranicu.}few{Poslužitelj nije mogao dokazati da je to <ph name="DOMAIN" /> jer je sigurnosni certifikat istekao prije # dana. Razlog može biti pogrešna konfiguracija ili napad na vašu vezu. Sat vašeg računala trenutačno je postavljen na <ph name="CURRENT_DATE" />. Je li to u redu? Ako nije, ispravite vrijeme na satu sustava, a zatim osvježite ovu stranicu.}other{Poslužitelj nije mogao dokazati da je to <ph name="DOMAIN" /> jer je sigurnosni certifikat istekao prije # dana. Razlog može biti pogrešna konfiguracija ili napad na vašu vezu. Sat vašeg računala trenutačno je postavljen na <ph name="CURRENT_DATE" />. Je li to u redu? Ako nije, ispravite vrijeme na satu sustava, a zatim osvježite ovu stranicu.}}</translation>
@@ -90,6 +93,7 @@
<translation id="2922350208395188000">Certifikat poslužitelja nije moguće provjeriti.</translation>
<translation id="2941952326391522266">Poslužitelj nije mogao dokazati da je <ph name="DOMAIN" />; njegov je sigurnosni certifikat s domene <ph name="DOMAIN2" />. To može biti uzrokovano pogrešnom konfiguracijom ili napadom na vašu vezu.</translation>
<translation id="2958431318199492670">Mrežna konfiguracija nije u skladu sa standardima ONC. Dijelove konfiguracije nije moguće uvesti.</translation>
+<translation id="2969319727213777354">Za uspostavu sigurne veze sat mora biti točno postavljen jer certifikati pomoću kojih se web-lokacije međusobno identificiraju vrijede samo određeno vrijeme. Budući da vaš sat nije točan, Chrome ne može potvrditi te certifikate.</translation>
<translation id="2972581237482394796">&amp;Vrati poništeno</translation>
<translation id="3010559122411665027">Unos popisa "<ph name="ENTRY_INDEX" />": <ph name="ERROR" /></translation>
<translation id="3024663005179499861">Pogrešna vrsta pravila</translation>
diff --git a/chromium/components/strings/components_strings_hu.xtb b/chromium/components/strings/components_strings_hu.xtb
index 7c7887500bb..78b093b84a7 100644
--- a/chromium/components/strings/components_strings_hu.xtb
+++ b/chromium/components/strings/components_strings_hu.xtb
@@ -24,6 +24,9 @@
<translation id="1455235771979731432">A kártya ellenőrzése során hiba történt. Ellenőrizze az internetkapcsolatot, és próbálja újra.</translation>
<translation id="1491151370853475546">Az oldal újratöltése</translation>
<translation id="1549470594296187301">A funkció használatához engedélyezni kell a JavaScriptet.</translation>
+<translation id="1559572115229829303">&lt;p&gt;Nem hozható létre privát kapcsolat a következővel: <ph name="BEGIN_BOLD" /><ph name="DOMAIN" /><ph name="END_BOLD" />, mert az eszköz dátum- és időbeállítása helytelen (<ph name="DATE_AND_TIME" />).&lt;/p&gt;
+
+ &lt;p&gt;Módosítsa a dátumot és az időt a &lt;strong&gt;Beállítások&lt;/strong&gt; alkalmazás &lt;strong&gt;Általános&lt;/strong&gt; részében.&lt;/p&gt;</translation>
<translation id="1640180200866533862">Felhasználói házirendek</translation>
<translation id="1644184664548287040">A hálózati konfiguráció érvénytelen és nem importálható.</translation>
<translation id="1655462015569774233">{1,plural, =1{A szerver nem tudta bizonyítani, hogy valóban a(z) <ph name="DOMAIN" /> domainbe tartozik; biztonsági tanúsítványa tegnap lejárt. Ennek oka lehet konfigurációs hiba, de az is lehet, hogy egy támadó eltérítette az Ön kapcsolódását. Számítógépének órája jelenleg a következőre van állítva: <ph name="CURRENT_DATE" />. Ez megfelelőnek tűnik? Ha nem, állítsa be megfelelően a rendszer óráját, majd frissítse az oldalt.}other{A szerver nem tudta bizonyítani, hogy valóban a(z) <ph name="DOMAIN" /> domainbe tartozik; biztonsági tanúsítványa # nappal ezelőtt lejárt. Ennek oka lehet konfigurációs hiba, de az is lehet, hogy egy támadó eltérítette az Ön kapcsolódását. Számítógépének órája jelenleg a következőre van állítva: <ph name="CURRENT_DATE" />. Ez megfelelőnek tűnik? Ha nem, állítsa be megfelelően a rendszer óráját, majd frissítse az oldalt.}}</translation>
@@ -90,6 +93,7 @@
<translation id="2922350208395188000">A szerver tanúsítványát nem sikerült leellenőrizni.</translation>
<translation id="2941952326391522266">A szerver nem tudta bizonyítani, hogy valóban a(z) <ph name="DOMAIN" /> domainbe tartozik; biztonsági tanúsítványa a következőről származik: <ph name="DOMAIN2" />. Ennek oka lehet konfigurációs hiba, vagy hogy egy támadó eltérítette az Ön kapcsolódását.</translation>
<translation id="2958431318199492670">A hálózati konfiguráció nem felel meg az ONC szabványnak. A konfiguráció egyes részeit nem lehet importálni.</translation>
+<translation id="2969319727213777354">Biztonságos kapcsolat létrehozásához az órát pontosan be kell állítani. Ez azért szükséges, mert a webhelyek által az azonosításukra használt tanúsítványok csak adott ideig érvényesek. Mivel az eszköz órája nem pontos, a Google Chrome nem tudja ellenőrizni ezeket a tanúsítványokat.</translation>
<translation id="2972581237482394796">&amp;Újra</translation>
<translation id="3010559122411665027">"<ph name="ENTRY_INDEX" />." listabejegyzés: <ph name="ERROR" /></translation>
<translation id="3024663005179499861">Nem megfelelő irányelvtípus</translation>
diff --git a/chromium/components/strings/components_strings_id.xtb b/chromium/components/strings/components_strings_id.xtb
index 9380928d53f..d5eb45f189e 100644
--- a/chromium/components/strings/components_strings_id.xtb
+++ b/chromium/components/strings/components_strings_id.xtb
@@ -24,6 +24,9 @@
<translation id="1455235771979731432">Terjadi masalah saat memverifikasi kartu. Periksa sambungan internet Anda dan coba lagi.</translation>
<translation id="1491151370853475546">Muat Ulang Laman Ini</translation>
<translation id="1549470594296187301">JavaScript harus diaktifkan untuk menggunakan fitur ini.</translation>
+<translation id="1559572115229829303">&lt;p&gt;Sambungan pribadi ke <ph name="BEGIN_BOLD" /><ph name="DOMAIN" /><ph name="END_BOLD" /> tidak dapat dibuat karena tanggal dan waktu (<ph name="DATE_AND_TIME" />) perangkat Anda tidak benar.&lt;/p&gt;
+
+ &lt;p&gt;Sesuaikan tanggal dan waktu dari bagian &lt;strong&gt;Umum&lt;/strong&gt; aplikasi &lt;strong&gt;Setelan&lt;/strong&gt;.&lt;/p&gt;</translation>
<translation id="1640180200866533862">Kebijakan pengguna</translation>
<translation id="1644184664548287040">Konfigurasi cadangan tidak valid dan tidak dapat diimpor.</translation>
<translation id="1655462015569774233">{1,plural, =1{Server ini tidak dapat membuktikan bahwa ini adalah <ph name="DOMAIN" />; masa berlaku sertifikat keamanannya telah berakhir kemarin. Hal ini mungkin disebabkan oleh kesalahan konfigurasi, atau ada penyerang yang memintas sambungan internet Anda. Jam komputer Anda saat ini diatur ke <ph name="CURRENT_DATE" />. Apakah terlihat sesuai? Jika tidak, Anda harus membenarkan jam sistem dan menyegarkan laman ini.}other{Server ini tidak dapat membuktikan bahwa ini adalah <ph name="DOMAIN" />; masa berlaku sertifikat keamanannya telah berakhir # hari yang lalu. Hal ini mungkin disebabkan oleh kesalahan konfigurasi, atau ada penyerang yang memintas sambungan internet Anda. Jam komputer Anda saat ini diatur ke <ph name="CURRENT_DATE" />. Apakah terlihat sesuai? Jika tidak, Anda harus membenarkan jam sistem dan menyegarkan laman ini.}}</translation>
@@ -90,6 +93,7 @@
<translation id="2922350208395188000">Sertifikat server tidak dapat diperiksa.</translation>
<translation id="2941952326391522266">Server ini tidak dapat membuktikan bahwa ini adalah <ph name="DOMAIN" />; sertifikat keamanannya dari <ph name="DOMAIN2" />. Hal ini disebabkan oleh kesalahan konfigurasi atau penyerang memotong sambungan Anda.</translation>
<translation id="2958431318199492670">Konfigurasi jaringan tidak mematuhi standar ONC. Bagian dari konfigurasi mungkin tidak diimpor.</translation>
+<translation id="2969319727213777354">Untuk membuat sambungan aman, jam perlu disetel dengan benar. Itu karena sertifikat yang digunakan situs web untuk mengidentifikasi situs web tersebut hanya valid untuk jangka waktu tertentu. Karena jam perangkat tidak benar, Google Chrome tidak dapat memverifikasi sertifikat ini.</translation>
<translation id="2972581237482394796">&amp;Ulang</translation>
<translation id="3010559122411665027">Entri daftar "<ph name="ENTRY_INDEX" />": <ph name="ERROR" /></translation>
<translation id="3024663005179499861">Jenis kebijakan salah</translation>
diff --git a/chromium/components/strings/components_strings_it.xtb b/chromium/components/strings/components_strings_it.xtb
index 6e81fce2cae..88f836d758b 100644
--- a/chromium/components/strings/components_strings_it.xtb
+++ b/chromium/components/strings/components_strings_it.xtb
@@ -24,6 +24,9 @@
<translation id="1455235771979731432">Si è verificato un problema durante la verifica della carta. Controlla la connessione Internet e riprova.</translation>
<translation id="1491151370853475546">Ricarica questa pagina</translation>
<translation id="1549470594296187301">JavaScript deve essere attivato per utilizzare questa funzione.</translation>
+<translation id="1559572115229829303">&lt;p&gt;Impossibile stabilire una connessione privata con il sito <ph name="BEGIN_BOLD" /><ph name="DOMAIN" /><ph name="END_BOLD" /> perché data e ora del dispositivo (<ph name="DATE_AND_TIME" />) non sono corrette.&lt;/p&gt;
+
+ &lt;p&gt;Regola data e ora nella sezione &lt;strong&gt;Generali&lt;/strong&gt; dell'app &lt;strong&gt;Impostazioni&lt;/strong&gt;.&lt;/p&gt;</translation>
<translation id="1640180200866533862">Criteri utente</translation>
<translation id="1644184664548287040">La configurazione di rete non è valida e non può essere importata.</translation>
<translation id="1655462015569774233">{1,plural, =1{Questo server non è riuscito a verificare che si tratti di <ph name="DOMAIN" />; il relativo certificato di sicurezza è scaduto ieri. Il problema potrebbe essere dovuto a un'errata configurazione o a un malintenzionato che intercetta la connessione. L'orologio del computer è attualmente impostato su <ph name="CURRENT_DATE" />. È corretto? Se è sbagliato, dovresti regolare l'orologio e aggiornare la pagina.}other{Questo server non è riuscito a verificare che si tratti di <ph name="DOMAIN" />; il relativo certificato di sicurezza è scaduto # giorni fa. Il problema potrebbe essere dovuto a un'errata configurazione o a un malintenzionato che intercetta la connessione. L'orologio del computer è attualmente impostato su <ph name="CURRENT_DATE" />. È corretto? Se è sbagliato, dovresti regolare l'orologio e aggiornare la pagina.}}</translation>
@@ -90,6 +93,7 @@
<translation id="2922350208395188000">Il certificato del server non può essere verificato.</translation>
<translation id="2941952326391522266">Questo server non è riuscito a dimostrare che si tratta di <ph name="DOMAIN" />; il relativo certificato di sicurezza proviene da <ph name="DOMAIN2" />. Il problema potrebbe essere dovuto a un'errata configurazione o a un malintenzionato che intercetta la connessione.</translation>
<translation id="2958431318199492670">La configurazione di rete non è conforme allo standard ONC. Parti della configurazione potrebbero non essere importate.</translation>
+<translation id="2969319727213777354">Per poter stabilire una connessione protetta, l'orologio deve essere impostato correttamente perché i certificati utilizzati dai siti web per identificarsi sono validi soltanto per determinati periodi di tempo. L'orologio del dispositivo non è impostato sull'orario corretto, pertanto Chrome non può verificare i certificati.</translation>
<translation id="2972581237482394796">&amp;Ripeti</translation>
<translation id="3010559122411665027">Voce "<ph name="ENTRY_INDEX" />": <ph name="ERROR" /></translation>
<translation id="3024663005179499861">Tipo di criterio errato</translation>
diff --git a/chromium/components/strings/components_strings_iw.xtb b/chromium/components/strings/components_strings_iw.xtb
index ee7c9701394..cb3ee118b6f 100644
--- a/chromium/components/strings/components_strings_iw.xtb
+++ b/chromium/components/strings/components_strings_iw.xtb
@@ -24,6 +24,9 @@
<translation id="1455235771979731432">הייתה בעיה באימות הכרטיס. בדוק את החיבור לאינטרנט ונסה שוב.</translation>
<translation id="1491151370853475546">טען מחדש דף זה</translation>
<translation id="1549470594296187301">‏JavaScript צריך להיות מופעל כדי להשתמש בתכונה זו.</translation>
+<translation id="1559572115229829303">‏&lt;p&gt;לא ניתן ליצור חיבור פרטי אל <ph name="BEGIN_BOLD" /><ph name="DOMAIN" /><ph name="END_BOLD" /> משום שהתאריך והשעה במכשיר שלך (<ph name="DATE_AND_TIME" />) שגויים.&lt;/p&gt;
+
+ &lt;p&gt;שנה את התאריך והשעה בקטע &lt;strong&gt;כללי&lt;/strong&gt; באפליקציה &lt;strong&gt;הגדרות&lt;/strong&gt;‏.&lt;/p&gt;</translation>
<translation id="1640180200866533862">מדיניות משתמשים</translation>
<translation id="1644184664548287040">תצורת הרשת אינה חוקית ולא ניתן לייבא אותה.</translation>
<translation id="1655462015569774233">{1,plural, =1{השרת הזה לא הצליח להוכיח שהוא <ph name="DOMAIN" />; התוקף של אישור האבטחה שלו פג אתמול. ייתכן שהסיבה לכך היא הגדרה שגויה או שתוקף מיירט את החיבור שלך. התאריך המוגדר כעת בשעון המחשב שלך הוא <ph name="CURRENT_DATE" />. האם זה נכון? אם לא, עליך לכוון את שעון המערכת ולאחר מכן לרענן את הדף הזה.}two{השרת הזה לא הצליח להוכיח שהוא <ph name="DOMAIN" />; התוקף של אישור האבטחה שלו פג לפני יומיים. ייתכן שהסיבה לכך היא הגדרה שגויה או שתוקף מיירט את החיבור שלך. התאריך המוגדר כעת בשעון המחשב שלך הוא <ph name="CURRENT_DATE" />. האם זה נכון? אם לא, עליך לכוון את שעון המערכת ולאחר מכן לרענן את הדף הזה.}many{השרת הזה לא הצליח להוכיח שהוא <ph name="DOMAIN" />; התוקף של אישור האבטחה שלו פג לפני # ימים. ייתכן שהסיבה לכך היא הגדרה שגויה או שתוקף מיירט את החיבור שלך. התאריך המוגדר כעת בשעון המחשב שלך הוא <ph name="CURRENT_DATE" />. האם זה נכון? אם לא, עליך לכוון את שעון המערכת ולאחר מכן לרענן את הדף הזה.}other{השרת הזה לא הצליח להוכיח שהוא <ph name="DOMAIN" />; התוקף של אישור האבטחה שלו פג לפני # ימים. ייתכן שהסיבה לכך היא הגדרה שגויה או שתוקף מיירט את החיבור שלך. התאריך המוגדר כעת בשעון המחשב שלך הוא <ph name="CURRENT_DATE" />. האם זה נכון? אם לא, עליך לכוון את שעון המערכת ולאחר מכן לרענן את הדף הזה.}}</translation>
@@ -90,6 +93,7 @@
<translation id="2922350208395188000">לא ניתן לבדוק את אישור השרת.</translation>
<translation id="2941952326391522266">השרת הזה לא הצליח להוכיח שהוא <ph name="DOMAIN" />. אישור האבטחה שלו הוא מ-<ph name="DOMAIN2" />. ייתכן שהסיבה לכך היא תצורה שגויה או תוקף המיירט את החיבור שלך.</translation>
<translation id="2958431318199492670">‏תצורת הרשת אינה תואמת לתקן ONC. ייתכן שחלקים מהתצורה לא ייכללו בייבוא.</translation>
+<translation id="2969319727213777354">‏כדי ליצור חיבור מאובטח, השעון צריך להיות מוגדר כהלכה. הסיבה לכך היא שהאישורים שבאמצעותם אתרים מזהים את עצמם תקפים רק למשך פרקי זמן מסוימים. מאחר שהשעון במכשיר שלך שגוי, Google Chrome לא יכול לאמת את האישורים האלה.</translation>
<translation id="2972581237482394796">&amp;בצע שנית</translation>
<translation id="3010559122411665027">רשומה ברשימה "<ph name="ENTRY_INDEX" />": <ph name="ERROR" /></translation>
<translation id="3024663005179499861">סוג המדיניות שגוי</translation>
diff --git a/chromium/components/strings/components_strings_ja.xtb b/chromium/components/strings/components_strings_ja.xtb
index a533324e5e6..fc26d1d2907 100644
--- a/chromium/components/strings/components_strings_ja.xtb
+++ b/chromium/components/strings/components_strings_ja.xtb
@@ -24,6 +24,9 @@
<translation id="1455235771979731432">カードの確認中に問題が発生しました。インターネット接続を確認してから、もう一度お試しください。</translation>
<translation id="1491151370853475546">このページを再読み込み</translation>
<translation id="1549470594296187301">この機能を使用するには JavaScript を有効にする必要があります。</translation>
+<translation id="1559572115229829303">&lt;p&gt;デバイスの日時(<ph name="DATE_AND_TIME" />)が正しくないため、<ph name="BEGIN_BOLD" /><ph name="DOMAIN" /><ph name="END_BOLD" /> へのプライベート接続を確立できません。&lt;/p&gt;
+
+ &lt;p&gt;&lt;strong&gt;設定&lt;/strong&gt;アプリの [&lt;strong&gt;全般&lt;/strong&gt;] セクションで日時を調整してください。&lt;/p&gt;</translation>
<translation id="1640180200866533862">ユーザー ポリシー</translation>
<translation id="1644184664548287040">ネットワーク設定が無効なためインポートできませんでした。</translation>
<translation id="1655462015569774233">{1,plural, =1{このサーバーが <ph name="DOMAIN" /> であることを確認できませんでした。セキュリティ証明書の有効期限が昨日付けで切れています。原因として、設定が不適切であるか、悪意のあるユーザーが接続を妨害していることが考えられます。パソコンの時計は現在 <ph name="CURRENT_DATE" />に設定されています。この時刻が正しくない場合は、システムの時計を修正した後このページを更新してください。}other{このサーバーが <ph name="DOMAIN" /> であることを確認できませんでした。セキュリティ証明書の有効期限が # 日前に切れています。原因として、設定が不適切であるか、悪意のあるユーザーが接続を妨害していることが考えられます。パソコンの時計は現在 <ph name="CURRENT_DATE" />に設定されています。この時刻が正しくない場合は、システムの時計を修正した後このページを更新してください。}}</translation>
@@ -90,6 +93,7 @@
<translation id="2922350208395188000">サーバーの証明書を確認できません。</translation>
<translation id="2941952326391522266">このサーバーが <ph name="DOMAIN" /> であることを確認できませんでした。このサーバーのセキュリティ証明書は <ph name="DOMAIN2" /> から発行されています。原因としては、不適切な設定や、悪意のあるユーザーによる接続妨害が考えられます。</translation>
<translation id="2958431318199492670">ネットワーク設定が ONC 標準に準拠していません。設定の一部がインポートされない可能性があります。</translation>
+<translation id="2969319727213777354">安全な接続を確立するには、時計が正しく設定されている必要があります。これは、ウェブサイトが自身を証明するために使用する証明書には有効期限があるためです。デバイスの時計が正しくないため、Google Chrome でこれらの証明書を確認することができません。</translation>
<translation id="2972581237482394796">やり直し(&amp;R)</translation>
<translation id="3010559122411665027">リスト エントリ「<ph name="ENTRY_INDEX" />」: <ph name="ERROR" /></translation>
<translation id="3024663005179499861">ポリシー タイプが間違っています</translation>
diff --git a/chromium/components/strings/components_strings_kn.xtb b/chromium/components/strings/components_strings_kn.xtb
index 25933197e2f..c3a0868e7f1 100644
--- a/chromium/components/strings/components_strings_kn.xtb
+++ b/chromium/components/strings/components_strings_kn.xtb
@@ -24,6 +24,9 @@
<translation id="1455235771979731432">ನಿಮ್ಮ ಕಾರ್ಡ್ ಅನ್ನು ಪರಿಶೀಲಿಸುವಲ್ಲಿ ಸಮಸ್ಯೆ ಇದೆ. ನಿಮ್ಮ ಇಂಟರ್ನೆಟ್ ಸಂಪರ್ಕವನ್ನು ಪರಿಶೀಲಿಸಿ ಹಾಗೂ ಮತ್ತೆ ಪ್ರಯತ್ನಿಸಿ.</translation>
<translation id="1491151370853475546">ಪುಟ ಮರುಲೋಡ್ ಮಾಡು</translation>
<translation id="1549470594296187301">ಈ ವೈಶಿಷ್ಟ್ಯವನ್ನು ಬಳಸಲು JavaScript ಸಕ್ರಿಯಗೊಳಿಸಬೇಕು.</translation>
+<translation id="1559572115229829303">&lt;p&gt;ನಿಮ್ಮ ಸಾಧನದ ದಿನಾಂಕ ಮತ್ತು ಸಮಯ (<ph name="DATE_AND_TIME" />) ತಪ್ಪಾಗಿರುವ ಕಾರಣ <ph name="BEGIN_BOLD" /><ph name="DOMAIN" /><ph name="END_BOLD" /> ಗೆ ಖಾಸಗಿ ಸಂಪರ್ಕವನ್ನು ಸ್ಥಾಪಿಸಲು ಸಾಧ್ಯವಾಗುವುದಿಲ್ಲ.&lt;/p&gt;
+
+ &lt;p&gt;ದಯವಿಟ್ಟು ಅಪ್ಲಿಕೇಶನ್‌ನ &lt;strong&gt;ಸೆಟ್ಟಿಂಗ್‌ಗಳು&lt;/strong&gt; ವಿಭಾಗದ &lt;strong&gt;ಸಾಮಾನ್ಯ&lt;/strong&gt; ದಿಂದ ದಿನಾಂಕ ಮತ್ತು ಸಮಯವನ್ನು ಹೊಂದಿಸಿ.&lt;/p&gt;</translation>
<translation id="1640180200866533862">ಬಳಕೆದಾರನ ನೀತಿಗಳು</translation>
<translation id="1644184664548287040">ನೆಟ್‌ವರ್ಕ್ ಕಾನ್ಫಿಗರೇಶನ್‌ ಅಮಾನ್ಯವಾಗಿದೆ ಹಾಗೂ ಆಮದು ಮಾಡಲಾಗುವುದಿಲ್ಲ.</translation>
<translation id="1655462015569774233">{1,plural, =1{ಈ ಸರ್ವರ್ <ph name="DOMAIN" /> ಆಗಿದೆ ಎಂಬುದನ್ನು ಸಾಬೀತುಪಡಿಸಲು ಸಾಧ್ಯವಾಗಲಿಲ್ಲ; ಅದರ ಸುರಕ್ಷತಾ ಪ್ರಮಾಣಪತ್ರದ ಅವಧಿಯು ನಿನ್ನೆ ಮುಗಿದಿದೆ. ಇದು ತಪ್ಪು ಕಾನ್ಫಿಗರೇಶನ್‌ನಿಂದ ಅಥವಾ ಆಕ್ರಮಣಕಾರರು ನಿಮ್ಮ ಸಂಪರ್ಕದಲ್ಲಿ ಒಳನುಸುಳಿರುವುದರಿಂದ ಆಗಿರಬಹುದು. ನಿಮ್ಮ ಕಂಪ್ಯೂಟರ್‌ನ ಗಡಿಯಾರವನ್ನು ಪ್ರಸ್ತುತ <ph name="CURRENT_DATE" /> ಗೆ ಹೊಂದಿಸಲಾಗಿದೆ. ಅದು ಸರಿಯಾಗಿದೆಯೇ? ಇಲ್ಲದಿದ್ದರೆ, ನಿಮ್ಮ ಸಿಸ್ಟಂನ ಗಡಿಯಾರವನ್ನು ನೀವು ಸರಿಪಡಿಸಿ ಹಾಗೂ ನಂತರ ಈ ಪುಟವನ್ನು ರಿಫ್ರೆಶ್ ಮಾಡಿ.}one{ಈ ಸರ್ವರ್ <ph name="DOMAIN" /> ಆಗಿದೆ ಎಂಬುದನ್ನು ಸಾಬೀತುಪಡಿಸಲು ಸಾಧ್ಯವಾಗಲಿಲ್ಲ; ಅದರ ಸುರಕ್ಷತಾ ಪ್ರಮಾಣಪತ್ರದ ಅವಧಿಯು # ದಿನಗಳ ಹಿಂದೆ ಮುಗಿದಿದೆ. ಇದು ತಪ್ಪು ಕಾನ್ಫಿಗರೇಶನ್‌ನಿಂದ ಅಥವಾ ಆಕ್ರಮಣಕಾರರು ನಿಮ್ಮ ಸಂಪರ್ಕದಲ್ಲಿ ಒಳನುಸುಳಿರುವುದರಿಂದ ಆಗಿರಬಹುದು. ನಿಮ್ಮ ಕಂಪ್ಯೂಟರ್‌ನ ಗಡಿಯಾರವನ್ನು ಪ್ರಸ್ತುತ <ph name="CURRENT_DATE" /> ಗೆ ಹೊಂದಿಸಲಾಗಿದೆ. ಅದು ಸರಿಯಾಗಿದೆಯೇ? ಇಲ್ಲದಿದ್ದರೆ, ನಿಮ್ಮ ಸಿಸ್ಟಂನ ಗಡಿಯಾರವನ್ನು ನೀವು ಸರಿಪಡಿಸಿ ಹಾಗೂ ನಂತರ ಈ ಪುಟವನ್ನು ರಿಫ್ರೆಶ್ ಮಾಡಿ.}other{ಈ ಸರ್ವರ್ <ph name="DOMAIN" /> ಆಗಿದೆ ಎಂಬುದನ್ನು ಸಾಬೀತುಪಡಿಸಲು ಸಾಧ್ಯವಾಗಲಿಲ್ಲ; ಅದರ ಸುರಕ್ಷತಾ ಪ್ರಮಾಣಪತ್ರದ ಅವಧಿಯು # ದಿನಗಳ ಹಿಂದೆ ಮುಗಿದಿದೆ. ಇದು ತಪ್ಪು ಕಾನ್ಫಿಗರೇಶನ್‌ನಿಂದ ಅಥವಾ ಆಕ್ರಮಣಕಾರರು ನಿಮ್ಮ ಸಂಪರ್ಕದಲ್ಲಿ ಒಳನುಸುಳಿರುವುದರಿಂದ ಆಗಿರಬಹುದು. ನಿಮ್ಮ ಕಂಪ್ಯೂಟರ್‌ನ ಗಡಿಯಾರವನ್ನು ಪ್ರಸ್ತುತ <ph name="CURRENT_DATE" /> ಗೆ ಹೊಂದಿಸಲಾಗಿದೆ. ಅದು ಸರಿಯಾಗಿದೆಯೇ? ಇಲ್ಲದಿದ್ದರೆ, ನಿಮ್ಮ ಸಿಸ್ಟಂನ ಗಡಿಯಾರವನ್ನು ನೀವು ಸರಿಪಡಿಸಿ ಹಾಗೂ ನಂತರ ಈ ಪುಟವನ್ನು ರಿಫ್ರೆಶ್ ಮಾಡಿ.}}</translation>
@@ -90,6 +93,7 @@
<translation id="2922350208395188000">ಸರ್ವರ್‌ನ ಪ್ರಮಾಣಪತ್ರವನ್ನು ಪರಿಶೀಲಿಸಲಾಗುವುದಿಲ್ಲ.</translation>
<translation id="2941952326391522266">ಈ ಸರ್ವರ್ <ph name="DOMAIN" /> ಆಗಿದೆ ಎಂಬುದನ್ನು ಸಾಬೀತುಪಡಿಸಲು ಸಾಧ್ಯವಾಗಲಿಲ್ಲ; ಅದರ ಸುರಕ್ಷತಾ ಪ್ರಮಾಣಪತ್ರವು <ph name="DOMAIN2" /> ದಿಂದ ಆಗಿದೆ. ಇದು ತಪ್ಪು ಕಾನ್ಫಿಗರೇಶನ್‌ನಿಂದ ಅಥವಾ ಆಕ್ರಮಣಕಾರರು ನಿಮ್ಮ ಸಂಪರ್ಕದಲ್ಲಿ ಒಳನುಸುಳಿರುವುದರಿಂದ ಆಗಿರಬಹುದು.</translation>
<translation id="2958431318199492670">ONC ಪ್ರಮಾಣಿತಕ್ಕೆ ನೆಟ್‌ವರ್ಕ್ ಕಾನ್ಫಿಗರೇಶನ್ ಅನುಸರಣೆಯಾಗುವುದಿಲ್ಲ. ಕಾನ್ಫಿಗರೇಶನ್‌ನ ಭಾಗಗಳನ್ನು ಆಮದು ಮಾಡಲಾಗದಿರಬಹುದು.</translation>
+<translation id="2969319727213777354">ಸುರಕ್ಷಿತ ಸಂಪರ್ಕವನ್ನು ಸ್ಥಾಪಿಸಲು, ನಿಮ್ಮ ಗಡಿಯಾರವನ್ನು ಸರಿಯಾಗಿ ಹೊಂದಿಸಬೇಕಾದ ಅಗತ್ಯವಿದೆ. ವೆಬ್‌ಸೈಟ್‌ಗಳು ತಮ್ಮನ್ನು ಗುರುತಿಸಲು ಬಳಸುವ ಪ್ರಮಾಣಪತ್ರಗಳು ನಿರ್ದಿಷ್ಟ ಅವಧಿಗಳಲ್ಲಿ ಮಾತ್ರ ಮಾನ್ಯವಾಗಿರುವ ಕಾರಣ ಹೀಗಾಗುತ್ತದೆ. ನಿಮ್ಮ ಸಾಧನದ ಗಡಿಯಾರವು ತಪ್ಪಾಗಿರುವ ಕಾರಣ, Google Chrome ಗೆ ಈ ಪ್ರಮಾಣಪತ್ರಗಳನ್ನು ಪರಿಶೀಲಿಸಲು ಸಾಧ್ಯವಾಗುವುದಿಲ್ಲ.</translation>
<translation id="2972581237482394796">&amp;ಮತ್ತೆಮಾಡು</translation>
<translation id="3010559122411665027">ಪಟ್ಟಿ ನಮೂದು "<ph name="ENTRY_INDEX" />": <ph name="ERROR" /></translation>
<translation id="3024663005179499861">ತಪ್ಪಾದ ನೀತಿಯ ಪ್ರಕಾರ</translation>
diff --git a/chromium/components/strings/components_strings_ko.xtb b/chromium/components/strings/components_strings_ko.xtb
index e55270996f9..546c6d62afc 100644
--- a/chromium/components/strings/components_strings_ko.xtb
+++ b/chromium/components/strings/components_strings_ko.xtb
@@ -24,6 +24,9 @@
<translation id="1455235771979731432">카드를 인증하는 중에 문제가 발생했습니다. 인터넷 연결을 확인하고 다시 시도하세요.</translation>
<translation id="1491151370853475546">페이지 새로고침</translation>
<translation id="1549470594296187301">이 기능을 이용하려면 자바스크립트를 사용하도록 설정해야 합니다.</translation>
+<translation id="1559572115229829303">&lt;p&gt;기기의 날짜와 시간(<ph name="DATE_AND_TIME" />)이 잘못되어 <ph name="BEGIN_BOLD" /><ph name="DOMAIN" /><ph name="END_BOLD" />에 비공개로 연결할 수 없습니다.&lt;/p&gt;
+
+ &lt;p&gt;&lt;strong&gt;설정&lt;/strong&gt; 앱의 &lt;strong&gt;일반&lt;/strong&gt; 섹션에서 날짜와 시간을 맞추세요.&lt;/p&gt;</translation>
<translation id="1640180200866533862">사용자 정책</translation>
<translation id="1644184664548287040">네트워크 구성이 잘못되어 가져올 수 없습니다.</translation>
<translation id="1655462015569774233">{1,plural, =1{서버의 보안 인증서가 어제 만료되어 <ph name="DOMAIN" />임을 입증할 수 없습니다. 서버를 잘못 설정했거나 불법 사용자가 연결을 가로채고 있기 때문일 수 있습니다. 현재 컴퓨터의 시계가 <ph name="CURRENT_DATE" />로 설정되어 있습니다. 시간이 정확하지 않으면 시스템 시계를 수정한 뒤 이 페이지를 새로고침하세요.}other{서버의 보안 인증서가 #일 전에 만료되어 <ph name="DOMAIN" />임을 입증할 수 없습니다. 서버를 잘못 설정했거나 불법 사용자가 연결을 가로채고 있기 때문일 수 있습니다. 현재 컴퓨터의 시계가 <ph name="CURRENT_DATE" />로 설정되어 있습니다. 시간이 정확하지 않으면 시스템 시계를 수정한 뒤 이 페이지를 새로고침하세요.}}</translation>
@@ -90,6 +93,7 @@
<translation id="2922350208395188000">서버 인증서를 확인할 수 없습니다.</translation>
<translation id="2941952326391522266">이 서버가 <ph name="DOMAIN" />임을 입증할 수 없으며 서버의 보안 인증서가 <ph name="DOMAIN2" />에서 제공한 것입니다. 서버를 잘못 설정했거나 불법 사용자가 연결을 가로채고 있기 때문일 수 있습니다.</translation>
<translation id="2958431318199492670">네트워크 설정이 ONC 표준을 준수하지 않습니다. 일부 설정을 가져올 수 없습니다.</translation>
+<translation id="2969319727213777354">보안 연결을 설정하려면 시계가 올바로 설정되어 있어야 합니다. 웹사이트가 자신을 식별하는 데 사용하는 인증서는 특정 기간에만 유효하기 때문입니다. 기기의 시계가 잘못 설정되어 Chrome에서 이 인증서를 확인할 수 없습니다.</translation>
<translation id="2972581237482394796">다시 실행(&amp;R)</translation>
<translation id="3010559122411665027">목록 항목 '<ph name="ENTRY_INDEX" />': <ph name="ERROR" /></translation>
<translation id="3024663005179499861">잘못된 정책 유형</translation>
diff --git a/chromium/components/strings/components_strings_lt.xtb b/chromium/components/strings/components_strings_lt.xtb
index 82cc381ea48..ad7af25e124 100644
--- a/chromium/components/strings/components_strings_lt.xtb
+++ b/chromium/components/strings/components_strings_lt.xtb
@@ -24,6 +24,9 @@
<translation id="1455235771979731432">Patvirtinant kortelę kilo problema. Patikrinkite interneto ryšį ir bandykite dar kartą.</translation>
<translation id="1491151370853475546">Iš naujo įkelti šį puslapį</translation>
<translation id="1549470594296187301">Norint naudoti šią funkciją, reikia įgalinti „JavaScript“.</translation>
+<translation id="1559572115229829303">&lt;p&gt;Nepavyksta užmegzti privataus ryšio su <ph name="BEGIN_BOLD" /><ph name="DOMAIN" /><ph name="END_BOLD" />, nes įrenginio data ir laikas (<ph name="DATE_AND_TIME" />) yra netinkami.&lt;/p&gt;
+
+ &lt;p&gt;Koreguokite datą ir laiką programos &lt;strong&gt;Settings&lt;/strong&gt; skiltyje &lt;strong&gt;General&lt;/strong&gt;.&lt;/p&gt;</translation>
<translation id="1640180200866533862">Naudotojo politika</translation>
<translation id="1644184664548287040">Tinklo konfigūracija netinkama ir jos neįmanoma importuoti.</translation>
<translation id="1655462015569774233">{1,plural, =1{Šiam serveriui nepavyko patvirtinti, kad tai yra <ph name="DOMAIN" />; jo saugos sertifikato galiojimas baigėsi vakar. Taip gali nutikti dėl netinkamos konfigūracijos ar dėl ryšį pertraukusio užpuoliko. Šiuo metu kompiuterio laikrodis nustatytas į <ph name="CURRENT_DATE" />. Ar tai tinkama? Jei netinkama, turėtumėte koreguoti sistemos laikrodį ir atnaujinti šį puslapį.}one{Šiam serveriui nepavyko patvirtinti, kad tai yra <ph name="DOMAIN" />; jo saugos sertifikato galiojimas baigėsi prieš # dieną. Taip gali nutikti dėl netinkamos konfigūracijos ar dėl ryšį pertraukusio užpuoliko. Šiuo metu kompiuterio laikrodis nustatytas į <ph name="CURRENT_DATE" />. Ar tai tinkama? Jei netinkama, turėtumėte koreguoti sistemos laikrodį ir atnaujinti šį puslapį.}few{Šiam serveriui nepavyko patvirtinti, kad tai yra <ph name="DOMAIN" />; jo saugos sertifikato galiojimas baigėsi prieš # dienas. Taip gali nutikti dėl netinkamos konfigūracijos ar dėl ryšį pertraukusio užpuoliko. Šiuo metu kompiuterio laikrodis nustatytas į <ph name="CURRENT_DATE" />. Ar tai tinkama? Jei netinkama, turėtumėte koreguoti sistemos laikrodį ir atnaujinti šį puslapį.}many{Šiam serveriui nepavyko patvirtinti, kad tai yra <ph name="DOMAIN" />; jo saugos sertifikato galiojimas baigėsi prieš # dienos. Taip gali nutikti dėl netinkamos konfigūracijos ar dėl ryšį pertraukusio užpuoliko. Šiuo metu kompiuterio laikrodis nustatytas į <ph name="CURRENT_DATE" />. Ar tai tinkama? Jei netinkama, turėtumėte koreguoti sistemos laikrodį ir atnaujinti šį puslapį.}other{Šiam serveriui nepavyko patvirtinti, kad tai yra <ph name="DOMAIN" />; jo saugos sertifikato galiojimas baigėsi prieš # dienų. Taip gali nutikti dėl netinkamos konfigūracijos ar dėl ryšį pertraukusio užpuoliko. Šiuo metu kompiuterio laikrodis nustatytas į <ph name="CURRENT_DATE" />. Ar tai tinkama? Jei netinkama, turėtumėte koreguoti sistemos laikrodį ir atnaujinti šį puslapį.}}</translation>
@@ -90,6 +93,7 @@
<translation id="2922350208395188000">Neįmanoma patikrinti serverio sertifikato.</translation>
<translation id="2941952326391522266">Šiam serveriui nepavyko patvirtinti, kad tai yra <ph name="DOMAIN" />; jo saugos sertifikatas yra iš <ph name="DOMAIN2" />. Taip gali nutikti dėl netinkamos konfigūracijos ar dėl ryšį pertraukusio užgrobėjo.</translation>
<translation id="2958431318199492670">Tinklo konfigūracija neatitinka ONC standarto. Kai kurių konfigūracijos dalių neįmanoma importuoti.</translation>
+<translation id="2969319727213777354">Kad užmegztumėte saugų ryšį, turėsite tinkamai nustatyti laikrodį. To reikia, nes svetainių tapatybei įrodyti naudojami sertifikatai galioja tik tam tikru laikotarpiu. Įrenginio laikrodis nustatytas netinkamai, todėl „Google Chrome“ negali patvirtinti šių sertifikatų.</translation>
<translation id="2972581237482394796">&amp;Atlikti iš naujo</translation>
<translation id="3010559122411665027">Sąrašo įrašas „<ph name="ENTRY_INDEX" />“: <ph name="ERROR" /></translation>
<translation id="3024663005179499861">Netinkamas politikos tipas</translation>
diff --git a/chromium/components/strings/components_strings_lv.xtb b/chromium/components/strings/components_strings_lv.xtb
index 88f2c0af1ac..464ad25fe77 100644
--- a/chromium/components/strings/components_strings_lv.xtb
+++ b/chromium/components/strings/components_strings_lv.xtb
@@ -24,6 +24,9 @@
<translation id="1455235771979731432">Verificējot jūsu karti, radās problēma. Pārbaudiet interneta savienojumu un mēģiniet vēlreiz.</translation>
<translation id="1491151370853475546">Atkārtoti ielādēt šo lapu</translation>
<translation id="1549470594296187301">Lai izmantotu šo funkciju, ir jābūt iespējotai valodai JavaScript.</translation>
+<translation id="1559572115229829303">&lt;p&gt;Nevar izveidot privātu savienojumu ar <ph name="BEGIN_BOLD" /><ph name="DOMAIN" /><ph name="END_BOLD" />, jo jūsu ierīces datums un laiks (<ph name="DATE_AND_TIME" />) nav pareizi.&lt;/p&gt;
+
+ &lt;p&gt;Lūdzu, koriģējiet datumu un laiku lietotnes &lt;strong&gt;Iestatījumi&lt;/strong&gt; sadaļā &lt;strong&gt;Vispārīgi&lt;/strong&gt;.&lt;/p&gt;</translation>
<translation id="1640180200866533862">Lietotāja politikas</translation>
<translation id="1644184664548287040">Tīkla konfigurācija nav derīga, un to nevarēja importēt.</translation>
<translation id="1655462015569774233">{1,plural, =1{Šis serveris nevarēja pierādīt, ka ir <ph name="DOMAIN" />; tā drošības sertifikāta derīguma termiņš beidzās vakar. Šī problēma var rasties nepareizas konfigurācijas dēļ vai tādēļ, ka kāds uzbrucējs ir pārtvēris jūsu savienojumu. Jūsu datora pulkstenī pašlaik ir iestatīts šāds datums: <ph name="CURRENT_DATE" />. Vai tas ir pareizs? Ja datums nav pareizs, mainiet sistēmas pulksteni un pēc tam atsvaidziniet šo lapu.}zero{Šis serveris nevarēja pierādīt, ka ir <ph name="DOMAIN" />; tā drošības sertifikāta derīguma termiņš beidzās pirms # dienām. Šī problēma var rasties nepareizas konfigurācijas dēļ vai tādēļ, ka kāds uzbrucējs ir pārtvēris jūsu savienojumu. Jūsu datora pulkstenī pašlaik ir iestatīts šāds datums: <ph name="CURRENT_DATE" />. Vai tas ir pareizs? Ja datums nav pareizs, mainiet sistēmas pulksteni un pēc tam atsvaidziniet šo lapu.}one{Šis serveris nevarēja pierādīt, ka ir <ph name="DOMAIN" />; tā drošības sertifikāta derīguma termiņš beidzās pirms # dienas. Šī problēma var rasties nepareizas konfigurācijas dēļ vai tādēļ, ka kāds uzbrucējs ir pārtvēris jūsu savienojumu. Jūsu datora pulkstenī pašlaik ir iestatīts šāds datums: <ph name="CURRENT_DATE" />. Vai tas ir pareizs? Ja datums nav pareizs, mainiet sistēmas pulksteni un pēc tam atsvaidziniet šo lapu.}other{Šis serveris nevarēja pierādīt, ka ir <ph name="DOMAIN" />; tā drošības sertifikāta derīguma termiņš beidzās pirms # dienām. Šī problēma var rasties nepareizas konfigurācijas dēļ vai tādēļ, ka kāds uzbrucējs ir pārtvēris jūsu savienojumu. Jūsu datora pulkstenī pašlaik ir iestatīts šāds datums: <ph name="CURRENT_DATE" />. Vai tas ir pareizs? Ja datums nav pareizs, mainiet sistēmas pulksteni un pēc tam atsvaidziniet šo lapu.}}</translation>
@@ -90,6 +93,7 @@
<translation id="2922350208395188000">Servera sertifikātu nevar pārbaudīt.</translation>
<translation id="2941952326391522266">Šis serveris nevarēja pierādīt, ka šī ir vietne <ph name="DOMAIN" />; tās drošības sertifikāts ir saistīts ar domēnu <ph name="DOMAIN2" />. Iespējams, tas ir nepareizas konfigurācijas dēļ vai arī kāds ir ļaunprātīgi izmantojis jūsu savienojumu.</translation>
<translation id="2958431318199492670">Tīkla konfigurācija neatbilst standartam ONC. Iespējams, konfigurācijas daļas netiks importētas.</translation>
+<translation id="2969319727213777354">Lai izveidotu drošu savienojumu, ir jāiestata pareizs pulksteņa laiks. Tas ir nepieciešams, jo sertifikāti, kurus vietnes izmanto, lai tiktu identificētas, ir derīgi tikai noteiktos laika periodos. Tā kā jūsu ierīces pulkstenis nav pareizs, Google Chrome nevar verificēt šos sertifikātus.</translation>
<translation id="2972581237482394796">&amp;Pāratsaukt</translation>
<translation id="3010559122411665027">Saraksta ieraksts “<ph name="ENTRY_INDEX" />”: <ph name="ERROR" /></translation>
<translation id="3024663005179499861">Politikas tips nav pareizs.</translation>
diff --git a/chromium/components/strings/components_strings_ml.xtb b/chromium/components/strings/components_strings_ml.xtb
index 512736ae974..2b17e8b22f7 100644
--- a/chromium/components/strings/components_strings_ml.xtb
+++ b/chromium/components/strings/components_strings_ml.xtb
@@ -24,6 +24,9 @@
<translation id="1455235771979731432">നിങ്ങളുടെ കാർഡ് പരിശോധിച്ചുറപ്പിക്കുന്നതിൽ ഒരു പ്രശ്‌നമുണ്ടായിരുന്നു. ഇന്റർ‌നെറ്റ് കണക്ഷൻ പരിശോധിച്ച് വീണ്ടും ശ്രമിക്കുക.</translation>
<translation id="1491151370853475546">ഈ പേജ് വീണ്ടും ലോഡുചെയ്യുക</translation>
<translation id="1549470594296187301">ഈ ഫീച്ചർ ഉപയോഗിക്കാൻ JavaScript പ്രവർത്തനക്ഷമമാക്കിയിരിക്കണം.</translation>
+<translation id="1559572115229829303">&lt;p&gt;നിങ്ങളുടെ ഉപകരണത്തിന്റെ തീയതിയും സമയവും (<ph name="DATE_AND_TIME" />) തെറ്റായതിനാൽ <ph name="BEGIN_BOLD" /><ph name="DOMAIN" /><ph name="END_BOLD" /> എന്നതിലേക്ക് ഒരു സ്വകാര്യ കണക്ഷൻ സ്ഥാപിക്കാനാകില്ല.&lt;/p&gt;
+
+ &lt;p&gt;&lt;strong&gt;ക്രമീകരണ&lt;/strong&gt; ആപ്പിന്റെ &lt;strong&gt;പൊതുവായവ&lt;/strong&gt; വിഭാഗത്തിൽ നിന്ന് തീയതിയും സമയവും ക്രമീകരിക്കുക.&lt;/p&gt;</translation>
<translation id="1640180200866533862">ഉപയോക്തൃ നയങ്ങൾ</translation>
<translation id="1644184664548287040">നെറ്റ്‌വർക്ക് കോൺഫിഗറേഷൻ അസാധുവായതിനാൽ ഇമ്പോർട്ടുചെയ്യാൻ കഴിഞ്ഞില്ല.</translation>
<translation id="1655462015569774233">{1,plural, =1{ഈ സെർവറിന് ഇത് <ph name="DOMAIN" /> ആണെന്ന് തെളിയിക്കാനായില്ല; അതിന്റെ സുരക്ഷാ സർട്ടിഫിക്കറ്റ് ഇന്നലെ കാലഹരണപ്പെട്ടു. തെറ്റായ കോൺഫിഗറേഷൻ കാരണമോ ഒരു ആക്രമണകാരി നിങ്ങളുടെ കണക്ഷനെ തടസ്സപ്പെടുത്തുന്നത് കൊണ്ടോ ആയിരിക്കാം ഇത് സംഭവിച്ചത്. നിങ്ങളുടെ കമ്പ്യൂട്ടറിന്റെ ക്ലോക്ക് നിലവിൽ <ph name="CURRENT_DATE" /> എന്ന് സജ്ജമാക്കി. അത് ശരിയാണോ? അല്ലെങ്കിൽ, നിങ്ങൾ സിസ്റ്റത്തിന്റെ ക്ലോക്ക് ശരിയാക്കി ഈ പേജ് പുതുക്കുക.}other{ഈ സെർവറിന് ഇത് <ph name="DOMAIN" /> ആണെന്ന് തെളിയിക്കാനായില്ല; ഇതിന്റെ സുരക്ഷാ സർട്ടിഫിക്കറ്റ് # ദിവസം മുമ്പ് കാലഹരണപ്പെട്ടു. തെറ്റായ കോൺഫിഗറേഷൻ കാരണമോ ഒരു ആക്രമണകാരി നിങ്ങളുടെ കണക്ഷനെ തടസ്സപ്പെടുത്തുന്നത് കൊണ്ടോ ആയിരിക്കാം ഇത് സംഭവിച്ചത്. നിങ്ങളുടെ കമ്പ്യൂട്ടറിന്റെ ക്ലോക്ക് നിലവിൽ <ph name="CURRENT_DATE" /> എന്ന് സജ്ജമാക്കി. അത് ശരിയാണോ? അല്ലെങ്കിൽ, നിങ്ങൾ സിസ്റ്റത്തിന്റെ ക്ലോക്ക് ശരിയാക്കി ഈ പേജ് പുതുക്കുക.}}</translation>
@@ -90,6 +93,7 @@
<translation id="2922350208395188000">സെര്‍വറിന്‍റെ സര്‍ട്ടിഫിക്കറ്റ് പരിശോധിക്കാന്‍ കഴിയില്ല.</translation>
<translation id="2941952326391522266">ഈ സെർവറിന് അത് <ph name="DOMAIN" /> ആണെന്ന് തെളിയിക്കാനായില്ല; <ph name="DOMAIN2" /> എന്നതിൽ നിന്നുള്ളതാണ് അതിന്റെ സുരക്ഷാ സർട്ടിഫിക്കറ്റ്. തെറ്റായ കോൺഫിഗറേഷൻ കാരണമോ ഒരു അക്രമണകാരി നിങ്ങളുടെ കണക്ഷനെ തടസ്സപ്പെടുത്തുന്നത് കൊണ്ടോ ആയിരിക്കാം ഇത് സംഭവിച്ചത്.</translation>
<translation id="2958431318199492670">നെറ്റ്‌വർക്ക് കോൺഫിഗറേഷൻ ONC സ്റ്റാൻഡേർഡിന് അനുസൃതമായി പ്രവർത്തിക്കുന്നില്ല. കോൺഫിഗറേഷൻ ഭാഗങ്ങൾ ഇമ്പോർട്ടുചെയ്‌തേക്കില്ല.</translation>
+<translation id="2969319727213777354">ഒരു സുരക്ഷിത കണക്ഷൻ സ്ഥാപിക്കുന്നതിന്, നിങ്ങളുടെ ക്ലോക്ക് ശരിയായി സജ്ജീകരിക്കേണ്ടതുണ്ട്. വെബ്‌സൈറ്റുകൾ സ്വയം തിരിച്ചറിയുന്നതിന് ഉപയോഗിക്കുന്ന സർട്ടിഫിക്കറ്റുകൾ, നിർദ്ദിഷ്‌ട സമയ പരിധിയിൽ മാത്രം സാധുതയുള്ളതിനാലാണിത്. നിങ്ങളുടെ ഉപകരണത്തിന്റെ ക്ലോക്ക് തെറ്റായിരിക്കുന്നതിനാൽ, Google Chrome-ന് ഈ സർട്ടിഫിക്കറ്റുകൾ പരിശോധിച്ചുറപ്പിക്കാനാവില്ല.</translation>
<translation id="2972581237482394796">&amp;വീണ്ടും ചെയ്യുക</translation>
<translation id="3010559122411665027">ലിസ്റ്റ് എൻട്രി "<ph name="ENTRY_INDEX" />": <ph name="ERROR" /></translation>
<translation id="3024663005179499861">തെറ്റായ നയ തരം</translation>
diff --git a/chromium/components/strings/components_strings_mr.xtb b/chromium/components/strings/components_strings_mr.xtb
index 144f3146198..e53a7c6646e 100644
--- a/chromium/components/strings/components_strings_mr.xtb
+++ b/chromium/components/strings/components_strings_mr.xtb
@@ -24,6 +24,9 @@
<translation id="1455235771979731432">आपले कार्ड सत्यापित करताना समस्या आली. आपले इंटरनेट कनेक्शन तपासा आणि पुन्हा प्रयत्न करा.</translation>
<translation id="1491151370853475546">हे पृष्ठ रीलोड करा</translation>
<translation id="1549470594296187301">हे वैशिष्‍ट्य वापरण्‍यासाठी JavaScript सक्षम करणे आवश्‍यक आहे.</translation>
+<translation id="1559572115229829303">&lt;p&gt;आपल्या डिव्हाइसची तारीख आणि वेळ (<ph name="DATE_AND_TIME" />) चुकीची असल्यामुळे <ph name="BEGIN_BOLD" /><ph name="DOMAIN" /><ph name="END_BOLD" /> सह खाजगी कनेक्शन स्थापित केले जाऊ शकत नाही.&lt;/p&gt;
+
+ &lt;p&gt;कृपया &lt;strong&gt;सेटिंग्ज&lt;/strong&gt; अॅपच्या &lt;strong&gt;सर्वसाधारण&lt;/strong&gt; विभागातील तारीख आणि वेळ समायोजित करा.&lt;/p&gt;</translation>
<translation id="1640180200866533862">वापरकर्ता धोरणे</translation>
<translation id="1644184664548287040">नेटवर्क कॉन्फिगरेशन अवैध आहे आणि आयात केले जाऊ शकले नाही.</translation>
<translation id="1655462015569774233">{1,plural, =1{हा सर्व्हर हे <ph name="DOMAIN" /> असल्याचे सिद्ध करू शकला नाही; त्याचे सुरक्षा प्रमाणपत्र काल कालबाह्य झाले. हे कदाचित एका चुकीच्या कॉन्फिगरेशनमुळे किंवा आक्रमणकर्त्याने आपले कनेक्शन आंतरखंडित केल्यामुळे झाले असू शकते. आपले संगणक सध्या <ph name="CURRENT_DATE" /> वर सेट आहे. ते योग्य दिसते आहे? नसल्यास, आपण आपल्या सिस्टीमचे घड्याळ दुरूस्त करावे आणि त्यानंतर हे पृष्ठ रीफ्रेश करा.}one{हा सर्व्हर हे <ph name="DOMAIN" />असल्याचे सिद्ध करू शकला नाही; त्याचे सुरक्षा प्रमाणपत्र # दिवसांपूर्वी कालबाह्य झाले. हे कदाचित एका चुकीच्या कॉन्फिगरेशनमुळे किंवा आक्रमणकर्त्याने आपले कनेक्शन आंतरखंडित केल्यामुळे झाले असू शकते. आपले संगणक सध्या <ph name="CURRENT_DATE" /> वर सेट आहे. ते योग्य दिसते आहे? नसल्यास, आपण आपल्या सिस्टीमचे घड्याळ दुरूस्त करावे आणि त्यानंतर हे पृष्ठ रीफ्रेश करा.}other{हा सर्व्हर हे <ph name="DOMAIN" />असल्याचे सिद्ध करू शकला नाही; त्याचे सुरक्षा प्रमाणपत्र # दिवसांपूर्वी कालबाह्य झाले. हे कदाचित एका चुकीच्या कॉन्फिगरेशनमुळे किंवा आक्रमणकर्त्याने आपले कनेक्शन आंतरखंडित केल्यामुळे झाले असू शकते. आपले संगणक सध्या <ph name="CURRENT_DATE" /> वर सेट आहे. ते योग्य दिसते आहे? नसल्यास, आपण आपल्या सिस्टीमचे घड्याळ दुरूस्त करावे आणि त्यानंतर हे पृष्ठ रीफ्रेश करा.}}</translation>
@@ -90,6 +93,7 @@
<translation id="2922350208395188000">सर्व्हरचे प्रमाणपत्र तपासणे शक्य नाही.</translation>
<translation id="2941952326391522266">हा सर्व्हर हे <ph name="DOMAIN" /> असल्याचे सिद्ध करू शकला नाही; त्याचे सुरक्षितता प्रमाणपत्र <ph name="DOMAIN2" /> वरील आहे. हे कदाचित एका चुकीच्या कॉन्फिगरेशनमुळे किंवा आक्रमणकर्त्याने आपले कनेक्शन आंतरखंडित केल्यामुळे झाले असू शकते.</translation>
<translation id="2958431318199492670">नेटवर्क कॉन्फिगरेशन ONC मानकाचे पालन करत नाही. कॉन्फिगरेशनचे भाग आयात केले जाऊ शकत नाहीत.</translation>
+<translation id="2969319727213777354">एक सुरक्षित कनेक्‍शन स्‍थापित करण्‍यापूर्वी, आपले घड्‍याळ योग्यरित्या सेट केले असणे आवश्यक आहे. वेबसाइट त्यांना स्‍वत:ला ओळखण्‍यासाठी वापरतात ती प्रमाणपत्रे केवळ निर्दिष्‍ट केलेल्‍या कालावधीसाठी वैध असल्याने हे असू शकते. आपल्‍या डिव्‍हाइसचे घड्‍याळ चुकीचे असल्‍यामुळे, Google Chrome ही प्रमाणपत्रे सत्यापित करू शकत नाही.</translation>
<translation id="2972581237482394796">&amp;पुन्हा करा</translation>
<translation id="3010559122411665027">सूची प्रविष्टी "<ph name="ENTRY_INDEX" />": <ph name="ERROR" /></translation>
<translation id="3024663005179499861">चुकीचा धोरण प्रकार</translation>
diff --git a/chromium/components/strings/components_strings_ms.xtb b/chromium/components/strings/components_strings_ms.xtb
index 5051fa2bdfc..6b9ebe5ca68 100644
--- a/chromium/components/strings/components_strings_ms.xtb
+++ b/chromium/components/strings/components_strings_ms.xtb
@@ -24,6 +24,9 @@
<translation id="1455235771979731432">Terdapat masalah mengesahkan kad anda. Semak sambungan internet anda dan cuba lagi.</translation>
<translation id="1491151370853475546">Muatkan semula Halaman Ini</translation>
<translation id="1549470594296187301">Javascript mesti didayakan untuk menggunakan ciri ini.</translation>
+<translation id="1559572115229829303">&lt;p&gt;Sambungan peribadi ke <ph name="BEGIN_BOLD" /><ph name="DOMAIN" /><ph name="END_BOLD" /> tidak boleh diwujudkan kerana tarikh dan masa peranti anda (<ph name="DATE_AND_TIME" />) tidak betul.&lt;/p&gt;
+
+ &lt;p&gt;Sila laraskan tarikh dan masa daripada bahagian &lt;strong&gt;Umum&lt;/strong&gt; bagi apl &lt;strong&gt;Tetapan&lt;/strong&gt;.&lt;/p&gt;</translation>
<translation id="1640180200866533862">Dasar pengguna</translation>
<translation id="1644184664548287040">Konfigurasi rangkaian tidak sah dan tidak boleh diimport.</translation>
<translation id="1655462015569774233">{1,plural, =1{Pelayan ini tidak dapat membuktikan bahawa <ph name="DOMAIN" />; sijil keselamatannya tamat tempoh semalam. Ini mungkin disebabkan oleh kesilapan konfigurasi atau penyerang yang memintas sambungan anda. Jam komputer anda ditetapkan kepada <ph name="CURRENT_DATE" /> pada masa ini. Adakah itu betul? Jika tidak, anda perlu membetulkan jam sistem anda dan kemudian muat semula halaman ini.}other{Pelayan ini tidak dapat membuktikan bahawa <ph name="DOMAIN" />; sijil keselamatannya tamat tempoh # hari yang lalu. Ini mungkin disebabkan oleh kesilapan konfigurasi atau penyerang yang memintas sambungan anda. Jam komputer anda ditetapkan kepada <ph name="CURRENT_DATE" /> pada masa ini. Adakah itu betul? Jika tidak, anda perlu membetulkan jam sistem anda dan kemudian muat semula halaman ini.}}</translation>
@@ -90,6 +93,7 @@
<translation id="2922350208395188000">Sijil pelayan tidak boleh diperiksa.</translation>
<translation id="2941952326391522266">Pelayan ini tidak dapat membuktikan bahawa domainnya ialah <ph name="DOMAIN" />; sijil keselamatannya adalah dari <ph name="DOMAIN2" />. Ini mungkin disebabkan oleh kesilapan konfigurasi atau penyerang yang memintasi sambungan anda.</translation>
<translation id="2958431318199492670">Konfigurasi rangkaian tidak mematuhi piawaian ONC. Sebahagian konfigurasi tidak boleh diimport.</translation>
+<translation id="2969319727213777354">Untuk mewujudkan sambungan yang selamat, jam anda perlu ditetapkan dengan betul. Perkara ini perlu dilakukan kerana sijil yang digunakan laman web untuk mengenal pastinya hanya sah untuk tempoh masa yang tertentu. Memandangkan jam peranti anda tidak betul, Google Chrome tidak boleh mengesahkan sijil ini.</translation>
<translation id="2972581237482394796">&amp;Buat Semula</translation>
<translation id="3010559122411665027">Masukan senarai "<ph name="ENTRY_INDEX" />": <ph name="ERROR" /></translation>
<translation id="3024663005179499861">Jenis dasar salah</translation>
diff --git a/chromium/components/strings/components_strings_nl.xtb b/chromium/components/strings/components_strings_nl.xtb
index adeec2cb99c..83345763202 100644
--- a/chromium/components/strings/components_strings_nl.xtb
+++ b/chromium/components/strings/components_strings_nl.xtb
@@ -24,6 +24,9 @@
<translation id="1455235771979731432">Er is een probleem opgetreden bij het verifiëren van je kaart. Controleer je internetverbinding en probeer het opnieuw.</translation>
<translation id="1491151370853475546">Deze pagina opnieuw laden</translation>
<translation id="1549470594296187301">JavaScript moet zijn ingeschakeld om deze functie te kunnen gebruiken.</translation>
+<translation id="1559572115229829303">&lt;p&gt;Er kan geen privéverbinding met <ph name="BEGIN_BOLD" /><ph name="DOMAIN" /><ph name="END_BOLD" /> tot stand worden gebracht, omdat de datum en tijd van je apparaat (<ph name="DATE_AND_TIME" />) onjuist zijn.&lt;/p&gt;
+
+ &lt;p&gt;Pas in het gedeelte &lt;strong&gt;Algemeen&lt;/strong&gt; van de app &lt;strong&gt;Instellingen&lt;/strong&gt; de datum en tijd aan.&lt;/p&gt;</translation>
<translation id="1640180200866533862">Gebruikersbeleid</translation>
<translation id="1644184664548287040">De netwerkconfiguratie is ongeldig en kan niet worden geïmporteerd.</translation>
<translation id="1655462015569774233">{1,plural, =1{Deze server kan niet bewijzen dat dit <ph name="DOMAIN" /> is. Het bijbehorende beveiligingscertificaat is gisteren verlopen. Dit kan worden veroorzaakt door een verkeerde configuratie of een aanvaller die je verbinding onderschept. De klok van je computer is momenteel ingesteld op <ph name="CURRENT_DATE" />. Is dat correct? Zo niet, dan moet je de klok van je systeem aanpassen en vervolgens deze pagina vernieuwen.}other{Deze server kan niet bewijzen dat dit <ph name="DOMAIN" /> is. Het bijbehorende beveiligingscertificaat is # dagen geleden verlopen. Dit kan worden veroorzaakt door een verkeerde configuratie of een aanvaller die je verbinding onderschept. De klok van je computer is momenteel ingesteld op <ph name="CURRENT_DATE" />. Is dat correct? Zo niet, dan moet je de klok van je systeem aanpassen en vervolgens deze pagina vernieuwen.}}</translation>
@@ -90,6 +93,7 @@
<translation id="2922350208395188000">Het servercertificaat kan niet worden gecontroleerd.</translation>
<translation id="2941952326391522266">De server kan niet bewijzen dat dit <ph name="DOMAIN" /> is. Het beveiligingscertificaat van de server is afkomstig van <ph name="DOMAIN2" />. Dit kan worden veroorzaakt door een verkeerde configuratie of een aanvaller die je verbinding onderschept.</translation>
<translation id="2958431318199492670">De netwerkconfiguratie voldoet niet aan de ONC-standaard. Delen van de configuratie worden mogelijk niet geïmporteerd.</translation>
+<translation id="2969319727213777354">Als je een beveiligde verbinding tot stand wilt brengen, moet je klok correct zijn ingesteld. Dit moet omdat de certificaten die deze websites gebruiken om zichzelf te identificeren, slechts gedurende bepaalde perioden geldig zijn. Aangezien de klok van je apparaat niet goed is ingesteld, kan Chrome deze certificaten niet verifiëren.</translation>
<translation id="2972581237482394796">&amp;Opnieuw</translation>
<translation id="3010559122411665027">Lijstitem '<ph name="ENTRY_INDEX" />': <ph name="ERROR" /></translation>
<translation id="3024663005179499861">Onjuist beleidstype</translation>
diff --git a/chromium/components/strings/components_strings_no.xtb b/chromium/components/strings/components_strings_no.xtb
index da9f207786f..5f2b58dfcac 100644
--- a/chromium/components/strings/components_strings_no.xtb
+++ b/chromium/components/strings/components_strings_no.xtb
@@ -24,6 +24,9 @@
<translation id="1455235771979731432">Det oppsto et problem under forsøket på å bekrefte kortet ditt. Kontrollér Internett-tilkoblingen din, og prøv igjen.</translation>
<translation id="1491151370853475546">Last inn denne siden på nytt</translation>
<translation id="1549470594296187301">Denne funksjonen kan ikke brukes når JavaScript er slått av.</translation>
+<translation id="1559572115229829303">&lt;p&gt;Vi kan ikke opprette noen privat tilkobling til <ph name="BEGIN_BOLD" /><ph name="DOMAIN" /><ph name="END_BOLD" />, fordi datoen og klokkeslettet (<ph name="DATE_AND_TIME" />) på enheten din er feil.&lt;/p&gt;
+
+ &lt;p&gt;Juster datoen og klokkeslettet under &lt;strong&gt;Generelt&lt;/strong&gt; i &lt;strong&gt;Innstillinger&lt;/strong&gt;-appen.&lt;/p&gt;</translation>
<translation id="1640180200866533862">Brukerretningslinjer</translation>
<translation id="1644184664548287040">Nettverkskonfigurasjonen er ugyldig og kan ikke importeres.</translation>
<translation id="1655462015569774233">{1,plural, =1{Denne tjeneren kunne ikke bevise at den er <ph name="DOMAIN" />, ettersom sikkerhetssertifikatet utløp i går. Dette kan skyldes en feilkonfigurasjon eller at en angriper avskjærer tilkoblingen mellom deg og nettstedet. Klokken på datamaskinen din er stilt til <ph name="CURRENT_DATE" />. Er det riktig? Hvis ikke bør du stille klokken på systemet og laste inn denne siden på nytt.}other{Denne tjeneren kunne ikke bevise at den er <ph name="DOMAIN" />, ettersom sikkerhetssertifikatet utløp for # dager siden. Dette kan skyldes en feilkonfigurasjon eller at en angriper avskjærer tilkoblingen mellom deg og nettstedet. Klokken på datamaskinen din er stilt til <ph name="CURRENT_DATE" />. Er det riktig? Hvis ikke bør du stille klokken på systemet og laste inn denne siden på nytt.}}</translation>
@@ -90,6 +93,7 @@
<translation id="2922350208395188000">Tjenerens sertifikat kan ikke kontrolleres.</translation>
<translation id="2941952326391522266">Denne tjeneren kunne ikke bevise at den er <ph name="DOMAIN" />. Tjenerens sikkerhetssertifikat er fra <ph name="DOMAIN2" />. Dette kan være forårsaket av en feilkonfigurering eller en angriper som avskjærer tilkoblingen din.</translation>
<translation id="2958431318199492670">Nettverkskonfigurasjonen overholder ikke ONC-standarden. Deler av konfigurasjonen kan muligens ikke importeres.</translation>
+<translation id="2969319727213777354">Klokken må være riktig stilt før du kan opprette sikre tilkoblinger. Grunnen til dette er at sertifikatene nettsteder identifiserer seg med, bare er gyldige i visse tidsperioder. Ettersom klokken på enheten din er feil, kan ikke Google Chrome bekrefte disse sertifikatene.</translation>
<translation id="2972581237482394796">Gjø&amp;r om</translation>
<translation id="3010559122411665027">Listeoppføring «<ph name="ENTRY_INDEX" />»: <ph name="ERROR" /></translation>
<translation id="3024663005179499861">Feil type enhetsinnstillinger</translation>
@@ -257,7 +261,7 @@
<translation id="7275334191706090484">Administrerte bokmerker</translation>
<translation id="7298195798382681320">Anbefalt</translation>
<translation id="7334320624316649418">&amp;Omorganiser likevel</translation>
-<translation id="7378627244592794276">Nei takk</translation>
+<translation id="7378627244592794276">Nei, takk</translation>
<translation id="7400418766976504921">Nettadresse</translation>
<translation id="7441627299479586546">Feil emne for innstillinger</translation>
<translation id="7485870689360869515">Ingen data ble funnet.</translation>
diff --git a/chromium/components/strings/components_strings_pl.xtb b/chromium/components/strings/components_strings_pl.xtb
index 3b6e1e60061..05af5021526 100644
--- a/chromium/components/strings/components_strings_pl.xtb
+++ b/chromium/components/strings/components_strings_pl.xtb
@@ -24,6 +24,9 @@
<translation id="1455235771979731432">Podczas weryfikacji karty wystąpił problem. Sprawdź połączenie internetowe i spróbuj ponownie.</translation>
<translation id="1491151370853475546">Załaduj tę stronę ponownie</translation>
<translation id="1549470594296187301">Aby można było korzystać z tej funkcji, musi być włączony JavaScript.</translation>
+<translation id="1559572115229829303">&lt;p&gt;Nie można nawiązać prywatnego połączenia z <ph name="BEGIN_BOLD" /><ph name="DOMAIN" /><ph name="END_BOLD" />, bo data i godzina (<ph name="DATE_AND_TIME" />) ustawione na urządzeniu są nieprawidłowe.&lt;/p&gt;
+
+ &lt;p&gt;Popraw datę i godzinę w sekcji &lt;strong&gt;Ogólne&lt;/strong&gt; w aplikacji &lt;strong&gt;Ustawienia&lt;/strong&gt;.&lt;/p&gt;</translation>
<translation id="1640180200866533862">Zasady dotyczące użytkowników</translation>
<translation id="1644184664548287040">Konfiguracja sieci jest nieprawidłowa i nie można jej zaimportować.</translation>
<translation id="1655462015569774233">{1,plural, =1{Ten serwer nie mógł udowodnić, że należy do <ph name="DOMAIN" />. Jego certyfikat bezpieczeństwa wygasł wczoraj. Może to być spowodowane błędną konfiguracją lub przechwyceniem połączenia. Zegar komputera jest obecnie ustawiony na <ph name="CURRENT_DATE" />. Czy to prawidłowa data? Jeśli nie, musisz skorygować zegar systemu, a następnie odświeżyć tę stronę.}few{Ten serwer nie mógł udowodnić, że należy do <ph name="DOMAIN" />. Jego certyfikat bezpieczeństwa wygasł # dni temu. Może to być spowodowane błędną konfiguracją lub przechwyceniem połączenia. Zegar komputera jest obecnie ustawiony na <ph name="CURRENT_DATE" />. Czy to prawidłowa data? Jeśli nie, musisz skorygować zegar systemu, a następnie odświeżyć tę stronę.}many{Ten serwer nie mógł udowodnić, że należy do <ph name="DOMAIN" />. Jego certyfikat bezpieczeństwa wygasł # dni temu. Może to być spowodowane błędną konfiguracją lub przechwyceniem połączenia. Zegar komputera jest obecnie ustawiony na <ph name="CURRENT_DATE" />. Czy to prawidłowa data? Jeśli nie, musisz skorygować zegar systemu, a następnie odświeżyć tę stronę.}other{Ten serwer nie mógł udowodnić, że należy do <ph name="DOMAIN" />. Jego certyfikat bezpieczeństwa wygasł # dnia temu. Może to być spowodowane błędną konfiguracją lub przechwyceniem połączenia. Zegar komputera jest obecnie ustawiony na <ph name="CURRENT_DATE" />. Czy to prawidłowa data? Jeśli nie, musisz skorygować zegar systemu, a następnie odświeżyć tę stronę.}}</translation>
@@ -90,6 +93,7 @@
<translation id="2922350208395188000">Nie można sprawdzić certyfikatu serwera.</translation>
<translation id="2941952326391522266">Ten serwer nie mógł udowodnić, że należy do <ph name="DOMAIN" />. Jego certyfikat pochodzi z <ph name="DOMAIN2" />. Może to być spowodowane błędną konfiguracją lub przechwyceniem połączenia przez atakującego.</translation>
<translation id="2958431318199492670">Konfiguracja sieci jest niezgodna ze standardem ONC. Jej fragmenty mogły nie zostać zaimportowane.</translation>
+<translation id="2969319727213777354">Aby urządzenie nawiązało bezpieczne połączenie, jego zegar musi wskazywać prawidłową godzinę. Jest to wymagane, bo certyfikaty używane do identyfikacji stron internetowych są ważne tylko przez określony czas. Zegar urządzenia jest ustawiony nieprawidłowo, więc Google Chrome nie może zweryfikować tych certyfikatów.</translation>
<translation id="2972581237482394796">&amp;Ponów</translation>
<translation id="3010559122411665027">Pozycja listy „<ph name="ENTRY_INDEX" />”: <ph name="ERROR" /></translation>
<translation id="3024663005179499861">Nieprawidłowy typ zasady</translation>
diff --git a/chromium/components/strings/components_strings_pt-BR.xtb b/chromium/components/strings/components_strings_pt-BR.xtb
index 59921aff541..9bb50894efa 100644
--- a/chromium/components/strings/components_strings_pt-BR.xtb
+++ b/chromium/components/strings/components_strings_pt-BR.xtb
@@ -24,6 +24,9 @@
<translation id="1455235771979731432">Houve um problema na verificação do seu cartão. Verifique a conexão com a Internet e tente novamente.</translation>
<translation id="1491151370853475546">Atualizar esta página</translation>
<translation id="1549470594296187301">O JavaScript deve ser ativado para usar este recurso.</translation>
+<translation id="1559572115229829303">&lt;p&gt;Não é possível estabelecer uma conexão particular com <ph name="BEGIN_BOLD" /><ph name="DOMAIN" /><ph name="END_BOLD" /> porque a data e hora do seu dispositivo (<ph name="DATE_AND_TIME" />) estão incorretas.&lt;/p&gt;
+
+ &lt;p&gt;Ajuste a data e hora na seção &lt;strong&gt;Geral&lt;/strong&gt; do aplicativo &lt;strong&gt;Config.&lt;/strong&gt;.&lt;/p&gt;</translation>
<translation id="1640180200866533862">Políticas de usuário</translation>
<translation id="1644184664548287040">A configuração de rede é inválida e não pôde ser importada.</translation>
<translation id="1655462015569774233">{1,plural, =1{Este servidor não conseguiu provar que é <ph name="DOMAIN" />; o certificado de segurança dele expirou ontem. Isso pode ser causado por uma configuração incorreta ou pela interceptação da sua conexão por um invasor. O relógio do seu computador está definido para <ph name="CURRENT_DATE" />. Essa data está correta? Se não estiver, corrija o relógio do sistema e depois atualize esta página.}one{Este servidor não conseguiu provar que é <ph name="DOMAIN" />. O certificado de segurança dele expirou há # dias. Isso pode ser causado por uma configuração incorreta ou pela interceptação da sua conexão por um invasor. O relógio do seu computador está definido para <ph name="CURRENT_DATE" />. Essa data está correta? Se não estiver, corrija o relógio do sistema e depois atualize esta página.}other{Este servidor não conseguiu provar que é <ph name="DOMAIN" />. O certificado de segurança dele expirou há # dias. Isso pode ser causado por uma configuração incorreta ou pela interceptação da sua conexão por um invasor. O relógio do seu computador está definido para <ph name="CURRENT_DATE" />. Essa data está correta? Se não estiver, corrija o relógio do sistema e depois atualize esta página.}}</translation>
@@ -90,6 +93,7 @@
<translation id="2922350208395188000">O certificado do servidor não pode ser verificado.</translation>
<translation id="2941952326391522266">Este servidor não conseguiu provar que é <ph name="DOMAIN" />. O certificado de segurança é de <ph name="DOMAIN2" />. Isso pode ser causado por uma configuração incorreta ou pela interceptação da sua conexão por um invasor.</translation>
<translation id="2958431318199492670">A configuração de rede não está de acordo com o padrão ONC. Partes da configuração podem não ser importadas.</translation>
+<translation id="2969319727213777354">Para estabelecer uma conexão segura, o relógio precisa estar configurado corretamente. Isso ocorre porque os certificados que os websites usam para se identificar são válidos apenas por períodos específicos. Como o relógio do seu dispositivo está incorreto, o Google Chrome não consegue verificar esses certificados.</translation>
<translation id="2972581237482394796">&amp;Refazer</translation>
<translation id="3010559122411665027">Entrada de lista "<ph name="ENTRY_INDEX" />": <ph name="ERROR" /></translation>
<translation id="3024663005179499861">Tipo de política incorreto</translation>
diff --git a/chromium/components/strings/components_strings_pt-PT.xtb b/chromium/components/strings/components_strings_pt-PT.xtb
index 1a2574ad486..edda0333eec 100644
--- a/chromium/components/strings/components_strings_pt-PT.xtb
+++ b/chromium/components/strings/components_strings_pt-PT.xtb
@@ -24,6 +24,9 @@
<translation id="1455235771979731432">Ocorreu um erro ao validar o cartão. Verifique a sua ligação à Internet e tente novamente.</translation>
<translation id="1491151370853475546">Atualizar esta Página</translation>
<translation id="1549470594296187301">É necessário ativar o JavaScript para utilizar esta funcionalidade.</translation>
+<translation id="1559572115229829303">&lt;p&gt;Não é possível estabelecer uma ligação privada a <ph name="BEGIN_BOLD" /><ph name="DOMAIN" /><ph name="END_BOLD" />, porque a data e a hora (<ph name="DATE_AND_TIME" />) do seu dispositivo estão incorretas.&lt;/p&gt;
+
+ &lt;p&gt;Ajuste a data e a hora na secção &lt;strong&gt;Geral&lt;/strong&gt; da aplicação &lt;strong&gt;Definições&lt;/strong&gt;.&lt;/p&gt;</translation>
<translation id="1640180200866533862">Políticas do utilizador</translation>
<translation id="1644184664548287040">A configuração de rede é inválida e não pode ser importada.</translation>
<translation id="1655462015569774233">{1,plural, =1{Este servidor não conseguiu provar que é <ph name="DOMAIN" />; o seu certificado de segurança expirou ontem. Isto pode ser o resultado de uma configuração incorreta ou de um invasor a intercetar a sua ligação. O relógio do seu computador está atualmente configurado para <ph name="CURRENT_DATE" />. Será que isso está correto? Em caso negativo, deve corrigir o relógio do seu sistema e depois atualizar esta página.}other{Este servidor não conseguiu provar que é <ph name="DOMAIN" />; o seu certificado de segurança expirou há # dias. Isto pode ser o resultado de uma configuração incorreta ou de um invasor a intercetar a sua ligação. O relógio do seu computador está atualmente configurado para <ph name="CURRENT_DATE" />. Será que isso está correto? Em caso negativo, deve corrigir o relógio do seu sistema e depois atualizar esta página.}}</translation>
@@ -90,6 +93,7 @@
<translation id="2922350208395188000">Não é possível verificar o certificado do servidor.</translation>
<translation id="2941952326391522266">Este servidor não conseguiu provar que é o domínio <ph name="DOMAIN" />; o respetivo certificado de segurança é do domínio <ph name="DOMAIN2" />. Isto pode ser o resultado de uma configuração incorreta ou de um invasor a intercetar a sua ligação.</translation>
<translation id="2958431318199492670">A configuração de rede não cumpre a norma ONC. Partes da configuração podem não ser importadas.</translation>
+<translation id="2969319727213777354">Para estabelecer uma ligação segura, o relógio tem de ser definido corretamente. Isto deve-se ao facto de os certificados que os Websites utilizam para se identificarem serem apenas válidos para períodos de tempo específicos. Uma vez que o relógio do seu dispositivo está incorreto, o Google Chrome não consegue validar estes certificados.</translation>
<translation id="2972581237482394796">&amp;Repetir</translation>
<translation id="3010559122411665027">Entrada da lista "<ph name="ENTRY_INDEX" />": <ph name="ERROR" /></translation>
<translation id="3024663005179499861">Tipo de política incorreto</translation>
diff --git a/chromium/components/strings/components_strings_ro.xtb b/chromium/components/strings/components_strings_ro.xtb
index fe73e256712..58f117c7e61 100644
--- a/chromium/components/strings/components_strings_ro.xtb
+++ b/chromium/components/strings/components_strings_ro.xtb
@@ -24,6 +24,9 @@
<translation id="1455235771979731432">A apărut o eroare la confirmarea cardului. Verifică conexiunea la internet și încearcă din nou.</translation>
<translation id="1491151370853475546">Reîncărcați această pagină</translation>
<translation id="1549470594296187301">Trebuie să activezi JavaScript pentru a folosi această funcție.</translation>
+<translation id="1559572115229829303">&lt;p&gt;O conexiune privată la <ph name="BEGIN_BOLD" /><ph name="DOMAIN" /><ph name="END_BOLD" /> nu poate fi stabilită, deoarece data și ora dispozitivului (<ph name="DATE_AND_TIME" />) sunt incorecte.&lt;/p&gt;
+
+ &lt;p&gt;Corectează data și ora din secțiunea &lt;strong&gt;General&lt;/strong&gt; a aplicației &lt;strong&gt;Setări&lt;/strong&gt;.&lt;/p&gt;</translation>
<translation id="1640180200866533862">Politici privind utilizatorii</translation>
<translation id="1644184664548287040">Configurația rețelei este nevalidă și nu a putut fi importată.</translation>
<translation id="1655462015569774233">{1,plural, =1{Acest server nu a putut dovedi că este <ph name="DOMAIN" />. Certificatul său de securitate a expirat ieri. Cauza poate fi o eroare de configurare sau interceptarea conexiunii de către un atacator. În prezent, ora computerului este setată la <ph name="CURRENT_DATE" />. Este corect? Dacă nu este, corectează ora sistemului și actualizează pagina.}few{Acest server nu a putut dovedi că este <ph name="DOMAIN" />. Certificatul său de securitate a expirat acum # zile. Cauza poate fi o eroare de configurare sau interceptarea conexiunii de către un atacator. În prezent, ora computerului este setată la <ph name="CURRENT_DATE" />. Este corect? Dacă nu este, corectează ora sistemului și actualizează pagina.}other{Acest server nu a putut dovedi că este <ph name="DOMAIN" />. Certificatul său de securitate a expirat acum # de zile. Cauza poate fi o eroare de configurare sau interceptarea conexiunii de către un atacator. În prezent, ora computerului este setată la <ph name="CURRENT_DATE" />. Este corect? Dacă nu este, corectează ora sistemului și actualizează pagina.}}</translation>
@@ -90,6 +93,7 @@
<translation id="2922350208395188000">Certificatul serverului nu poate fi verificat.</translation>
<translation id="2941952326391522266">Acest server nu a putut dovedi că este <ph name="DOMAIN" />; certificatul său de securitate provine de la <ph name="DOMAIN2" />. Cauza poate fi o configurare greșită sau interceptarea conexiunii de către un atacator.</translation>
<translation id="2958431318199492670">Configurația rețelei nu respectă standardul ONC. Este posibil ca anumite părți ale configurației să nu fie importate.</translation>
+<translation id="2969319727213777354">Pentru a stabili o conexiune securizată, ceasul trebuie să fie setat corect, deoarece certificatele pe care site-urile le folosesc pentru a se identifica sunt valabile numai pentru anumite intervale de timp. Din moment ce ora de pe dispozitiv este incorectă, Google Chrome nu poate verifica aceste certificate.</translation>
<translation id="2972581237482394796">&amp;Repetă</translation>
<translation id="3010559122411665027">Intrarea din listă „<ph name="ENTRY_INDEX" />”: <ph name="ERROR" /></translation>
<translation id="3024663005179499861">Tip de politică greșit</translation>
diff --git a/chromium/components/strings/components_strings_ru.xtb b/chromium/components/strings/components_strings_ru.xtb
index 2f1675979c1..230707c9f9f 100644
--- a/chromium/components/strings/components_strings_ru.xtb
+++ b/chromium/components/strings/components_strings_ru.xtb
@@ -24,6 +24,9 @@
<translation id="1455235771979731432">Не удалось подтвердить данные карты. Проверьте подключение к Интернету и повторите попытку.</translation>
<translation id="1491151370853475546">Обновить страницу</translation>
<translation id="1549470594296187301">Для использования этой функции необходимо включить JavaScript.</translation>
+<translation id="1559572115229829303">&lt;p&gt;Не удалось установить защищенное соединение с доменом <ph name="BEGIN_BOLD" /><ph name="DOMAIN" /><ph name="END_BOLD" /> из-за неверных настроек системных часов и календаря (<ph name="DATE_AND_TIME" />).&lt;/p&gt;
+
+ &lt;p&gt;Установите точную дату и время. Для этого откройте раздел &lt;strong&gt;Общие&lt;/strong&gt; в приложении &lt;strong&gt;Настройки&lt;/strong&gt;.&lt;/p&gt;</translation>
<translation id="1640180200866533862">Пользовательские правила</translation>
<translation id="1644184664548287040">Импорт невозможен: недопустимая конфигурация сети.</translation>
<translation id="1655462015569774233">{1,plural, =1{Не удалось подтвердить, что это сервер <ph name="DOMAIN" />. Срок действия его сертификата безопасности истек вчера. Возможно, сервер настроен неправильно или кто-то пытается перехватить ваши данные. Обратите внимание, что на компьютере установлено время <ph name="CURRENT_DATE" />. Если оно неправильное, измените его и обновите страницу.}one{Не удалось подтвердить, что это сервер <ph name="DOMAIN" />. Срок действия его сертификата безопасности истек # день назад. Возможно, сервер настроен неправильно или кто-то пытается перехватить ваши данные. Обратите внимание, что на компьютере установлено время <ph name="CURRENT_DATE" />. Если оно неправильное, измените его и обновите страницу.}few{Не удалось подтвердить, что это сервер <ph name="DOMAIN" />. Срок действия его сертификата безопасности истек # дня назад. Возможно, сервер настроен неправильно или кто-то пытается перехватить ваши данные. Обратите внимание, что на компьютере установлено время <ph name="CURRENT_DATE" />. Если оно неправильное, измените его и обновите страницу.}many{Не удалось подтвердить, что это сервер <ph name="DOMAIN" />. Срок действия его сертификата безопасности истек # дней назад. Возможно, сервер настроен неправильно или кто-то пытается перехватить ваши данные. Обратите внимание, что на компьютере установлено время <ph name="CURRENT_DATE" />. Если оно неправильное, измените его и обновите страницу.}other{Не удалось подтвердить, что это сервер <ph name="DOMAIN" />. Срок действия его сертификата безопасности истек # дня назад. Возможно, сервер настроен неправильно или кто-то пытается перехватить ваши данные. Обратите внимание, что на компьютере установлено время <ph name="CURRENT_DATE" />. Если оно неправильное, измените его и обновите страницу.}}</translation>
@@ -38,7 +41,7 @@
<translation id="194030505837763158">Перейдите по ссылке: <ph name="LINK" /></translation>
<translation id="1962204205936693436">Закладки <ph name="DOMAIN" /></translation>
<translation id="1973335181906896915">Не удалось выполнить сериализацию</translation>
-<translation id="1974060860693918893">Дополнительно</translation>
+<translation id="1974060860693918893">Дополнительные</translation>
<translation id="2025186561304664664">Прокси-сервер настраивается автоматически.</translation>
<translation id="2025623846716345241">Подтвердить обновление страницы</translation>
<translation id="2030481566774242610">Возможно, вы имели в виду <ph name="LINK" />.</translation>
@@ -90,6 +93,7 @@
<translation id="2922350208395188000">Не удается проверить сертификат сервера.</translation>
<translation id="2941952326391522266">Не удалось подтвердить, что это сервер <ph name="DOMAIN" />. Его сертификат безопасности относится к <ph name="DOMAIN2" />. Возможно, сервер настроен неправильно или кто-то пытается перехватить ваши данные.</translation>
<translation id="2958431318199492670">Некоторые элементы сетевой конфигурации невозможно импортировать, поскольку она не соответствует стандарту ONC.</translation>
+<translation id="2969319727213777354">Для создания безопасного подключения необходимо, чтобы показания системных часов были верны. Причина в том, что сертификаты для идентификации сайтов имеют ограниченный срок действия. Если часы на устройстве неточны, Chrome не может проверить актуальность этих сертификатов.</translation>
<translation id="2972581237482394796">&amp;Повторить</translation>
<translation id="3010559122411665027">Элемент списка "<ph name="ENTRY_INDEX" />": <ph name="ERROR" /></translation>
<translation id="3024663005179499861">Неверный тип политики</translation>
diff --git a/chromium/components/strings/components_strings_sk.xtb b/chromium/components/strings/components_strings_sk.xtb
index dcd316cb0a5..196e80e4519 100644
--- a/chromium/components/strings/components_strings_sk.xtb
+++ b/chromium/components/strings/components_strings_sk.xtb
@@ -24,6 +24,9 @@
<translation id="1455235771979731432">Pri overovaní karty sa vyskytol problém. Skontrolujte svoje pripojenie k internetu a skúste to znova.</translation>
<translation id="1491151370853475546">Znova načítať stránku</translation>
<translation id="1549470594296187301">Ak chcete použiť túto funkciu, musíte povoliť JavaScript.</translation>
+<translation id="1559572115229829303">&lt;p&gt;Súkromné pripojenie k doméne <ph name="BEGIN_BOLD" /><ph name="DOMAIN" /><ph name="END_BOLD" /> sa nedá nadviazať, pretože dátum a čas (<ph name="DATE_AND_TIME" />) vášho zariadenia sú nesprávne.&lt;/p&gt;
+
+ &lt;p&gt;Dátum a čas upravte v aplikácii &lt;strong&gt;Nastavenia&lt;/strong&gt; v sekcii &lt;strong&gt;Všeobecné&lt;/strong&gt;.&lt;/p&gt;</translation>
<translation id="1640180200866533862">Pravidlá pre používateľa</translation>
<translation id="1644184664548287040">Konfigurácia siete je neplatná a nepodarilo sa ju importovať.</translation>
<translation id="1655462015569774233">{1,plural, =1{Tomuto serveru sa nepodarilo dokázať, že ide o doménu <ph name="DOMAIN" />; platnosť jej bezpečnostného certifikátu vypršala včera. Môže to byť následok nesprávnej konfigurácie alebo napadnutia vášho pripojenia útočníkom. Hodiny vášho počítača sú momentálne nastavené na <ph name="CURRENT_DATE" />. Je tento čas správny? Ak nie, opravte čas na hodinách systému a potom obnovte túto stránku.}few{Tomuto serveru sa nepodarilo dokázať, že ide o doménu <ph name="DOMAIN" />; platnosť jej bezpečnostného certifikátu vypršala pred # dňami. Môže to byť následok nesprávnej konfigurácie alebo napadnutia vášho pripojenia útočníkom. Hodiny vášho počítača sú momentálne nastavené na <ph name="CURRENT_DATE" />. Je tento čas správny? Ak nie, opravte čas na hodinách systému a potom obnovte túto stránku.}many{Tomuto serveru sa nepodarilo dokázať, že ide o doménu <ph name="DOMAIN" />; platnosť jej bezpečnostného certifikátu vypršala pred # dňom. Môže to byť následok nesprávnej konfigurácie alebo napadnutia vášho pripojenia útočníkom. Hodiny vášho počítača sú momentálne nastavené na <ph name="CURRENT_DATE" />. Je tento čas správny? Ak nie, opravte čas na hodinách systému a potom obnovte túto stránku.}other{Tomuto serveru sa nepodarilo dokázať, že ide o doménu <ph name="DOMAIN" />; platnosť jej bezpečnostného certifikátu vypršala pred # dňami. Môže to byť následok nesprávnej konfigurácie alebo napadnutia vášho pripojenia útočníkom. Hodiny vášho počítača sú momentálne nastavené na <ph name="CURRENT_DATE" />. Je tento čas správny? Ak nie, opravte čas na hodinách systému a potom obnovte túto stránku.}}</translation>
@@ -90,6 +93,7 @@
<translation id="2922350208395188000">Certifikát servera sa nedá overiť.</translation>
<translation id="2941952326391522266">Server nedokáže overiť, či ide o doménu <ph name="DOMAIN" />, jej bezpečnostný certifikát pochádza z domény <ph name="DOMAIN2" />. Môže to byť spôsobené nesprávnou konfiguráciou alebo tým, že vaše pripojenie zachytil útočník.</translation>
<translation id="2958431318199492670">Konfigurácia siete nie je v súlade so štandardom ONC. Niektoré časti konfigurácie sa nemusia importovať.</translation>
+<translation id="2969319727213777354">Ak chcete nadviazať zabezpečené pripojenie, vaše hodiny musia byť nastavené správne. Je to preto, že certifikáty, ktoré webové stránky používajú na vlastnú identifikáciu, sú platné iba určitý čas. Keďže nie sú hodiny vášho zariadenia nastavené správne, Chrome nemôže tieto certifikáty overiť.</translation>
<translation id="2972581237482394796">&amp;Dopredu</translation>
<translation id="3010559122411665027">Položka zoznamu „<ph name="ENTRY_INDEX" />“: <ph name="ERROR" /></translation>
<translation id="3024663005179499861">Chybný typ pravidla</translation>
diff --git a/chromium/components/strings/components_strings_sl.xtb b/chromium/components/strings/components_strings_sl.xtb
index 9ef8d2ec9fc..979176942d7 100644
--- a/chromium/components/strings/components_strings_sl.xtb
+++ b/chromium/components/strings/components_strings_sl.xtb
@@ -24,6 +24,9 @@
<translation id="1455235771979731432">Težava pri preverjanju kartice. Preverite internetno povezavo in poskusite znova.</translation>
<translation id="1491151370853475546">Znova naloži stran</translation>
<translation id="1549470594296187301">Če želite uporabljati to funkcijo, mora biti omogočen JavaScript.</translation>
+<translation id="1559572115229829303">&lt;p&gt;Zasebne povezave z domeno <ph name="BEGIN_BOLD" /><ph name="DOMAIN" /><ph name="END_BOLD" /> ni mogoče vzpostaviti, ker sta datum in ura (<ph name="DATE_AND_TIME" />) v napravi nepravilna.&lt;/p&gt;
+
+ &lt;p&gt;V razdelku &lt;strong&gt;Splošno&lt;/strong&gt; aplikacije &lt;strong&gt;Nastavitve&lt;/strong&gt; prilagodite datum in uro.&lt;/p&gt;</translation>
<translation id="1640180200866533862">Uporabniški pravilniki</translation>
<translation id="1644184664548287040">Omrežna konfiguracija ni veljavna in je ni mogoče uvoziti.</translation>
<translation id="1655462015569774233">{1,plural, =1{Strežniku ni uspelo dokazati, da je domena <ph name="DOMAIN" />; njegovo varnostno potrdilo je poteklo včeraj. Razlog za to je lahko napačna konfiguracija ali napadalčevo prestrezanje povezave. Ura vašega računalnika je trenutno nastavljena na <ph name="CURRENT_DATE" />. Je to videti v redu? Če ni, pravilno nastavite sistemsko uro in nato osvežite stran.}one{Strežniku ni uspelo dokazati, da je domena <ph name="DOMAIN" />; njegovo varnostno potrdilo je poteklo pred # dnevom. Razlog za to je lahko napačna konfiguracija ali napadalčevo prestrezanje povezave. Ura vašega računalnika je trenutno nastavljena na <ph name="CURRENT_DATE" />. Je to videti v redu? Če ni, pravilno nastavite sistemsko uro in nato osvežite stran.}two{Strežniku ni uspelo dokazati, da je domena <ph name="DOMAIN" />; njegovo varnostno potrdilo je poteklo pred # dnevoma. Razlog za to je lahko napačna konfiguracija ali napadalčevo prestrezanje povezave. Ura vašega računalnika je trenutno nastavljena na <ph name="CURRENT_DATE" />. Je to videti v redu? Če ni, pravilno nastavite sistemsko uro in nato osvežite stran.}few{Strežniku ni uspelo dokazati, da je domena <ph name="DOMAIN" />; njegovo varnostno potrdilo je poteklo pred # dnevi. Razlog za to je lahko napačna konfiguracija ali napadalčevo prestrezanje povezave. Ura vašega računalnika je trenutno nastavljena na <ph name="CURRENT_DATE" />. Je to videti v redu? Če ni, pravilno nastavite sistemsko uro in nato osvežite stran.}other{Strežniku ni uspelo dokazati, da je domena <ph name="DOMAIN" />; njegovo varnostno potrdilo je poteklo pred # dnevi. Razlog za to je lahko napačna konfiguracija ali napadalčevo prestrezanje povezave. Ura vašega računalnika je trenutno nastavljena na <ph name="CURRENT_DATE" />. Je to videti v redu? Če ni, pravilno nastavite sistemsko uro in nato osvežite stran.}}</translation>
@@ -91,6 +94,7 @@
<translation id="2922350208395188000">Potrdila strežnika ni mogoče preveriti.</translation>
<translation id="2941952326391522266">Strežniku ni uspelo dokazati, da je res <ph name="DOMAIN" />; njegovo varnostno potrdilo je od <ph name="DOMAIN2" />. Razlog za to je lahko napačna konfiguracija ali napadalčevo prestrezanje povezave.</translation>
<translation id="2958431318199492670">Omrežna konfiguracija ne ustreza standardu ONC. Deli konfiguracije morda niso bili uvoženi.</translation>
+<translation id="2969319727213777354">Če želite vzpostaviti varno povezavo, mora biti ura pravilno nastavljena. Potrdila, ki jih uporabljajo spletna mesta za prepoznavanje, namreč veljajo samo določen čas. Ker je ura naprave nepravilna, Google Chrome teh potrdil ne more preveriti.</translation>
<translation id="2972581237482394796">&amp;Uveljavi</translation>
<translation id="3010559122411665027">Vnos na sznamu »<ph name="ENTRY_INDEX" />«: <ph name="ERROR" /></translation>
<translation id="3024663005179499861">Napačna vrsta pravilnika</translation>
diff --git a/chromium/components/strings/components_strings_sr.xtb b/chromium/components/strings/components_strings_sr.xtb
index 25faf165d33..36d50cc640d 100644
--- a/chromium/components/strings/components_strings_sr.xtb
+++ b/chromium/components/strings/components_strings_sr.xtb
@@ -24,6 +24,9 @@
<translation id="1455235771979731432">Дошло је до проблема при верификацији картице. Проверите интернет везу и покушајте поново.</translation>
<translation id="1491151370853475546">Поново учитај ову страницу</translation>
<translation id="1549470594296187301">JavaScript мора да буде омогућен да бисте користили ову функцију.</translation>
+<translation id="1559572115229829303">&lt;p&gt;Није могуће успоставити приватну везу са доменом <ph name="BEGIN_BOLD" /><ph name="DOMAIN" /><ph name="END_BOLD" /> јер датум и време на уређају (<ph name="DATE_AND_TIME" />) нису тачни.&lt;/p&gt;
+
+ &lt;p&gt;Прилагодите датум и време у одељку &lt;strong&gt;Опште&lt;/strong&gt; у апликацији &lt;strong&gt;Подешавања&lt;/strong&gt;.&lt;/p&gt;</translation>
<translation id="1640180200866533862">Смернице за кориснике</translation>
<translation id="1644184664548287040">Конфигурација мреже је неважећа и не може да се увезе.</translation>
<translation id="1655462015569774233">{1,plural, =1{Овај сервер не може да докаже да је <ph name="DOMAIN" />; његов безбедносни сертификат је истекао јуче. Узрок томе је можда погрешна конфигурација или нападач који је прекинуо везу. Сат рачунара је тренутно подешен на <ph name="CURRENT_DATE" />. Да ли је то тачно? Ако није, требало би да исправите сат система и да затим освежите ову страницу.}one{Овај сервер не може да докаже да је <ph name="DOMAIN" />; његов безбедносни сертификат је истекао пре # дана. Узрок томе је можда погрешна конфигурација или нападач који је прекинуо везу. Сат рачунара је тренутно подешен на <ph name="CURRENT_DATE" />. Да ли је то тачно? Ако није, требало би да исправите сат система и да затим освежите ову страницу.}few{Овај сервер не може да докаже да је <ph name="DOMAIN" />; његов безбедносни сертификат је истекао пре # дана. Узрок томе је можда погрешна конфигурација или нападач који је прекинуо везу. Сат рачунара је тренутно подешен на <ph name="CURRENT_DATE" />. Да ли је то тачно? Ако није, требало би да исправите сат система и да затим освежите ову страницу.}other{Овај сервер не може да докаже да је <ph name="DOMAIN" />; његов безбедносни сертификат је истекао пре # дана. Узрок томе је можда погрешна конфигурација или нападач који је прекинуо везу. Сат рачунара је тренутно подешен на <ph name="CURRENT_DATE" />. Да ли је то тачно? Ако није, требало би да исправите сат система и да затим освежите ову страницу.}}</translation>
@@ -90,6 +93,7 @@
<translation id="2922350208395188000">Није могуће проверити сертификат сервера.</translation>
<translation id="2941952326391522266">Овај сервер не може да докаже да је <ph name="DOMAIN" />; његов безбедносни сертификат је са домена <ph name="DOMAIN2" />. Узрок томе је можда погрешна конфигурација или нападач који је прекинуо везу.</translation>
<translation id="2958431318199492670">Конфигурација мреже није у складу са ONC стандардом. Делови конфигурације не могу да се увезу.</translation>
+<translation id="2969319727213777354">Да бисте успоставили безбедну везу, сат на уређају мора да буде тачан. То је зато што сертификати које веб-сајтови користе за идентификацију важе само за одређене временске периоде. Пошто сат на вашем уређају није тачан, Google Chrome не може да верификује те сертификате.</translation>
<translation id="2972581237482394796">&amp;Понови радњу</translation>
<translation id="3010559122411665027">Унос на листи „<ph name="ENTRY_INDEX" />“: <ph name="ERROR" /></translation>
<translation id="3024663005179499861">Погрешан тип смерница</translation>
diff --git a/chromium/components/strings/components_strings_sv.xtb b/chromium/components/strings/components_strings_sv.xtb
index a9155227b57..5ef1e50431e 100644
--- a/chromium/components/strings/components_strings_sv.xtb
+++ b/chromium/components/strings/components_strings_sv.xtb
@@ -24,6 +24,9 @@
<translation id="1455235771979731432">Det gick inte att verifiera kortet. Kontrollera internetanslutningen och försök igen.</translation>
<translation id="1491151370853475546">Hämta sidan igen</translation>
<translation id="1549470594296187301">JavaScript måste aktiveras för att du ska kunna använda den här funktionen.</translation>
+<translation id="1559572115229829303">&lt;p&gt;Det gick inte att upprätta en privat anslutning till <ph name="BEGIN_BOLD" /><ph name="DOMAIN" /><ph name="END_BOLD" /> eftersom enhetens datum och tid (<ph name="DATE_AND_TIME" />) inte stämmer.&lt;/p&gt;
+
+ &lt;p&gt;Ändra datumet och tiden under &lt;strong&gt;Allmänt&lt;/strong&gt; i appen &lt;strong&gt;Inställningar&lt;/strong&gt;.&lt;/p&gt;</translation>
<translation id="1640180200866533862">Användarpolicyer</translation>
<translation id="1644184664548287040">Nätverkskonfigurationen är ogiltig och kan inte importeras.</translation>
<translation id="1655462015569774233">{1,plural, =1{Det gick inte att bevisa att serverns identitet är <ph name="DOMAIN" /> eftersom dess säkerhetscertifikat gick ut i går. Det kan bero på att servern är felkonfigurerad eller att anslutningen har blivit kapad. Dagens datum är <ph name="CURRENT_DATE" /> enligt datorklockan. Går den rätt? I annat fall bör du ställa om datorklockan och sedan uppdatera sidan.}other{Det gick inte att bevisa att serverns identitet är <ph name="DOMAIN" /> eftersom dess säkerhetscertifikat gick ut för # dagar sedan. Det kan bero på att servern är felkonfigurerad eller att anslutningen har blivit kapad. Dagens datum är <ph name="CURRENT_DATE" /> enligt datorklockan. Går den rätt? I annat fall bör du ställa om datorklockan och sedan uppdatera sidan.}}</translation>
@@ -90,6 +93,7 @@
<translation id="2922350208395188000">Servercertifikatet kan inte kontrolleras.</translation>
<translation id="2941952326391522266">Servern kunde inte bevisa att den är <ph name="DOMAIN" /> eftersom dess säkerhetscertifikat kommer från <ph name="DOMAIN2" />. Detta kan orsakas av en felaktig konfigurering eller att någon spärrar anslutningen.</translation>
<translation id="2958431318199492670">Nätverkskonfigurationen uppfyller inte ONC-standarden. Det kan hända att delar av konfigurationen inte kan importeras.</translation>
+<translation id="2969319727213777354">Om du vill upprätta en säker anslutning måste klockan vara rätt inställd. Det beror på att certifikaten som webbplatserna använder för att identifiera sig har en bestämd giltighetstid. Google Chrome kan inte verifiera certifikaten eftersom klockan på enheten inte går rätt.</translation>
<translation id="2972581237482394796">&amp;Upprepa</translation>
<translation id="3010559122411665027">Listposten <ph name="ENTRY_INDEX" />: <ph name="ERROR" /></translation>
<translation id="3024663005179499861">Felaktig policytyp</translation>
diff --git a/chromium/components/strings/components_strings_sw.xtb b/chromium/components/strings/components_strings_sw.xtb
index d2d1a14e5a7..050c18de345 100644
--- a/chromium/components/strings/components_strings_sw.xtb
+++ b/chromium/components/strings/components_strings_sw.xtb
@@ -24,6 +24,9 @@
<translation id="1455235771979731432">Kulikuwa na tatizo wakati wa kuthibitisha kadi yako. Angalia muunganisho wako wa intaneti na ujaribu tena.</translation>
<translation id="1491151370853475546">Pakia Ukurasa huu Upya</translation>
<translation id="1549470594296187301">Lazima JavaScript iwashwe ili utumie kipengele hiki.</translation>
+<translation id="1559572115229829303">&lt;p&gt;Muunganisho wa faragha kwenye <ph name="BEGIN_BOLD" /><ph name="DOMAIN" /><ph name="END_BOLD" /> hauwezi kutambuliwa kwa sababu tarehe na wakati wa kifaa chako <ph name="DATE_AND_TIME" /> si sahihi.&lt;/p&gt;
+
+ &lt;p&gt;Tafadhali rekebisha tarehe na wakati kutoka kwenye &lt;strong&gt;sehemu ya Jumla&lt;/strong&gt; ya &lt;strong&gt;programu ya Mipangilio&lt;/strong&gt;.&lt;/p&gt;</translation>
<translation id="1640180200866533862">Sera za mtumiaji</translation>
<translation id="1644184664548287040">Usanidi wa mtandao ni batili na usingeweza kuingizwa.</translation>
<translation id="1655462015569774233">{1,plural, =1{Seva hii haikuweza kuthibitisha kuwa ni <ph name="DOMAIN" />; cheti chake cha usalama kilikwisha muda jana. Hii inaweza kusababishwa na usanidi usiofaa au mvamizi kuingilia muunganisho wako. Saa ya kompyuta kwa sasa imewekwa kuwa <ph name="CURRENT_DATE" />. Je, hiyo ni sahihi? Ikiwa si sahihi, rekebisha saa ya mfumo wako kisha uonyeshe upya ukurasa huu.}other{Seva hii haikuweza kuthibitisha kuwa ni <ph name="DOMAIN" />; cheti chake cha usalama kilikwisha muda siku # zilizopita. Hii inaweza kusababishwa na usanidi usiofaa au mvamizi kuingilia muunganisho wako. Saa ya kompyuta kwa sasa imewekwa kuwa <ph name="CURRENT_DATE" />. Je, hiyo ni sahihi? Ikiwa si sahihi, rekebisha saa ya mfumo wako kisha uonyeshe upya ukurasa huu.}}</translation>
@@ -90,6 +93,7 @@
<translation id="2922350208395188000">Cheti cha seva hakiwezi kukaguliwa.</translation>
<translation id="2941952326391522266">Seva hii haikuweza kuthibitisha kuwa ni <ph name="DOMAIN" />; cheti chake cha usalama kinatoka <ph name="DOMAIN2" />. Hii inaweza kusababishwa na usanidi usiofaa au mvamizi kuingilia muunganisho wako.</translation>
<translation id="2958431318199492670">Usanidi wa mtandao hautii kiwango cha ONC. Sehemu za usanidi haziwezi kuingizwa.</translation>
+<translation id="2969319727213777354">Ili kutambua muunganisho salama, saa yako inahitaji kusahihishwa. Hii ni kwa sababu vyeti ambavyo tovuti hutumia kujitambua ni sahihi kwa vipindi mahususi pekee. Kwa kuwa saa ya kifaa chako si sahihi, Google Chrome haiwezi kuthibitisha vyeti hivi.</translation>
<translation id="2972581237482394796">&amp;Rudia</translation>
<translation id="3010559122411665027">Ingizo orodha "<ph name="ENTRY_INDEX" />": <ph name="ERROR" /></translation>
<translation id="3024663005179499861">Aina mbaya ya sera</translation>
@@ -103,7 +107,7 @@
<translation id="3228969707346345236">Tafsiri ilishindikana kwa sababu ukurasa tayari upo katika <ph name="LANGUAGE" />.</translation>
<translation id="3270847123878663523">Tendua Kupanga upya</translation>
<translation id="3286538390144397061">Zima na uwashe sasa</translation>
-<translation id="333371639341676808">Zuia ukurasa huu usiunde majadiliano zaidi.</translation>
+<translation id="333371639341676808">Zuia ukurasa huu usiulize mswali zaidi.</translation>
<translation id="3340978935015468852">mipangilio</translation>
<translation id="3369192424181595722">Hitilafu ya saa</translation>
<translation id="3369366829301677151">Sasisha na uthibitishe kadi yako ya <ph name="CREDIT_CARD" /></translation>
diff --git a/chromium/components/strings/components_strings_ta.xtb b/chromium/components/strings/components_strings_ta.xtb
index ffb4fbc72f6..ab24097908f 100644
--- a/chromium/components/strings/components_strings_ta.xtb
+++ b/chromium/components/strings/components_strings_ta.xtb
@@ -24,6 +24,9 @@
<translation id="1455235771979731432">கார்டைப் புதுப்பிப்பதில் சிக்கல். இணைய இணைப்பைச் சரிபார்த்து, மீண்டும் முயற்சிக்கவும்.</translation>
<translation id="1491151370853475546">இந்தப் பக்கத்தை மீண்டும் ஏற்று</translation>
<translation id="1549470594296187301">இந்த அம்சத்தைப் பயன்படுத்த JavaScript இயக்கப்பட வேண்டும்.</translation>
+<translation id="1559572115229829303">&lt;p&gt;உங்கள் சாதனத்தின் தேதி மற்றும் நேரம் (<ph name="DATE_AND_TIME" />) தவறாக இருப்பதால் <ph name="BEGIN_BOLD" /><ph name="DOMAIN" /><ph name="END_BOLD" /> என்கிற டொமைனிற்குத் தனிப்பட்ட இணைப்பை ஏற்படுத்த முடியவில்லை.&lt;/p&gt;
+
+ &lt;p&gt;தேதி மற்றும் நேரத்தை &lt;strong&gt;அமைப்புகள்&lt;/strong&gt; பயன்பாட்டின் &lt;strong&gt;பொது&lt;/strong&gt; என்கிற பகுதியில் மாற்றவும்.&lt;/p&gt;</translation>
<translation id="1640180200866533862">பயனர் கொள்கைகள்</translation>
<translation id="1644184664548287040">பிணைய உள்ளமைவு தவறானது மேலும் அதை இறக்குமதி செய்ய முடியவில்லை.</translation>
<translation id="1655462015569774233">{1,plural, =1{இந்தச் சேவையகம் தான் <ph name="DOMAIN" /> என்பதை நிரூபிக்க முடியவில்லை; இதன் பாதுகாப்புச் சான்றிதழ் நேற்று காலாவதியானது. இது தவறான உள்ளமைவால் ஏற்பட்டிருக்கலாம் அல்லது தீங்கிழைப்பவர் உங்கள் இணைப்பில் குறுக்கிட்டிருக்கலாம். உங்கள் கணினியின் கடிகாரம் தற்போது <ph name="CURRENT_DATE" /> என அமைக்கப்பட்டுள்ளது. அது சரியாக இருக்கிறதா? இல்லை என்றால், உங்கள் முறைமையின் கடிகாரத்தைச் சரிசெய்து, பின்னர் இந்தப் பக்கத்தைப் புதுப்பிக்க வேண்டும்.}other{இந்தச் சேவையகம் தான் <ph name="DOMAIN" /> என்பதை நிரூபிக்க முடியவில்லை; இதன் பாதுகாப்புச் சான்றிதழ் # நாட்களுக்கு முன்பு காலாவதியானது. இது தவறான உள்ளமைவால் ஏற்பட்டிருக்கலாம் அல்லது தீங்கிழைப்பவர் உங்கள் இணைப்பில் குறுக்கிட்டிருக்கலாம். உங்கள் கணினியின் கடிகாரம் தற்போது <ph name="CURRENT_DATE" /> என அமைக்கப்பட்டுள்ளது. அது சரியாக இருக்கிறதா? இல்லை என்றால், உங்கள் முறைமையின் கடிகாரத்தைச் சரிசெய்து, பின்னர் இந்தப் பக்கத்தைப் புதுப்பிக்க வேண்டும்.}}</translation>
@@ -90,6 +93,7 @@
<translation id="2922350208395188000">சேவையகச் சான்றிதழை சோதிக்க முடியவில்லை.</translation>
<translation id="2941952326391522266">இது <ph name="DOMAIN" /> தான் என்பதை இந்தச் சேவையகம் உறுதிப்படுத்தவில்லை; இதன் பாதுகாப்புச் சான்றிதழ் <ph name="DOMAIN2" /> இலிருந்து பெறப்பட்டது. இது தவறான உள்ளமைவால் ஏற்பட்டிருக்கலாம் அல்லது தீங்கிழைப்பவர் உங்கள் இணைப்பில் குறுக்கிட்டிருக்கலாம்.</translation>
<translation id="2958431318199492670">பிணைய உள்ளமைப்பானது ONC தரத்துடன் இணங்கவில்லை. உள்ளமைவின் பகுதிகள் இறக்குமதியாகாமல் போகக்கூடும்.</translation>
+<translation id="2969319727213777354">பாதுகாப்பான இணைப்பை ஏற்படுத்த, கடிகாரம் சரியாக அமைக்கப்பட வேண்டும். இணையதளங்கள் தங்களைத் தாமே அடையாளப்படுத்தப் பயன்படுத்தப்படும் சான்றிதழ்கள் குறிப்பிட்ட காலத்திற்கு மட்டும் செல்லுபடியாவதால், இது செய்யப்பட வேண்டும். உங்கள் சாதனத்தின் கடிகாரம் தவறாக இருப்பதால், இந்தச் சான்றிதழ்களை Google Chrome ஆல் சரிபார்க்க முடியவில்லை.</translation>
<translation id="2972581237482394796">&amp;மீண்டும் செய்</translation>
<translation id="3010559122411665027">பட்டியல் உள்ளீடு "<ph name="ENTRY_INDEX" />": <ph name="ERROR" /></translation>
<translation id="3024663005179499861">தவறான கொள்கை வகை</translation>
diff --git a/chromium/components/strings/components_strings_te.xtb b/chromium/components/strings/components_strings_te.xtb
index 0af8fead591..fcaecb5cff0 100644
--- a/chromium/components/strings/components_strings_te.xtb
+++ b/chromium/components/strings/components_strings_te.xtb
@@ -24,6 +24,9 @@
<translation id="1455235771979731432">మీ కార్డ్‌ను ధృవీకరించడంలో సమస్య ఏర్పడింది. మీ ఇంటర్నెట్ కనెక్షన్ తనిఖీ చేసి, మళ్లీ ప్రయత్నించండి.</translation>
<translation id="1491151370853475546">ఈ పేజీని మళ్లీ లోడ్ చేయి</translation>
<translation id="1549470594296187301">ఈ లక్షణాన్ని ఉపయోగించడానికి జావాస్క్రిప్ట్ తప్పనిసరిగా ప్రారంభించాలి.</translation>
+<translation id="1559572115229829303">&lt;p&gt;మీ పరికరం తేదీ మరియు సమయం (<ph name="DATE_AND_TIME" />) తప్పుగా ఉన్నందున <ph name="BEGIN_BOLD" /><ph name="DOMAIN" /><ph name="END_BOLD" />కి ప్రైవేట్ కనెక్షన్ ఏర్పాటు చేయడం సాధ్యపడదు.&lt;/p&gt;
+
+ &lt;p&gt;దయచేసి &lt;strong&gt;సెట్టింగ్‌లు&lt;/strong&gt; అనువర్తనం యొక్క &lt;strong&gt;సాధారణం&lt;/strong&gt; విభాగంలో తేదీ మరియు సమయాన్ని సర్దుబాటు చేయండి.&lt;/p&gt;</translation>
<translation id="1640180200866533862">వినియోగదారు విధానాలు</translation>
<translation id="1644184664548287040">నెట్‌వర్క్ కాన్ఫిగరేషన్ చెల్లదు మరియు దిగుమతి చేయడం సాధ్యం కాదు.</translation>
<translation id="1655462015569774233">{1,plural, =1{ఈ సర్వర్ ఇది <ph name="DOMAIN" /> అని నిరూపించలేకపోయింది; దీని భద్రతా ప్రమాణపత్రం గడువు నిన్న ముగిసింది. తప్పుగా కాన్ఫిగర్ చేసినందున లేదా దాడిచేసేవారు మీ కనెక్షన్‌కు అంతరాయం కలిగించినందున ఇలా జరిగి ఉండవచ్చు. మీ కంప్యూటర్ గడియారం ప్రస్తుతం <ph name="CURRENT_DATE" />కి సెట్ చేయబడింది. అది సరిగ్గా ఉందా? సరిగ్గా లేకుంటే, మీరు సిస్టమ్ గడియారాన్ని సరిచేసి, ఆపై ఈ పేజీని రీఫ్రెష్ చేయాలి.}other{ఈ సర్వర్ ఇది <ph name="DOMAIN" /> అని నిరూపించలేకపోయింది; దీని భద్రతా ప్రమాణపత్రం గడువు # రోజుల క్రితం ముగిసింది. తప్పుగా కాన్ఫిగర్ చేసినందున లేదా దాడిచేసేవారు మీ కనెక్షన్‌కు అంతరాయం కలిగించినందున ఇలా జరిగి ఉండవచ్చు. మీ కంప్యూటర్ గడియారం ప్రస్తుతం <ph name="CURRENT_DATE" />కి సెట్ చేయబడింది. అది సరిగ్గా ఉందా? సరిగ్గా లేకుంటే, మీరు సిస్టమ్ గడియారాన్ని సరిచేసి, ఆపై ఈ పేజీని రీఫ్రెష్ చేయాలి.}}</translation>
@@ -90,6 +93,7 @@
<translation id="2922350208395188000">సర్వర్ యొక్క ప్రమాణపత్రం తనిఖీ చెయ్యబడదు.</translation>
<translation id="2941952326391522266">ఈ సర్వర్ <ph name="DOMAIN" /> అని నిరూపించుకోలేకపోయింది; దీని భద్రతా ప్రమాణపత్రం <ph name="DOMAIN2" /> నుండి జారీ చేయబడింది. ఇది తప్పుగా కాన్ఫిగర్ చేయడం వలన లేదా దాడిచేసే వ్యక్తి మీ కనెక్షన్‌కి అంతరాయం కలిగించడం వలన జరిగి ఉండవచ్చు.</translation>
<translation id="2958431318199492670">నెట్‌వర్క్ కాన్ఫిగరేషన్ ONC ప్రమాణానికి అనుకూలంగా లేదు. కాన్ఫిగరేషన్‌లోని భాగాలు దిగుమతి కాకపోయి ఉండకపోవచ్చు.</translation>
+<translation id="2969319727213777354">సురక్షిత కనెక్షన్‌ను ఏర్పాటు చేయడానికి, మీ గడియారాన్ని సరైన సమయానికి సెట్ చేయాలి. ఎందుకంటే వెబ్‌సైట్‌లు వాటిని గుర్తించడానికి ఉపయోగించే ప్రమాణపత్రాలు నిర్దిష్ట కాలవ్యవధుల్లో మాత్రమే చెల్లుబాటు అవుతాయి. మీ పరికరం గడియారం సమయం తప్పుగా ఉన్నందున, Google Chrome ఈ ప్రమాణపత్రాలను ధృవీకరించలేదు.</translation>
<translation id="2972581237482394796">&amp;పునరావృతం</translation>
<translation id="3010559122411665027">జాబితా నమోదు "<ph name="ENTRY_INDEX" />": <ph name="ERROR" /></translation>
<translation id="3024663005179499861">చెల్లని విధాన రకం</translation>
diff --git a/chromium/components/strings/components_strings_th.xtb b/chromium/components/strings/components_strings_th.xtb
index 228bd514726..a3b8c80370a 100644
--- a/chromium/components/strings/components_strings_th.xtb
+++ b/chromium/components/strings/components_strings_th.xtb
@@ -24,6 +24,9 @@
<translation id="1455235771979731432">เกิดปัญหาในการยืนยันบัตรของคุณ โปรดตรวจสอบการเชื่อมต่ออินเทอร์เน็ตและลองอีกครั้ง</translation>
<translation id="1491151370853475546">โหลดหน้าเว็บนี้ซ้ำ</translation>
<translation id="1549470594296187301">ต้องเปิดใช้ JavaScript เพื่อใช้คุณลักษณะนี้</translation>
+<translation id="1559572115229829303">&lt;p&gt;ไม่สามารถสร้างการเชื่อมต่อส่วนตัวไปที่ <ph name="BEGIN_BOLD" /><ph name="DOMAIN" /><ph name="END_BOLD" /> เนื่องจากวันที่และเวลา (<ph name="DATE_AND_TIME" />) ในอุปกรณ์ไม่ถูกต้อง&lt;/p&gt;
+
+ &lt;p&gt;โปรดปรับวันที่และเวลาจากหัวข้อ&lt;strong&gt;ทั่วไป&lt;/strong&gt;ในแอป&lt;strong&gt;การตั้งค่า&lt;/strong&gt;&lt;/p&gt;</translation>
<translation id="1640180200866533862">นโยบายผู้ใช้</translation>
<translation id="1644184664548287040">การกำหนดค่าเครือข่ายไม่ถูกต้องและไม่สามารถนำเข้า</translation>
<translation id="1655462015569774233">{1,plural, =1{เซิร์ฟเวอร์นี้พิสูจน์ไม่ได้ว่าเป็น <ph name="DOMAIN" /> เพราะใบรับรองความปลอดภัยหมดอายุไปเมื่อวานนี้ โดยอาจเกิดจากการกำหนดค่าผิดหรือผู้บุกรุกที่ขัดขวางการเชื่อมต่อของคุณ ขณะนี้นาฬิกาของคุณตั้งค่าไว้ที่วันที่ <ph name="CURRENT_DATE" /> การตั้งค่านี้ถูกต้องไหม หากไม่ถูกต้อง คุณควรแก้ไขนาฬิกาของระบบและรีเฟรชหน้านี้}other{เซิร์ฟเวอร์นี้พิสูจน์ไม่ได้ว่าเป็น <ph name="DOMAIN" /> เพราะใบรับรองความปลอดภัยหมดอายุไปเมื่อ # วันที่ผ่านมา โดยอาจเกิดจากการกำหนดค่าผิดหรือผู้บุกรุกที่ขัดขวางการเชื่อมต่อของคุณ ขณะนี้นาฬิกาของคุณตั้งค่าไว้ที่วันที่ <ph name="CURRENT_DATE" /> การตั้งค่านี้ถูกต้องไหม หากไม่ถูกต้อง คุณควรแก้ไขนาฬิกาของระบบและรีเฟรชหน้านี้}}</translation>
@@ -90,6 +93,7 @@
<translation id="2922350208395188000">ไม่สามารถตรวจสอบใบรับรองของเซิร์ฟเวอร์</translation>
<translation id="2941952326391522266">เซิร์ฟเวอร์นี้ไม่สามารถพิสูจน์ได้ว่าเป็น <ph name="DOMAIN" /> เพราะใบรับรองความปลอดภัยมาจาก <ph name="DOMAIN2" /> โดยอาจเกิดจากการกำหนดค่าผิดหรือผู้บุกรุกที่ขัดขวางการเชื่อมต่อของคุณ</translation>
<translation id="2958431318199492670">การกำหนดค่าเครือข่ายไม่เป็นไปตามมาตรฐาน ONC การกำหนดค่าบางส่วนอาจไม่ได้รับการนำเข้า</translation>
+<translation id="2969319727213777354">หากต้องการสร้างการเชื่อมต่อที่ปลอดภัย คุณต้องตั้งค่านาฬิกาให้ถูกต้องเนื่องจากใบรับรองที่เว็บไซต์ใช้เพื่อระบุตัวตนจะใช้ได้ในช่วงเวลาที่เจาะจงเท่านั้น แต่เนื่องจากนาฬิกาของอุปกรณ์ไม่ถูกต้อง Google Chrome จึงไม่สามารถยืนยันใบรับรองเหล่านี้</translation>
<translation id="2972581237482394796">&amp;ทำซ้ำ</translation>
<translation id="3010559122411665027">รายการที่เข้ามา "<ph name="ENTRY_INDEX" />": <ph name="ERROR" /></translation>
<translation id="3024663005179499861">ประเภทนโยบายไม่ถูกต้อง</translation>
diff --git a/chromium/components/strings/components_strings_tr.xtb b/chromium/components/strings/components_strings_tr.xtb
index 0dea861dfed..6df44c9537d 100644
--- a/chromium/components/strings/components_strings_tr.xtb
+++ b/chromium/components/strings/components_strings_tr.xtb
@@ -24,6 +24,9 @@
<translation id="1455235771979731432">Kartınız doğrulanırken bir sorun oluştu. İnternet bağlantınızı kontrol edin ve tekrar deneyin.</translation>
<translation id="1491151370853475546">Bu Sayfayı Yeniden Yükle</translation>
<translation id="1549470594296187301">Bu özelliğin kullanılabilmesi için JavaScript etkinleştirilmelidir.</translation>
+<translation id="1559572115229829303">&lt;p&gt;Cihazınızın tarih ve saati (<ph name="DATE_AND_TIME" />) yanlış olduğundan <ph name="BEGIN_BOLD" /><ph name="DOMAIN" /><ph name="END_BOLD" /> alan adına gizli bir bağlantı kurulamadı.&lt;/p&gt;
+
+ &lt;p&gt;Lütfen &lt;strong&gt;Ayarlar&lt;/strong&gt; uygulamasının &lt;strong&gt;Genel&lt;/strong&gt; bölümünden tarih ve saati ayarlayın.&lt;/p&gt;</translation>
<translation id="1640180200866533862">Kullanıcı politikaları</translation>
<translation id="1644184664548287040">Ağ yapılandırması geçersiz, dolayısıyla içe aktarılamadı.</translation>
<translation id="1655462015569774233">{1,plural, =1{Bu sunucu, <ph name="DOMAIN" /> olduğunu kanıtlayamadı. Güvenlik sertifikasının süresi dün sona erdi. Bu durum, bir yanlış yapılandırmadan veya bağlantınıza müdahale eden bir saldırgandan kaynaklanıyor olabilir. Bilgisayarınızın saati geçerli olarak <ph name="CURRENT_DATE" /> tarihine ayarlı. Bu ayar doğru görünüyor mu? Değilse, sisteminizin saatini düzeltmeli ve sonra bu sayfayı yenilemelisiniz.}other{Bu sunucu, <ph name="DOMAIN" /> olduğunu kanıtlayamadı. Güvenlik sertifikası # gün önce sona erdi. Bu durum, bir yanlış yapılandırmadan veya bağlantınıza müdahale eden bir saldırgandan kaynaklanıyor olabilir. Bilgisayarınızın saati geçerli olarak <ph name="CURRENT_DATE" /> tarihine ayarlı. Bu ayar doğru görünüyor mu? Değilse, sisteminizin saatini düzeltmeli ve sonra bu sayfayı yenilemelisiniz.}}</translation>
@@ -90,6 +93,7 @@
<translation id="2922350208395188000">Sunucunun sertifikası kontrol edilemiyor.</translation>
<translation id="2941952326391522266">Bu sunucu <ph name="DOMAIN" /> olduğunu kanıtlayamadı. Güvenlik sertifikası <ph name="DOMAIN2" /> alan adından geliyor. Bu durum, bir yanlış yapılandırmadan veya bağlantıya müdahale eden bir saldırgandan kaynaklanıyor olabilir.</translation>
<translation id="2958431318199492670">Ağ yapılandırması ONC standardıyla uyumlu değil. Yapılandırmanın bazı bölümleri içe aktarılamaz.</translation>
+<translation id="2969319727213777354">Güvenli bir bağlantı kurmak için saatinizin doğru ayarlanmış olması gerekir. Bunun sebebi, web sitelerinin kendilerini tanımlamak için kullandıkları sertifikaların sadece belli süreler için geçerli olmasıdır. Cihazınızın saati yanlış olduğundan, Google Chrome bu sertifikaları doğrulayamıyor.</translation>
<translation id="2972581237482394796">&amp;Yinele</translation>
<translation id="3010559122411665027">Liste girişi "<ph name="ENTRY_INDEX" />": <ph name="ERROR" /></translation>
<translation id="3024663005179499861">Yanlış politika türü</translation>
diff --git a/chromium/components/strings/components_strings_uk.xtb b/chromium/components/strings/components_strings_uk.xtb
index 513936f85b7..bed7e8149f0 100644
--- a/chromium/components/strings/components_strings_uk.xtb
+++ b/chromium/components/strings/components_strings_uk.xtb
@@ -24,6 +24,9 @@
<translation id="1455235771979731432">Не вдалося підтвердити дані картки. Перевірте з’єднання з Інтернетом і повторіть спробу.</translation>
<translation id="1491151370853475546">Перезавантажити цю сторінку</translation>
<translation id="1549470594296187301">Щоб користуватися цією функцією, потрібно ввімкнути JavaScript.</translation>
+<translation id="1559572115229829303">&lt;p&gt;Не вдається встановити конфіденційне з’єднання із сайтом <ph name="BEGIN_BOLD" /><ph name="DOMAIN" /><ph name="END_BOLD" />, оскільки на вашому пристрої неправильно налаштовано дату й час (<ph name="DATE_AND_TIME" />).&lt;/p&gt;
+
+ &lt;p&gt;Налаштуйте дату й час у розділі &lt;strong&gt;Загальні&lt;/strong&gt; додатка &lt;strong&gt;Налаштування&lt;/strong&gt;.&lt;/p&gt;</translation>
<translation id="1640180200866533862">Правила користувача</translation>
<translation id="1644184664548287040">Конфігурація мережі недійсна та не може імпортуватися.</translation>
<translation id="1655462015569774233">{1,plural, =1{Не вдалося підтвердити, що це сервер <ph name="DOMAIN" />. Його сертифікат перестав діяти учора. Можливо, сервер налаштовано неправильно або хтось намагається перехопити ваші дані. На годиннику вашого комп’ютера зараз <ph name="CURRENT_DATE" />. Якщо дата неправильна, налаштуйте системний годинник і оновіть цю сторінку.}one{Не вдалося підтвердити, що це сервер <ph name="DOMAIN" />. Його сертифікат перестав діяти # день тому. Можливо, сервер налаштовано неправильно або хтось намагається перехопити ваші дані. На годиннику вашого комп’ютера зараз <ph name="CURRENT_DATE" />. Якщо дата неправильна, налаштуйте системний годинник і оновіть цю сторінку.}few{Не вдалося підтвердити, що це сервер <ph name="DOMAIN" />. Його сертифікат перестав діяти # дні тому. Можливо, сервер налаштовано неправильно або хтось намагається перехопити ваші дані. На годиннику вашого комп’ютера зараз <ph name="CURRENT_DATE" />. Якщо дата неправильна, налаштуйте системний годинник і оновіть цю сторінку.}many{Не вдалося підтвердити, що це сервер <ph name="DOMAIN" />. Його сертифікат перестав діяти # днів тому. Можливо, сервер налаштовано неправильно або хтось намагається перехопити ваші дані. На годиннику вашого комп’ютера зараз <ph name="CURRENT_DATE" />. Якщо дата неправильна, налаштуйте системний годинник і оновіть цю сторінку.}other{Не вдалося підтвердити, що це сервер <ph name="DOMAIN" />. Його сертифікат перестав діяти # дня тому. Можливо, сервер налаштовано неправильно або хтось намагається перехопити ваші дані. На годиннику вашого комп’ютера зараз <ph name="CURRENT_DATE" />. Якщо дата неправильна, налаштуйте системний годинник і оновіть цю сторінку.}}</translation>
@@ -90,6 +93,7 @@
<translation id="2922350208395188000">Сертифікат сервера неможливо перевірити.</translation>
<translation id="2941952326391522266">Цей сервер не зміг довести, що він – домен <ph name="DOMAIN" />. Його сертифікат безпеки походить із домену <ph name="DOMAIN2" />. Імовірні причини: неправильна конфігурація або хтось намагається перехопити ваше з’єднання.</translation>
<translation id="2958431318199492670">Конфігурація мережі не відповідає стандарту ONC. Вона може імпортуватися частково.</translation>
+<translation id="2969319727213777354">Щоб установити безпечне з’єднання, потрібно правильно налаштувати час, оскільки сертифікати, які підтверджують справжність веб-сайтів, дійсні лише протягом певного періоду. На вашому пристрої неправильно налаштовано час, тому Chrome не може перевірити сертифікати.</translation>
<translation id="2972581237482394796">&amp;Повторити</translation>
<translation id="3010559122411665027">Елемент списку "<ph name="ENTRY_INDEX" />": <ph name="ERROR" /></translation>
<translation id="3024663005179499861">Неправильний тип правила</translation>
diff --git a/chromium/components/strings/components_strings_vi.xtb b/chromium/components/strings/components_strings_vi.xtb
index eef6da4aa46..e01d4125c13 100644
--- a/chromium/components/strings/components_strings_vi.xtb
+++ b/chromium/components/strings/components_strings_vi.xtb
@@ -24,6 +24,9 @@
<translation id="1455235771979731432">Đã xảy ra sự cố khi xác minh thẻ của bạn. Hãy kiểm tra kết nối Internet của bạn và thử lại.</translation>
<translation id="1491151370853475546">Tải lại trang này</translation>
<translation id="1549470594296187301">Bạn phải bật JavaScript để sử dụng tính năng này.</translation>
+<translation id="1559572115229829303">&lt;p&gt;Không thể thiết lập kết nối riêng tư với <ph name="BEGIN_BOLD" /><ph name="DOMAIN" /><ph name="END_BOLD" /> vì ngày và giờ (<ph name="DATE_AND_TIME" />) trên thiết bị của bạn không chính xác.&lt;/p&gt;
+
+ &lt;p&gt;Hãy điều chỉnh ngày và giờ từ phần &lt;strong&gt;Chung&lt;/strong&gt; của ứng dụng &lt;strong&gt;Cài đặt&lt;/strong&gt;.&lt;/p&gt;</translation>
<translation id="1640180200866533862">Chính sách người dùng</translation>
<translation id="1644184664548287040">Cấu hình mạng không hợp lệ và không thể nhập được.</translation>
<translation id="1655462015569774233">{1,plural, =1{Máy chủ này không chứng minh được rằng đó là <ph name="DOMAIN" />; chứng chỉ bảo mật của máy chủ này đã hết hạn hôm qua. Điều này có thể do cấu hình sai hoặc có kẻ tấn công chặn kết nối của bạn. Đồng hồ máy tính của bạn hiện được đặt là <ph name="CURRENT_DATE" />. Ngày này có đúng không? Nếu không đúng, bạn phải sửa lại đồng hồ của hệ thống rồi làm mới trang này.}other{Máy chủ này không chứng minh được rằng đó là <ph name="DOMAIN" />; chứng chỉ bảo mật của máy chủ này đã hết hạn cách đây # ngày. Điều này có thể do cấu hình sai hoặc có kẻ tấn công chặn kết nối của bạn. Đồng hồ máy tính của bạn hiện được đặt là <ph name="CURRENT_DATE" />. Ngày này có đúng không? Nếu không đúng, bạn phải sửa lại đồng hồ của hệ thống rồi làm mới trang này.}}</translation>
@@ -90,6 +93,7 @@
<translation id="2922350208395188000">Không thể kiểm tra chứng chỉ của máy chủ.</translation>
<translation id="2941952326391522266">Máy chủ này không chứng minh được rằng đó là <ph name="DOMAIN" />; chứng chỉ bảo mật của máy chủ này là từ <ph name="DOMAIN2" />. Điều này có thể do định cấu hình sai hoặc có kẻ tấn công chặn kết nối của bạn.</translation>
<translation id="2958431318199492670">Cấu hình mạng không tuân thủ tiêu chuẩn ONC. Các bộ phận của cấu hình có thể không được nhập.</translation>
+<translation id="2969319727213777354">Để thiết lập kết nối an toàn, bạn cần đặt thời gian đúng cho đồng hồ. Nguyên nhân là do chứng chỉ mà các trang web dùng để tự nhận dạng chỉ có hiệu lực trong khoảng thời gian cụ thể. Vì đồng hồ trên thiết bị của bạn không đúng nên Chrome không thể xác minh các chứng chỉ này.</translation>
<translation id="2972581237482394796">&amp;Làm lại</translation>
<translation id="3010559122411665027">Mục nhập danh sách "<ph name="ENTRY_INDEX" />": <ph name="ERROR" /></translation>
<translation id="3024663005179499861">Loại chính sách sai</translation>
diff --git a/chromium/components/strings/components_strings_zh-CN.xtb b/chromium/components/strings/components_strings_zh-CN.xtb
index 766bda1c672..3d7bfb67e49 100644
--- a/chromium/components/strings/components_strings_zh-CN.xtb
+++ b/chromium/components/strings/components_strings_zh-CN.xtb
@@ -24,6 +24,9 @@
<translation id="1455235771979731432">验证您的信用卡时出现问题。请检查您的互联网连接,然后重试。</translation>
<translation id="1491151370853475546">重新加载此页</translation>
<translation id="1549470594296187301">必须启用 JavaScript 才能使用此功能。</translation>
+<translation id="1559572115229829303">&lt;p&gt;您设备的日期和时间(<ph name="DATE_AND_TIME" />)不正确,因此无法与 <ph name="BEGIN_BOLD" /><ph name="DOMAIN" /><ph name="END_BOLD" /> 建立私密连接。&lt;/p&gt;
+
+ &lt;p&gt;请在&lt;strong&gt;设置&lt;/strong&gt;应用的&lt;strong&gt;通用&lt;/strong&gt;部分调整日期和时间。&lt;/p&gt;</translation>
<translation id="1640180200866533862">用户政策</translation>
<translation id="1644184664548287040">网络配置无效,无法导入。</translation>
<translation id="1655462015569774233">{1,plural, =1{此服务器无法证明它是 <ph name="DOMAIN" />;其安全证书已在昨天过期。出现此问题的原因可能是配置有误,或有攻击者拦截了您的连接。计算机的时钟目前已设为 <ph name="CURRENT_DATE" />,该设置是否正确?如果不正确,请更正系统的时钟,然后刷新此页面。}other{此服务器无法证明它是 <ph name="DOMAIN" />;其安全证书已在 # 天前过期。出现此问题的原因可能是配置有误,或有攻击者拦截了您的连接。计算机的时钟目前已设为 <ph name="CURRENT_DATE" />,该设置是否正确?如果不正确,请更正系统的时钟,然后刷新此页面。}}</translation>
@@ -90,6 +93,7 @@
<translation id="2922350208395188000">无法核实服务器证书。</translation>
<translation id="2941952326391522266">此服务器无法证明它是<ph name="DOMAIN" />;其安全证书来自<ph name="DOMAIN2" />。出现此问题的原因可能是配置有误或您的连接被拦截了。</translation>
<translation id="2958431318199492670">网络配置不符合 ONC 标准。无法导入配置的某些部分。</translation>
+<translation id="2969319727213777354">要建立安全连接,您的时钟设置必须正确。这是因为,网站用于证明身份的证书仅在特定时间段有效。由于您设备的时钟不正确,因此 Google Chrome 无法验证这些证书。</translation>
<translation id="2972581237482394796">重做(&amp;R)</translation>
<translation id="3010559122411665027">列表条目“<ph name="ENTRY_INDEX" />”:<ph name="ERROR" /></translation>
<translation id="3024663005179499861">策略类型有误</translation>
diff --git a/chromium/components/strings/components_strings_zh-TW.xtb b/chromium/components/strings/components_strings_zh-TW.xtb
index e5d8c565259..47cde73c7bb 100644
--- a/chromium/components/strings/components_strings_zh-TW.xtb
+++ b/chromium/components/strings/components_strings_zh-TW.xtb
@@ -24,6 +24,9 @@
<translation id="1455235771979731432">驗證您的信用卡時發生問題。請檢查網際網路連線,然後再試一次。</translation>
<translation id="1491151370853475546">重新載入這個網頁</translation>
<translation id="1549470594296187301">您必須啟用 JavaScript 才能使用這項功能。</translation>
+<translation id="1559572115229829303">&lt;p&gt;您裝置的日期和時間 (<ph name="DATE_AND_TIME" />) 不正確,因此無法與 <ph name="BEGIN_BOLD" /><ph name="DOMAIN" /><ph name="END_BOLD" /> 建立私人連線。&lt;/p&gt;
+
+ &lt;p&gt;請前往「設定」應用程式的「一般設定」專區調整日期和時間。&lt;strong&gt;&lt;/strong&gt;&lt;strong&gt;&lt;/strong&gt;&lt;/p&gt;</translation>
<translation id="1640180200866533862">使用者政策</translation>
<translation id="1644184664548287040">網路設定無效,無法匯入。</translation>
<translation id="1655462015569774233">{1,plural, =1{這個伺服器無法證明所在網域是 <ph name="DOMAIN" />;伺服器的安全性憑證已在昨天過期。這可能是因為設定錯誤,或是有攻擊者攔截您的連線。您電腦的時鐘目前設為 <ph name="CURRENT_DATE" />,這是正確的時間嗎?如果不是的話,請更新系統時鐘,然後重新整理這個網頁。}other{這個伺服器無法證明所在網域是 <ph name="DOMAIN" />;伺服器的安全性憑證已在 # 天前過期。這可能是因為設定錯誤,或是有攻擊者攔截您的連線。您電腦的時鐘目前設為 <ph name="CURRENT_DATE" />,這是正確的時間嗎?如果不是的話,請更新系統時鐘,然後重新整理這個網頁。}}</translation>
@@ -90,6 +93,7 @@
<translation id="2922350208395188000">無法檢查伺服器憑證。</translation>
<translation id="2941952326391522266">伺服器無法證明其屬於 <ph name="DOMAIN" /> 網域;其安全性憑證來自 <ph name="DOMAIN2" /> 網域。這可能是因為設定錯誤,或有攻擊者攔截您的連線所致。</translation>
<translation id="2958431318199492670">網路設定未遵循 ONC 標準,系統可能無法匯入部分設定。</translation>
+<translation id="2969319727213777354">您必須正確設定時鐘,才能建立安全連線。這是因為網站驗證身分時所使用的憑證僅於特定一段時間內有效。由於您裝置的時鐘不正確,因此 Google Chrome 無法驗證這些憑證。</translation>
<translation id="2972581237482394796">重做(&amp;R)</translation>
<translation id="3010559122411665027">清單項目「<ph name="ENTRY_INDEX" />」:<ph name="ERROR" /></translation>
<translation id="3024663005179499861">政策類型有誤</translation>
diff --git a/chromium/content/app/strings/translations/content_strings_hu.xtb b/chromium/content/app/strings/translations/content_strings_hu.xtb
index 246d1b14b48..f2ad7a60824 100644
--- a/chromium/content/app/strings/translations/content_strings_hu.xtb
+++ b/chromium/content/app/strings/translations/content_strings_hu.xtb
@@ -13,7 +13,7 @@
<translation id="1589122976691792535">régió</translation>
<translation id="1591562245178063882">Ebben a hónapban</translation>
<translation id="1637811476055996098">Fájlok kiválasztása</translation>
-<translation id="1729654308190250600">Kérjük, ne hagyja üresen az e-mail cím mezőjét.</translation>
+<translation id="1729654308190250600">Kérjük, ne hagyja üresen az e-mail-cím mezőjét.</translation>
<translation id="1758486001363313524">Más...</translation>
<translation id="1822429046913737220">de./du.</translation>
<translation id="1832974991323546415">lejátszás távoli eszközön</translation>
diff --git a/chromium/content/browser/accessibility/browser_accessibility_cocoa.mm b/chromium/content/browser/accessibility/browser_accessibility_cocoa.mm
index 66181224b95..ea4db4a33c3 100644
--- a/chromium/content/browser/accessibility/browser_accessibility_cocoa.mm
+++ b/chromium/content/browser/accessibility/browser_accessibility_cocoa.mm
@@ -259,11 +259,10 @@ bool InitializeAccessibilityTreeSearch(
NSDictionary* dictionary = parameter;
id startElementParameter = [dictionary objectForKey:@"AXStartElement"];
- BrowserAccessibility* startNode = nullptr;
if ([startElementParameter isKindOfClass:[BrowserAccessibilityCocoa class]]) {
BrowserAccessibilityCocoa* startNodeCocoa =
(BrowserAccessibilityCocoa*)startElementParameter;
- startNode = [startNodeCocoa browserAccessibility];
+ search->SetStartNode([startNodeCocoa browserAccessibility]);
}
bool immediateDescendantsOnly = false;
@@ -297,7 +296,6 @@ bool InitializeAccessibilityTreeSearch(
if ([searchTextParameter isKindOfClass:[NSString class]])
searchText = base::SysNSStringToUTF8(searchTextParameter);
- search->SetStartNode(startNode);
search->SetDirection(direction);
search->SetImmediateDescendantsOnly(immediateDescendantsOnly);
search->SetVisibleOnly(visibleOnly);
@@ -1511,14 +1509,14 @@ bool InitializeAccessibilityTreeSearch(
return [NSValue valueWithRect:nsrect];
}
if ([attribute isEqualToString:@"AXUIElementCountForSearchPredicate"]) {
- OneShotAccessibilityTreeSearch search(browserAccessibility_->manager());
+ OneShotAccessibilityTreeSearch search(browserAccessibility_);
if (InitializeAccessibilityTreeSearch(&search, parameter))
return [NSNumber numberWithInt:search.CountMatches()];
return nil;
}
if ([attribute isEqualToString:@"AXUIElementsForSearchPredicate"]) {
- OneShotAccessibilityTreeSearch search(browserAccessibility_->manager());
+ OneShotAccessibilityTreeSearch search(browserAccessibility_);
if (InitializeAccessibilityTreeSearch(&search, parameter)) {
size_t count = search.CountMatches();
NSMutableArray* result = [NSMutableArray arrayWithCapacity:count];
diff --git a/chromium/content/browser/accessibility/browser_accessibility_manager.cc b/chromium/content/browser/accessibility/browser_accessibility_manager.cc
index 76ab1e74925..2fc7e44b310 100644
--- a/chromium/content/browser/accessibility/browser_accessibility_manager.cc
+++ b/chromium/content/browser/accessibility/browser_accessibility_manager.cc
@@ -142,6 +142,7 @@ BrowserAccessibilityManager::BrowserAccessibilityManager(
BrowserAccessibilityManager::~BrowserAccessibilityManager() {
tree_.reset(NULL);
+ g_ax_tree_id_map.Get().erase(ax_tree_id_);
}
void BrowserAccessibilityManager::Initialize(
diff --git a/chromium/content/browser/accessibility/one_shot_accessibility_tree_search.cc b/chromium/content/browser/accessibility/one_shot_accessibility_tree_search.cc
index a0b85f9e3ff..1757c997657 100644
--- a/chromium/content/browser/accessibility/one_shot_accessibility_tree_search.cc
+++ b/chromium/content/browser/accessibility/one_shot_accessibility_tree_search.cc
@@ -29,9 +29,10 @@ void GetNodeStrings(BrowserAccessibility* node,
}
OneShotAccessibilityTreeSearch::OneShotAccessibilityTreeSearch(
- BrowserAccessibilityManager* tree)
- : tree_(tree),
- start_node_(nullptr),
+ BrowserAccessibility* scope)
+ : tree_(scope->manager()),
+ scope_node_(scope),
+ start_node_(scope),
direction_(OneShotAccessibilityTreeSearch::FORWARDS),
result_limit_(UNLIMITED_RESULTS),
immediate_descendants_only_(false),
@@ -45,7 +46,12 @@ OneShotAccessibilityTreeSearch::~OneShotAccessibilityTreeSearch() {
void OneShotAccessibilityTreeSearch::SetStartNode(
BrowserAccessibility* start_node) {
DCHECK(!did_search_);
- start_node_ = start_node;
+ CHECK(start_node);
+
+ if (!scope_node_->GetParent() ||
+ start_node->IsDescendantOf(scope_node_->GetParent())) {
+ start_node_ = start_node;
+ }
}
void OneShotAccessibilityTreeSearch::SetDirection(Direction direction) {
@@ -103,37 +109,62 @@ void OneShotAccessibilityTreeSearch::Search()
} else {
SearchByWalkingTree();
}
+ did_search_ = true;
}
void OneShotAccessibilityTreeSearch::SearchByIteratingOverChildren() {
- if (!start_node_)
+ // Iterate over the children of scope_node_.
+ // If start_node_ is specified, iterate over the first child past that
+ // node.
+
+ uint32 count = scope_node_->PlatformChildCount();
+ if (count == 0)
return;
- for (unsigned i = 0;
- i < start_node_->PlatformChildCount() &&
- (result_limit_ == UNLIMITED_RESULTS ||
- static_cast<int>(matches_.size()) < result_limit_);
- ++i) {
- BrowserAccessibility* child = start_node_->PlatformGetChild(i);
- if (Matches(child))
- matches_.push_back(child);
+ // We only care about immediate children of scope_node_, so walk up
+ // start_node_ until we get to an immediate child. If it isn't a child,
+ // we ignore start_node_.
+ while (start_node_ && start_node_->GetParent() != scope_node_)
+ start_node_ = start_node_->GetParent();
+
+ uint32 index = (direction_ == FORWARDS ? 0 : count - 1);
+ if (start_node_) {
+ index = start_node_->GetIndexInParent();
+ if (direction_ == FORWARDS)
+ index++;
+ else
+ index--;
+ }
+
+ while (index < count &&
+ (result_limit_ == UNLIMITED_RESULTS ||
+ static_cast<int>(matches_.size()) < result_limit_)) {
+ BrowserAccessibility* node = scope_node_->PlatformGetChild(index);
+ if (Matches(node))
+ matches_.push_back(node);
+
+ if (direction_ == FORWARDS)
+ index++;
+ else
+ index--;
}
}
void OneShotAccessibilityTreeSearch::SearchByWalkingTree() {
BrowserAccessibility* node = nullptr;
- if (start_node_) {
+ node = start_node_;
+ if (node != scope_node_) {
if (direction_ == FORWARDS)
node = tree_->NextInTreeOrder(start_node_);
else
node = tree_->PreviousInTreeOrder(start_node_);
- } else {
- start_node_ = tree_->GetRoot();
- node = start_node_;
}
- while (node && (result_limit_ == UNLIMITED_RESULTS ||
- static_cast<int>(matches_.size()) < result_limit_)) {
+ BrowserAccessibility* stop_node = scope_node_->GetParent();
+ while (node &&
+ node != stop_node &&
+ (result_limit_ == UNLIMITED_RESULTS ||
+ static_cast<int>(matches_.size()) < result_limit_)) {
if (Matches(node))
matches_.push_back(node);
diff --git a/chromium/content/browser/accessibility/one_shot_accessibility_tree_search.h b/chromium/content/browser/accessibility/one_shot_accessibility_tree_search.h
index f1c8012cefa..7e55a887857 100644
--- a/chromium/content/browser/accessibility/one_shot_accessibility_tree_search.h
+++ b/chromium/content/browser/accessibility/one_shot_accessibility_tree_search.h
@@ -37,7 +37,10 @@ class CONTENT_EXPORT OneShotAccessibilityTreeSearch {
const int UNLIMITED_RESULTS = -1;
- OneShotAccessibilityTreeSearch(BrowserAccessibilityManager* tree);
+ // The node passed in |scope| determines the scope of results returned -
+ // they will all be within the subtree of the *parent* of |scope| - in other
+ // words, siblings of |scope| and their descendants.
+ explicit OneShotAccessibilityTreeSearch(BrowserAccessibility* scope);
virtual ~OneShotAccessibilityTreeSearch();
//
@@ -47,6 +50,8 @@ class CONTENT_EXPORT OneShotAccessibilityTreeSearch {
// Sets the node where the search starts. The first potential match will
// be the one immediately following this one. This node will be used as
// the first arguement to any predicates.
+ //
+ // If not specified, |scope| will be used.
void SetStartNode(BrowserAccessibility* start_node);
// Search forwards or backwards in an in-order traversal of the tree.
@@ -85,6 +90,7 @@ class CONTENT_EXPORT OneShotAccessibilityTreeSearch {
bool Matches(BrowserAccessibility* node);
BrowserAccessibilityManager* tree_;
+ BrowserAccessibility* scope_node_;
BrowserAccessibility* start_node_;
Direction direction_;
int result_limit_;
diff --git a/chromium/content/browser/accessibility/one_shot_accessibility_tree_search_unittest.cc b/chromium/content/browser/accessibility/one_shot_accessibility_tree_search_unittest.cc
index a9262d5da63..38b82acce4a 100644
--- a/chromium/content/browser/accessibility/one_shot_accessibility_tree_search_unittest.cc
+++ b/chromium/content/browser/accessibility/one_shot_accessibility_tree_search_unittest.cc
@@ -89,12 +89,12 @@ void MAYBE_OneShotAccessibilityTreeSearchTest::SetUp() {
}
TEST_F(MAYBE_OneShotAccessibilityTreeSearchTest, GetAll) {
- OneShotAccessibilityTreeSearch search(tree_.get());
+ OneShotAccessibilityTreeSearch search(tree_->GetRoot());
ASSERT_EQ(6U, search.CountMatches());
}
TEST_F(MAYBE_OneShotAccessibilityTreeSearchTest, ForwardsWithStartNode) {
- OneShotAccessibilityTreeSearch search(tree_.get());
+ OneShotAccessibilityTreeSearch search(tree_->GetRoot());
search.SetStartNode(tree_->GetFromID(4));
ASSERT_EQ(2U, search.CountMatches());
EXPECT_EQ(5, search.GetMatchAtIndex(0)->GetId());
@@ -102,7 +102,7 @@ TEST_F(MAYBE_OneShotAccessibilityTreeSearchTest, ForwardsWithStartNode) {
}
TEST_F(MAYBE_OneShotAccessibilityTreeSearchTest, BackwardsWithStartNode) {
- OneShotAccessibilityTreeSearch search(tree_.get());
+ OneShotAccessibilityTreeSearch search(tree_->GetRoot());
search.SetStartNode(tree_->GetFromID(4));
search.SetDirection(OneShotAccessibilityTreeSearch::BACKWARDS);
ASSERT_EQ(3U, search.CountMatches());
@@ -111,20 +111,28 @@ TEST_F(MAYBE_OneShotAccessibilityTreeSearchTest, BackwardsWithStartNode) {
EXPECT_EQ(1, search.GetMatchAtIndex(2)->GetId());
}
+TEST_F(MAYBE_OneShotAccessibilityTreeSearchTest,
+ ForwardsWithStartNodeAndScope) {
+ OneShotAccessibilityTreeSearch search(tree_->GetFromID(4));
+ search.SetStartNode(tree_->GetFromID(5));
+ ASSERT_EQ(1U, search.CountMatches());
+ EXPECT_EQ(6, search.GetMatchAtIndex(0)->GetId());
+}
+
TEST_F(MAYBE_OneShotAccessibilityTreeSearchTest, ResultLimitZero) {
- OneShotAccessibilityTreeSearch search(tree_.get());
+ OneShotAccessibilityTreeSearch search(tree_->GetRoot());
search.SetResultLimit(0);
ASSERT_EQ(0U, search.CountMatches());
}
TEST_F(MAYBE_OneShotAccessibilityTreeSearchTest, ResultLimitFive) {
- OneShotAccessibilityTreeSearch search(tree_.get());
+ OneShotAccessibilityTreeSearch search(tree_->GetRoot());
search.SetResultLimit(5);
ASSERT_EQ(5U, search.CountMatches());
}
-TEST_F(MAYBE_OneShotAccessibilityTreeSearchTest, DescendantsOnly) {
- OneShotAccessibilityTreeSearch search(tree_.get());
+TEST_F(MAYBE_OneShotAccessibilityTreeSearchTest, DescendantsOnlyOfRoot) {
+ OneShotAccessibilityTreeSearch search(tree_->GetRoot());
search.SetStartNode(tree_->GetFromID(1));
search.SetImmediateDescendantsOnly(true);
ASSERT_EQ(3U, search.CountMatches());
@@ -133,8 +141,43 @@ TEST_F(MAYBE_OneShotAccessibilityTreeSearchTest, DescendantsOnly) {
EXPECT_EQ(6, search.GetMatchAtIndex(2)->GetId());
}
+TEST_F(MAYBE_OneShotAccessibilityTreeSearchTest, DescendantsOnlyOfNode) {
+ OneShotAccessibilityTreeSearch search(tree_->GetFromID(3));
+ search.SetImmediateDescendantsOnly(true);
+ ASSERT_EQ(2U, search.CountMatches());
+ EXPECT_EQ(4, search.GetMatchAtIndex(0)->GetId());
+ EXPECT_EQ(5, search.GetMatchAtIndex(1)->GetId());
+}
+
+TEST_F(MAYBE_OneShotAccessibilityTreeSearchTest,
+ DescendantsOnlyOfNodeWithStartNode) {
+ OneShotAccessibilityTreeSearch search(tree_->GetFromID(3));
+ search.SetStartNode(tree_->GetFromID(4));
+ search.SetImmediateDescendantsOnly(true);
+ ASSERT_EQ(1U, search.CountMatches());
+ EXPECT_EQ(5, search.GetMatchAtIndex(0)->GetId());
+}
+
+TEST_F(MAYBE_OneShotAccessibilityTreeSearchTest,
+ DescendantsOnlyOfNodeWithStartNode2) {
+ OneShotAccessibilityTreeSearch search(tree_->GetFromID(3));
+ search.SetStartNode(tree_->GetFromID(5));
+ search.SetImmediateDescendantsOnly(true);
+ ASSERT_EQ(0U, search.CountMatches());
+}
+
+TEST_F(MAYBE_OneShotAccessibilityTreeSearchTest,
+ DescendantsOnlyOfNodeWithStartNodeBackwards) {
+ OneShotAccessibilityTreeSearch search(tree_->GetFromID(3));
+ search.SetStartNode(tree_->GetFromID(5));
+ search.SetImmediateDescendantsOnly(true);
+ search.SetDirection(OneShotAccessibilityTreeSearch::BACKWARDS);
+ ASSERT_EQ(1U, search.CountMatches());
+ EXPECT_EQ(4, search.GetMatchAtIndex(0)->GetId());
+}
+
TEST_F(MAYBE_OneShotAccessibilityTreeSearchTest, VisibleOnly) {
- OneShotAccessibilityTreeSearch search(tree_.get());
+ OneShotAccessibilityTreeSearch search(tree_->GetRoot());
search.SetVisibleOnly(true);
ASSERT_EQ(5U, search.CountMatches());
EXPECT_EQ(1, search.GetMatchAtIndex(0)->GetId());
@@ -145,14 +188,14 @@ TEST_F(MAYBE_OneShotAccessibilityTreeSearchTest, VisibleOnly) {
}
TEST_F(MAYBE_OneShotAccessibilityTreeSearchTest, CaseInsensitiveStringMatch) {
- OneShotAccessibilityTreeSearch search(tree_.get());
+ OneShotAccessibilityTreeSearch search(tree_->GetRoot());
search.SetSearchText("eCEptiCOn");
ASSERT_EQ(1U, search.CountMatches());
EXPECT_EQ(5, search.GetMatchAtIndex(0)->GetId());
}
TEST_F(MAYBE_OneShotAccessibilityTreeSearchTest, OnePredicate) {
- OneShotAccessibilityTreeSearch search(tree_.get());
+ OneShotAccessibilityTreeSearch search(tree_->GetRoot());
search.AddPredicate([](BrowserAccessibility* start,
BrowserAccessibility* current) {
return current->GetRole() == ui::AX_ROLE_LIST_ITEM;
@@ -163,7 +206,7 @@ TEST_F(MAYBE_OneShotAccessibilityTreeSearchTest, OnePredicate) {
}
TEST_F(MAYBE_OneShotAccessibilityTreeSearchTest, TwoPredicates) {
- OneShotAccessibilityTreeSearch search(tree_.get());
+ OneShotAccessibilityTreeSearch search(tree_->GetRoot());
search.AddPredicate([](BrowserAccessibility* start,
BrowserAccessibility* current) {
return (current->GetRole() == ui::AX_ROLE_LIST ||
diff --git a/chromium/content/browser/cache_storage/cache_storage.cc b/chromium/content/browser/cache_storage/cache_storage.cc
index 42f0215b847..e385480624a 100644
--- a/chromium/content/browser/cache_storage/cache_storage.cc
+++ b/chromium/content/browser/cache_storage/cache_storage.cc
@@ -9,6 +9,7 @@
#include "base/barrier_closure.h"
#include "base/files/file_util.h"
#include "base/files/memory_mapped_file.h"
+#include "base/guid.h"
#include "base/location.h"
#include "base/memory/ref_counted.h"
#include "base/metrics/histogram_macros.h"
@@ -33,6 +34,13 @@ namespace content {
namespace {
+std::string HexedHash(const std::string& value) {
+ std::string value_hash = base::SHA1HashString(value);
+ std::string valued_hexed_hash = base::ToLowerASCII(
+ base::HexEncode(value_hash.c_str(), value_hash.length()));
+ return valued_hexed_hash;
+}
+
void CloseAllCachesDidCloseCache(const scoped_refptr<CacheStorageCache>& cache,
const base::Closure& barrier_closure) {
barrier_closure.Run();
@@ -42,8 +50,7 @@ void CloseAllCachesDidCloseCache(const scoped_refptr<CacheStorageCache>& cache,
const char CacheStorage::kIndexFileName[] = "index.txt";
-// Handles the loading and clean up of CacheStorageCache objects. The
-// callback of every public method is guaranteed to be called.
+// Handles the loading and clean up of CacheStorageCache objects.
class CacheStorage::CacheLoader {
public:
typedef base::Callback<void(const scoped_refptr<CacheStorageCache>&)>
@@ -74,8 +81,8 @@ class CacheStorage::CacheLoader {
const std::string& cache_name) = 0;
// Deletes any pre-existing cache of the same name and then loads it.
- virtual void CreateCache(const std::string& cache_name,
- const CacheCallback& callback) = 0;
+ virtual void PrepareNewCacheDestination(const std::string& cache_name,
+ const CacheCallback& callback) = 0;
// After the backend has been deleted, do any extra house keeping such as
// removing the cache's directory.
@@ -122,8 +129,8 @@ class CacheStorage::MemoryLoader : public CacheStorage::CacheLoader {
origin_, request_context_getter_, quota_manager_proxy_, blob_context_);
}
- void CreateCache(const std::string& cache_name,
- const CacheCallback& callback) override {
+ void PrepareNewCacheDestination(const std::string& cache_name,
+ const CacheCallback& callback) override {
scoped_refptr<CacheStorageCache> cache = CreateCache(cache_name);
cache_refs_.insert(std::make_pair(cache_name, cache));
callback.Run(cache);
@@ -177,56 +184,61 @@ class CacheStorage::SimpleCacheLoader : public CacheStorage::CacheLoader {
scoped_refptr<CacheStorageCache> CreateCache(
const std::string& cache_name) override {
DCHECK_CURRENTLY_ON(BrowserThread::IO);
+ DCHECK(ContainsKey(cache_name_to_cache_dir_, cache_name));
+ std::string cache_dir = cache_name_to_cache_dir_[cache_name];
+ base::FilePath cache_path = origin_path_.AppendASCII(cache_dir);
return CacheStorageCache::CreatePersistentCache(
- origin_, CreatePersistentCachePath(origin_path_, cache_name),
- request_context_getter_, quota_manager_proxy_, blob_context_);
+ origin_, cache_path, request_context_getter_, quota_manager_proxy_,
+ blob_context_);
}
- void CreateCache(const std::string& cache_name,
- const CacheCallback& callback) override {
+ void PrepareNewCacheDestination(const std::string& cache_name,
+ const CacheCallback& callback) override {
DCHECK_CURRENTLY_ON(BrowserThread::IO);
- // 1. Delete the cache's directory if it exists.
- // (CreateCacheDeleteFilesInPool)
- // 2. Load the cache. (LoadCreateDirectoryInPool)
-
- base::FilePath cache_path =
- CreatePersistentCachePath(origin_path_, cache_name);
-
PostTaskAndReplyWithResult(
cache_task_runner_.get(), FROM_HERE,
- base::Bind(&SimpleCacheLoader::CreateCachePrepDirInPool, cache_path),
- base::Bind(&SimpleCacheLoader::CreateCachePreppedDir, cache_name,
- callback, weak_ptr_factory_.GetWeakPtr()));
+ base::Bind(&SimpleCacheLoader::PrepareNewCacheDirectoryInPool,
+ origin_path_),
+ base::Bind(&SimpleCacheLoader::PrepareNewCacheCreateCache,
+ weak_ptr_factory_.GetWeakPtr(), cache_name, callback));
}
- static bool CreateCachePrepDirInPool(const base::FilePath& cache_path) {
- if (base::PathExists(cache_path))
- base::DeleteFile(cache_path, /* recursive */ true);
- return base::CreateDirectory(cache_path);
+ // Runs on the cache_task_runner_.
+ static std::string PrepareNewCacheDirectoryInPool(
+ const base::FilePath& origin_path) {
+ std::string cache_dir;
+ base::FilePath cache_path;
+ do {
+ cache_dir = base::GenerateGUID();
+ cache_path = origin_path.AppendASCII(cache_dir);
+ } while (base::PathExists(cache_path));
+
+ return base::CreateDirectory(cache_path) ? cache_dir : "";
}
- static void CreateCachePreppedDir(const std::string& cache_name,
- const CacheCallback& callback,
- base::WeakPtr<SimpleCacheLoader> loader,
- bool success) {
- if (!success || !loader) {
+ void PrepareNewCacheCreateCache(const std::string& cache_name,
+ const CacheCallback& callback,
+ const std::string& cache_dir) {
+ if (cache_dir.empty()) {
callback.Run(scoped_refptr<CacheStorageCache>());
return;
}
- callback.Run(loader->CreateCache(cache_name));
+ cache_name_to_cache_dir_[cache_name] = cache_dir;
+ callback.Run(CreateCache(cache_name));
}
void CleanUpDeletedCache(const std::string& cache_name,
const BoolCallback& callback) override {
DCHECK_CURRENTLY_ON(BrowserThread::IO);
-
- // 1. Delete the cache's directory. (CleanUpDeleteCacheDirInPool)
+ DCHECK(ContainsKey(cache_name_to_cache_dir_, cache_name));
base::FilePath cache_path =
- CreatePersistentCachePath(origin_path_, cache_name);
+ origin_path_.AppendASCII(cache_name_to_cache_dir_[cache_name]);
+ cache_name_to_cache_dir_.erase(cache_name);
+
cache_task_runner_->PostTask(
FROM_HERE,
base::Bind(&SimpleCacheLoader::CleanUpDeleteCacheDirInPool, cache_path,
@@ -252,8 +264,11 @@ class CacheStorage::SimpleCacheLoader : public CacheStorage::CacheLoader {
index.set_origin(origin_.spec());
for (size_t i = 0u, max = cache_names.size(); i < max; ++i) {
+ DCHECK(ContainsKey(cache_name_to_cache_dir_, cache_names[i]));
+
CacheStorageIndex::Cache* index_cache = index.add_cache();
index_cache->set_name(cache_names[i]);
+ index_cache->set_cache_dir(cache_name_to_cache_dir_[cache_names[i]]);
}
std::string serialized;
@@ -297,35 +312,26 @@ class CacheStorage::SimpleCacheLoader : public CacheStorage::CacheLoader {
base::FilePath index_path =
origin_path_.AppendASCII(CacheStorage::kIndexFileName);
- cache_task_runner_->PostTask(
- FROM_HERE, base::Bind(&SimpleCacheLoader::LoadIndexReadFileInPool,
- index_path, base::Passed(names.Pass()), callback,
- base::ThreadTaskRunnerHandle::Get()));
- }
-
- static void LoadIndexReadFileInPool(
- const base::FilePath& index_path,
- scoped_ptr<std::vector<std::string>> names,
- const StringVectorCallback& callback,
- const scoped_refptr<base::SingleThreadTaskRunner>& original_task_runner) {
- std::string body;
- base::ReadFileToString(index_path, &body);
-
- original_task_runner->PostTask(
- FROM_HERE, base::Bind(&SimpleCacheLoader::LoadIndexDidReadFile,
- base::Passed(names.Pass()), callback, body));
+ PostTaskAndReplyWithResult(
+ cache_task_runner_.get(), FROM_HERE,
+ base::Bind(&SimpleCacheLoader::ReadAndMigrateIndexInPool, index_path),
+ base::Bind(&SimpleCacheLoader::LoadIndexDidReadFile,
+ weak_ptr_factory_.GetWeakPtr(), base::Passed(&names),
+ callback));
}
- static void LoadIndexDidReadFile(scoped_ptr<std::vector<std::string>> names,
- const StringVectorCallback& callback,
- const std::string& serialized) {
+ void LoadIndexDidReadFile(scoped_ptr<std::vector<std::string>> names,
+ const StringVectorCallback& callback,
+ const std::string& serialized) {
DCHECK_CURRENTLY_ON(BrowserThread::IO);
CacheStorageIndex index;
if (index.ParseFromString(serialized)) {
for (int i = 0, max = index.cache_size(); i < max; ++i) {
const CacheStorageIndex::Cache& cache = index.cache(i);
+ DCHECK(cache.has_cache_dir());
names->push_back(cache.name());
+ cache_name_to_cache_dir_[cache.name()] = cache.cache_dir();
}
}
@@ -335,22 +341,72 @@ class CacheStorage::SimpleCacheLoader : public CacheStorage::CacheLoader {
}
private:
+ friend class MigratedLegacyCacheDirectoryNameTest;
~SimpleCacheLoader() override {}
- static std::string HexedHash(const std::string& value) {
- std::string value_hash = base::SHA1HashString(value);
- std::string valued_hexed_hash = base::ToLowerASCII(
- base::HexEncode(value_hash.c_str(), value_hash.length()));
- return valued_hexed_hash;
+ // Runs on cache_task_runner_
+ static std::string MigrateCachesIfNecessaryInPool(
+ const std::string& body,
+ const base::FilePath& index_path) {
+ CacheStorageIndex index;
+ if (!index.ParseFromString(body))
+ return body;
+
+ base::FilePath origin_path = index_path.DirName();
+ bool index_is_dirty = false;
+ const std::string kBadIndexState("");
+
+ // Look for caches that have no cache_dir. Give any such caches a directory
+ // with a random name and move them there. Then, rewrite the index file.
+ for (int i = 0, max = index.cache_size(); i < max; ++i) {
+ const CacheStorageIndex::Cache& cache = index.cache(i);
+ if (!cache.has_cache_dir()) {
+ // Find a new home for the cache.
+ base::FilePath legacy_cache_path =
+ origin_path.AppendASCII(HexedHash(cache.name()));
+ std::string cache_dir;
+ base::FilePath cache_path;
+ do {
+ cache_dir = base::GenerateGUID();
+ cache_path = origin_path.AppendASCII(cache_dir);
+ } while (base::PathExists(cache_path));
+
+ if (!base::Move(legacy_cache_path, cache_path)) {
+ // If the move fails then the cache is in a bad state. Return an empty
+ // index so that the CacheStorage can start fresh. The unreferenced
+ // caches will be discarded later in initialization.
+ return kBadIndexState;
+ }
+
+ index.mutable_cache(i)->set_cache_dir(cache_dir);
+ index_is_dirty = true;
+ }
+ }
+
+ if (index_is_dirty) {
+ std::string new_body;
+ if (!index.SerializeToString(&new_body))
+ return kBadIndexState;
+ if (base::WriteFile(index_path, new_body.c_str(), new_body.size()) !=
+ base::checked_cast<int>(new_body.size()))
+ return kBadIndexState;
+ return new_body;
+ }
+
+ return body;
}
- static base::FilePath CreatePersistentCachePath(
- const base::FilePath& origin_path,
- const std::string& cache_name) {
- return origin_path.AppendASCII(HexedHash(cache_name));
+ // Runs on cache_task_runner_
+ static std::string ReadAndMigrateIndexInPool(
+ const base::FilePath& index_path) {
+ std::string body;
+ base::ReadFileToString(index_path, &body);
+
+ return MigrateCachesIfNecessaryInPool(body, index_path);
}
const base::FilePath origin_path_;
+ std::map<std::string, std::string> cache_name_to_cache_dir_;
base::WeakPtrFactory<SimpleCacheLoader> weak_ptr_factory_;
};
@@ -569,7 +625,7 @@ void CacheStorage::OpenCacheImpl(const std::string& cache_name,
return;
}
- cache_loader_->CreateCache(
+ cache_loader_->PrepareNewCacheDestination(
cache_name, base::Bind(&CacheStorage::CreateCacheDidCreateCache,
weak_factory_.GetWeakPtr(), cache_name, callback));
}
@@ -612,8 +668,7 @@ void CacheStorage::CreateCacheDidWriteIndex(
void CacheStorage::HasCacheImpl(const std::string& cache_name,
const BoolAndErrorCallback& callback) {
- bool has_cache = cache_map_.find(cache_name) != cache_map_.end();
-
+ bool has_cache = ContainsKey(cache_map_, cache_name);
callback.Run(has_cache, CACHE_STORAGE_OK);
}
diff --git a/chromium/content/browser/cache_storage/cache_storage.proto b/chromium/content/browser/cache_storage/cache_storage.proto
index e7ef4b482b9..807c1e548c4 100644
--- a/chromium/content/browser/cache_storage/cache_storage.proto
+++ b/chromium/content/browser/cache_storage/cache_storage.proto
@@ -9,7 +9,10 @@ option optimize_for = LITE_RUNTIME;
package content;
message CacheStorageIndex {
- message Cache { required string name = 1; }
+ message Cache {
+ required string name = 1;
+ optional string cache_dir = 2;
+ }
repeated Cache cache = 1;
optional string origin = 2;
}
diff --git a/chromium/content/browser/cache_storage/cache_storage_cache.h b/chromium/content/browser/cache_storage/cache_storage_cache.h
index adac254a232..75d0c86fc92 100644
--- a/chromium/content/browser/cache_storage/cache_storage_cache.h
+++ b/chromium/content/browser/cache_storage/cache_storage_cache.h
@@ -107,6 +107,8 @@ class CONTENT_EXPORT CacheStorageCache
// not a memory cache backend.
int64 MemoryBackedSize() const;
+ base::FilePath path() const { return path_; }
+
base::WeakPtr<CacheStorageCache> AsWeakPtr();
private:
diff --git a/chromium/content/browser/cache_storage/cache_storage_manager.h b/chromium/content/browser/cache_storage/cache_storage_manager.h
index 63a255bd785..0499f95524d 100644
--- a/chromium/content/browser/cache_storage/cache_storage_manager.h
+++ b/chromium/content/browser/cache_storage/cache_storage_manager.h
@@ -88,6 +88,7 @@ class CONTENT_EXPORT CacheStorageManager {
friend class CacheStorageManagerTest;
friend class CacheStorageMigrationTest;
friend class CacheStorageQuotaClient;
+ friend class MigratedLegacyCacheDirectoryNameTest;
typedef std::map<GURL, CacheStorage*> CacheStorageMap;
diff --git a/chromium/content/browser/cache_storage/cache_storage_manager_unittest.cc b/chromium/content/browser/cache_storage/cache_storage_manager_unittest.cc
index 2a5541fc231..04c6a6a87a7 100644
--- a/chromium/content/browser/cache_storage/cache_storage_manager_unittest.cc
+++ b/chromium/content/browser/cache_storage/cache_storage_manager_unittest.cc
@@ -7,9 +7,13 @@
#include "base/files/file_path.h"
#include "base/files/file_util.h"
#include "base/files/scoped_temp_dir.h"
+#include "base/guid.h"
#include "base/run_loop.h"
+#include "base/sha1.h"
#include "base/stl_util.h"
+#include "base/strings/string_number_conversions.h"
#include "base/thread_task_runner_handle.h"
+#include "content/browser/cache_storage/cache_storage.pb.h"
#include "content/browser/cache_storage/cache_storage_quota_client.h"
#include "content/browser/fileapi/chrome_blob_storage_context.h"
#include "content/browser/quota/mock_quota_manager_proxy.h"
@@ -17,17 +21,33 @@
#include "content/public/browser/cache_storage_usage_info.h"
#include "content/public/test/test_browser_context.h"
#include "content/public/test/test_browser_thread_bundle.h"
+#include "net/url_request/url_request_context.h"
#include "net/url_request/url_request_context_getter.h"
+#include "net/url_request/url_request_job_factory_impl.h"
+#include "storage/browser/blob/blob_data_builder.h"
+#include "storage/browser/blob/blob_data_handle.h"
#include "storage/browser/blob/blob_storage_context.h"
+#include "storage/browser/blob/blob_url_request_job_factory.h"
#include "storage/browser/quota/quota_manager_proxy.h"
#include "testing/gtest/include/gtest/gtest.h"
namespace content {
+// Returns a BlobProtocolHandler that uses |blob_storage_context|. Caller owns
+// the memory.
+scoped_ptr<storage::BlobProtocolHandler> CreateMockBlobProtocolHandler(
+ storage::BlobStorageContext* blob_storage_context) {
+ // The FileSystemContext and thread task runner are not actually used but a
+ // task runner is needed to avoid a DCHECK in BlobURLRequestJob ctor.
+ return make_scoped_ptr(new storage::BlobProtocolHandler(
+ blob_storage_context, NULL, base::ThreadTaskRunnerHandle::Get().get()));
+}
+
class CacheStorageManagerTest : public testing::Test {
public:
CacheStorageManagerTest()
: browser_thread_bundle_(TestBrowserThreadBundle::IO_MAINLOOP),
+ blob_storage_context_(nullptr),
callback_bool_(false),
callback_error_(CACHE_STORAGE_OK),
origin1_("http://example1.com"),
@@ -39,6 +59,17 @@ class CacheStorageManagerTest : public testing::Test {
// Wait for ChromeBlobStorageContext to finish initializing.
base::RunLoop().RunUntilIdle();
+ blob_storage_context_ = blob_storage_context->context();
+
+ url_request_job_factory_.reset(new net::URLRequestJobFactoryImpl);
+ url_request_job_factory_->SetProtocolHandler(
+ "blob", CreateMockBlobProtocolHandler(blob_storage_context->context()));
+
+ net::URLRequestContext* url_request_context =
+ browser_context_.GetRequestContext()->GetURLRequestContext();
+
+ url_request_context->set_job_factory(url_request_job_factory_.get());
+
quota_manager_proxy_ = new MockQuotaManagerProxy(
nullptr, base::ThreadTaskRunnerHandle::Get().get());
@@ -101,7 +132,7 @@ class CacheStorageManagerTest : public testing::Test {
scoped_ptr<storage::BlobDataHandle> blob_data_handle) {
callback_error_ = error;
callback_cache_response_ = response.Pass();
- // Deliberately drop the data handle as only the url is being tested.
+ callback_data_handle_ = blob_data_handle.Pass();
run_loop->Quit();
}
@@ -186,9 +217,18 @@ class CacheStorageManagerTest : public testing::Test {
bool CachePut(const scoped_refptr<CacheStorageCache>& cache,
const GURL& url) {
ServiceWorkerFetchRequest request;
- ServiceWorkerResponse response;
request.url = url;
- response.url = url;
+
+ scoped_ptr<storage::BlobDataBuilder> blob_data(
+ new storage::BlobDataBuilder(base::GenerateGUID()));
+ blob_data->AppendData(url.spec());
+
+ scoped_ptr<storage::BlobDataHandle> blob_handle =
+ blob_storage_context_->AddFinishedBlob(blob_data.get());
+ ServiceWorkerResponse response(
+ url, 200, "OK", blink::WebServiceWorkerResponseTypeDefault,
+ ServiceWorkerHeaderMap(), blob_handle->uuid(), url.spec().size(),
+ GURL(), blink::WebServiceWorkerResponseErrorUnknown);
CacheStorageBatchOperation operation;
operation.operation_type = CACHE_STORAGE_CACHE_OPERATION_TYPE_PUT;
@@ -256,6 +296,8 @@ class CacheStorageManagerTest : public testing::Test {
protected:
TestBrowserContext browser_context_;
TestBrowserThreadBundle browser_thread_bundle_;
+ scoped_ptr<net::URLRequestJobFactoryImpl> url_request_job_factory_;
+ storage::BlobStorageContext* blob_storage_context_;
base::ScopedTempDir temp_dir_;
scoped_refptr<MockQuotaManagerProxy> quota_manager_proxy_;
@@ -265,6 +307,7 @@ class CacheStorageManagerTest : public testing::Test {
int callback_bool_;
CacheStorageError callback_error_;
scoped_ptr<ServiceWorkerResponse> callback_cache_response_;
+ scoped_ptr<storage::BlobDataHandle> callback_data_handle_;
std::vector<std::string> callback_strings_;
const GURL origin1_;
@@ -413,6 +456,23 @@ TEST_P(CacheStorageManagerTestP, StorageMatchAllNoCaches) {
EXPECT_EQ(CACHE_STORAGE_ERROR_NOT_FOUND, callback_error_);
}
+TEST_F(CacheStorageManagerTest, StorageReuseCacheName) {
+ // Deleting a cache and creating one with the same name and adding an entry
+ // with the same URL should work. (see crbug.com/542668)
+ const GURL kTestURL = GURL("http://example.com/foo");
+ EXPECT_TRUE(Open(origin1_, "foo"));
+ EXPECT_TRUE(CachePut(callback_cache_, kTestURL));
+ EXPECT_TRUE(CacheMatch(callback_cache_, kTestURL));
+ scoped_ptr<storage::BlobDataHandle> data_handle =
+ callback_data_handle_.Pass();
+
+ EXPECT_TRUE(Delete(origin1_, "foo"));
+ // The cache is deleted but the handle to one of its entries is still
+ // open. Creating a new cache in the same directory would fail on Windows.
+ EXPECT_TRUE(Open(origin1_, "foo"));
+ EXPECT_TRUE(CachePut(callback_cache_, kTestURL));
+}
+
TEST_P(CacheStorageManagerTestP, StorageMatchAllEntryExistsTwice) {
EXPECT_TRUE(Open(origin1_, "foo"));
EXPECT_TRUE(CachePut(callback_cache_, GURL("http://example.com/foo")));
@@ -685,6 +745,100 @@ TEST_F(CacheStorageMigrationTest, MoveFailure) {
EXPECT_EQ(expected_keys, callback_strings_);
}
+// Tests that legacy caches created via a hash of the cache name instead of a
+// random name are migrated and continue to function in a new world of random
+// cache names.
+class MigratedLegacyCacheDirectoryNameTest : public CacheStorageManagerTest {
+ protected:
+ MigratedLegacyCacheDirectoryNameTest()
+ : legacy_cache_name_("foo"), stored_url_("http://example.com/foo") {}
+
+ void SetUp() override {
+ CacheStorageManagerTest::SetUp();
+
+ // Create a cache that is stored on disk with the legacy naming scheme (hash
+ // of the name) and without a directory name in the index.
+ base::FilePath origin_path = CacheStorageManager::ConstructOriginPath(
+ cache_manager_->root_path(), origin1_);
+
+ // Populate a legacy cache.
+ ASSERT_TRUE(Open(origin1_, legacy_cache_name_));
+ EXPECT_TRUE(CachePut(callback_cache_, stored_url_));
+ base::FilePath new_path = callback_cache_->path();
+
+ // Close the cache.
+ callback_cache_ = nullptr;
+ base::RunLoop().RunUntilIdle();
+
+ // Legacy index files didn't have the cache directory, so remove it from the
+ // index.
+ base::FilePath index_path = origin_path.AppendASCII("index.txt");
+ std::string index_contents;
+ base::ReadFileToString(index_path, &index_contents);
+ CacheStorageIndex index;
+ ASSERT_TRUE(index.ParseFromString(index_contents));
+ ASSERT_EQ(1, index.cache_size());
+ index.mutable_cache(0)->clear_cache_dir();
+ ASSERT_TRUE(index.SerializeToString(&index_contents));
+ index.ParseFromString(index_contents);
+ ASSERT_EQ(index_contents.size(),
+ (uint32_t)base::WriteFile(index_path, index_contents.c_str(),
+ index_contents.size()));
+
+ // Move the cache to the legacy location.
+ legacy_path_ = origin_path.AppendASCII(HexedHash(legacy_cache_name_));
+ ASSERT_FALSE(base::DirectoryExists(legacy_path_));
+ ASSERT_TRUE(base::Move(new_path, legacy_path_));
+
+ // Create a new manager to reread the index file and force migration.
+ quota_manager_proxy_->SimulateQuotaManagerDestroyed();
+ cache_manager_ = CacheStorageManager::Create(cache_manager_.get());
+ }
+
+ static std::string HexedHash(const std::string& value) {
+ std::string value_hash = base::SHA1HashString(value);
+ std::string valued_hexed_hash = base::ToLowerASCII(
+ base::HexEncode(value_hash.c_str(), value_hash.length()));
+ return valued_hexed_hash;
+ }
+
+ base::FilePath legacy_path_;
+ const std::string legacy_cache_name_;
+ const GURL stored_url_;
+
+ DISALLOW_COPY_AND_ASSIGN(MigratedLegacyCacheDirectoryNameTest);
+};
+
+TEST_F(MigratedLegacyCacheDirectoryNameTest, LegacyCacheMigrated) {
+ EXPECT_TRUE(Open(origin1_, legacy_cache_name_));
+
+ // Verify that the cache migrated away from the legacy_path_ directory.
+ ASSERT_FALSE(base::DirectoryExists(legacy_path_));
+
+ // Verify that the existing entry still works.
+ EXPECT_TRUE(CacheMatch(callback_cache_, stored_url_));
+
+ // Verify that adding new entries works.
+ EXPECT_TRUE(CachePut(callback_cache_, GURL("http://example.com/foo2")));
+ EXPECT_TRUE(CacheMatch(callback_cache_, GURL("http://example.com/foo2")));
+}
+
+TEST_F(MigratedLegacyCacheDirectoryNameTest,
+ RandomDirectoryCacheSideBySideWithLegacy) {
+ EXPECT_TRUE(Open(origin1_, legacy_cache_name_));
+ EXPECT_TRUE(Open(origin1_, "bar"));
+ EXPECT_TRUE(CachePut(callback_cache_, stored_url_));
+ EXPECT_TRUE(CacheMatch(callback_cache_, stored_url_));
+}
+
+TEST_F(MigratedLegacyCacheDirectoryNameTest, DeleteLegacyCacheAndRecreateNew) {
+ EXPECT_TRUE(Delete(origin1_, legacy_cache_name_));
+ EXPECT_TRUE(Open(origin1_, legacy_cache_name_));
+ EXPECT_FALSE(CacheMatch(callback_cache_, stored_url_));
+ EXPECT_TRUE(CachePut(callback_cache_, GURL("http://example.com/foo2")));
+ EXPECT_TRUE(CacheMatch(callback_cache_, GURL("http://example.com/foo2")));
+}
+
class CacheStorageQuotaClientTest : public CacheStorageManagerTest {
protected:
CacheStorageQuotaClientTest() {}
diff --git a/chromium/content/browser/compositor/browser_compositor_overlay_candidate_validator_mac.h b/chromium/content/browser/compositor/browser_compositor_overlay_candidate_validator_mac.h
index bbca0e9a517..c2ccf65d6e8 100644
--- a/chromium/content/browser/compositor/browser_compositor_overlay_candidate_validator_mac.h
+++ b/chromium/content/browser/compositor/browser_compositor_overlay_candidate_validator_mac.h
@@ -28,6 +28,7 @@ class CONTENT_EXPORT BrowserCompositorOverlayCandidateValidatorMac
private:
gfx::AcceleratedWidget widget_;
bool software_mirror_active_;
+ bool ca_layers_disabled_;
DISALLOW_COPY_AND_ASSIGN(BrowserCompositorOverlayCandidateValidatorMac);
};
diff --git a/chromium/content/browser/compositor/browser_compositor_overlay_candidate_validator_mac.mm b/chromium/content/browser/compositor/browser_compositor_overlay_candidate_validator_mac.mm
index b7ed200df7a..492fcacf0c0 100644
--- a/chromium/content/browser/compositor/browser_compositor_overlay_candidate_validator_mac.mm
+++ b/chromium/content/browser/compositor/browser_compositor_overlay_candidate_validator_mac.mm
@@ -5,6 +5,8 @@
#include "content/browser/compositor/browser_compositor_overlay_candidate_validator_mac.h"
#include "cc/output/overlay_strategy_sandwich.h"
+#include "content/browser/gpu/gpu_data_manager_impl.h"
+#include "gpu/config/gpu_driver_bug_workaround_type.h"
namespace content {
@@ -12,7 +14,10 @@ BrowserCompositorOverlayCandidateValidatorMac::
BrowserCompositorOverlayCandidateValidatorMac(
gfx::AcceleratedWidget widget)
: widget_(widget),
- software_mirror_active_(false) {
+ software_mirror_active_(false),
+ ca_layers_disabled_(
+ GpuDataManagerImpl::GetInstance()->IsDriverBugWorkaroundActive(
+ gpu::DISABLE_OVERLAY_CA_LAYERS)) {
}
BrowserCompositorOverlayCandidateValidatorMac::
@@ -32,6 +37,9 @@ void BrowserCompositorOverlayCandidateValidatorMac::CheckOverlaySupport(
if (software_mirror_active_)
return;
+ if (ca_layers_disabled_)
+ return;
+
for (size_t i = 0; i < surfaces->size(); ++i)
surfaces->at(i).overlay_handled = true;
}
diff --git a/chromium/content/browser/devtools/protocol/devtools_protocol_browsertest.cc b/chromium/content/browser/devtools/protocol/devtools_protocol_browsertest.cc
index 12491215fe4..12c17d9d921 100644
--- a/chromium/content/browser/devtools/protocol/devtools_protocol_browsertest.cc
+++ b/chromium/content/browser/devtools/protocol/devtools_protocol_browsertest.cc
@@ -396,4 +396,16 @@ IN_PROC_BROWSER_TEST_F(DevToolsProtocolTest, ReconnectPreservesState) {
EXPECT_TRUE(found_notification);
}
+IN_PROC_BROWSER_TEST_F(DevToolsProtocolTest, ReloadBlankPage) {
+ Shell* window = Shell::CreateNewWindow(
+ shell()->web_contents()->GetBrowserContext(),
+ GURL("javascript:x=1"),
+ nullptr,
+ gfx::Size());
+ WaitForLoadStop(window->web_contents());
+ Attach();
+ SendCommand("Page.reload", nullptr, false);
+ // Should not crash at this point.
+}
+
} // namespace content
diff --git a/chromium/content/browser/devtools/protocol/page_handler.cc b/chromium/content/browser/devtools/protocol/page_handler.cc
index c1e88169d5d..73c4c8ea965 100644
--- a/chromium/content/browser/devtools/protocol/page_handler.cc
+++ b/chromium/content/browser/devtools/protocol/page_handler.cc
@@ -214,7 +214,8 @@ Response PageHandler::Reload(const bool* ignoreCache,
return Response::InternalError("Could not connect to view");
if (web_contents->IsCrashed() ||
- web_contents->GetController().GetVisibleEntry()->IsViewSourceMode()) {
+ (web_contents->GetController().GetVisibleEntry() &&
+ web_contents->GetController().GetVisibleEntry()->IsViewSourceMode())) {
web_contents->GetController().Reload(false);
return Response::OK();
} else {
diff --git a/chromium/content/browser/download/download_stats.cc b/chromium/content/browser/download/download_stats.cc
index 45772ede2c3..3f7d692f2a7 100644
--- a/chromium/content/browser/download/download_stats.cc
+++ b/chromium/content/browser/download/download_stats.cc
@@ -213,6 +213,112 @@ const base::FilePath::CharType* kDangerousFileTypes[] = {
FILE_PATH_LITERAL(".gadget"),
FILE_PATH_LITERAL(".efi"),
FILE_PATH_LITERAL(".fon"),
+ FILE_PATH_LITERAL(".partial"),
+ FILE_PATH_LITERAL(".svg"),
+ FILE_PATH_LITERAL(".xml"),
+ FILE_PATH_LITERAL(".xrm_ms"),
+ FILE_PATH_LITERAL(".xsl"),
+ FILE_PATH_LITERAL(".action"),
+ FILE_PATH_LITERAL(".bin"),
+ FILE_PATH_LITERAL(".inx"),
+ FILE_PATH_LITERAL(".ipa"),
+ FILE_PATH_LITERAL(".isu"),
+ FILE_PATH_LITERAL(".job"),
+ FILE_PATH_LITERAL(".out"),
+ FILE_PATH_LITERAL(".pad"),
+ FILE_PATH_LITERAL(".paf"),
+ FILE_PATH_LITERAL(".rgs"),
+ FILE_PATH_LITERAL(".u3p"),
+ FILE_PATH_LITERAL(".vbscript"),
+ FILE_PATH_LITERAL(".workflow"),
+ FILE_PATH_LITERAL(".001"),
+ FILE_PATH_LITERAL(".7z"),
+ FILE_PATH_LITERAL(".ace"),
+ FILE_PATH_LITERAL(".arc"),
+ FILE_PATH_LITERAL(".arj"),
+ FILE_PATH_LITERAL(".b64"),
+ FILE_PATH_LITERAL(".balz"),
+ FILE_PATH_LITERAL(".bhx"),
+ FILE_PATH_LITERAL(".bz"),
+ FILE_PATH_LITERAL(".bz2"),
+ FILE_PATH_LITERAL(".bzip2"),
+ FILE_PATH_LITERAL(".cab"),
+ FILE_PATH_LITERAL(".cpio"),
+ FILE_PATH_LITERAL(".fat"),
+ FILE_PATH_LITERAL(".gz"),
+ FILE_PATH_LITERAL(".gzip"),
+ FILE_PATH_LITERAL(".hfs"),
+ FILE_PATH_LITERAL(".hqx"),
+ FILE_PATH_LITERAL(".iso"),
+ FILE_PATH_LITERAL(".lha"),
+ FILE_PATH_LITERAL(".lpaq1"),
+ FILE_PATH_LITERAL(".lpaq5"),
+ FILE_PATH_LITERAL(".lpaq8"),
+ FILE_PATH_LITERAL(".lzh"),
+ FILE_PATH_LITERAL(".lzma"),
+ FILE_PATH_LITERAL(".mim"),
+ FILE_PATH_LITERAL(".ntfs"),
+ FILE_PATH_LITERAL(".paq8f"),
+ FILE_PATH_LITERAL(".paq8jd"),
+ FILE_PATH_LITERAL(".paq8l"),
+ FILE_PATH_LITERAL(".paq8o"),
+ FILE_PATH_LITERAL(".pea"),
+ FILE_PATH_LITERAL(".quad"),
+ FILE_PATH_LITERAL(".r00"),
+ FILE_PATH_LITERAL(".r01"),
+ FILE_PATH_LITERAL(".r02"),
+ FILE_PATH_LITERAL(".r03"),
+ FILE_PATH_LITERAL(".r04"),
+ FILE_PATH_LITERAL(".r05"),
+ FILE_PATH_LITERAL(".r06"),
+ FILE_PATH_LITERAL(".r07"),
+ FILE_PATH_LITERAL(".r08"),
+ FILE_PATH_LITERAL(".r09"),
+ FILE_PATH_LITERAL(".r10"),
+ FILE_PATH_LITERAL(".r11"),
+ FILE_PATH_LITERAL(".r12"),
+ FILE_PATH_LITERAL(".r13"),
+ FILE_PATH_LITERAL(".r14"),
+ FILE_PATH_LITERAL(".r15"),
+ FILE_PATH_LITERAL(".r16"),
+ FILE_PATH_LITERAL(".r17"),
+ FILE_PATH_LITERAL(".r18"),
+ FILE_PATH_LITERAL(".r19"),
+ FILE_PATH_LITERAL(".r20"),
+ FILE_PATH_LITERAL(".r21"),
+ FILE_PATH_LITERAL(".r22"),
+ FILE_PATH_LITERAL(".r23"),
+ FILE_PATH_LITERAL(".r24"),
+ FILE_PATH_LITERAL(".r25"),
+ FILE_PATH_LITERAL(".r26"),
+ FILE_PATH_LITERAL(".r27"),
+ FILE_PATH_LITERAL(".r28"),
+ FILE_PATH_LITERAL(".r29"),
+ FILE_PATH_LITERAL(".rar"),
+ FILE_PATH_LITERAL(".squashfs"),
+ FILE_PATH_LITERAL(".swm"),
+ FILE_PATH_LITERAL(".tar"),
+ FILE_PATH_LITERAL(".taz"),
+ FILE_PATH_LITERAL(".tbz"),
+ FILE_PATH_LITERAL(".tbz2"),
+ FILE_PATH_LITERAL(".tgz"),
+ FILE_PATH_LITERAL(".tpz"),
+ FILE_PATH_LITERAL(".txz"),
+ FILE_PATH_LITERAL(".tz"),
+ FILE_PATH_LITERAL(".udf"),
+ FILE_PATH_LITERAL(".uu"),
+ FILE_PATH_LITERAL(".uue"),
+ FILE_PATH_LITERAL(".vhd"),
+ FILE_PATH_LITERAL(".vmdk"),
+ FILE_PATH_LITERAL(".wim"),
+ FILE_PATH_LITERAL(".wrc"),
+ FILE_PATH_LITERAL(".xar"),
+ FILE_PATH_LITERAL(".xxe"),
+ FILE_PATH_LITERAL(".xz"),
+ FILE_PATH_LITERAL(".z"),
+ FILE_PATH_LITERAL(".zip"),
+ FILE_PATH_LITERAL(".zipx"),
+ FILE_PATH_LITERAL(".zpaq"),
};
// Maps extensions to their matching UMA histogram int value.
diff --git a/chromium/content/browser/media/android/browser_demuxer_android.cc b/chromium/content/browser/media/android/browser_demuxer_android.cc
index aab876394ae..997b43181ac 100644
--- a/chromium/content/browser/media/android/browser_demuxer_android.cc
+++ b/chromium/content/browser/media/android/browser_demuxer_android.cc
@@ -55,8 +55,11 @@ class BrowserDemuxerAndroid::Internal : public media::DemuxerAndroid {
BrowserDemuxerAndroid::BrowserDemuxerAndroid()
: BrowserMessageFilter(MediaPlayerMsgStart) {
+ const bool use_media_thread = media::UseMediaThreadForMediaPlayback();
+ VLOG(1) << "Using " << (use_media_thread ? "media" : "UI") << " thread"
+ << " for MSE playback";
task_runner_ =
- media::UseMediaThreadForMediaPlayback() ?
+ use_media_thread ?
media::GetMediaTaskRunner().get() :
BrowserThread::GetMessageLoopProxyForThread(BrowserThread::UI).get();
diff --git a/chromium/content/browser/media/encrypted_media_browsertest.cc b/chromium/content/browser/media/encrypted_media_browsertest.cc
index 4eeeea9ed8a..9bcc7e56632 100644
--- a/chromium/content/browser/media/encrypted_media_browsertest.cc
+++ b/chromium/content/browser/media/encrypted_media_browsertest.cc
@@ -126,12 +126,10 @@ class EncryptedMediaTest : public content::MediaBrowserTest,
title_watcher->AlsoWaitForTitle(base::ASCIIToUTF16(kEmeKeyError));
}
-#if defined(OS_ANDROID)
void SetUpCommandLine(base::CommandLine* command_line) override {
command_line->AppendSwitch(
switches::kDisableGestureRequirementForMediaPlayback);
}
-#endif
};
using ::testing::Combine;
diff --git a/chromium/content/browser/media/media_source_browsertest.cc b/chromium/content/browser/media/media_source_browsertest.cc
index d9592dd32c7..33dd0adcfde 100644
--- a/chromium/content/browser/media/media_source_browsertest.cc
+++ b/chromium/content/browser/media/media_source_browsertest.cc
@@ -54,12 +54,10 @@ class MediaSourceTest : public content::MediaBrowserTest {
false);
}
-#if defined(OS_ANDROID)
void SetUpCommandLine(base::CommandLine* command_line) override {
command_line->AppendSwitch(
switches::kDisableGestureRequirementForMediaPlayback);
}
-#endif
};
IN_PROC_BROWSER_TEST_F(MediaSourceTest, Playback_VideoAudio_WebM) {
diff --git a/chromium/content/browser/notifications/notification_event_dispatcher_impl.cc b/chromium/content/browser/notifications/notification_event_dispatcher_impl.cc
index 382991cf492..f5e8409fd2e 100644
--- a/chromium/content/browser/notifications/notification_event_dispatcher_impl.cc
+++ b/chromium/content/browser/notifications/notification_event_dispatcher_impl.cc
@@ -80,6 +80,7 @@ void DispatchNotificationClickEventOnRegistration(
dispatch_complete_callback,
service_worker_registration);
+ DCHECK(service_worker_registration->active_version());
service_worker_registration->active_version()->
DispatchNotificationClickEvent(
dispatch_event_callback,
@@ -143,7 +144,7 @@ void FindServiceWorkerRegistration(
return;
}
- service_worker_context->FindRegistrationForId(
+ service_worker_context->FindReadyRegistrationForId(
notification_database_data.service_worker_registration_id,
origin,
base::Bind(&DispatchNotificationClickEventOnRegistration,
diff --git a/chromium/content/browser/renderer_host/media/audio_input_sync_writer.cc b/chromium/content/browser/renderer_host/media/audio_input_sync_writer.cc
index 68d052e02f0..ce32946df71 100644
--- a/chromium/content/browser/renderer_host/media/audio_input_sync_writer.cc
+++ b/chromium/content/browser/renderer_host/media/audio_input_sync_writer.cc
@@ -9,6 +9,7 @@
#include "base/metrics/histogram.h"
#include "base/strings/stringprintf.h"
#include "content/browser/renderer_host/media/media_stream_manager.h"
+#include "content/public/browser/browser_thread.h"
using media::AudioBus;
using media::AudioInputBuffer;
@@ -222,6 +223,22 @@ void AudioInputSyncWriter::CheckTimeSinceLastWrite() {
}
void AudioInputSyncWriter::AddToNativeLog(const std::string& message) {
+#if defined(OS_ANDROID)
+ // MediaStreamManager::SendMessageToNativeLog will hop to the UI thread which
+ // on Android will attach the current thread. The audio thread than we're on
+ // now may be a native thread which we don't want to attach, so to avoid this
+ // we first hop to the IO thread.
+ // TODO(tommi): Make a nicer solution, preferably avoiding the many thread
+ // hops in MediaStreamManager and later when adding a log message.
+ if (!BrowserThread::CurrentlyOn(BrowserThread::IO)) {
+ BrowserThread::PostTask(
+ BrowserThread::IO,
+ FROM_HERE,
+ base::Bind(&MediaStreamManager::SendMessageToNativeLog,
+ message));
+ return;
+ }
+#endif
MediaStreamManager::SendMessageToNativeLog(message);
}
diff --git a/chromium/content/browser/renderer_host/media/audio_output_device_enumerator.h b/chromium/content/browser/renderer_host/media/audio_output_device_enumerator.h
index 05e51cf4038..9ca251ed3db 100644
--- a/chromium/content/browser/renderer_host/media/audio_output_device_enumerator.h
+++ b/chromium/content/browser/renderer_host/media/audio_output_device_enumerator.h
@@ -57,14 +57,19 @@ class CONTENT_EXPORT AudioOutputDeviceEnumerator {
CachePolicy cache_policy);
~AudioOutputDeviceEnumerator();
- // Must be called on the IO thread. |callback| is also invoked
- // on the IO thread.
+ // Does an enumeration and provides the results to the callback.
+ // If there are no physical devices, the result contains a single entry with
+ // the default parameters provided by the underlying audio manager.
+ // The behavior with no physical devices is there to ease the transition
+ // from the use of RenderThreadImpl::GetAudioHardwareConfig(), which always
+ // provides default parameters, even if there are no devices.
+ // See https://crbug.com/549125.
void Enumerate(const AudioOutputDeviceEnumerationCB& callback);
- // Invalidates the current cache. Must be called on the IO thread.
+ // Invalidates the current cache.
void InvalidateCache();
- // Sets the cache policy. Must be called on the IO thread.
+ // Sets the cache policy.
void SetCachePolicy(CachePolicy cache_policy);
private:
diff --git a/chromium/content/browser/renderer_host/media/media_stream_manager.cc b/chromium/content/browser/renderer_host/media/media_stream_manager.cc
index 2b411e01315..fe40223219d 100644
--- a/chromium/content/browser/renderer_host/media/media_stream_manager.cc
+++ b/chromium/content/browser/renderer_host/media/media_stream_manager.cc
@@ -790,10 +790,15 @@ void MediaStreamManager::AudioOutputDevicesEnumerated(
DCHECK_CURRENTLY_ON(BrowserThread::IO);
DVLOG(1) << "AudioOutputDevicesEnumerated()";
StreamDeviceInfoArray device_infos;
- for (const auto& entry : device_enumeration) {
- StreamDeviceInfo device_info(MEDIA_DEVICE_AUDIO_OUTPUT, entry.device_name,
- entry.unique_id);
- device_infos.push_back(device_info);
+
+ // If the enumeration contains only one entry, it means there are no devices.
+ // The single entry contains default parameters from the audio manager.
+ if (device_enumeration.size() > 1) {
+ for (const auto& entry : device_enumeration) {
+ StreamDeviceInfo device_info(MEDIA_DEVICE_AUDIO_OUTPUT, entry.device_name,
+ entry.unique_id);
+ device_infos.push_back(device_info);
+ }
}
const std::string log_message =
diff --git a/chromium/content/browser/renderer_host/render_process_host_impl.cc b/chromium/content/browser/renderer_host/render_process_host_impl.cc
index ff87202bccc..194c8a2788e 100644
--- a/chromium/content/browser/renderer_host/render_process_host_impl.cc
+++ b/chromium/content/browser/renderer_host/render_process_host_impl.cc
@@ -1266,6 +1266,7 @@ void RenderProcessHostImpl::PropagateBrowserCommandLineToRenderer(
switches::kDisableEncryptedMedia,
switches::kDisableFeatures,
switches::kDisableFileSystem,
+ switches::kDisableGestureRequirementForMediaPlayback,
switches::kDisableGpuCompositing,
switches::kDisableGpuMemoryBufferVideoFrames,
switches::kDisableGpuVsync,
@@ -1415,7 +1416,6 @@ void RenderProcessHostImpl::PropagateBrowserCommandLineToRenderer(
switches::kEnableLowEndDeviceMode,
switches::kDisableLowEndDeviceMode,
#if defined(OS_ANDROID)
- switches::kDisableGestureRequirementForMediaPlayback,
switches::kDisableWebAudio,
switches::kRendererWaitForJavaDebugger,
#endif
diff --git a/chromium/content/browser/resource_loading_browsertest.cc b/chromium/content/browser/resource_loading_browsertest.cc
new file mode 100644
index 00000000000..5765fe33132
--- /dev/null
+++ b/chromium/content/browser/resource_loading_browsertest.cc
@@ -0,0 +1,33 @@
+// Copyright 2015 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 <stdlib.h>
+
+#include "content/public/test/browser_test_utils.h"
+#include "content/public/test/content_browser_test.h"
+#include "content/public/test/content_browser_test_utils.h"
+#include "content/public/test/test_navigation_observer.h"
+#include "content/shell/browser/shell.h"
+
+namespace content {
+
+class ResourceLoadingBrowserTest : public ContentBrowserTest {
+};
+
+const char kResourceLoadingNonMobilePage[] =
+ "files/resource_loading/resource_loading_non_mobile.html";
+
+IN_PROC_BROWSER_TEST_F(ResourceLoadingBrowserTest,
+ ResourceLoadingAvoidDoubleDownloads) {
+ ASSERT_TRUE(test_server()->Start());
+ GURL url = test_server()->GetURL(kResourceLoadingNonMobilePage);
+ NavigateToURL(shell(), url);
+ int data = -1;
+ EXPECT_TRUE(ExecuteScriptAndExtractInt(shell()->web_contents(),
+ "getResourceNumber()", &data));
+ EXPECT_EQ(2, data);
+}
+
+} // namespace content
+
diff --git a/chromium/content/browser/service_worker/service_worker_context_wrapper.cc b/chromium/content/browser/service_worker/service_worker_context_wrapper.cc
index 7d1c05e408c..f0deafdd78e 100644
--- a/chromium/content/browser/service_worker/service_worker_context_wrapper.cc
+++ b/chromium/content/browser/service_worker/service_worker_context_wrapper.cc
@@ -549,6 +549,70 @@ void ServiceWorkerContextWrapper::FindRegistrationForId(
origin.GetOrigin(), callback);
}
+void ServiceWorkerContextWrapper::FindReadyRegistrationForId(
+ int64_t registration_id,
+ const GURL& origin,
+ const FindRegistrationCallback& callback) {
+ DCHECK_CURRENTLY_ON(BrowserThread::IO);
+ if (!context_core_) {
+ // FindRegistrationForId() can run the callback synchronously.
+ callback.Run(SERVICE_WORKER_ERROR_ABORT, nullptr);
+ return;
+ }
+ context_core_->storage()->FindRegistrationForId(
+ registration_id, origin.GetOrigin(),
+ base::Bind(&ServiceWorkerContextWrapper::DidFindRegistrationForFindReady,
+ this, callback));
+}
+
+void ServiceWorkerContextWrapper::DidFindRegistrationForFindReady(
+ const FindRegistrationCallback& callback,
+ ServiceWorkerStatusCode status,
+ const scoped_refptr<ServiceWorkerRegistration>& registration) {
+ DCHECK_CURRENTLY_ON(BrowserThread::IO);
+ if (status != SERVICE_WORKER_OK) {
+ callback.Run(status, nullptr);
+ return;
+ }
+
+ // Attempt to activate the waiting version because the registration retrieved
+ // from the disk might have only the waiting version.
+ if (registration->waiting_version())
+ registration->ActivateWaitingVersionWhenReady();
+
+ scoped_refptr<ServiceWorkerVersion> active_version =
+ registration->active_version();
+ if (!active_version) {
+ callback.Run(SERVICE_WORKER_ERROR_NOT_FOUND, nullptr);
+ return;
+ }
+
+ if (active_version->status() == ServiceWorkerVersion::ACTIVATING) {
+ // Wait until the version is activated.
+ active_version->RegisterStatusChangeCallback(base::Bind(
+ &ServiceWorkerContextWrapper::OnStatusChangedForFindReadyRegistration,
+ this, callback, registration));
+ return;
+ }
+
+ DCHECK_EQ(ServiceWorkerVersion::ACTIVATED, active_version->status());
+ callback.Run(SERVICE_WORKER_OK, registration);
+}
+
+void ServiceWorkerContextWrapper::OnStatusChangedForFindReadyRegistration(
+ const FindRegistrationCallback& callback,
+ const scoped_refptr<ServiceWorkerRegistration>& registration) {
+ DCHECK_CURRENTLY_ON(BrowserThread::IO);
+ scoped_refptr<ServiceWorkerVersion> active_version =
+ registration->active_version();
+ if (!active_version ||
+ active_version->status() != ServiceWorkerVersion::ACTIVATED) {
+ callback.Run(SERVICE_WORKER_ERROR_NOT_FOUND, nullptr);
+ return;
+ }
+ callback.Run(SERVICE_WORKER_OK, registration);
+}
+
void ServiceWorkerContextWrapper::GetAllRegistrations(
const GetRegistrationsInfosCallback& callback) {
DCHECK_CURRENTLY_ON(BrowserThread::IO);
diff --git a/chromium/content/browser/service_worker/service_worker_context_wrapper.h b/chromium/content/browser/service_worker/service_worker_context_wrapper.h
index e98e7124a98..73f6506acca 100644
--- a/chromium/content/browser/service_worker/service_worker_context_wrapper.h
+++ b/chromium/content/browser/service_worker/service_worker_context_wrapper.h
@@ -107,11 +107,33 @@ class CONTENT_EXPORT ServiceWorkerContextWrapper
std::vector<ServiceWorkerRegistrationInfo> GetAllLiveRegistrationInfo();
std::vector<ServiceWorkerVersionInfo> GetAllLiveVersionInfo();
+ // Returns the registration whose scope longest matches |document_url|.
+ // Returns ERROR_NOT_FOUND if it is not found.
void FindRegistrationForDocument(const GURL& document_url,
const FindRegistrationCallback& callback);
+
+ // Returns the registration for |registration_id| and |origin|. Returns
+ // ERROR_NOT_FOUND if it is not found.
void FindRegistrationForId(int64_t registration_id,
const GURL& origin,
const FindRegistrationCallback& callback);
+
+ // Returns the registration for |registration_id|. It is guaranteed that the
+ // returned registration has the activated worker.
+ //
+ // - If the registration is not found, returns ERROR_NOT_FOUND.
+ // - If the registration has neither the waiting version nor the active
+ // version, returns ERROR_NOT_FOUND.
+ // - If the registration does not have the active version but has the waiting
+ // version, activates the waiting version and runs |callback| when it is
+ // activated.
+ //
+ // TODO(nhiroki): Consider merging this into FindRegistrationForId because
+ // external modules might not be interested in non-ready registration.
+ void FindReadyRegistrationForId(int64_t registration_id,
+ const GURL& origin,
+ const FindRegistrationCallback& callback);
+
void GetAllRegistrations(const GetRegistrationsInfosCallback& callback);
void GetRegistrationUserData(int64_t registration_id,
const std::string& key,
@@ -159,6 +181,14 @@ class CONTENT_EXPORT ServiceWorkerContextWrapper
storage::SpecialStoragePolicy* special_storage_policy);
void ShutdownOnIO();
+ void DidFindRegistrationForFindReady(
+ const FindRegistrationCallback& callback,
+ ServiceWorkerStatusCode status,
+ const scoped_refptr<ServiceWorkerRegistration>& registration);
+ void OnStatusChangedForFindReadyRegistration(
+ const FindRegistrationCallback& callback,
+ const scoped_refptr<ServiceWorkerRegistration>& registration);
+
void DidDeleteAndStartOver(ServiceWorkerStatusCode status);
void DidGetAllRegistrationsForGetAllOrigins(
diff --git a/chromium/content/browser/service_worker/service_worker_version.cc b/chromium/content/browser/service_worker/service_worker_version.cc
index cef7249574c..bcf2911888e 100644
--- a/chromium/content/browser/service_worker/service_worker_version.cc
+++ b/chromium/content/browser/service_worker/service_worker_version.cc
@@ -1867,7 +1867,19 @@ void ServiceWorkerVersion::OnPongFromWorker() {
void ServiceWorkerVersion::DidEnsureLiveRegistrationForStartWorker(
const StatusCallback& callback,
ServiceWorkerStatusCode status,
- const scoped_refptr<ServiceWorkerRegistration>& protect) {
+ const scoped_refptr<ServiceWorkerRegistration>& registration) {
+ scoped_refptr<ServiceWorkerRegistration> protect = registration;
+ if (status == SERVICE_WORKER_ERROR_NOT_FOUND) {
+ // When the registration has already been deleted from the storage but its
+ // active worker is still controlling clients, the event should be
+ // dispatched on the worker. However, the storage cannot find the
+ // registration. To handle the case, check the live registrations here.
+ protect = context_->GetLiveRegistration(registration_id_);
+ if (protect) {
+ DCHECK(protect->is_deleted());
+ status = SERVICE_WORKER_OK;
+ }
+ }
if (status != SERVICE_WORKER_OK) {
RecordStartWorkerResult(status);
RunSoon(base::Bind(callback, SERVICE_WORKER_ERROR_START_WORKER_FAILED));
diff --git a/chromium/content/browser/service_worker/service_worker_version.h b/chromium/content/browser/service_worker/service_worker_version.h
index 62b1303a0df..545b9c659ea 100644
--- a/chromium/content/browser/service_worker/service_worker_version.h
+++ b/chromium/content/browser/service_worker/service_worker_version.h
@@ -498,7 +498,7 @@ class CONTENT_EXPORT ServiceWorkerVersion
void DidEnsureLiveRegistrationForStartWorker(
const StatusCallback& callback,
ServiceWorkerStatusCode status,
- const scoped_refptr<ServiceWorkerRegistration>& protect);
+ const scoped_refptr<ServiceWorkerRegistration>& registration);
void StartWorkerInternal();
void DidSkipWaiting(int request_id);
diff --git a/chromium/content/browser/service_worker/service_worker_version_unittest.cc b/chromium/content/browser/service_worker/service_worker_version_unittest.cc
index 959f80289f5..43ada89b6bb 100644
--- a/chromium/content/browser/service_worker/service_worker_version_unittest.cc
+++ b/chromium/content/browser/service_worker/service_worker_version_unittest.cc
@@ -377,6 +377,46 @@ TEST_F(ServiceWorkerVersionTest, DispatchEventToStoppedWorker) {
EXPECT_EQ(ServiceWorkerVersion::RUNNING, version_->running_status());
}
+TEST_F(ServiceWorkerVersionTest, StartUnregisteredButStillLiveWorker) {
+ // Start the worker.
+ ServiceWorkerStatusCode status = SERVICE_WORKER_ERROR_FAILED;
+ version_->StartWorker(CreateReceiverOnCurrentThread(&status));
+ base::RunLoop().RunUntilIdle();
+ EXPECT_EQ(ServiceWorkerVersion::RUNNING, version_->running_status());
+ version_->SetStatus(ServiceWorkerVersion::ACTIVATED);
+
+ // Delete the registration.
+ status = SERVICE_WORKER_ERROR_FAILED;
+ helper_->context()->storage()->DeleteRegistration(
+ registration_->id(), registration_->pattern().GetOrigin(),
+ CreateReceiverOnCurrentThread(&status));
+ base::RunLoop().RunUntilIdle();
+ ASSERT_EQ(SERVICE_WORKER_OK, status);
+
+ // The live registration is marked as deleted, but still exists.
+ ASSERT_TRUE(registration_->is_deleted());
+
+ // Stop the worker.
+ ServiceWorkerStatusCode stop_status = SERVICE_WORKER_ERROR_FAILED;
+ version_->StopWorker(CreateReceiverOnCurrentThread(&stop_status));
+ base::RunLoop().RunUntilIdle();
+ EXPECT_EQ(SERVICE_WORKER_OK, stop_status);
+
+ // Dispatch an event on the unregistered and stopped but still live worker.
+ status = SERVICE_WORKER_ERROR_FAILED;
+ version_->DispatchFetchEvent(ServiceWorkerFetchRequest(),
+ base::Bind(&base::DoNothing),
+ base::Bind(&ReceiveFetchResult, &status));
+ base::RunLoop().RunUntilIdle();
+
+ // Dispatch an event should return SERVICE_WORKER_OK since the worker
+ // should have been restarted to dispatch the event.
+ EXPECT_EQ(SERVICE_WORKER_OK, status);
+
+ // The worker should be now started again.
+ EXPECT_EQ(ServiceWorkerVersion::RUNNING, version_->running_status());
+}
+
TEST_F(ServiceWorkerVersionTest, ReceiveMessageFromWorker) {
// Start worker.
ServiceWorkerStatusCode status = SERVICE_WORKER_ERROR_FAILED;
diff --git a/chromium/content/browser/web_contents/web_contents_impl.cc b/chromium/content/browser/web_contents/web_contents_impl.cc
index 7c84d90115c..93ab4387928 100644
--- a/chromium/content/browser/web_contents/web_contents_impl.cc
+++ b/chromium/content/browser/web_contents/web_contents_impl.cc
@@ -2721,6 +2721,12 @@ bool WebContentsImpl::IsSubframe() const {
void WebContentsImpl::Find(int request_id,
const base::string16& search_text,
const blink::WebFindOptions& options) {
+ // Cowardly refuse to search for no text.
+ if (search_text.empty()) {
+ NOTREACHED();
+ return;
+ }
+
// See if a top level browser plugin handles the find request first.
if (browser_plugin_embedder_ &&
browser_plugin_embedder_->Find(request_id, search_text, options)) {
diff --git a/chromium/content/common/cc_messages.h b/chromium/content/common/cc_messages.h
index 55a8c497a4e..d6da60232e6 100644
--- a/chromium/content/common/cc_messages.h
+++ b/chromium/content/common/cc_messages.h
@@ -316,6 +316,7 @@ IPC_STRUCT_TRAITS_BEGIN(cc::CompositorFrameMetadata)
IPC_STRUCT_TRAITS_MEMBER(root_overflow_y_hidden)
IPC_STRUCT_TRAITS_MEMBER(location_bar_offset)
IPC_STRUCT_TRAITS_MEMBER(location_bar_content_translation)
+ IPC_STRUCT_TRAITS_MEMBER(root_background_color)
IPC_STRUCT_TRAITS_MEMBER(selection)
IPC_STRUCT_TRAITS_MEMBER(latency_info)
IPC_STRUCT_TRAITS_MEMBER(satisfies_sequences)
diff --git a/chromium/content/common/content_constants_internal.cc b/chromium/content/common/content_constants_internal.cc
index 85c7de03b6a..e7174effc40 100644
--- a/chromium/content/common/content_constants_internal.cc
+++ b/chromium/content/common/content_constants_internal.cc
@@ -14,7 +14,7 @@ const int64 kHungRendererDelayMs = 5000;
const int64 kHungRendererDelayMs = 30000;
#endif
-const int64 kNewContentRenderingDelayMs = 2000;
+const int64 kNewContentRenderingDelayMs = 4000;
const uint16 kMaxPluginSideLength = 1 << 15;
// 8m pixels.
diff --git a/chromium/content/common/gpu/gpu_command_buffer_stub.cc b/chromium/content/common/gpu/gpu_command_buffer_stub.cc
index eb8e8ff5d91..0cb19475254 100644
--- a/chromium/content/common/gpu/gpu_command_buffer_stub.cc
+++ b/chromium/content/common/gpu/gpu_command_buffer_stub.cc
@@ -243,6 +243,10 @@ GpuCommandBufferStub::GpuCommandBufferStub(
use_virtualized_gl_context_ |=
context_group_->feature_info()->workarounds().use_virtualized_gl_contexts;
+ // MailboxManagerSync synchronization correctness currently depends on having
+ // only a single context. See crbug.com/510243 for details.
+ use_virtualized_gl_context_ |= mailbox_manager->UsesSync();
+
if (offscreen && initial_size_.IsEmpty()) {
// If we're an offscreen surface with zero width and/or height, set to a
// non-zero size so that we have a complete framebuffer for operations like
diff --git a/chromium/content/common/gpu/image_transport_surface_android.cc b/chromium/content/common/gpu/image_transport_surface_android.cc
index 8f374186338..79a16c0bbdf 100644
--- a/chromium/content/common/gpu/image_transport_surface_android.cc
+++ b/chromium/content/common/gpu/image_transport_surface_android.cc
@@ -24,12 +24,14 @@ scoped_refptr<gfx::GLSurface> ImageTransportSurface::CreateNativeSurface(
DCHECK_EQ(handle.transport_type, gfx::NATIVE_DIRECT);
ANativeWindow* window =
GpuSurfaceLookup::GetInstance()->AcquireNativeWidget(handle.handle);
- CHECK(window) << "Failed to retrieve window handle.";
+ if (!window) {
+ LOG(WARNING) << "Failed to acquire native widget.";
+ return scoped_refptr<gfx::GLSurface>();
+ }
scoped_refptr<gfx::GLSurface> surface =
new gfx::NativeViewGLSurfaceEGL(window);
bool initialize_success = surface->Initialize();
- if (window)
- ANativeWindow_release(window);
+ ANativeWindow_release(window);
if (!initialize_success)
return scoped_refptr<gfx::GLSurface>();
diff --git a/chromium/content/common/gpu/media/video_encode_accelerator_unittest.cc b/chromium/content/common/gpu/media/video_encode_accelerator_unittest.cc
index b612bd812a3..e22bd42962b 100644
--- a/chromium/content/common/gpu/media/video_encode_accelerator_unittest.cc
+++ b/chromium/content/common/gpu/media/video_encode_accelerator_unittest.cc
@@ -28,6 +28,7 @@
#include "media/base/bind_to_current_loop.h"
#include "media/base/bitstream_buffer.h"
#include "media/base/decoder_buffer.h"
+#include "media/base/media_util.h"
#include "media/base/test_data_util.h"
#include "media/base/video_decoder.h"
#include "media/base/video_frame.h"
@@ -659,11 +660,11 @@ void VideoFrameQualityValidator::Initialize(const gfx::Size& coded_size,
if (IsVP8(profile_))
config.Initialize(media::kCodecVP8, media::VP8PROFILE_ANY, kInputFormat,
media::COLOR_SPACE_UNSPECIFIED, coded_size, visible_size,
- natural_size, NULL, 0, false);
+ natural_size, media::EmptyExtraData(), false);
else if (IsH264(profile_))
config.Initialize(media::kCodecH264, media::H264PROFILE_MAIN, kInputFormat,
media::COLOR_SPACE_UNSPECIFIED, coded_size, visible_size,
- natural_size, NULL, 0, false);
+ natural_size, media::EmptyExtraData(), false);
else
LOG_ASSERT(0) << "Invalid profile " << profile_;
diff --git a/chromium/content/common/view_messages.h b/chromium/content/common/view_messages.h
index 28a2353227b..4ee1290cc5e 100644
--- a/chromium/content/common/view_messages.h
+++ b/chromium/content/common/view_messages.h
@@ -218,6 +218,7 @@ IPC_STRUCT_TRAITS_BEGIN(content::FileChooserParams)
#if defined(OS_ANDROID)
IPC_STRUCT_TRAITS_MEMBER(capture)
#endif
+ IPC_STRUCT_TRAITS_MEMBER(requestor)
IPC_STRUCT_TRAITS_END()
IPC_STRUCT_TRAITS_BEGIN(content::RendererPreferences)
diff --git a/chromium/content/content_tests.gypi b/chromium/content/content_tests.gypi
index 88142ecd171..5c477fff226 100644
--- a/chromium/content/content_tests.gypi
+++ b/chromium/content/content_tests.gypi
@@ -243,6 +243,7 @@
'browser/renderer_host/render_process_host_browsertest.cc',
'browser/renderer_host/render_view_host_browsertest.cc',
'browser/renderer_host/render_widget_host_view_browsertest.cc',
+ 'browser/resource_loading_browsertest.cc',
'browser/screen_orientation/screen_orientation_browsertest.cc',
'browser/security_exploit_browsertest.cc',
'browser/service_worker/service_worker_browsertest.cc',
@@ -1016,6 +1017,7 @@
'type': '<(gtest_target_type)',
'dependencies': [
'browser/background_sync/background_sync_proto.gyp:background_sync_proto',
+ 'browser/cache_storage/cache_storage_proto.gyp:cache_storage_proto',
'browser/notifications/notification_proto.gyp:notification_proto',
'browser/service_worker/service_worker_proto.gyp:service_worker_proto',
'browser/speech/proto/speech_proto.gyp:speech_proto',
diff --git a/chromium/content/public/browser/web_contents.h b/chromium/content/public/browser/web_contents.h
index 08c5ba9b8f2..b5bafa7c955 100644
--- a/chromium/content/public/browser/web_contents.h
+++ b/chromium/content/public/browser/web_contents.h
@@ -642,7 +642,7 @@ class WebContents : public PageNavigator,
// removed since we can then embed iframes in different processes.
virtual bool IsSubframe() const = 0;
- // Finds text on a page.
+ // Finds text on a page. |search_text| should not be empty.
virtual void Find(int request_id,
const base::string16& search_text,
const blink::WebFindOptions& options) = 0;
diff --git a/chromium/content/public/common/content_switches.cc b/chromium/content/public/common/content_switches.cc
index c9722aa853c..a685f47d693 100644
--- a/chromium/content/public/common/content_switches.cc
+++ b/chromium/content/public/common/content_switches.cc
@@ -116,6 +116,10 @@ const char kDisableFlash3d[] = "disable-flash-3d";
// Disable Stage3D inside of flapper.
const char kDisableFlashStage3d[] = "disable-flash-stage3d";
+// Disable user gesture requirement for media playback.
+const char kDisableGestureRequirementForMediaPlayback[] =
+ "disable-gesture-requirement-for-media-playback";
+
// Disables GPU hardware acceleration. If software renderer is not in place,
// then the GPU process won't launch.
const char kDisableGpu[] = "disable-gpu";
@@ -866,10 +870,6 @@ const char kWebRtcMaxCaptureFramerate[] = "max-gum-fps";
#endif
#if defined(OS_ANDROID)
-// Disable user gesture requirement for media playback.
-const char kDisableGestureRequirementForMediaPlayback[] =
- "disable-gesture-requirement-for-media-playback";
-
// Disable overscroll edge effects like those found in Android views.
const char kDisableOverscrollEdgeEffect[] = "disable-overscroll-edge-effect";
diff --git a/chromium/content/public/common/content_switches.h b/chromium/content/public/common/content_switches.h
index 22f29040b39..2d131868a11 100644
--- a/chromium/content/public/common/content_switches.h
+++ b/chromium/content/public/common/content_switches.h
@@ -47,6 +47,7 @@ CONTENT_EXPORT extern const char kDisableFeatures[];
CONTENT_EXPORT extern const char kDisableFileSystem[];
CONTENT_EXPORT extern const char kDisableFlash3d[];
CONTENT_EXPORT extern const char kDisableFlashStage3d[];
+CONTENT_EXPORT extern const char kDisableGestureRequirementForMediaPlayback[];
CONTENT_EXPORT extern const char kDisableGpu[];
CONTENT_EXPORT extern const char kDisableGpuCompositing[];
CONTENT_EXPORT extern const char kDisableGpuEarlyInit[];
@@ -253,7 +254,6 @@ extern const char kWebRtcMaxCaptureFramerate[];
#endif
#if defined(OS_ANDROID)
-CONTENT_EXPORT extern const char kDisableGestureRequirementForMediaPlayback[];
CONTENT_EXPORT extern const char kDisableOverscrollEdgeEffect[];
CONTENT_EXPORT extern const char kDisablePullToRefreshEffect[];
CONTENT_EXPORT extern const char kDisableScreenOrientationLock[];
diff --git a/chromium/content/public/common/file_chooser_params.h b/chromium/content/public/common/file_chooser_params.h
index ad612ab9ce2..cb9d934b43f 100644
--- a/chromium/content/public/common/file_chooser_params.h
+++ b/chromium/content/public/common/file_chooser_params.h
@@ -10,6 +10,7 @@
#include "base/files/file_path.h"
#include "base/strings/string16.h"
#include "content/common/content_export.h"
+#include "url/gurl.h"
namespace content {
@@ -54,6 +55,11 @@ struct CONTENT_EXPORT FileChooserParams {
// If true, the data should be obtained using the device's camera/mic/etc.
bool capture;
#endif
+
+ // If non-empty, represents the URL of the requestor if the request was
+ // initiated by a document. Note that this value should be considered
+ // untrustworthy since it is specified by the sandbox and not validated.
+ GURL requestor;
};
} // namespace content
diff --git a/chromium/content/renderer/media/android/audio_decoder_android.cc b/chromium/content/renderer/media/android/audio_decoder_android.cc
index 73a92257aaa..6373ccd2ca1 100644
--- a/chromium/content/renderer/media/android/audio_decoder_android.cc
+++ b/chromium/content/renderer/media/android/audio_decoder_android.cc
@@ -481,6 +481,9 @@ static void BufferAndCopyPcmDataToBus(int input_fd,
file_sample_rate);
for (size_t m = 0; m < number_of_samples; m += number_of_channels) {
+ if (decoded_frames >= number_of_frames)
+ break;
+
for (size_t k = 0; k < number_of_channels; ++k) {
int16_t sample = decoded_samples[m + k];
destination_bus->channelData(k)[decoded_frames] =
diff --git a/chromium/content/renderer/media/android/media_source_delegate.cc b/chromium/content/renderer/media/android/media_source_delegate.cc
index 139be4a38b4..4c0477b6be1 100644
--- a/chromium/content/renderer/media/android/media_source_delegate.cc
+++ b/chromium/content/renderer/media/android/media_source_delegate.cc
@@ -736,8 +736,7 @@ bool MediaSourceDelegate::GetDemuxerConfigFromStream(
media::ChannelLayoutToChannelCount(config.channel_layout());
configs->audio_sampling_rate = config.samples_per_second();
configs->is_audio_encrypted = config.is_encrypted();
- configs->audio_extra_data = std::vector<uint8>(
- config.extra_data(), config.extra_data() + config.extra_data_size());
+ configs->audio_extra_data = config.extra_data();
configs->audio_codec_delay_ns = static_cast<int64_t>(
config.codec_delay() *
(static_cast<double>(base::Time::kNanosecondsPerSecond) /
@@ -752,8 +751,7 @@ bool MediaSourceDelegate::GetDemuxerConfigFromStream(
configs->video_codec = config.codec();
configs->video_size = config.natural_size();
configs->is_video_encrypted = config.is_encrypted();
- configs->video_extra_data = std::vector<uint8>(
- config.extra_data(), config.extra_data() + config.extra_data_size());
+ configs->video_extra_data = config.extra_data();
return true;
}
return false;
diff --git a/chromium/content/renderer/npapi/webplugin_impl.cc b/chromium/content/renderer/npapi/webplugin_impl.cc
index 32e35523121..f02d0d76c18 100644
--- a/chromium/content/renderer/npapi/webplugin_impl.cc
+++ b/chromium/content/renderer/npapi/webplugin_impl.cc
@@ -258,8 +258,12 @@ bool WebPluginImpl::initialize(WebPluginContainer* container) {
blink::WebPlugin* replacement_plugin =
GetContentClient()->renderer()->CreatePluginReplacement(
render_frame_, file_path_);
- if (!replacement_plugin)
+ if (!replacement_plugin) {
+ // Maintain invariant that container() returns null when initialize()
+ // returns false.
+ SetContainer(nullptr);
return false;
+ }
// Disable scripting by this plugin before replacing it with the new
// one. This plugin also needs destroying, so use destroy(), which will
diff --git a/chromium/content/renderer/pepper/content_decryptor_delegate.cc b/chromium/content/renderer/pepper/content_decryptor_delegate.cc
index a3596c85795..2efb849e17a 100644
--- a/chromium/content/renderer/pepper/content_decryptor_delegate.cc
+++ b/chromium/content/renderer/pepper/content_decryptor_delegate.cc
@@ -4,6 +4,8 @@
#include "content/renderer/pepper/content_decryptor_delegate.h"
+#include <vector>
+
#include "base/callback_helpers.h"
#include "base/metrics/sparse_histogram.h"
#include "base/numerics/safe_conversions.h"
@@ -53,27 +55,25 @@ namespace {
// reference-count of 0. If |data| is NULL, sets |*resource| to NULL. Returns
// true upon success and false if any error happened.
bool MakeBufferResource(PP_Instance instance,
- const uint8_t* data,
- uint32_t size,
+ const std::vector<uint8_t>& data,
scoped_refptr<PPB_Buffer_Impl>* resource) {
TRACE_EVENT0("media", "ContentDecryptorDelegate - MakeBufferResource");
DCHECK(resource);
- if (!data || !size) {
- DCHECK(!data && !size);
+ if (data.empty()) {
resource = NULL;
return true;
}
scoped_refptr<PPB_Buffer_Impl> buffer(
- PPB_Buffer_Impl::CreateResource(instance, size));
+ PPB_Buffer_Impl::CreateResource(instance, data.size()));
if (!buffer.get())
return false;
BufferAutoMapper mapper(buffer.get());
- if (!mapper.data() || mapper.size() < size)
+ if (!mapper.data() || mapper.size() < data.size())
return false;
- memcpy(mapper.data(), data, size);
+ memcpy(mapper.data(), &data[0], data.size());
*resource = buffer;
return true;
@@ -592,7 +592,6 @@ bool ContentDecryptorDelegate::InitializeAudioDecoder(
scoped_refptr<PPB_Buffer_Impl> extra_data_resource;
if (!MakeBufferResource(pp_instance_,
decoder_config.extra_data(),
- decoder_config.extra_data_size(),
&extra_data_resource)) {
return false;
}
@@ -621,7 +620,6 @@ bool ContentDecryptorDelegate::InitializeVideoDecoder(
scoped_refptr<PPB_Buffer_Impl> extra_data_resource;
if (!MakeBufferResource(pp_instance_,
decoder_config.extra_data(),
- decoder_config.extra_data_size(),
&extra_data_resource)) {
return false;
}
diff --git a/chromium/content/renderer/pepper/pepper_file_chooser_host.cc b/chromium/content/renderer/pepper/pepper_file_chooser_host.cc
index 27179b50151..7c19403b2f8 100644
--- a/chromium/content/renderer/pepper/pepper_file_chooser_host.cc
+++ b/chromium/content/renderer/pepper/pepper_file_chooser_host.cc
@@ -149,6 +149,7 @@ int32_t PepperFileChooserHost::OnShow(
params.acceptTypes = mime_types;
params.directory = false;
params.needLocalPath = true;
+ params.requestor = renderer_ppapi_host_->GetDocumentURL(pp_instance());
handler_ = new CompletionHandler(AsWeakPtr());
RenderViewImpl* render_view = static_cast<RenderViewImpl*>(
diff --git a/chromium/content/renderer/pepper/pepper_webplugin_impl.cc b/chromium/content/renderer/pepper/pepper_webplugin_impl.cc
index b96bd0cbce3..2773194caf8 100644
--- a/chromium/content/renderer/pepper/pepper_webplugin_impl.cc
+++ b/chromium/content/renderer/pepper/pepper_webplugin_impl.cc
@@ -124,14 +124,22 @@ bool PepperWebPluginImpl::initialize(WebPluginContainer* container) {
blink::WebPlugin* replacement_plugin =
GetContentClient()->renderer()->CreatePluginReplacement(
init_data_->render_frame, init_data_->module->path());
- if (!replacement_plugin || !replacement_plugin->initialize(container))
+ if (!replacement_plugin)
return false;
container->setPlugin(replacement_plugin);
+ if (!replacement_plugin->initialize(container)) {
+ CHECK(replacement_plugin->container() == nullptr);
+ return false;
+ }
+
+ CHECK(container->plugin() == replacement_plugin);
+ CHECK(replacement_plugin->container() == container);
return true;
}
init_data_.reset();
+ CHECK(container->plugin() == this);
container_ = container;
return true;
}
diff --git a/chromium/content/renderer/pepper/video_decoder_shim.cc b/chromium/content/renderer/pepper/video_decoder_shim.cc
index d84ac81f5f0..d3c3d1b1dbf 100644
--- a/chromium/content/renderer/pepper/video_decoder_shim.cc
+++ b/chromium/content/renderer/pepper/video_decoder_shim.cc
@@ -23,6 +23,7 @@
#include "gpu/command_buffer/client/gles2_implementation.h"
#include "media/base/decoder_buffer.h"
#include "media/base/limits.h"
+#include "media/base/media_util.h"
#include "media/base/video_decoder.h"
#include "media/blink/skcanvas_video_renderer.h"
#include "media/filters/ffmpeg_video_decoder.h"
@@ -882,8 +883,8 @@ bool VideoDecoderShim::Initialize(
codec, profile, media::PIXEL_FORMAT_YV12, media::COLOR_SPACE_UNSPECIFIED,
gfx::Size(32, 24), // Small sizes that won't fail.
gfx::Rect(32, 24), gfx::Size(32, 24),
- NULL /* extra_data */, // TODO(bbudge) Verify this isn't needed.
- 0 /* extra_data_size */, false /* decryption */);
+ // TODO(bbudge): Verify extra data isn't needed.
+ media::EmptyExtraData(), false /* decryption */);
media_task_runner_->PostTask(
FROM_HERE,
diff --git a/chromium/content/renderer/render_frame_impl.cc b/chromium/content/renderer/render_frame_impl.cc
index 75822901685..9fe59dfdadd 100644
--- a/chromium/content/renderer/render_frame_impl.cc
+++ b/chromium/content/renderer/render_frame_impl.cc
@@ -2184,11 +2184,15 @@ blink::WebServiceWorkerProvider* RenderFrameImpl::createServiceWorkerProvider(
// At this point we should have non-null data source.
DCHECK(frame->dataSource());
if (!ChildThreadImpl::current())
- return NULL; // May be null in some tests.
+ return nullptr; // May be null in some tests.
ServiceWorkerNetworkProvider* provider =
ServiceWorkerNetworkProvider::FromDocumentState(
DocumentState::FromDataSource(frame->dataSource()));
DCHECK(provider);
+ if (!provider->context()) {
+ // The context can be null when the frame is sandboxed.
+ return nullptr;
+ }
return new WebServiceWorkerProviderImpl(
ChildThreadImpl::current()->thread_safe_sender(),
provider->context());
@@ -4714,9 +4718,9 @@ void RenderFrameImpl::NavigateInternal(
base::TimeTicks renderer_navigation_start = base::TimeTicks::Now();
// Perform a navigation to a data url if needed.
- if (!common_params.base_url_for_data_url.is_empty() ||
- (browser_side_navigation &&
- common_params.url.SchemeIs(url::kDataScheme))) {
+ if ((!common_params.base_url_for_data_url.is_empty() ||
+ browser_side_navigation) &&
+ common_params.url.SchemeIs(url::kDataScheme)) {
LoadDataURL(common_params, frame_);
} else {
// Load the request.
diff --git a/chromium/content/renderer/render_view_impl.cc b/chromium/content/renderer/render_view_impl.cc
index d6d5d6e1cf1..9aaca160405 100644
--- a/chromium/content/renderer/render_view_impl.cc
+++ b/chromium/content/renderer/render_view_impl.cc
@@ -364,7 +364,6 @@ static bool DeviceScaleEnsuresTextQuality(float device_scale_factor) {
// devices main thread antialiasing is a heavy burden.
return device_scale_factor >= 1.5f;
#endif
-
}
static bool PreferCompositingToLCDText(CompositorDependencies* compositor_deps,
@@ -671,7 +670,7 @@ void RenderViewImpl::Initialize(const ViewMsg_New_Params& params,
if (opener_view_routing_id != MSG_ROUTING_NONE && was_created_by_renderer)
opener_id_ = opener_view_routing_id;
- display_mode_= params.initial_size.display_mode;
+ display_mode_ = params.initial_size.display_mode;
// Ensure we start with a valid next_page_id_ from the browser.
DCHECK_GE(next_page_id_, 0);
@@ -1053,12 +1052,6 @@ void RenderView::ApplyWebPreferences(const WebPreferences& prefs,
// TODO(bokan): Remove once Blink side is gone.
settings->setInvertViewportScrollOrder(true);
- settings->setViewportEnabled(prefs.viewport_enabled);
- settings->setLoadWithOverviewMode(prefs.initialize_at_minimum_page_scale);
- settings->setViewportMetaEnabled(prefs.viewport_meta_enabled);
- settings->setMainFrameResizesAreOrientationChanges(
- prefs.main_frame_resizes_are_orientation_changes);
-
settings->setSmartInsertDeleteEnabled(prefs.smart_insert_delete_enabled);
settings->setSpatialNavigationEnabled(prefs.spatial_navigation_enabled);
@@ -1119,6 +1112,12 @@ void RenderView::ApplyWebPreferences(const WebPreferences& prefs,
blink::WebString::fromUTF8(prefs.autoplay_experiment_mode));
#endif
+ settings->setViewportEnabled(prefs.viewport_enabled);
+ settings->setLoadWithOverviewMode(prefs.initialize_at_minimum_page_scale);
+ settings->setViewportMetaEnabled(prefs.viewport_meta_enabled);
+ settings->setMainFrameResizesAreOrientationChanges(
+ prefs.main_frame_resizes_are_orientation_changes);
+
WebNetworkStateNotifier::setOnLine(prefs.is_online);
WebNetworkStateNotifier::setWebConnection(
NetConnectionTypeToWebConnectionType(prefs.net_info_connection_type),
@@ -1762,6 +1761,7 @@ bool RenderViewImpl::runFileChooser(
#if defined(OS_ANDROID)
ipc_params.capture = params.useMediaCapture;
#endif
+ ipc_params.requestor = params.requestor;
return ScheduleFileChooser(ipc_params, chooser_completion);
}
@@ -2269,6 +2269,8 @@ blink::WebPlugin* RenderViewImpl::GetWebPluginForFind() {
void RenderViewImpl::OnFind(int request_id,
const base::string16& search_text,
const WebFindOptions& options) {
+ DCHECK(!search_text.empty());
+
WebFrame* main_frame = webview()->mainFrame();
blink::WebPlugin* plugin = GetWebPluginForFind();
// Check if the plugin still exists in the document.
@@ -3036,7 +3038,7 @@ void RenderViewImpl::OnWasHidden() {
(*plugin_it)->SetContainerVisibility(false);
}
#endif // OS_MACOSX
-#endif // ENABLE_PLUGINS
+#endif // ENABLE_PLUGINS
}
void RenderViewImpl::OnWasShown(bool needs_repainting,
diff --git a/chromium/extensions/extensions_tests.gyp b/chromium/extensions/extensions_tests.gyp
index 31e6caaec8d..ee619eb0748 100644
--- a/chromium/extensions/extensions_tests.gyp
+++ b/chromium/extensions/extensions_tests.gyp
@@ -63,6 +63,9 @@
'dependencies': [
'<(DEPTH)/chromeos/chromeos.gyp:chromeos_test_support',
],
+ 'sources': [
+ 'browser/api/webcam_private/visca_webcam_unittest.cc',
+ ],
}],
],
},
diff --git a/chromium/gpu/config/gpu_driver_bug_list_json.cc b/chromium/gpu/config/gpu_driver_bug_list_json.cc
index 92304178439..36a42127512 100644
--- a/chromium/gpu/config/gpu_driver_bug_list_json.cc
+++ b/chromium/gpu/config/gpu_driver_bug_list_json.cc
@@ -19,7 +19,7 @@ const char kGpuDriverBugListJson[] = LONG_STRING_CONST(
{
"name": "gpu driver bug list",
// Please update the version number whenever you change this file.
- "version": "8.27",
+ "version": "8.28",
"entries": [
{
"id": 1,
@@ -1565,6 +1565,20 @@ LONG_STRING_CONST(
"features": [
"max_copy_texture_chromium_size_1048576"
]
+ },
+ {
+ "id": 134,
+ "description": "Screen flickers on 2009 iMacs",
+ "cr_bugs": [543324],
+ "os": {
+ "type": "macosx"
+ },
+ "vendor_id": "0x1002",
+ "device_id": ["0x9440", "0x944a"],
+ "features": [
+ "disable_overlay_ca_layers",
+ "disable_post_sub_buffers_for_onscreen_surfaces"
+ ]
}
]
}
diff --git a/chromium/gpu/config/gpu_driver_bug_workaround_type.h b/chromium/gpu/config/gpu_driver_bug_workaround_type.h
index 9bbbb73dacb..513ee18e1ef 100644
--- a/chromium/gpu/config/gpu_driver_bug_workaround_type.h
+++ b/chromium/gpu/config/gpu_driver_bug_workaround_type.h
@@ -44,6 +44,8 @@
disable_multimonitor_multisampling) \
GPU_OP(DISABLE_MULTISAMPLED_RENDER_TO_TEXTURE, \
disable_multisampled_render_to_texture) \
+ GPU_OP(DISABLE_OVERLAY_CA_LAYERS, \
+ disable_overlay_ca_layers) \
GPU_OP(DISABLE_POST_SUB_BUFFERS_FOR_ONSCREEN_SURFACES, \
disable_post_sub_buffers_for_onscreen_surfaces) \
GPU_OP(DISABLE_PROGRAM_CACHE, \
diff --git a/chromium/gpu/config/software_rendering_list_json.cc b/chromium/gpu/config/software_rendering_list_json.cc
index cf157c51c3f..2baf780be70 100644
--- a/chromium/gpu/config/software_rendering_list_json.cc
+++ b/chromium/gpu/config/software_rendering_list_json.cc
@@ -18,7 +18,7 @@ const char kSoftwareRenderingListJson[] = LONG_STRING_CONST(
{
"name": "software rendering list",
// Please update the version number whenever you change this file.
- "version": "10.11",
+ "version": "10.12",
"entries": [
{
"id": 1,
@@ -1147,6 +1147,25 @@ LONG_STRING_CONST(
"accelerated_2d_canvas",
"gpu_rasterization"
]
+ },
+ {
+ "id": 107,
+ "description": "Haswell GT1 Intel drivers are buggy on kernels < 3.19.1",
+ "cr_bugs": [463243],
+ "os": {
+ "type": "linux",
+ "version": {
+ "op": "<",
+ "value": "3.19.1"
+ }
+ },
+ "vendor_id": "0x8086",
+ "device_id": ["0x0402", "0x0406", "0x040a", "0x040b", "0x040e",
+ "0x0a02", "0x0a06", "0x0a0a", "0x0a0b", "0x0a0e",
+ "0x0d02", "0x0d06", "0x0d0a", "0x0d0b", "0x0d0e"],
+ "features": [
+ "all"
+ ]
}
]
}
diff --git a/chromium/ios/web/ios_web.gyp b/chromium/ios/web/ios_web.gyp
index a1ab0fff1db..73542c01920 100644
--- a/chromium/ios/web/ios_web.gyp
+++ b/chromium/ios/web/ios_web.gyp
@@ -105,6 +105,8 @@
'navigation/time_smoother.h',
'navigation/web_load_params.h',
'navigation/web_load_params.mm',
+ 'net/cert_host_pair.h',
+ 'net/cert_host_pair.cc',
'net/cert_policy.cc',
'net/cert_store_impl.cc',
'net/cert_store_impl.h',
@@ -128,8 +130,6 @@
'net/clients/crw_redirect_network_client_factory.mm',
'net/cookie_notification_bridge.h',
'net/cookie_notification_bridge.mm',
- 'net/crw_cert_policy_cache.h',
- 'net/crw_cert_policy_cache.mm',
'net/crw_cert_verification_controller.h',
'net/crw_cert_verification_controller.mm',
'net/crw_request_tracker_delegate.h',
@@ -269,6 +269,8 @@
'web_state/ui/crw_web_controller_container_view.h',
'web_state/ui/crw_web_controller_container_view.mm',
'web_state/ui/crw_web_view_content_view.mm',
+ 'web_state/ui/crw_wk_script_message_router.h',
+ 'web_state/ui/crw_wk_script_message_router.mm',
'web_state/ui/crw_wk_simple_web_view_controller.h',
'web_state/ui/crw_wk_simple_web_view_controller.mm',
'web_state/ui/crw_wk_web_view_crash_detector.h',
diff --git a/chromium/ios/web/ios_web_unittests.gyp b/chromium/ios/web/ios_web_unittests.gyp
index f6df39f9cf1..5281340eb35 100644
--- a/chromium/ios/web/ios_web_unittests.gyp
+++ b/chromium/ios/web/ios_web_unittests.gyp
@@ -34,12 +34,12 @@
'navigation/navigation_item_impl_unittest.mm',
'navigation/navigation_manager_impl_unittest.mm',
'navigation/nscoder_util_unittest.mm',
+ 'net/cert_host_pair_unittest.cc',
'net/cert_policy_unittest.cc',
'net/cert_verifier_block_adapter_unittest.cc',
'net/clients/crw_csp_network_client_unittest.mm',
'net/clients/crw_js_injection_network_client_unittest.mm',
'net/clients/crw_passkit_network_client_unittest.mm',
- 'net/crw_cert_policy_cache_unittest.mm',
'net/crw_cert_verification_controller_unittest.mm',
'net/crw_url_verifying_protocol_handler_unittest.mm',
'net/request_group_util_unittest.mm',
@@ -68,6 +68,7 @@
'web_state/ui/crw_web_controller_container_view_unittest.mm',
'web_state/ui/crw_web_controller_observer_unittest.mm',
'web_state/ui/crw_web_controller_unittest.mm',
+ 'web_state/ui/crw_wk_script_message_router_unittest.mm',
'web_state/ui/crw_wk_simple_web_view_controller_unittest.mm',
'web_state/ui/crw_wk_web_view_crash_detector_unittest.mm',
'web_state/ui/web_view_js_utils_unittest.mm',
diff --git a/chromium/media/audio/audio_output_controller.cc b/chromium/media/audio/audio_output_controller.cc
index 59f541e7ac3..8aa2b4f38ac 100644
--- a/chromium/media/audio/audio_output_controller.cc
+++ b/chromium/media/audio/audio_output_controller.cc
@@ -35,7 +35,8 @@ AudioOutputController::AudioOutputController(
power_monitor_(
params.sample_rate(),
TimeDelta::FromMilliseconds(kPowerMeasurementTimeConstantMillis)),
- on_more_io_data_called_(0) {
+ on_more_io_data_called_(0),
+ ignore_errors_during_stop_close_(false) {
DCHECK(audio_manager);
DCHECK(handler_);
DCHECK(sync_reader_);
@@ -302,6 +303,12 @@ int AudioOutputController::OnMoreData(AudioBus* dest,
}
void AudioOutputController::OnError(AudioOutputStream* stream) {
+ {
+ base::AutoLock auto_lock(error_lock_);
+ if (ignore_errors_during_stop_close_)
+ return;
+ }
+
// Handle error on the audio controller thread.
message_loop_->PostTask(FROM_HERE, base::Bind(
&AudioOutputController::DoReportError, this));
@@ -312,6 +319,11 @@ void AudioOutputController::DoStopCloseAndClearStream() {
// Allow calling unconditionally and bail if we don't have a stream_ to close.
if (stream_) {
+ {
+ base::AutoLock auto_lock(error_lock_);
+ ignore_errors_during_stop_close_ = true;
+ }
+
// De-register from state change callbacks if stream_ was created via
// AudioManager.
if (stream_ != diverting_to_stream_)
@@ -322,6 +334,9 @@ void AudioOutputController::DoStopCloseAndClearStream() {
if (stream_ == diverting_to_stream_)
diverting_to_stream_ = NULL;
stream_ = NULL;
+
+ // Since the stream is no longer running, no lock is necessary.
+ ignore_errors_during_stop_close_ = false;
}
state_ = kEmpty;
diff --git a/chromium/media/audio/audio_output_controller.h b/chromium/media/audio/audio_output_controller.h
index f1711d5a607..7820665440b 100644
--- a/chromium/media/audio/audio_output_controller.h
+++ b/chromium/media/audio/audio_output_controller.h
@@ -232,9 +232,7 @@ class MEDIA_EXPORT AudioOutputController
// The current volume of the audio stream.
double volume_;
- // |state_| is written on the audio manager thread and is read on the
- // hardware audio thread. These operations need to be locked. But lock
- // is not required for reading on the audio manager thread.
+ // |state_| may only be used on the audio manager thread.
State state_;
// SyncReader is used only in low latency mode for synchronous reading.
@@ -250,6 +248,16 @@ class MEDIA_EXPORT AudioOutputController
base::AtomicRefCount on_more_io_data_called_;
scoped_ptr<base::OneShotTimer> wedge_timer_;
+ // Flag which indicates errors received during Stop/Close should be ignored.
+ // These errors are generally harmless since a fresh stream is about to be
+ // recreated, but if forwarded, renderer side clients may consider them
+ // catastrophic and abort their operations.
+ //
+ // If |stream_| is started then |ignore_errors_during_stop_close_| must only
+ // be accessed while |error_lock_| is held.
+ bool ignore_errors_during_stop_close_;
+ base::Lock error_lock_;
+
DISALLOW_COPY_AND_ASSIGN(AudioOutputController);
};
diff --git a/chromium/media/audio/audio_output_dispatcher_impl.h b/chromium/media/audio/audio_output_dispatcher_impl.h
index ab290c5d2d1..a2782f0cf39 100644
--- a/chromium/media/audio/audio_output_dispatcher_impl.h
+++ b/chromium/media/audio/audio_output_dispatcher_impl.h
@@ -63,6 +63,9 @@ class MEDIA_EXPORT AudioOutputDispatcherImpl : public AudioOutputDispatcher {
// Returns true if there are any open AudioOutputProxy objects.
bool HasOutputProxies() const;
+ // Closes all |idle_streams_|.
+ void CloseAllIdleStreams();
+
private:
friend class base::RefCountedThreadSafe<AudioOutputDispatcherImpl>;
~AudioOutputDispatcherImpl() override;
@@ -72,8 +75,6 @@ class MEDIA_EXPORT AudioOutputDispatcherImpl : public AudioOutputDispatcher {
// opened.
bool CreateAndOpenStream();
- // Closes all |idle_streams_|.
- void CloseAllIdleStreams();
// Similar to CloseAllIdleStreams(), but keeps |keep_alive| streams alive.
void CloseIdleStreams(size_t keep_alive);
diff --git a/chromium/media/audio/audio_output_resampler.cc b/chromium/media/audio/audio_output_resampler.cc
index d85768b7b6a..29f6d264443 100644
--- a/chromium/media/audio/audio_output_resampler.cc
+++ b/chromium/media/audio/audio_output_resampler.cc
@@ -38,7 +38,9 @@ class OnMoreDataConverter
// Clears |source_callback_| and flushes the resampler.
void Stop();
- bool started() { return source_callback_ != nullptr; }
+ bool started() const { return source_callback_ != nullptr; }
+
+ bool error_occurred() const { return error_occurred_; }
private:
// AudioConverter::InputCallback implementation.
@@ -62,6 +64,10 @@ class OnMoreDataConverter
// parameters.
AudioConverter audio_converter_;
+ // True if OnError() was ever called. Should only be read if the underlying
+ // stream has been stopped.
+ bool error_occurred_;
+
DISALLOW_COPY_AND_ASSIGN(OnMoreDataConverter);
};
@@ -288,8 +294,15 @@ void AudioOutputResampler::StopStream(AudioOutputProxy* stream_proxy) {
// be stopped and no longer calling OnMoreData(), making it safe to Stop() the
// OnMoreDataConverter.
CallbackMap::iterator it = callbacks_.find(stream_proxy);
- if (it != callbacks_.end())
+ if (it != callbacks_.end()) {
it->second->Stop();
+
+ // Destroy idle streams if any errors occurred during output; this ensures
+ // bad streams will not be reused. Note: Errors may occur during the Stop()
+ // call above.
+ if (it->second->error_occurred())
+ dispatcher_->CloseAllIdleStreams();
+ }
}
void AudioOutputResampler::CloseStream(AudioOutputProxy* stream_proxy) {
@@ -330,7 +343,8 @@ OnMoreDataConverter::OnMoreDataConverter(const AudioParameters& input_params,
output_params.GetBytesPerSecond()),
source_callback_(nullptr),
input_bytes_per_second_(input_params.GetBytesPerSecond()),
- audio_converter_(input_params, output_params, false) {}
+ audio_converter_(input_params, output_params, false),
+ error_occurred_(false) {}
OnMoreDataConverter::~OnMoreDataConverter() {
// Ensure Stop() has been called so we don't end up with an AudioOutputStream
@@ -385,6 +399,7 @@ double OnMoreDataConverter::ProvideInput(AudioBus* dest,
}
void OnMoreDataConverter::OnError(AudioOutputStream* stream) {
+ error_occurred_ = true;
source_callback_->OnError(stream);
}
diff --git a/chromium/media/base/BUILD.gn b/chromium/media/base/BUILD.gn
index 3565553d752..16d39446c5f 100644
--- a/chromium/media/base/BUILD.gn
+++ b/chromium/media/base/BUILD.gn
@@ -122,6 +122,8 @@ source_set("base") {
"media_resources.h",
"media_switches.cc",
"media_switches.h",
+ "media_util.cc",
+ "media_util.h",
"mime_util.cc",
"mime_util.h",
"moving_average.cc",
diff --git a/chromium/media/base/android/media_task_runner.cc b/chromium/media/base/android/media_task_runner.cc
index a52919cde30..ecc964558b5 100644
--- a/chromium/media/base/android/media_task_runner.cc
+++ b/chromium/media/base/android/media_task_runner.cc
@@ -32,11 +32,20 @@ bool UseMediaThreadForMediaPlayback() {
const std::string group_name =
base::FieldTrialList::FindFullName("EnableMediaThreadForMediaPlayback");
- if (base::CommandLine::ForCurrentProcess()->
- HasSwitch(switches::kEnableMediaThreadForMediaPlayback)) {
+ // Command line switches take precedence over field trial groups.
+ // The disable switch takes precedence over enable switch.
+ if (base::CommandLine::ForCurrentProcess()->HasSwitch(
+ switches::kDisableMediaThreadForMediaPlayback)) {
+ return false;
+ }
+
+ if (base::CommandLine::ForCurrentProcess()->HasSwitch(
+ switches::kEnableMediaThreadForMediaPlayback)) {
return true;
}
+ DVLOG(1) << __FUNCTION__ << ": group_name:'" << group_name << "'";
+
return base::StartsWith(group_name, "Enabled", base::CompareCase::SENSITIVE);
}
diff --git a/chromium/media/base/audio_decoder_config.cc b/chromium/media/base/audio_decoder_config.cc
index 6dc5b2f6532..213cb10edc4 100644
--- a/chromium/media/base/audio_decoder_config.cc
+++ b/chromium/media/base/audio_decoder_config.cc
@@ -24,30 +24,26 @@ AudioDecoderConfig::AudioDecoderConfig(AudioCodec codec,
SampleFormat sample_format,
ChannelLayout channel_layout,
int samples_per_second,
- const uint8* extra_data,
- size_t extra_data_size,
+ const std::vector<uint8_t>& extra_data,
bool is_encrypted) {
Initialize(codec, sample_format, channel_layout, samples_per_second,
- extra_data, extra_data_size, is_encrypted, base::TimeDelta(), 0);
+ extra_data, is_encrypted, base::TimeDelta(), 0);
}
void AudioDecoderConfig::Initialize(AudioCodec codec,
SampleFormat sample_format,
ChannelLayout channel_layout,
int samples_per_second,
- const uint8* extra_data,
- size_t extra_data_size,
+ const std::vector<uint8_t>& extra_data,
bool is_encrypted,
base::TimeDelta seek_preroll,
int codec_delay) {
- CHECK((extra_data_size != 0) == (extra_data != NULL));
-
codec_ = codec;
channel_layout_ = channel_layout;
samples_per_second_ = samples_per_second;
sample_format_ = sample_format;
bytes_per_channel_ = SampleFormatToBytesPerChannel(sample_format);
- extra_data_.assign(extra_data, extra_data + extra_data_size);
+ extra_data_ = extra_data;
is_encrypted_ = is_encrypted;
seek_preroll_ = seek_preroll;
codec_delay_ = codec_delay;
@@ -75,9 +71,7 @@ bool AudioDecoderConfig::Matches(const AudioDecoderConfig& config) const {
(bytes_per_channel() == config.bytes_per_channel()) &&
(channel_layout() == config.channel_layout()) &&
(samples_per_second() == config.samples_per_second()) &&
- (extra_data_size() == config.extra_data_size()) &&
- (!extra_data() || !memcmp(extra_data(), config.extra_data(),
- extra_data_size())) &&
+ (extra_data() == config.extra_data()) &&
(is_encrypted() == config.is_encrypted()) &&
(sample_format() == config.sample_format()) &&
(seek_preroll() == config.seek_preroll()) &&
@@ -94,7 +88,7 @@ std::string AudioDecoderConfig::AsHumanReadableString() const {
<< " bytes_per_frame: " << bytes_per_frame()
<< " seek_preroll: " << seek_preroll().InMilliseconds() << "ms"
<< " codec_delay: " << codec_delay()
- << " has extra data? " << (extra_data() ? "true" : "false")
+ << " has extra data? " << (extra_data().empty() ? "false" : "true")
<< " encrypted? " << (is_encrypted() ? "true" : "false");
return s.str();
}
diff --git a/chromium/media/base/audio_decoder_config.h b/chromium/media/base/audio_decoder_config.h
index c9c85938f5a..ae72383a0a9 100644
--- a/chromium/media/base/audio_decoder_config.h
+++ b/chromium/media/base/audio_decoder_config.h
@@ -55,22 +55,22 @@ class MEDIA_EXPORT AudioDecoderConfig {
// appropriate values before using.
AudioDecoderConfig();
- // Constructs an initialized object. It is acceptable to pass in NULL for
- // |extra_data|, otherwise the memory is copied.
- AudioDecoderConfig(AudioCodec codec, SampleFormat sample_format,
- ChannelLayout channel_layout, int samples_per_second,
- const uint8* extra_data, size_t extra_data_size,
+ // Constructs an initialized object.
+ AudioDecoderConfig(AudioCodec codec,
+ SampleFormat sample_format,
+ ChannelLayout channel_layout,
+ int samples_per_second,
+ const std::vector<uint8_t>& extra_data,
bool is_encrypted);
~AudioDecoderConfig();
- // Resets the internal state of this object. |codec_delay| is in frames.
+ // Resets the internal state of this object. |codec_delay| is in frames.
void Initialize(AudioCodec codec,
SampleFormat sample_format,
ChannelLayout channel_layout,
int samples_per_second,
- const uint8* extra_data,
- size_t extra_data_size,
+ const std::vector<uint8>& extra_data,
bool is_encrypted,
base::TimeDelta seek_preroll,
int codec_delay);
@@ -101,10 +101,7 @@ class MEDIA_EXPORT AudioDecoderConfig {
// Optional byte data required to initialize audio decoders such as Vorbis
// codebooks.
- const uint8* extra_data() const {
- return extra_data_.empty() ? NULL : &extra_data_[0];
- }
- size_t extra_data_size() const { return extra_data_.size(); }
+ const std::vector<uint8_t>& extra_data() const { return extra_data_; }
// Whether the audio stream is potentially encrypted.
// Note that in a potentially encrypted audio stream, individual buffers
@@ -118,7 +115,7 @@ class MEDIA_EXPORT AudioDecoderConfig {
ChannelLayout channel_layout_;
int samples_per_second_;
int bytes_per_frame_;
- std::vector<uint8> extra_data_;
+ std::vector<uint8_t> extra_data_;
bool is_encrypted_;
// |seek_preroll_| is the duration of the data that the decoder must decode
diff --git a/chromium/media/base/fake_demuxer_stream.cc b/chromium/media/base/fake_demuxer_stream.cc
index 30ff406f3fc..fab0396cf58 100644
--- a/chromium/media/base/fake_demuxer_stream.cc
+++ b/chromium/media/base/fake_demuxer_stream.cc
@@ -4,6 +4,8 @@
#include "media/base/fake_demuxer_stream.h"
+#include <vector>
+
#include "base/bind.h"
#include "base/callback_helpers.h"
#include "base/location.h"
@@ -12,6 +14,7 @@
#include "base/thread_task_runner_handle.h"
#include "media/base/bind_to_current_loop.h"
#include "media/base/decoder_buffer.h"
+#include "media/base/media_util.h"
#include "media/base/test_helpers.h"
#include "media/base/timestamp_constants.h"
#include "media/base/video_frame.h"
@@ -146,7 +149,8 @@ void FakeDemuxerStream::UpdateVideoDecoderConfig() {
video_decoder_config_.Initialize(kCodecVP8, VIDEO_CODEC_PROFILE_UNKNOWN,
PIXEL_FORMAT_YV12, COLOR_SPACE_UNSPECIFIED,
next_coded_size_, kVisibleRect,
- next_coded_size_, NULL, 0, is_encrypted_);
+ next_coded_size_, EmptyExtraData(),
+ is_encrypted_);
next_coded_size_.Enlarge(kWidthDelta, kHeightDelta);
}
diff --git a/chromium/media/base/media_switches.cc b/chromium/media/base/media_switches.cc
index 0da3eeae0f6..56a24b52a3a 100644
--- a/chromium/media/base/media_switches.cc
+++ b/chromium/media/base/media_switches.cc
@@ -13,6 +13,10 @@ const char kAudioBufferSize[] = "audio-buffer-size";
const char kVideoThreads[] = "video-threads";
#if defined(OS_ANDROID)
+// Sets the MediaSource player that uses UI thread for frame processing.
+const char kDisableMediaThreadForMediaPlayback[] =
+ "disable-media-thread-for-media-playback";
+
// Sets the MediaSource player that uses the separate media thread
const char kEnableMediaThreadForMediaPlayback[] =
"enable-media-thread-for-media-playback";
diff --git a/chromium/media/base/media_switches.h b/chromium/media/base/media_switches.h
index 3787137f672..740b708422f 100644
--- a/chromium/media/base/media_switches.h
+++ b/chromium/media/base/media_switches.h
@@ -17,6 +17,7 @@ MEDIA_EXPORT extern const char kAudioBufferSize[];
MEDIA_EXPORT extern const char kVideoThreads[];
#if defined(OS_ANDROID)
+MEDIA_EXPORT extern const char kDisableMediaThreadForMediaPlayback[];
MEDIA_EXPORT extern const char kEnableMediaThreadForMediaPlayback[];
#endif
diff --git a/chromium/media/base/media_util.cc b/chromium/media/base/media_util.cc
new file mode 100644
index 00000000000..bd7929f5609
--- /dev/null
+++ b/chromium/media/base/media_util.cc
@@ -0,0 +1,13 @@
+// Copyright 2015 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 "media/base/media_util.h"
+
+namespace media {
+
+std::vector<uint8_t> EmptyExtraData() {
+ return std::vector<uint8_t>();
+}
+
+} // namespace media
diff --git a/chromium/media/base/media_util.h b/chromium/media/base/media_util.h
new file mode 100644
index 00000000000..4e53c9a0c0e
--- /dev/null
+++ b/chromium/media/base/media_util.h
@@ -0,0 +1,21 @@
+// Copyright 2015 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 MEDIA_BASE_UTIL_H_
+#define MEDIA_BASE_UTIL_H_
+
+#include <stdint.h>
+#include <vector>
+
+#include "media/base/media_export.h"
+
+namespace media {
+
+// Simply returns an empty vector. {Audio|Video}DecoderConfig are often
+// constructed with empty extra data.
+MEDIA_EXPORT std::vector<uint8_t> EmptyExtraData();
+
+} // namespace media
+
+#endif // MEDIA_BASE_UTIL_H_
diff --git a/chromium/media/base/test_helpers.cc b/chromium/media/base/test_helpers.cc
index 5da16adb1a7..84074bfe80e 100644
--- a/chromium/media/base/test_helpers.cc
+++ b/chromium/media/base/test_helpers.cc
@@ -15,6 +15,7 @@
#include "media/base/audio_buffer.h"
#include "media/base/bind_to_current_loop.h"
#include "media/base/decoder_buffer.h"
+#include "media/base/media_util.h"
#include "ui/gfx/geometry/rect.h"
using ::testing::_;
@@ -127,8 +128,8 @@ static VideoDecoderConfig GetTestConfig(VideoCodec codec,
return VideoDecoderConfig(codec, VIDEO_CODEC_PROFILE_UNKNOWN,
PIXEL_FORMAT_YV12, COLOR_SPACE_UNSPECIFIED,
- coded_size, visible_rect, natural_size, NULL, 0,
- is_encrypted);
+ coded_size, visible_rect, natural_size,
+ EmptyExtraData(), is_encrypted);
}
static const gfx::Size kNormalSize(320, 240);
diff --git a/chromium/media/base/video_decoder_config.cc b/chromium/media/base/video_decoder_config.cc
index f867ad19d62..84058e496db 100644
--- a/chromium/media/base/video_decoder_config.cc
+++ b/chromium/media/base/video_decoder_config.cc
@@ -4,6 +4,8 @@
#include "media/base/video_decoder_config.h"
+#include <vector>
+
#include "base/logging.h"
#include "media/base/video_frame.h"
@@ -34,13 +36,11 @@ VideoCodec VideoCodecProfileToVideoCodec(VideoCodecProfile profile) {
return kUnknownVideoCodec;
}
-
VideoDecoderConfig::VideoDecoderConfig()
: codec_(kUnknownVideoCodec),
profile_(VIDEO_CODEC_PROFILE_UNKNOWN),
format_(PIXEL_FORMAT_UNKNOWN),
- is_encrypted_(false) {
-}
+ is_encrypted_(false) {}
VideoDecoderConfig::VideoDecoderConfig(VideoCodec codec,
VideoCodecProfile profile,
@@ -49,11 +49,10 @@ VideoDecoderConfig::VideoDecoderConfig(VideoCodec codec,
const gfx::Size& coded_size,
const gfx::Rect& visible_rect,
const gfx::Size& natural_size,
- const uint8* extra_data,
- size_t extra_data_size,
+ const std::vector<uint8_t>& extra_data,
bool is_encrypted) {
Initialize(codec, profile, format, color_space, coded_size, visible_rect,
- natural_size, extra_data, extra_data_size, is_encrypted);
+ natural_size, extra_data, is_encrypted);
}
VideoDecoderConfig::~VideoDecoderConfig() {}
@@ -65,11 +64,8 @@ void VideoDecoderConfig::Initialize(VideoCodec codec,
const gfx::Size& coded_size,
const gfx::Rect& visible_rect,
const gfx::Size& natural_size,
- const uint8* extra_data,
- size_t extra_data_size,
+ const std::vector<uint8_t>& extra_data,
bool is_encrypted) {
- CHECK((extra_data_size != 0) == (extra_data != NULL));
-
codec_ = codec;
profile_ = profile;
format_ = format;
@@ -77,7 +73,7 @@ void VideoDecoderConfig::Initialize(VideoCodec codec,
coded_size_ = coded_size;
visible_rect_ = visible_rect;
natural_size_ = natural_size;
- extra_data_.assign(extra_data, extra_data + extra_data_size);
+ extra_data_ = extra_data;
is_encrypted_ = is_encrypted;
}
@@ -96,9 +92,7 @@ bool VideoDecoderConfig::Matches(const VideoDecoderConfig& config) const {
(coded_size() == config.coded_size()) &&
(visible_rect() == config.visible_rect()) &&
(natural_size() == config.natural_size()) &&
- (extra_data_size() == config.extra_data_size()) &&
- (!extra_data() || !memcmp(extra_data(), config.extra_data(),
- extra_data_size())) &&
+ (extra_data() == config.extra_data()) &&
(is_encrypted() == config.is_encrypted()));
}
@@ -115,7 +109,7 @@ std::string VideoDecoderConfig::AsHumanReadableString() const {
<< "," << visible_rect().height() << "]"
<< " natural size: [" << natural_size().width()
<< "," << natural_size().height() << "]"
- << " has extra data? " << (extra_data() ? "true" : "false")
+ << " has extra data? " << (extra_data().empty() ? "false" : "true")
<< " encrypted? " << (is_encrypted() ? "true" : "false");
return s.str();
}
@@ -146,10 +140,4 @@ std::string VideoDecoderConfig::GetHumanReadableCodecName() const {
return "";
}
-const uint8* VideoDecoderConfig::extra_data() const {
- if (extra_data_.empty())
- return NULL;
- return &extra_data_[0];
-}
-
} // namespace media
diff --git a/chromium/media/base/video_decoder_config.h b/chromium/media/base/video_decoder_config.h
index 0dae77c86a8..3de0d2f9314 100644
--- a/chromium/media/base/video_decoder_config.h
+++ b/chromium/media/base/video_decoder_config.h
@@ -35,8 +35,7 @@ class MEDIA_EXPORT VideoDecoderConfig {
const gfx::Size& coded_size,
const gfx::Rect& visible_rect,
const gfx::Size& natural_size,
- const uint8* extra_data,
- size_t extra_data_size,
+ const std::vector<uint8_t>& extra_data,
bool is_encrypted);
~VideoDecoderConfig();
@@ -49,8 +48,7 @@ class MEDIA_EXPORT VideoDecoderConfig {
const gfx::Size& coded_size,
const gfx::Rect& visible_rect,
const gfx::Size& natural_size,
- const uint8* extra_data,
- size_t extra_data_size,
+ const std::vector<uint8_t>& extra_data,
bool is_encrypted);
// Returns true if this object has appropriate configuration values, false
@@ -91,8 +89,7 @@ class MEDIA_EXPORT VideoDecoderConfig {
// Optional byte data required to initialize video decoders, such as H.264
// AAVC data.
- const uint8* extra_data() const;
- size_t extra_data_size() const { return extra_data_.size(); }
+ const std::vector<uint8_t>& extra_data() const { return extra_data_; }
// Whether the video stream is potentially encrypted.
// Note that in a potentially encrypted video stream, individual buffers
@@ -110,7 +107,7 @@ class MEDIA_EXPORT VideoDecoderConfig {
gfx::Rect visible_rect_;
gfx::Size natural_size_;
- std::vector<uint8> extra_data_;
+ std::vector<uint8_t> extra_data_;
bool is_encrypted_;
diff --git a/chromium/media/cast/sender/h264_vt_encoder_unittest.cc b/chromium/media/cast/sender/h264_vt_encoder_unittest.cc
index 7ef7eefdac4..e44d9f87ab5 100644
--- a/chromium/media/cast/sender/h264_vt_encoder_unittest.cc
+++ b/chromium/media/cast/sender/h264_vt_encoder_unittest.cc
@@ -15,6 +15,7 @@
#include "media/base/decoder_buffer.h"
#include "media/base/media.h"
#include "media/base/media_switches.h"
+#include "media/base/media_util.h"
#include "media/cast/sender/h264_vt_encoder.h"
#include "media/cast/sender/video_frame_factory.h"
#include "media/cast/test/utility/default_config.h"
@@ -308,7 +309,7 @@ TEST_F(H264VideoToolboxEncoderTest, CheckFramesAreDecodable) {
VideoDecoderConfig config(kCodecH264, H264PROFILE_MAIN, frame_->format(),
COLOR_SPACE_UNSPECIFIED, frame_->coded_size(),
frame_->visible_rect(), frame_->natural_size(),
- nullptr, 0, false);
+ EmptyExtraData(), false);
scoped_refptr<EndToEndFrameChecker> checker(new EndToEndFrameChecker(config));
VideoEncoder::FrameEncodedCallback cb =
diff --git a/chromium/media/ffmpeg/ffmpeg_common.cc b/chromium/media/ffmpeg/ffmpeg_common.cc
index e6d5e912424..c9d86696805 100644
--- a/chromium/media/ffmpeg/ffmpeg_common.cc
+++ b/chromium/media/ffmpeg/ffmpeg_common.cc
@@ -6,6 +6,7 @@
#include "base/basictypes.h"
#include "base/logging.h"
+#include "base/memory/scoped_ptr.h"
#include "base/sha1.h"
#include "base/strings/string_number_conversions.h"
#include "base/strings/string_split.h"
@@ -285,7 +286,7 @@ static AVSampleFormat SampleFormatToAVSampleFormat(SampleFormat sample_format) {
return AV_SAMPLE_FMT_NONE;
}
-void AVCodecContextToAudioDecoderConfig(const AVCodecContext* codec_context,
+bool AVCodecContextToAudioDecoderConfig(const AVCodecContext* codec_context,
bool is_encrypted,
AudioDecoderConfig* config) {
DCHECK_EQ(codec_context->codec_type, AVMEDIA_TYPE_AUDIO);
@@ -319,12 +320,26 @@ void AVCodecContextToAudioDecoderConfig(const AVCodecContext* codec_context,
codec_context->seek_preroll * 1000000.0 / codec_context->sample_rate);
}
+ // AVStream occasionally has invalid extra data. See http://crbug.com/517163
+ if ((codec_context->extradata_size == 0) !=
+ (codec_context->extradata == nullptr)) {
+ LOG(ERROR) << __FUNCTION__
+ << (codec_context->extradata == nullptr ? " NULL" : " Non-NULL")
+ << " extra data cannot have size of "
+ << codec_context->extradata_size << ".";
+ return false;
+ }
+
+ std::vector<uint8_t> extra_data;
+ if (codec_context->extradata_size > 0) {
+ extra_data.assign(codec_context->extradata,
+ codec_context->extradata + codec_context->extradata_size);
+ }
config->Initialize(codec,
sample_format,
channel_layout,
sample_rate,
- codec_context->extradata,
- codec_context->extradata_size,
+ extra_data,
is_encrypted,
seek_preroll,
codec_context->delay);
@@ -333,15 +348,19 @@ void AVCodecContextToAudioDecoderConfig(const AVCodecContext* codec_context,
DCHECK_EQ(av_get_bytes_per_sample(codec_context->sample_fmt) * 8,
config->bits_per_channel());
}
+
+ return true;
}
-void AVStreamToAudioDecoderConfig(const AVStream* stream,
+bool AVStreamToAudioDecoderConfig(const AVStream* stream,
AudioDecoderConfig* config) {
bool is_encrypted = false;
- AVDictionaryEntry* key = av_dict_get(stream->metadata, "enc_key_id", NULL, 0);
+ AVDictionaryEntry* key =
+ av_dict_get(stream->metadata, "enc_key_id", nullptr, 0);
if (key)
is_encrypted = true;
- AVCodecContextToAudioDecoderConfig(stream->codec, is_encrypted, config);
+ return AVCodecContextToAudioDecoderConfig(stream->codec, is_encrypted,
+ config);
}
void AudioDecoderConfigToAVCodecContext(const AudioDecoderConfig& config,
@@ -358,21 +377,21 @@ void AudioDecoderConfigToAVCodecContext(const AudioDecoderConfig& config,
ChannelLayoutToChannelCount(config.channel_layout());
codec_context->sample_rate = config.samples_per_second();
- if (config.extra_data()) {
- codec_context->extradata_size = config.extra_data_size();
+ if (config.extra_data().empty()) {
+ codec_context->extradata = nullptr;
+ codec_context->extradata_size = 0;
+ } else {
+ codec_context->extradata_size = config.extra_data().size();
codec_context->extradata = reinterpret_cast<uint8_t*>(
- av_malloc(config.extra_data_size() + FF_INPUT_BUFFER_PADDING_SIZE));
- memcpy(codec_context->extradata, config.extra_data(),
- config.extra_data_size());
- memset(codec_context->extradata + config.extra_data_size(), '\0',
+ av_malloc(config.extra_data().size() + FF_INPUT_BUFFER_PADDING_SIZE));
+ memcpy(codec_context->extradata, &config.extra_data()[0],
+ config.extra_data().size());
+ memset(codec_context->extradata + config.extra_data().size(), '\0',
FF_INPUT_BUFFER_PADDING_SIZE);
- } else {
- codec_context->extradata = NULL;
- codec_context->extradata_size = 0;
}
}
-void AVStreamToVideoDecoderConfig(const AVStream* stream,
+bool AVStreamToVideoDecoderConfig(const AVStream* stream,
VideoDecoderConfig* config) {
gfx::Size coded_size(stream->codec->coded_width, stream->codec->coded_height);
@@ -433,12 +452,13 @@ void AVStreamToVideoDecoderConfig(const AVStream* stream,
}
bool is_encrypted = false;
- AVDictionaryEntry* key = av_dict_get(stream->metadata, "enc_key_id", NULL, 0);
+ AVDictionaryEntry* key =
+ av_dict_get(stream->metadata, "enc_key_id", nullptr, 0);
if (key)
is_encrypted = true;
AVDictionaryEntry* webm_alpha =
- av_dict_get(stream->metadata, "alpha_mode", NULL, 0);
+ av_dict_get(stream->metadata, "alpha_mode", nullptr, 0);
if (webm_alpha && !strcmp(webm_alpha->value, "1")) {
format = PIXEL_FORMAT_YV12A;
}
@@ -453,9 +473,24 @@ void AVStreamToVideoDecoderConfig(const AVStream* stream,
: COLOR_SPACE_HD_REC709;
}
+ // AVStream occasionally has invalid extra data. See http://crbug.com/517163
+ if ((stream->codec->extradata_size == 0) !=
+ (stream->codec->extradata == nullptr)) {
+ LOG(ERROR) << __FUNCTION__
+ << (stream->codec->extradata == nullptr ? " NULL" : " Non-Null")
+ << " extra data cannot have size of "
+ << stream->codec->extradata_size << ".";
+ return false;
+ }
+
+ std::vector<uint8_t> extra_data;
+ if (stream->codec->extradata_size > 0) {
+ extra_data.assign(stream->codec->extradata,
+ stream->codec->extradata + stream->codec->extradata_size);
+ }
config->Initialize(codec, profile, format, color_space, coded_size,
- visible_rect, natural_size, stream->codec->extradata,
- stream->codec->extradata_size, is_encrypted);
+ visible_rect, natural_size, extra_data, is_encrypted);
+ return true;
}
void VideoDecoderConfigToAVCodecContext(
@@ -470,17 +505,17 @@ void VideoDecoderConfigToAVCodecContext(
if (config.color_space() == COLOR_SPACE_JPEG)
codec_context->color_range = AVCOL_RANGE_JPEG;
- if (config.extra_data()) {
- codec_context->extradata_size = config.extra_data_size();
+ if (config.extra_data().empty()) {
+ codec_context->extradata = nullptr;
+ codec_context->extradata_size = 0;
+ } else {
+ codec_context->extradata_size = config.extra_data().size();
codec_context->extradata = reinterpret_cast<uint8_t*>(
- av_malloc(config.extra_data_size() + FF_INPUT_BUFFER_PADDING_SIZE));
- memcpy(codec_context->extradata, config.extra_data(),
- config.extra_data_size());
- memset(codec_context->extradata + config.extra_data_size(), '\0',
+ av_malloc(config.extra_data().size() + FF_INPUT_BUFFER_PADDING_SIZE));
+ memcpy(codec_context->extradata, &config.extra_data()[0],
+ config.extra_data().size());
+ memset(codec_context->extradata + config.extra_data().size(), '\0',
FF_INPUT_BUFFER_PADDING_SIZE);
- } else {
- codec_context->extradata = NULL;
- codec_context->extradata_size = 0;
}
}
diff --git a/chromium/media/ffmpeg/ffmpeg_common.h b/chromium/media/ffmpeg/ffmpeg_common.h
index 677bd761d96..f4a8237e503 100644
--- a/chromium/media/ffmpeg/ffmpeg_common.h
+++ b/chromium/media/ffmpeg/ffmpeg_common.h
@@ -85,19 +85,26 @@ MEDIA_EXPORT base::TimeDelta ConvertFromTimeBase(const AVRational& time_base,
MEDIA_EXPORT int64 ConvertToTimeBase(const AVRational& time_base,
const base::TimeDelta& timestamp);
-void AVStreamToAudioDecoderConfig(const AVStream* stream,
- AudioDecoderConfig* config);
+// Returns true if AVStream is successfully converted to a AudioDecoderConfig.
+// Returns false if conversion fails, in which case |config| is not modified.
+MEDIA_EXPORT bool AVStreamToAudioDecoderConfig(const AVStream* stream,
+ AudioDecoderConfig* config);
void AudioDecoderConfigToAVCodecContext(
const AudioDecoderConfig& config,
AVCodecContext* codec_context);
-void AVStreamToVideoDecoderConfig(const AVStream* stream,
- VideoDecoderConfig* config);
+// Returns true if AVStream is successfully converted to a VideoDecoderConfig.
+// Returns false if conversion fails, in which case |config| is not modified.
+MEDIA_EXPORT bool AVStreamToVideoDecoderConfig(const AVStream* stream,
+ VideoDecoderConfig* config);
void VideoDecoderConfigToAVCodecContext(
const VideoDecoderConfig& config,
AVCodecContext* codec_context);
-MEDIA_EXPORT void AVCodecContextToAudioDecoderConfig(
+// Returns true if AVCodecContext is successfully converted to an
+// AudioDecoderConfig. Returns false if conversion fails, in which case |config|
+// is not modified.
+MEDIA_EXPORT bool AVCodecContextToAudioDecoderConfig(
const AVCodecContext* codec_context,
bool is_encrypted,
AudioDecoderConfig* config);
diff --git a/chromium/media/ffmpeg/ffmpeg_common_unittest.cc b/chromium/media/ffmpeg/ffmpeg_common_unittest.cc
index ca68fa7c170..aa8a06d9de7 100644
--- a/chromium/media/ffmpeg/ffmpeg_common_unittest.cc
+++ b/chromium/media/ffmpeg/ffmpeg_common_unittest.cc
@@ -2,11 +2,19 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
+#include <cstring>
+
+#include "base/bind.h"
+#include "base/files/memory_mapped_file.h"
#include "base/logging.h"
#include "base/memory/scoped_ptr.h"
+#include "media/base/audio_decoder_config.h"
#include "media/base/media.h"
+#include "media/base/test_data_util.h"
+#include "media/base/video_decoder_config.h"
#include "media/ffmpeg/ffmpeg_common.h"
#include "media/filters/ffmpeg_glue.h"
+#include "media/filters/in_memory_url_protocol.h"
#include "testing/gtest/include/gtest/gtest.h"
namespace media {
@@ -19,6 +27,97 @@ class FFmpegCommonTest : public testing::Test {
~FFmpegCommonTest() override{};
};
+uint8_t kExtraData[5] = {0x00, 0x01, 0x02, 0x03, 0x04};
+
+template <typename T>
+void TestConfigConvertExtraData(
+ AVStream* stream,
+ T* decoder_config,
+ const base::Callback<bool(const AVStream*, T*)>& converter_fn) {
+ // Should initially convert.
+ EXPECT_TRUE(converter_fn.Run(stream, decoder_config));
+
+ // Store orig to let FFmpeg free whatever it allocated.
+ AVCodecContext* codec_context = stream->codec;
+ uint8_t* orig_extradata = codec_context->extradata;
+ int orig_extradata_size = codec_context->extradata_size;
+
+ // Valid combination: extra_data = NULL && size = 0.
+ codec_context->extradata = NULL;
+ codec_context->extradata_size = 0;
+ EXPECT_TRUE(converter_fn.Run(stream, decoder_config));
+ EXPECT_EQ(static_cast<size_t>(codec_context->extradata_size),
+ decoder_config->extra_data().size());
+
+ // Valid combination: extra_data = non-NULL && size > 0.
+ codec_context->extradata = &kExtraData[0];
+ codec_context->extradata_size = arraysize(kExtraData);
+ EXPECT_TRUE(converter_fn.Run(stream, decoder_config));
+ EXPECT_EQ(static_cast<size_t>(codec_context->extradata_size),
+ decoder_config->extra_data().size());
+ EXPECT_EQ(0, memcmp(codec_context->extradata,
+ &decoder_config->extra_data()[0],
+ decoder_config->extra_data().size()));
+
+ // Invalid combination: extra_data = NULL && size != 0.
+ codec_context->extradata = NULL;
+ codec_context->extradata_size = 10;
+ EXPECT_FALSE(converter_fn.Run(stream, decoder_config));
+
+ // Invalid combination: extra_data = non-NULL && size = 0.
+ codec_context->extradata = &kExtraData[0];
+ codec_context->extradata_size = 0;
+ EXPECT_FALSE(converter_fn.Run(stream, decoder_config));
+
+ // Restore orig values for sane cleanup.
+ codec_context->extradata = orig_extradata;
+ codec_context->extradata_size = orig_extradata_size;
+}
+
+TEST_F(FFmpegCommonTest, AVStreamToDecoderConfig) {
+ // Open a file to get a real AVStreams from FFmpeg.
+ base::MemoryMappedFile file;
+ file.Initialize(GetTestDataFilePath("bear-320x240.webm"));
+ InMemoryUrlProtocol protocol(file.data(), file.length(), false);
+ FFmpegGlue glue(&protocol);
+ ASSERT_TRUE(glue.OpenContext());
+ AVFormatContext* format_context = glue.format_context();
+
+ // Find the audio and video streams and test valid and invalid combinations
+ // for extradata and extradata_size.
+ bool found_audio = false;
+ bool found_video = false;
+ for (size_t i = 0;
+ i < format_context->nb_streams && (!found_audio || !found_video);
+ ++i) {
+ AVStream* stream = format_context->streams[i];
+ AVCodecContext* codec_context = stream->codec;
+ AVMediaType codec_type = codec_context->codec_type;
+
+ if (codec_type == AVMEDIA_TYPE_AUDIO) {
+ if (found_audio)
+ continue;
+ found_audio = true;
+ AudioDecoderConfig audio_config;
+ TestConfigConvertExtraData(stream, &audio_config,
+ base::Bind(&AVStreamToAudioDecoderConfig));
+ } else if (codec_type == AVMEDIA_TYPE_VIDEO) {
+ if (found_video)
+ continue;
+ found_video = true;
+ VideoDecoderConfig video_config;
+ TestConfigConvertExtraData(stream, &video_config,
+ base::Bind(&AVStreamToVideoDecoderConfig));
+ } else {
+ // Only process audio/video.
+ continue;
+ }
+ }
+
+ ASSERT_TRUE(found_audio);
+ ASSERT_TRUE(found_video);
+}
+
TEST_F(FFmpegCommonTest, OpusAudioDecoderConfig) {
AVCodecContext context = {0};
context.codec_type = AVMEDIA_TYPE_AUDIO;
@@ -31,7 +130,8 @@ TEST_F(FFmpegCommonTest, OpusAudioDecoderConfig) {
context.sample_rate = 44100;
AudioDecoderConfig decoder_config;
- AVCodecContextToAudioDecoderConfig(&context, false, &decoder_config);
+ ASSERT_TRUE(AVCodecContextToAudioDecoderConfig(&context, false,
+ &decoder_config));
EXPECT_EQ(48000, decoder_config.samples_per_second());
}
diff --git a/chromium/media/filters/audio_decoder_selector_unittest.cc b/chromium/media/filters/audio_decoder_selector_unittest.cc
index 7b58a743992..2b7f3905e21 100644
--- a/chromium/media/filters/audio_decoder_selector_unittest.cc
+++ b/chromium/media/filters/audio_decoder_selector_unittest.cc
@@ -7,6 +7,7 @@
#include "base/bind.h"
#include "base/message_loop/message_loop.h"
#include "media/base/gmock_callback_support.h"
+#include "media/base/media_util.h"
#include "media/base/mock_filters.h"
#include "media/base/test_helpers.h"
#include "media/filters/decoder_selector.h"
@@ -77,16 +78,16 @@ class AudioDecoderSelectorTest : public ::testing::Test {
}
void UseClearStream() {
- AudioDecoderConfig clear_audio_config(
- kCodecVorbis, kSampleFormatPlanarF32, CHANNEL_LAYOUT_STEREO, 44100,
- NULL, 0, false);
+ AudioDecoderConfig clear_audio_config(kCodecVorbis, kSampleFormatPlanarF32,
+ CHANNEL_LAYOUT_STEREO, 44100,
+ EmptyExtraData(), false);
demuxer_stream_->set_audio_decoder_config(clear_audio_config);
}
void UseEncryptedStream() {
AudioDecoderConfig encrypted_audio_config(
kCodecVorbis, kSampleFormatPlanarF32, CHANNEL_LAYOUT_STEREO, 44100,
- NULL, 0, true);
+ EmptyExtraData(), true);
demuxer_stream_->set_audio_decoder_config(encrypted_audio_config);
}
diff --git a/chromium/media/filters/audio_decoder_unittest.cc b/chromium/media/filters/audio_decoder_unittest.cc
index 83c2ea5985d..3ee51f40fbd 100644
--- a/chromium/media/filters/audio_decoder_unittest.cc
+++ b/chromium/media/filters/audio_decoder_unittest.cc
@@ -3,6 +3,7 @@
// found in the LICENSE file.
#include <deque>
+#include <vector>
#include "base/bind.h"
#include "base/format_macros.h"
@@ -16,6 +17,7 @@
#include "media/base/audio_bus.h"
#include "media/base/audio_hash.h"
#include "media/base/decoder_buffer.h"
+#include "media/base/media_util.h"
#include "media/base/test_data_util.h"
#include "media/base/test_helpers.h"
#include "media/base/timestamp_constants.h"
@@ -151,8 +153,8 @@ class AudioDecoderTest : public testing::TestWithParam<DecoderTestData> {
ASSERT_TRUE(reader_->SeekForTesting(start_timestamp_));
AudioDecoderConfig config;
- AVCodecContextToAudioDecoderConfig(reader_->codec_context_for_testing(),
- false, &config);
+ ASSERT_TRUE(AVCodecContextToAudioDecoderConfig(
+ reader_->codec_context_for_testing(), false, &config));
EXPECT_EQ(GetParam().codec, config.codec());
EXPECT_EQ(GetParam().samples_per_second, config.samples_per_second());
@@ -374,13 +376,15 @@ TEST_P(AudioDecoderTest, NoTimestamp) {
TEST_P(OpusAudioDecoderBehavioralTest, InitializeWithNoCodecDelay) {
ASSERT_EQ(GetParam().decoder_type, OPUS);
+ std::vector<uint8_t> extra_data(
+ kOpusExtraData,
+ kOpusExtraData + arraysize(kOpusExtraData));
AudioDecoderConfig decoder_config;
decoder_config.Initialize(kCodecOpus,
kSampleFormatF32,
CHANNEL_LAYOUT_STEREO,
48000,
- kOpusExtraData,
- arraysize(kOpusExtraData),
+ extra_data,
false,
base::TimeDelta::FromMilliseconds(80),
0);
@@ -389,14 +393,16 @@ TEST_P(OpusAudioDecoderBehavioralTest, InitializeWithNoCodecDelay) {
TEST_P(OpusAudioDecoderBehavioralTest, InitializeWithBadCodecDelay) {
ASSERT_EQ(GetParam().decoder_type, OPUS);
+ std::vector<uint8_t> extra_data(
+ kOpusExtraData,
+ kOpusExtraData + arraysize(kOpusExtraData));
AudioDecoderConfig decoder_config;
decoder_config.Initialize(
kCodecOpus,
kSampleFormatF32,
CHANNEL_LAYOUT_STEREO,
48000,
- kOpusExtraData,
- arraysize(kOpusExtraData),
+ extra_data,
false,
base::TimeDelta::FromMilliseconds(80),
// Use a different codec delay than in the extradata.
@@ -410,8 +416,7 @@ TEST_P(FFmpegAudioDecoderBehavioralTest, InitializeWithBadConfig) {
CHANNEL_LAYOUT_STEREO,
// Invalid sample rate of zero.
0,
- NULL,
- 0,
+ EmptyExtraData(),
false);
InitializeDecoderWithResult(decoder_config, false);
}
diff --git a/chromium/media/filters/chunk_demuxer_unittest.cc b/chromium/media/filters/chunk_demuxer_unittest.cc
index 747e512db6c..1b6b8943cdc 100644
--- a/chromium/media/filters/chunk_demuxer_unittest.cc
+++ b/chromium/media/filters/chunk_demuxer_unittest.cc
@@ -736,8 +736,8 @@ class ChunkDemuxerTest : public ::testing::Test {
// bear-320x240.webm : [0-501) [801-2736)
// bear-640x360.webm : [527-793)
//
- // bear-320x240.webm AudioDecoderConfig returns 3863 for its extra_data_size()
- // bear-640x360.webm AudioDecoderConfig returns 3935 for its extra_data_size()
+ // bear-320x240.webm AudioDecoderConfig returns 3863 for its extra_data size.
+ // bear-640x360.webm AudioDecoderConfig returns 3935 for its extra_data size.
// The resulting audio stream returns data from each file for the following
// time ranges.
// bear-320x240.webm : [0-524) [779-2736)
@@ -1247,8 +1247,7 @@ TEST_F(ChunkDemuxerTest, Init) {
EXPECT_EQ(32, config.bits_per_channel());
EXPECT_EQ(CHANNEL_LAYOUT_STEREO, config.channel_layout());
EXPECT_EQ(44100, config.samples_per_second());
- EXPECT_TRUE(config.extra_data());
- EXPECT_GT(config.extra_data_size(), 0u);
+ EXPECT_GT(config.extra_data().size(), 0u);
EXPECT_EQ(kSampleFormatPlanarF32, config.sample_format());
EXPECT_EQ(is_audio_encrypted,
audio_stream->audio_decoder_config().is_encrypted());
@@ -1317,8 +1316,7 @@ TEST_F(ChunkDemuxerTest, InitText) {
EXPECT_EQ(32, config.bits_per_channel());
EXPECT_EQ(CHANNEL_LAYOUT_STEREO, config.channel_layout());
EXPECT_EQ(44100, config.samples_per_second());
- EXPECT_TRUE(config.extra_data());
- EXPECT_GT(config.extra_data_size(), 0u);
+ EXPECT_GT(config.extra_data().size(), 0u);
EXPECT_EQ(kSampleFormatPlanarF32, config.sample_format());
EXPECT_EQ(is_audio_encrypted,
audio_stream->audio_decoder_config().is_encrypted());
@@ -2887,7 +2885,7 @@ TEST_F(ChunkDemuxerTest, ConfigChange_Audio) {
const AudioDecoderConfig& audio_config_1 = audio->audio_decoder_config();
ASSERT_TRUE(audio_config_1.IsValidConfig());
EXPECT_EQ(audio_config_1.samples_per_second(), 44100);
- EXPECT_EQ(audio_config_1.extra_data_size(), 3863u);
+ EXPECT_EQ(audio_config_1.extra_data().size(), 3863u);
ExpectRead(DemuxerStream::AUDIO, 0);
@@ -2901,7 +2899,7 @@ TEST_F(ChunkDemuxerTest, ConfigChange_Audio) {
const AudioDecoderConfig& audio_config_2 = audio->audio_decoder_config();
ASSERT_TRUE(audio_config_2.IsValidConfig());
EXPECT_EQ(audio_config_2.samples_per_second(), 44100);
- EXPECT_EQ(audio_config_2.extra_data_size(), 3935u);
+ EXPECT_EQ(audio_config_2.extra_data().size(), 3935u);
// The next config change is from a splice frame representing an overlap of
// buffers from config 2 by buffers from config 1.
diff --git a/chromium/media/filters/decrypting_audio_decoder_unittest.cc b/chromium/media/filters/decrypting_audio_decoder_unittest.cc
index d6ef2b92d7c..4f749ceaacc 100644
--- a/chromium/media/filters/decrypting_audio_decoder_unittest.cc
+++ b/chromium/media/filters/decrypting_audio_decoder_unittest.cc
@@ -12,6 +12,7 @@
#include "media/base/decoder_buffer.h"
#include "media/base/decrypt_config.h"
#include "media/base/gmock_callback_support.h"
+#include "media/base/media_util.h"
#include "media/base/mock_filters.h"
#include "media/base/test_helpers.h"
#include "media/base/timestamp_constants.h"
@@ -118,8 +119,8 @@ class DecryptingAudioDecoderTest : public testing::Test {
.WillOnce(SaveArg<1>(&key_added_cb_));
config_.Initialize(kCodecVorbis, kSampleFormatPlanarF32,
- CHANNEL_LAYOUT_STEREO, kSampleRate, NULL, 0, true,
- base::TimeDelta(), 0);
+ CHANNEL_LAYOUT_STEREO, kSampleRate, EmptyExtraData(),
+ true, base::TimeDelta(), 0);
InitializeAndExpectResult(config_, true);
}
@@ -287,7 +288,8 @@ TEST_F(DecryptingAudioDecoderTest, Initialize_Normal) {
// Ensure that DecryptingAudioDecoder only accepts encrypted audio.
TEST_F(DecryptingAudioDecoderTest, Initialize_UnencryptedAudioConfig) {
AudioDecoderConfig config(kCodecVorbis, kSampleFormatPlanarF32,
- CHANNEL_LAYOUT_STEREO, kSampleRate, NULL, 0, false);
+ CHANNEL_LAYOUT_STEREO, kSampleRate,
+ EmptyExtraData(), false);
InitializeAndExpectResult(config, false);
}
@@ -295,7 +297,7 @@ TEST_F(DecryptingAudioDecoderTest, Initialize_UnencryptedAudioConfig) {
// Ensure decoder handles invalid audio configs without crashing.
TEST_F(DecryptingAudioDecoderTest, Initialize_InvalidAudioConfig) {
AudioDecoderConfig config(kUnknownAudioCodec, kUnknownSampleFormat,
- CHANNEL_LAYOUT_STEREO, 0, NULL, 0, true);
+ CHANNEL_LAYOUT_STEREO, 0, EmptyExtraData(), true);
InitializeAndExpectResult(config, false);
}
@@ -307,14 +309,16 @@ TEST_F(DecryptingAudioDecoderTest, Initialize_UnsupportedAudioConfig) {
ExpectDecryptorNotification(decryptor_.get(), true);
AudioDecoderConfig config(kCodecVorbis, kSampleFormatPlanarF32,
- CHANNEL_LAYOUT_STEREO, kSampleRate, NULL, 0, true);
+ CHANNEL_LAYOUT_STEREO, kSampleRate,
+ EmptyExtraData(), true);
InitializeAndExpectResult(config, false);
}
TEST_F(DecryptingAudioDecoderTest, Initialize_NullDecryptor) {
ExpectDecryptorNotification(NULL, false);
AudioDecoderConfig config(kCodecVorbis, kSampleFormatPlanarF32,
- CHANNEL_LAYOUT_STEREO, kSampleRate, NULL, 0, true);
+ CHANNEL_LAYOUT_STEREO, kSampleRate,
+ EmptyExtraData(), true);
InitializeAndExpectResult(config, false);
}
@@ -382,7 +386,8 @@ TEST_F(DecryptingAudioDecoderTest, Reinitialize_ConfigChange) {
// The new config is different from the initial config in bits-per-channel,
// channel layout and samples_per_second.
AudioDecoderConfig new_config(kCodecVorbis, kSampleFormatPlanarS16,
- CHANNEL_LAYOUT_5_1, 88200, NULL, 0, true);
+ CHANNEL_LAYOUT_5_1, 88200, EmptyExtraData(),
+ true);
EXPECT_NE(new_config.bits_per_channel(), config_.bits_per_channel());
EXPECT_NE(new_config.channel_layout(), config_.channel_layout());
EXPECT_NE(new_config.samples_per_second(), config_.samples_per_second());
diff --git a/chromium/media/filters/decrypting_demuxer_stream.cc b/chromium/media/filters/decrypting_demuxer_stream.cc
index ff981224edd..3e67a29c001 100644
--- a/chromium/media/filters/decrypting_demuxer_stream.cc
+++ b/chromium/media/filters/decrypting_demuxer_stream.cc
@@ -385,7 +385,6 @@ void DecryptingDemuxerStream::InitializeDecoderConfig() {
input_audio_config.channel_layout(),
input_audio_config.samples_per_second(),
input_audio_config.extra_data(),
- input_audio_config.extra_data_size(),
false, // Output audio is not encrypted.
input_audio_config.seek_preroll(),
input_audio_config.codec_delay());
@@ -400,7 +399,6 @@ void DecryptingDemuxerStream::InitializeDecoderConfig() {
input_video_config.format(), input_video_config.color_space(),
input_video_config.coded_size(), input_video_config.visible_rect(),
input_video_config.natural_size(), input_video_config.extra_data(),
- input_video_config.extra_data_size(),
false); // Output video is not encrypted.
break;
}
diff --git a/chromium/media/filters/decrypting_demuxer_stream_unittest.cc b/chromium/media/filters/decrypting_demuxer_stream_unittest.cc
index e5a8f4b00b4..c679b5616da 100644
--- a/chromium/media/filters/decrypting_demuxer_stream_unittest.cc
+++ b/chromium/media/filters/decrypting_demuxer_stream_unittest.cc
@@ -11,6 +11,7 @@
#include "media/base/decoder_buffer.h"
#include "media/base/decrypt_config.h"
#include "media/base/gmock_callback_support.h"
+#include "media/base/media_util.h"
#include "media/base/mock_filters.h"
#include "media/base/test_helpers.h"
#include "media/filters/decrypting_demuxer_stream.h"
@@ -134,9 +135,9 @@ class DecryptingDemuxerStreamTest : public testing::Test {
EXPECT_CALL(*decryptor_, RegisterNewKeyCB(Decryptor::kAudio, _))
.WillOnce(SaveArg<1>(&key_added_cb_));
- AudioDecoderConfig input_config(
- kCodecVorbis, kSampleFormatPlanarF32, CHANNEL_LAYOUT_STEREO, 44100,
- NULL, 0, true);
+ AudioDecoderConfig input_config(kCodecVorbis, kSampleFormatPlanarF32,
+ CHANNEL_LAYOUT_STEREO, 44100,
+ EmptyExtraData(), true);
InitializeAudioAndExpectStatus(input_config, PIPELINE_OK);
const AudioDecoderConfig& output_config =
@@ -309,18 +310,14 @@ TEST_F(DecryptingDemuxerStreamTest, Initialize_NormalVideo) {
EXPECT_EQ(input_config.coded_size(), output_config.coded_size());
EXPECT_EQ(input_config.visible_rect(), output_config.visible_rect());
EXPECT_EQ(input_config.natural_size(), output_config.natural_size());
- ASSERT_EQ(input_config.extra_data_size(), output_config.extra_data_size());
- if (input_config.extra_data_size() > 0) {
- EXPECT_FALSE(output_config.extra_data());
- EXPECT_EQ(0, memcmp(output_config.extra_data(), input_config.extra_data(),
- input_config.extra_data_size()));
- }
+ ASSERT_EQ(input_config.extra_data(), output_config.extra_data());
}
TEST_F(DecryptingDemuxerStreamTest, Initialize_NullDecryptor) {
ExpectDecryptorNotification(NULL, false);
AudioDecoderConfig input_config(kCodecVorbis, kSampleFormatPlanarF32,
- CHANNEL_LAYOUT_STEREO, 44100, NULL, 0, true);
+ CHANNEL_LAYOUT_STEREO, 44100,
+ EmptyExtraData(), true);
InitializeAudioAndExpectStatus(input_config, DECODER_ERROR_NOT_SUPPORTED);
}
@@ -394,9 +391,9 @@ TEST_F(DecryptingDemuxerStreamTest, Reset_DuringDecryptorRequested) {
// One for decryptor request, one for canceling request during Reset().
EXPECT_CALL(*this, RequestDecryptorNotification(_))
.Times(2);
- AudioDecoderConfig input_config(
- kCodecVorbis, kSampleFormatPlanarF32, CHANNEL_LAYOUT_STEREO, 44100,
- NULL, 0, true);
+ AudioDecoderConfig input_config(kCodecVorbis, kSampleFormatPlanarF32,
+ CHANNEL_LAYOUT_STEREO, 44100,
+ EmptyExtraData(), true);
InitializeAudioAndExpectStatus(input_config, PIPELINE_ERROR_ABORT);
Reset();
}
@@ -482,9 +479,9 @@ TEST_F(DecryptingDemuxerStreamTest, Reset_DuringAbortedDemuxerRead) {
TEST_F(DecryptingDemuxerStreamTest, DemuxerRead_ConfigChanged) {
Initialize();
- AudioDecoderConfig new_config(
- kCodecVorbis, kSampleFormatPlanarF32, CHANNEL_LAYOUT_STEREO, 88200, NULL,
- 0, true);
+ AudioDecoderConfig new_config(kCodecVorbis, kSampleFormatPlanarF32,
+ CHANNEL_LAYOUT_STEREO, 88200, EmptyExtraData(),
+ true);
input_audio_stream_->set_audio_decoder_config(new_config);
EXPECT_CALL(*input_audio_stream_, Read(_))
@@ -515,9 +512,9 @@ TEST_F(DecryptingDemuxerStreamTest, Destroy_DuringDecryptorRequested) {
// One for decryptor request, one for canceling request during Reset().
EXPECT_CALL(*this, RequestDecryptorNotification(_))
.Times(2);
- AudioDecoderConfig input_config(
- kCodecVorbis, kSampleFormatPlanarF32, CHANNEL_LAYOUT_STEREO, 44100,
- NULL, 0, true);
+ AudioDecoderConfig input_config(kCodecVorbis, kSampleFormatPlanarF32,
+ CHANNEL_LAYOUT_STEREO, 44100,
+ EmptyExtraData(), true);
InitializeAudioAndExpectStatus(input_config, PIPELINE_ERROR_ABORT);
}
diff --git a/chromium/media/filters/ffmpeg_demuxer.cc b/chromium/media/filters/ffmpeg_demuxer.cc
index 155e98079af..c06dd295de9 100644
--- a/chromium/media/filters/ffmpeg_demuxer.cc
+++ b/chromium/media/filters/ffmpeg_demuxer.cc
@@ -172,14 +172,58 @@ static int32_t GetCodecHash(const AVCodecContext* context) {
return HashCodecName("none");
}
+scoped_ptr<FFmpegDemuxerStream> FFmpegDemuxerStream::Create(
+ FFmpegDemuxer* demuxer,
+ AVStream* stream) {
+ if (!demuxer || !stream)
+ return nullptr;
+
+ scoped_ptr<FFmpegDemuxerStream> demuxer_stream;
+ scoped_ptr<AudioDecoderConfig> audio_config;
+ scoped_ptr<VideoDecoderConfig> video_config;
+
+ if (stream->codec->codec_type == AVMEDIA_TYPE_AUDIO) {
+ audio_config.reset(new AudioDecoderConfig());
+
+ // IsValidConfig() checks that the codec is supported and that the channel
+ // layout and sample format are valid.
+ //
+ // TODO(chcunningham): Change AVStreamToAudioDecoderConfig to check
+ // IsValidConfig internally and return a null scoped_ptr if not valid.
+ if (!AVStreamToAudioDecoderConfig(stream, audio_config.get()) ||
+ !audio_config->IsValidConfig())
+ return nullptr;
+
+ } else if (stream->codec->codec_type == AVMEDIA_TYPE_VIDEO) {
+ video_config.reset(new VideoDecoderConfig());
+
+ // IsValidConfig() checks that the codec is supported and that the channel
+ // layout and sample format are valid.
+ //
+ // TODO(chcunningham): Change AVStreamToVideoDecoderConfig to check
+ // IsValidConfig internally and return a null scoped_ptr if not valid.
+ if (!AVStreamToVideoDecoderConfig(stream, video_config.get()) ||
+ !video_config->IsValidConfig())
+ return nullptr;
+ }
+
+ return make_scoped_ptr(new FFmpegDemuxerStream(
+ demuxer, stream, audio_config.Pass(), video_config.Pass()));
+}
+
//
// FFmpegDemuxerStream
//
-FFmpegDemuxerStream::FFmpegDemuxerStream(FFmpegDemuxer* demuxer,
- AVStream* stream)
+FFmpegDemuxerStream::FFmpegDemuxerStream(
+ FFmpegDemuxer* demuxer,
+ AVStream* stream,
+ scoped_ptr<AudioDecoderConfig> audio_config,
+ scoped_ptr<VideoDecoderConfig> video_config)
: demuxer_(demuxer),
task_runner_(base::ThreadTaskRunnerHandle::Get()),
stream_(stream),
+ audio_config_(audio_config.release()),
+ video_config_(video_config.release()),
type_(UNKNOWN),
liveness_(LIVENESS_UNKNOWN),
end_of_stream_(false),
@@ -196,14 +240,14 @@ FFmpegDemuxerStream::FFmpegDemuxerStream(FFmpegDemuxer* demuxer,
// Determine our media format.
switch (stream->codec->codec_type) {
case AVMEDIA_TYPE_AUDIO:
+ DCHECK(audio_config_.get() && !video_config_.get());
type_ = AUDIO;
- AVStreamToAudioDecoderConfig(stream, &audio_config_);
- is_encrypted = audio_config_.is_encrypted();
+ is_encrypted = audio_config_->is_encrypted();
break;
case AVMEDIA_TYPE_VIDEO:
+ DCHECK(video_config_.get() && !audio_config_.get());
type_ = VIDEO;
- AVStreamToVideoDecoderConfig(stream, &video_config_);
- is_encrypted = video_config_.is_encrypted();
+ is_encrypted = video_config_->is_encrypted();
rotation_entry = av_dict_get(stream->metadata, "rotate", NULL, 0);
if (rotation_entry && rotation_entry->value && rotation_entry->value[0])
@@ -228,6 +272,7 @@ FFmpegDemuxerStream::FFmpegDemuxerStream(FFmpegDemuxer* demuxer,
break;
case AVMEDIA_TYPE_SUBTITLE:
+ DCHECK(!video_config_.get() && !audio_config_.get());
type_ = TEXT;
break;
default:
@@ -315,8 +360,8 @@ void FFmpegDemuxerStream::EnqueuePacket(ScopedAVPacket packet) {
scoped_ptr<DecryptConfig> decrypt_config;
int data_offset = 0;
- if ((type() == DemuxerStream::AUDIO && audio_config_.is_encrypted()) ||
- (type() == DemuxerStream::VIDEO && video_config_.is_encrypted())) {
+ if ((type() == DemuxerStream::AUDIO && audio_config_->is_encrypted()) ||
+ (type() == DemuxerStream::VIDEO && video_config_->is_encrypted())) {
if (!WebMCreateDecryptConfig(
packet->data, packet->size,
reinterpret_cast<const uint8*>(encryption_key_id_.data()),
@@ -580,14 +625,16 @@ bool FFmpegDemuxerStream::SupportsConfigChanges() { return false; }
AudioDecoderConfig FFmpegDemuxerStream::audio_decoder_config() {
DCHECK(task_runner_->BelongsToCurrentThread());
- CHECK_EQ(type_, AUDIO);
- return audio_config_;
+ DCHECK_EQ(type_, AUDIO);
+ DCHECK(audio_config_.get());
+ return *audio_config_;
}
VideoDecoderConfig FFmpegDemuxerStream::video_decoder_config() {
DCHECK(task_runner_->BelongsToCurrentThread());
- CHECK_EQ(type_, VIDEO);
- return video_config_;
+ DCHECK_EQ(type_, VIDEO);
+ DCHECK(video_config_.get());
+ return *video_config_;
}
VideoRotation FFmpegDemuxerStream::video_rotation() {
@@ -987,7 +1034,6 @@ void FFmpegDemuxer::OnFindStreamInfoDone(const PipelineStatusCB& status_cb,
AVStream* audio_stream = NULL;
AudioDecoderConfig audio_config;
-
AVStream* video_stream = NULL;
VideoDecoderConfig video_config;
@@ -1007,13 +1053,6 @@ void FFmpegDemuxer::OnFindStreamInfoDone(const PipelineStatusCB& status_cb,
// Log the codec detected, whether it is supported or not.
UMA_HISTOGRAM_SPARSE_SLOWLY("Media.DetectedAudioCodecHash",
GetCodecHash(codec_context));
-
- // Ensure the codec is supported. IsValidConfig() also checks that the
- // channel layout and sample format are valid.
- AVStreamToAudioDecoderConfig(stream, &audio_config);
- if (!audio_config.IsValidConfig())
- continue;
- audio_stream = stream;
} else if (codec_type == AVMEDIA_TYPE_VIDEO) {
if (video_stream)
continue;
@@ -1042,14 +1081,6 @@ void FFmpegDemuxer::OnFindStreamInfoDone(const PipelineStatusCB& status_cb,
// Log the codec detected, whether it is supported or not.
UMA_HISTOGRAM_SPARSE_SLOWLY("Media.DetectedVideoCodecHash",
GetCodecHash(codec_context));
-
- // Ensure the codec is supported. IsValidConfig() also checks that the
- // frame size and visible size are valid.
- AVStreamToVideoDecoderConfig(stream, &video_config);
-
- if (!video_config.IsValidConfig())
- continue;
- video_stream = stream;
} else if (codec_type == AVMEDIA_TYPE_SUBTITLE) {
if (codec_context->codec_id != AV_CODEC_ID_WEBVTT || !text_enabled_) {
continue;
@@ -1058,15 +1089,30 @@ void FFmpegDemuxer::OnFindStreamInfoDone(const PipelineStatusCB& status_cb,
continue;
}
- streams_[i] = new FFmpegDemuxerStream(this, stream);
+ // Attempt to create a FFmpegDemuxerStream from the AVStream. This will
+ // return nullptr if the AVStream is invalid. Validity checks will verify
+ // things like: codec, channel layout, sample/pixel format, etc...
+ scoped_ptr<FFmpegDemuxerStream> demuxer_stream =
+ FFmpegDemuxerStream::Create(this, stream);
+ if (demuxer_stream.get()) {
+ streams_[i] = demuxer_stream.release();
+ } else {
+ // This AVStream does not successfully convert.
+ continue;
+ }
- // Record audio or video src= playback UMA stats for the stream's decoder
- // config.
+ // Note when we find our audio/video stream (we only want one of each) and
+ // record src= playback UMA stats for the stream's decoder config.
if (codec_type == AVMEDIA_TYPE_AUDIO) {
- RecordAudioCodecStats(streams_[i]->audio_decoder_config());
+ CHECK(!audio_stream);
+ audio_stream = stream;
+ audio_config = streams_[i]->audio_decoder_config();
+ RecordAudioCodecStats(audio_config);
} else if (codec_type == AVMEDIA_TYPE_VIDEO) {
- RecordVideoCodecStats(streams_[i]->video_decoder_config(),
- stream->codec->color_range);
+ CHECK(!video_stream);
+ video_stream = stream;
+ video_config = streams_[i]->video_decoder_config();
+ RecordVideoCodecStats(video_config, stream->codec->color_range);
}
max_duration = std::max(max_duration, streams_[i]->duration());
diff --git a/chromium/media/filters/ffmpeg_demuxer.h b/chromium/media/filters/ffmpeg_demuxer.h
index 9c20e4a9049..96c21d541b1 100644
--- a/chromium/media/filters/ffmpeg_demuxer.h
+++ b/chromium/media/filters/ffmpeg_demuxer.h
@@ -27,6 +27,7 @@
#include <vector>
#include "base/callback.h"
+#include "base/memory/scoped_ptr.h"
#include "base/memory/scoped_vector.h"
#include "base/threading/thread.h"
#include "media/base/audio_decoder_config.h"
@@ -55,9 +56,14 @@ typedef scoped_ptr<AVPacket, ScopedPtrAVFreePacket> ScopedAVPacket;
class FFmpegDemuxerStream : public DemuxerStream {
public:
- // Keeps a copy of |demuxer| and initializes itself using information inside
- // |stream|. Both parameters must outlive |this|.
- FFmpegDemuxerStream(FFmpegDemuxer* demuxer, AVStream* stream);
+ // Attempts to create FFmpegDemuxerStream form the given AVStream. Will return
+ // null if the AVStream cannot be translated into a valid decoder config.
+ //
+ // FFmpegDemuxerStream keeps a copy of |demuxer| and initializes itself using
+ // information inside |stream|. Both parameters must outlive |this|.
+ static scoped_ptr<FFmpegDemuxerStream> Create(FFmpegDemuxer* demuxer,
+ AVStream* stream);
+
~FFmpegDemuxerStream() override;
// Enqueues the given AVPacket. It is invalid to queue a |packet| after
@@ -123,6 +129,15 @@ class FFmpegDemuxerStream : public DemuxerStream {
private:
friend class FFmpegDemuxerTest;
+ // Use FFmpegDemuxerStream::Create to construct.
+ // Audio/Video streams must include their respective DecoderConfig. At most
+ // one DecoderConfig should be provided (leaving the other nullptr). Both
+ // configs should be null for text streams.
+ FFmpegDemuxerStream(FFmpegDemuxer* demuxer,
+ AVStream* stream,
+ scoped_ptr<AudioDecoderConfig> audio_config,
+ scoped_ptr<VideoDecoderConfig> video_config);
+
// Runs |read_cb_| if present with the front of |buffer_queue_|, calling
// NotifyCapacityAvailable() if capacity is still available.
void SatisfyPendingRead();
@@ -140,8 +155,8 @@ class FFmpegDemuxerStream : public DemuxerStream {
FFmpegDemuxer* demuxer_;
scoped_refptr<base::SingleThreadTaskRunner> task_runner_;
AVStream* stream_;
- AudioDecoderConfig audio_config_;
- VideoDecoderConfig video_config_;
+ scoped_ptr<AudioDecoderConfig> audio_config_;
+ scoped_ptr<VideoDecoderConfig> video_config_;
Type type_;
Liveness liveness_;
base::TimeDelta duration_;
diff --git a/chromium/media/filters/ffmpeg_demuxer_unittest.cc b/chromium/media/filters/ffmpeg_demuxer_unittest.cc
index e75a67fdaaf..2e988d2ccb3 100644
--- a/chromium/media/filters/ffmpeg_demuxer_unittest.cc
+++ b/chromium/media/filters/ffmpeg_demuxer_unittest.cc
@@ -296,8 +296,7 @@ TEST_F(FFmpegDemuxerTest, Initialize_Successful) {
EXPECT_EQ(240, video_config.visible_rect().height());
EXPECT_EQ(320, video_config.natural_size().width());
EXPECT_EQ(240, video_config.natural_size().height());
- EXPECT_FALSE(video_config.extra_data());
- EXPECT_EQ(0u, video_config.extra_data_size());
+ EXPECT_TRUE(video_config.extra_data().empty());
// Audio stream should be present.
stream = demuxer_->GetStream(DemuxerStream::AUDIO);
@@ -310,8 +309,7 @@ TEST_F(FFmpegDemuxerTest, Initialize_Successful) {
EXPECT_EQ(CHANNEL_LAYOUT_STEREO, audio_config.channel_layout());
EXPECT_EQ(44100, audio_config.samples_per_second());
EXPECT_EQ(kSampleFormatPlanarF32, audio_config.sample_format());
- EXPECT_TRUE(audio_config.extra_data());
- EXPECT_GT(audio_config.extra_data_size(), 0u);
+ EXPECT_FALSE(audio_config.extra_data().empty());
// Unknown stream should never be present.
EXPECT_FALSE(demuxer_->GetStream(DemuxerStream::UNKNOWN));
diff --git a/chromium/media/filters/ffmpeg_glue.cc b/chromium/media/filters/ffmpeg_glue.cc
index 31c6828b445..bfeced058e7 100644
--- a/chromium/media/filters/ffmpeg_glue.cc
+++ b/chromium/media/filters/ffmpeg_glue.cc
@@ -153,7 +153,7 @@ FFmpegGlue::FFmpegGlue(FFmpegURLProtocol* protocol)
}
bool FFmpegGlue::OpenContext() {
- DCHECK(!open_called_) << "OpenContext() should't be called twice.";
+ DCHECK(!open_called_) << "OpenContext() shouldn't be called twice.";
// If avformat_open_input() is called we have to take a slightly different
// destruction path to avoid double frees.
diff --git a/chromium/media/filters/ffmpeg_video_decoder_unittest.cc b/chromium/media/filters/ffmpeg_video_decoder_unittest.cc
index f8a954a4818..4a1be85d438 100644
--- a/chromium/media/filters/ffmpeg_video_decoder_unittest.cc
+++ b/chromium/media/filters/ffmpeg_video_decoder_unittest.cc
@@ -14,6 +14,7 @@
#include "media/base/decoder_buffer.h"
#include "media/base/gmock_callback_support.h"
#include "media/base/limits.h"
+#include "media/base/media_util.h"
#include "media/base/mock_filters.h"
#include "media/base/test_data_util.h"
#include "media/base/test_helpers.h"
@@ -224,17 +225,17 @@ TEST_F(FFmpegVideoDecoderTest, Initialize_UnsupportedPixelFormat) {
// Ensure decoder handles unsupported pixel formats without crashing.
VideoDecoderConfig config(kCodecVP8, VIDEO_CODEC_PROFILE_UNKNOWN,
PIXEL_FORMAT_UNKNOWN, COLOR_SPACE_UNSPECIFIED,
- kCodedSize, kVisibleRect, kNaturalSize, NULL, 0,
- false);
+ kCodedSize, kVisibleRect, kNaturalSize,
+ EmptyExtraData(), false);
InitializeWithConfigWithResult(config, false);
}
TEST_F(FFmpegVideoDecoderTest, Initialize_OpenDecoderFails) {
// Specify Theora w/o extra data so that avcodec_open2() fails.
VideoDecoderConfig config(kCodecTheora, VIDEO_CODEC_PROFILE_UNKNOWN,
- kVideoFormat, COLOR_SPACE_UNSPECIFIED,
- kCodedSize, kVisibleRect, kNaturalSize,
- NULL, 0, false);
+ kVideoFormat, COLOR_SPACE_UNSPECIFIED, kCodedSize,
+ kVisibleRect, kNaturalSize, EmptyExtraData(),
+ false);
InitializeWithConfigWithResult(config, false);
}
@@ -247,8 +248,7 @@ TEST_F(FFmpegVideoDecoderTest, Initialize_AspectRatioNumeratorZero) {
kCodedSize,
kVisibleRect,
natural_size,
- NULL,
- 0,
+ EmptyExtraData(),
false);
InitializeWithConfigWithResult(config, false);
}
@@ -262,8 +262,7 @@ TEST_F(FFmpegVideoDecoderTest, Initialize_AspectRatioDenominatorZero) {
kCodedSize,
kVisibleRect,
natural_size,
- NULL,
- 0,
+ EmptyExtraData(),
false);
InitializeWithConfigWithResult(config, false);
}
@@ -277,8 +276,7 @@ TEST_F(FFmpegVideoDecoderTest, Initialize_AspectRatioNumeratorNegative) {
kCodedSize,
kVisibleRect,
natural_size,
- NULL,
- 0,
+ EmptyExtraData(),
false);
InitializeWithConfigWithResult(config, false);
}
@@ -292,8 +290,7 @@ TEST_F(FFmpegVideoDecoderTest, Initialize_AspectRatioDenominatorNegative) {
kCodedSize,
kVisibleRect,
natural_size,
- NULL,
- 0,
+ EmptyExtraData(),
false);
InitializeWithConfigWithResult(config, false);
}
@@ -309,8 +306,7 @@ TEST_F(FFmpegVideoDecoderTest, Initialize_AspectRatioNumeratorTooLarge) {
kCodedSize,
kVisibleRect,
natural_size,
- NULL,
- 0,
+ EmptyExtraData(),
false);
InitializeWithConfigWithResult(config, false);
}
@@ -327,8 +323,7 @@ TEST_F(FFmpegVideoDecoderTest, Initialize_AspectRatioDenominatorTooLarge) {
kCodedSize,
kVisibleRect,
natural_size,
- NULL,
- 0,
+ EmptyExtraData(),
false);
InitializeWithConfigWithResult(config, false);
}
diff --git a/chromium/media/filters/frame_processor_unittest.cc b/chromium/media/filters/frame_processor_unittest.cc
index ed4e715941e..4440de0191c 100644
--- a/chromium/media/filters/frame_processor_unittest.cc
+++ b/chromium/media/filters/frame_processor_unittest.cc
@@ -4,6 +4,7 @@
#include <map>
#include <string>
+#include <vector>
#include "base/bind.h"
#include "base/message_loop/message_loop.h"
@@ -12,6 +13,7 @@
#include "base/strings/string_util.h"
#include "base/time/time.h"
#include "media/base/media_log.h"
+#include "media/base/media_util.h"
#include "media/base/mock_filters.h"
#include "media/base/test_helpers.h"
#include "media/base/timestamp_constants.h"
@@ -282,13 +284,9 @@ class FrameProcessorTest : public testing::TestWithParam<bool> {
case DemuxerStream::AUDIO: {
ASSERT_FALSE(audio_);
audio_.reset(new ChunkDemuxerStream(DemuxerStream::AUDIO, true));
- AudioDecoderConfig decoder_config(kCodecVorbis,
- kSampleFormatPlanarF32,
- CHANNEL_LAYOUT_STEREO,
- 1000,
- NULL,
- 0,
- false);
+ AudioDecoderConfig decoder_config(kCodecVorbis, kSampleFormatPlanarF32,
+ CHANNEL_LAYOUT_STEREO, 1000,
+ EmptyExtraData(), false);
frame_processor_->OnPossibleAudioConfigUpdate(decoder_config);
ASSERT_TRUE(audio_->UpdateAudioConfig(decoder_config, new MediaLog()));
break;
diff --git a/chromium/media/filters/opus_audio_decoder.cc b/chromium/media/filters/opus_audio_decoder.cc
index c0fde498547..41e06fb98b0 100644
--- a/chromium/media/filters/opus_audio_decoder.cc
+++ b/chromium/media/filters/opus_audio_decoder.cc
@@ -358,7 +358,9 @@ bool OpusAudioDecoder::ConfigureDecoder() {
// Parse the Opus Extra Data.
OpusExtraData opus_extra_data;
- if (!ParseOpusExtraData(config_.extra_data(), config_.extra_data_size(),
+ if (!ParseOpusExtraData(config_.extra_data().empty() ? nullptr :
+ &config_.extra_data()[0],
+ config_.extra_data().size(),
config_,
&opus_extra_data))
return false;
diff --git a/chromium/media/filters/source_buffer_stream_unittest.cc b/chromium/media/filters/source_buffer_stream_unittest.cc
index bf15f328351..5d8dfd5d29b 100644
--- a/chromium/media/filters/source_buffer_stream_unittest.cc
+++ b/chromium/media/filters/source_buffer_stream_unittest.cc
@@ -6,6 +6,7 @@
#include <stdint.h>
#include <string>
+#include <vector>
#include "base/bind.h"
#include "base/bind_helpers.h"
@@ -15,6 +16,7 @@
#include "base/strings/string_util.h"
#include "media/base/data_buffer.h"
#include "media/base/media_log.h"
+#include "media/base/media_util.h"
#include "media/base/mock_media_log.h"
#include "media/base/test_helpers.h"
#include "media/base/text_track_config.h"
@@ -101,8 +103,7 @@ class SourceBufferStreamTest : public testing::Test {
kSampleFormatPlanarF32,
CHANNEL_LAYOUT_STEREO,
1000,
- NULL,
- 0,
+ EmptyExtraData(),
false,
base::TimeDelta(),
0);
@@ -3603,7 +3604,7 @@ TEST_F(SourceBufferStreamTest, SameTimestamp_Video_Overlap_3) {
// Test all the valid same timestamp cases for audio.
TEST_F(SourceBufferStreamTest, SameTimestamp_Audio) {
AudioDecoderConfig config(kCodecMP3, kSampleFormatF32, CHANNEL_LAYOUT_STEREO,
- 44100, NULL, 0, false);
+ 44100, EmptyExtraData(), false);
stream_.reset(new SourceBufferStream(config, media_log_, true));
Seek(0);
NewSegmentAppend("0K 0K 30K 30 60 60");
@@ -3614,7 +3615,7 @@ TEST_F(SourceBufferStreamTest, SameTimestamp_Audio_Invalid_1) {
EXPECT_MEDIA_LOG(ContainsSameTimestampAt30MillisecondsLog());
AudioDecoderConfig config(kCodecMP3, kSampleFormatF32, CHANNEL_LAYOUT_STEREO,
- 44100, NULL, 0, false);
+ 44100, EmptyExtraData(), false);
stream_.reset(new SourceBufferStream(config, media_log_, true));
Seek(0);
NewSegmentAppend_ExpectFailure("0K 30 30K 60");
@@ -4173,12 +4174,8 @@ TEST_F(SourceBufferStreamTest, Audio_SpliceFrame_ConfigChange) {
SetAudioStream();
- AudioDecoderConfig new_config(kCodecVorbis,
- kSampleFormatPlanarF32,
- CHANNEL_LAYOUT_MONO,
- 1000,
- NULL,
- 0,
+ AudioDecoderConfig new_config(kCodecVorbis, kSampleFormatPlanarF32,
+ CHANNEL_LAYOUT_MONO, 1000, EmptyExtraData(),
false);
ASSERT_NE(new_config.channel_layout(), audio_config_.channel_layout());
@@ -4220,7 +4217,7 @@ TEST_F(SourceBufferStreamTest, Audio_SpliceFrame_NoMillisecondSplices) {
video_config_ = TestVideoConfig::Invalid();
audio_config_.Initialize(kCodecVorbis, kSampleFormatPlanarF32,
- CHANNEL_LAYOUT_STEREO, 4000, NULL, 0, false,
+ CHANNEL_LAYOUT_STEREO, 4000, EmptyExtraData(), false,
base::TimeDelta(), 0);
stream_.reset(new SourceBufferStream(audio_config_, media_log_, true));
// Equivalent to 0.5ms per frame.
diff --git a/chromium/media/formats/mp2t/es_adapter_video_unittest.cc b/chromium/media/formats/mp2t/es_adapter_video_unittest.cc
index 396b6559a65..24feb8580d2 100644
--- a/chromium/media/formats/mp2t/es_adapter_video_unittest.cc
+++ b/chromium/media/formats/mp2t/es_adapter_video_unittest.cc
@@ -10,6 +10,7 @@
#include "base/logging.h"
#include "base/strings/string_util.h"
#include "base/time/time.h"
+#include "media/base/media_util.h"
#include "media/base/stream_parser_buffer.h"
#include "media/base/timestamp_constants.h"
#include "media/base/video_decoder_config.h"
@@ -27,7 +28,7 @@ VideoDecoderConfig CreateFakeVideoConfig() {
gfx::Size natural_size(320, 240);
return VideoDecoderConfig(kCodecH264, H264PROFILE_MAIN, PIXEL_FORMAT_I420,
COLOR_SPACE_UNSPECIFIED, coded_size, visible_rect,
- natural_size, NULL, 0, false);
+ natural_size, EmptyExtraData(), false);
}
StreamParserBuffer::BufferQueue
diff --git a/chromium/media/formats/mp2t/es_parser_adts.cc b/chromium/media/formats/mp2t/es_parser_adts.cc
index 9c57de19611..adf1dbe8ed1 100644
--- a/chromium/media/formats/mp2t/es_parser_adts.cc
+++ b/chromium/media/formats/mp2t/es_parser_adts.cc
@@ -4,6 +4,8 @@
#include "media/formats/mp2t/es_parser_adts.h"
+#include <vector>
+
#include "base/basictypes.h"
#include "base/logging.h"
#include "base/strings/string_number_conversions.h"
@@ -219,10 +221,9 @@ bool EsParserAdts::UpdateAudioConfiguration(const uint8* adts_header) {
(frequency_index << 7) +
// channel_configuration is [0..7], per early out above.
(channel_configuration << 3));
- uint8 extra_data[2] = {
- static_cast<uint8>(extra_data_int >> 8),
- static_cast<uint8>(extra_data_int & 0xff)
- };
+ std::vector<uint8_t> extra_data;
+ extra_data.push_back(static_cast<uint8>(extra_data_int >> 8));
+ extra_data.push_back(static_cast<uint8>(extra_data_int & 0xff));
AudioDecoderConfig audio_decoder_config(
kCodecAAC,
@@ -230,7 +231,6 @@ bool EsParserAdts::UpdateAudioConfiguration(const uint8* adts_header) {
kADTSChannelLayoutTable[channel_configuration],
extended_samples_per_second,
extra_data,
- arraysize(extra_data),
false);
if (!audio_decoder_config.Matches(last_audio_decoder_config_)) {
diff --git a/chromium/media/formats/mp2t/es_parser_h264.cc b/chromium/media/formats/mp2t/es_parser_h264.cc
index cbdec71de0d..8c5911230f0 100644
--- a/chromium/media/formats/mp2t/es_parser_h264.cc
+++ b/chromium/media/formats/mp2t/es_parser_h264.cc
@@ -280,8 +280,8 @@ bool EsParserH264::UpdateVideoDecoderConfig(const H264SPS* sps) {
VideoDecoderConfig video_decoder_config(
kCodecH264, VIDEO_CODEC_PROFILE_UNKNOWN, PIXEL_FORMAT_YV12,
- COLOR_SPACE_HD_REC709, coded_size, visible_rect, natural_size, NULL, 0,
- false);
+ COLOR_SPACE_HD_REC709, coded_size, visible_rect, natural_size,
+ std::vector<uint8_t>(), false);
if (!video_decoder_config.Matches(last_video_decoder_config_)) {
DVLOG(1) << "Profile IDC: " << sps->profile_idc;
diff --git a/chromium/media/formats/mp2t/es_parser_mpeg1audio.cc b/chromium/media/formats/mp2t/es_parser_mpeg1audio.cc
index aee4cba68c4..81abc2b85fb 100644
--- a/chromium/media/formats/mp2t/es_parser_mpeg1audio.cc
+++ b/chromium/media/formats/mp2t/es_parser_mpeg1audio.cc
@@ -4,6 +4,8 @@
#include "media/formats/mp2t/es_parser_mpeg1audio.h"
+#include <vector>
+
#include "base/basictypes.h"
#include "base/bind.h"
#include "base/logging.h"
@@ -173,7 +175,7 @@ bool EsParserMpeg1Audio::UpdateAudioConfiguration(
kSampleFormatS16,
header.channel_layout,
header.sample_rate,
- NULL, 0,
+ std::vector<uint8_t>(),
false);
if (!audio_decoder_config.Matches(last_audio_decoder_config_)) {
diff --git a/chromium/media/formats/mp4/mp4_stream_parser.cc b/chromium/media/formats/mp4/mp4_stream_parser.cc
index 18698b36c4a..78b7dcdae86 100644
--- a/chromium/media/formats/mp4/mp4_stream_parser.cc
+++ b/chromium/media/formats/mp4/mp4_stream_parser.cc
@@ -4,6 +4,8 @@
#include "media/formats/mp4/mp4_stream_parser.h"
+#include <vector>
+
#include "base/callback_helpers.h"
#include "base/logging.h"
#include "base/time/time.h"
@@ -266,10 +268,9 @@ bool MP4StreamParser::ParseMoov(BoxReader* reader) {
is_audio_track_encrypted_ = entry.sinf.info.track_encryption.is_encrypted;
DVLOG(1) << "is_audio_track_encrypted_: " << is_audio_track_encrypted_;
- audio_config.Initialize(
- codec, sample_format, channel_layout, sample_per_second,
- extra_data.size() ? &extra_data[0] : NULL, extra_data.size(),
- is_audio_track_encrypted_, base::TimeDelta(), 0);
+ audio_config.Initialize(codec, sample_format, channel_layout,
+ sample_per_second, extra_data,
+ is_audio_track_encrypted_, base::TimeDelta(), 0);
has_audio_ = true;
audio_track_id_ = track->header.track_id;
}
@@ -305,12 +306,12 @@ bool MP4StreamParser::ParseMoov(BoxReader* reader) {
is_video_track_encrypted_ = entry.sinf.info.track_encryption.is_encrypted;
DVLOG(1) << "is_video_track_encrypted_: " << is_video_track_encrypted_;
- video_config.Initialize(entry.video_codec, entry.video_codec_profile,
- PIXEL_FORMAT_YV12, COLOR_SPACE_HD_REC709,
- coded_size, visible_rect, natural_size,
- // No decoder-specific buffer needed for AVC;
- // SPS/PPS are embedded in the video stream
- NULL, 0, is_video_track_encrypted_);
+ video_config.Initialize(
+ entry.video_codec, entry.video_codec_profile, PIXEL_FORMAT_YV12,
+ COLOR_SPACE_HD_REC709, coded_size, visible_rect, natural_size,
+ // No decoder-specific buffer needed for AVC;
+ // SPS/PPS are embedded in the video stream
+ std::vector<uint8_t>(), is_video_track_encrypted_);
has_video_ = true;
video_track_id_ = track->header.track_id;
}
diff --git a/chromium/media/formats/mpeg/mpeg_audio_stream_parser_base.cc b/chromium/media/formats/mpeg/mpeg_audio_stream_parser_base.cc
index d9bf2b529ee..23032fa4784 100644
--- a/chromium/media/formats/mpeg/mpeg_audio_stream_parser_base.cc
+++ b/chromium/media/formats/mpeg/mpeg_audio_stream_parser_base.cc
@@ -207,8 +207,7 @@ int MPEGAudioStreamParserBase::ParseFrame(const uint8* data,
kSampleFormatF32,
channel_layout,
sample_rate,
- NULL,
- 0,
+ std::vector<uint8_t>(),
false,
base::TimeDelta(),
codec_delay_);
diff --git a/chromium/media/formats/webm/webm_audio_client.cc b/chromium/media/formats/webm/webm_audio_client.cc
index bde72332542..995746a4a10 100644
--- a/chromium/media/formats/webm/webm_audio_client.cc
+++ b/chromium/media/formats/webm/webm_audio_client.cc
@@ -66,13 +66,6 @@ bool WebMAudioClient::InitializeConfig(
sample_format = kSampleFormatF32;
}
- const uint8* extra_data = NULL;
- size_t extra_data_size = 0;
- if (codec_private.size() > 0) {
- extra_data = &codec_private[0];
- extra_data_size = codec_private.size();
- }
-
// Convert |codec_delay| from nanoseconds into frames.
int codec_delay_in_frames = 0;
if (codec_delay != -1) {
@@ -87,8 +80,7 @@ bool WebMAudioClient::InitializeConfig(
sample_format,
channel_layout,
samples_per_second,
- extra_data,
- extra_data_size,
+ codec_private,
is_encrypted,
base::TimeDelta::FromMicroseconds(
(seek_preroll != -1 ? seek_preroll : 0) / 1000),
diff --git a/chromium/media/formats/webm/webm_video_client.cc b/chromium/media/formats/webm/webm_video_client.cc
index 2d3f43b9ce7..29b7dca7421 100644
--- a/chromium/media/formats/webm/webm_video_client.cc
+++ b/chromium/media/formats/webm/webm_video_client.cc
@@ -88,16 +88,10 @@ bool WebMVideoClient::InitializeConfig(
return false;
}
gfx::Size natural_size = gfx::Size(display_width_, display_height_);
- const uint8* extra_data = NULL;
- size_t extra_data_size = 0;
- if (codec_private.size() > 0) {
- extra_data = &codec_private[0];
- extra_data_size = codec_private.size();
- }
config->Initialize(video_codec, profile, format, COLOR_SPACE_HD_REC709,
- coded_size, visible_rect, natural_size, extra_data,
- extra_data_size, is_encrypted);
+ coded_size, visible_rect, natural_size, codec_private,
+ is_encrypted);
return config->IsValidConfig();
}
diff --git a/chromium/media/media.gyp b/chromium/media/media.gyp
index 5a462e658df..a8428810d2d 100644
--- a/chromium/media/media.gyp
+++ b/chromium/media/media.gyp
@@ -328,6 +328,8 @@
'base/media_resources.h',
'base/media_switches.cc',
'base/media_switches.h',
+ 'base/media_util.cc',
+ 'base/media_util.h',
'base/mime_util.cc',
'base/mime_util.h',
'base/moving_average.cc',
diff --git a/chromium/media/mojo/services/media_type_converters.cc b/chromium/media/mojo/services/media_type_converters.cc
index 6dd84fb3bca..bcfab4997b6 100644
--- a/chromium/media/mojo/services/media_type_converters.cc
+++ b/chromium/media/mojo/services/media_type_converters.cc
@@ -419,10 +419,9 @@ media::interfaces::AudioDecoderConfigPtr TypeConverter<
config->channel_layout =
static_cast<media::interfaces::ChannelLayout>(input.channel_layout());
config->samples_per_second = input.samples_per_second();
- if (input.extra_data()) {
- std::vector<uint8_t> data(input.extra_data(),
- input.extra_data() + input.extra_data_size());
- config->extra_data.Swap(&data);
+ if (!input.extra_data().empty()) {
+ std::vector<uint8_t> extra_data = input.extra_data();
+ config->extra_data.Swap(&extra_data);
}
config->seek_preroll_usec = input.seek_preroll().InMicroseconds();
config->codec_delay = input.codec_delay();
@@ -440,10 +439,7 @@ TypeConverter<media::AudioDecoderConfig,
static_cast<media::AudioCodec>(input->codec),
static_cast<media::SampleFormat>(input->sample_format),
static_cast<media::ChannelLayout>(input->channel_layout),
- input->samples_per_second,
- input->extra_data.size() ? &input->extra_data.front() : NULL,
- input->extra_data.size(),
- input->is_encrypted,
+ input->samples_per_second, input->extra_data, input->is_encrypted,
base::TimeDelta::FromMicroseconds(input->seek_preroll_usec),
input->codec_delay);
return config;
@@ -465,11 +461,7 @@ media::interfaces::VideoDecoderConfigPtr TypeConverter<
config->coded_size = Size::From(input.coded_size());
config->visible_rect = Rect::From(input.visible_rect());
config->natural_size = Size::From(input.natural_size());
- if (input.extra_data()) {
- std::vector<uint8_t> data(input.extra_data(),
- input.extra_data() + input.extra_data_size());
- config->extra_data.Swap(&data);
- }
+ config->extra_data = mojo::Array<uint8>::From(input.extra_data());
config->is_encrypted = input.is_encrypted();
return config.Pass();
}
@@ -486,9 +478,8 @@ TypeConverter<media::VideoDecoderConfig,
static_cast<media::VideoPixelFormat>(input->format),
static_cast<media::ColorSpace>(input->color_space),
input->coded_size.To<gfx::Size>(), input->visible_rect.To<gfx::Rect>(),
- input->natural_size.To<gfx::Size>(),
- input->extra_data.size() ? &input->extra_data.front() : NULL,
- input->extra_data.size(), input->is_encrypted);
+ input->natural_size.To<gfx::Size>(), input->extra_data,
+ input->is_encrypted);
return config;
}
diff --git a/chromium/media/mojo/services/media_type_converters_unittest.cc b/chromium/media/mojo/services/media_type_converters_unittest.cc
index 54cd6655193..38559f3c6be 100644
--- a/chromium/media/mojo/services/media_type_converters_unittest.cc
+++ b/chromium/media/mojo/services/media_type_converters_unittest.cc
@@ -7,6 +7,7 @@
#include "media/base/audio_decoder_config.h"
#include "media/base/cdm_config.h"
#include "media/base/decoder_buffer.h"
+#include "media/base/media_util.h"
#include "testing/gtest/include/gtest/gtest.h"
namespace media {
@@ -121,22 +122,23 @@ TEST(MediaTypeConvertersTest, ConvertDecoderBuffer_EncryptedBuffer) {
// TODO(tim): Check other properties.
TEST(MediaTypeConvertersTest, ConvertAudioDecoderConfig_Normal) {
- const uint8 kExtraData[] = "config extra data";
- const int kExtraDataSize = arraysize(kExtraData);
+ const uint8_t kExtraData[] = "config extra data";
+ const std::vector<uint8_t> kExtraDataVector(
+ &kExtraData[0], &kExtraData[0] + arraysize(kExtraData));
+
AudioDecoderConfig config;
config.Initialize(kCodecAAC, kSampleFormatU8, CHANNEL_LAYOUT_SURROUND, 48000,
- reinterpret_cast<const uint8*>(&kExtraData), kExtraDataSize,
- false, base::TimeDelta(), 0);
+ kExtraDataVector, false, base::TimeDelta(), 0);
interfaces::AudioDecoderConfigPtr ptr(
interfaces::AudioDecoderConfig::From(config));
AudioDecoderConfig result(ptr.To<AudioDecoderConfig>());
EXPECT_TRUE(result.Matches(config));
}
-TEST(MediaTypeConvertersTest, ConvertAudioDecoderConfig_NullExtraData) {
+TEST(MediaTypeConvertersTest, ConvertAudioDecoderConfig_EmptyExtraData) {
AudioDecoderConfig config;
config.Initialize(kCodecAAC, kSampleFormatU8, CHANNEL_LAYOUT_SURROUND, 48000,
- NULL, 0, false, base::TimeDelta(), 0);
+ EmptyExtraData(), false, base::TimeDelta(), 0);
interfaces::AudioDecoderConfigPtr ptr(
interfaces::AudioDecoderConfig::From(config));
AudioDecoderConfig result(ptr.To<AudioDecoderConfig>());
@@ -146,7 +148,7 @@ TEST(MediaTypeConvertersTest, ConvertAudioDecoderConfig_NullExtraData) {
TEST(MediaTypeConvertersTest, ConvertAudioDecoderConfig_Encrypted) {
AudioDecoderConfig config;
config.Initialize(kCodecAAC, kSampleFormatU8, CHANNEL_LAYOUT_SURROUND, 48000,
- NULL, 0,
+ EmptyExtraData(),
true, // Is encrypted.
base::TimeDelta(), 0);
interfaces::AudioDecoderConfigPtr ptr(
diff --git a/chromium/media/renderers/audio_renderer_impl_unittest.cc b/chromium/media/renderers/audio_renderer_impl_unittest.cc
index 9e9bf87dcbe..2367c420f4a 100644
--- a/chromium/media/renderers/audio_renderer_impl_unittest.cc
+++ b/chromium/media/renderers/audio_renderer_impl_unittest.cc
@@ -13,6 +13,7 @@
#include "media/base/audio_splicer.h"
#include "media/base/fake_audio_renderer_sink.h"
#include "media/base/gmock_callback_support.h"
+#include "media/base/media_util.h"
#include "media/base/mock_filters.h"
#include "media/base/test_helpers.h"
#include "media/renderers/audio_renderer_impl.h"
@@ -69,8 +70,7 @@ class AudioRendererImplTest : public ::testing::Test {
kSampleFormat,
kChannelLayout,
kInputSamplesPerSecond,
- NULL,
- 0,
+ EmptyExtraData(),
false);
demuxer_stream_.set_audio_decoder_config(audio_config);
diff --git a/chromium/net/base/registry_controlled_domains/effective_tld_names.dat b/chromium/net/base/registry_controlled_domains/effective_tld_names.dat
index 165cc09520b..ce9ad58c7fe 100644
--- a/chromium/net/base/registry_controlled_domains/effective_tld_names.dat
+++ b/chromium/net/base/registry_controlled_domains/effective_tld_names.dat
@@ -1134,8 +1134,16 @@ web.id
ie
gov.ie
-// il : http://en.wikipedia.org/wiki/.il
-*.il
+// il : http://www.isoc.org.il/domains/
+il
+ac.il
+co.il
+gov.il
+idf.il
+k12.il
+muni.il
+net.il
+org.il
// im : https://www.nic.im/
// Submitted by registry <info@nic.im> 2013-11-15
@@ -6922,7 +6930,7 @@ web.za
*.zw
-// List of new gTLDs imported from https://newgtlds.icann.org/newgtlds.csv on 2015-09-25T01:37:01Z
+// List of new gTLDs imported from https://newgtlds.icann.org/newgtlds.csv on 2015-11-12T22:43:48Z
// aaa : 2015-02-26 American Automobile Association, Inc.
aaa
@@ -7191,6 +7199,9 @@ barefoot
// bargains : 2013-11-14 Half Hallow, LLC
bargains
+// baseball : 2015-10-29 MLB Advanced Media DH, LLC
+baseball
+
// basketball : 2015-08-20 Fédération Internationale de Basketball (FIBA)
basketball
@@ -7449,6 +7460,9 @@ casino
// catering : 2013-12-05 New Falls. LLC
catering
+// catholic : 2015-10-21 Pontificium Consilium de Comunicationibus Socialibus (PCCS) (Pontifical Council for Social Communication)
+catholic
+
// cba : 2014-06-26 COMMONWEALTH BANK OF AUSTRALIA
cba
@@ -7548,6 +7562,9 @@ click
// clinic : 2014-03-20 Goose Park, LLC
clinic
+// clinique : 2015-10-01 The Estée Lauder Companies Inc.
+clinique
+
// clothing : 2013-08-27 Steel Lake, LLC
clothing
@@ -7587,6 +7604,9 @@ community
// company : 2013-11-07 Silver Avenue, LLC
company
+// compare : 2015-10-08 iSelect Ltd
+compare
+
// computer : 2013-10-24 Pine Mill, LLC
computer
@@ -7761,6 +7781,9 @@ discover
// dish : 2015-07-30 Dish DBS Corporation
dish
+// diy : 2015-11-05 Lifestyle Domain Holdings, Inc.
+diy
+
// dnp : 2013-12-13 Dai Nippon Printing Co., Ltd.
dnp
@@ -8583,6 +8606,9 @@ ladbrokes
// lamborghini : 2015-06-04 Automobili Lamborghini S.p.A.
lamborghini
+// lamer : 2015-10-01 The Estée Lauder Companies Inc.
+lamer
+
// lancaster : 2015-02-12 LANCASTER
lancaster
@@ -9024,6 +9050,9 @@ ninja
// nissan : 2014-03-27 NISSAN MOTOR CO., LTD.
nissan
+// nissay : 2015-10-29 Nippon Life Insurance Company
+nissay
+
// nokia : 2015-01-08 Nokia Corporation
nokia
@@ -9117,6 +9146,9 @@ organic
// orientexpress : 2015-02-05 Belmond Ltd.
orientexpress
+// origins : 2015-10-01 The Estée Lauder Companies Inc.
+origins
+
// osaka : 2014-09-04 Interlink Co., Ltd.
osaka
@@ -9297,6 +9329,9 @@ prudential
// pub : 2013-12-12 United TLD Holdco Ltd.
pub
+// pwc : 2015-10-29 PricewaterhouseCoopers LLP
+pwc
+
// qpon : 2013-11-14 dotCOOL, Inc.
qpon
@@ -9543,6 +9578,9 @@ security
// seek : 2014-12-04 Seek Limited
seek
+// select : 2015-10-08 iSelect Ltd
+select
+
// sener : 2014-10-24 Sener Ingeniería y Sistemas, S.A.
sener
@@ -9693,7 +9731,7 @@ staples
// star : 2015-01-08 Star India Private Limited
star
-// starhub : 2015-02-05 StarHub Limited
+// starhub : 2015-02-05 StarHub Ltd
starhub
// statebank : 2015-03-12 STATE BANK OF INDIA
@@ -9957,6 +9995,9 @@ ubs
// uconnect : 2015-07-30 FCA US LLC.
uconnect
+// unicom : 2015-10-15 China United Network Communications Corporation Limited
+unicom
+
// university : 2014-03-06 Little Station, LLC
university
@@ -10152,6 +10193,9 @@ works
// world : 2014-06-12 Bitter Fields, LLC
world
+// wow : 2015-10-08 Amazon EU S.à r.l.
+wow
+
// wtc : 2013-12-19 World Trade Centers Association, Inc.
wtc
@@ -10230,6 +10274,9 @@ xin
// xn--80adxhks : 2013-12-19 Foundation for Assistance for Internet Technologies and Infrastructure Development (FAITID)
москва
+// xn--80aqecdr1a : 2015-10-21 Pontificium Consilium de Comunicationibus Socialibus (PCCS) (Pontifical Council for Social Communication)
+католик
+
// xn--80asehdb : 2013-07-14 CORE Association
онлайн
@@ -10314,6 +10361,9 @@ xin
// xn--gckr3f0f : 2015-02-26 Amazon EU S.à r.l.
クラウド
+// xn--gk3at1e : 2015-10-08 Amazon EU S.à r.l.
+通販
+
// xn--hxt814e : 2014-05-15 Zodiac Libra Limited
网店
@@ -10362,6 +10412,9 @@ xin
// xn--mgbca7dzdo : 2015-07-30 Abu Dhabi Systems and Information Centre
ابوظبي
+// xn--mgbi4ecexp : 2015-10-21 Pontificium Consilium de Comunicationibus Socialibus (PCCS) (Pontifical Council for Social Communication)
+كاثوليك
+
// xn--mgbt3dhd : 2014-09-04 Asia Green IT System Bilgisayar San. ve Tic. Ltd. Sti.
همراه
@@ -10416,6 +10469,9 @@ xin
// xn--tckwe : 2015-01-15 VeriSign Sarl
コム
+// xn--tiq49xqyj : 2015-10-21 Pontificium Consilium de Comunicationibus Socialibus (PCCS) (Pontifical Council for Social Communication)
+天主教
+
// xn--unup4y : 2013-07-14 Spring Fields, LLC
游戏
@@ -11133,6 +11189,10 @@ bmoattachments.org
// Submitted by Trung Tran <Trung.Tran@neustar.biz> 2015-04-23
4u.com
+// ngrok : https://ngrok.com/
+// Submitted by Alan Shreve <alan@ngrok.com> 2015-11-10
+ngrok.io
+
// NFSN, Inc. : https://www.NearlyFreeSpeech.NET/
// Submitted by Jeff Wheelhouse <support@nearlyfreespeech.net> 2014-02-02
nfshost.com
diff --git a/chromium/net/base/registry_controlled_domains/effective_tld_names.gperf b/chromium/net/base/registry_controlled_domains/effective_tld_names.gperf
index 21b685b1212..94ba5c0ba75 100644
--- a/chromium/net/base/registry_controlled_domains/effective_tld_names.gperf
+++ b/chromium/net/base/registry_controlled_domains/effective_tld_names.gperf
@@ -59,6 +59,7 @@ ac.cr, 0
ac.cy, 0
ac.gn, 0
ac.id, 0
+ac.il, 0
ac.im, 0
ac.in, 0
ac.ir, 0
@@ -511,6 +512,7 @@ barrel-of-knowledge.info, 4
barrell-of-knowledge.info, 4
barum.no, 0
bas.it, 0
+baseball, 0
baseball.museum, 0
basel.museum, 0
bashkiria.ru, 0
@@ -887,6 +889,7 @@ catania.it, 0
catanzaro.it, 0
catering, 0
catering.aero, 0
+catholic, 0
cb.it, 0
cba, 0
cbg.ru, 0
@@ -1078,6 +1081,7 @@ claims, 0
cleaning, 0
click, 0
clinic, 0
+clinique, 0
clinton.museum, 0
clock.museum, 0
clothing, 0
@@ -1120,6 +1124,7 @@ co.gl, 0
co.gy, 0
co.hu, 0
co.id, 0
+co.il, 0
co.im, 0
co.in, 0
co.ir, 0
@@ -1313,6 +1318,7 @@ community, 0
community.museum, 0
como.it, 0
company, 0
+compare, 0
compute-1.amazonaws.com, 4
compute.amazonaws.cn, 4
compute.amazonaws.com, 4
@@ -1481,6 +1487,7 @@ discovery.museum, 0
dish, 0
divtasvuodna.no, 0
divttasvuotna.no, 0
+diy, 0
dj, 0
dk, 0
dk.eu.org, 4
@@ -2348,6 +2355,7 @@ gov.gn, 0
gov.gr, 0
gov.hk, 0
gov.ie, 0
+gov.il, 0
gov.in, 0
gov.iq, 0
gov.ir, 0
@@ -2827,6 +2835,7 @@ id.lv, 0
id.ly, 0
id.us, 0
ide.kyoto.jp, 0
+idf.il, 0
idrett.no, 0
idv.hk, 0
idv.tw, 0
@@ -2859,7 +2868,7 @@ iki.fi, 4
iki.nagasaki.jp, 0
ikoma.nara.jp, 0
ikusaka.nagano.jp, 0
-il, 2
+il, 0
il.eu.org, 4
il.us, 0
ilawa.pl, 0
@@ -3239,6 +3248,7 @@ k12.ga.us, 0
k12.gu.us, 0
k12.ia.us, 0
k12.id.us, 0
+k12.il, 0
k12.il.us, 0
k12.in.us, 0
k12.ks.us, 0
@@ -3721,6 +3731,7 @@ lahppi.no, 0
lajolla.museum, 0
lakas.hu, 0
lamborghini, 0
+lamer, 0
lanbib.se, 0
lancashire.museum, 0
lancaster, 0
@@ -4409,6 +4420,7 @@ mulhouse.museum, 0
multichoice, 0
munakata.fukuoka.jp, 0
muncie.museum, 0
+muni.il, 0
muosat.no, 0
mup.gov.pl, 0
murakami.niigata.jp, 0
@@ -4658,6 +4670,7 @@ net.hk, 0
net.hn, 0
net.ht, 0
net.id, 0
+net.il, 0
net.im, 0
net.in, 0
net.iq, 0
@@ -4765,6 +4778,7 @@ ngo, 0
ngo.lk, 0
ngo.ph, 0
ngo.za, 0
+ngrok.io, 4
nh.us, 0
nhk, 0
nhs.uk, 0
@@ -4816,6 +4830,7 @@ nishiokoppe.hokkaido.jp, 0
nishitosa.kochi.jp, 0
nishiwaki.hyogo.jp, 0
nissan, 0
+nissay, 0
nissedal.no, 0
nisshin.aichi.jp, 0
nittedal.no, 0
@@ -5144,6 +5159,7 @@ org.hk, 0
org.hn, 0
org.ht, 0
org.hu, 0
+org.il, 0
org.im, 0
org.in, 0
org.iq, 0
@@ -5235,6 +5251,7 @@ org.ws, 0
org.za, 0
organic, 0
orientexpress, 0
+origins, 0
oristano.it, 0
orkanger.no, 0
orkdal.no, 0
@@ -5556,6 +5573,7 @@ pv.it, 0
pvt.ge, 0
pvt.k12.ma.us, 0
pw, 0
+pwc, 0
py, 0
pyatigorsk.ru, 0
pz.it, 0
@@ -5959,6 +5977,7 @@ sekigahara.gifu.jp, 0
sekikawa.niigata.jp, 0
sel.no, 0
selbu.no, 0
+select, 0
selfip.biz, 4
selfip.com, 4
selfip.info, 4
@@ -6874,6 +6893,7 @@ umig.gov.pl, 0
unazuki.toyama.jp, 0
unbi.ba, 0
undersea.museum, 0
+unicom, 0
union.aero, 0
univ.sn, 0
university, 0
@@ -7194,6 +7214,7 @@ works.aero, 0
workshop.museum, 0
world, 0
worse-than.tv, 4
+wow, 0
writesthisblog.com, 4
wroc.pl, 4
wroclaw.pl, 0
@@ -7257,6 +7278,7 @@ xn--6qq986b3xl, 0
xn--7t0a264c.jp, 0
xn--80adxhks, 0
xn--80ao21a, 0
+xn--80aqecdr1a, 0
xn--80asehdb, 0
xn--80aswg, 0
xn--80au.xn--90a3ac, 0
@@ -7352,6 +7374,7 @@ xn--ggaviika-8ya47h.no, 0
xn--gildeskl-g0a.no, 0
xn--givuotna-8ya.no, 0
xn--gjvik-wua.no, 0
+xn--gk3at1e, 0
xn--gls-elac.no, 0
xn--gmq050i.hk, 0
xn--gmqw5a.hk, 0
@@ -7449,6 +7472,7 @@ xn--mgbc0a9azcg, 0
xn--mgbca7dzdo, 0
xn--mgberp4a5d4a87g, 0
xn--mgberp4a5d4ar, 0
+xn--mgbi4ecexp, 0
xn--mgbpl2fh, 0
xn--mgbqly7c0a67fbc, 0
xn--mgbqly7cvafr, 0
@@ -7565,6 +7589,7 @@ xn--stjrdalshalsen-sqb.no, 0
xn--stre-toten-zcb.no, 0
xn--t60b56a, 0
xn--tckwe, 0
+xn--tiq49xqyj, 0
xn--tjme-hra.no, 0
xn--tn0ag.hk, 0
xn--tnsberg-q1a.no, 0
diff --git a/chromium/net/quic/quic_stream_factory.cc b/chromium/net/quic/quic_stream_factory.cc
index 62fd664968e..cf32df9ddb3 100644
--- a/chromium/net/quic/quic_stream_factory.cc
+++ b/chromium/net/quic/quic_stream_factory.cc
@@ -711,13 +711,16 @@ int QuicStreamFactory::Create(const HostPortPair& host_port_pair,
const BoundNetLog& net_log,
QuicStreamRequest* request) {
QuicServerId server_id(host_port_pair, is_https, privacy_mode);
- SessionMap::iterator it = active_sessions_.find(server_id);
- if (it != active_sessions_.end()) {
- QuicChromiumClientSession* session = it->second;
- if (!session->CanPool(origin_host.as_string(), privacy_mode))
- return ERR_ALTERNATIVE_CERT_NOT_VALID_FOR_ORIGIN;
- request->set_stream(CreateFromSession(session));
- return OK;
+ // TODO(rtenneti): crbug.com/498823 - delete active_sessions_.empty() checks.
+ if (!active_sessions_.empty()) {
+ SessionMap::iterator it = active_sessions_.find(server_id);
+ if (it != active_sessions_.end()) {
+ QuicChromiumClientSession* session = it->second;
+ if (!session->CanPool(origin_host.as_string(), privacy_mode))
+ return ERR_ALTERNATIVE_CERT_NOT_VALID_FOR_ORIGIN;
+ request->set_stream(CreateFromSession(session));
+ return OK;
+ }
}
if (HasActiveJob(server_id)) {
@@ -764,8 +767,14 @@ int QuicStreamFactory::Create(const HostPortPair& host_port_pair,
return rv;
}
if (rv == OK) {
- it = active_sessions_.find(server_id);
+ // TODO(rtenneti): crbug.com/498823 - revert active_sessions_.empty()
+ // related changes.
+ if (active_sessions_.empty())
+ return ERR_QUIC_PROTOCOL_ERROR;
+ SessionMap::iterator it = active_sessions_.find(server_id);
DCHECK(it != active_sessions_.end());
+ if (it == active_sessions_.end())
+ return ERR_QUIC_PROTOCOL_ERROR;
QuicChromiumClientSession* session = it->second;
if (!session->CanPool(origin_host.as_string(), privacy_mode))
return ERR_ALTERNATIVE_CERT_NOT_VALID_FOR_ORIGIN;
@@ -1165,6 +1174,9 @@ void QuicStreamFactory::OnCACertChanged(const X509Certificate* cert) {
bool QuicStreamFactory::HasActiveSession(
const QuicServerId& server_id) const {
+ // TODO(rtenneti): crbug.com/498823 - delete active_sessions_.empty() check.
+ if (active_sessions_.empty())
+ return false;
return ContainsKey(active_sessions_, server_id);
}
diff --git a/chromium/ppapi/cpp/private/find_private.cc b/chromium/ppapi/cpp/private/find_private.cc
index 2765ae02eb1..97a02bc1a78 100644
--- a/chromium/ppapi/cpp/private/find_private.cc
+++ b/chromium/ppapi/cpp/private/find_private.cc
@@ -26,6 +26,10 @@ PP_Bool StartFind(PP_Instance instance,
void* object = Instance::GetPerInstanceObject(instance, kPPPFindInterface);
if (!object)
return PP_FALSE;
+ if (!text || text[0] == '\0') {
+ PP_NOTREACHED();
+ return PP_FALSE;
+ }
bool return_value = static_cast<Find_Private*>(object)->StartFind(
text, PP_ToBool(case_sensitive));
return PP_FromBool(return_value);
diff --git a/chromium/ppapi/ppapi_sources.gypi b/chromium/ppapi/ppapi_sources.gypi
index ea7ccbb9e73..99ce36255af 100644
--- a/chromium/ppapi/ppapi_sources.gypi
+++ b/chromium/ppapi/ppapi_sources.gypi
@@ -534,6 +534,8 @@
'tests/test_char_set.h',
'tests/test_crypto.cc',
'tests/test_crypto.h',
+ 'tests/test_file_chooser.cc',
+ 'tests/test_file_chooser.h',
'tests/test_flash.cc',
'tests/test_flash.h',
'tests/test_flash_clipboard.cc',
diff --git a/chromium/skia/skia.gyp b/chromium/skia/skia.gyp
index b03c3b29ebc..ce0aae18f99 100644
--- a/chromium/skia/skia.gyp
+++ b/chromium/skia/skia.gyp
@@ -13,6 +13,13 @@
{
'target_name': 'skia_library',
'type': 'static_library',
+ # The optimize: 'max' scattered throughout are particularly
+ # important when compiled by MSVC 2013, which seems
+ # to mis-link-time-compile code that's built with
+ # different optimization levels. http://crbug.com/543583
+ 'variables': {
+ 'optimize': 'max',
+ },
'includes': [
'skia_common.gypi',
'skia_library.gypi',
@@ -29,6 +36,13 @@
'targets': [
{
'target_name': 'skia',
+ # The optimize: 'max' scattered throughout are particularly
+ # important when compiled by MSVC 2013, which seems
+ # to mis-link-time-compile code that's built with
+ # different optimization levels. http://crbug.com/543583
+ 'variables': {
+ 'optimize': 'max',
+ },
'type': 'none',
'dependencies': [
'skia_library',
@@ -63,6 +77,13 @@
'targets': [
{
'target_name': 'skia',
+ # The optimize: 'max' scattered throughout are particularly
+ # important when compiled by MSVC 2013, which seems
+ # to mis-link-time-compile code that's built with
+ # different optimization levels. http://crbug.com/543583
+ 'variables': {
+ 'optimize': 'max',
+ },
'type': 'shared_library',
'includes': [
# Include skia_common.gypi first since it contains filename
@@ -108,6 +129,13 @@
'targets': [
{
'target_name': 'image_operations_bench',
+ # The optimize: 'max' scattered throughout are particularly
+ # important when compiled by MSVC 2013, which seems
+ # to mis-link-time-compile code that's built with
+ # different optimization levels. http://crbug.com/543583
+ 'variables': {
+ 'optimize': 'max',
+ },
'type': 'executable',
'dependencies': [
'../base/base.gyp:base',
@@ -123,6 +151,13 @@
{
'target_name': 'filter_fuzz_stub',
'type': 'executable',
+ # The optimize: 'max' scattered throughout are particularly
+ # important when compiled by MSVC 2013, which seems
+ # to mis-link-time-compile code that's built with
+ # different optimization levels. http://crbug.com/543583
+ 'variables': {
+ 'optimize': 'max',
+ },
'dependencies': [
'../base/base.gyp:base',
'../base/base.gyp:test_support_base',
@@ -138,6 +173,13 @@
{
'target_name': 'skia_mojo',
'type': 'static_library',
+ # The optimize: 'max' scattered throughout are particularly
+ # important when compiled by MSVC 2013, which seems
+ # to mis-link-time-compile code that's built with
+ # different optimization levels. http://crbug.com/543583
+ 'variables': {
+ 'optimize': 'max',
+ },
'dependencies': [
'skia',
'../base/base.gyp:base',
diff --git a/chromium/skia/skia_library_opts.gyp b/chromium/skia/skia_library_opts.gyp
index 35eec1b983c..85fdcb3df3e 100644
--- a/chromium/skia/skia_library_opts.gyp
+++ b/chromium/skia/skia_library_opts.gyp
@@ -28,6 +28,13 @@
{
'target_name': 'skia_opts',
'type': 'static_library',
+ # The optimize: 'max' scattered throughout are particularly
+ # important when compiled by MSVC 2013, which seems
+ # to mis-link-time-compile code that's built with
+ # different optimization levels. http://crbug.com/543583
+ 'variables': {
+ 'optimize': 'max',
+ },
'includes': [
'skia_common.gypi',
'../build/android/increase_size_for_speed.gypi',
@@ -102,6 +109,13 @@
{
'target_name': 'skia_opts_ssse3',
'type': 'static_library',
+ # The optimize: 'max' scattered throughout are particularly
+ # important when compiled by MSVC 2013, which seems
+ # to mis-link-time-compile code that's built with
+ # different optimization levels. http://crbug.com/543583
+ 'variables': {
+ 'optimize': 'max',
+ },
'includes': [
'skia_common.gypi',
'../build/android/increase_size_for_speed.gypi',
@@ -139,6 +153,13 @@
{
'target_name': 'skia_opts_sse41',
'type': 'static_library',
+ # The optimize: 'max' scattered throughout are particularly
+ # important when compiled by MSVC 2013, which seems
+ # to mis-link-time-compile code that's built with
+ # different optimization levels. http://crbug.com/543583
+ 'variables': {
+ 'optimize': 'max',
+ },
'includes': [
'skia_common.gypi',
'../build/android/increase_size_for_speed.gypi',
@@ -169,6 +190,13 @@
{
'target_name': 'skia_opts_none',
'type': 'static_library',
+ # The optimize: 'max' scattered throughout are particularly
+ # important when compiled by MSVC 2013, which seems
+ # to mis-link-time-compile code that's built with
+ # different optimization levels. http://crbug.com/543583
+ 'variables': {
+ 'optimize': 'max',
+ },
'includes': [
'skia_common.gypi',
'../build/android/increase_size_for_speed.gypi',
diff --git a/chromium/testing/xvfb.py b/chromium/testing/xvfb.py
index 62815b2e789..2b17d965d32 100755
--- a/chromium/testing/xvfb.py
+++ b/chromium/testing/xvfb.py
@@ -83,7 +83,7 @@ def start_xvfb(env, build_dir, xvfb_path='Xvfb', display=':9'):
openbox_proc = None
try:
- xvfb_cmd = [xvfb_path, display, '-screen', '0', '1024x768x24', '-ac',
+ xvfb_cmd = [xvfb_path, display, '-screen', '0', '1280x800x24', '-ac',
'-nolisten', 'tcp', '-dpi', '96']
xvfb_proc = subprocess.Popen(xvfb_cmd, stdout=subprocess.PIPE,
stderr=subprocess.STDOUT)
diff --git a/chromium/third_party/WebKit/Source/core/dom/ContainerNode.cpp b/chromium/third_party/WebKit/Source/core/dom/ContainerNode.cpp
index 69d48678008..d48a00fe39b 100644
--- a/chromium/third_party/WebKit/Source/core/dom/ContainerNode.cpp
+++ b/chromium/third_party/WebKit/Source/core/dom/ContainerNode.cpp
@@ -835,8 +835,8 @@ void ContainerNode::notifyNodeInsertedInternal(Node& root, NodeVector& postInser
for (Node& node : NodeTraversal::inclusiveDescendantsOf(root)) {
// As an optimization we don't notify leaf nodes when when inserting
- // into detached subtrees.
- if (!inDocument() && !node.isContainerNode())
+ // into detached subtrees that are not in a shadow tree.
+ if (!inDocument() && !isInShadowTree() && !node.isContainerNode())
continue;
if (Node::InsertionShouldCallDidNotifySubtreeInsertions == node.insertedInto(this))
postInsertionNotificationTargets.append(&node);
@@ -935,12 +935,15 @@ bool ContainerNode::getUpperLeftCorner(FloatPoint& point) const
if (p->node() && p->node() == this && o->isText() && !o->isBR() && !toLayoutText(o)->hasTextBoxes()) {
// Do nothing - skip unrendered whitespace that is a child or next sibling of the anchor.
+ // FIXME: This fails to skip a whitespace sibling when there was also a whitespace child (because p has moved).
} else if ((o->isText() && !o->isBR()) || o->isReplaced()) {
point = FloatPoint();
- if (o->isText() && toLayoutText(o)->firstTextBox()) {
- point.move(toLayoutText(o)->linesBoundingBox().x(), toLayoutText(o)->firstTextBox()->root().lineTop().toFloat());
+ if (o->isText()) {
+ if (toLayoutText(o)->firstTextBox())
+ point.move(toLayoutText(o)->linesBoundingBox().x(), toLayoutText(o)->firstTextBox()->root().lineTop().toFloat());
point = o->localToAbsolute(point, UseTransforms);
- } else if (o->isBox()) {
+ } else {
+ ASSERT(o->isBox());
LayoutBox* box = toLayoutBox(o);
point.moveBy(box->location());
point = o->container()->localToAbsolute(point, UseTransforms);
diff --git a/chromium/third_party/WebKit/Source/core/dom/Document.cpp b/chromium/third_party/WebKit/Source/core/dom/Document.cpp
index fe2806a36f0..68fd1ca1d44 100644
--- a/chromium/third_party/WebKit/Source/core/dom/Document.cpp
+++ b/chromium/third_party/WebKit/Source/core/dom/Document.cpp
@@ -986,6 +986,7 @@ PassRefPtrWillBeRawPtr<Node> Document::adoptNode(PassRefPtrWillBeRawPtr<Node> so
source->parentNode()->removeChild(source.get(), exceptionState);
if (exceptionState.hadException())
return nullptr;
+ RELEASE_ASSERT(!source->parentNode());
}
}
@@ -1721,8 +1722,16 @@ void Document::updateLayoutTree(StyleRecalcChange change)
if (!view() || !isActive())
return;
- if (change != Force && !needsLayoutTreeUpdate())
+ if (change != Force && !needsLayoutTreeUpdate()) {
+ if (lifecycle().state() < DocumentLifecycle::StyleClean) {
+ // needsLayoutTreeUpdate may change to false without any actual layout tree update.
+ // For example, needsAnimationTimingUpdate may change to false when time elapses.
+ // Advance lifecycle to StyleClean because style is actually clean now.
+ lifecycle().advanceTo(DocumentLifecycle::InStyleRecalc);
+ lifecycle().advanceTo(DocumentLifecycle::StyleClean);
+ }
return;
+ }
if (inStyleRecalc())
return;
@@ -2145,7 +2154,17 @@ void Document::detach(const AttachContext& context)
if (!isActive())
return;
+ // Frame navigation can cause a new Document to be attached. Don't allow that, since that will
+ // cause a situation where LocalFrame still has a Document attached after this finishes!
+ // Normally, it shouldn't actually be possible to trigger navigation here. However, plugins
+ // (see below) can cause lots of crazy things to happen, since plugin detach involves nested
+ // message loops.
+ FrameNavigationDisabler navigationDisabler(*m_frame);
+ // Defer widget updates to avoid plugins trying to run script inside ScriptForbiddenScope,
+ // which will crash the renderer after https://crrev.com/200984
HTMLFrameOwnerElement::UpdateSuspendScope suspendWidgetHierarchyUpdates;
+ // Don't allow script to run in the middle of detach() because a detaching Document is not in a
+ // consistent state.
ScriptForbiddenScope forbidScript;
view()->dispose();
m_markers->prepareForDestruction();
diff --git a/chromium/third_party/WebKit/Source/core/dom/Element.h b/chromium/third_party/WebKit/Source/core/dom/Element.h
index 61a4cc34516..32f02125b20 100644
--- a/chromium/third_party/WebKit/Source/core/dom/Element.h
+++ b/chromium/third_party/WebKit/Source/core/dom/Element.h
@@ -804,7 +804,7 @@ inline Node::InsertionNotificationRequest Node::insertedInto(ContainerNode* inse
{
ASSERT(!childNeedsStyleInvalidation());
ASSERT(!needsStyleInvalidation());
- ASSERT(insertionPoint->inDocument() || isContainerNode());
+ ASSERT(insertionPoint->inDocument() || insertionPoint->isInShadowTree() || isContainerNode());
if (insertionPoint->inDocument()) {
setFlag(InDocumentFlag);
insertionPoint->document().incrementNodeCount();
diff --git a/chromium/third_party/WebKit/Source/core/editing/PositionIterator.cpp b/chromium/third_party/WebKit/Source/core/editing/PositionIterator.cpp
index a7b7258df5f..4943b0a9a9a 100644
--- a/chromium/third_party/WebKit/Source/core/editing/PositionIterator.cpp
+++ b/chromium/third_party/WebKit/Source/core/editing/PositionIterator.cpp
@@ -28,12 +28,25 @@
namespace blink {
+static const int kInvalidOffset = -1;
+
template <typename Strategy>
PositionIteratorAlgorithm<Strategy>::PositionIteratorAlgorithm(Node* anchorNode, int offsetInAnchor)
: m_anchorNode(anchorNode)
, m_nodeAfterPositionInAnchor(Strategy::childAt(*anchorNode, offsetInAnchor))
, m_offsetInAnchor(m_nodeAfterPositionInAnchor ? 0 : offsetInAnchor)
+ , m_depthToAnchorNode(0)
+ , m_domTreeVersion(anchorNode->document().domTreeVersion())
{
+ for (Node* node = Strategy::parent(*anchorNode); node; node = Strategy::parent(*node)) {
+ // Each m_offsetsInAnchorNode[offset] should be an index of node in
+ // parent, but delay to calculate the index until it is needed for
+ // performance.
+ m_offsetsInAnchorNode.append(kInvalidOffset);
+ ++m_depthToAnchorNode;
+ }
+ if (m_nodeAfterPositionInAnchor)
+ m_offsetsInAnchorNode.append(offsetInAnchor);
}
template <typename Strategy>
PositionIteratorAlgorithm<Strategy>::PositionIteratorAlgorithm(const PositionTemplate<Strategy>& pos)
@@ -46,18 +59,23 @@ PositionIteratorAlgorithm<Strategy>::PositionIteratorAlgorithm()
: m_anchorNode(nullptr)
, m_nodeAfterPositionInAnchor(nullptr)
, m_offsetInAnchor(0)
+ , m_depthToAnchorNode(0)
+ , m_domTreeVersion(0)
{
}
template <typename Strategy>
PositionTemplate<Strategy> PositionIteratorAlgorithm<Strategy>::deprecatedComputePosition() const
{
+ // TODO(yoichio): Share code to check domTreeVersion with EphemeralRange.
+ ASSERT(isValid());
if (m_nodeAfterPositionInAnchor) {
ASSERT(Strategy::parent(*m_nodeAfterPositionInAnchor) == m_anchorNode);
+ ASSERT(m_offsetsInAnchorNode[m_depthToAnchorNode] != kInvalidOffset);
// FIXME: This check is inadaquete because any ancestor could be ignored by editing
if (Strategy::editingIgnoresContent(Strategy::parent(*m_nodeAfterPositionInAnchor)))
return PositionTemplate<Strategy>::beforeNode(m_anchorNode);
- return PositionTemplate<Strategy>::inParentBeforeNode(*m_nodeAfterPositionInAnchor);
+ return PositionTemplate<Strategy>(m_anchorNode, m_offsetsInAnchorNode[m_depthToAnchorNode]);
}
if (Strategy::hasChildren(*m_anchorNode))
return PositionTemplate<Strategy>::lastPositionInOrAfterNode(m_anchorNode);
@@ -67,37 +85,100 @@ PositionTemplate<Strategy> PositionIteratorAlgorithm<Strategy>::deprecatedComput
template <typename Strategy>
PositionTemplate<Strategy> PositionIteratorAlgorithm<Strategy>::computePosition() const
{
+ ASSERT(isValid());
+ // Assume that we have the following DOM tree:
+ // A
+ // |-B
+ // | |-E
+ // | +-F
+ // |
+ // |-C
+ // +-D
+ // |-G
+ // +-H
if (m_nodeAfterPositionInAnchor) {
+ // For example, position is before E, F.
ASSERT(Strategy::parent(*m_nodeAfterPositionInAnchor) == m_anchorNode);
- return PositionTemplate<Strategy>::inParentBeforeNode(*m_nodeAfterPositionInAnchor);
+ ASSERT(m_offsetsInAnchorNode[m_depthToAnchorNode] != kInvalidOffset);
+ // TODO(yoichio): This should be equivalent to
+ // PositionTemplate<Strategy>(m_anchorNode, PositionAnchorType::BeforeAnchor);
+ return PositionTemplate<Strategy>(m_anchorNode, m_offsetsInAnchorNode[m_depthToAnchorNode]);
}
if (Strategy::hasChildren(*m_anchorNode))
+ // For example, position is the end of B.
return PositionTemplate<Strategy>::lastPositionInOrAfterNode(m_anchorNode);
if (m_anchorNode->isTextNode())
return PositionTemplate<Strategy>(m_anchorNode, m_offsetInAnchor);
if (m_offsetInAnchor)
+ // For example, position is after G.
return PositionTemplate<Strategy>(m_anchorNode, PositionAnchorType::AfterAnchor);
+ // For example, position is before G.
return PositionTemplate<Strategy>(m_anchorNode, PositionAnchorType::BeforeAnchor);
}
template <typename Strategy>
void PositionIteratorAlgorithm<Strategy>::increment()
{
+ ASSERT(isValid());
if (!m_anchorNode)
return;
+ // Assume that we have the following DOM tree:
+ // A
+ // |-B
+ // | |-E
+ // | +-F
+ // |
+ // |-C
+ // +-D
+ // |-G
+ // +-H
+ // Let |anchor| as |m_anchorNode| and
+ // |child| as |m_nodeAfterPositionInAnchor|.
if (m_nodeAfterPositionInAnchor) {
+ // Case #1: Move to position before the first child of
+ // |m_nodeAfterPositionInAnchor|.
+ // This is a point just before |child|.
+ // Let |anchor| is A and |child| is B,
+ // then next |anchor| is B and |child| is E.
m_anchorNode = m_nodeAfterPositionInAnchor;
m_nodeAfterPositionInAnchor = Strategy::firstChild(*m_anchorNode);
m_offsetInAnchor = 0;
+ // Increment depth intializing with 0.
+ ++m_depthToAnchorNode;
+ if (m_depthToAnchorNode == m_offsetsInAnchorNode.size())
+ m_offsetsInAnchorNode.append(0);
+ else
+ m_offsetsInAnchorNode[m_depthToAnchorNode] = 0;
return;
}
if (m_anchorNode->layoutObject() && !Strategy::hasChildren(*m_anchorNode) && m_offsetInAnchor < Strategy::lastOffsetForEditing(m_anchorNode)) {
+ // Case #2. This is the next of Case #1 or #2 itself.
+ // Position is (|anchor|, |m_offsetInAchor|).
+ // In this case |anchor| is a leaf(E,F,C,G or H) and
+ // |m_offsetInAnchor| is not on the end of |anchor|.
+ // Then just increment |m_offsetInAnchor|.
m_offsetInAnchor = uncheckedNextOffset(m_anchorNode, m_offsetInAnchor);
} else {
+ // Case #3. This is the next of Case #2 or #3.
+ // Position is the end of |anchor|.
+ // 3-a. If |anchor| has next sibling (let E),
+ // next |anchor| is B and |child| is F (next is Case #1.)
+ // 3-b. If |anchor| doesn't have next sibling (let F),
+ // next |anchor| is B and |child| is null. (next is Case #3.)
m_nodeAfterPositionInAnchor = m_anchorNode;
m_anchorNode = Strategy::parent(*m_nodeAfterPositionInAnchor);
+ if (!m_anchorNode)
+ return;
+ ASSERT(m_depthToAnchorNode > 0);
+ --m_depthToAnchorNode;
+ // Increment offset of |child| or initialize if it have never been
+ // used.
+ if (m_offsetsInAnchorNode[m_depthToAnchorNode] == kInvalidOffset)
+ m_offsetsInAnchorNode[m_depthToAnchorNode] = Strategy::index(*m_nodeAfterPositionInAnchor) + 1;
+ else
+ ++m_offsetsInAnchorNode[m_depthToAnchorNode];
m_nodeAfterPositionInAnchor = Strategy::nextSibling(*m_nodeAfterPositionInAnchor);
m_offsetInAnchor = 0;
}
@@ -106,31 +187,100 @@ void PositionIteratorAlgorithm<Strategy>::increment()
template <typename Strategy>
void PositionIteratorAlgorithm<Strategy>::decrement()
{
+ ASSERT(isValid());
if (!m_anchorNode)
return;
+ // Assume that we have the following DOM tree:
+ // A
+ // |-B
+ // | |-E
+ // | +-F
+ // |
+ // |-C
+ // +-D
+ // |-G
+ // +-H
+ // Let |anchor| as |m_anchorNode| and
+ // |child| as |m_nodeAfterPositionInAnchor|.
+ // decrement() is complex but logically reverse of increment(), of course:)
if (m_nodeAfterPositionInAnchor) {
m_anchorNode = Strategy::previousSibling(*m_nodeAfterPositionInAnchor);
if (m_anchorNode) {
+ // Case #1-a. This is a revese of increment()::Case#3-a.
+ // |child| has a previous sibling.
+ // Let |anchor| is B and |child| is F,
+ // next |anchor| is E and |child| is null.
m_nodeAfterPositionInAnchor = nullptr;
m_offsetInAnchor = Strategy::hasChildren(*m_anchorNode) ? 0 : Strategy::lastOffsetForEditing(m_anchorNode);
+ // Decrement offset of |child| or initialize if it have never been
+ // used.
+ if (m_offsetsInAnchorNode[m_depthToAnchorNode] == kInvalidOffset)
+ m_offsetsInAnchorNode[m_depthToAnchorNode] = Strategy::index(*m_nodeAfterPositionInAnchor);
+ else
+ --m_offsetsInAnchorNode[m_depthToAnchorNode];
+ ASSERT(m_offsetsInAnchorNode[m_depthToAnchorNode] >= 0);
+ // Increment depth intializing with last offset.
+ ++m_depthToAnchorNode;
+ if (m_depthToAnchorNode >= m_offsetsInAnchorNode.size())
+ m_offsetsInAnchorNode.append(m_offsetInAnchor);
+ else
+ m_offsetsInAnchorNode[m_depthToAnchorNode] = m_offsetInAnchor;
+ return;
} else {
+ // Case #1-b. This is a revese of increment()::Case#1.
+ // |child| doesn't have a previous sibling.
+ // Let |anchor| is B and |child| is E,
+ // next |anchor| is A and |child| is B.
m_nodeAfterPositionInAnchor = Strategy::parent(*m_nodeAfterPositionInAnchor);
m_anchorNode = Strategy::parent(*m_nodeAfterPositionInAnchor);
+ if (!m_anchorNode)
+ return;
m_offsetInAnchor = 0;
+ // Decrement depth and intialize if needs.
+ ASSERT(m_depthToAnchorNode > 0);
+ --m_depthToAnchorNode;
+ if (m_offsetsInAnchorNode[m_depthToAnchorNode] == kInvalidOffset)
+ m_offsetsInAnchorNode[m_depthToAnchorNode] = Strategy::index(*m_nodeAfterPositionInAnchor);
}
return;
}
if (Strategy::hasChildren(*m_anchorNode)) {
+ // Case #2. This is a reverse of increment()::Case3-b.
+ // Let |anchor| is B, next |anchor| is F.
m_anchorNode = Strategy::lastChild(*m_anchorNode);
m_offsetInAnchor = Strategy::hasChildren(*m_anchorNode)? 0 : Strategy::lastOffsetForEditing(m_anchorNode);
+ // Decrement depth initializing with -1 because
+ // |m_nodeAfterPositionInAnchor| is null so still unneeded.
+ if (m_depthToAnchorNode >= m_offsetsInAnchorNode.size())
+ m_offsetsInAnchorNode.append(kInvalidOffset);
+ else
+ m_offsetsInAnchorNode[m_depthToAnchorNode] = kInvalidOffset;
+ ++m_depthToAnchorNode;
+ return;
} else {
if (m_offsetInAnchor && m_anchorNode->layoutObject()) {
+ // Case #3-a. This is a reverse of increment()::Case#2.
+ // In this case |anchor| is a leaf(E,F,C,G or H) and
+ // |m_offsetInAnchor| is not on the beginning of |anchor|.
+ // Then just decrement |m_offsetInAnchor|.
m_offsetInAnchor = uncheckedPreviousOffset(m_anchorNode, m_offsetInAnchor);
+ return;
} else {
+ // Case #3-b. This is a reverse of increment()::Case#1.
+ // In this case |anchor| is a leaf(E,F,C,G or H) and
+ // |m_offsetInAnchor| is on the beginning of |anchor|.
+ // Let |anchor| is E,
+ // next |anchor| is B and |child| is E.
m_nodeAfterPositionInAnchor = m_anchorNode;
m_anchorNode = Strategy::parent(*m_anchorNode);
+ if (!m_anchorNode)
+ return;
+ ASSERT(m_depthToAnchorNode > 0);
+ --m_depthToAnchorNode;
+ if (m_offsetsInAnchorNode[m_depthToAnchorNode] == kInvalidOffset)
+ m_offsetsInAnchorNode[m_depthToAnchorNode] = Strategy::index(*m_nodeAfterPositionInAnchor);
}
}
}
@@ -138,6 +288,7 @@ void PositionIteratorAlgorithm<Strategy>::decrement()
template <typename Strategy>
bool PositionIteratorAlgorithm<Strategy>::atStart() const
{
+ ASSERT(isValid());
if (!m_anchorNode)
return true;
if (Strategy::parent(*m_anchorNode))
@@ -148,6 +299,7 @@ bool PositionIteratorAlgorithm<Strategy>::atStart() const
template <typename Strategy>
bool PositionIteratorAlgorithm<Strategy>::atEnd() const
{
+ ASSERT(isValid());
if (!m_anchorNode)
return true;
if (m_nodeAfterPositionInAnchor)
@@ -158,6 +310,7 @@ bool PositionIteratorAlgorithm<Strategy>::atEnd() const
template <typename Strategy>
bool PositionIteratorAlgorithm<Strategy>::atStartOfNode() const
{
+ ASSERT(isValid());
if (!m_anchorNode)
return true;
if (!m_nodeAfterPositionInAnchor)
@@ -168,6 +321,7 @@ bool PositionIteratorAlgorithm<Strategy>::atStartOfNode() const
template <typename Strategy>
bool PositionIteratorAlgorithm<Strategy>::atEndOfNode() const
{
+ ASSERT(isValid());
if (!m_anchorNode)
return true;
if (m_nodeAfterPositionInAnchor)
diff --git a/chromium/third_party/WebKit/Source/core/editing/PositionIterator.h b/chromium/third_party/WebKit/Source/core/editing/PositionIterator.h
index 0383cf1fff1..b62f3e91d9f 100644
--- a/chromium/third_party/WebKit/Source/core/editing/PositionIterator.h
+++ b/chromium/third_party/WebKit/Source/core/editing/PositionIterator.h
@@ -34,9 +34,11 @@
namespace blink {
-// A Position iterator with constant-time
+// A Position iterator with nearly constant-time
// increment, decrement, and several predicates on the Position it is at.
-// Conversion to/from Position is O(n) in the offset.
+// Conversion from Position is O(n) in the depth.
+// Conversion to Position is O(1).
+// PositionIteratorAlgorithm must be used without DOM tree change.
template <typename Strategy>
class PositionIteratorAlgorithm {
STACK_ALLOCATED();
@@ -49,7 +51,14 @@ public:
PositionTemplate<Strategy> deprecatedComputePosition() const;
PositionTemplate<Strategy> computePosition() const;
+ // increment() takes O(1) other than incrementing to a element that has
+ // new parent.
+ // In the later case, it takes time of O(<number of childlen>) but the case
+ // happens at most depth-of-the-tree times over whole tree traversal.
void increment();
+ // decrement() takes O(1) other than decrement into new node that has
+ // childlen.
+ // In the later case, it takes time of O(<number of childlen>).
void decrement();
Node* node() const { return m_anchorNode; }
@@ -63,9 +72,17 @@ public:
private:
PositionIteratorAlgorithm(Node* anchorNode, int offsetInAnchorNode);
+ bool isValid() const { return !m_anchorNode || m_domTreeVersion == m_anchorNode->document().domTreeVersion(); }
+
RawPtrWillBeMember<Node> m_anchorNode;
RawPtrWillBeMember<Node> m_nodeAfterPositionInAnchor; // If this is non-null, Strategy::parent(*m_nodeAfterPositionInAnchor) == m_anchorNode;
int m_offsetInAnchor;
+ size_t m_depthToAnchorNode;
+ // If |m_nodeAfterPositionInAnchor| is not null,
+ // m_offsetsInAnchorNode[m_depthToAnchorNode] ==
+ // Strategy::index(m_nodeAfterPositionInAnchor).
+ Vector<int> m_offsetsInAnchorNode;
+ uint64_t m_domTreeVersion;
};
extern template class PositionIteratorAlgorithm<EditingStrategy>;
diff --git a/chromium/third_party/WebKit/Source/core/editing/commands/ReplaceSelectionCommand.cpp b/chromium/third_party/WebKit/Source/core/editing/commands/ReplaceSelectionCommand.cpp
index 5eef8486a3b..eeb07523341 100644
--- a/chromium/third_party/WebKit/Source/core/editing/commands/ReplaceSelectionCommand.cpp
+++ b/chromium/third_party/WebKit/Source/core/editing/commands/ReplaceSelectionCommand.cpp
@@ -919,7 +919,7 @@ static inline HTMLElement* elementToSplitToAvoidPastingIntoInlineElementsWithSty
void ReplaceSelectionCommand::doApply()
{
- VisibleSelection selection = endingSelection();
+ const VisibleSelection selection = endingSelection();
ASSERT(selection.isCaretOrRange());
ASSERT(selection.start().anchorNode());
if (!selection.isNonOrphanedCaretOrRange() || !selection.start().anchorNode())
@@ -942,17 +942,16 @@ void ReplaceSelectionCommand::doApply()
m_insertionStyle->mergeTypingStyle(&document());
}
- VisiblePosition visibleStart = selection.visibleStart();
- VisiblePosition visibleEnd = selection.visibleEnd();
+ const VisiblePosition visibleStart = selection.visibleStart();
+ const VisiblePosition visibleEnd = selection.visibleEnd();
- bool selectionEndWasEndOfParagraph = isEndOfParagraph(visibleEnd);
- bool selectionStartWasStartOfParagraph = isStartOfParagraph(visibleStart);
+ const bool selectionEndWasEndOfParagraph = isEndOfParagraph(visibleEnd);
+ const bool selectionStartWasStartOfParagraph = isStartOfParagraph(visibleStart);
Element* enclosingBlockOfVisibleStart = enclosingBlock(visibleStart.deepEquivalent().anchorNode());
- Position insertionPos = selection.start();
- bool startIsInsideMailBlockquote = enclosingNodeOfType(insertionPos, isMailHTMLBlockquoteElement, CanCrossEditingBoundary);
- bool selectionIsPlainText = !selection.isContentRichlyEditable();
+ const bool startIsInsideMailBlockquote = enclosingNodeOfType(selection.start(), isMailHTMLBlockquoteElement, CanCrossEditingBoundary);
+ const bool selectionIsPlainText = !selection.isContentRichlyEditable();
Element* currentRoot = selection.rootEditableElement();
if ((selectionStartWasStartOfParagraph && selectionEndWasEndOfParagraph && !startIsInsideMailBlockquote)
@@ -973,43 +972,38 @@ void ReplaceSelectionCommand::doApply()
// FIXME: We should only expand to include fully selected special elements if we are copying a
// selection and pasting it on top of itself.
deleteSelection(false, mergeBlocksAfterDelete, false);
- visibleStart = endingSelection().visibleStart();
if (fragment.hasInterchangeNewlineAtStart()) {
- if (isEndOfParagraph(visibleStart) && !isStartOfParagraph(visibleStart)) {
- if (!isEndOfEditableOrNonEditableContent(visibleStart))
- setEndingSelection(nextPositionOf(visibleStart));
- } else {
+ VisiblePosition startAfterDelete = endingSelection().visibleStart();
+ if (isEndOfParagraph(startAfterDelete) && !isStartOfParagraph(startAfterDelete) && !isEndOfEditableOrNonEditableContent(startAfterDelete))
+ setEndingSelection(nextPositionOf(startAfterDelete));
+ else
insertParagraphSeparator();
- }
}
- insertionPos = endingSelection().start();
} else {
ASSERT(selection.isCaret());
if (fragment.hasInterchangeNewlineAtStart()) {
- VisiblePosition next = nextPositionOf(visibleStart, CannotCrossEditingBoundary);
- if (isEndOfParagraph(visibleStart) && !isStartOfParagraph(visibleStart) && next.isNotNull()) {
+ const VisiblePosition next = nextPositionOf(visibleStart, CannotCrossEditingBoundary);
+ if (isEndOfParagraph(visibleStart) && !isStartOfParagraph(visibleStart) && next.isNotNull())
setEndingSelection(next);
- } else {
+ else
insertParagraphSeparator();
- visibleStart = endingSelection().visibleStart();
- }
}
// We split the current paragraph in two to avoid nesting the blocks from the fragment inside the current block.
// For example paste <div>foo</div><div>bar</div><div>baz</div> into <div>x^x</div>, where ^ is the caret.
// As long as the div styles are the same, visually you'd expect: <div>xbar</div><div>bar</div><div>bazx</div>,
// not <div>xbar<div>bar</div><div>bazx</div></div>.
// Don't do this if the selection started in a Mail blockquote.
- if (m_preventNesting && !startIsInsideMailBlockquote && !isEndOfParagraph(visibleStart) && !isStartOfParagraph(visibleStart)) {
+ if (m_preventNesting && !startIsInsideMailBlockquote && !isEndOfParagraph(endingSelection().visibleStart()) && !isStartOfParagraph(endingSelection().visibleStart())) {
insertParagraphSeparator();
setEndingSelection(previousPositionOf(endingSelection().visibleStart()));
}
- insertionPos = endingSelection().start();
}
+ Position insertionPos = endingSelection().start();
// We don't want any of the pasted content to end up nested in a Mail blockquote, so first break
// out of any surrounding Mail blockquotes. Unless we're inserting in a table, in which case
// breaking the blockquote will prevent the content from actually being inserted in the table.
- if (startIsInsideMailBlockquote && m_preventNesting && !(enclosingNodeOfType(insertionPos, &isTableStructureNode))) {
+ if (enclosingNodeOfType(insertionPos, isMailHTMLBlockquoteElement, CanCrossEditingBoundary) && m_preventNesting && !(enclosingNodeOfType(insertionPos, &isTableStructureNode))) {
applyCommandToComposite(BreakBlockquoteCommand::create(document()));
// This will leave a br between the split.
Node* br = endingSelection().start().anchorNode();
diff --git a/chromium/third_party/WebKit/Source/core/frame/LocalFrame.cpp b/chromium/third_party/WebKit/Source/core/frame/LocalFrame.cpp
index c0b3b8d0f8d..9fa4c754154 100644
--- a/chromium/third_party/WebKit/Source/core/frame/LocalFrame.cpp
+++ b/chromium/third_party/WebKit/Source/core/frame/LocalFrame.cpp
@@ -257,6 +257,8 @@ void LocalFrame::navigate(Document& originDocument, const KURL& url, bool replac
void LocalFrame::navigate(const FrameLoadRequest& request)
{
+ if (!isNavigationAllowed())
+ return;
m_loader.load(request);
}
@@ -314,7 +316,28 @@ void LocalFrame::detach(FrameDetachType type)
// Signal frame destruction here rather than in the destructor.
// Main motivation is to avoid being dependent on its exact timing (Oilpan.)
LocalFrameLifecycleNotifier::notifyContextDestroyed();
+ // TODO(dcheng): Temporary, to debug https://crbug.com/531291.
+ // If this is true, we somehow re-entered LocalFrame::detach. But this is
+ // probably OK?
+ if (m_supplementStatus == SupplementStatus::Cleared)
+ RELEASE_ASSERT(m_supplements.isEmpty());
+ // If this is true, we somehow re-entered LocalFrame::detach in the middle
+ // of cleaning up supplements.
+ RELEASE_ASSERT(m_supplementStatus != SupplementStatus::Clearing);
+ RELEASE_ASSERT(m_supplementStatus == SupplementStatus::Uncleared);
+ m_supplementStatus = SupplementStatus::Clearing;
+
+ // TODO(haraken): Temporary code to debug https://crbug.com/531291.
+ // Check that m_supplements doesn't duplicate OwnPtrs.
+ HashSet<void*> supplementPointers;
+ for (auto& it : m_supplements) {
+ void* pointer = reinterpret_cast<void*>(it.value.get());
+ RELEASE_ASSERT(!supplementPointers.contains(pointer));
+ supplementPointers.add(pointer);
+ }
+
m_supplements.clear();
+ m_supplementStatus = SupplementStatus::Cleared;
WeakIdentifierMap<LocalFrame>::notifyObjectDestroyed(this);
}
@@ -852,6 +875,7 @@ inline LocalFrame::LocalFrame(FrameLoaderClient* client, FrameHost* host, FrameO
, m_eventHandler(adoptPtrWillBeNoop(new EventHandler(this)))
, m_console(FrameConsole::create(*this))
, m_inputMethodController(InputMethodController::create(*this))
+ , m_navigationDisableCount(0)
, m_pageZoomFactor(parentPageZoomFactor(this))
, m_textZoomFactor(parentTextZoomFactor(this))
, m_inViewSourceMode(false)
@@ -883,4 +907,15 @@ void LocalFrame::updateFrameSecurityOrigin()
DEFINE_WEAK_IDENTIFIER_MAP(LocalFrame);
+FrameNavigationDisabler::FrameNavigationDisabler(LocalFrame& frame)
+ : m_frame(&frame)
+{
+ m_frame->disableNavigation();
+}
+
+FrameNavigationDisabler::~FrameNavigationDisabler()
+{
+ m_frame->enableNavigation();
+}
+
} // namespace blink
diff --git a/chromium/third_party/WebKit/Source/core/frame/LocalFrame.h b/chromium/third_party/WebKit/Source/core/frame/LocalFrame.h
index ce17bb37a70..c686ead465c 100644
--- a/chromium/third_party/WebKit/Source/core/frame/LocalFrame.h
+++ b/chromium/third_party/WebKit/Source/core/frame/LocalFrame.h
@@ -188,7 +188,11 @@ public:
WebFrameScheduler* frameScheduler();
void updateFrameSecurityOrigin();
+ bool isNavigationAllowed() const { return m_navigationDisableCount == 0; }
+
private:
+ friend class FrameNavigationDisabler;
+
LocalFrame(FrameLoaderClient*, FrameHost*, FrameOwner*);
// Internal Frame helper overrides:
@@ -202,6 +206,9 @@ private:
RespectImageOrientationEnum shouldRespectImageOrientation, const GlobalPaintFlags,
IntRect paintingRect, float opacity = 1);
+ void enableNavigation() { --m_navigationDisableCount; }
+ void disableNavigation() { ++m_navigationDisableCount; }
+
mutable FrameLoader m_loader;
OwnPtrWillBeMember<NavigationScheduler> m_navigationScheduler;
@@ -219,6 +226,8 @@ private:
const OwnPtrWillBeMember<InputMethodController> m_inputMethodController;
OwnPtr<WebFrameScheduler> m_frameScheduler;
+ int m_navigationDisableCount;
+
#if ENABLE(OILPAN)
// Oilpan: in order to reliably finalize plugin elements with
// renderer-less plugins, the frame keeps track of them. When
@@ -242,6 +251,10 @@ private:
bool m_inViewSourceMode;
RefPtrWillBeMember<InstrumentingAgents> m_instrumentingAgents;
+
+ // TODO(dcheng): Temporary to try to debug https://crbug.com/531291
+ enum class SupplementStatus { Uncleared, Clearing, Cleared };
+ SupplementStatus m_supplementStatus = SupplementStatus::Uncleared;
};
inline void LocalFrame::init()
@@ -320,6 +333,17 @@ DEFINE_TYPE_CASTS(LocalFrame, Frame, localFrame, localFrame->isLocalFrame(), loc
DECLARE_WEAK_IDENTIFIER_MAP(LocalFrame);
+class FrameNavigationDisabler {
+ WTF_MAKE_NONCOPYABLE(FrameNavigationDisabler);
+ STACK_ALLOCATED();
+public:
+ explicit FrameNavigationDisabler(LocalFrame&);
+ ~FrameNavigationDisabler();
+
+private:
+ RawPtrWillBeMember<LocalFrame> m_frame;
+};
+
} // namespace blink
// During refactoring, there are some places where we need to do type conversions that
diff --git a/chromium/third_party/WebKit/Source/core/frame/UseCounter.h b/chromium/third_party/WebKit/Source/core/frame/UseCounter.h
index 0d96fea7a2b..fa0e664c45b 100644
--- a/chromium/third_party/WebKit/Source/core/frame/UseCounter.h
+++ b/chromium/third_party/WebKit/Source/core/frame/UseCounter.h
@@ -838,6 +838,12 @@ public:
CredentialManagerGetWithoutUI = 962,
CredentialManagerStore = 963,
CredentialManagerRequireUserMediation = 964,
+ MeterElementWithContinuousCapacityAppearance = 991,
+ MeterElementWithDiscreteCapacityAppearance = 992,
+ MeterElementWithMeterAppearance = 993,
+ MeterElementWithNoneAppearance = 994,
+ MeterElementWithRatingAppearance = 995,
+ MeterElementWithRelevancyAppearance = 996,
// Add new features immediately above this line. Don't change assigned
// numbers of any item, and don't reuse removed slots.
diff --git a/chromium/third_party/WebKit/Source/core/html/HTMLFormElement.cpp b/chromium/third_party/WebKit/Source/core/html/HTMLFormElement.cpp
index a552cb1b96b..6cd1c1e4f59 100644
--- a/chromium/third_party/WebKit/Source/core/html/HTMLFormElement.cpp
+++ b/chromium/third_party/WebKit/Source/core/html/HTMLFormElement.cpp
@@ -836,12 +836,14 @@ void HTMLFormElement::anonymousNamedGetter(const AtomicString& name, RadioNodeLi
getNamedElements(name, elements);
ASSERT(!elements.isEmpty());
+ bool onlyMatchImg = !elements.isEmpty() && isHTMLImageElement(*elements.first());
+ if (onlyMatchImg)
+ UseCounter::count(document(), UseCounter::FormNameAccessForImageElement);
if (elements.size() == 1) {
returnValue.setElement(elements.at(0));
return;
}
- bool onlyMatchImg = !elements.isEmpty() && isHTMLImageElement(*elements.first());
returnValue.setRadioNodeList(radioNodeList(name, onlyMatchImg));
}
diff --git a/chromium/third_party/WebKit/Source/core/html/HTMLMediaElement.cpp b/chromium/third_party/WebKit/Source/core/html/HTMLMediaElement.cpp
index f9b471659ee..16caecec08c 100644
--- a/chromium/third_party/WebKit/Source/core/html/HTMLMediaElement.cpp
+++ b/chromium/third_party/WebKit/Source/core/html/HTMLMediaElement.cpp
@@ -1979,7 +1979,7 @@ void HTMLMediaElement::play()
if (m_userGestureRequiredForPlay) {
recordAutoplayMetric(PlayMethodFailed);
String message = ExceptionMessages::failedToExecute("play", "HTMLMediaElement", "API can only be initiated by a user gesture.");
- document().executionContext()->addConsoleMessage(ConsoleMessage::create(JSMessageSource, WarningMessageLevel, message));
+ document().addConsoleMessage(ConsoleMessage::create(JSMessageSource, WarningMessageLevel, message));
return;
}
} else if (m_userGestureRequiredForPlay) {
diff --git a/chromium/third_party/WebKit/Source/core/html/HTMLMeterElement.cpp b/chromium/third_party/WebKit/Source/core/html/HTMLMeterElement.cpp
index 97587fa1243..d91601fe2f9 100644
--- a/chromium/third_party/WebKit/Source/core/html/HTMLMeterElement.cpp
+++ b/chromium/third_party/WebKit/Source/core/html/HTMLMeterElement.cpp
@@ -57,6 +57,28 @@ PassRefPtrWillBeRawPtr<HTMLMeterElement> HTMLMeterElement::create(Document& docu
LayoutObject* HTMLMeterElement::createLayoutObject(const ComputedStyle& style)
{
+ switch (style.appearance()) {
+ case ContinuousCapacityLevelIndicatorPart:
+ UseCounter::count(document(), UseCounter::MeterElementWithContinuousCapacityAppearance);
+ break;
+ case DiscreteCapacityLevelIndicatorPart:
+ UseCounter::count(document(), UseCounter::MeterElementWithDiscreteCapacityAppearance);
+ break;
+ case MeterPart:
+ UseCounter::count(document(), UseCounter::MeterElementWithMeterAppearance);
+ break;
+ case NoControlPart:
+ UseCounter::count(document(), UseCounter::MeterElementWithNoneAppearance);
+ break;
+ case RatingLevelIndicatorPart:
+ UseCounter::count(document(), UseCounter::MeterElementWithRatingAppearance);
+ break;
+ case RelevancyLevelIndicatorPart:
+ UseCounter::count(document(), UseCounter::MeterElementWithRelevancyAppearance);
+ break;
+ default:
+ break;
+ }
if (openShadowRoot() || !LayoutTheme::theme().supportsMeter(style.appearance()))
return LayoutObject::createObject(this, style);
return new LayoutMeter(this);
diff --git a/chromium/third_party/WebKit/Source/core/html/HTMLScriptElement.cpp b/chromium/third_party/WebKit/Source/core/html/HTMLScriptElement.cpp
index 6bf842423a6..39447c04c48 100644
--- a/chromium/third_party/WebKit/Source/core/html/HTMLScriptElement.cpp
+++ b/chromium/third_party/WebKit/Source/core/html/HTMLScriptElement.cpp
@@ -68,7 +68,8 @@ const QualifiedName& HTMLScriptElement::subResourceAttributeName() const
void HTMLScriptElement::childrenChanged(const ChildrenChange& change)
{
HTMLElement::childrenChanged(change);
- m_loader->childrenChanged();
+ if (change.isChildInsertion())
+ m_loader->childrenChanged();
}
void HTMLScriptElement::didMoveToNewDocument(Document& oldDocument)
diff --git a/chromium/third_party/WebKit/Source/core/html/parser/HTMLDocumentParser.cpp b/chromium/third_party/WebKit/Source/core/html/parser/HTMLDocumentParser.cpp
index 868e71e8c16..a7436bc1a0d 100644
--- a/chromium/third_party/WebKit/Source/core/html/parser/HTMLDocumentParser.cpp
+++ b/chromium/third_party/WebKit/Source/core/html/parser/HTMLDocumentParser.cpp
@@ -28,6 +28,7 @@
#include "core/HTMLNames.h"
#include "core/css/MediaValuesCached.h"
+#include "core/css/resolver/StyleResolver.h"
#include "core/dom/DocumentFragment.h"
#include "core/dom/DocumentLifecycleObserver.h"
#include "core/dom/Element.h"
@@ -775,6 +776,10 @@ void HTMLDocumentParser::startBackgroundParser()
ASSERT(document());
m_haveBackgroundParser = true;
+ // Make sure that a resolver is set up, so that the correct viewport dimensions will be fed to the background parser and preload scanner.
+ if (document()->loader())
+ document()->ensureStyleResolver();
+
RefPtr<WeakReference<BackgroundHTMLParser>> reference = WeakReference<BackgroundHTMLParser>::createUnbound();
m_backgroundParser = WeakPtr<BackgroundHTMLParser>(reference);
@@ -789,6 +794,7 @@ void HTMLDocumentParser::startBackgroundParser()
config->parser = m_weakFactory.createWeakPtr();
config->xssAuditor = adoptPtr(new XSSAuditor);
config->xssAuditor->init(document(), &m_xssAuditorDelegate);
+
config->preloadScanner = adoptPtr(new TokenPreloadScanner(document()->url().copy(), CachedDocumentParameters::create(document())));
config->decoder = takeDecoder();
if (document()->settings()) {
diff --git a/chromium/third_party/WebKit/Source/core/inspector/DebuggerScript.js b/chromium/third_party/WebKit/Source/core/inspector/DebuggerScript.js
index 22483edfca4..69995fd035f 100644
--- a/chromium/third_party/WebKit/Source/core/inspector/DebuggerScript.js
+++ b/chromium/third_party/WebKit/Source/core/inspector/DebuggerScript.js
@@ -57,6 +57,8 @@ DebuggerScript.getAfterCompileScript = function(eventData)
DebuggerScript.getFunctionScopes = function(fun)
{
var mirror = MakeMirror(fun);
+ if (!mirror.isFunction())
+ return null;
var count = mirror.scopeCount();
if (count == 0)
return null;
diff --git a/chromium/third_party/WebKit/Source/core/inspector/v8/V8Debugger.h b/chromium/third_party/WebKit/Source/core/inspector/v8/V8Debugger.h
index a0d402ff4a9..72a6a20e90b 100644
--- a/chromium/third_party/WebKit/Source/core/inspector/v8/V8Debugger.h
+++ b/chromium/third_party/WebKit/Source/core/inspector/v8/V8Debugger.h
@@ -46,7 +46,7 @@ public:
virtual bool pausingOnNextStatement() = 0;
// TODO: these methods will not be public once InjectedScriptHost is in the implementation.
- virtual v8::Local<v8::Value> functionScopes(v8::Local<v8::Function>) = 0;
+ virtual v8::MaybeLocal<v8::Value> functionScopes(v8::Local<v8::Function>) = 0;
virtual v8::Local<v8::Value> generatorObjectDetails(v8::Local<v8::Object>&) = 0;
virtual v8::Local<v8::Value> collectionEntries(v8::Local<v8::Object>&) = 0;
virtual v8::MaybeLocal<v8::Value> setFunctionVariableValue(v8::Local<v8::Value> functionValue, int scopeNumber, const String& variableName, v8::Local<v8::Value> newValue) = 0;
diff --git a/chromium/third_party/WebKit/Source/core/inspector/v8/V8DebuggerImpl.cpp b/chromium/third_party/WebKit/Source/core/inspector/v8/V8DebuggerImpl.cpp
index 5c9a6269d28..ee81bdf17a0 100644
--- a/chromium/third_party/WebKit/Source/core/inspector/v8/V8DebuggerImpl.cpp
+++ b/chromium/third_party/WebKit/Source/core/inspector/v8/V8DebuggerImpl.cpp
@@ -696,14 +696,14 @@ v8::Local<v8::String> V8DebuggerImpl::v8InternalizedString(const char* str) cons
return v8::String::NewFromUtf8(m_isolate, str, v8::NewStringType::kInternalized).ToLocalChecked();
}
-v8::Local<v8::Value> V8DebuggerImpl::functionScopes(v8::Local<v8::Function> function)
+v8::MaybeLocal<v8::Value> V8DebuggerImpl::functionScopes(v8::Local<v8::Function> function)
{
if (!enabled()) {
ASSERT_NOT_REACHED();
return v8::Local<v8::Value>::New(m_isolate, v8::Undefined(m_isolate));
}
v8::Local<v8::Value> argv[] = { function };
- return callDebuggerMethod("getFunctionScopes", 1, argv).ToLocalChecked();
+ return callDebuggerMethod("getFunctionScopes", 1, argv);
}
v8::Local<v8::Value> V8DebuggerImpl::generatorObjectDetails(v8::Local<v8::Object>& object)
diff --git a/chromium/third_party/WebKit/Source/core/inspector/v8/V8DebuggerImpl.h b/chromium/third_party/WebKit/Source/core/inspector/v8/V8DebuggerImpl.h
index fec7a4fc8fc..94423ee01a1 100644
--- a/chromium/third_party/WebKit/Source/core/inspector/v8/V8DebuggerImpl.h
+++ b/chromium/third_party/WebKit/Source/core/inspector/v8/V8DebuggerImpl.h
@@ -82,7 +82,7 @@ public:
bool isPaused();
- v8::Local<v8::Value> functionScopes(v8::Local<v8::Function>) override;
+ v8::MaybeLocal<v8::Value> functionScopes(v8::Local<v8::Function>) override;
v8::Local<v8::Value> generatorObjectDetails(v8::Local<v8::Object>&) override;
v8::Local<v8::Value> collectionEntries(v8::Local<v8::Object>&) override;
v8::MaybeLocal<v8::Value> setFunctionVariableValue(v8::Local<v8::Value> functionValue, int scopeNumber, const String& variableName, v8::Local<v8::Value> newValue) override;
diff --git a/chromium/third_party/WebKit/Source/core/inspector/v8/V8InjectedScriptHost.cpp b/chromium/third_party/WebKit/Source/core/inspector/v8/V8InjectedScriptHost.cpp
index 7229e361bdc..f4470bad04c 100644
--- a/chromium/third_party/WebKit/Source/core/inspector/v8/V8InjectedScriptHost.cpp
+++ b/chromium/third_party/WebKit/Source/core/inspector/v8/V8InjectedScriptHost.cpp
@@ -212,9 +212,9 @@ void V8InjectedScriptHost::functionDetailsCallback(const v8::FunctionCallbackInf
InjectedScriptHost* host = V8InjectedScriptHost::unwrap(info.Holder());
V8Debugger& debugger = host->debugger();
- v8::Local<v8::Value> scopes = debugger.functionScopes(function);
- if (!scopes.IsEmpty() && scopes->IsArray())
- result->Set(v8AtomicString(isolate, "rawScopes"), scopes);
+ v8::MaybeLocal<v8::Value> scopes = debugger.functionScopes(function);
+ if (!scopes.IsEmpty() && scopes.ToLocalChecked()->IsArray())
+ result->Set(v8AtomicString(isolate, "rawScopes"), scopes.ToLocalChecked());
v8SetReturnValue(info, result);
}
diff --git a/chromium/third_party/WebKit/Source/core/layout/FloatingObjects.cpp b/chromium/third_party/WebKit/Source/core/layout/FloatingObjects.cpp
index 28dc9405943..8a256450277 100644
--- a/chromium/third_party/WebKit/Source/core/layout/FloatingObjects.cpp
+++ b/chromium/third_party/WebKit/Source/core/layout/FloatingObjects.cpp
@@ -46,7 +46,8 @@ FloatingObject::FloatingObject(LayoutBox* layoutObject)
: m_layoutObject(layoutObject)
, m_originatingLine(nullptr)
, m_paginationStrut(0)
- , m_ownership(DirectlyContained)
+ , m_shouldPaint(true)
+ , m_isDescendant(false)
, m_isPlaced(false)
, m_isLowestNonOverhangingFloatInChild(false)
#if ENABLE(ASSERT)
@@ -61,13 +62,14 @@ FloatingObject::FloatingObject(LayoutBox* layoutObject)
m_type = FloatRight;
}
-FloatingObject::FloatingObject(LayoutBox* layoutObject, Type type, const LayoutRect& frameRect, Ownership ownership, bool isLowestNonOverhangingFloatInChild)
+FloatingObject::FloatingObject(LayoutBox* layoutObject, Type type, const LayoutRect& frameRect, bool shouldPaint, bool isDescendant, bool isLowestNonOverhangingFloatInChild)
: m_layoutObject(layoutObject)
, m_originatingLine(nullptr)
, m_frameRect(frameRect)
, m_paginationStrut(0)
, m_type(type)
- , m_ownership(ownership)
+ , m_shouldPaint(shouldPaint)
+ , m_isDescendant(isDescendant)
, m_isPlaced(true)
, m_isLowestNonOverhangingFloatInChild(isLowestNonOverhangingFloatInChild)
#if ENABLE(ASSERT)
@@ -78,17 +80,21 @@ FloatingObject::FloatingObject(LayoutBox* layoutObject, Type type, const LayoutR
PassOwnPtr<FloatingObject> FloatingObject::create(LayoutBox* layoutObject)
{
- return adoptPtr(new FloatingObject(layoutObject));
+ OwnPtr<FloatingObject> newObj = adoptPtr(new FloatingObject(layoutObject));
+ newObj->setShouldPaint(!layoutObject->hasSelfPaintingLayer()); // If a layer exists, the float will paint itself. Otherwise someone else will.
+ newObj->setIsDescendant(true);
+
+ return newObj.release();
}
-PassOwnPtr<FloatingObject> FloatingObject::copyToNewContainer(LayoutSize offset, Ownership ownership) const
+PassOwnPtr<FloatingObject> FloatingObject::copyToNewContainer(LayoutSize offset, bool shouldPaint, bool isDescendant) const
{
- return adoptPtr(new FloatingObject(layoutObject(), type(), LayoutRect(frameRect().location() - offset, frameRect().size()), ownership, isLowestNonOverhangingFloatInChild()));
+ return adoptPtr(new FloatingObject(layoutObject(), type(), LayoutRect(frameRect().location() - offset, frameRect().size()), shouldPaint, isDescendant, isLowestNonOverhangingFloatInChild()));
}
PassOwnPtr<FloatingObject> FloatingObject::unsafeClone() const
{
- OwnPtr<FloatingObject> cloneObject = adoptPtr(new FloatingObject(layoutObject(), type(), m_frameRect, static_cast<Ownership>(m_ownership), false));
+ OwnPtr<FloatingObject> cloneObject = adoptPtr(new FloatingObject(layoutObject(), type(), m_frameRect, m_shouldPaint, m_isDescendant, false));
cloneObject->m_paginationStrut = m_paginationStrut;
cloneObject->m_isPlaced = m_isPlaced;
return cloneObject.release();
diff --git a/chromium/third_party/WebKit/Source/core/layout/FloatingObjects.h b/chromium/third_party/WebKit/Source/core/layout/FloatingObjects.h
index 7d678b906ec..7b446538a18 100644
--- a/chromium/third_party/WebKit/Source/core/layout/FloatingObjects.h
+++ b/chromium/third_party/WebKit/Source/core/layout/FloatingObjects.h
@@ -49,11 +49,9 @@ public:
// Note that Type uses bits so you can use FloatLeftRight as a mask to query for both left and right.
enum Type { FloatLeft = 1, FloatRight = 2, FloatLeftRight = 3 };
- enum Ownership { DirectlyContained, IndirectlyContained, IntrudingNonDescendant };
-
static PassOwnPtr<FloatingObject> create(LayoutBox*);
- PassOwnPtr<FloatingObject> copyToNewContainer(LayoutSize, Ownership) const;
+ PassOwnPtr<FloatingObject> copyToNewContainer(LayoutSize, bool shouldPaint = false, bool isDescendant = false) const;
PassOwnPtr<FloatingObject> unsafeClone() const;
@@ -85,8 +83,10 @@ public:
void setIsInPlacedTree(bool value) { m_isInPlacedTree = value; }
#endif
- bool isDirectlyContained() const { return m_ownership == DirectlyContained; }
- bool isDescendant() const { return m_ownership == DirectlyContained || m_ownership == IndirectlyContained; }
+ bool shouldPaint() const { return m_shouldPaint; }
+ void setShouldPaint(bool shouldPaint) { m_shouldPaint = shouldPaint; }
+ bool isDescendant() const { return m_isDescendant; }
+ void setIsDescendant(bool isDescendant) { m_isDescendant = isDescendant; }
bool isLowestNonOverhangingFloatInChild() const { return m_isLowestNonOverhangingFloatInChild; }
void setIsLowestNonOverhangingFloatInChild(bool isLowestNonOverhangingFloatInChild) { m_isLowestNonOverhangingFloatInChild = isLowestNonOverhangingFloatInChild; }
@@ -96,7 +96,7 @@ public:
private:
explicit FloatingObject(LayoutBox*);
- FloatingObject(LayoutBox*, Type, const LayoutRect&, Ownership, bool isLowestNonOverhangingFloatInChild);
+ FloatingObject(LayoutBox*, Type, const LayoutRect&, bool shouldPaint, bool isDescendant, bool isLowestNonOverhangingFloatInChild);
LayoutBox* m_layoutObject;
RootInlineBox* m_originatingLine;
@@ -104,7 +104,8 @@ private:
int m_paginationStrut; // FIXME: Is this class size-sensitive? Does this need 32-bits?
unsigned m_type : 2; // Type (left or right aligned)
- unsigned m_ownership : 2; // Ownership
+ unsigned m_shouldPaint : 1;
+ unsigned m_isDescendant : 1;
unsigned m_isPlaced : 1;
unsigned m_isLowestNonOverhangingFloatInChild : 1;
#if ENABLE(ASSERT)
diff --git a/chromium/third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp b/chromium/third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp
index d08012e40a7..54318f0149e 100644
--- a/chromium/third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp
+++ b/chromium/third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp
@@ -469,7 +469,7 @@ void LayoutBlockFlow::addLowestFloatFromChildren(LayoutBlockFlow* block)
if (!m_floatingObjects)
createFloatingObjects();
- FloatingObject* newFloatingObject = m_floatingObjects->add(floatingObject->copyToNewContainer(offset, FloatingObject::IndirectlyContained));
+ FloatingObject* newFloatingObject = m_floatingObjects->add(floatingObject->copyToNewContainer(offset, false, true));
newFloatingObject->setIsLowestNonOverhangingFloatInChild(true);
}
@@ -1758,7 +1758,7 @@ void LayoutBlockFlow::addOverflowFromFloats()
FloatingObjectSetIterator end = floatingObjectSet.end();
for (FloatingObjectSetIterator it = floatingObjectSet.begin(); it != end; ++it) {
const FloatingObject& floatingObject = *it->get();
- if (floatingObject.isDirectlyContained())
+ if (floatingObject.isDescendant())
addOverflowFromChild(floatingObject.layoutObject(), LayoutSize(xPositionForFloatIncludingMargin(floatingObject), yPositionForFloatIncludingMargin(floatingObject)));
}
}
@@ -2046,12 +2046,12 @@ void LayoutBlockFlow::invalidatePaintForOverhangingFloats(bool paintAllDescendan
FloatingObjectSetIterator end = floatingObjectSet.end();
for (FloatingObjectSetIterator it = floatingObjectSet.begin(); it != end; ++it) {
const FloatingObject& floatingObject = *it->get();
- // Only issue paint invalidations for the object if it is overhanging, is not in its own layer, and
- // is our responsibility to paint (isDirectlyContained). When paintAllDescendants is true, the latter
+ // Only issue paint invaldiations for the object if it is overhanging, is not in its own layer, and
+ // is our responsibility to paint (m_shouldPaint is set). When paintAllDescendants is true, the latter
// condition is replaced with being a descendant of us.
if (logicalBottomForFloat(floatingObject) > logicalHeight()
&& !floatingObject.layoutObject()->hasSelfPaintingLayer()
- && (floatingObject.isDirectlyContained() || (paintAllDescendants && floatingObject.isDescendant()))) {
+ && (floatingObject.shouldPaint() || (paintAllDescendants && floatingObject.layoutObject()->isDescendantOf(this)))) {
LayoutBox* floatingLayoutBox = floatingObject.layoutObject();
floatingLayoutBox->setShouldDoFullPaintInvalidation();
@@ -2512,7 +2512,7 @@ void LayoutBlockFlow::addIntrudingFloats(LayoutBlockFlow* prev, LayoutUnit logic
? LayoutSize(logicalLeftOffset - (prev != parent() ? prev->marginLeft() : LayoutUnit()), logicalTopOffset)
: LayoutSize(logicalTopOffset, logicalLeftOffset - (prev != parent() ? prev->marginTop() : LayoutUnit()));
- m_floatingObjects->add(floatingObject.copyToNewContainer(offset, FloatingObject::IntrudingNonDescendant));
+ m_floatingObjects->add(floatingObject.copyToNewContainer(offset));
}
}
}
@@ -2539,10 +2539,37 @@ void LayoutBlockFlow::addOverhangingFloats(LayoutBlockFlow* child, bool makeChil
// If the object is not in the list, we add it now.
if (!containsFloat(floatingObject.layoutObject())) {
LayoutSize offset = isHorizontalWritingMode() ? LayoutSize(-childLogicalLeft, -childLogicalTop) : LayoutSize(-childLogicalTop, -childLogicalLeft);
+ bool shouldPaint = false;
+
+ // The nearest enclosing layer always paints the float (so that zindex and stacking
+ // behaves properly). We always want to propagate the desire to paint the float as
+ // far out as we can, to the outermost block that overlaps the float, stopping only
+ // if we hit a self-painting layer boundary.
+ if (floatingObject.layoutObject()->enclosingFloatPaintingLayer() == enclosingFloatPaintingLayer() && !floatingObject.isLowestNonOverhangingFloatInChild()) {
+ floatingObject.setShouldPaint(false);
+ shouldPaint = true;
+ }
+ // We create the floating object list lazily.
if (!m_floatingObjects)
createFloatingObjects();
- m_floatingObjects->add(floatingObject.copyToNewContainer(offset, FloatingObject::IndirectlyContained));
+
+ m_floatingObjects->add(floatingObject.copyToNewContainer(offset, shouldPaint, true));
}
+ } else {
+ if (makeChildPaintOtherFloats && !floatingObject.shouldPaint() && !floatingObject.layoutObject()->hasSelfPaintingLayer() && !floatingObject.isLowestNonOverhangingFloatInChild()
+ && floatingObject.layoutObject()->isDescendantOf(child) && floatingObject.layoutObject()->enclosingFloatPaintingLayer() == child->enclosingFloatPaintingLayer()) {
+ // The float is not overhanging from this block, so if it is a descendant of the child, the child should
+ // paint it (the other case is that it is intruding into the child), unless it has its own layer or enclosing
+ // layer.
+ // If makeChildPaintOtherFloats is false, it means that the child must already know about all the floats
+ // it should paint.
+ floatingObject.setShouldPaint(true);
+ }
+
+ // Since the float doesn't overhang, it didn't get put into our list. We need to go ahead and add its overflow in to the
+ // child now.
+ if (floatingObject.isDescendant())
+ child->addOverflowFromChild(floatingObject.layoutObject(), LayoutSize(xPositionForFloatIncludingMargin(floatingObject), yPositionForFloatIncludingMargin(floatingObject)));
}
}
}
@@ -2596,7 +2623,7 @@ bool LayoutBlockFlow::hitTestFloats(HitTestResult& result, const HitTestLocation
for (FloatingObjectSetIterator it = floatingObjectSet.end(); it != begin;) {
--it;
const FloatingObject& floatingObject = *it->get();
- if (floatingObject.isDirectlyContained() && !floatingObject.layoutObject()->hasSelfPaintingLayer()) {
+ if (floatingObject.shouldPaint() && !floatingObject.layoutObject()->hasSelfPaintingLayer()) {
LayoutUnit xOffset = xPositionForFloatIncludingMargin(floatingObject) - floatingObject.layoutObject()->location().x();
LayoutUnit yOffset = yPositionForFloatIncludingMargin(floatingObject) - floatingObject.layoutObject()->location().y();
LayoutPoint childPoint = flipFloatForWritingModeForChild(floatingObject, adjustedLocation + LayoutSize(xOffset, yOffset));
diff --git a/chromium/third_party/WebKit/Source/core/layout/LayoutBlockFlowLine.cpp b/chromium/third_party/WebKit/Source/core/layout/LayoutBlockFlowLine.cpp
index b69cb4fa6f9..98e2002a915 100644
--- a/chromium/third_party/WebKit/Source/core/layout/LayoutBlockFlowLine.cpp
+++ b/chromium/third_party/WebKit/Source/core/layout/LayoutBlockFlowLine.cpp
@@ -1830,6 +1830,7 @@ bool LayoutBlockFlow::matchedEndLine(LineLayoutState& layoutState, const InlineB
}
bool LayoutBlockFlow::generatesLineBoxesForInlineChild(LayoutObject* inlineObj)
+
{
ASSERT(inlineObj->parent() == this);
@@ -1841,9 +1842,13 @@ bool LayoutBlockFlow::generatesLineBoxesForInlineChild(LayoutObject* inlineObj)
return !it.atEnd();
}
+
void LayoutBlockFlow::addOverflowFromInlineChildren()
{
LayoutUnit endPadding = hasOverflowClip() ? paddingEnd() : LayoutUnit();
+ // FIXME: Need to find another way to do this, since scrollbars could show when we don't want them to.
+ if (hasOverflowClip() && !endPadding && node() && node()->isRootEditableElement() && style()->isLeftToRightDirection())
+ endPadding = 1;
for (RootInlineBox* curr = firstRootBox(); curr; curr = curr->nextRootBox()) {
addLayoutOverflow(curr->paddedLayoutOverflowRect(endPadding));
LayoutRect visualOverflow = curr->visualOverflowRect(curr->lineTop(), curr->lineBottom());
diff --git a/chromium/third_party/WebKit/Source/core/layout/LayoutMultiColumnFlowThread.cpp b/chromium/third_party/WebKit/Source/core/layout/LayoutMultiColumnFlowThread.cpp
index 8d6760f61ee..073353a347f 100644
--- a/chromium/third_party/WebKit/Source/core/layout/LayoutMultiColumnFlowThread.cpp
+++ b/chromium/third_party/WebKit/Source/core/layout/LayoutMultiColumnFlowThread.cpp
@@ -364,6 +364,7 @@ void LayoutMultiColumnFlowThread::layoutColumns(bool relayoutChildren, SubtreeLa
continue;
}
LayoutMultiColumnSet* columnSet = toLayoutMultiColumnSet(columnBox);
+ layoutScope.setChildNeedsLayout(columnSet);
if (!m_inBalancingPass) {
// This is the initial layout pass. We need to reset the column height, because contents
// typically have changed.
@@ -391,16 +392,8 @@ bool LayoutMultiColumnFlowThread::recalculateColumnHeights()
// passes than that, though, but the number of retries should not exceed the number of
// columns, unless we have a bug.
bool needsRelayout = false;
- for (LayoutMultiColumnSet* multicolSet = firstMultiColumnSet(); multicolSet; multicolSet = multicolSet->nextSiblingMultiColumnSet()) {
+ for (LayoutMultiColumnSet* multicolSet = firstMultiColumnSet(); multicolSet; multicolSet = multicolSet->nextSiblingMultiColumnSet())
needsRelayout |= multicolSet->recalculateColumnHeight(m_inBalancingPass ? StretchBySpaceShortage : GuessFromFlowThreadPortion);
- if (needsRelayout) {
- // Once a column set gets a new column height, that column set and all successive column
- // sets need to be laid out over again, since their logical top will be affected by
- // this, and therefore their column heights may change as well, at least if the multicol
- // height is constrained.
- multicolSet->setChildNeedsLayout(MarkOnlyThis);
- }
- }
if (needsRelayout)
setChildNeedsLayout(MarkOnlyThis);
@@ -536,7 +529,6 @@ void LayoutMultiColumnFlowThread::createAndInsertSpannerPlaceholder(LayoutBox* s
// a new spanner placeholder between them.
setToSplit = mapDescendantToColumnSet(previousLayoutObject);
ASSERT(setToSplit == mapDescendantToColumnSet(insertedBeforeInFlowThread));
- setToSplit->setNeedsLayoutAndFullPaintInvalidation(LayoutInvalidationReason::ColumnsChanged);
insertBeforeColumnBox = setToSplit->nextSiblingMultiColumnBox();
// We've found out which set that needs to be split. Now proceed to
// inserting the spanner placeholder, and then insert a second column set.
@@ -563,7 +555,6 @@ void LayoutMultiColumnFlowThread::destroySpannerPlaceholder(LayoutMultiColumnSpa
&& previousColumnBox && previousColumnBox->isLayoutMultiColumnSet()) {
// Need to merge two column sets.
nextColumnBox->destroy();
- previousColumnBox->setNeedsLayout(LayoutInvalidationReason::ColumnsChanged);
invalidateColumnSets();
}
}
diff --git a/chromium/third_party/WebKit/Source/core/layout/MultiColumnFragmentainerGroup.cpp b/chromium/third_party/WebKit/Source/core/layout/MultiColumnFragmentainerGroup.cpp
index 8c647886072..2a2ca3845bd 100644
--- a/chromium/third_party/WebKit/Source/core/layout/MultiColumnFragmentainerGroup.cpp
+++ b/chromium/third_party/WebKit/Source/core/layout/MultiColumnFragmentainerGroup.cpp
@@ -48,8 +48,6 @@ void MultiColumnFragmentainerGroup::resetColumnHeight()
m_maxColumnHeight = calculateMaxColumnHeight();
- LayoutUnit oldColumnHeight = m_columnHeight;
-
LayoutMultiColumnFlowThread* flowThread = m_columnSet.multiColumnFlowThread();
LayoutMultiColumnFlowThread* enclosingFlowThread = flowThread->enclosingFlowThread();
if (enclosingFlowThread && enclosingFlowThread->isPageLogicalHeightKnown()) {
@@ -63,9 +61,6 @@ void MultiColumnFragmentainerGroup::resetColumnHeight()
setAndConstrainColumnHeight(heightAdjustedForRowOffset(flowThread->columnHeightAvailable()));
}
- if (m_columnHeight != oldColumnHeight)
- m_columnSet.setChildNeedsLayout(MarkOnlyThis);
-
// Content runs are only needed in the initial layout pass, in order to find an initial column
// height, and should have been deleted afterwards. We're about to rebuild the content runs, so
// the list needs to be empty.
diff --git a/chromium/third_party/WebKit/Source/core/layout/compositing/CompositedLayerMapping.cpp b/chromium/third_party/WebKit/Source/core/layout/compositing/CompositedLayerMapping.cpp
index 384e4150c71..a72f8eb429c 100644
--- a/chromium/third_party/WebKit/Source/core/layout/compositing/CompositedLayerMapping.cpp
+++ b/chromium/third_party/WebKit/Source/core/layout/compositing/CompositedLayerMapping.cpp
@@ -200,7 +200,7 @@ CompositedLayerMapping::~CompositedLayerMapping()
updateForegroundLayer(false);
updateBackgroundLayer(false);
updateMaskLayer(false);
- updateClippingMaskLayers(false);
+ updateChildClippingMaskLayer(false);
updateScrollingLayers(false);
updateSquashingLayers(false);
destroyGraphicsLayers();
@@ -466,29 +466,48 @@ bool CompositedLayerMapping::updateGraphicsLayerConfiguration()
// that's plugged into another GraphicsLayer that is part of the hierarchy.
// It has no parent or child GraphicsLayer. For that reason, we process it
// here, after the hierarchy has been updated.
- bool maskLayerChanged = false;
- if (updateMaskLayer(layoutObject->hasMask())) {
- maskLayerChanged = true;
+ bool maskLayerChanged = updateMaskLayer(layoutObject->hasMask());
+ if (maskLayerChanged)
m_graphicsLayer->setMaskLayer(m_maskLayer.get());
- }
bool hasChildClippingLayer = compositor->clipsCompositingDescendants(&m_owningLayer) && (hasClippingLayer() || hasScrollingLayer());
// If we have a border radius or clip path on a scrolling layer, we need a clipping mask to properly
// clip the scrolled contents, even if there are no composited descendants.
bool hasClipPath = layoutObject->style()->clipPath();
bool needsChildClippingMask = (hasClipPath || layoutObject->style()->hasBorderRadius()) && (hasChildClippingLayer || isAcceleratedContents(layoutObject) || hasScrollingLayer());
- if (updateClippingMaskLayers(needsChildClippingMask)) {
- // Clip path clips the entire subtree, including scrollbars. It must be attached directly onto
- // the main m_graphicsLayer.
- if (hasClipPath)
+
+ GraphicsLayer* layerToApplyChildClippingMask = nullptr;
+ bool shouldApplyChildClippingMaskOnContents = false;
+ if (needsChildClippingMask) {
+ if (hasClipPath) {
+ // Clip path clips the entire subtree, including scrollbars. It must be attached directly onto
+ // the main m_graphicsLayer.
+ layerToApplyChildClippingMask = m_graphicsLayer.get();
+ } else if (hasClippingLayer()) {
+ layerToApplyChildClippingMask = clippingLayer();
+ } else if (hasScrollingLayer()) {
+ layerToApplyChildClippingMask = scrollingLayer();
+ } else if (isAcceleratedContents(layoutObject)) {
+ shouldApplyChildClippingMaskOnContents = true;
+ }
+ }
+
+ updateChildClippingMaskLayer(needsChildClippingMask);
+
+ if (layerToApplyChildClippingMask == m_graphicsLayer) {
+ if (m_graphicsLayer->maskLayer() != m_childClippingMaskLayer.get()) {
m_graphicsLayer->setMaskLayer(m_childClippingMaskLayer.get());
- else if (hasClippingLayer())
- clippingLayer()->setMaskLayer(m_childClippingMaskLayer.get());
- else if (hasScrollingLayer())
- scrollingLayer()->setMaskLayer(m_childClippingMaskLayer.get());
- else if (isAcceleratedContents(layoutObject))
- m_graphicsLayer->setContentsClippingMaskLayer(m_childClippingMaskLayer.get());
+ maskLayerChanged = true;
+ }
+ } else if (m_graphicsLayer->maskLayer() && m_graphicsLayer->maskLayer() != m_maskLayer.get()) {
+ m_graphicsLayer->setMaskLayer(nullptr);
+ maskLayerChanged = true;
}
+ if (hasClippingLayer())
+ clippingLayer()->setMaskLayer(layerToApplyChildClippingMask == clippingLayer() ? m_childClippingMaskLayer.get() : nullptr);
+ if (hasScrollingLayer())
+ scrollingLayer()->setMaskLayer(layerToApplyChildClippingMask == scrollingLayer() ? m_childClippingMaskLayer.get() : nullptr);
+ m_graphicsLayer->setContentsClippingMaskLayer(shouldApplyChildClippingMaskOnContents ? m_childClippingMaskLayer.get() : nullptr);
if (m_owningLayer.reflectionInfo()) {
if (m_owningLayer.reflectionInfo()->reflectionLayer()->hasCompositedLayerMapping()) {
@@ -1542,20 +1561,16 @@ bool CompositedLayerMapping::updateMaskLayer(bool needsMaskLayer)
return layerChanged;
}
-bool CompositedLayerMapping::updateClippingMaskLayers(bool needsChildClippingMaskLayer)
+void CompositedLayerMapping::updateChildClippingMaskLayer(bool needsChildClippingMaskLayer)
{
- bool layerChanged = false;
if (needsChildClippingMaskLayer) {
if (!m_childClippingMaskLayer) {
m_childClippingMaskLayer = createGraphicsLayer(CompositingReasonLayerForClippingMask);
m_childClippingMaskLayer->setPaintingPhase(GraphicsLayerPaintChildClippingMask);
- layerChanged = true;
}
- } else if (m_childClippingMaskLayer) {
- m_childClippingMaskLayer = nullptr;
- layerChanged = true;
+ return;
}
- return layerChanged;
+ m_childClippingMaskLayer = nullptr;
}
bool CompositedLayerMapping::updateScrollingLayers(bool needsScrollingLayers)
diff --git a/chromium/third_party/WebKit/Source/core/layout/compositing/CompositedLayerMapping.h b/chromium/third_party/WebKit/Source/core/layout/compositing/CompositedLayerMapping.h
index e083d9dfa20..66d68a9fc74 100644
--- a/chromium/third_party/WebKit/Source/core/layout/compositing/CompositedLayerMapping.h
+++ b/chromium/third_party/WebKit/Source/core/layout/compositing/CompositedLayerMapping.h
@@ -239,7 +239,7 @@ private:
bool updateForegroundLayer(bool needsForegroundLayer);
bool updateBackgroundLayer(bool needsBackgroundLayer);
bool updateMaskLayer(bool needsMaskLayer);
- bool updateClippingMaskLayers(bool needsChildClippingMaskLayer);
+ void updateChildClippingMaskLayer(bool needsChildClippingMaskLayer);
bool requiresHorizontalScrollbarLayer() const { return m_owningLayer.scrollableArea() && m_owningLayer.scrollableArea()->horizontalScrollbar(); }
bool requiresVerticalScrollbarLayer() const { return m_owningLayer.scrollableArea() && m_owningLayer.scrollableArea()->verticalScrollbar(); }
bool requiresScrollCornerLayer() const { return m_owningLayer.scrollableArea() && !m_owningLayer.scrollableArea()->scrollCornerAndResizerRect().isEmpty(); }
diff --git a/chromium/third_party/WebKit/Source/core/loader/FrameLoader.cpp b/chromium/third_party/WebKit/Source/core/loader/FrameLoader.cpp
index 05fe06764a6..170fce2d028 100644
--- a/chromium/third_party/WebKit/Source/core/loader/FrameLoader.cpp
+++ b/chromium/third_party/WebKit/Source/core/loader/FrameLoader.cpp
@@ -315,7 +315,7 @@ void FrameLoader::clear()
// This is the <iframe src="javascript:'html'"> case.
void FrameLoader::replaceDocumentWhileExecutingJavaScriptURL(const String& source, Document* ownerDocument)
{
- if (!m_frame->document()->loader())
+ if (!m_frame->document()->loader() || m_frame->document()->pageDismissalEventBeingDispatched() != Document::NoDismissal)
return;
// DocumentLoader::replaceDocumentWhileExecutingJavaScriptURL can cause the DocumentLoader to get deref'ed and possible destroyed,
@@ -1058,7 +1058,7 @@ bool FrameLoader::prepareForCommit()
if (pdl != m_provisionalDocumentLoader)
return false;
if (m_documentLoader) {
- FrameNavigationDisabler navigationDisabler(m_frame);
+ FrameNavigationDisabler navigationDisabler(*m_frame);
detachDocumentLoader(m_documentLoader);
}
// detachFromFrame() will abort XHRs that haven't completed, which can
diff --git a/chromium/third_party/WebKit/Source/core/loader/NavigationScheduler.cpp b/chromium/third_party/WebKit/Source/core/loader/NavigationScheduler.cpp
index ac4236b1b8d..04f28fe197d 100644
--- a/chromium/third_party/WebKit/Source/core/loader/NavigationScheduler.cpp
+++ b/chromium/third_party/WebKit/Source/core/loader/NavigationScheduler.cpp
@@ -56,17 +56,6 @@ namespace blink {
unsigned NavigationDisablerForBeforeUnload::s_navigationDisableCount = 0;
-FrameNavigationDisabler::FrameNavigationDisabler(LocalFrame* frame)
- : m_navigationScheduler(&frame->navigationScheduler())
-{
- m_navigationScheduler->disableFrameNavigation();
-}
-
-FrameNavigationDisabler::~FrameNavigationDisabler()
-{
- m_navigationScheduler->enableFrameNavigation();
-}
-
class ScheduledNavigation : public NoBaseWillBeGarbageCollectedFinalized<ScheduledNavigation> {
WTF_MAKE_NONCOPYABLE(ScheduledNavigation); WTF_MAKE_FAST_ALLOCATED_WILL_BE_REMOVED(ScheduledNavigation);
public:
@@ -269,7 +258,6 @@ private:
NavigationScheduler::NavigationScheduler(LocalFrame* frame)
: m_frame(frame)
, m_navigateTaskFactory(CancellableTaskFactory::create(this, &NavigationScheduler::navigateTask))
- , m_navigationDisableCount(0)
{
}
@@ -293,12 +281,12 @@ bool NavigationScheduler::isNavigationScheduled() const
inline bool NavigationScheduler::shouldScheduleReload() const
{
- return m_frame->page() && isFrameNavigationAllowed() && NavigationDisablerForBeforeUnload::isNavigationAllowed();
+ return m_frame->page() && m_frame->isNavigationAllowed() && NavigationDisablerForBeforeUnload::isNavigationAllowed();
}
inline bool NavigationScheduler::shouldScheduleNavigation(const String& url) const
{
- return m_frame->page() && isFrameNavigationAllowed() && (protocolIsJavaScript(url) || NavigationDisablerForBeforeUnload::isNavigationAllowed());
+ return m_frame->page() && m_frame->isNavigationAllowed() && (protocolIsJavaScript(url) || NavigationDisablerForBeforeUnload::isNavigationAllowed());
}
void NavigationScheduler::scheduleRedirect(double delay, const String& url)
diff --git a/chromium/third_party/WebKit/Source/core/loader/NavigationScheduler.h b/chromium/third_party/WebKit/Source/core/loader/NavigationScheduler.h
index f51dabe08b9..dc7c114aa0c 100644
--- a/chromium/third_party/WebKit/Source/core/loader/NavigationScheduler.h
+++ b/chromium/third_party/WebKit/Source/core/loader/NavigationScheduler.h
@@ -75,13 +75,8 @@ public:
DECLARE_TRACE();
private:
- friend class FrameNavigationDisabler;
explicit NavigationScheduler(LocalFrame*);
- void disableFrameNavigation() { ++m_navigationDisableCount; }
- void enableFrameNavigation() { --m_navigationDisableCount; }
- bool isFrameNavigationAllowed() const { return !m_navigationDisableCount; }
-
bool shouldScheduleReload() const;
bool shouldScheduleNavigation(const String& url) const;
@@ -93,7 +88,6 @@ private:
RawPtrWillBeMember<LocalFrame> m_frame;
OwnPtr<CancellableTaskFactory> m_navigateTaskFactory;
OwnPtrWillBeMember<ScheduledNavigation> m_redirect;
- int m_navigationDisableCount;
};
class NavigationDisablerForBeforeUnload {
@@ -115,17 +109,6 @@ private:
static unsigned s_navigationDisableCount;
};
-class FrameNavigationDisabler {
- WTF_MAKE_NONCOPYABLE(FrameNavigationDisabler);
- STACK_ALLOCATED();
-public:
- explicit FrameNavigationDisabler(LocalFrame*);
- ~FrameNavigationDisabler();
-
-private:
- RawPtrWillBeMember<NavigationScheduler> m_navigationScheduler;
-};
-
} // namespace blink
#endif // NavigationScheduler_h
diff --git a/chromium/third_party/WebKit/Source/core/paint/BlockFlowPainter.cpp b/chromium/third_party/WebKit/Source/core/paint/BlockFlowPainter.cpp
index f2211c1aeb0..d7384cac1ac 100644
--- a/chromium/third_party/WebKit/Source/core/paint/BlockFlowPainter.cpp
+++ b/chromium/third_party/WebKit/Source/core/paint/BlockFlowPainter.cpp
@@ -23,7 +23,8 @@ void BlockFlowPainter::paintFloats(const PaintInfo& paintInfo, const LayoutPoint
FloatingObjectSetIterator end = floatingObjectSet.end();
for (FloatingObjectSetIterator it = floatingObjectSet.begin(); it != end; ++it) {
const FloatingObject& floatingObject = *it->get();
- if (floatingObject.isDirectlyContained() && !floatingObject.layoutObject()->hasSelfPaintingLayer()) {
+ // Only paint the object if our m_shouldPaint flag is set.
+ if (floatingObject.shouldPaint() && !floatingObject.layoutObject()->hasSelfPaintingLayer()) {
PaintInfo currentPaintInfo(paintInfo);
currentPaintInfo.phase = preservePhase ? paintInfo.phase : PaintPhaseBlockBackground;
// FIXME: LayoutPoint version of xPositionForFloatIncludingMargin would make this much cleaner.
diff --git a/chromium/third_party/WebKit/Source/devtools/front_end/bindings/SASSSourceMapping.js b/chromium/third_party/WebKit/Source/devtools/front_end/bindings/SASSSourceMapping.js
index 370fe3bdc50..642139b42b3 100644
--- a/chromium/third_party/WebKit/Source/devtools/front_end/bindings/SASSSourceMapping.js
+++ b/chromium/third_party/WebKit/Source/devtools/front_end/bindings/SASSSourceMapping.js
@@ -142,9 +142,11 @@ WebInspector.SASSSourceMapping.prototype = {
if (!sourceURL || !header.sourceMapURL || !this._completeSourceMapURLForCSSURL[sourceURL])
return;
var sourceMap = this._sourceMapByStyleSheetURL[sourceURL];
- var sources = sourceMap.sources();
- for (var i = 0; i < sources.length; ++i)
- this._sassURLToCSSURLs.remove(sources[i], sourceURL);
+ if (sourceMap) {
+ var sources = sourceMap.sources();
+ for (var i = 0; i < sources.length; ++i)
+ this._sassURLToCSSURLs.remove(sources[i], sourceURL);
+ }
delete this._sourceMapByStyleSheetURL[sourceURL];
delete this._completeSourceMapURLForCSSURL[sourceURL];
diff --git a/chromium/third_party/WebKit/Source/devtools/front_end/timeline/timelineStatusDialog.css b/chromium/third_party/WebKit/Source/devtools/front_end/timeline/timelineStatusDialog.css
index e5ffd8b2916..83a6023b3e3 100644
--- a/chromium/third_party/WebKit/Source/devtools/front_end/timeline/timelineStatusDialog.css
+++ b/chromium/third_party/WebKit/Source/devtools/front_end/timeline/timelineStatusDialog.css
@@ -15,9 +15,11 @@
margin-top: -1px;
}
-.timeline-status-dialog div {
+.timeline-status-dialog > div {
margin: 2px;
height: 14px;
+ display: flex;
+ align-items: baseline;
}
.timeline-status-dialog ::before {
@@ -57,7 +59,7 @@
}
.timeline-status-dialog .stop-button {
- text-align: center;
margin-top: 8px;
height: 100%;
+ align-self: center;
}
diff --git a/chromium/third_party/WebKit/Source/platform/fonts/Character.cpp b/chromium/third_party/WebKit/Source/platform/fonts/Character.cpp
index ea33001aaeb..5ea155b1d48 100644
--- a/chromium/third_party/WebKit/Source/platform/fonts/Character.cpp
+++ b/chromium/third_party/WebKit/Source/platform/fonts/Character.cpp
@@ -148,6 +148,14 @@ CodePath Character::characterRangeCodePath(const UChar* characters, unsigned len
if (supplementaryCharacter <= 0x1F1FF)
return ComplexPath;
+ // Man and Woman Emojies,
+ // in order to support emoji joiner combinations for family and couple pictographs.
+ // Compare http://unicode.org/reports/tr51/#Emoji_ZWJ_Sequences
+ if (supplementaryCharacter < 0x1F468)
+ continue;
+ if (supplementaryCharacter <= 0x1F469)
+ return ComplexPath;
+
if (supplementaryCharacter < 0xE0100) // U+E0100 through U+E01EF Unicode variation selectors.
continue;
if (supplementaryCharacter <= 0xE01EF)
diff --git a/chromium/third_party/WebKit/Source/platform/fonts/Character.h b/chromium/third_party/WebKit/Source/platform/fonts/Character.h
index bb6ef77c32f..f14fa089168 100644
--- a/chromium/third_party/WebKit/Source/platform/fonts/Character.h
+++ b/chromium/third_party/WebKit/Source/platform/fonts/Character.h
@@ -93,6 +93,11 @@ public:
}
static bool canReceiveTextEmphasis(UChar32);
+ static bool isModifier(UChar32 c)
+ {
+ return c >= 0x1F3FB && c <= 0x1F3FF;
+ }
+
static inline UChar normalizeSpaces(UChar character)
{
if (treatAsSpace(character))
diff --git a/chromium/third_party/WebKit/Source/platform/fonts/shaping/HarfBuzzShaper.cpp b/chromium/third_party/WebKit/Source/platform/fonts/shaping/HarfBuzzShaper.cpp
index 65c28dffe4a..cffaf3fb73e 100644
--- a/chromium/third_party/WebKit/Source/platform/fonts/shaping/HarfBuzzShaper.cpp
+++ b/chromium/third_party/WebKit/Source/platform/fonts/shaping/HarfBuzzShaper.cpp
@@ -610,6 +610,8 @@ static void normalizeCharacters(const TextRun& run, unsigned length, UChar* dest
character = spaceCharacter;
else if (Character::treatAsZeroWidthSpaceInComplexScript(character))
character = zeroWidthSpaceCharacter;
+ else if (Character::isModifier(character))
+ character = zeroWidthSpaceCharacter;
U16_APPEND(destination, *destinationLength, length, character, error);
ASSERT_UNUSED(error, !error);
diff --git a/chromium/third_party/WebKit/Source/web/ChromeClientImpl.cpp b/chromium/third_party/WebKit/Source/web/ChromeClientImpl.cpp
index 557722836f8..78a128c89a7 100644
--- a/chromium/third_party/WebKit/Source/web/ChromeClientImpl.cpp
+++ b/chromium/third_party/WebKit/Source/web/ChromeClientImpl.cpp
@@ -633,6 +633,7 @@ void ChromeClientImpl::openFileChooser(LocalFrame* frame, PassRefPtr<FileChooser
params.initialValue = params.selectedFiles[0];
params.useMediaCapture = fileChooser->settings().useMediaCapture;
params.needLocalPath = fileChooser->settings().allowsDirectoryUpload;
+ params.requestor = frame->document()->url();
WebFileChooserCompletionImpl* chooserCompletion = new WebFileChooserCompletionImpl(fileChooser);
if (client->runFileChooser(params, chooserCompletion))
diff --git a/chromium/third_party/WebKit/Source/web/DevToolsEmulator.cpp b/chromium/third_party/WebKit/Source/web/DevToolsEmulator.cpp
index 5d33126a0ef..63afccf836d 100644
--- a/chromium/third_party/WebKit/Source/web/DevToolsEmulator.cpp
+++ b/chromium/third_party/WebKit/Source/web/DevToolsEmulator.cpp
@@ -245,13 +245,13 @@ void DevToolsEmulator::enableMobileEmulation()
m_emulateMobileEnabled = true;
m_isOverlayScrollbarsEnabled = RuntimeEnabledFeatures::overlayScrollbarsEnabled();
RuntimeEnabledFeatures::setOverlayScrollbarsEnabled(true);
+ m_webViewImpl->page()->settings().setUseMobileViewportStyle(true);
m_webViewImpl->enableViewport();
m_webViewImpl->settings()->setViewportMetaEnabled(true);
m_webViewImpl->page()->frameHost().visualViewport().initializeScrollbars();
m_webViewImpl->settings()->setShrinksViewportContentToFit(true);
m_webViewImpl->page()->settings().setTextAutosizingEnabled(true);
m_webViewImpl->page()->settings().setPreferCompositingToLCDTextEnabled(true);
- m_webViewImpl->page()->settings().setUseMobileViewportStyle(true);
m_webViewImpl->page()->settings().setPluginsEnabled(false);
m_webViewImpl->page()->settings().setAvailablePointerTypes(PointerTypeCoarse);
m_webViewImpl->page()->settings().setPrimaryPointerType(PointerTypeCoarse);
diff --git a/chromium/third_party/WebKit/Source/web/WebPagePopupImpl.cpp b/chromium/third_party/WebKit/Source/web/WebPagePopupImpl.cpp
index 70009483bcc..fc6103311f0 100644
--- a/chromium/third_party/WebKit/Source/web/WebPagePopupImpl.cpp
+++ b/chromium/third_party/WebKit/Source/web/WebPagePopupImpl.cpp
@@ -124,7 +124,7 @@ private:
if (m_popup->isAcceleratedCompositingActive()) {
ASSERT(m_popup->m_layerTreeView);
- m_popup->m_layerTreeView->setNeedsCompositorUpdate();
+ m_popup->m_layerTreeView->setNeedsBeginFrame();
return;
}
m_popup->m_widgetClient->scheduleAnimation();
diff --git a/chromium/third_party/WebKit/Source/web/WebPageSerializerImpl.cpp b/chromium/third_party/WebKit/Source/web/WebPageSerializerImpl.cpp
index 34bc016e83c..93c697a708a 100644
--- a/chromium/third_party/WebKit/Source/web/WebPageSerializerImpl.cpp
+++ b/chromium/third_party/WebKit/Source/web/WebPageSerializerImpl.cpp
@@ -453,9 +453,9 @@ WebPageSerializerImpl::WebPageSerializerImpl(WebFrame* frame,
bool WebPageSerializerImpl::serialize()
{
bool didSerialization = false;
- KURL mainURL = m_specifiedWebLocalFrameImpl->frame()->document()->url();
WebLocalFrameImpl* webFrame = m_specifiedWebLocalFrameImpl;
+ bool isMainFrame = webFrame->frame()->isMainFrame();
Document* document = webFrame->frame()->document();
const KURL& url = document->url();
@@ -463,7 +463,7 @@ bool WebPageSerializerImpl::serialize()
didSerialization = true;
const WTF::TextEncoding& textEncoding = document->encoding().isValid() ? document->encoding() : UTF8Encoding();
- String directoryName = url == mainURL ? m_localDirectoryName : "";
+ String directoryName = isMainFrame ? m_localDirectoryName : "";
SerializeDomParam param(url, textEncoding, document, directoryName);
diff --git a/chromium/third_party/WebKit/Source/web/WebPluginContainerImpl.cpp b/chromium/third_party/WebKit/Source/web/WebPluginContainerImpl.cpp
index 5715802c81c..bd2e7d0eb13 100644
--- a/chromium/third_party/WebKit/Source/web/WebPluginContainerImpl.cpp
+++ b/chromium/third_party/WebKit/Source/web/WebPluginContainerImpl.cpp
@@ -724,8 +724,10 @@ void WebPluginContainerImpl::dispose()
for (size_t i = 0; i < m_pluginLoadObservers.size(); ++i)
m_pluginLoadObservers[i]->clearPluginContainer();
- if (m_webPlugin)
+ if (m_webPlugin) {
+ RELEASE_ASSERT(!m_webPlugin->container() || m_webPlugin->container() == this);
m_webPlugin->destroy();
+ }
m_webPlugin = nullptr;
if (m_webLayer) {
diff --git a/chromium/third_party/WebKit/Source/wtf/HashTable.h b/chromium/third_party/WebKit/Source/wtf/HashTable.h
index c85ddc2ad79..f8741730afd 100644
--- a/chromium/third_party/WebKit/Source/wtf/HashTable.h
+++ b/chromium/third_party/WebKit/Source/wtf/HashTable.h
@@ -151,6 +151,7 @@ private:
// ListHashSet, which has its own iterators that tolerate modification
// of the underlying set.
ASSERT(m_containerModifications == m_container->modifications());
+ ASSERT(!m_container->accessForbidden());
}
public:
@@ -411,7 +412,10 @@ public:
ASSERT(!Allocator::isGarbageCollected);
if (LIKELY(!m_table))
return;
+ RELEASE_ASSERT(!m_accessForbidden);
+ m_accessForbidden = true;
deleteAllBucketsAndDeallocate(m_table, m_tableSize);
+ m_accessForbidden = false;
m_table = nullptr;
}
@@ -428,9 +432,21 @@ public:
const_iterator begin() const { return isEmpty() ? end() : makeConstIterator(m_table); }
const_iterator end() const { return makeKnownGoodConstIterator(m_table + m_tableSize); }
- unsigned size() const { return m_keyCount; }
- unsigned capacity() const { return m_tableSize; }
- bool isEmpty() const { return !m_keyCount; }
+ unsigned size() const
+ {
+ RELEASE_ASSERT(!m_accessForbidden);
+ return m_keyCount;
+ }
+ unsigned capacity() const
+ {
+ RELEASE_ASSERT(!m_accessForbidden);
+ return m_tableSize;
+ }
+ bool isEmpty() const
+ {
+ RELEASE_ASSERT(!m_accessForbidden);
+ return !m_keyCount;
+ }
void reserveCapacityForSize(unsigned size);
@@ -468,6 +484,7 @@ public:
template <typename VisitorDispatcher> void trace(VisitorDispatcher);
+ bool accessForbidden() const { return m_accessForbidden; }
#if ENABLE(ASSERT)
int64_t modifications() const { return m_modifications; }
void registerModification() { m_modifications++; }
@@ -513,7 +530,11 @@ private:
ValueType* reinsert(ValueType&);
static void initializeBucket(ValueType& bucket);
- static void deleteBucket(ValueType& bucket) { bucket.~ValueType(); Traits::constructDeletedValue(bucket, Allocator::isGarbageCollected); }
+ static void deleteBucket(ValueType& bucket)
+ {
+ bucket.~ValueType();
+ Traits::constructDeletedValue(bucket, Allocator::isGarbageCollected);
+ }
FullLookupType makeLookupResult(ValueType* position, bool found, unsigned hash)
{ return FullLookupType(LookupType(position, found), hash); }
@@ -540,8 +561,9 @@ private:
ValueType* m_table;
unsigned m_tableSize;
unsigned m_keyCount;
- unsigned m_deletedCount:31;
+ unsigned m_deletedCount:30;
unsigned m_queueFlag:1;
+ unsigned m_accessForbidden:1;
#if ENABLE(ASSERT)
unsigned m_modifications;
#endif
@@ -602,6 +624,7 @@ inline HashTable<Key, Value, Extractor, HashFunctions, Traits, KeyTraits, Alloca
, m_keyCount(0)
, m_deletedCount(0)
, m_queueFlag(false)
+ , m_accessForbidden(false)
#if ENABLE(ASSERT)
, m_modifications(0)
#endif
@@ -652,6 +675,7 @@ template <typename Key, typename Value, typename Extractor, typename HashFunctio
template <typename HashTranslator, typename T>
inline const Value* HashTable<Key, Value, Extractor, HashFunctions, Traits, KeyTraits, Allocator>::lookup(T key) const
{
+ RELEASE_ASSERT(!m_accessForbidden);
ASSERT((HashTableKeyChecker<HashTranslator, KeyTraits, HashFunctions::safeToCompareToEmptyOrDeleted>::checkKey(key)));
const ValueType* table = m_table;
if (!table)
@@ -691,6 +715,7 @@ template <typename Key, typename Value, typename Extractor, typename HashFunctio
template <typename HashTranslator, typename T>
inline typename HashTable<Key, Value, Extractor, HashFunctions, Traits, KeyTraits, Allocator>::LookupType HashTable<Key, Value, Extractor, HashFunctions, Traits, KeyTraits, Allocator>::lookupForWriting(const T& key)
{
+ RELEASE_ASSERT(!m_accessForbidden);
ASSERT(m_table);
registerModification();
@@ -733,6 +758,7 @@ template <typename Key, typename Value, typename Extractor, typename HashFunctio
template <typename HashTranslator, typename T>
inline typename HashTable<Key, Value, Extractor, HashFunctions, Traits, KeyTraits, Allocator>::FullLookupType HashTable<Key, Value, Extractor, HashFunctions, Traits, KeyTraits, Allocator>::fullLookupForWriting(const T& key)
{
+ RELEASE_ASSERT(!m_accessForbidden);
ASSERT(m_table);
registerModification();
@@ -801,6 +827,7 @@ template <typename Key, typename Value, typename Extractor, typename HashFunctio
template <typename HashTranslator, typename T, typename Extra>
typename HashTable<Key, Value, Extractor, HashFunctions, Traits, KeyTraits, Allocator>::AddResult HashTable<Key, Value, Extractor, HashFunctions, Traits, KeyTraits, Allocator>::add(const T& key, const Extra& extra)
{
+ RELEASE_ASSERT(!m_accessForbidden);
ASSERT(Allocator::isAllocationAllowed());
if (!m_table)
expand();
@@ -866,6 +893,7 @@ template <typename Key, typename Value, typename Extractor, typename HashFunctio
template <typename HashTranslator, typename T, typename Extra>
typename HashTable<Key, Value, Extractor, HashFunctions, Traits, KeyTraits, Allocator>::AddResult HashTable<Key, Value, Extractor, HashFunctions, Traits, KeyTraits, Allocator>::addPassingHashCode(const T& key, const Extra& extra)
{
+ RELEASE_ASSERT(!m_accessForbidden);
ASSERT(Allocator::isAllocationAllowed());
if (!m_table)
expand();
@@ -947,6 +975,7 @@ bool HashTable<Key, Value, Extractor, HashFunctions, Traits, KeyTraits, Allocato
template <typename Key, typename Value, typename Extractor, typename HashFunctions, typename Traits, typename KeyTraits, typename Allocator>
void HashTable<Key, Value, Extractor, HashFunctions, Traits, KeyTraits, Allocator>::remove(ValueType* pos)
{
+ RELEASE_ASSERT(!m_accessForbidden);
registerModification();
#if DUMP_HASHTABLE_STATS
atomicIncrement(&HashTableStats::numRemoves);
@@ -955,7 +984,10 @@ void HashTable<Key, Value, Extractor, HashFunctions, Traits, KeyTraits, Allocato
++m_stats->numRemoves;
#endif
+ RELEASE_ASSERT(!m_accessForbidden);
+ m_accessForbidden = true;
deleteBucket(*pos);
+ m_accessForbidden = false;
++m_deletedCount;
--m_keyCount;
@@ -1092,7 +1124,11 @@ Value* HashTable<Key, Value, Extractor, HashFunctions, Traits, KeyTraits, Alloca
initializeBucket(originalTable[i]);
}
newEntry = rehashTo(originalTable, newTableSize, newEntry);
+
+ RELEASE_ASSERT(!m_accessForbidden);
+ m_accessForbidden = true;
deleteAllBucketsAndDeallocate(temporaryTable, oldTableSize);
+ m_accessForbidden = false;
return newEntry;
}
@@ -1162,7 +1198,11 @@ Value* HashTable<Key, Value, Extractor, HashFunctions, Traits, KeyTraits, Alloca
ValueType* newTable = allocateTable(newTableSize);
Value* newEntry = rehashTo(newTable, newTableSize, entry);
+
+ RELEASE_ASSERT(!m_accessForbidden);
+ m_accessForbidden = true;
deleteAllBucketsAndDeallocate(oldTable, oldTableSize);
+ m_accessForbidden = false;
return newEntry;
}
@@ -1174,7 +1214,10 @@ void HashTable<Key, Value, Extractor, HashFunctions, Traits, KeyTraits, Allocato
if (!m_table)
return;
+ RELEASE_ASSERT(!m_accessForbidden);
+ m_accessForbidden = true;
deleteAllBucketsAndDeallocate(m_table, m_tableSize);
+ m_accessForbidden = false;
m_table = nullptr;
m_tableSize = 0;
m_keyCount = 0;
@@ -1187,6 +1230,7 @@ HashTable<Key, Value, Extractor, HashFunctions, Traits, KeyTraits, Allocator>::H
, m_keyCount(0)
, m_deletedCount(0)
, m_queueFlag(false)
+ , m_accessForbidden(false)
#if ENABLE(ASSERT)
, m_modifications(0)
#endif
@@ -1205,6 +1249,7 @@ HashTable<Key, Value, Extractor, HashFunctions, Traits, KeyTraits, Allocator>::H
template <typename Key, typename Value, typename Extractor, typename HashFunctions, typename Traits, typename KeyTraits, typename Allocator>
void HashTable<Key, Value, Extractor, HashFunctions, Traits, KeyTraits, Allocator>::swap(HashTable& other)
{
+ RELEASE_ASSERT(!m_accessForbidden);
std::swap(m_table, other.m_table);
std::swap(m_tableSize, other.m_tableSize);
std::swap(m_keyCount, other.m_keyCount);
diff --git a/chromium/third_party/WebKit/Source/wtf/PartitionAlloc.cpp b/chromium/third_party/WebKit/Source/wtf/PartitionAlloc.cpp
index d076568fcfc..8a4b0dec169 100644
--- a/chromium/third_party/WebKit/Source/wtf/PartitionAlloc.cpp
+++ b/chromium/third_party/WebKit/Source/wtf/PartitionAlloc.cpp
@@ -164,9 +164,9 @@ void partitionAllocInit(PartitionRoot* root, size_t numBuckets, size_t maxAlloca
void partitionAllocGenericInit(PartitionRootGeneric* root)
{
- partitionAllocBaseInit(root);
+ spinLockLock(&root->lock);
- root->lock = 0;
+ partitionAllocBaseInit(root);
// Precalculate some shift and mask constants used in the hot path.
// Example: malloc(41) == 101001 binary.
@@ -241,6 +241,8 @@ void partitionAllocGenericInit(PartitionRootGeneric* root)
// And there's one last bucket lookup that will be hit for e.g. malloc(-1),
// which tries to overflow to a non-existant order.
*bucketPtr = &PartitionRootGeneric::gPagedBucket;
+
+ spinLockUnlock(&root->lock);
}
static bool partitionAllocShutdownBucket(PartitionBucket* bucket)
diff --git a/chromium/third_party/WebKit/Source/wtf/Partitions.cpp b/chromium/third_party/WebKit/Source/wtf/Partitions.cpp
index 60b30dbba20..64e3b2f1276 100644
--- a/chromium/third_party/WebKit/Source/wtf/Partitions.cpp
+++ b/chromium/third_party/WebKit/Source/wtf/Partitions.cpp
@@ -73,18 +73,26 @@ void Partitions::setHistogramEnumeration(HistogramEnumerationFunction histogramE
void Partitions::shutdown()
{
+ spinLockLock(&s_initializationLock);
+
// We could ASSERT here for a memory leak within the partition, but it leads
// to very hard to diagnose ASSERTs, so it's best to leave leak checking for
// the valgrind and heapcheck bots, which run without partitions.
- (void) m_layoutAllocator.shutdown();
- (void) m_nodeAllocator.shutdown();
- (void) m_bufferAllocator.shutdown();
- (void) m_fastMallocAllocator.shutdown();
+ if (s_initialized) {
+ (void) m_layoutAllocator.shutdown();
+ (void) m_nodeAllocator.shutdown();
+ (void) m_bufferAllocator.shutdown();
+ (void) m_fastMallocAllocator.shutdown();
+ }
+
+ spinLockUnlock(&s_initializationLock);
}
void Partitions::decommitFreeableMemory()
{
- ASSERT(isMainThread());
+ RELEASE_ASSERT(isMainThread());
+ if (!s_initialized)
+ return;
partitionPurgeMemoryGeneric(bufferPartition(), PartitionPurgeDecommitEmptyPages);
partitionPurgeMemoryGeneric(fastMallocPartition(), PartitionPurgeDecommitEmptyPages);
diff --git a/chromium/third_party/WebKit/public/web/WebFileChooserParams.h b/chromium/third_party/WebKit/public/web/WebFileChooserParams.h
index eaef3110659..8924f2f7360 100644
--- a/chromium/third_party/WebKit/public/web/WebFileChooserParams.h
+++ b/chromium/third_party/WebKit/public/web/WebFileChooserParams.h
@@ -32,6 +32,7 @@
#define WebFileChooserParams_h
#include "../platform/WebString.h"
+#include "../platform/WebURL.h"
#include "../platform/WebVector.h"
#include "WebFileChooserCompletion.h"
@@ -76,6 +77,9 @@ struct WebFileChooserParams {
// WebFileChooserCompletion that can handle files without local paths,
// 'false' should be specified to the flag.
bool needLocalPath;
+ // If non-empty, represents the URL of the requestor if the request was
+ // initiated by a document.
+ WebURL requestor;
WebFileChooserParams()
: multiSelect(false)
diff --git a/chromium/third_party/WebKit/public/web/WebPlugin.h b/chromium/third_party/WebKit/public/web/WebPlugin.h
index 20aaf7884cd..58888f6c19f 100644
--- a/chromium/third_party/WebKit/public/web/WebPlugin.h
+++ b/chromium/third_party/WebKit/public/web/WebPlugin.h
@@ -61,14 +61,21 @@ template <typename T> class WebVector;
class WebPlugin {
public:
+ // Perform any initialization work given the container this plugin will use to
+ // communicate with renderer code. Plugins that return false here must
+ // subsequently return nullptr for the container() method.
virtual bool initialize(WebPluginContainer*) = 0;
+
+ // Plugins must arrange for themselves to be deleted sometime during or after this
+ // method is called.
virtual void destroy() = 0;
- virtual WebPluginContainer* container() const { return 0; }
+ // Must return null container when the initialize() method returns false.
+ virtual WebPluginContainer* container() const { return nullptr; }
virtual void containerDidDetachFromParent() { }
- virtual NPObject* scriptableObject() { return 0; }
- virtual struct _NPP* pluginNPP() { return 0; }
+ virtual NPObject* scriptableObject() { return nullptr; }
+ virtual struct _NPP* pluginNPP() { return nullptr; }
// The same as scriptableObject() but allows to expose scriptable interface
// through plain v8 object instead of NPObject.
diff --git a/chromium/third_party/angle/src/compiler.gypi b/chromium/third_party/angle/src/compiler.gypi
index cecd2d73004..cda93500872 100644
--- a/chromium/third_party/angle/src/compiler.gypi
+++ b/chromium/third_party/angle/src/compiler.gypi
@@ -159,8 +159,6 @@
'compiler/translator/BuiltInFunctionEmulatorHLSL.h',
'compiler/translator/OutputHLSL.cpp',
'compiler/translator/OutputHLSL.h',
- 'compiler/translator/RemoveDynamicIndexing.cpp',
- 'compiler/translator/RemoveDynamicIndexing.h',
'compiler/translator/RemoveSwitchFallThrough.cpp',
'compiler/translator/RemoveSwitchFallThrough.h',
'compiler/translator/RewriteElseBlocks.cpp',
diff --git a/chromium/third_party/angle/src/compiler/translator/Compiler.cpp b/chromium/third_party/angle/src/compiler/translator/Compiler.cpp
index 9707250da65..fee3ed3bd18 100644
--- a/chromium/third_party/angle/src/compiler/translator/Compiler.cpp
+++ b/chromium/third_party/angle/src/compiler/translator/Compiler.cpp
@@ -153,15 +153,6 @@ TCompiler::~TCompiler()
{
}
-bool TCompiler::shouldRunLoopAndIndexingValidation(int compileOptions) const
-{
- // If compiling an ESSL 1.00 shader for WebGL, or if its been requested through the API,
- // validate loop and indexing as well (to verify that the shader only uses minimal functionality
- // of ESSL 1.00 as in Appendix A of the spec).
- return (IsWebGLBasedSpec(shaderSpec) && shaderVersion == 100) ||
- (compileOptions & SH_VALIDATE_LOOP_INDEXING);
-}
-
bool TCompiler::Init(const ShBuiltInResources& resources)
{
shaderVersion = 100;
@@ -239,6 +230,12 @@ TIntermNode *TCompiler::compileTreeImpl(const char *const shaderStrings[],
success = false;
}
+ // If compiling an ESSL 1.00 shader for WebGL, or if its been requested through the API,
+ // validate loop and indexing as well (to verify that the shader only uses minimal functionality
+ // of ESSL 1.00 as in Appendix A of the spec).
+ bool validateLoopAndIndexing = (IsWebGLBasedSpec(shaderSpec) && shaderVersion == 100) ||
+ (compileOptions & SH_VALIDATE_LOOP_INDEXING);
+
TIntermNode *root = nullptr;
if (success)
@@ -281,7 +278,7 @@ TIntermNode *TCompiler::compileTreeImpl(const char *const shaderStrings[],
if (success && shaderVersion == 300 && shaderType == GL_FRAGMENT_SHADER)
success = validateOutputs(root);
- if (success && shouldRunLoopAndIndexingValidation(compileOptions))
+ if (success && validateLoopAndIndexing)
success = validateLimitations(root);
if (success && (compileOptions & SH_TIMING_RESTRICTIONS))
diff --git a/chromium/third_party/angle/src/compiler/translator/Compiler.h b/chromium/third_party/angle/src/compiler/translator/Compiler.h
index 736d9ef2423..491e8e6ba87 100644
--- a/chromium/third_party/angle/src/compiler/translator/Compiler.h
+++ b/chromium/third_party/angle/src/compiler/translator/Compiler.h
@@ -101,8 +101,6 @@ class TCompiler : public TShHandleBase
ShShaderOutput getOutputType() const { return outputType; }
const std::string &getBuiltInResourcesString() const { return builtInResourcesString; }
- bool shouldRunLoopAndIndexingValidation(int compileOptions) const;
-
// Get the resources set by InitBuiltInSymbolTable
const ShBuiltInResources& getResources() const;
diff --git a/chromium/third_party/angle/src/compiler/translator/IntermNode.cpp b/chromium/third_party/angle/src/compiler/translator/IntermNode.cpp
index 0a089c66769..d9658d4e852 100644
--- a/chromium/third_party/angle/src/compiler/translator/IntermNode.cpp
+++ b/chromium/third_party/angle/src/compiler/translator/IntermNode.cpp
@@ -311,13 +311,17 @@ bool TIntermAggregate::replaceChildNodeWithMultiple(TIntermNode *original, TInte
bool TIntermAggregate::insertChildNodes(TIntermSequence::size_type position, TIntermSequence insertions)
{
- if (position > mSequence.size())
+ TIntermSequence::size_type itPosition = 0;
+ for (auto it = mSequence.begin(); it < mSequence.end(); ++it)
{
- return false;
+ if (itPosition == position)
+ {
+ mSequence.insert(it, insertions.begin(), insertions.end());
+ return true;
+ }
+ ++itPosition;
}
- auto it = mSequence.begin() + position;
- mSequence.insert(it, insertions.begin(), insertions.end());
- return true;
+ return false;
}
void TIntermAggregate::setPrecisionFromChildren()
@@ -2544,20 +2548,9 @@ void TIntermTraverser::updateTree()
{
const NodeInsertMultipleEntry &insertion = mInsertions[ii];
ASSERT(insertion.parent);
- if (!insertion.insertionsAfter.empty())
- {
- bool inserted = insertion.parent->insertChildNodes(insertion.position + 1,
- insertion.insertionsAfter);
- ASSERT(inserted);
- UNUSED_ASSERTION_VARIABLE(inserted);
- }
- if (!insertion.insertionsBefore.empty())
- {
- bool inserted =
- insertion.parent->insertChildNodes(insertion.position, insertion.insertionsBefore);
- ASSERT(inserted);
- UNUSED_ASSERTION_VARIABLE(inserted);
- }
+ bool inserted = insertion.parent->insertChildNodes(insertion.position, insertion.insertions);
+ ASSERT(inserted);
+ UNUSED_ASSERTION_VARIABLE(inserted);
}
for (size_t ii = 0; ii < mReplacements.size(); ++ii)
{
diff --git a/chromium/third_party/angle/src/compiler/translator/IntermNode.h b/chromium/third_party/angle/src/compiler/translator/IntermNode.h
index e4ce8459399..ef1125218e1 100644
--- a/chromium/third_party/angle/src/compiler/translator/IntermNode.h
+++ b/chromium/third_party/angle/src/compiler/translator/IntermNode.h
@@ -781,21 +781,16 @@ class TIntermTraverser : angle::NonCopyable
// To insert multiple nodes on the parent aggregate node
struct NodeInsertMultipleEntry
{
- NodeInsertMultipleEntry(TIntermAggregate *_parent,
- TIntermSequence::size_type _position,
- TIntermSequence _insertionsBefore,
- TIntermSequence _insertionsAfter)
+ NodeInsertMultipleEntry(TIntermAggregate *_parent, TIntermSequence::size_type _position, TIntermSequence _insertions)
: parent(_parent),
- position(_position),
- insertionsBefore(_insertionsBefore),
- insertionsAfter(_insertionsAfter)
+ position(_position),
+ insertions(_insertions)
{
}
TIntermAggregate *parent;
TIntermSequence::size_type position;
- TIntermSequence insertionsBefore;
- TIntermSequence insertionsAfter;
+ TIntermSequence insertions;
};
// During traversing, save all the changes that need to happen into
@@ -812,11 +807,6 @@ class TIntermTraverser : angle::NonCopyable
// supported.
void insertStatementsInParentBlock(const TIntermSequence &insertions);
- // Same as above, but supports simultaneous insertion of statements before and after the node
- // currently being traversed.
- void insertStatementsInParentBlock(const TIntermSequence &insertionsBefore,
- const TIntermSequence &insertionsAfter);
-
// Helper to create a temporary symbol node with the given qualifier.
TIntermSymbol *createTempSymbol(const TType &type, TQualifier qualifier);
// Helper to create a temporary symbol node.
diff --git a/chromium/third_party/angle/src/compiler/translator/IntermTraverse.cpp b/chromium/third_party/angle/src/compiler/translator/IntermTraverse.cpp
index 269a19bb247..f07a3e0d11c 100644
--- a/chromium/third_party/angle/src/compiler/translator/IntermTraverse.cpp
+++ b/chromium/third_party/angle/src/compiler/translator/IntermTraverse.cpp
@@ -81,16 +81,8 @@ void TIntermTraverser::popParentBlock()
void TIntermTraverser::insertStatementsInParentBlock(const TIntermSequence &insertions)
{
- TIntermSequence emptyInsertionsAfter;
- insertStatementsInParentBlock(insertions, emptyInsertionsAfter);
-}
-
-void TIntermTraverser::insertStatementsInParentBlock(const TIntermSequence &insertionsBefore,
- const TIntermSequence &insertionsAfter)
-{
ASSERT(!mParentBlockStack.empty());
- NodeInsertMultipleEntry insert(mParentBlockStack.back().node, mParentBlockStack.back().pos,
- insertionsBefore, insertionsAfter);
+ NodeInsertMultipleEntry insert(mParentBlockStack.back().node, mParentBlockStack.back().pos, insertions);
mInsertions.push_back(insert);
}
diff --git a/chromium/third_party/angle/src/compiler/translator/RemoveDynamicIndexing.cpp b/chromium/third_party/angle/src/compiler/translator/RemoveDynamicIndexing.cpp
deleted file mode 100644
index b0862713965..00000000000
--- a/chromium/third_party/angle/src/compiler/translator/RemoveDynamicIndexing.cpp
+++ /dev/null
@@ -1,508 +0,0 @@
-//
-// Copyright (c) 2002-2015 The ANGLE Project Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-//
-// RemoveDynamicIndexing is an AST traverser to remove dynamic indexing of vectors and matrices,
-// replacing them with calls to functions that choose which component to return or write.
-//
-
-#include "compiler/translator/RemoveDynamicIndexing.h"
-
-#include "compiler/translator/InfoSink.h"
-#include "compiler/translator/IntermNode.h"
-#include "compiler/translator/SymbolTable.h"
-
-namespace
-{
-
-TName GetIndexFunctionName(const TType &type, bool write)
-{
- TInfoSinkBase nameSink;
- nameSink << "dyn_index_";
- if (write)
- {
- nameSink << "write_";
- }
- if (type.isMatrix())
- {
- nameSink << "mat" << type.getCols() << "x" << type.getRows();
- }
- else
- {
- switch (type.getBasicType())
- {
- case EbtInt:
- nameSink << "ivec";
- break;
- case EbtBool:
- nameSink << "bvec";
- break;
- case EbtUInt:
- nameSink << "uvec";
- break;
- case EbtFloat:
- nameSink << "vec";
- break;
- default:
- UNREACHABLE();
- }
- nameSink << type.getNominalSize();
- }
- TString nameString = TFunction::mangleName(nameSink.c_str());
- TName name(nameString);
- name.setInternal(true);
- return name;
-}
-
-TIntermSymbol *CreateBaseSymbol(const TType &type)
-{
- TIntermSymbol *symbol = new TIntermSymbol(0, "base", type);
- symbol->setInternal(true);
- return symbol;
-}
-
-TIntermSymbol *CreateIndexSymbol()
-{
- TIntermSymbol *symbol = new TIntermSymbol(0, "index", TType(EbtInt, EbpHigh));
- symbol->setInternal(true);
- return symbol;
-}
-
-TIntermSymbol *CreateValueSymbol(const TType &type)
-{
- TIntermSymbol *symbol = new TIntermSymbol(0, "value", type);
- symbol->setInternal(true);
- return symbol;
-}
-
-TIntermConstantUnion *CreateIntConstantNode(int i)
-{
- TConstantUnion *constant = new TConstantUnion();
- constant->setIConst(i);
- return new TIntermConstantUnion(constant, TType(EbtInt, EbpHigh));
-}
-
-TIntermBinary *CreateIndexDirectBaseSymbolNode(const TType &indexedType,
- const TType &fieldType,
- const int index)
-{
- TIntermBinary *indexNode = new TIntermBinary(EOpIndexDirect);
- indexNode->setType(fieldType);
- indexNode->setLeft(CreateBaseSymbol(indexedType));
- indexNode->setRight(CreateIntConstantNode(index));
- return indexNode;
-}
-
-TIntermBinary *CreateAssignValueSymbolNode(TIntermTyped *targetNode, const TType &assignedValueType)
-{
- TIntermBinary *assignNode = new TIntermBinary(EOpAssign);
- assignNode->setType(assignedValueType);
- assignNode->setLeft(targetNode);
- assignNode->setRight(CreateValueSymbol(assignedValueType));
- return assignNode;
-}
-
-TIntermTyped *EnsureSignedInt(TIntermTyped *node)
-{
- if (node->getBasicType() == EbtInt)
- return node;
-
- TIntermAggregate *convertedNode = new TIntermAggregate(EOpConstructInt);
- convertedNode->setType(TType(EbtInt));
- convertedNode->getSequence()->push_back(node);
- convertedNode->setPrecisionFromChildren();
- return convertedNode;
-}
-
-TType GetFieldType(const TType &indexedType)
-{
- if (indexedType.isMatrix())
- {
- TType fieldType = TType(indexedType.getBasicType(), indexedType.getPrecision());
- fieldType.setPrimarySize(static_cast<unsigned char>(indexedType.getRows()));
- return fieldType;
- }
- else
- {
- return TType(indexedType.getBasicType(), indexedType.getPrecision());
- }
-}
-
-// Generate a read or write function for one field in a vector/matrix.
-// Out-of-range indices are clamped. This is consistent with how ANGLE handles out-of-range
-// indices in other places.
-// Note that indices can be either int or uint. We create only int versions of the functions,
-// and convert uint indices to int at the call site.
-// read function example:
-// float dyn_index_vec2(in vec2 base, in int index)
-// {
-// switch(index)
-// {
-// case (0):
-// return base[0];
-// case (1):
-// return base[1];
-// default:
-// break;
-// }
-// if (index < 0)
-// return base[0];
-// return base[1];
-// }
-// write function example:
-// void dyn_index_write_vec2(inout vec2 base, in int index, in float value)
-// {
-// switch(index)
-// {
-// case (0):
-// base[0] = value;
-// return;
-// case (1):
-// base[1] = value;
-// return;
-// default:
-// break;
-// }
-// if (index < 0)
-// {
-// base[0] = value;
-// return;
-// }
-// base[1] = value;
-// }
-// Note that else is not used in above functions to avoid the RewriteElseBlocks transformation.
-TIntermAggregate *GetIndexFunctionDefinition(TType type, bool write)
-{
- ASSERT(!type.isArray());
- // Conservatively use highp here, even if the indexed type is not highp. That way the code can't
- // end up using mediump version of an indexing function for a highp value, if both mediump and
- // highp values are being indexed in the shader. For HLSL precision doesn't matter, but in
- // principle this code could be used with multiple backends.
- type.setPrecision(EbpHigh);
- TIntermAggregate *indexingFunction = new TIntermAggregate(EOpFunction);
- indexingFunction->setNameObj(GetIndexFunctionName(type, write));
-
- TType fieldType = GetFieldType(type);
- int numCases = 0;
- if (type.isMatrix())
- {
- numCases = type.getCols();
- }
- else
- {
- numCases = type.getNominalSize();
- }
- if (write)
- {
- indexingFunction->setType(TType(EbtVoid));
- }
- else
- {
- indexingFunction->setType(fieldType);
- }
-
- TIntermAggregate *paramsNode = new TIntermAggregate(EOpParameters);
- TIntermSymbol *baseParam = CreateBaseSymbol(type);
- if (write)
- baseParam->getTypePointer()->setQualifier(EvqInOut);
- else
- baseParam->getTypePointer()->setQualifier(EvqIn);
- paramsNode->getSequence()->push_back(baseParam);
- TIntermSymbol *indexParam = CreateIndexSymbol();
- indexParam->getTypePointer()->setQualifier(EvqIn);
- paramsNode->getSequence()->push_back(indexParam);
- if (write)
- {
- TIntermSymbol *valueParam = CreateValueSymbol(fieldType);
- valueParam->getTypePointer()->setQualifier(EvqIn);
- paramsNode->getSequence()->push_back(valueParam);
- }
- indexingFunction->getSequence()->push_back(paramsNode);
-
- TIntermAggregate *statementList = new TIntermAggregate(EOpSequence);
- for (int i = 0; i < numCases; ++i)
- {
- TIntermCase *caseNode = new TIntermCase(CreateIntConstantNode(i));
- statementList->getSequence()->push_back(caseNode);
-
- TIntermBinary *indexNode = CreateIndexDirectBaseSymbolNode(type, fieldType, i);
- if (write)
- {
- TIntermBinary *assignNode = CreateAssignValueSymbolNode(indexNode, fieldType);
- statementList->getSequence()->push_back(assignNode);
- TIntermBranch *returnNode = new TIntermBranch(EOpReturn, nullptr);
- statementList->getSequence()->push_back(returnNode);
- }
- else
- {
- TIntermBranch *returnNode = new TIntermBranch(EOpReturn, indexNode);
- statementList->getSequence()->push_back(returnNode);
- }
- }
-
- // Default case
- TIntermCase *defaultNode = new TIntermCase(nullptr);
- statementList->getSequence()->push_back(defaultNode);
- TIntermBranch *breakNode = new TIntermBranch(EOpBreak, nullptr);
- statementList->getSequence()->push_back(breakNode);
-
- TIntermSwitch *switchNode = new TIntermSwitch(CreateIndexSymbol(), statementList);
-
- TIntermAggregate *bodyNode = new TIntermAggregate(EOpSequence);
- bodyNode->getSequence()->push_back(switchNode);
-
- TIntermBinary *cond = new TIntermBinary(EOpLessThan);
- cond->setType(TType(EbtBool, EbpUndefined));
- cond->setLeft(CreateIndexSymbol());
- cond->setRight(CreateIntConstantNode(0));
-
- // Two blocks: one accesses (either reads or writes) the first element and returns,
- // the other accesses the last element.
- TIntermAggregate *useFirstBlock = new TIntermAggregate(EOpSequence);
- TIntermAggregate *useLastBlock = new TIntermAggregate(EOpSequence);
- TIntermBinary *indexFirstNode = CreateIndexDirectBaseSymbolNode(type, fieldType, 0);
- TIntermBinary *indexLastNode = CreateIndexDirectBaseSymbolNode(type, fieldType, numCases - 1);
- if (write)
- {
- TIntermBinary *assignFirstNode = CreateAssignValueSymbolNode(indexFirstNode, fieldType);
- useFirstBlock->getSequence()->push_back(assignFirstNode);
- TIntermBranch *returnNode = new TIntermBranch(EOpReturn, nullptr);
- useFirstBlock->getSequence()->push_back(returnNode);
-
- TIntermBinary *assignLastNode = CreateAssignValueSymbolNode(indexLastNode, fieldType);
- useLastBlock->getSequence()->push_back(assignLastNode);
- }
- else
- {
- TIntermBranch *returnFirstNode = new TIntermBranch(EOpReturn, indexFirstNode);
- useFirstBlock->getSequence()->push_back(returnFirstNode);
-
- TIntermBranch *returnLastNode = new TIntermBranch(EOpReturn, indexLastNode);
- useLastBlock->getSequence()->push_back(returnLastNode);
- }
- TIntermSelection *ifNode = new TIntermSelection(cond, useFirstBlock, nullptr);
- bodyNode->getSequence()->push_back(ifNode);
- bodyNode->getSequence()->push_back(useLastBlock);
-
- indexingFunction->getSequence()->push_back(bodyNode);
-
- return indexingFunction;
-}
-
-class RemoveDynamicIndexingTraverser : public TLValueTrackingTraverser
-{
- public:
- RemoveDynamicIndexingTraverser(const TSymbolTable &symbolTable, int shaderVersion);
-
- bool visitBinary(Visit visit, TIntermBinary *node) override;
-
- void insertHelperDefinitions(TIntermNode *root);
-
- void nextIteration();
-
- bool usedTreeInsertion() const { return mUsedTreeInsertion; }
-
- protected:
- // Sets of types that are indexed. Note that these can not store multiple variants
- // of the same type with different precisions - only one precision gets stored.
- std::set<TType> mIndexedVecAndMatrixTypes;
- std::set<TType> mWrittenVecAndMatrixTypes;
-
- bool mUsedTreeInsertion;
-
- // When true, the traverser will remove side effects from any indexing expression.
- // This is done so that in code like
- // V[j++][i]++.
- // where V is an array of vectors, j++ will only be evaluated once.
- bool mRemoveIndexSideEffectsInSubtree;
-};
-
-RemoveDynamicIndexingTraverser::RemoveDynamicIndexingTraverser(const TSymbolTable &symbolTable,
- int shaderVersion)
- : TLValueTrackingTraverser(true, false, false, symbolTable, shaderVersion),
- mUsedTreeInsertion(false),
- mRemoveIndexSideEffectsInSubtree(false)
-{
-}
-
-void RemoveDynamicIndexingTraverser::insertHelperDefinitions(TIntermNode *root)
-{
- TIntermAggregate *rootAgg = root->getAsAggregate();
- ASSERT(rootAgg != nullptr && rootAgg->getOp() == EOpSequence);
- TIntermSequence insertions;
- for (TType type : mIndexedVecAndMatrixTypes)
- {
- insertions.push_back(GetIndexFunctionDefinition(type, false));
- }
- for (TType type : mWrittenVecAndMatrixTypes)
- {
- insertions.push_back(GetIndexFunctionDefinition(type, true));
- }
- mInsertions.push_back(NodeInsertMultipleEntry(rootAgg, 0, insertions, TIntermSequence()));
-}
-
-// Create a call to dyn_index_*() based on an indirect indexing op node
-TIntermAggregate *CreateIndexFunctionCall(TIntermBinary *node,
- TIntermTyped *indexedNode,
- TIntermTyped *index)
-{
- ASSERT(node->getOp() == EOpIndexIndirect);
- TIntermAggregate *indexingCall = new TIntermAggregate(EOpFunctionCall);
- indexingCall->setLine(node->getLine());
- indexingCall->setUserDefined();
- indexingCall->setNameObj(GetIndexFunctionName(indexedNode->getType(), false));
- indexingCall->getSequence()->push_back(indexedNode);
- indexingCall->getSequence()->push_back(index);
-
- TType fieldType = GetFieldType(indexedNode->getType());
- indexingCall->setType(fieldType);
- return indexingCall;
-}
-
-TIntermAggregate *CreateIndexedWriteFunctionCall(TIntermBinary *node,
- TIntermTyped *index,
- TIntermTyped *writtenValue)
-{
- // Deep copy the left node so that two pointers to the same node don't end up in the tree.
- TIntermNode *leftCopy = node->getLeft()->deepCopy();
- ASSERT(leftCopy != nullptr && leftCopy->getAsTyped() != nullptr);
- TIntermAggregate *indexedWriteCall =
- CreateIndexFunctionCall(node, leftCopy->getAsTyped(), index);
- indexedWriteCall->setNameObj(GetIndexFunctionName(node->getLeft()->getType(), true));
- indexedWriteCall->setType(TType(EbtVoid));
- indexedWriteCall->getSequence()->push_back(writtenValue);
- return indexedWriteCall;
-}
-
-bool RemoveDynamicIndexingTraverser::visitBinary(Visit visit, TIntermBinary *node)
-{
- if (mUsedTreeInsertion)
- return false;
-
- if (node->getOp() == EOpIndexIndirect)
- {
- if (mRemoveIndexSideEffectsInSubtree)
- {
- ASSERT(node->getRight()->hasSideEffects());
- // In case we're just removing index side effects, convert
- // v_expr[index_expr]
- // to this:
- // int s0 = index_expr; v_expr[s0];
- // Now v_expr[s0] can be safely executed several times without unintended side effects.
-
- // Init the temp variable holding the index
- TIntermAggregate *initIndex = createTempInitDeclaration(node->getRight());
- TIntermSequence insertions;
- insertions.push_back(initIndex);
- insertStatementsInParentBlock(insertions);
- mUsedTreeInsertion = true;
-
- // Replace the index with the temp variable
- TIntermSymbol *tempIndex = createTempSymbol(node->getRight()->getType());
- NodeUpdateEntry replaceIndex(node, node->getRight(), tempIndex, false);
- mReplacements.push_back(replaceIndex);
- }
- else if (!node->getLeft()->isArray() && node->getLeft()->getBasicType() != EbtStruct)
- {
- bool write = isLValueRequiredHere();
-
- TType type = node->getLeft()->getType();
- mIndexedVecAndMatrixTypes.insert(type);
-
- if (write)
- {
- // Convert:
- // v_expr[index_expr]++;
- // to this:
- // int s0 = index_expr; float s1 = dyn_index(v_expr, s0); s1++;
- // dyn_index_write(v_expr, s0, s1);
- // This works even if index_expr has some side effects.
- if (node->getLeft()->hasSideEffects())
- {
- // If v_expr has side effects, those need to be removed before proceeding.
- // Otherwise the side effects of v_expr would be evaluated twice.
- // The only case where an l-value can have side effects is when it is
- // indexing. For example, it can be V[j++] where V is an array of vectors.
- mRemoveIndexSideEffectsInSubtree = true;
- return true;
- }
- // TODO(oetuaho@nvidia.com): This is not optimal if the expression using the value
- // only writes it and doesn't need the previous value. http://anglebug.com/1116
-
- mWrittenVecAndMatrixTypes.insert(type);
- TType fieldType = GetFieldType(type);
-
- TIntermSequence insertionsBefore;
- TIntermSequence insertionsAfter;
-
- // Store the index in a temporary signed int variable.
- TIntermTyped *indexInitializer = EnsureSignedInt(node->getRight());
- TIntermAggregate *initIndex = createTempInitDeclaration(indexInitializer);
- initIndex->setLine(node->getLine());
- insertionsBefore.push_back(initIndex);
-
- TIntermAggregate *indexingCall = CreateIndexFunctionCall(
- node, node->getLeft(), createTempSymbol(indexInitializer->getType()));
-
- // Create a node for referring to the index after the nextTemporaryIndex() call
- // below.
- TIntermSymbol *tempIndex = createTempSymbol(indexInitializer->getType());
-
- nextTemporaryIndex(); // From now on, creating temporary symbols that refer to the
- // field value.
- insertionsBefore.push_back(createTempInitDeclaration(indexingCall));
-
- TIntermAggregate *indexedWriteCall =
- CreateIndexedWriteFunctionCall(node, tempIndex, createTempSymbol(fieldType));
- insertionsAfter.push_back(indexedWriteCall);
- insertStatementsInParentBlock(insertionsBefore, insertionsAfter);
- NodeUpdateEntry replaceIndex(getParentNode(), node, createTempSymbol(fieldType),
- false);
- mReplacements.push_back(replaceIndex);
- mUsedTreeInsertion = true;
- }
- else
- {
- // The indexed value is not being written, so we can simply convert
- // v_expr[index_expr]
- // into
- // dyn_index(v_expr, index_expr)
- // If the index_expr is unsigned, we'll convert it to signed.
- ASSERT(!mRemoveIndexSideEffectsInSubtree);
- TIntermAggregate *indexingCall = CreateIndexFunctionCall(
- node, node->getLeft(), EnsureSignedInt(node->getRight()));
- NodeUpdateEntry replaceIndex(getParentNode(), node, indexingCall, false);
- mReplacements.push_back(replaceIndex);
- }
- }
- }
- return !mUsedTreeInsertion;
-}
-
-void RemoveDynamicIndexingTraverser::nextIteration()
-{
- mUsedTreeInsertion = false;
- mRemoveIndexSideEffectsInSubtree = false;
- nextTemporaryIndex();
-}
-
-} // namespace
-
-void RemoveDynamicIndexing(TIntermNode *root,
- unsigned int *temporaryIndex,
- const TSymbolTable &symbolTable,
- int shaderVersion)
-{
- RemoveDynamicIndexingTraverser traverser(symbolTable, shaderVersion);
- ASSERT(temporaryIndex != nullptr);
- traverser.useTemporaryIndex(temporaryIndex);
- do
- {
- traverser.nextIteration();
- root->traverse(&traverser);
- traverser.updateTree();
- } while (traverser.usedTreeInsertion());
- traverser.insertHelperDefinitions(root);
- traverser.updateTree();
-}
diff --git a/chromium/third_party/angle/src/compiler/translator/RemoveDynamicIndexing.h b/chromium/third_party/angle/src/compiler/translator/RemoveDynamicIndexing.h
deleted file mode 100644
index ae3a93c9b14..00000000000
--- a/chromium/third_party/angle/src/compiler/translator/RemoveDynamicIndexing.h
+++ /dev/null
@@ -1,21 +0,0 @@
-//
-// Copyright (c) 2002-2015 The ANGLE Project Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-//
-// RemoveDynamicIndexing is an AST traverser to remove dynamic indexing of vectors and matrices,
-// replacing them with calls to functions that choose which component to return or write.
-//
-
-#ifndef COMPILER_TRANSLATOR_REMOVEDYNAMICINDEXING_H_
-#define COMPILER_TRANSLATOR_REMOVEDYNAMICINDEXING_H_
-
-class TIntermNode;
-class TSymbolTable;
-
-void RemoveDynamicIndexing(TIntermNode *root,
- unsigned int *temporaryIndex,
- const TSymbolTable &symbolTable,
- int shaderVersion);
-
-#endif // COMPILER_TRANSLATOR_REMOVEDYNAMICINDEXING_H_
diff --git a/chromium/third_party/angle/src/compiler/translator/TranslatorHLSL.cpp b/chromium/third_party/angle/src/compiler/translator/TranslatorHLSL.cpp
index 462f887c820..d16f3edc090 100644
--- a/chromium/third_party/angle/src/compiler/translator/TranslatorHLSL.cpp
+++ b/chromium/third_party/angle/src/compiler/translator/TranslatorHLSL.cpp
@@ -8,7 +8,6 @@
#include "compiler/translator/ArrayReturnValueToOutParameter.h"
#include "compiler/translator/OutputHLSL.h"
-#include "compiler/translator/RemoveDynamicIndexing.h"
#include "compiler/translator/RewriteElseBlocks.h"
#include "compiler/translator/SeparateArrayInitialization.h"
#include "compiler/translator/SeparateDeclarations.h"
@@ -39,12 +38,6 @@ void TranslatorHLSL::translate(TIntermNode *root, int compileOptions)
// as a return value to use an out parameter to transfer the array data instead.
ArrayReturnValueToOutParameter(root, getTemporaryIndex());
- if (!shouldRunLoopAndIndexingValidation(compileOptions))
- {
- // HLSL doesn't support dynamic indexing of vectors and matrices.
- RemoveDynamicIndexing(root, getTemporaryIndex(), getSymbolTable(), getShaderVersion());
- }
-
// Work around D3D9 bug that would manifest in vertex shaders with selection blocks which
// use a vertex attribute as a condition, and some related computation in the else block.
if (getOutputType() == SH_HLSL9_OUTPUT && getShaderType() == GL_VERTEX_SHADER)
diff --git a/chromium/third_party/ffmpeg/OWNERS b/chromium/third_party/ffmpeg/OWNERS
index 6322629fafe..a0b235cfe57 100644
--- a/chromium/third_party/ffmpeg/OWNERS
+++ b/chromium/third_party/ffmpeg/OWNERS
@@ -1,6 +1,4 @@
-acolwell@chromium.org
dalecurtis@chromium.org
ddorwin@chromium.org
-scherkus@chromium.org
wolenetz@chromium.org
xhwang@chromium.org
diff --git a/chromium/third_party/ffmpeg/libavformat/mp3dec.c b/chromium/third_party/ffmpeg/libavformat/mp3dec.c
index 7354c2841bb..105c8f72dab 100644
--- a/chromium/third_party/ffmpeg/libavformat/mp3dec.c
+++ b/chromium/third_party/ffmpeg/libavformat/mp3dec.c
@@ -42,6 +42,9 @@
#define XING_TOC_COUNT 100
+#define SAME_HEADER_MASK \
+ (0xffe00000 | (3 << 17) | (3 << 10) | (3 << 19))
+
typedef struct {
AVClass *class;
int64_t filesize;
@@ -54,7 +57,7 @@ typedef struct {
int is_cbr;
} MP3DecContext;
-static int check(AVIOContext *pb, int64_t pos);
+static int check(AVIOContext *pb, int64_t pos, uint32_t *header);
/* mp3 read */
@@ -378,12 +381,21 @@ static int mp3_read_header(AVFormatContext *s)
off = avio_tell(s->pb);
for (i = 0; i < 64 * 1024; i++) {
+ uint32_t header, header2;
+ int frame_size;
if (!(i&1023))
ffio_ensure_seekback(s->pb, i + 1024 + 4);
- if (check(s->pb, off + i) >= 0) {
- av_log(s, AV_LOG_INFO, "Skipping %d bytes of junk at %"PRId64".\n", i, off);
- avio_seek(s->pb, off + i, SEEK_SET);
- break;
+ frame_size = check(s->pb, off + i, &header);
+ if (frame_size > 0) {
+ avio_seek(s->pb, off, SEEK_SET);
+ ffio_ensure_seekback(s->pb, i + 1024 + frame_size + 4);
+ if (check(s->pb, off + i + frame_size, &header2) >= 0 &&
+ (header & SAME_HEADER_MASK) == (header2 & SAME_HEADER_MASK))
+ {
+ av_log(s, AV_LOG_INFO, "Skipping %d bytes of junk at %"PRId64".\n", i, off);
+ avio_seek(s->pb, off + i, SEEK_SET);
+ break;
+ }
}
avio_seek(s->pb, off, SEEK_SET);
}
@@ -424,7 +436,7 @@ static int mp3_read_packet(AVFormatContext *s, AVPacket *pkt)
#define SEEK_WINDOW 4096
-static int check(AVIOContext *pb, int64_t pos)
+static int check(AVIOContext *pb, int64_t pos, uint32_t *ret_header)
{
int64_t ret = avio_seek(pb, pos, SEEK_SET);
unsigned header;
@@ -438,6 +450,8 @@ static int check(AVIOContext *pb, int64_t pos)
if (avpriv_mpegaudio_decode_header(&sd, header) == 1)
return -1;
+ if (ret_header)
+ *ret_header = header;
return sd.frame_size;
}
@@ -465,7 +479,7 @@ static int64_t mp3_sync(AVFormatContext *s, int64_t target_pos, int flags)
continue;
for(j=0; j<MIN_VALID; j++) {
- ret = check(s->pb, pos);
+ ret = check(s->pb, pos, NULL);
if(ret < 0)
break;
if ((target_pos - pos)*dir <= 0 && abs(MIN_VALID/2-j) < score) {
diff --git a/chromium/third_party/libjingle/source/talk/media/webrtc/webrtcvideoengine2.cc b/chromium/third_party/libjingle/source/talk/media/webrtc/webrtcvideoengine2.cc
index 2f0634043db..0dea8754fc8 100644
--- a/chromium/third_party/libjingle/source/talk/media/webrtc/webrtcvideoengine2.cc
+++ b/chromium/third_party/libjingle/source/talk/media/webrtc/webrtcvideoengine2.cc
@@ -1147,6 +1147,19 @@ bool WebRtcVideoChannel2::RemoveSendStream(uint32 ssrc) {
removed_stream = it->second;
send_streams_.erase(it);
+
+ // Switch receiver report SSRCs, the one in use is no longer valid.
+ if (rtcp_receiver_report_ssrc_ == ssrc) {
+ rtcp_receiver_report_ssrc_ = send_streams_.empty()
+ ? kDefaultRtcpReceiverReportSsrc
+ : send_streams_.begin()->first;
+ LOG(LS_INFO) << "SetLocalSsrc on all the receive streams because the "
+ "previous local SSRC was removed.";
+
+ for (auto& kv : receive_streams_) {
+ kv.second->SetLocalSsrc(rtcp_receiver_report_ssrc_);
+ }
+ }
}
delete removed_stream;
diff --git a/chromium/third_party/libjingle/source/talk/media/webrtc/webrtcvideoengine2_unittest.cc b/chromium/third_party/libjingle/source/talk/media/webrtc/webrtcvideoengine2_unittest.cc
index 3c187b3702f..35c26e81447 100644
--- a/chromium/third_party/libjingle/source/talk/media/webrtc/webrtcvideoengine2_unittest.cc
+++ b/chromium/third_party/libjingle/source/talk/media/webrtc/webrtcvideoengine2_unittest.cc
@@ -2776,15 +2776,18 @@ void WebRtcVideoChannel2Test::TestReceiverLocalSsrcConfiguration(
EXPECT_TRUE(channel_->SetSendParameters(send_parameters_));
const uint32_t kSenderSsrc = 0xC0FFEE;
+ const uint32_t kSecondSenderSsrc = 0xBADCAFE;
const uint32_t kReceiverSsrc = 0x4711;
+ const uint32_t kExpectedDefaultReceiverSsrc = 1;
if (receiver_first) {
AddRecvStream(StreamParams::CreateLegacy(kReceiverSsrc));
std::vector<FakeVideoReceiveStream*> receive_streams =
fake_call_->GetVideoReceiveStreams();
ASSERT_EQ(1u, receive_streams.size());
- // Bogus local SSRC when we have no sender.
- EXPECT_EQ(1, receive_streams[0]->GetConfig().rtp.local_ssrc);
+ // Default local SSRC when we have no sender.
+ EXPECT_EQ(kExpectedDefaultReceiverSsrc,
+ receive_streams[0]->GetConfig().rtp.local_ssrc);
}
AddSendStream(StreamParams::CreateLegacy(kSenderSsrc));
if (!receiver_first)
@@ -2793,6 +2796,23 @@ void WebRtcVideoChannel2Test::TestReceiverLocalSsrcConfiguration(
fake_call_->GetVideoReceiveStreams();
ASSERT_EQ(1u, receive_streams.size());
EXPECT_EQ(kSenderSsrc, receive_streams[0]->GetConfig().rtp.local_ssrc);
+
+ // Removing first sender should fall back to another (in this case the second)
+ // local send stream's SSRC.
+ AddSendStream(StreamParams::CreateLegacy(kSecondSenderSsrc));
+ ASSERT_TRUE(channel_->RemoveSendStream(kSenderSsrc));
+ receive_streams =
+ fake_call_->GetVideoReceiveStreams();
+ ASSERT_EQ(1u, receive_streams.size());
+ EXPECT_EQ(kSecondSenderSsrc, receive_streams[0]->GetConfig().rtp.local_ssrc);
+
+ // Removing the last sender should fall back to default local SSRC.
+ ASSERT_TRUE(channel_->RemoveSendStream(kSecondSenderSsrc));
+ receive_streams =
+ fake_call_->GetVideoReceiveStreams();
+ ASSERT_EQ(1u, receive_streams.size());
+ EXPECT_EQ(kExpectedDefaultReceiverSsrc,
+ receive_streams[0]->GetConfig().rtp.local_ssrc);
}
TEST_F(WebRtcVideoChannel2Test, ConfiguresLocalSsrc) {
diff --git a/chromium/third_party/pdfium/pdfium.gyp b/chromium/third_party/pdfium/pdfium.gyp
index 89209689555..9e7dd96a37c 100644
--- a/chromium/third_party/pdfium/pdfium.gyp
+++ b/chromium/third_party/pdfium/pdfium.gyp
@@ -18,6 +18,7 @@
],
'include_dirs': [
'third_party/freetype/include',
+ 'third_party/freetype/include/freetype',
],
'conditions': [
['pdf_use_skia==1', {
@@ -754,6 +755,7 @@
'<(DEPTH)/v8/include',
],
'sources': [
+ 'core/src/fpdfapi/fpdf_page/fpdf_page_func_embeddertest.cpp',
'core/src/fpdfapi/fpdf_parser/fpdf_parser_decode_embeddertest.cpp',
'core/src/fpdfapi/fpdf_parser/fpdf_parser_parser_embeddertest.cpp',
'fpdfsdk/src/fpdf_dataavail_embeddertest.cpp',
diff --git a/chromium/third_party/pdfium/third_party/third_party.gyp b/chromium/third_party/pdfium/third_party/third_party.gyp
index 1ec0509eb2c..43e1093fc37 100644
--- a/chromium/third_party/pdfium/third_party/third_party.gyp
+++ b/chromium/third_party/pdfium/third_party/third_party.gyp
@@ -37,17 +37,18 @@
],
'include_dirs': [
'freetype/include',
+ 'freetype/include/freetype',
],
'sources': [
- 'freetype/include/freetype.h',
+ 'freetype/include/freetype/freetype.h',
+ 'freetype/include/freetype/ftmm.h',
+ 'freetype/include/freetype/ftotval.h',
+ 'freetype/include/freetype/ftoutln.h',
+ 'freetype/include/freetype/internal/freetype/ftobjs.h',
+ 'freetype/include/freetype/internal/freetype/ftstream.h',
+ 'freetype/include/freetype/internal/freetype/tttypes.h',
+ 'freetype/include/freetype/tttables.h',
'freetype/include/ft2build.h',
- 'freetype/include/ftmm.h',
- 'freetype/include/ftotval.h',
- 'freetype/include/ftoutln.h',
- 'freetype/include/tttables.h',
- 'freetype/include/internal/ftobjs.h',
- 'freetype/include/internal/ftstream.h',
- 'freetype/include/internal/tttypes.h',
'freetype/src/cff/cffobjs.h',
'freetype/src/cff/cfftypes.h',
'freetype/src/cff/cff.c',
diff --git a/chromium/third_party/skia/src/gpu/GrResourceProvider.cpp b/chromium/third_party/skia/src/gpu/GrResourceProvider.cpp
index bd9cc9ac6b0..5fa4e4beacb 100644
--- a/chromium/third_party/skia/src/gpu/GrResourceProvider.cpp
+++ b/chromium/third_party/skia/src/gpu/GrResourceProvider.cpp
@@ -164,7 +164,9 @@ GrBatchAtlas* GrResourceProvider::createAtlas(GrPixelConfig config,
if (!texture) {
return nullptr;
}
- return new GrBatchAtlas(texture, numPlotsX, numPlotsY);
+ GrBatchAtlas* atlas = new GrBatchAtlas(texture, numPlotsX, numPlotsY);
+ atlas->registerEvictionCallback(func, data);
+ return atlas;
}
GrStencilAttachment* GrResourceProvider::attachStencilAttachment(GrRenderTarget* rt) {
diff --git a/chromium/ui/gfx/nine_image_painter.cc b/chromium/ui/gfx/nine_image_painter.cc
index 42d5cc0ab49..584e522982d 100644
--- a/chromium/ui/gfx/nine_image_painter.cc
+++ b/chromium/ui/gfx/nine_image_painter.cc
@@ -139,27 +139,32 @@ void NineImagePainter::Paint(Canvas* canvas,
int i7h = ImageHeightInPixels(images_[7], scale_y);
int i8h = ImageHeightInPixels(images_[8], scale_y);
- bool has_room_for_border =
- i0w + i2w <= width_in_pixels && i3w + i5w <= width_in_pixels &&
- i6w + i8w <= width_in_pixels && i0h + i6h <= height_in_pixels &&
- i1h + i7h <= height_in_pixels && i2h + i8h <= height_in_pixels;
-
- int i4x = has_room_for_border ? std::min(std::min(i0w, i3w), i6w) : 0;
- int i4w = width_in_pixels -
- (has_room_for_border ? i4x + std::min(std::min(i2w, i5w), i8w) : 0);
-
- int i4y = has_room_for_border ? std::min(std::min(i0h, i1h), i2h) : 0;
- int i4h = height_in_pixels -
- (has_room_for_border ? i4y + std::min(std::min(i6h, i7h), i8h) : 0);
+ i0w = std::min(i0w, width_in_pixels);
+ i2w = std::min(i2w, width_in_pixels - i0w);
+ i3w = std::min(i3w, width_in_pixels);
+ i5w = std::min(i5w, width_in_pixels - i3w);
+ i6w = std::min(i6w, width_in_pixels);
+ i8w = std::min(i8w, width_in_pixels - i6w);
+
+ i0h = std::min(i0h, height_in_pixels);
+ i1h = std::min(i1h, height_in_pixels);
+ i2h = std::min(i2h, height_in_pixels);
+ i6h = std::min(i6h, height_in_pixels - i0h);
+ i7h = std::min(i7h, height_in_pixels - i1h);
+ i8h = std::min(i8h, height_in_pixels - i2h);
+
+ int i4x = std::min(std::min(i0w, i3w), i6w);
+ int i4y = std::min(std::min(i0h, i1h), i2h);
+ int i4w =
+ std::max(width_in_pixels - i4x - std::min(std::min(i2w, i5w), i8w), 0);
+ int i4h =
+ std::max(height_in_pixels - i4y - std::min(std::min(i6h, i7h), i8h), 0);
SkPaint paint;
paint.setAlpha(alpha);
Fill(canvas, images_[4], i4x, i4y, i4w, i4h, paint);
- if (!has_room_for_border)
- return;
-
Fill(canvas, images_[0], 0, 0, i0w, i0h, paint);
Fill(canvas, images_[1], i0w, 0, width_in_pixels - i0w - i2w, i1h, paint);
diff --git a/chromium/ui/gfx/nine_image_painter_unittest.cc b/chromium/ui/gfx/nine_image_painter_unittest.cc
index 6b2f10aee77..ecfd409f840 100644
--- a/chromium/ui/gfx/nine_image_painter_unittest.cc
+++ b/chromium/ui/gfx/nine_image_painter_unittest.cc
@@ -69,10 +69,12 @@ TEST(NineImagePainterTest, PaintScale) {
TEST(NineImagePainterTest, PaintStaysInBounds) {
// In this test the bounds rect is 1x1 but each image is 2x2.
// The NineImagePainter should not paint outside the bounds.
+ // The border images should be cropped, but still painted.
SkBitmap src;
src.allocN32Pixels(6, 6);
- src.eraseColor(SK_ColorRED);
+ src.eraseColor(SK_ColorGREEN);
+ src.erase(SK_ColorRED, SkIRect::MakeXYWH(2, 2, 2, 2));
gfx::ImageSkia image(gfx::ImageSkiaRep(src, 0.0f));
gfx::Insets insets(2, 2, 2, 2);
@@ -91,7 +93,7 @@ TEST(NineImagePainterTest, PaintStaysInBounds) {
result.allocN32Pixels(size.width(), size.height());
canvas.sk_canvas()->readPixels(&result, 0, 0);
- EXPECT_EQ(SK_ColorRED, result.getColor(1, 1));
+ EXPECT_EQ(SK_ColorGREEN, result.getColor(1, 1));
EXPECT_EQ(SK_ColorBLACK, result.getColor(0, 0));
EXPECT_EQ(SK_ColorBLACK, result.getColor(0, 1));
diff --git a/chromium/ui/login/account_picker/user_pod_row.js b/chromium/ui/login/account_picker/user_pod_row.js
index 32811a6dfa5..a87e5dce40d 100644
--- a/chromium/ui/login/account_picker/user_pod_row.js
+++ b/chromium/ui/login/account_picker/user_pod_row.js
@@ -709,9 +709,6 @@ cr.define('login', function() {
this.addEventListener('click', this.handleClickOnPod_.bind(this));
this.addEventListener('mousedown', this.handlePodMouseDown_.bind(this));
- this.reauthWarningElement.addEventListener('click',
- this.activate.bind(this));
-
this.actionBoxAreaElement.addEventListener('mousedown',
stopEventPropagation);
this.actionBoxAreaElement.addEventListener('click',
diff --git a/chromium/ui/ozone/platform/drm/common/drm_util.cc b/chromium/ui/ozone/platform/drm/common/drm_util.cc
index 845cb413f5e..7c4968d944f 100644
--- a/chromium/ui/ozone/platform/drm/common/drm_util.cc
+++ b/chromium/ui/ozone/platform/drm/common/drm_util.cc
@@ -149,13 +149,19 @@ bool IsAspectPreserving(int fd, drmModeConnector* connector) {
"Full aspect");
}
+int ConnectorIndex(int device_index, int display_index) {
+ DCHECK_LT(device_index, 16);
+ DCHECK_LT(display_index, 16);
+ return ((device_index << 4) + display_index) & 0xFF;
+}
+
} // namespace
HardwareDisplayControllerInfo::HardwareDisplayControllerInfo(
ScopedDrmConnectorPtr connector,
- ScopedDrmCrtcPtr crtc)
- : connector_(connector.Pass()), crtc_(crtc.Pass()) {
-}
+ ScopedDrmCrtcPtr crtc,
+ size_t index)
+ : connector_(connector.Pass()), crtc_(crtc.Pass()), index_(index) {}
HardwareDisplayControllerInfo::~HardwareDisplayControllerInfo() {
}
@@ -180,7 +186,7 @@ ScopedVector<HardwareDisplayControllerInfo> GetAvailableDisplayControllerInfos(
ScopedDrmCrtcPtr crtc(drmModeGetCrtc(fd, crtc_id));
displays.push_back(
- new HardwareDisplayControllerInfo(connector.Pass(), crtc.Pass()));
+ new HardwareDisplayControllerInfo(connector.Pass(), crtc.Pass(), i));
}
return displays.Pass();
@@ -208,10 +214,11 @@ DisplayMode_Params CreateDisplayModeParams(const drmModeModeInfo& mode) {
DisplaySnapshot_Params CreateDisplaySnapshotParams(
HardwareDisplayControllerInfo* info,
int fd,
- size_t display_index,
+ size_t device_index,
const gfx::Point& origin) {
DisplaySnapshot_Params params;
- params.display_id = display_index;
+ int64 connector_index = ConnectorIndex(device_index, info->index());
+ params.display_id = connector_index;
params.origin = origin;
params.physical_size =
gfx::Size(info->connector()->mmWidth, info->connector()->mmHeight);
@@ -227,9 +234,8 @@ DisplaySnapshot_Params CreateDisplaySnapshotParams(
static_cast<uint8_t*>(edid_blob->data),
static_cast<uint8_t*>(edid_blob->data) + edid_blob->length);
- if (!GetDisplayIdFromEDID(edid, display_index, &params.display_id,
- &params.product_id))
- params.display_id = display_index;
+ GetDisplayIdFromEDID(edid, connector_index, &params.display_id,
+ &params.product_id);
ParseOutputDeviceData(edid, nullptr, nullptr, &params.display_name, nullptr,
nullptr);
diff --git a/chromium/ui/ozone/platform/drm/common/drm_util.h b/chromium/ui/ozone/platform/drm/common/drm_util.h
index e761aba2d35..dc923bf79c9 100644
--- a/chromium/ui/ozone/platform/drm/common/drm_util.h
+++ b/chromium/ui/ozone/platform/drm/common/drm_util.h
@@ -20,19 +20,23 @@ class Point;
namespace ui {
// Representation of the information required to initialize and configure a
-// native display.
+// native display. |index| is the position of the connection and will be
+// used to generate a unique identifier for the display.
class HardwareDisplayControllerInfo {
public:
HardwareDisplayControllerInfo(ScopedDrmConnectorPtr connector,
- ScopedDrmCrtcPtr crtc);
+ ScopedDrmCrtcPtr crtc,
+ size_t index);
~HardwareDisplayControllerInfo();
drmModeConnector* connector() const { return connector_.get(); }
drmModeCrtc* crtc() const { return crtc_.get(); }
+ size_t index() const { return index_; }
private:
ScopedDrmConnectorPtr connector_;
ScopedDrmCrtcPtr crtc_;
+ size_t index_;
DISALLOW_COPY_AND_ASSIGN(HardwareDisplayControllerInfo);
};
@@ -47,13 +51,11 @@ bool SameMode(const drmModeModeInfo& lhs, const drmModeModeInfo& rhs);
DisplayMode_Params CreateDisplayModeParams(const drmModeModeInfo& mode);
// |info| provides the DRM information related to the display, |fd| is the
-// connection to the DRM device and |index| provides a unique identifier for the
-// display. |index| will be used to generate the display id (it may be the id if
-// the monitor's EDID lacks the necessary identifiers).
+// connection to the DRM device.
DisplaySnapshot_Params CreateDisplaySnapshotParams(
HardwareDisplayControllerInfo* info,
int fd,
- size_t display_index,
+ size_t device_index,
const gfx::Point& origin);
} // namespace ui
diff --git a/chromium/ui/ozone/platform/drm/gpu/drm_display.cc b/chromium/ui/ozone/platform/drm/gpu/drm_display.cc
index 4e949ecfc5f..2595b7a056c 100644
--- a/chromium/ui/ozone/platform/drm/gpu/drm_display.cc
+++ b/chromium/ui/ozone/platform/drm/gpu/drm_display.cc
@@ -86,9 +86,9 @@ DrmDisplay::~DrmDisplay() {
}
DisplaySnapshot_Params DrmDisplay::Update(HardwareDisplayControllerInfo* info,
- size_t display_index) {
+ size_t device_index) {
DisplaySnapshot_Params params =
- CreateDisplaySnapshotParams(info, drm_->get_fd(), display_index, origin_);
+ CreateDisplaySnapshotParams(info, drm_->get_fd(), device_index, origin_);
crtc_ = info->crtc()->crtc_id;
connector_ = info->connector()->connector_id;
display_id_ = params.display_id;
diff --git a/chromium/ui/ozone/platform/drm/gpu/drm_display.h b/chromium/ui/ozone/platform/drm/gpu/drm_display.h
index 40cd3439f96..7d3f1875b84 100644
--- a/chromium/ui/ozone/platform/drm/gpu/drm_display.h
+++ b/chromium/ui/ozone/platform/drm/gpu/drm_display.h
@@ -35,7 +35,7 @@ class DrmDisplay {
const std::vector<drmModeModeInfo>& modes() const { return modes_; }
DisplaySnapshot_Params Update(HardwareDisplayControllerInfo* info,
- size_t display_index);
+ size_t device_index);
bool Configure(const drmModeModeInfo* mode, const gfx::Point& origin);
bool GetHDCPState(HDCPState* state);
diff --git a/chromium/ui/ozone/platform/drm/gpu/drm_gpu_display_manager.cc b/chromium/ui/ozone/platform/drm/gpu/drm_gpu_display_manager.cc
index 7d7bba41f6d..4a678d9a33b 100644
--- a/chromium/ui/ozone/platform/drm/gpu/drm_gpu_display_manager.cc
+++ b/chromium/ui/ozone/platform/drm/gpu/drm_gpu_display_manager.cc
@@ -70,8 +70,7 @@ std::vector<DisplaySnapshot_Params> DrmGpuDisplayManager::GetDisplays() {
std::vector<DisplaySnapshot_Params> params_list;
const DrmDeviceVector& devices = drm_device_manager_->GetDrmDevices();
- // Unique identifier used to create the display id.
- size_t index = 0;
+ size_t device_index = 0;
for (const auto& drm : devices) {
ScopedVector<HardwareDisplayControllerInfo> display_infos =
GetAvailableDisplayControllerInfos(drm->get_fd());
@@ -86,9 +85,10 @@ std::vector<DisplaySnapshot_Params> DrmGpuDisplayManager::GetDisplays() {
} else {
displays_.push_back(new DrmDisplay(screen_manager_, drm));
}
-
- params_list.push_back(displays_.back()->Update(display_info, index++));
+ params_list.push_back(
+ displays_.back()->Update(display_info, device_index));
}
+ device_index++;
}
NotifyScreenManager(displays_.get(), old_displays.get());
diff --git a/chromium/ui/ozone/platform/drm/host/drm_display_host_manager.cc b/chromium/ui/ozone/platform/drm/host/drm_display_host_manager.cc
index 41db3714576..0809e044436 100644
--- a/chromium/ui/ozone/platform/drm/host/drm_display_host_manager.cc
+++ b/chromium/ui/ozone/platform/drm/host/drm_display_host_manager.cc
@@ -141,7 +141,7 @@ DrmDisplayHostManager::DrmDisplayHostManager(
for (size_t i = 0; i < display_infos.size(); ++i) {
displays_.push_back(new DrmDisplayHost(
proxy_, CreateDisplaySnapshotParams(display_infos[i],
- primary_drm_device_handle_->fd(), i,
+ primary_drm_device_handle_->fd(), 0,
gfx::Point()),
true /* is_dummy */));
}
diff --git a/chromium/ui/strings/translations/ui_strings_ca.xtb b/chromium/ui/strings/translations/ui_strings_ca.xtb
index 66fcf918d05..914ea0d5225 100644
--- a/chromium/ui/strings/translations/ui_strings_ca.xtb
+++ b/chromium/ui/strings/translations/ui_strings_ca.xtb
@@ -144,5 +144,5 @@
<translation id="9170848237812810038">&amp;Desfés</translation>
<translation id="928465423150706909">Mou al final de la línia</translation>
<translation id="932327136139879170">Pàgina d'inici</translation>
-<translation id="945522503751344254">Envia comentaris</translation>
+<translation id="945522503751344254">Envia suggeriments</translation>
</translationbundle> \ No newline at end of file
diff --git a/chromium/ui/strings/translations/ui_strings_fa.xtb b/chromium/ui/strings/translations/ui_strings_fa.xtb
index a20be40104d..722e12dc765 100644
--- a/chromium/ui/strings/translations/ui_strings_fa.xtb
+++ b/chromium/ui/strings/translations/ui_strings_fa.xtb
@@ -55,7 +55,7 @@
<translation id="4218160142017529598">حذف به سمت عقب</translation>
<translation id="4250229828105606438">عکس صفحه‌نمایش</translation>
<translation id="4252565523989510616">حذف کلمه بعدی</translation>
-<translation id="4320177379694898372">اتصال اینترنت وجود ندارد</translation>
+<translation id="4320177379694898372">اتصال اینترنتی ندارید</translation>
<translation id="436869212180315161">فشار دادن</translation>
<translation id="4552416320897244156">PgDwn</translation>
<translation id="4588090240171750605">پیمایش به راست</translation>
diff --git a/chromium/ui/strings/translations/ui_strings_vi.xtb b/chromium/ui/strings/translations/ui_strings_vi.xtb
index fb5246b99b0..9587e7cc539 100644
--- a/chromium/ui/strings/translations/ui_strings_vi.xtb
+++ b/chromium/ui/strings/translations/ui_strings_vi.xtb
@@ -71,7 +71,7 @@
<translation id="5329858601952122676">&amp;Xoá</translation>
<translation id="5349525451964472598">Di chuyển sang trái và sửa đổi lựa chọn</translation>
<translation id="5583640892426849032">Backspace</translation>
-<translation id="5613020302032141669">Mũi tên Trái</translation>
+<translation id="5613020302032141669">Mũi tên trái</translation>
<translation id="566737009157135450">Xóa lùi từ</translation>
<translation id="5754277640426581776">{MINUTES,plural, =1{1 phút}other{# phút}}</translation>
<translation id="5768079895599174203">{DAYS,plural, =1{1 ngày và }other{# ngày và }}</translation>
diff --git a/chromium/ui/views/controls/button/menu_button.cc b/chromium/ui/views/controls/button/menu_button.cc
index dd7e489b661..c9f044b4708 100644
--- a/chromium/ui/views/controls/button/menu_button.cc
+++ b/chromium/ui/views/controls/button/menu_button.cc
@@ -90,7 +90,7 @@ MenuButton::~MenuButton() {
////////////////////////////////////////////////////////////////////////////////
bool MenuButton::Activate() {
- SetState(STATE_PRESSED);
+ PressedLock pressed_lock(this);
if (listener_) {
gfx::Rect lb = GetLocalBounds();
@@ -219,10 +219,12 @@ void MenuButton::OnGestureEvent(ui::GestureEvent* event) {
if (switches::IsTouchFeedbackEnabled()) {
if (event->type() == ui::ET_GESTURE_TAP_DOWN) {
event->SetHandled();
- SetState(Button::STATE_HOVERED);
+ if (pressed_lock_count_ == 0)
+ SetState(Button::STATE_HOVERED);
} else if (state() == Button::STATE_HOVERED &&
(event->type() == ui::ET_GESTURE_TAP_CANCEL ||
- event->type() == ui::ET_GESTURE_END)) {
+ event->type() == ui::ET_GESTURE_END) &&
+ pressed_lock_count_ == 0) {
SetState(Button::STATE_NORMAL);
}
}
diff --git a/chromium/ui/views/controls/button/menu_button_unittest.cc b/chromium/ui/views/controls/button/menu_button_unittest.cc
index 021cb922a9b..d1ee9d3bc17 100644
--- a/chromium/ui/views/controls/button/menu_button_unittest.cc
+++ b/chromium/ui/views/controls/button/menu_button_unittest.cc
@@ -396,6 +396,12 @@ TEST_F(MenuButtonTest, ActivateNonDropDownOnGestureTap) {
CreateMenuButtonWithButtonListener(&button_listener);
ui::test::EventGenerator generator(GetContext(), widget()->GetNativeWindow());
+
+ // Move the mouse outside the menu button so that it doesn't impact the
+ // button state.
+ generator.MoveMouseTo(400, 400);
+ EXPECT_FALSE(button()->IsMouseHovered());
+
generator.GestureTapAt(gfx::Point(10, 10));
// Check that MenuButton has notified the listener on gesture tap event, while
@@ -403,6 +409,9 @@ TEST_F(MenuButtonTest, ActivateNonDropDownOnGestureTap) {
EXPECT_EQ(button(), button_listener.last_sender());
EXPECT_EQ(ui::ET_GESTURE_TAP, button_listener.last_event_type());
EXPECT_EQ(Button::STATE_HOVERED, button_listener.last_sender_state());
+
+ // The button should go back to it's normal state since the gesture ended.
+ EXPECT_EQ(Button::STATE_NORMAL, button()->state());
}
// Tests if the listener is notified correctly when a gesture tap happens on a
@@ -412,12 +421,21 @@ TEST_F(MenuButtonTest, ActivateDropDownOnGestureTap) {
CreateMenuButtonWithMenuButtonListener(&menu_button_listener);
ui::test::EventGenerator generator(GetContext(), widget()->GetNativeWindow());
+
+ // Move the mouse outside the menu button so that it doesn't impact the
+ // button state.
+ generator.MoveMouseTo(400, 400);
+ EXPECT_FALSE(button()->IsMouseHovered());
+
generator.GestureTapAt(gfx::Point(10, 10));
// Check that MenuButton has notified the listener, while it was in pressed
// state.
EXPECT_EQ(button(), menu_button_listener.last_source());
EXPECT_EQ(Button::STATE_PRESSED, menu_button_listener.last_source_state());
+
+ // The button should go back to it's normal state since the gesture ended.
+ EXPECT_EQ(Button::STATE_NORMAL, button()->state());
}
// Tests that the button enters a hovered state upon a tap down, before becoming
diff --git a/chromium/ui/views/widget/desktop_aura/desktop_window_tree_host_x11.cc b/chromium/ui/views/widget/desktop_aura/desktop_window_tree_host_x11.cc
index ed0cb1d6f98..27c5e556136 100644
--- a/chromium/ui/views/widget/desktop_aura/desktop_window_tree_host_x11.cc
+++ b/chromium/ui/views/widget/desktop_aura/desktop_window_tree_host_x11.cc
@@ -172,6 +172,7 @@ DesktopWindowTreeHostX11::DesktopWindowTreeHostX11(
window_parent_(NULL),
custom_window_shape_(false),
urgency_hint_set_(false),
+ activatable_(true),
close_widget_factory_(this) {
}
@@ -277,6 +278,7 @@ void DesktopWindowTreeHostX11::CleanUpWindowList(
void DesktopWindowTreeHostX11::Init(aura::Window* content_window,
const Widget::InitParams& params) {
content_window_ = content_window;
+ activatable_ = (params.activatable == Widget::InitParams::ACTIVATABLE_YES);
// TODO(erg): Check whether we *should* be building a WindowTreeHost here, or
// whether we should be proxying requests to another DRWHL.
@@ -400,9 +402,6 @@ void DesktopWindowTreeHostX11::ShowWindowWithState(
MapWindow(show_state);
switch (show_state) {
- case ui::SHOW_STATE_NORMAL:
- Activate();
- break;
case ui::SHOW_STATE_MAXIMIZED:
Maximize();
break;
@@ -416,6 +415,14 @@ void DesktopWindowTreeHostX11::ShowWindowWithState(
break;
}
+ // Makes the window activated by default if the state is not INACTIVE or
+ // MINIMIZED.
+ if (show_state != ui::SHOW_STATE_INACTIVE &&
+ show_state != ui::SHOW_STATE_MINIMIZED &&
+ activatable_) {
+ Activate();
+ }
+
native_widget_delegate_->AsWidget()->SetInitialFocus(show_state);
}
diff --git a/chromium/ui/views/widget/desktop_aura/desktop_window_tree_host_x11.h b/chromium/ui/views/widget/desktop_aura/desktop_window_tree_host_x11.h
index 73e9e3e6fa7..09b5993fb8c 100644
--- a/chromium/ui/views/widget/desktop_aura/desktop_window_tree_host_x11.h
+++ b/chromium/ui/views/widget/desktop_aura/desktop_window_tree_host_x11.h
@@ -347,6 +347,8 @@ class VIEWS_EXPORT DesktopWindowTreeHostX11
// the frame when |xwindow_| gains focus or handles a mouse button event.
bool urgency_hint_set_;
+ bool activatable_;
+
base::CancelableCallback<void()> delayed_resize_task_;
base::WeakPtrFactory<DesktopWindowTreeHostX11> close_widget_factory_;
diff --git a/chromium/ui/views/widget/desktop_aura/desktop_window_tree_host_x11_interactive_uitest.cc b/chromium/ui/views/widget/desktop_aura/desktop_window_tree_host_x11_interactive_uitest.cc
index 0a947b830f2..307f2e2a220 100644
--- a/chromium/ui/views/widget/desktop_aura/desktop_window_tree_host_x11_interactive_uitest.cc
+++ b/chromium/ui/views/widget/desktop_aura/desktop_window_tree_host_x11_interactive_uitest.cc
@@ -258,7 +258,7 @@ TEST_F(DesktopWindowTreeHostX11Test, InputMethodFocus) {
scoped_ptr<Textfield> textfield(new Textfield);
textfield->SetBounds(0, 0, 200, 20);
widget->GetRootView()->AddChildView(textfield.get());
- widget->Show();
+ widget->ShowInactive();
textfield->RequestFocus();
EXPECT_FALSE(widget->IsActive());
diff --git a/chromium/v8/include/v8-version.h b/chromium/v8/include/v8-version.h
index dfed755ffc7..7585e096520 100644
--- a/chromium/v8/include/v8-version.h
+++ b/chromium/v8/include/v8-version.h
@@ -11,7 +11,7 @@
#define V8_MAJOR_VERSION 4
#define V8_MINOR_VERSION 7
#define V8_BUILD_NUMBER 80
-#define V8_PATCH_LEVEL 15
+#define V8_PATCH_LEVEL 23
// Use 1 for candidates and 0 otherwise.
// (Boolean macro values are not supported by all preprocessors.)
diff --git a/chromium/v8/src/arm64/lithium-codegen-arm64.cc b/chromium/v8/src/arm64/lithium-codegen-arm64.cc
index 29858bb7a83..108698a9ad4 100644
--- a/chromium/v8/src/arm64/lithium-codegen-arm64.cc
+++ b/chromium/v8/src/arm64/lithium-codegen-arm64.cc
@@ -2811,6 +2811,8 @@ void LCodeGen::DoDoubleToIntOrSmi(LDoubleToIntOrSmi* instr) {
void LCodeGen::DoDrop(LDrop* instr) {
__ Drop(instr->count());
+
+ RecordPushedArgumentsDelta(instr->hydrogen_value()->argument_delta());
}
diff --git a/chromium/v8/src/array.js b/chromium/v8/src/array.js
index b2b038dae3a..bf04bb7e7b5 100644
--- a/chromium/v8/src/array.js
+++ b/chromium/v8/src/array.js
@@ -1198,7 +1198,9 @@ function InnerArrayFilter(f, receiver, array, length) {
}
}
}
- return accumulator;
+ var result = new GlobalArray();
+ %MoveArrayContents(accumulator, result);
+ return result;
}
function ArrayFilter(f, receiver) {
@@ -1208,10 +1210,7 @@ function ArrayFilter(f, receiver) {
// loop will not affect the looping and side effects are visible.
var array = TO_OBJECT(this);
var length = TO_LENGTH_OR_UINT32(array.length);
- var accumulator = InnerArrayFilter(f, receiver, array, length);
- var result = new GlobalArray();
- %MoveArrayContents(accumulator, result);
- return result;
+ return InnerArrayFilter(f, receiver, array, length);
}
function InnerArrayForEach(f, receiver, array, length) {
@@ -1311,7 +1310,9 @@ function InnerArrayMap(f, receiver, array, length) {
accumulator[i] = %_Call(f, receiver, element, i, array);
}
}
- return accumulator;
+ var result = new GlobalArray();
+ %MoveArrayContents(accumulator, result);
+ return result;
}
@@ -1322,10 +1323,7 @@ function ArrayMap(f, receiver) {
// loop will not affect the looping and side effects are visible.
var array = TO_OBJECT(this);
var length = TO_LENGTH_OR_UINT32(array.length);
- var accumulator = InnerArrayMap(f, receiver, array, length);
- var result = new GlobalArray();
- %MoveArrayContents(accumulator, result);
- return result;
+ return InnerArrayMap(f, receiver, array, length);
}
diff --git a/chromium/v8/src/heap/gc-idle-time-handler.cc b/chromium/v8/src/heap/gc-idle-time-handler.cc
index f77c015bf5b..e1f9ef43e72 100644
--- a/chromium/v8/src/heap/gc-idle-time-handler.cc
+++ b/chromium/v8/src/heap/gc-idle-time-handler.cc
@@ -44,12 +44,6 @@ void GCIdleTimeHeapState::Print() {
PrintF("contexts_disposal_rate=%f ", contexts_disposal_rate);
PrintF("size_of_objects=%" V8_PTR_PREFIX "d ", size_of_objects);
PrintF("incremental_marking_stopped=%d ", incremental_marking_stopped);
- PrintF("sweeping_in_progress=%d ", sweeping_in_progress);
- PrintF("has_low_allocation_rate=%d", has_low_allocation_rate);
- PrintF("mark_compact_speed=%" V8_PTR_PREFIX "d ",
- mark_compact_speed_in_bytes_per_ms);
- PrintF("incremental_marking_speed=%" V8_PTR_PREFIX "d ",
- incremental_marking_speed_in_bytes_per_ms);
}
diff --git a/chromium/v8/src/heap/gc-idle-time-handler.h b/chromium/v8/src/heap/gc-idle-time-handler.h
index 36acdd8531f..74ef1b1e877 100644
--- a/chromium/v8/src/heap/gc-idle-time-handler.h
+++ b/chromium/v8/src/heap/gc-idle-time-handler.h
@@ -63,12 +63,6 @@ class GCIdleTimeHeapState {
double contexts_disposal_rate;
size_t size_of_objects;
bool incremental_marking_stopped;
- bool sweeping_in_progress;
- bool sweeping_completed;
- bool has_low_allocation_rate;
- size_t mark_compact_speed_in_bytes_per_ms;
- size_t incremental_marking_speed_in_bytes_per_ms;
- size_t final_incremental_mark_compact_speed_in_bytes_per_ms;
};
diff --git a/chromium/v8/src/heap/heap.cc b/chromium/v8/src/heap/heap.cc
index 2b072f30214..e04f99ff7ee 100644
--- a/chromium/v8/src/heap/heap.cc
+++ b/chromium/v8/src/heap/heap.cc
@@ -4077,9 +4077,8 @@ GCIdleTimeHeapState Heap::ComputeHeapState() {
heap_state.contexts_disposed = contexts_disposed_;
heap_state.contexts_disposal_rate =
tracer()->ContextDisposalRateInMilliseconds();
+ heap_state.size_of_objects = static_cast<size_t>(SizeOfObjects());
heap_state.incremental_marking_stopped = incremental_marking()->IsStopped();
- heap_state.mark_compact_speed_in_bytes_per_ms =
- static_cast<size_t>(tracer()->MarkCompactSpeedInBytesPerMillisecond());
return heap_state;
}
diff --git a/chromium/v8/src/heap/mark-compact.cc b/chromium/v8/src/heap/mark-compact.cc
index a23e24d2553..9e317e7d082 100644
--- a/chromium/v8/src/heap/mark-compact.cc
+++ b/chromium/v8/src/heap/mark-compact.cc
@@ -3354,6 +3354,12 @@ bool MarkCompactCollector::EvacuateLiveObjectsFromPage(
HeapObject* target_object = nullptr;
AllocationResult allocation = target_space->AllocateRaw(size, alignment);
if (!allocation.To(&target_object)) {
+ // We need to abort compaction for this page. Make sure that we reset
+ // the mark bits for objects that have already been migrated.
+ if (i > 0) {
+ p->markbits()->ClearRange(p->AddressToMarkbitIndex(p->area_start()),
+ p->AddressToMarkbitIndex(object_addr));
+ }
return false;
}
diff --git a/chromium/v8/src/heap/spaces.h b/chromium/v8/src/heap/spaces.h
index 222380856bf..95e3b7c6023 100644
--- a/chromium/v8/src/heap/spaces.h
+++ b/chromium/v8/src/heap/spaces.h
@@ -36,7 +36,7 @@ class Isolate;
// area.
//
// There is a separate large object space for objects larger than
-// Page::kMaxHeapObjectSize, so that they do not have to move during
+// Page::kMaxRegularHeapObjectSize, so that they do not have to move during
// collection. The large object space is paged. Pages in large object space
// may be larger than the page size.
//
@@ -165,6 +165,10 @@ class Bitmap {
return index >> kBitsPerCellLog2;
}
+ V8_INLINE static uint32_t IndexInCell(uint32_t index) {
+ return index & kBitIndexMask;
+ }
+
INLINE(static uint32_t CellToIndex(uint32_t index)) {
return index << kBitsPerCellLog2;
}
@@ -184,7 +188,7 @@ class Bitmap {
}
inline MarkBit MarkBitFromIndex(uint32_t index) {
- MarkBit::CellType mask = 1 << (index & kBitIndexMask);
+ MarkBit::CellType mask = 1u << IndexInCell(index);
MarkBit::CellType* cell = this->cells() + (index >> kBitsPerCellLog2);
return MarkBit(cell, mask);
}
@@ -256,6 +260,23 @@ class Bitmap {
}
return true;
}
+
+ // Clears all bits starting from {cell_base_index} up to and excluding
+ // {index}. Note that {cell_base_index} is required to be cell aligned.
+ void ClearRange(uint32_t cell_base_index, uint32_t index) {
+ DCHECK_EQ(IndexInCell(cell_base_index), 0);
+ DCHECK_GE(index, cell_base_index);
+ uint32_t start_cell_index = IndexToCell(cell_base_index);
+ uint32_t end_cell_index = IndexToCell(index);
+ DCHECK_GE(end_cell_index, start_cell_index);
+ // Clear all cells till the cell containing the last index.
+ for (uint32_t i = start_cell_index; i < end_cell_index; i++) {
+ cells()[i] = 0;
+ }
+ // Clear all bits in the last cell till the last bit before index.
+ uint32_t clear_mask = ~((1u << IndexInCell(index)) - 1);
+ cells()[end_cell_index] &= clear_mask;
+ }
};
@@ -2834,9 +2855,9 @@ class MapSpace : public PagedSpace {
// -----------------------------------------------------------------------------
-// Large objects ( > Page::kMaxHeapObjectSize ) are allocated and managed by
-// the large object space. A large object is allocated from OS heap with
-// extra padding bytes (Page::kPageSize + Page::kObjectStartOffset).
+// Large objects ( > Page::kMaxRegularHeapObjectSize ) are allocated and
+// managed by the large object space. A large object is allocated from OS
+// heap with extra padding bytes (Page::kPageSize + Page::kObjectStartOffset).
// A large object always starts at Page::kObjectStartOffset to a page.
// Large objects do not move during garbage collections.
diff --git a/chromium/v8/src/i18n.js b/chromium/v8/src/i18n.js
index a3e2e34988e..b9d659c4423 100644
--- a/chromium/v8/src/i18n.js
+++ b/chromium/v8/src/i18n.js
@@ -1102,14 +1102,15 @@ function initializeNumberFormat(numberFormat, locales, options) {
var mnfd = options['minimumFractionDigits'];
var mxfd = options['maximumFractionDigits'];
- if (!IS_UNDEFINED(mnfd) || !internalOptions.style === 'currency') {
+ if (!IS_UNDEFINED(mnfd) || internalOptions.style !== 'currency') {
mnfd = getNumberOption(options, 'minimumFractionDigits', 0, 20, 0);
defineWEProperty(internalOptions, 'minimumFractionDigits', mnfd);
}
- if (!IS_UNDEFINED(mxfd) || !internalOptions.style === 'currency') {
+ if (!IS_UNDEFINED(mxfd) || internalOptions.style !== 'currency') {
+ var min_mxfd = internalOptions.style === 'percent' ? 0 : 3;
mnfd = IS_UNDEFINED(mnfd) ? 0 : mnfd;
- fallback_limit = (mnfd > 3) ? mnfd : 3;
+ fallback_limit = (mnfd > min_mxfd) ? mnfd : min_mxfd;
mxfd = getNumberOption(options, 'maximumFractionDigits', mnfd, 20, fallback_limit);
defineWEProperty(internalOptions, 'maximumFractionDigits', mxfd);
}
diff --git a/chromium/v8/src/json-stringifier.h b/chromium/v8/src/json-stringifier.h
index 260cade1ffc..fa4946dad7d 100644
--- a/chromium/v8/src/json-stringifier.h
+++ b/chromium/v8/src/json-stringifier.h
@@ -82,7 +82,8 @@ class BasicJsonStringifier BASE_EMBEDDED {
INLINE(Result SerializeJSArray(Handle<JSArray> object));
INLINE(Result SerializeJSObject(Handle<JSObject> object));
- Result SerializeJSArraySlow(Handle<JSArray> object, uint32_t length);
+ Result SerializeJSArraySlow(Handle<JSArray> object, uint32_t start,
+ uint32_t length);
void SerializeString(Handle<String> object);
@@ -436,8 +437,8 @@ BasicJsonStringifier::Result BasicJsonStringifier::SerializeJSArray(
builder_.AppendCharacter('[');
switch (object->GetElementsKind()) {
case FAST_SMI_ELEMENTS: {
- Handle<FixedArray> elements(
- FixedArray::cast(object->elements()), isolate_);
+ Handle<FixedArray> elements(FixedArray::cast(object->elements()),
+ isolate_);
for (uint32_t i = 0; i < length; i++) {
if (i > 0) builder_.AppendCharacter(',');
SerializeSmi(Smi::cast(elements->get(i)));
@@ -456,14 +457,20 @@ BasicJsonStringifier::Result BasicJsonStringifier::SerializeJSArray(
break;
}
case FAST_ELEMENTS: {
- Handle<FixedArray> elements(
- FixedArray::cast(object->elements()), isolate_);
+ Handle<Object> old_length(object->length(), isolate_);
for (uint32_t i = 0; i < length; i++) {
+ if (object->length() != *old_length ||
+ object->GetElementsKind() != FAST_ELEMENTS) {
+ Result result = SerializeJSArraySlow(object, i, length);
+ if (result != SUCCESS) return result;
+ break;
+ }
if (i > 0) builder_.AppendCharacter(',');
- Result result =
- SerializeElement(isolate_,
- Handle<Object>(elements->get(i), isolate_),
- i);
+ Result result = SerializeElement(
+ isolate_,
+ Handle<Object>(FixedArray::cast(object->elements())->get(i),
+ isolate_),
+ i);
if (result == SUCCESS) continue;
if (result == UNCHANGED) {
builder_.AppendCString("null");
@@ -473,11 +480,10 @@ BasicJsonStringifier::Result BasicJsonStringifier::SerializeJSArray(
}
break;
}
- // TODO(yangguo): The FAST_HOLEY_* cases could be handled in a faster way.
- // They resemble the non-holey cases except that a prototype chain lookup
- // is necessary for holes.
+ // The FAST_HOLEY_* cases could be handled in a faster way. They resemble
+ // the non-holey cases except that a lookup is necessary for holes.
default: {
- Result result = SerializeJSArraySlow(object, length);
+ Result result = SerializeJSArraySlow(object, 0, length);
if (result != SUCCESS) return result;
break;
}
@@ -489,8 +495,8 @@ BasicJsonStringifier::Result BasicJsonStringifier::SerializeJSArray(
BasicJsonStringifier::Result BasicJsonStringifier::SerializeJSArraySlow(
- Handle<JSArray> object, uint32_t length) {
- for (uint32_t i = 0; i < length; i++) {
+ Handle<JSArray> object, uint32_t start, uint32_t length) {
+ for (uint32_t i = start; i < length; i++) {
if (i > 0) builder_.AppendCharacter(',');
Handle<Object> element;
ASSIGN_RETURN_ON_EXCEPTION_VALUE(
diff --git a/chromium/v8/src/log.cc b/chromium/v8/src/log.cc
index b9eb577b205..ea69fb4bee3 100644
--- a/chromium/v8/src/log.cc
+++ b/chromium/v8/src/log.cc
@@ -123,8 +123,9 @@ class CodeEventLogger::NameBuffer {
}
void AppendInt(int n) {
- Vector<char> buffer(utf8_buffer_ + utf8_pos_,
- kUtf8BufferSize - utf8_pos_);
+ int space = kUtf8BufferSize - utf8_pos_;
+ if (space <= 0) return;
+ Vector<char> buffer(utf8_buffer_ + utf8_pos_, space);
int size = SNPrintF(buffer, "%d", n);
if (size > 0 && utf8_pos_ + size <= kUtf8BufferSize) {
utf8_pos_ += size;
@@ -132,8 +133,9 @@ class CodeEventLogger::NameBuffer {
}
void AppendHex(uint32_t n) {
- Vector<char> buffer(utf8_buffer_ + utf8_pos_,
- kUtf8BufferSize - utf8_pos_);
+ int space = kUtf8BufferSize - utf8_pos_;
+ if (space <= 0) return;
+ Vector<char> buffer(utf8_buffer_ + utf8_pos_, space);
int size = SNPrintF(buffer, "%x", n);
if (size > 0 && utf8_pos_ + size <= kUtf8BufferSize) {
utf8_pos_ += size;
@@ -145,7 +147,7 @@ class CodeEventLogger::NameBuffer {
private:
static const int kUtf8BufferSize = 512;
- static const int kUtf16BufferSize = 128;
+ static const int kUtf16BufferSize = kUtf8BufferSize;
int utf8_pos_;
char utf8_buffer_[kUtf8BufferSize];
diff --git a/chromium/v8/src/snapshot/serialize.cc b/chromium/v8/src/snapshot/serialize.cc
index 297b31cbe5f..fde170d0bfb 100644
--- a/chromium/v8/src/snapshot/serialize.cc
+++ b/chromium/v8/src/snapshot/serialize.cc
@@ -660,18 +660,27 @@ void Deserializer::VisitPointers(Object** start, Object** end) {
void Deserializer::DeserializeDeferredObjects() {
for (int code = source_.Get(); code != kSynchronize; code = source_.Get()) {
- int space = code & kSpaceMask;
- DCHECK(space <= kNumberOfSpaces);
- DCHECK(code - space == kNewObject);
- HeapObject* object = GetBackReferencedObject(space);
- int size = source_.GetInt() << kPointerSizeLog2;
- Address obj_address = object->address();
- Object** start = reinterpret_cast<Object**>(obj_address + kPointerSize);
- Object** end = reinterpret_cast<Object**>(obj_address + size);
- bool filled = ReadData(start, end, space, obj_address);
- CHECK(filled);
- DCHECK(CanBeDeferred(object));
- PostProcessNewObject(object, space);
+ switch (code) {
+ case kAlignmentPrefix:
+ case kAlignmentPrefix + 1:
+ case kAlignmentPrefix + 2:
+ SetAlignment(code);
+ break;
+ default: {
+ int space = code & kSpaceMask;
+ DCHECK(space <= kNumberOfSpaces);
+ DCHECK(code - space == kNewObject);
+ HeapObject* object = GetBackReferencedObject(space);
+ int size = source_.GetInt() << kPointerSizeLog2;
+ Address obj_address = object->address();
+ Object** start = reinterpret_cast<Object**>(obj_address + kPointerSize);
+ Object** end = reinterpret_cast<Object**>(obj_address + size);
+ bool filled = ReadData(start, end, space, obj_address);
+ CHECK(filled);
+ DCHECK(CanBeDeferred(object));
+ PostProcessNewObject(object, space);
+ }
+ }
}
}
@@ -1212,12 +1221,9 @@ bool Deserializer::ReadData(Object** current, Object** limit, int source_space,
case kAlignmentPrefix:
case kAlignmentPrefix + 1:
- case kAlignmentPrefix + 2: {
- DCHECK_EQ(kWordAligned, next_alignment_);
- next_alignment_ =
- static_cast<AllocationAlignment>(data - (kAlignmentPrefix - 1));
+ case kAlignmentPrefix + 2:
+ SetAlignment(data);
break;
- }
STATIC_ASSERT(kNumberOfRootArrayConstants == Heap::kOldSpaceRoots);
STATIC_ASSERT(kNumberOfRootArrayConstants == 32);
@@ -2082,6 +2088,7 @@ void Serializer::ObjectSerializer::SerializeDeferred() {
CHECK_EQ(0, bytes_processed_so_far_);
bytes_processed_so_far_ = kPointerSize;
+ serializer_->PutAlignmentPrefix(object_);
sink_->Put(kNewObject + reference.space(), "deferred object");
serializer_->PutBackReference(object_, reference);
sink_->PutInt(size >> kPointerSizeLog2, "deferred object size");
diff --git a/chromium/v8/src/snapshot/serialize.h b/chromium/v8/src/snapshot/serialize.h
index 2863ede5034..d5374a28e01 100644
--- a/chromium/v8/src/snapshot/serialize.h
+++ b/chromium/v8/src/snapshot/serialize.h
@@ -572,6 +572,14 @@ class Deserializer: public SerializerDeserializer {
memcpy(dest, src, sizeof(*src));
}
+ void SetAlignment(byte data) {
+ DCHECK_EQ(kWordAligned, next_alignment_);
+ int alignment = data - (kAlignmentPrefix - 1);
+ DCHECK_LE(kWordAligned, alignment);
+ DCHECK_LE(alignment, kSimd128Unaligned);
+ next_alignment_ = static_cast<AllocationAlignment>(alignment);
+ }
+
void DeserializeDeferredObjects();
void FlushICacheForNewIsolate();
diff --git a/chromium/v8/test/unittests/unittests.gyp b/chromium/v8/test/unittests/unittests.gyp
index dcd0bf56aad..663ae372c58 100644
--- a/chromium/v8/test/unittests/unittests.gyp
+++ b/chromium/v8/test/unittests/unittests.gyp
@@ -103,6 +103,7 @@
'libplatform/default-platform-unittest.cc',
'libplatform/task-queue-unittest.cc',
'libplatform/worker-thread-unittest.cc',
+ 'heap/bitmap-unittest.cc',
'heap/gc-idle-time-handler-unittest.cc',
'heap/memory-reducer-unittest.cc',
'heap/heap-unittest.cc',
diff --git a/chromium/win8/metro_driver/metro_driver.gyp b/chromium/win8/metro_driver/metro_driver.gyp
index 2720bb5b8d6..055b72f153e 100644
--- a/chromium/win8/metro_driver/metro_driver.gyp
+++ b/chromium/win8/metro_driver/metro_driver.gyp
@@ -118,8 +118,7 @@
'resources/Logo.png',
'resources/SecondaryTile.png',
'resources/SmallLogo.png',
- 'resources/splash-620x300.png',
- 'resources/VisualElementsManifest.xml',
+ 'resources/chrome.VisualElementsManifest.xml',
],
},
],
diff --git a/chromium/win8/metro_driver/resources/Logo.png b/chromium/win8/metro_driver/resources/Logo.png
index 16d18e315aa..eff95d996dc 100644
--- a/chromium/win8/metro_driver/resources/Logo.png
+++ b/chromium/win8/metro_driver/resources/Logo.png
Binary files differ
diff --git a/chromium/win8/metro_driver/resources/SmallLogo.png b/chromium/win8/metro_driver/resources/SmallLogo.png
index c25cfb4002e..eff95d996dc 100644
--- a/chromium/win8/metro_driver/resources/SmallLogo.png
+++ b/chromium/win8/metro_driver/resources/SmallLogo.png
Binary files differ
diff --git a/chromium/win8/metro_driver/resources/VisualElementsManifest.xml b/chromium/win8/metro_driver/resources/VisualElementsManifest.xml
deleted file mode 100644
index 230e787c591..00000000000
--- a/chromium/win8/metro_driver/resources/VisualElementsManifest.xml
+++ /dev/null
@@ -1,17 +0,0 @@
-<!-- This is only meant to be copied by chrome.exe in developer builds. -->
-<Application
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
- <VisualElements
- DisplayName="Developer Chrome"
- Logo="Logo.png"
- SmallLogo="SmallLogo.png"
- ForegroundText="light"
- BackgroundColor="white">
- <DefaultTile
- ShortName="DevChrome"
- ShowName="allLogos"
- />
- <SplashScreen
- Image="splash-620x300.png"/>
- </VisualElements>
-</Application>
diff --git a/chromium/win8/metro_driver/resources/chrome.VisualElementsManifest.xml b/chromium/win8/metro_driver/resources/chrome.VisualElementsManifest.xml
new file mode 100644
index 00000000000..640ef97c785
--- /dev/null
+++ b/chromium/win8/metro_driver/resources/chrome.VisualElementsManifest.xml
@@ -0,0 +1,9 @@
+<!-- This is only meant to be copied by chrome.exe in developer builds. -->
+<Application xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+ <VisualElements
+ BackgroundColor="#323232"
+ ShowNameOnSquare150x150Logo="on"
+ ForegroundText="light"
+ Square150x150Logo="Logo.png"
+ Square70x70Logo="SmallLogo.png"/>
+</Application>
diff --git a/chromium/win8/metro_driver/resources/splash-620x300.png b/chromium/win8/metro_driver/resources/splash-620x300.png
deleted file mode 100644
index 41a3e02fa91..00000000000
--- a/chromium/win8/metro_driver/resources/splash-620x300.png
+++ /dev/null
Binary files differ