<?xml version="1.0" encoding="UTF-8"?>
<!-- 
/*
* Copyright (C) 2008 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
*      http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
 -->

<resources xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
    <string name="app_name" msgid="649227358658669779">"Launcher3"</string>
    <string name="folder_name" msgid="7371454440695724752"></string>
    <string name="work_folder_name" msgid="3753320833950115786">"Darbs"</string>
    <string name="activity_not_found" msgid="8071924732094499514">"Lietotne nav instalēta."</string>
    <string name="activity_not_available" msgid="7456344436509528827">"Lietotne nav pieejama."</string>
    <string name="safemode_shortcut_error" msgid="9160126848219158407">"Lejupielādētā lietotne ir atspējota drošajā režīmā."</string>
    <string name="safemode_widget_error" msgid="4863470563535682004">"Logrīki atspējoti drošajā režīmā"</string>
    <string name="shortcut_not_available" msgid="2536503539825726397">"Saīsne nav pieejama."</string>
    <string name="home_screen" msgid="806512411299847073">"Sākuma ekrāns"</string>
    <string name="custom_actions" msgid="3747508247759093328">"Pielāgotās darbības"</string>
    <string name="long_press_widget_to_add" msgid="7699152356777458215">"Lai izvēlētos logrīku, pieskarieties un turiet to."</string>
    <string name="long_accessible_way_to_add" msgid="4289502106628154155">"Lai atlasītu logrīku, veiciet dubultskārienu uz tā un turiet to vai arī veiciet pielāgotas darbības."</string>
    <string name="widget_dims_format" msgid="2370757736025621599">"%1$d × %2$d"</string>
    <string name="widget_accessible_dims_format" msgid="3640149169885301790">"%1$d plats un %2$d augsts"</string>
    <string name="add_item_request_drag_hint" msgid="5899764264480397019">"Pieskarieties un turiet, lai manuāli pievienotu"</string>
    <string name="place_automatically" msgid="8064208734425456485">"Pievienot automātiski"</string>
    <string name="all_apps_search_bar_hint" msgid="1390553134053255246">"Meklēt lietotnes"</string>
    <string name="all_apps_loading_message" msgid="5813968043155271636">"Notiek lietotņu ielāde…"</string>
    <string name="all_apps_no_search_results" msgid="3200346862396363786">"Vaicājumam “<xliff:g id="QUERY">%1$s</xliff:g>” neatbilda neviena lietotne"</string>
    <string name="all_apps_search_market_message" msgid="1366263386197059176">"Meklēt citas lietotnes"</string>
    <!-- no translation found for label_application (8531721983832654978) -->
    <skip />
    <string name="notifications_header" msgid="1404149926117359025">"Paziņojumi"</string>
    <string name="long_press_shortcut_to_add" msgid="4524750017792716791">"Lai atlasītu saīsni, pieskarieties un turiet to."</string>
    <string name="long_accessible_way_to_add_shortcut" msgid="3327314059613154633">"Lai atlasītu saīsni, veiciet dubultskārienu uz tās un turiet to. Varat arī veikt pielāgotas darbības."</string>
    <string name="out_of_space" msgid="4691004494942118364">"Šajā sākuma ekrānā vairs nav vietas."</string>
    <string name="hotseat_out_of_space" msgid="7448809638125333693">"Izlases joslā vairs nav vietas."</string>
    <string name="all_apps_button_label" msgid="8130441508702294465">"Lietotņu saraksts"</string>
    <string name="all_apps_button_personal_label" msgid="1315764287305224468">"Personīgo lietotņu saraksts"</string>
    <string name="all_apps_button_work_label" msgid="7270707118948892488">"Darba lietotņu saraksts"</string>
    <string name="all_apps_home_button_label" msgid="252062713717058851">"Sākums"</string>
    <string name="remove_drop_target_label" msgid="7812859488053230776">"Noņemt"</string>
    <string name="uninstall_drop_target_label" msgid="4722034217958379417">"Atinstalēt"</string>
    <string name="app_info_drop_target_label" msgid="692894985365717661">"Par lietotni"</string>
    <string name="install_drop_target_label" msgid="2539096853673231757">"Instalēt"</string>
    <string name="permlab_install_shortcut" msgid="5632423390354674437">"instalēt saīsnes"</string>
    <string name="permdesc_install_shortcut" msgid="923466509822011139">"Ļauj lietotnei pievienot saīsnes, nejautājot lietotājam."</string>
    <string name="permlab_read_settings" msgid="1941457408239617576">"lasīt sākuma ekrāna iestatījumus un saīsnes"</string>
    <string name="permdesc_read_settings" msgid="5833423719057558387">"Ļauj lietotnei lasīt iestatījumus un saīsnes sākuma ekrānā."</string>
    <string name="permlab_write_settings" msgid="3574213698004620587">"rakstīt sākuma ekrāna iestatījumus un saīsnes"</string>
    <string name="permdesc_write_settings" msgid="5440712911516509985">"Ļauj lietotnei mainīt iestatījumus un saīsnes sākuma ekrānā."</string>
    <string name="msg_no_phone_permission" msgid="9208659281529857371">"Lietotnei <xliff:g id="APP_NAME">%1$s</xliff:g> nav atļauts veikt tālruņa zvanus."</string>
    <string name="gadget_error_text" msgid="6081085226050792095">"Ielādējot logrīku, radās problēma."</string>
    <string name="gadget_setup_text" msgid="8274003207686040488">"Notiek iestatīšana"</string>
    <string name="uninstall_system_app_text" msgid="4172046090762920660">"Šī ir sistēmas lietotne, un to nevar atinstalēt."</string>
    <string name="folder_hint_text" msgid="6617836969016293992">"Mape bez nosaukuma"</string>
    <string name="disabled_app_label" msgid="6673129024321402780">"Lietotne <xliff:g id="APP_NAME">%1$s</xliff:g> ir atspējota"</string>
    <!-- no translation found for dotted_app_label (5194538107138265416) -->
    <string name="default_scroll_format" msgid="7475544710230993317">"%1$d. lapa no %2$d"</string>
    <string name="workspace_scroll_format" msgid="8458889198184077399">"Sākuma ekrāns: %1$d no %2$d"</string>
    <string name="workspace_new_page" msgid="257366611030256142">"Jauna sākuma ekrāna lapa"</string>
    <string name="folder_opened" msgid="94695026776264709">"Atvērta mape: <xliff:g id="WIDTH">%1$d</xliff:g> x <xliff:g id="HEIGHT">%2$d</xliff:g>"</string>
    <string name="folder_tap_to_close" msgid="4625795376335528256">"Pieskarieties, lai aizvērtu mapi."</string>
    <string name="folder_tap_to_rename" msgid="4017685068016979677">"Pieskarieties, lai saglabātu jauno nosaukumu."</string>
    <string name="folder_closed" msgid="4100806530910930934">"Mape aizvērta"</string>
    <string name="folder_renamed" msgid="1794088362165669656">"Mape pārdēvēta par: <xliff:g id="NAME">%1$s</xliff:g>"</string>
    <string name="folder_name_format" msgid="6629239338071103179">"Mape: <xliff:g id="NAME">%1$s</xliff:g>"</string>
    <string name="widget_button_text" msgid="2880537293434387943">"Logrīki"</string>
    <string name="wallpaper_button_text" msgid="8404103075899945851">"Fona tapetes"</string>
    <string name="settings_button_text" msgid="8873672322605444408">"Sākumlapas iestatījumi"</string>
    <string name="msg_disabled_by_admin" msgid="6898038085516271325">"Atspējojis administrators"</string>
    <string name="allow_rotation_title" msgid="7728578836261442095">"Atļaut sākuma ekrāna pagriešanu"</string>
    <string name="allow_rotation_desc" msgid="8662546029078692509">"Pagriežot tālruni"</string>
    <!-- no translation found for notification_dots_title (9062440428204120317) -->
    <skip />
    <!-- no translation found for notification_dots_desc_on (1679848116452218908) -->
    <skip />
    <!-- no translation found for notification_dots_desc_off (1760796511504341095) -->
    <skip />
    <string name="title_missing_notification_access" msgid="7503287056163941064">"Nepieciešama piekļuve paziņojumiem"</string>
    <string name="msg_missing_notification_access" msgid="281113995110910548">"Lai tiktu rādīti paziņojumu punkti, ieslēdziet paziņojumus lietotnei <xliff:g id="NAME">%1$s</xliff:g>."</string>
    <string name="title_change_settings" msgid="1376365968844349552">"Mainīt iestatījumus"</string>
    <!-- no translation found for notification_dots_service_title (4284221181793592871) -->
    <skip />
    <string name="auto_add_shortcuts_label" msgid="8222286205987725611">"Pievienot ikonu sākuma ekrānā"</string>
    <string name="auto_add_shortcuts_description" msgid="7117251166066978730">"Jaunām lietotnēm"</string>
    <string name="icon_shape_override_label" msgid="2977264953998281004">"Mainīt ikonu formu"</string>
    <string name="icon_shape_override_label_location" msgid="3841607380657692863">"sākuma ekrānā"</string>
    <string name="icon_shape_system_default" msgid="1709762974822753030">"Izmantot sistēmas noklusējumu"</string>
    <string name="icon_shape_square" msgid="633575066111622774">"Kvadrāts"</string>
    <string name="icon_shape_squircle" msgid="5658049910802669495">"Kvadrāts ar noapaļotiem stūriem"</string>
    <string name="icon_shape_circle" msgid="6550072265930144217">"Aplis"</string>
    <string name="icon_shape_teardrop" msgid="4525869388200835463">"Lāse"</string>
    <string name="icon_shape_override_progress" msgid="3461735694970239908">"Tiek piemērotas ikonu formas izmaiņas"</string>
    <string name="package_state_unknown" msgid="7592128424511031410">"Nezināma"</string>
    <string name="abandoned_clean_this" msgid="7610119707847920412">"Noņemt"</string>
    <string name="abandoned_search" msgid="891119232568284442">"Meklēt"</string>
    <string name="abandoned_promises_title" msgid="7096178467971716750">"Šī lietotne nav instalēta"</string>
    <string name="abandoned_promise_explanation" msgid="3990027586878167529">"Šai ikonai paredzētā lietotne nav instalēta. Varat noņemt ikonu vai meklēt lietotni un instalēt to manuāli."</string>
    <string name="app_downloading_title" msgid="8336702962104482644">"Lietotnes <xliff:g id="NAME">%1$s</xliff:g> lejupielāde (<xliff:g id="PROGRESS">%2$s</xliff:g> pabeigti)"</string>
    <string name="app_waiting_download_title" msgid="7053938513995617849">"Notiek <xliff:g id="NAME">%1$s</xliff:g> instalēšana"</string>
    <string name="widgets_bottom_sheet_title" msgid="2904559530954183366">"<xliff:g id="NAME">%1$s</xliff:g> logrīki"</string>
    <string name="widgets_list" msgid="796804551140113767">"Logrīku saraksts"</string>
    <string name="widgets_list_closed" msgid="6141506579418771922">"Logrīku saraksts aizvērts"</string>
    <string name="action_add_to_workspace" msgid="8902165848117513641">"Pievienot sākuma ekrānam"</string>
    <string name="action_move_here" msgid="2170188780612570250">"Pārvietot vienumu šeit"</string>
    <string name="item_added_to_workspace" msgid="4211073925752213539">"Vienums pievienots sākuma ekrānam"</string>
    <string name="item_removed" msgid="851119963877842327">"Vienums noņemts"</string>
    <string name="undo" msgid="4151576204245173321">"Atsaukt"</string>
    <string name="action_move" msgid="4339390619886385032">"Pārvietot vienumu"</string>
    <string name="move_to_empty_cell" msgid="2833711483015685619">"Pārvietot uz <xliff:g id="NUMBER_0">%1$s</xliff:g>. rindu, <xliff:g id="NUMBER_1">%2$s</xliff:g>. kolonnu"</string>
    <string name="move_to_position" msgid="6750008980455459790">"Pārvietot uz <xliff:g id="NUMBER">%1$s</xliff:g>. pozīciju"</string>
    <string name="move_to_hotseat_position" msgid="6295412897075147808">"Pārvietot uz <xliff:g id="NUMBER">%1$s</xliff:g>. izlases pozīciju"</string>
    <string name="item_moved" msgid="4606538322571412879">"Vienums pārvietots"</string>
    <string name="add_to_folder" msgid="9040534766770853243">"Pievienot mapei: <xliff:g id="NAME">%1$s</xliff:g>"</string>
    <string name="add_to_folder_with_app" msgid="4534929978967147231">"Pievienot mapei, kurā ir <xliff:g id="NAME">%1$s</xliff:g>"</string>
    <string name="added_to_folder" msgid="4793259502305558003">"Vienums pievienots mapei"</string>
    <string name="create_folder_with" msgid="4050141361160214248">"Izveidot mapi ar: <xliff:g id="NAME">%1$s</xliff:g>"</string>
    <string name="folder_created" msgid="6409794597405184510">"Mape izveidota"</string>
    <string name="action_move_to_workspace" msgid="1603837886334246317">"Pārvietot uz sākuma ekrānu"</string>
    <string name="action_resize" msgid="1802976324781771067">"Mainīt lielumu"</string>
    <string name="action_increase_width" msgid="8773715375078513326">"Palielināt platumu"</string>
    <string name="action_increase_height" msgid="459390020612501122">"Palielināt augstumu"</string>
    <string name="action_decrease_width" msgid="1374549771083094654">"Samazināt platumu"</string>
    <string name="action_decrease_height" msgid="282377193880900022">"Samazināt augstumu"</string>
    <string name="widget_resized" msgid="9130327887929620">"Logrīka lielums mainīts — platums: <xliff:g id="NUMBER_0">%1$s</xliff:g>, augstums: <xliff:g id="NUMBER_1">%2$s</xliff:g>."</string>
    <string name="action_deep_shortcut" msgid="2864038805849372848">"Saīsnes"</string>
    <string name="shortcuts_menu_with_notifications_description" msgid="2676582286544232849">"Saīsnes un paziņojumi"</string>
    <string name="action_dismiss_notification" msgid="5909461085055959187">"Nerādīt"</string>
    <string name="notification_dismissed" msgid="6002233469409822874">"Paziņojums netiek rādīts"</string>
    <string name="all_apps_personal_tab" msgid="4190252696685155002">"Personīgās lietotnes"</string>
    <string name="all_apps_work_tab" msgid="4884822796154055118">"Darba lietotnes"</string>
    <string name="work_profile_toggle_label" msgid="3081029915775481146">"Darba profils"</string>
    <string name="bottom_work_tab_user_education_title" msgid="5785851780786322825">"Meklējiet darba lietotnes šeit"</string>
    <string name="bottom_work_tab_user_education_body" msgid="2818107472360579152">"Katrai darba lietotnei ir emblēma, un jūsu organizācija aizsargā šīs lietotnes. Lai varētu ērtāk piekļūt lietotnēm, pārvietojiet tās uz sākuma ekrānu."</string>
    <string name="work_mode_on_label" msgid="4781128097185272916">"Pārvalda jūsu organizācija"</string>
    <string name="work_mode_off_label" msgid="3194894777601421047">"Paziņojumi un lietotnes ir izslēgtas"</string>
    <string name="bottom_work_tab_user_education_close_button" msgid="4224492243977802135">"Aizvērt"</string>
    <string name="bottom_work_tab_user_education_closed" msgid="1098340939861869465">"Aizvērta"</string>
    <string name="remote_action_failed" msgid="1383965239183576790">"Neizdevās: <xliff:g id="WHAT">%1$s</xliff:g>"</string>
</resources>
