<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2010 Google Inc.

     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.
-->
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<!--     <item android:id="@+id/action_import" -->
<!--             android:title="@string/Import" -->
<!--             android:icon="@drawable/ic_menu_ptp_holo_light" -->
<!--             android:showAsAction="always|withText" -->
<!--             android:visible="false" /> -->
<!--    Ideally, showAsAction for share_panorama and share should be reversed. -->
<!--    But, if share_panorama is set to never, it doesn't seem to get promoted -->
<!--          to the action bar and stays on the overflow menu. -->
<!--     <item android:id="@+id/action_share_panorama" -->
<!--             android:icon="@drawable/ic_menu_share_holo_light" -->
<!--             android:title="@string/share_panorama" -->
<!--             android:visible="false" -->
<!--             android:actionProviderClass="android.widget.ShareActionProvider" -->
<!--             android:showAsAction="ifRoom" /> -->
<!--     <item android:id="@+id/action_share" -->
<!--             android:icon="@drawable/ic_menu_share_holo_light" -->
<!--             android:title="@string/share" -->
<!--             android:visible="false" -->
<!--             android:actionProviderClass="android.widget.ShareActionProvider" -->
<!--             android:showAsAction="never" /> -->
<!--     <item android:id="@+id/action_delete" -->
<!--             android:icon="@drawable/ic_menu_trash_holo_light" -->
<!--             android:title="@string/delete" -->
<!--             android:visible="false" -->
<!--             android:showAsAction="never" /> -->
    <item android:id="@+id/action_slideshow"
            android:icon="@drawable/ic_menu_slideshow_holo_light"
            android:title="@string/slideshow"
            android:showAsAction="never" />
<!--     <item android:id="@+id/action_edit" -->
<!--             android:title="@string/edit" -->
<!--             android:showAsAction="never" -->
<!--             android:visible="false" /> -->
<!--     <item android:id="@+id/action_simple_edit" -->
<!--           android:title="@string/simple_edit" -->
<!--           android:showAsAction="never" -->
<!--           android:visible="false" /> -->
<!--     <item android:id="@+id/action_rotate_ccw" -->
<!--             android:showAsAction="never" -->
<!--             android:title="@string/rotate_left" /> -->
<!--     <item android:id="@+id/action_rotate_cw" -->
<!--             android:showAsAction="never" -->
<!--             android:title="@string/rotate_right" /> -->
<!--     <item android:id="@+id/action_crop" -->
<!--             android:title="@string/crop_action" -->
<!--             android:showAsAction="never" /> -->
    <item android:id="@+id/action_trim"
            android:title="@string/trim_action"
            android:showAsAction="never" />
    <item android:id="@+id/action_mute"
            android:title="@string/mute_action"
            android:showAsAction="never" />
    <item android:id="@+id/action_setas"
            android:title="@string/set_image"
            android:showAsAction="never" />
    <item android:id="@+id/action_details"
            android:title="@string/details"
            android:showAsAction="never" />
    <item android:id="@+id/action_show_on_map"
            android:title="@string/show_on_map"
            android:showAsAction="never" />
    <item android:id="@+id/print"
          android:title="@string/print_image"
          android:showAsAction="never" />
    <item android:id="@+id/action_drm_info"
        android:title="@string/drm_license_info"
        android:enabled="true"
        android:visible="false"
        android:showAsAction="never" />
</menu>
