From 9ae7d027bb8f55b85a158cddeb7ed84c5a0a7983 Mon Sep 17 00:00:00 2001 From: Chih-Chung Chang Date: Fri, 12 Mar 2010 16:37:35 -0800 Subject: Add switch to Camera/VideoCamera menu item. Bug: 2249997 Change-Id: I14434fb5c617a62e02eaace120157c4a9d32e681 --- res/drawable-hdpi/ic_menu_camera_video_view.png | Bin 0 -> 2962 bytes res/drawable-mdpi/ic_menu_camera_video_view.png | Bin 0 -> 1474 bytes res/values-cs/strings.xml | 2 ++ res/values-da/strings.xml | 2 ++ res/values-de/strings.xml | 2 ++ res/values-el/strings.xml | 2 ++ res/values-es-rUS/strings.xml | 2 ++ res/values-es/strings.xml | 2 ++ res/values-fr/strings.xml | 2 ++ res/values-it/strings.xml | 2 ++ res/values-ja/strings.xml | 2 ++ res/values-ko/strings.xml | 2 ++ res/values-nb/strings.xml | 2 ++ res/values-nl/strings.xml | 2 ++ res/values-pl/strings.xml | 2 ++ res/values-pt-rPT/strings.xml | 2 ++ res/values-pt/strings.xml | 2 ++ res/values-ru/strings.xml | 2 ++ res/values-sv/strings.xml | 2 ++ res/values-tr/strings.xml | 2 ++ res/values-zh-rCN/strings.xml | 2 ++ res/values-zh-rTW/strings.xml | 2 ++ res/values/strings.xml | 2 ++ src/com/android/camera/Camera.java | 21 ++++++++++++++++----- src/com/android/camera/MenuHelper.java | 22 ++++++++++++++++++++++ src/com/android/camera/VideoCamera.java | 21 ++++++++++++++++----- 26 files changed, 96 insertions(+), 10 deletions(-) create mode 100644 res/drawable-hdpi/ic_menu_camera_video_view.png create mode 100644 res/drawable-mdpi/ic_menu_camera_video_view.png diff --git a/res/drawable-hdpi/ic_menu_camera_video_view.png b/res/drawable-hdpi/ic_menu_camera_video_view.png new file mode 100644 index 0000000..47bdfb6 Binary files /dev/null and b/res/drawable-hdpi/ic_menu_camera_video_view.png differ diff --git a/res/drawable-mdpi/ic_menu_camera_video_view.png b/res/drawable-mdpi/ic_menu_camera_video_view.png new file mode 100644 index 0000000..f7e52c2 Binary files /dev/null and b/res/drawable-mdpi/ic_menu_camera_video_view.png differ diff --git a/res/values-cs/strings.xml b/res/values-cs/strings.xml index c33fa4f..ba09032 100644 --- a/res/values-cs/strings.xml +++ b/res/values-cs/strings.xml @@ -136,4 +136,6 @@ "Sdílet video pomocí" "Na vaší kartě SD je málo místa. Změňte nastavení kvality nebo smažte položky z Galerie." "Bylo dosaženo limitu velikosti." + "Přepnout do režimu fotoaparát" + "Přepnout do režimu video" diff --git a/res/values-da/strings.xml b/res/values-da/strings.xml index 80a4ff2..0f0612c 100644 --- a/res/values-da/strings.xml +++ b/res/values-da/strings.xml @@ -136,4 +136,6 @@ "Del video via" "Der er snart ikke mere plads på diit SD-kort. Rediger indstillingerne for kvaliteten, eller slet elementer fra Galleriet." "Størrelsesgrænse er nået." + "Skift til kamera" + "Skift til video" diff --git a/res/values-de/strings.xml b/res/values-de/strings.xml index a6e2778..1839326 100644 --- a/res/values-de/strings.xml +++ b/res/values-de/strings.xml @@ -136,4 +136,6 @@ "Video weiterleiten via" "Auf Ihrer SD-Karte ist nicht mehr genügend Speicherplatz vorhanden. Ändern Sie die Qualitätseinstellung oder löschen Sie Elemente aus der Galerie." "Maximale Größe erreicht" + "Zu Kamera wechseln" + "Zu Video wechseln" diff --git a/res/values-el/strings.xml b/res/values-el/strings.xml index 3116adb..2eb46c2 100644 --- a/res/values-el/strings.xml +++ b/res/values-el/strings.xml @@ -136,4 +136,6 @@ "Κοινή χρήση βίντεο μέσω" "Ο διαθέσιμος χώρος στην κάρτα SD είναι ελάχιστος. Αλλάξτε τη ρύθμιση ποιότητας ή διαγράψτε στοιχεία από τη συλλογή." "Συμπληρώθηκε το όριο μεγέθους." + "Αλλαγή σε λειτουργία φωτογραφικής μηχανής" + "Αλλαγή σε λειτουργία βίντεο" diff --git a/res/values-es-rUS/strings.xml b/res/values-es-rUS/strings.xml index 1945f96..f6c5e87 100644 --- a/res/values-es-rUS/strings.xml +++ b/res/values-es-rUS/strings.xml @@ -136,4 +136,6 @@ "Compartir video mediante" "Tu tarjeta SD se está quedando sin espacio. Cambia la configuración de calidad o elimina elementos de la galería." "Se alcanzó el límite del tamaño." + "Cambiar a cámara" + "Cambiar a video" diff --git a/res/values-es/strings.xml b/res/values-es/strings.xml index d04769a..6a5a672 100644 --- a/res/values-es/strings.xml +++ b/res/values-es/strings.xml @@ -136,4 +136,6 @@ "Compartir vídeo a través de" "No queda espacio en la tarjeta SD. Cambia la configuración de calidad o elimina elementos de la galería." "Se ha alcanzado el límite de tamaño." + "Cambiar a cámara" + "Cambiar a vídeo" diff --git a/res/values-fr/strings.xml b/res/values-fr/strings.xml index fffb602..db472af 100644 --- a/res/values-fr/strings.xml +++ b/res/values-fr/strings.xml @@ -136,4 +136,6 @@ "Partager la vidéo via" "Votre carte SD est pleine. Modifiez le paramètre de qualité ou supprimez des éléments de la galerie." "Taille maximale atteinte." + "Passer en mode appareil photo" + "Passer en mode vidéo" diff --git a/res/values-it/strings.xml b/res/values-it/strings.xml index f553f67..188a5cf 100644 --- a/res/values-it/strings.xml +++ b/res/values-it/strings.xml @@ -136,4 +136,6 @@ "Condividi video tramite" "Lo spazio della scheda SD si sta esaurendo. Cambia l\'impostazione di qualità o elimina elementi nella galleria." "Limite di dimensione raggiunto." + "Passa a fotocamera" + "Passa a video" diff --git a/res/values-ja/strings.xml b/res/values-ja/strings.xml index efe5801..d344f1d 100644 --- a/res/values-ja/strings.xml +++ b/res/values-ja/strings.xml @@ -136,4 +136,6 @@ "動画を共有" "SDカードの容量が足りません。クオリティ設定を変更するか、ギャラリーからアイテムを削除してください。" "サイズ制限に達しました。" + "写真に切替" + "ムービーに切替" diff --git a/res/values-ko/strings.xml b/res/values-ko/strings.xml index eb6ffce..3e3e4ce 100644 --- a/res/values-ko/strings.xml +++ b/res/values-ko/strings.xml @@ -136,4 +136,6 @@ "동영상 공유 응용프로그램" "SD 카드의 공간이 부족합니다. 화질 설정을 변경하거나 갤러리에서 항목을 삭제하세요." "크기 한도에 도달했습니다." + "카메라로 전환" + "동영상으로 전환" diff --git a/res/values-nb/strings.xml b/res/values-nb/strings.xml index a030b69..8a91cfe 100644 --- a/res/values-nb/strings.xml +++ b/res/values-nb/strings.xml @@ -136,4 +136,6 @@ "Del video via" "Minnekortet begynner å gå tom for plass. Endre kvalitetsinnstillingen eller slett bilder fra galleriet." "Videoen ble for stor." + "Bytt til kamera" + "Bytt til video" diff --git a/res/values-nl/strings.xml b/res/values-nl/strings.xml index 557cafe..24b6c13 100644 --- a/res/values-nl/strings.xml +++ b/res/values-nl/strings.xml @@ -136,4 +136,6 @@ "Video delen via" "Er is weinig ruimte beschikbaar op uw SD-kaart. U kunt de kwaliteitsinstelling wijzigen of items uit de galerij verwijderen." "Maximale grootte bereikt" + "Overschakelen naar camera" + "Overschakelen naar video" diff --git a/res/values-pl/strings.xml b/res/values-pl/strings.xml index 33b3674..86cd066 100644 --- a/res/values-pl/strings.xml +++ b/res/values-pl/strings.xml @@ -136,4 +136,6 @@ "Prześlij film następującą drogą:" "Na karcie SD brakuje miejsca. Zmień ustawienie jakości lub usuń elementy z Galerii." "Osiągnięto limit rozmiaru." + "Przełącz na aparat" + "Przełącz na wideo" diff --git a/res/values-pt-rPT/strings.xml b/res/values-pt-rPT/strings.xml index dc3f4bb..f9c3b06 100644 --- a/res/values-pt-rPT/strings.xml +++ b/res/values-pt-rPT/strings.xml @@ -136,4 +136,6 @@ "Partilhar vídeo através de" "Está a ficar sem espaço no cartão SD. Altere as definições de qualidade ou elimine itens da Galeria." "Limite de tamanho atingido." + "Mudar para câmara" + "Mudar para vídeo" diff --git a/res/values-pt/strings.xml b/res/values-pt/strings.xml index 6d89cc8..61227fc 100644 --- a/res/values-pt/strings.xml +++ b/res/values-pt/strings.xml @@ -136,4 +136,6 @@ "Compartilhar vídeo via" "O seu cartão SD está sem espaço. Mude a configuração de qualidade ou exclua itens da Galeria." "Limite de tamanho atingido." + "Alternar para câmera" + "Alternar para vídeo" diff --git a/res/values-ru/strings.xml b/res/values-ru/strings.xml index dc970de..9eb99c2 100644 --- a/res/values-ru/strings.xml +++ b/res/values-ru/strings.xml @@ -136,4 +136,6 @@ "Отправить видео при помощи" "Место на вашей SD-карте заканчивается. Измените настройки качества или удалите содержимое из фотоальбома." "Достигнут предельный размер видео." + "Переключить на фото" + "Переключить на видео" diff --git a/res/values-sv/strings.xml b/res/values-sv/strings.xml index 88756b0..61ac8cf 100644 --- a/res/values-sv/strings.xml +++ b/res/values-sv/strings.xml @@ -136,4 +136,6 @@ "Dela video via" "Ditt SD-kort börjar bli fullt. Ändra inställningen för kvalitet eller ta bort objekt från Galleri." "Storleksgränsen nådd." + "Växla till kamera" + "Växla till video" diff --git a/res/values-tr/strings.xml b/res/values-tr/strings.xml index 8545743..1d98889 100644 --- a/res/values-tr/strings.xml +++ b/res/values-tr/strings.xml @@ -136,4 +136,6 @@ "Videoyu şunun aracılığıyla paylaş:" "SD kartınızda boş alan azalıyor. Kalite ayarlarını değiştirin veya Galeri\'den öğe silin." "Boyut sınırına ulaşıldı." + "Kameraya geç" + "Videoya geç" diff --git a/res/values-zh-rCN/strings.xml b/res/values-zh-rCN/strings.xml index 3486b7f..92fe99a 100644 --- a/res/values-zh-rCN/strings.xml +++ b/res/values-zh-rCN/strings.xml @@ -136,4 +136,6 @@ "分享视频的方式" "SD 卡空间已快用完。请更改画质设置或删除图库中的部分内容。" "已达到大小上限。" + "切换到相机" + "切换到视频" diff --git a/res/values-zh-rTW/strings.xml b/res/values-zh-rTW/strings.xml index 143ecdb..ca68729 100644 --- a/res/values-zh-rTW/strings.xml +++ b/res/values-zh-rTW/strings.xml @@ -136,4 +136,6 @@ "透過…分享影片" "您的 SD 卡空間已快用完。請變更品質設定或刪除圖庫中的項目。" "已達大小上限。" + "切換為相機" + "切換為影片" diff --git a/res/values/strings.xml b/res/values/strings.xml index 26ff93f..02f4042 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml @@ -347,4 +347,6 @@ Zoom + Switch to camera + Switch to video diff --git a/src/com/android/camera/Camera.java b/src/com/android/camera/Camera.java index 311f56d..77ed9c7 100644 --- a/src/com/android/camera/Camera.java +++ b/src/com/android/camera/Camera.java @@ -2021,6 +2021,11 @@ public class Camera extends NoSearchActivity implements View.OnClickListener, } private void addBaseMenuItems(Menu menu) { + MenuHelper.addSwitchModeMenuItem(menu, true, new Runnable() { + public void run() { + switchToVideoMode(); + } + }); MenuItem gallery = menu.add(Menu.NONE, Menu.NONE, MenuHelper.POSITION_GOTO_GALLERY, R.string.camera_gallery_photos_text) @@ -2034,14 +2039,20 @@ public class Camera extends NoSearchActivity implements View.OnClickListener, mGalleryItems.add(gallery); } + private boolean switchToVideoMode() { + if (!isCameraIdle()) return false; + MenuHelper.gotoVideoMode(this); + ((ViewGroup) mGLRootView.getParent()).removeView(mGLRootView); + finish(); + return true; + } + public boolean onSwitchChanged(Switcher source, boolean onOff) { if (onOff == SWITCH_VIDEO) { - if (!isCameraIdle()) return false; - MenuHelper.gotoVideoMode(this); - ((ViewGroup) mGLRootView.getParent()).removeView(mGLRootView); - finish(); + return switchToVideoMode(); + } else { + return true; } - return true; } private void onSharedPreferenceChanged() { diff --git a/src/com/android/camera/MenuHelper.java b/src/com/android/camera/MenuHelper.java index 65b8272..1c8f0fa 100644 --- a/src/com/android/camera/MenuHelper.java +++ b/src/com/android/camera/MenuHelper.java @@ -29,6 +29,9 @@ import android.os.StatFs; import android.provider.MediaStore; import android.provider.MediaStore.Images; import android.util.Log; +import android.view.Menu; +import android.view.MenuItem; +import android.view.MenuItem.OnMenuItemClickListener; import com.android.camera.R; @@ -113,6 +116,25 @@ public class MenuHelper { .show(); } + static void addSwitchModeMenuItem(Menu menu, boolean switchToVideo, + final Runnable r) { + int labelId = switchToVideo + ? R.string.switch_to_video_lable + : R.string.switch_to_camera_lable; + int iconId = switchToVideo + ? R.drawable.ic_menu_camera_video_view + : android.R.drawable.ic_menu_camera; + MenuItem item = menu.add(Menu.NONE, Menu.NONE, + POSITION_SWITCH_CAMERA_MODE, labelId) + .setOnMenuItemClickListener(new OnMenuItemClickListener() { + public boolean onMenuItemClick(MenuItem item) { + r.run(); + return true; + } + }); + item.setIcon(iconId); + } + private static void startCameraActivity(Activity activity, String action) { Intent intent = new Intent(action); intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); diff --git a/src/com/android/camera/VideoCamera.java b/src/com/android/camera/VideoCamera.java index 82e2ae0..ee62825 100644 --- a/src/com/android/camera/VideoCamera.java +++ b/src/com/android/camera/VideoCamera.java @@ -1009,6 +1009,11 @@ public class VideoCamera extends NoSearchActivity } private void addBaseMenuItems(Menu menu) { + MenuHelper.addSwitchModeMenuItem(menu, false, new Runnable() { + public void run() { + switchToCameraMode(); + } + }); MenuItem gallery = menu.add(Menu.NONE, Menu.NONE, MenuHelper.POSITION_GOTO_GALLERY, R.string.camera_gallery_photos_text) @@ -1378,14 +1383,20 @@ public class VideoCamera extends NoSearchActivity mCameraDevice.setParameters(mParameters); } + private boolean switchToCameraMode() { + if (mMediaRecorderRecording) return false; + MenuHelper.gotoCameraMode(this); + ((ViewGroup) mGLRootView.getParent()).removeView(mGLRootView); + finish(); + return true; + } + public boolean onSwitchChanged(Switcher source, boolean onOff) { if (onOff == SWITCH_CAMERA) { - if (mMediaRecorderRecording) return false; - MenuHelper.gotoCameraMode(this); - ((ViewGroup) mGLRootView.getParent()).removeView(mGLRootView); - finish(); + return switchToCameraMode(); + } else { + return true; } - return true; } private void resetCameraParameters() { -- cgit v1.1