<?xml version="1.0" encoding="utf-8"?>
<grit-part>

      <message name="IDS_DEFAULT_TAB_TITLE" desc="The default title in a tab.">
        Untitled
      </message>

      <!-- Sad Tab Strings -->
      <message name="IDS_SAD_TAB_TITLE" desc="The title of the sad tab page that is shown when a tab crashes. This is intended to be a humorous exclamation of dismay." formatter_data="android_java">
        Aw, Snap!
      </message>
      <message name="IDS_SAD_TAB_MESSAGE" desc="The message displayed on the sad tab page." formatter_data="android_java">
        Something went wrong while displaying this webpage.
      </message>
      <if expr="_google_chrome">
        <message name="IDS_SAD_TAB_OOM_MESSAGE" desc="The message displayed on the sad tab page if the tab died due to being out of memory." formatter_data="android_java">
          Google Chrome ran out of memory while trying to display this webpage.
        </message>
      </if>
      <if expr="not _google_chrome">
        <message name="IDS_SAD_TAB_OOM_MESSAGE" desc="The message displayed on the sad tab page if the tab died due to being out of memory." formatter_data="android_java">
          Chromium ran out of memory while trying to display this webpage.
        </message>
      </if>
      <message name="IDS_SAD_TAB_HELP_MESSAGE" desc="The help message displayed on the sad tab page, with IDS_SAD_TAB_HELP_LINK embedded as a link to help.">
        If you're seeing this frequently, try these <ph name="HELP_LINK">$1<ex>suggestions</ex></ph>.
      </message>
      <message name="IDS_SAD_TAB_HELP_LINK" desc="The link text displayed on the sad tab page linking the user to a help article.">
        suggestions
      </message>
      <message name="IDS_SAD_TAB_RELOAD_LABEL" desc="Button label in the sad tab page for reloading a page." formatter_data="android_java">
        Reload
      </message>
      <if expr="is_android or is_ios">
        <message name="IDS_SAD_TAB_SEND_FEEDBACK_LABEL" desc="Button label in the sad tab page for sending feedback. This label replaces the reload button after a crash happens twice in a row." formatter_data="android_java">
          Send Feedback
        </message>
      </if>
      <if expr="is_win">
        <message name="IDS_SAD_TAB_OOM_TITLE" desc="The title of the web page displayed if content in Chrome browser does not load due to the browser being out of memory, and a reload failed to fix the issue.">
          Not enough memory to open this page
        </message>
      </if>
      <message name="IDS_SAD_TAB_RELOAD_TITLE" desc="The title of the web page displayed if content in Chrome browser does not load for an unknown reason, and a reload failed to fix the issue." formatter_data="android_java">
        Can't open this page
      </message>
      <message name="IDS_SAD_TAB_OOM_MESSAGE_TABS" desc="The message displayed on the web page if content in Chrome browser does not load due to the browser being out of memory, a reload failed to fix the issue and other tabs are open." formatter_data="android_java">
        Try closing other tabs or programs to free up memory.
      </message>
      <message name="IDS_SAD_TAB_OOM_MESSAGE_NOTABS" desc="The message displayed on the web page if content in Chrome browser does not load due to the browser being out of memory, a reload failed to fix the issue and no other tabs are open." formatter_data="android_java">
        Try exiting other programs to free up memory.
      </message>
      <message name="IDS_SAD_TAB_RELOAD_TRY" desc="The message displayed on the web page if content in Chrome browser does not load and a reload failed to fix the issue. Introduces a bulleted list of solutions/tips for the user to try." formatter_data="android_java">
        Try the following tips:
      </message>
      <if expr="is_macosx">
        <message name="IDS_SAD_TAB_RELOAD_INCOGNITO" desc="One of the bullet points displayed on the web page if a reload failed to fix the issue, advising the user to open the web page in Chrome's Incognito mode." formatter_data="android_java">
          Open page in Incognito mode (⇧⌘N)
        </message>
      </if>
      <if expr="is_win or is_linux or chromeos">
        <message name="IDS_SAD_TAB_RELOAD_INCOGNITO" desc="One of the bullet points displayed on the web page if a reload failed to fix the issue, advising the user to open the web page in Chrome's Incognito mode." formatter_data="android_java">
          Open page in Incognito mode (Ctrl-Shift-N)
        </message>
      </if>
      <if expr="is_android or is_ios">
        <message name="IDS_SAD_TAB_RELOAD_INCOGNITO" desc="One of the bullet points displayed on the web page if a reload failed to fix the issue, advising the user to open the web page in Chrome's Incognito mode." formatter_data="android_java">
          Open page in Incognito mode
        </message>
      </if>
      <if expr="is_macosx or chromeos">
        <message name="IDS_SAD_TAB_RELOAD_CLOSE_TABS" desc="One of the bullet points displayed on the web page if a reload failed to fix the issue, advising the user to close other Chrome tabs or apps running on their computer (Mac, Chrome OS)." formatter_data="android_java">
          Close other tabs or apps
        </message>
      </if>
      <if expr="is_linux and not chromeos">
        <message name="IDS_SAD_TAB_RELOAD_CLOSE_TABS" desc="One of the bullet points displayed on the web page if a reload failed to fix the issue, advising the user to close other Chrome tabs or programs running on their computer." formatter_data="android_java">
          Close other tabs or programs
        </message>
      </if>
      <if expr="is_macosx or chromeos or is_android or is_ios">
        <message name="IDS_SAD_TAB_RELOAD_CLOSE_NOTABS" desc="One of the bullet points displayed on the web page if a reload failed to fix the issue, advising the user to close other apps running on their computer or device." formatter_data="android_java">
          Close other apps
        </message>
      </if>
      <if expr="is_linux and not chromeos">
        <message name="IDS_SAD_TAB_RELOAD_CLOSE_NOTABS" desc="One of the bullet points displayed on the web page if a reload failed to fix the issue, advising the user to close other programs running on their computer (Linux)." formatter_data="android_java">
          Close other programs
        </message>
      </if>
      <if expr="_google_chrome">
        <message name="IDS_SAD_TAB_RELOAD_RESTART_BROWSER" desc="One of the bullet points displayed on the web page if a reload failed to fix the issue, advising the user to restart Chrome." formatter_data="android_java">
          Restart Chrome
        </message>
      </if>
      <if expr="not _google_chrome">
        <message name="IDS_SAD_TAB_RELOAD_RESTART_BROWSER" desc="One of the bullet points displayed on the web page if a reload failed to fix the issue, advising the user to restart Chromium." formatter_data="android_java">
          Restart Chromium
        </message>
      </if>
      <if expr="is_win or is_linux or is_maxosx or chromeos">
        <message name="IDS_SAD_TAB_RELOAD_RESTART_DEVICE" desc="One of the bullet points displayed on the web page if a reload failed to fix the issue, advising the user to restart their computer." formatter_data="android_java">
          Restart your computer
        </message>
      </if>
      <if expr="is_android or is_ios">
        <message name="IDS_SAD_TAB_RELOAD_RESTART_DEVICE" desc="One of the bullet points displayed on the web page if a reload failed to fix the issue, advising the user to restart their device (i.e. phone or tablet)." formatter_data="android_java">
          Restart your device
        </message>
      </if>
      <if expr="is_android or is_ios">
        <message name="IDS_SAD_TAB_RELOAD_LEARN_MORE" desc="The link text displayed on the sad tab page pointing the users to a help article if a reload failed to fix the issue." meaning="Learn more about web pages that fail to load" formatter_data="android_java">
          Learn more
        </message>
      </if>
      <message name="IDS_SAD_TAB_UMA_OPTIN" desc="Text that appears next to a checkbox, allowing the user to opt-in to sending statistics about their Chrome browser usage and reports of crashes to Google." formatter_data="android_java">
        Automatically send usage statistics and crash reports to Google
      </message>

      <!-- New Tab -->
      <message name="IDS_NEW_TAB_TITLE"
               desc="Title of the new tab page, not to be confused with the action of opening a new tab.">
        New Tab
      </message>
      <if expr="not is_android">
        <message name="IDS_NEW_TAB_OTR_HEADING"
                 desc="Heading used when a person opens an OTR window">
          You’ve gone incognito
        </message>
        <message name="IDS_NEW_TAB_OTR_DESCRIPTION"
                 desc="Used when a person opens an OTR window">
          Pages you view in incognito tabs won’t stick around in your browser’s history, cookie store, or search history after you’ve closed all of your incognito tabs. Any files you download or bookmarks you create will be kept.
        </message>
        <message name="IDS_NEW_TAB_OTR_LEARN_MORE_LINK"
                 desc="OTR window link text to learn more">
          Learn more
        </message>
        <message name="IDS_NEW_TAB_OTR_MESSAGE_WARNING"
                 desc="OTR window warning message. This follows the IDS_NEW_TAB_OTR_DESCRIPTION paragraph">
          However, you aren’t invisible. Going incognito doesn’t hide your browsing from your employer, your internet service provider, or the websites you visit.
        </message>
      </if>
      <message name="IDS_NEW_TAB_UNDO_THUMBNAIL_REMOVE"
         desc="Action link text to undo removing a thumbnail from the most visited section.">
        Undo
      </message>

      <!-- Incognito Tab redesign strings -->
      <!-- TODO(msramek): Merge with the above section once this is fully launched. -->

      <message name="IDS_NEW_TAB_OTR_TITLE" desc="Title of the Incognito new tab page. The Incognito mode provides private browsing experience by hiding browsing activity from other people using the same device. However, it does not make the user completely invisible or anonymous; please don't translate it as such." formatter_data="android_java">
        You’ve gone incognito
      </message>
      <message name="IDS_NEW_TAB_OTR_SUBTITLE" desc="Subtitle of the Incognito new tab page, explaining to the user that the Incognito mode hides their browsing activity from other people using the same device. The second sentence clarifies that there are two important exceptions from this rule - downloaded files and added bookmarks will be persisted even after the Incognito session is closed." formatter_data="android_java">
        Now you can browse privately, and other people who use this device won’t see your activity. However, downloads and bookmarks will be saved.
      </message>
      <message name="IDS_NEW_TAB_OTR_NOT_SAVED" desc="Bullet points listing data that are not saved in the Incognito mode. 'Browsing history' means a history of visited websites. 'Cookies and site data' refers to data saved by websites on the user's device (e.g. sign-in state, preferences, etc.). 'Information entered in forms' refers to names, addresses, passwords etc. that users enter into forms on the web." formatter_data="android_java">
        Chrome <ph name="BEGIN_EMPHASIS">&lt;em&gt;</ph>won’t save<ph name="END_EMPHASIS">&lt;/em&gt;</ph> the following information:
        <ph name="BEGIN_LIST">&lt;ul&gt;</ph>
          <ph name="LIST_ITEM">&lt;li&gt;</ph>Your browsing history
          <ph name="LIST_ITEM">&lt;li&gt;</ph>Cookies and site data
          <ph name="LIST_ITEM">&lt;li&gt;</ph>Information entered in forms
        <ph name="END_LIST">&lt;/ul&gt;</ph>
      </message>
      <message name="IDS_NEW_TAB_OTR_VISIBLE" desc="Bullet points listing entities that might be able to see the user's Incognito activity. The bullet points elaborate on the fact that Incognito only provides privacy with respect to other users on the same device. Websites you visit still know that you visited them. Your employer, school, and/or internet service provider can still monitor network traffic, even if it comes from the Incognito mode." formatter_data="android_java">
        Your activity <ph name="BEGIN_EMPHASIS">&lt;em&gt;</ph>might still be visible<ph name="END_EMPHASIS">&lt;/em&gt;</ph> to:
        <ph name="BEGIN_LIST">&lt;ul&gt;</ph>
          <ph name="LIST_ITEM">&lt;li&gt;</ph>Websites you visit
          <ph name="LIST_ITEM">&lt;li&gt;</ph>Your employer or school
          <ph name="LIST_ITEM">&lt;li&gt;</ph>Your internet service provider
        <ph name="END_LIST">&lt;/ul&gt;</ph>
      </message>

</grit-part>
