aboutsummaryrefslogtreecommitdiffstats
path: root/main/res/menu
diff options
context:
space:
mode:
authorArne Schwabe <arne@rfc2549.org>2014-04-20 21:38:19 +0200
committerArne Schwabe <arne@rfc2549.org>2014-05-17 13:08:14 +0200
commitbe26c1845210a1c8824677ed6e2d093073ea5c84 (patch)
tree81d02773f4fd9edc5d05b44c770be89994a9c207 /main/res/menu
parent496878826d638367c129b02e66f992202e0d36c9 (diff)
downloadcgeo-be26c1845210a1c8824677ed6e2d093073ea5c84.zip
cgeo-be26c1845210a1c8824677ed6e2d093073ea5c84.tar.gz
cgeo-be26c1845210a1c8824677ed6e2d093073ea5c84.tar.bz2
Implement ActionBar using AppCompat in cgeo
This a first version of an ActionBar implementation with following properties: - The application should be usuable (there still might be bugs left from the conversation to Action) - Provides a more modern feeling on all devices - gets rid of the "dots of shame" on Android 3.0+ devices - The Maps classes MUST inherit from Activity instead of ActionBarActivity. There these classes use the old ActionBar on Android 2.3 devices and the real ActionBar on 3.0+ - This can be fixed when cgeo is ported to Google Maps API v2.0 API which usesFragment - The Dialog classes (CachePopup and WaypointPopup) have been converted to DialogFragments - The AppCombat themes provide no Theme.Dialog theme - this will later ease using these Fragment in other Activities - Use an almost empty activity which just shows the DialogFragment - Use the 'old' ActionBar but which overflow menu button to fit into Holo Design Style - Using a real ActionBar for Dialogs is not really support by Android and trying to force the frame into showing an Actionbar on a dialog leeds to strange bugs/effects - Most of the icon are still the Android 2.3 Menu Icon. These need to be replaced with Holo Style Icons - for most menu icon the ifRoom and/or withText attributes should be reviewed and set - The ActionBar of the main Activity is transparent. This is more or less by accident but looks good - Review Up Action of activities. Is going back to Main Activity always the semantically right thing to do? - Shortpress/Longpress on the Actionbars Compass Icon for primary/secondary Navigation clashes the normal ActionBar behaviour of long pressing to show the text of the action This commit contains many fixes and suggestions from rsudev
Diffstat (limited to 'main/res/menu')
-rw-r--r--main/res/menu/abstract_logging_activity.xml12
-rw-r--r--main/res/menu/cache_list_context.xml16
-rw-r--r--main/res/menu/cache_list_options.xml11
-rw-r--r--main/res/menu/cache_options.xml24
-rw-r--r--main/res/menu/compass_activity_options.xml9
-rw-r--r--main/res/menu/details_context.xml3
-rw-r--r--main/res/menu/images_list_context.xml5
-rw-r--r--main/res/menu/logging_ui.xml5
-rw-r--r--main/res/menu/main_activity_options.xml17
-rw-r--r--main/res/menu/map_activity.xml19
-rw-r--r--main/res/menu/navigate_any_point_activity_options.xml15
-rw-r--r--main/res/menu/search_activity_options.xml7
-rw-r--r--main/res/menu/static_maps_activity_options.xml4
-rw-r--r--main/res/menu/trackable_activity.xml5
-rw-r--r--main/res/menu/waypoint_options.xml3
15 files changed, 124 insertions, 31 deletions
diff --git a/main/res/menu/abstract_logging_activity.xml b/main/res/menu/abstract_logging_activity.xml
index b926dd1..a7841a5 100644
--- a/main/res/menu/abstract_logging_activity.xml
+++ b/main/res/menu/abstract_logging_activity.xml
@@ -1,21 +1,25 @@
<?xml version="1.0" encoding="utf-8"?>
-<menu xmlns:android="http://schemas.android.com/apk/res/android" >
+<menu xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:cgeo="http://schemas.android.com/apk/res-auto">
<item
android:id="@+id/menu_signature"
android:icon="@drawable/ic_menu_edit"
- android:title="@string/init_signature">
+ android:title="@string/init_signature"
+ cgeo:showAsAction="ifRoom|withText">
</item>
<item
android:id="@+id/menu_templates"
android:icon="@drawable/ic_menu_add"
- android:title="@string/log_add">
+ android:title="@string/log_add"
+ cgeo:showAsAction="ifRoom|withText">
<menu /> <!-- filled dynamically -->
</item>
<item
android:id="@+id/menu_smilies"
android:icon="@drawable/ic_menu_emoticons"
- android:title="@string/log_smilies">
+ android:title="@string/log_smilies"
+ cgeo:showAsAction="ifRoom|withText">
<menu /> <!-- filled dynamically -->
</item>
diff --git a/main/res/menu/cache_list_context.xml b/main/res/menu/cache_list_context.xml
index 2767a2e..8d52654 100644
--- a/main/res/menu/cache_list_context.xml
+++ b/main/res/menu/cache_list_context.xml
@@ -1,5 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
-<menu xmlns:android="http://schemas.android.com/apk/res/android" >
+<menu xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:cgeo="http://schemas.android.com/apk/res-auto">
<item
android:id="@+id/menu_default_navigation"
@@ -9,40 +10,49 @@
<item
android:id="@+id/menu_navigate"
android:icon="@drawable/ic_menu_mapmode"
- android:title="@string/cache_menu_navigate">
+ android:title="@string/cache_menu_navigate"
+ cgeo:showAsAction="ifRoom|withText">
</item>
<item
android:id="@+id/menu_cache_details"
- android:title="@string/cache_menu_details">
+ android:title="@string/cache_menu_details"
+ cgeo:showAsAction="ifRoom|withText">
</item>
<item
android:id="@+id/menu_log_visit_offline"
android:icon="@drawable/ic_menu_edit"
+ cgeo:showAsAction="ifRoom|withText"
android:title="@string/cache_menu_visit_offline">
</item>
<item
android:id="@+id/menu_log_visit"
android:icon="@drawable/ic_menu_edit"
+ cgeo:showAsAction="ifRoom|withText"
android:title="@string/cache_menu_visit">
</item>
<item
android:id="@+id/menu_drop_cache"
+ cgeo:showAsAction="ifRoom|withText"
android:title="@string/cache_offline_drop">
</item>
<item
android:id="@+id/menu_move_to_list"
+ cgeo:showAsAction="ifRoom|withText"
android:title="@string/cache_menu_move_list">
</item>
<item
android:id="@+id/menu_export"
+ cgeo:showAsAction="ifRoom|withText"
android:title="@string/export">
</item>
<item
android:id="@+id/menu_refresh"
+ cgeo:showAsAction="ifRoom|withText"
android:title="@string/cache_menu_refresh">
</item>
<item
android:id="@+id/menu_store_cache"
+ cgeo:showAsAction="ifRoom|withText"
android:title="@string/cache_offline_store">
</item>
diff --git a/main/res/menu/cache_list_options.xml b/main/res/menu/cache_list_options.xml
index 418d2de..d743c71 100644
--- a/main/res/menu/cache_list_options.xml
+++ b/main/res/menu/cache_list_options.xml
@@ -1,14 +1,23 @@
<?xml version="1.0" encoding="utf-8"?>
-<menu xmlns:android="http://schemas.android.com/apk/res/android" >
+<menu xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:cgeo="http://schemas.android.com/apk/res-auto">
<item
+ android:id="@+id/menu_show_on_map"
+ android:icon="@drawable/actionbar_map"
+ cgeo:showAsAction="ifRoom"
+ android:title="@string/caches_on_map">
+ </item>
+ <item
android:id="@+id/menu_filter"
android:icon="@drawable/ic_menu_filter"
+ cgeo:showAsAction="ifRoom|withText"
android:title="@string/caches_filter">
</item>
<item
android:id="@+id/menu_sort"
android:icon="@drawable/ic_menu_sort_alphabetically"
+ cgeo:showAsAction="ifRoom|withText"
android:title="@string/caches_sort">
</item>
<item
diff --git a/main/res/menu/cache_options.xml b/main/res/menu/cache_options.xml
index d2951f4..2bd0c44 100644
--- a/main/res/menu/cache_options.xml
+++ b/main/res/menu/cache_options.xml
@@ -1,45 +1,55 @@
<?xml version="1.0" encoding="utf-8"?>
-<menu xmlns:android="http://schemas.android.com/apk/res/android" >
-
+<menu xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:cgeo="http://schemas.android.com/apk/res-auto">
<item
android:id="@+id/menu_default_navigation"
android:icon="@drawable/ic_menu_compass"
+ cgeo:showAsAction="ifRoom"
android:title="@string/cache_menu_navigate"> <!-- will be replaced -->
</item>
<item
android:id="@+id/menu_navigate"
android:icon="@drawable/ic_menu_mapmode"
+ cgeo:showAsAction="ifRoom"
android:title="@string/cache_menu_navigate">
</item>
<item
+ android:id="@+id/menu_share"
+ android:icon="@drawable/ic_menu_share"
+ cgeo:showAsAction="ifRoom"
+ cgeo:actionProviderClass="android.support.v7.widget.ShareActionProvider"
+ android:title="@string/cache_menu_share">
+ </item>
+ <item
android:id="@+id/menu_calendar"
android:icon="@drawable/ic_menu_agenda"
+ cgeo:showAsAction="ifRoom"
android:title="@string/cache_menu_event">
</item>
<item
android:id="@+id/menu_log_visit_offline"
android:icon="@drawable/ic_menu_edit"
+ cgeo:showAsAction="ifRoom"
android:title="@string/cache_menu_visit_offline">
</item>
<item
android:id="@+id/menu_log_visit"
android:icon="@drawable/ic_menu_edit"
+ cgeo:showAsAction="ifRoom"
android:title="@string/cache_menu_visit">
</item>
<item
android:id="@+id/menu_caches_around"
android:icon="@drawable/ic_menu_rotate"
+ cgeo:showAsAction="ifRoom"
android:title="@string/cache_menu_around">
</item>
<item
android:id="@+id/menu_show_in_browser"
android:icon="@drawable/ic_menu_info_details"
+ cgeo:showAsAction="ifRoom"
android:title="@string/cache_menu_browser">
</item>
- <item
- android:id="@+id/menu_share"
- android:icon="@drawable/ic_menu_share"
- android:title="@string/cache_menu_share">
- </item>
+
</menu> \ No newline at end of file
diff --git a/main/res/menu/compass_activity_options.xml b/main/res/menu/compass_activity_options.xml
index 01c7d36..bfdbf48 100644
--- a/main/res/menu/compass_activity_options.xml
+++ b/main/res/menu/compass_activity_options.xml
@@ -1,36 +1,43 @@
<?xml version="1.0" encoding="utf-8"?>
-<menu xmlns:android="http://schemas.android.com/apk/res/android" >
+<menu xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:cgeo="http://schemas.android.com/apk/res-auto">
<item
android:id="@+id/menu_switch_compass_gps"
android:icon="@drawable/ic_menu_compass"
+ cgeo:showAsAction="ifRoom|withText"
android:title="@string/use_gps"> <!-- will be replaced in code -->
</item>
<item
android:id="@+id/menu_map"
android:icon="@drawable/ic_menu_mapmode"
+ cgeo:showAsAction="ifRoom|withText"
android:title="@string/caches_on_map">
</item>
<item
android:id="@+id/menu_edit_destination"
android:icon="@drawable/ic_menu_edit"
+ cgeo:showAsAction="ifRoom|withText"
android:title="@string/destination_set">
</item>
<item
android:id="@+id/menu_select_destination"
android:icon="@drawable/ic_menu_myplaces"
+ cgeo:showAsAction="ifRoom|withText"
android:title="@string/destination_select">
<menu /> <!-- filled dynamically -->
</item>
<item
android:id="@+id/menu_tts_start"
android:icon="@drawable/ic_menu_start_conversation"
+ cgeo:showAsAction="ifRoom|withText"
android:title="@string/tts_start">
</item>
<item
android:id="@+id/menu_tts_stop"
android:icon="@drawable/ic_menu_start_conversation"
android:title="@string/tts_stop"
+ cgeo:showAsAction="ifRoom|withText"
android:visible="false">
</item>
diff --git a/main/res/menu/details_context.xml b/main/res/menu/details_context.xml
index 3125459..53f326a 100644
--- a/main/res/menu/details_context.xml
+++ b/main/res/menu/details_context.xml
@@ -1,5 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
-<menu xmlns:android="http://schemas.android.com/apk/res/android" >
+<menu xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:cgeo="http://schemas.android.com/apk/res-auto">
<item
android:id="@+id/menu_copy"
diff --git a/main/res/menu/images_list_context.xml b/main/res/menu/images_list_context.xml
index 75d0ca0..0726267 100644
--- a/main/res/menu/images_list_context.xml
+++ b/main/res/menu/images_list_context.xml
@@ -1,12 +1,15 @@
<?xml version="1.0" encoding="utf-8"?>
-<menu xmlns:android="http://schemas.android.com/apk/res/android" >
+<menu xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:cgeo="http://schemas.android.com/apk/res-auto">
<item
android:id="@+id/image_open_file"
+ cgeo:showAsAction="ifRoom|withText"
android:title="@string/cache_image_open_file">
</item>
<item
android:id="@+id/image_open_browser"
+ cgeo:showAsAction="ifRoom|withText"
android:title="@string/cache_image_open_browser">
</item>
diff --git a/main/res/menu/logging_ui.xml b/main/res/menu/logging_ui.xml
index a8622c5..5baacfc 100644
--- a/main/res/menu/logging_ui.xml
+++ b/main/res/menu/logging_ui.xml
@@ -1,14 +1,17 @@
<?xml version="1.0" encoding="utf-8"?>
-<menu xmlns:android="http://schemas.android.com/apk/res/android" >
+<menu xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:cgeo="http://schemas.android.com/apk/res-auto">
<item
android:id="@+id/menu_log_visit_offline"
android:icon="@drawable/ic_menu_edit"
+ cgeo:showAsAction="ifRoom|withText"
android:title="@string/cache_menu_visit_offline">
</item>
<item
android:id="@+id/menu_log_visit"
android:icon="@drawable/ic_menu_edit"
+ cgeo:showAsAction="ifRoom|withText"
android:title="@string/cache_menu_visit">
</item>
diff --git a/main/res/menu/main_activity_options.xml b/main/res/menu/main_activity_options.xml
index fc949dc..bf9124f 100644
--- a/main/res/menu/main_activity_options.xml
+++ b/main/res/menu/main_activity_options.xml
@@ -1,34 +1,49 @@
<?xml version="1.0" encoding="utf-8"?>
-<menu xmlns:android="http://schemas.android.com/apk/res/android" >
+<menu xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:cgeo="http://schemas.android.com/apk/res-auto">
+
+ <!-- TODO: use ic_action_search -->
+ <item
+ style="@style/action_bar_action"
+ android:id="@+id/menu_gosearch"
+ cgeo:showAsAction="always"
+ cgeo:actionViewClass="android.support.v7.widget.SearchView"
+ android:icon="@drawable/actionbar_search" />
<item
android:id="@+id/menu_settings"
android:icon="@drawable/ic_menu_preferences"
+ cgeo:showAsAction="ifRoom"
android:title="@string/menu_settings">
</item>
<item
android:id="@+id/menu_history"
android:icon="@drawable/ic_menu_recent_history"
+ cgeo:showAsAction="ifRoom"
android:title="@string/menu_history">
</item>
<item
android:id="@+id/menu_pocket_queries"
android:icon="@drawable/ic_menu_account_list"
+ cgeo:showAsAction="ifRoom"
android:title="@string/menu_pocket_queries">
</item>
<item
android:id="@+id/menu_helpers"
android:icon="@drawable/ic_menu_shopping"
+ cgeo:showAsAction="ifRoom|"
android:title="@string/menu_helpers">
</item>
<item
android:id="@+id/menu_scan"
android:icon="@drawable/ic_menu_barcode"
+ cgeo:showAsAction="ifRoom"
android:title="@string/menu_scan_geo">
</item>
<item
android:id="@+id/menu_about"
android:icon="@drawable/ic_menu_info_details"
+ cgeo:showAsAction="ifRoom"
android:title="@string/menu_about">
</item>
</menu> \ No newline at end of file
diff --git a/main/res/menu/map_activity.xml b/main/res/menu/map_activity.xml
index d81a49b..3dfc5ae 100644
--- a/main/res/menu/map_activity.xml
+++ b/main/res/menu/map_activity.xml
@@ -1,9 +1,19 @@
<?xml version="1.0" encoding="utf-8"?>
-<menu xmlns:android="http://schemas.android.com/apk/res/android" >
+<menu xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:cgeo="http://schemas.android.com/apk/res-auto">
+
+ <item android:id="@+id/menu_toggle_mypos"
+ android:title="@string/menu_centerposition"
+ android:icon="@drawable/ic_menu_myposition"
+ cgeo:showAsAction="always"
+ android:showAsAction="always"
+
+ />
<item
android:id="@+id/menu_select_mapview"
android:icon="@drawable/ic_menu_mapmode"
+ cgeo:showAsAction="ifRoom|withText"
android:title="@string/map_view_map">
<menu>
<group
@@ -15,37 +25,44 @@
<item
android:id="@+id/menu_map_live"
android:icon="@drawable/ic_menu_refresh"
+ cgeo:showAsAction="ifRoom|withText"
android:title="@string/map_live_disable">
</item>
<item
android:id="@+id/menu_store_caches"
android:enabled="false"
android:icon="@drawable/ic_menu_set_as"
+ cgeo:showAsAction="ifRoom|withText"
android:title="@string/caches_store_offline">
</item>
<item
android:id="@+id/submenu_modes"
android:icon="@drawable/ic_menu_mark"
+ cgeo:showAsAction="ifRoom|withText"
android:title="@string/map_modes">
<menu>
<item
android:id="@+id/menu_trail_mode"
android:icon="@drawable/ic_menu_trail"
+ cgeo:showAsAction="ifRoom|withText"
android:title="@string/map_trail_hide">
</item>
<item
android:id="@+id/menu_circle_mode"
android:icon="@drawable/ic_menu_circle"
+ cgeo:showAsAction="ifRoom|withText"
android:title="@string/map_circles_hide">
</item>
<item
android:id="@+id/menu_mycaches_mode"
android:icon="@android:drawable/ic_menu_myplaces"
+ cgeo:showAsAction="ifRoom|withText"
android:title="@string/map_mycaches_hide">
</item>
<item
android:id="@+id/menu_theme_mode"
android:icon="@drawable/ic_menu_preferences"
+ cgeo:showAsAction="ifRoom|withText"
android:title="@string/map_theme_select">
</item>
</menu>
diff --git a/main/res/menu/navigate_any_point_activity_options.xml b/main/res/menu/navigate_any_point_activity_options.xml
index 4f199e2..a17405b 100644
--- a/main/res/menu/navigate_any_point_activity_options.xml
+++ b/main/res/menu/navigate_any_point_activity_options.xml
@@ -1,25 +1,30 @@
<?xml version="1.0" encoding="utf-8"?>
-<menu xmlns:android="http://schemas.android.com/apk/res/android" >
+<menu xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:cgeo="http://schemas.android.com/apk/res-auto">
<item
android:id="@+id/menu_navigate"
android:icon="@drawable/ic_menu_mapmode"
- android:title="@string/cache_menu_navigate">
+ android:title="@string/cache_menu_navigate"
+ cgeo:showAsAction="ifRoom">
</item>
<item
android:id="@+id/menu_default_navigation"
android:icon="@drawable/ic_menu_compass"
- android:title="@string/cache_menu_navigate"> <!-- will be replaced in code -->
+ android:title="@string/cache_menu_navigate"
+ cgeo:showAsAction="ifRoom"> <!-- will be replaced in code -->
</item>
<item
android:id="@+id/menu_caches_around"
android:icon="@drawable/ic_menu_rotate"
- android:title="@string/cache_menu_around">
+ android:title="@string/cache_menu_around"
+ cgeo:showAsAction="ifRoom">
</item>
<item
android:id="@+id/menu_clear_history"
android:icon="@drawable/ic_menu_delete"
- android:title="@string/search_clear_history">
+ android:title="@string/search_clear_history"
+ cgeo:showAsAction="ifRoom">
</item>
</menu> \ No newline at end of file
diff --git a/main/res/menu/search_activity_options.xml b/main/res/menu/search_activity_options.xml
index fcd7401..c4ee62b 100644
--- a/main/res/menu/search_activity_options.xml
+++ b/main/res/menu/search_activity_options.xml
@@ -1,10 +1,13 @@
<?xml version="1.0" encoding="utf-8"?>
-<menu xmlns:android="http://schemas.android.com/apk/res/android" >
+<menu xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:cgeo="http://schemas.android.com/apk/res-auto">
<item
android:id="@+id/menu_search_own_caches"
android:icon="@drawable/ic_menu_myplaces"
- android:title="@string/search_own_caches">
+ android:title="@string/search_own_caches"
+ cgeo:showAsAction="ifRoom|withText"
+ >
</item>
</menu> \ No newline at end of file
diff --git a/main/res/menu/static_maps_activity_options.xml b/main/res/menu/static_maps_activity_options.xml
index 7850c92..8621153 100644
--- a/main/res/menu/static_maps_activity_options.xml
+++ b/main/res/menu/static_maps_activity_options.xml
@@ -1,9 +1,11 @@
<?xml version="1.0" encoding="utf-8"?>
-<menu xmlns:android="http://schemas.android.com/apk/res/android" >
+<menu xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:cgeo="http://schemas.android.com/apk/res-auto">
<item
android:id="@+id/menu_refresh"
android:icon="@drawable/ic_menu_refresh"
+ cgeo:showAsAction="ifRoom"
android:title="@string/cache_offline_refresh">
</item>
diff --git a/main/res/menu/trackable_activity.xml b/main/res/menu/trackable_activity.xml
index ddf45f6..60eaa9e 100644
--- a/main/res/menu/trackable_activity.xml
+++ b/main/res/menu/trackable_activity.xml
@@ -1,14 +1,17 @@
<?xml version="1.0" encoding="utf-8"?>
-<menu xmlns:android="http://schemas.android.com/apk/res/android" >
+<menu xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:cgeo="http://schemas.android.com/apk/res-auto">
<item
android:id="@+id/menu_log_touch"
android:icon="@drawable/ic_menu_agenda"
+ cgeo:showAsAction="ifRoom|withText"
android:title="@string/trackable_log_touch">
</item>
<item
android:id="@+id/menu_browser_trackable"
android:icon="@drawable/ic_menu_info_details"
+ cgeo:showAsAction="ifRoom|withText"
android:title="@string/trackable_browser_open">
</item>
diff --git a/main/res/menu/waypoint_options.xml b/main/res/menu/waypoint_options.xml
index f03cca6..5aaeac2 100644
--- a/main/res/menu/waypoint_options.xml
+++ b/main/res/menu/waypoint_options.xml
@@ -1,5 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
-<menu xmlns:android="http://schemas.android.com/apk/res/android" >
+<menu xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:cgeo="http://schemas.android.com/apk/res-auto">
<item
android:id="@+id/menu_waypoint_reset_cache_coords"