From 93b73f2d33ac9befc2e2957a1c06b5fa1ecb559e Mon Sep 17 00:00:00 2001 From: hinb Date: Tue, 20 Oct 2015 17:03:01 +0700 Subject: [PATCH 01/23] Update strings.xml --- OsmAnd/res/values-vi/strings.xml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/OsmAnd/res/values-vi/strings.xml b/OsmAnd/res/values-vi/strings.xml index 4ed69d08a8..45468d3163 100644 --- a/OsmAnd/res/values-vi/strings.xml +++ b/OsmAnd/res/values-vi/strings.xml @@ -8,8 +8,8 @@ Translator: Le Viet Thanh; email: lethanhx2k@gmail.com --> Đã kích hoạt thiết lập tự động bám theo. Thiết lập hiển thị Vector - Overlay / Underlay - Thiết lập bản đồ source + Lớp phủ trên / Lớp phủ dưới + Thiết lập bản đồ nguồn Thiết lập bản đồ vector Bạn có muốn xóa %1$s? Ngoại thành @@ -35,7 +35,7 @@ Translator: Le Viet Thanh; email: lethanhx2k@gmail.com --> Đổi tên - Online Nominatim + Tìm kiếm cụ thể online Đang tìm vị trí… Vị trí (Đã tìm thấy) Địa chỉ… @@ -125,7 +125,7 @@ Translator: Le Viet Thanh; email: lethanhx2k@gmail.com --> Xoay bản đồ - Voice guidance output + Đầu ra hướng dẫn bằng giọng nói Choose channel to play voice guidance (system-dependent) Voice call audio Âm thanh thông báo @@ -240,7 +240,7 @@ Translator: Le Viet Thanh; email: lethanhx2k@gmail.com --> Ăn uống Du lịch Trạm Xăng - Online NameFinder + Tìm tên online Đang đọc các tiles đã được lưu sẵn… Chỉ mục \'\'{0}\'\' lớn hơn bộ nhớ Phiên bản chỉ mục \'\'{0}\'\' không được hỗ trợ @@ -673,4 +673,4 @@ Translator: Le Viet Thanh; email: lethanhx2k@gmail.com --> "Những thay đổi trong 1.9: * Cập nhật bản đồ phong cách với vẽ mặt đường, lớp vận chuyển và biểu tượng đi bộ đường dài * Tìm kiếm POI dọc theo tuyến đường * Mark đường như không thể vượt qua mỗi phiên * Dễ dàng hơn để tải về và cập nhật bản đồ * Nhận thông báo hình ảnh và âm thanh bằng cách tiếp cận với điểm tham chiếu * In hành trình và biến thông tin * Hỗ trợ làn đường lần lượt * Hỗ trợ Mang Android * Rất nhiều thay đổi giao diện người dùng * zoom riêng biệt cho Text Size trên bản đồ * thông báo âm thanh đặc biệt trong trường hợp bạn tắt các chức năng đăng nhập Osmo tuyến đường * * Fix Osmo phiên bản không tương thích " Đào tạo và lightrail tuyến Định tuyến xe điện - \ No newline at end of file + From f21a6feea9c6b0edbe70a771e40462eb5be9f781 Mon Sep 17 00:00:00 2001 From: hinb Date: Tue, 20 Oct 2015 20:48:46 +0700 Subject: [PATCH 02/23] Update strings.xml MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Đã dịch hoàn thiện 99% --- OsmAnd/res/values-vi/strings.xml | 152 +++++++++++++++---------------- 1 file changed, 76 insertions(+), 76 deletions(-) diff --git a/OsmAnd/res/values-vi/strings.xml b/OsmAnd/res/values-vi/strings.xml index 45468d3163..4716856a69 100644 --- a/OsmAnd/res/values-vi/strings.xml +++ b/OsmAnd/res/values-vi/strings.xml @@ -23,12 +23,12 @@ Translator: Le Viet Thanh; email: lethanhx2k@gmail.com --> Không thể đổi tên tập tin. Tên tập tin đã có. Tuyến GPX - Tìm thấy một số danh mục POI theo yêu cầu tìm kiếm: - Dữ liệu tìm kiếm POI không có. + Tìm thấy một số danh mục địa điểm theo yêu cầu tìm kiếm: + Dữ liệu tìm kiếm địa điểm không có. Tìm theo tên - Tập dữ liệu POI \'%1$s\' thừa, có thể xóa tập tin này. - Local file to maintain POI changes not found and could not be created. - POI changes inside application do not affect downloaded map files, changes are saved to local file instead. + Tập dữ liệu địa điểm \'%1$s\' thừa, có thể xóa tập tin này. + Tập tin địa phương để duy trì những thay đổi địa điểm không tìm thấy và không thể được tạo ra. + Thay đổi địa điểm bên trong ứng dụng không ảnh hưởng đến các tập tin bản đồ tải về, những thay đổi sẽ được lưu vào tập tin địa phương để thay thế. Nâng cấp OsmAnd+ Máy chủ lưu trữ tập tin bản đồ không tương thích với phiên bản hiện tại. Để tải về và dùng được các tập tin này, vui lòng nâng cấp ứng dụng lên phiên bản mới hơn. @@ -59,7 +59,7 @@ Translator: Le Viet Thanh; email: lethanhx2k@gmail.com --> Gửi đến OSM Hiển thị chi tiết hơn - Show some vector map detail (roads etc.) at lower zooms already + Đã hiện một số chi tiết bản đồ vector (đường giao thông, vv) ở mức phóng thấp hơn Đã xóa các điểm ưa thích. Bạn sẽ xóa %1$d ưa thích và %2$d nhóm ưa thích. Bạn có chắc về điều này? @@ -89,32 +89,32 @@ Translator: Le Viet Thanh; email: lethanhx2k@gmail.com --> Làm tươi Tải xuống - dữ liệu POI + dữ liệu địa điểm dữ liệu Địa chỉ Dữ liệu giao thông Dữ liệu bản đồ Sao lưu - Dữ liệu giọng nói(TTS) + Dữ liệu giọng nói (TTS) Dữ liệu giọng nói (media) Dữ liệu bản đồ (tiles) Dữ liệu bản đồ (vector) - Dữ liệu POI + Dữ liệu địa điểm Giọng đọc TTS Tìm kiếm mới Chọn kích thước chữ trên bản đồ Kích thước chữ Hiển thị thông tin debug - Display rendering performance + Hiệu năng dựng hình hiển thị Thay đổi gần đây Không dùng Đang giải nén dữ liệu mới… - An online routing service is selected but no internet connection is available. + Một dịch vụ định tuyến trực tuyến được chọn nhưng không có kết nối Internet có sẵn. Ngôn ngữ không được hỗ trợ - The selected language is not supported by the installed Android TTS (text-to-speech) engine. Do you want to go to the Market to look for another TTS engine? Otherwise the preset TTS language will be used. + Ngôn ngữ được chọn không được hỗ trợ bởi công cụ Android TTS (text-to-speech) đã cài đặt. Bạn có muốn đi đến Market để tìm kiếm một công cụ TTS? Nếu không, ngôn ngữ TTS cài sẵn sẽ được sử dụng. Thiếu dữ liệu Ngôn ngữ được chọn không có dữ liệu. Bạn có muốn vào Market để cài đặt? @@ -126,7 +126,7 @@ Translator: Le Viet Thanh; email: lethanhx2k@gmail.com --> Đầu ra hướng dẫn bằng giọng nói - Choose channel to play voice guidance (system-dependent) + Chọn kênh để chạy hướng dẫn bằng giọng nói (phụ thuộc vào hệ thống) Voice call audio Âm thanh thông báo Media/Nhạc @@ -136,7 +136,7 @@ Translator: Le Viet Thanh; email: lethanhx2k@gmail.com --> Thay đổi độ trong suốt cho bản đồ nền Độ trong suốt bản đồ nền Thay đổi độ trong suốt - Bản đồ nền… + Lớp phủ nền… Bản đồ nền Chọn bản đồ nền Chồng phủ bản đồ… @@ -151,9 +151,9 @@ Translator: Le Viet Thanh; email: lethanhx2k@gmail.com --> Cập nhật của dữ liệu Offline \tOsmAnd cung cấp trình quản lý download có thể kiểm tra các bản cập nhật cho dữ liệu offline. \n\tĐể kiểm tra cập nhật, truy xuất vào \'Main Menu\' -> \'Settings\' -> \'Offline data\' -> \'Download offline data\'. After region list is retrieved from the internet, you can select option \'Menu\' -> \'Filter downloaded\' to indicate updates only for data already on your device. - \n\tThe availability of updates is depicted by the following colors: - \n\t\'Green\' - indicates data files identical on device and server - \n\t\'Blue\' - indicates available updates on server + \n\tCác bản cập nhật sẵn có được mô tả bởi các màu sắc sau đây: + \n\t\'Green\' - chỉ ra các file dữ liệu giống hệt nhau trên thiết bị và máy chủ + \n\t\'Blue\' - chỉ ra các bản cập nhật có sẵn trên máy chủ Tỉ lệ nhỏ nhất để hiển thị bản đồ vector thay cho bản đồ ảnh Tỉ lệ nhỏ nhất để xem bản đồ vector @@ -167,14 +167,14 @@ Translator: Le Viet Thanh; email: lethanhx2k@gmail.com --> Các điểm ưa thích \tCác điểm thường xuyên được dùng có thể lưu vào mục Ưa thích. - \n\tTo save a point as Favorite go to the map context menu, select option \'Add to favorites\' and then enter a name for it. After saving a Favorite, it is accessible via \'Main Menu\' -> \'Favorites\'. - \n\tLong pressing on a Favorite in the \'Favorites\' menu provides options to Navigate to, Edit or Delete it. - \n\tTo display all Favorite points directly on the map, enable layer \'Favorites\' in \'Map context menu\' ->\'Define view\'. + \n\tĐể lưu một điểm như Yêu thích, đi đến menu ngữ cảnh của bản đồ, chọn tùy chọn \ 'Thêm vào Yêu thích \' và sau đó nhập tên cho nó. Sau khi lưu một Ưa thích, nó có thể truy cập thông qua \ 'Menu chính\' -> \'Yêu thích\'. + \n\tGiữ lâu lên một Yêu thích trong \'Yêu thích\' menu cung cấp tùy chọn để hướng đến, sửa hay xóa nó. + \n\tĐể hiển thị tất cả các điểm yêu thích trực tiếp trên bản đồ, cho phép lớp \'Favorites\' trong \ 'Bản đồ menu ngữ cảnh \' ->\'Xác định xem\'. Cải thiện dữ liệu OSM Phân loại bản đồ trên Online OSM với ảnh Có lỗi khi tìm kiếm - Could not parse geo intent \'%s\' + Không thể phân tích geo intent \'%s\' Tìm kiếm địa chỉ bằng bản đồ Offline Hệ thống @@ -188,8 +188,8 @@ Translator: Le Viet Thanh; email: lethanhx2k@gmail.com --> \tĐể tìm đường đi, trước hết bạn phải chọn một điểm đến. Sau đó vào \'Menu\'->\'Hướng đi\' trên bản đồ để chọn kiểu dẫn đường. Tìm kiếm - \tYou can search for places directly on the map, or by address, by location, as POI, or as predefined favorite. -\n\tPressing \'Search\' in the main menu opens the search activities. For all hits a context menu offers 2 options: \'Navigate to\' or \'Show on map\'. + \tBạn có thể tìm kiếm các địa điểm trực tiếp trên bản đồ, hoặc theo địa chỉ, theo vị trí, như địa điểm, hoặc như yêu thích được xác định trước. +\n\tPressing \'Search\' trong menu chính sẽ mở ra các hoạt động tìm kiếm. Đối với tất cả các số truy cập một menu ngữ cảnh có 2 lựa chọn: \'Điều hướng đến\' or \'Hiển thị trên bản đồ\'. \tOsmAnd là ứng dụng định vị trên Android với nhiều tính năng. @@ -204,9 +204,9 @@ Translator: Le Viet Thanh; email: lethanhx2k@gmail.com --> To see location follow the web browser link %1$s or android intent link %2$s Gửi vị trí Chia sẻ vị trí - Waypoint \'\'{0}\'\' được thêm vào thành công - Thêm waypoint vào track GPX - Thêm GPX waypoint + Đích đến \'\'{0}\'\' được thêm vào thành công + Thêm đích đến vào theo dõi GPX + Thêm điểm đến GPX Hành chính Rào chắn Giáo dục @@ -225,7 +225,7 @@ Translator: Le Viet Thanh; email: lethanhx2k@gmail.com --> Mục khác Cửa hàng Thể thao - Sustenance + đồ ăn Du lịch Giao thông Đang tạo chỉ mục địa chỉ… @@ -235,7 +235,7 @@ Translator: Le Viet Thanh; email: lethanhx2k@gmail.com --> Có lỗi xảy ra với I/O Định dạng dữ liệu \'\'{0}\'\' không được hỗ trợ Sửa Xe - POI gần nhất + Địa điểm gần nhất Tùy chỉnh bộ lọc Ăn uống Du lịch @@ -253,14 +253,14 @@ Translator: Le Viet Thanh; email: lethanhx2k@gmail.com --> Thư mục lưu trữ - A previous OsmAnd version is installed. All offline data will be supported by new the new application. But Favorite points should be exported in the old application and later imported by the new one. - Build {0} successfully installed ({1}). - Downloading build… + Một phiên bản OsmAnd cũ đã được cài đặt. Tất cả các dữ liệu offline sẽ được hỗ trợ bởi mới các ứng dụng mới. Nhưng điểm yêu thích sẽ được xuất ra trong các ứng dụng cũ và sau đó được nhập vào bởi cái mới. + Phiên bản {0} được cài đặt thành công ({1}). + Đang download phiên bản… Tiếp tục cài đặt OsmAnd - {0} từ {1} {2} MB ? - Retrieving the list of OsmAnd builds failed + Lấy danh sách các phiên bản OsmAnd thất bại Đang tải OsmAnd… Lựa chọn một bản OsmAnd để cài đặt - Special activity for contribution version + Hoạt động đặc biệt cho phiên bản đóng góp Ứng dụng Tín hiệu GPS chưa được cài đặt. Tìm trong Market? Không có giọng đọc nào được chọn @@ -276,7 +276,7 @@ Translator: Le Viet Thanh; email: lethanhx2k@gmail.com --> Bộ lọc đã được tải Lựa chọn tất cả - Làm tươi + Làm mới Các thiết lập chung cho ứng dụng Thiết lập chung @@ -310,7 +310,7 @@ Translator: Le Viet Thanh; email: lethanhx2k@gmail.com --> Cải thiện chất lượng hiển thị cho các thiết bị có độ phân giải cao Vị trí chưa được biết - Search transport + Tìm phương tiện giao thông Transport results (no target): Transport results ({0} to target): @@ -322,17 +322,17 @@ Translator: Le Viet Thanh; email: lethanhx2k@gmail.com --> Tìm đường bằng tập tin GPX Tập tin GPX không tìm thấy trong thư mục /track - Track GPX… + Theo dõi GPX… Gặp lỗi khi đọc tập tin GPX Bản đồ vector Offline Search transport at stop Bug - Sửa POI - Xóa POI - To compass - To direction of movement + Sửa địa điểm + Xóa địa điểm + Theo la bàn + Theo vị trí di chuyển Không xoay Chọn chế độ xoay Xoay bản đồ @@ -341,7 +341,7 @@ Translator: Le Viet Thanh; email: lethanhx2k@gmail.com --> Tập tin GPX chưa các điểm ưa thích không thấy tại {0} Các điểm ưa thích được lưu tới {0} Không có điểm ưa thích được lưu - Import + Nhập Có lỗi khi đọc tập tin GPX Gửi báo cáo @@ -350,14 +350,14 @@ Translator: Le Viet Thanh; email: lethanhx2k@gmail.com --> Bất kỳ Ưa thích Điểm dừng giao thông - POI… + Địa điểm… Nguồn bản đồ… Thiết lập Xem - Tìm POI + Tìm Địa điểm Dùng trackball để di chuyển bản đồ Dùng trackball - Set maximum waiting time for each background position fix + Thiết lập thời gian chờ đợi tối đa cho từng vị trí sửa chữa nền Thời gian chờ Tắt dịch vụ dẫn đường ẩn Vị trí của tôi? @@ -368,8 +368,8 @@ Translator: Le Viet Thanh; email: lethanhx2k@gmail.com --> phút Thiết lập khoảng cách định vị khi sử dụng dịch vụ ngầm Khoảng cách Định vị - Choose location provider for background service - Location provider + Chọn nhà cung cấp địa điểm cho dịch vụ nền + Nhà cung cấp địa điểm Bật chế độ chạy ngầm để lưu vị trí của bạn khi dùng trong thời gian dài Dùng dịch vụ chạy ngầm Cần phải bật GPS khi sử dụng dịch vụ chạy ngầm. @@ -416,22 +416,22 @@ Translator: Le Viet Thanh; email: lethanhx2k@gmail.com --> Dừng Kết thúc tìm kiếm - Choose stop to get off - prior distance - subsequent distance - stops to pass + Chọn điểm dừng để xuống + khoảng cách trước + khoảng cách tiếp theo + dừng lại để vượt qua Khoảng cách đường đi Giao thông OK Hiện các điểm dừng giao thông công cộng trên bản đồ Hiện các điểm dừng giao thông Ứng dụng tìm đường OsmAnd - Dữ liệu POI được cập nhật thành công (Đã thêm {0} POI) - Có lỗi khi cập nhật danh sách POI + Dữ liệu địa điểm được cập nhật thành công (Đã thêm {0} POI) + Có lỗi khi cập nhật danh sách địa điểm Có lỗi khi tải dữ liệu từ máy chủ - Không có dữ liệu POI Offline cho khu vực này - Updating POIs is not available for small zoom levels - Cập nhật POI + Không có dữ liệu địa điểm Offline cho khu vực này + Cập nhật địa điểm không có sẵn cho các mức độ zoom nhỏ + Cập nhật địa điểm Cập nhật dữ liệu qua Internet? Thành phố:\n {0} Đường phố:\n {0}, {1} @@ -474,11 +474,11 @@ Translator: Le Viet Thanh; email: lethanhx2k@gmail.com --> Hãy chọn điểm cần đến Hướng - Opening hours + Giờ mở cửa Opening changeset… Closing changeset… - Committing node… - Đang đọc POI… + Nút kết thúc… + Đang đọc địa điểm… Định danh thất bại thất bại Chuyển đổi tên gốc/tiếng Anh… @@ -487,12 +487,12 @@ Translator: Le Viet Thanh; email: lethanhx2k@gmail.com --> Đang tải phố… Đang tải thành phố… - POI + Địa điểm Có lỗi khi lưu GPX Có lỗi khi tìm đường đi - Error occurred while calculating route - Empty route is calculated - New route is calculated, distance + Lỗi xảy ra khi đang tính toán tuyến đường + Tuyến đường trống được tính + Tuyến đường mới được tính toán, khoảng cách Bạn đã đến điểm đích Khu vực không xác định! Quay lại bản đồ OsmAnd @@ -518,7 +518,7 @@ Translator: Le Viet Thanh; email: lethanhx2k@gmail.com --> Tự động Zoom bản đồ theo tốc độ di chuyển Tự động Zoom bản đồ Thiết lập thêm - Select a use profile. (Each profile\'s settings can be customized below.) + Chọn một cấu hình sử dụng. (Mỗi cấu hình\ 's có thể được tùy chỉnh dưới đây.) Chế độ Ứng dụng Thiết lập Lưu track hiện tại vào thẻ nhớ SD @@ -530,7 +530,7 @@ Translator: Le Viet Thanh; email: lethanhx2k@gmail.com --> Tải lại tile Tài khoản tại OpenStreetMap.org (OSM) Tài khoản OSM - Target + Mục tiêu Hiện OpenStreetBugs trên bản đồ Hiện OpenStreetBugs @@ -550,8 +550,8 @@ Translator: Le Viet Thanh; email: lethanhx2k@gmail.com --> Bật chế độ 3D Chế độ 3D - Hiện POI trên bản đồ (sử dụng bộ lọc gần đây nhất) - Hiện POI + Hiện địa điểm trên bản đồ (sử dụng bộ lọc gần đây nhất) + Hiện địa điểm Chọn nguồn cho bản đồ tiles online/offline Nguồn bản đồ Tile Nguồn bản đồ @@ -570,7 +570,7 @@ Translator: Le Viet Thanh; email: lethanhx2k@gmail.com --> Tìm kiếm Tìm kiếm -Chọn POI +Chọn địa điểm Tìm thêm Tìm tên thành phố tăng dần. Để tìm thị trấn/mã bưu điện, nhập 3 kí tự đầu tiên. Tìm tên phố tăng dần @@ -603,7 +603,7 @@ Translator: Le Viet Thanh; email: lethanhx2k@gmail.com --> Cập nhật bản đồ Mở OSM bug -Tạo POI +Tạo địa điểm OK Hủy @@ -638,13 +638,13 @@ Translator: Le Viet Thanh; email: lethanhx2k@gmail.com --> Bug đã được đóng thành công Biệt lệ xảy ra: bug không được đóng -Sửa POI -Tạo POI -Không tìm thấy Node hoặc amenity không phải là node đơn +Sửa địa điểm +Tạo địa điểm +Không tìm thấy Nút hoặc cơ sở không phải là nút đơn Xóa {0} (bình luận)? -Xóa POI +Xóa địa điểm Xóa -Đã xóa POI thành công +Đã xóa địa điểm thành công thêm thay đổi Hoàn thành tác vụ {0}. @@ -654,11 +654,11 @@ Translator: Le Viet Thanh; email: lethanhx2k@gmail.com --> Tên Thời gian mở Bình luận -Thay đổi POI +Thay đổi địa điểm Các thẻ khác được giữa lại -Commit +Phạm Làm lại -Filter +Bộ lọc Lưu thành Xóa bộ lọc vừa chọn? From 010ed9b27e2a5d63d8d91bfb78a227d95bb079a4 Mon Sep 17 00:00:00 2001 From: ezjerry liao Date: Wed, 21 Oct 2015 17:09:43 +0200 Subject: [PATCH 03/23] Translated using Weblate (Chinese (Taiwan)) Currently translated at 89.5% (1842 of 2057 strings) --- OsmAnd/res/values-zh-rTW/phrases.xml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/OsmAnd/res/values-zh-rTW/phrases.xml b/OsmAnd/res/values-zh-rTW/phrases.xml index b3d6daa48f..86c60c0e62 100644 --- a/OsmAnd/res/values-zh-rTW/phrases.xml +++ b/OsmAnd/res/values-zh-rTW/phrases.xml @@ -1994,4 +1994,8 @@ 類型:鋸木廠 類型:水淨化廠 類型:港埠 + 類型:車庫 + + 注釋 + 有水的地方 From 4a8d2b7b820e056a0916d001636b9ebf33d7ce10 Mon Sep 17 00:00:00 2001 From: Alexey Kulish Date: Wed, 21 Oct 2015 18:20:43 +0300 Subject: [PATCH 04/23] Fix intent filter and filterCat params --- .../search/SearchByNameAbstractActivity.java | 2 +- .../osmand/plus/dashboard/DashboardOnMap.java | 4 +- .../plus/download/DownloadActivity.java | 20 ++++++-- .../plus/download/DownloadResourceGroup.java | 3 ++ .../plus/download/DownloadResources.java | 12 +++-- .../ui/DownloadResourceGroupFragment.java | 50 ++++++++++++------- .../download/ui/SearchDialogFragment.java | 4 ++ .../openseamapsplugin/NauticalMapsPlugin.java | 1 - 8 files changed, 65 insertions(+), 31 deletions(-) diff --git a/OsmAnd/src/net/osmand/plus/activities/search/SearchByNameAbstractActivity.java b/OsmAnd/src/net/osmand/plus/activities/search/SearchByNameAbstractActivity.java index 8b3d2189b8..d1d2752d6d 100644 --- a/OsmAnd/src/net/osmand/plus/activities/search/SearchByNameAbstractActivity.java +++ b/OsmAnd/src/net/osmand/plus/activities/search/SearchByNameAbstractActivity.java @@ -141,7 +141,7 @@ public abstract class SearchByNameAbstractActivity extends OsmandListActivity } }); // Not perfect -// searchText.setOnClickListener(new OnClickListener() { +// filter.setOnClickListener(new OnClickListener() { // } // }); searchText.setImeOptions(EditorInfo.IME_ACTION_DONE); diff --git a/OsmAnd/src/net/osmand/plus/dashboard/DashboardOnMap.java b/OsmAnd/src/net/osmand/plus/dashboard/DashboardOnMap.java index 9399bb5284..87e83f3fba 100644 --- a/OsmAnd/src/net/osmand/plus/dashboard/DashboardOnMap.java +++ b/OsmAnd/src/net/osmand/plus/dashboard/DashboardOnMap.java @@ -577,7 +577,9 @@ public class DashboardOnMap implements ObservableScrollViewCallbacks { hideDashboard(false); final Intent intent = new Intent(mapActivity, mapActivity.getMyApplication().getAppCustomization() .getDownloadIndexActivity()); - intent.putExtra(DownloadActivity.FILTER_KEY, f); + if (f != null && !f.equals("basemap")) { + intent.putExtra(DownloadActivity.FILTER_KEY, f); + } intent.putExtra(DownloadActivity.TAB_TO_OPEN, DownloadActivity.DOWNLOAD_TAB); mapActivity.startActivity(intent); } diff --git a/OsmAnd/src/net/osmand/plus/download/DownloadActivity.java b/OsmAnd/src/net/osmand/plus/download/DownloadActivity.java index dca576dd53..33ebff637c 100644 --- a/OsmAnd/src/net/osmand/plus/download/DownloadActivity.java +++ b/OsmAnd/src/net/osmand/plus/download/DownloadActivity.java @@ -60,6 +60,8 @@ public class DownloadActivity extends BaseDownloadActivity { private BannerAndDownloadFreeVersion visibleBanner; private ViewPager viewPager; + private String filter; + private String filterCat; @Override protected void onCreate(Bundle savedInstanceState) { @@ -74,7 +76,7 @@ public class DownloadActivity extends BaseDownloadActivity { final View downloadProgressLayout = findViewById(R.id.downloadProgressLayout); downloadProgressLayout.setVisibility(View.VISIBLE); updateDescriptionTextWithSize(this, downloadProgressLayout); - int currentTab = 0; + int currentTab = DOWNLOAD_TAB_NUMBER; String tab = getIntent() == null || getIntent().getExtras() == null ? null : getIntent().getExtras().getString(TAB_TO_OPEN); if (tab != null) { if (tab.equals(DOWNLOAD_TAB)) { @@ -124,10 +126,9 @@ public class DownloadActivity extends BaseDownloadActivity { visibleBanner = new BannerAndDownloadFreeVersion(findViewById(R.id.mainLayout), this); final Intent intent = getIntent(); - // FIXME INITIAL FILTER & INITIAL KEY if (intent != null && intent.getExtras() != null) { - final String filter = intent.getExtras().getString(FILTER_KEY); - final String filterCat = intent.getExtras().getString(FILTER_CAT); + filter = intent.getExtras().getString(FILTER_KEY); + filterCat = intent.getExtras().getString(FILTER_CAT); } } @@ -443,6 +444,17 @@ public class DownloadActivity extends BaseDownloadActivity { } + public String getFilterAndClear() { + String res = filter; + filter = null; + return res; + } + + public String getFilterCatAndClear() { + String res = filterCat; + filterCat = null; + return res; + } @SuppressWarnings("deprecation") public static void updateDescriptionTextWithSize(DownloadActivity activity, View view) { diff --git a/OsmAnd/src/net/osmand/plus/download/DownloadResourceGroup.java b/OsmAnd/src/net/osmand/plus/download/DownloadResourceGroup.java index e7c8d74ece..8c568fea50 100644 --- a/OsmAnd/src/net/osmand/plus/download/DownloadResourceGroup.java +++ b/OsmAnd/src/net/osmand/plus/download/DownloadResourceGroup.java @@ -78,6 +78,9 @@ public class DownloadResourceGroup { || this == OTHER_MAPS_HEADER || this == OTHER_MAPS_GROUP; } + public static String getVoiceTTSId() { + return "#" + VOICE_GROUP.name().toLowerCase() + "#" + VOICE_TTS.name().toLowerCase(); + } } public DownloadResourceGroup(DownloadResourceGroup parentGroup, DownloadResourceGroupType type) { diff --git a/OsmAnd/src/net/osmand/plus/download/DownloadResources.java b/OsmAnd/src/net/osmand/plus/download/DownloadResources.java index 9140e2b517..ee88aeec4d 100644 --- a/OsmAnd/src/net/osmand/plus/download/DownloadResources.java +++ b/OsmAnd/src/net/osmand/plus/download/DownloadResources.java @@ -202,11 +202,7 @@ public class DownloadResources extends DownloadResourceGroup { DownloadResourceGroup voiceScreenTTS = new DownloadResourceGroup(voiceGroup, DownloadResourceGroupType.VOICE_TTS); DownloadResourceGroup voiceRec = new DownloadResourceGroup(voiceGroup, DownloadResourceGroupType.VOICE_HEADER_REC); DownloadResourceGroup voiceTTS = new DownloadResourceGroup(voiceGroup, DownloadResourceGroupType.VOICE_HEADER_TTS); - voiceScreenTTS.addGroup(voiceTTS); - voiceScreenRec.addGroup(voiceRec); - voiceGroup.addGroup(voiceScreenRec); - voiceGroup.addGroup(voiceScreenTTS); - + DownloadResourceGroup worldMaps = new DownloadResourceGroup(this, DownloadResourceGroupType.WORLD_MAPS); Map > groupByRegion = new LinkedHashMap>(); @@ -279,7 +275,13 @@ public class DownloadResources extends DownloadResourceGroup { if (otherMaps.size() > 0) { addGroup(otherMapsGroup); } + + voiceScreenTTS.addGroup(voiceTTS); + voiceScreenRec.addGroup(voiceRec); + voiceGroup.addGroup(voiceScreenRec); + voiceGroup.addGroup(voiceScreenTTS); addGroup(voiceGroup); + createHillshadeSRTMGroups(); trimEmptyGroups(); initAlreadyLoadedFiles(); diff --git a/OsmAnd/src/net/osmand/plus/download/ui/DownloadResourceGroupFragment.java b/OsmAnd/src/net/osmand/plus/download/ui/DownloadResourceGroupFragment.java index aa93afc180..ab1c55074e 100644 --- a/OsmAnd/src/net/osmand/plus/download/ui/DownloadResourceGroupFragment.java +++ b/OsmAnd/src/net/osmand/plus/download/ui/DownloadResourceGroupFragment.java @@ -1,24 +1,5 @@ package net.osmand.plus.download.ui; -import java.util.ArrayList; -import java.util.List; - -import net.osmand.plus.IconsCache; -import net.osmand.plus.OsmandApplication; -import net.osmand.plus.OsmandSettings; -import net.osmand.plus.R; -import net.osmand.plus.activities.OsmandBaseExpandableListAdapter; -import net.osmand.plus.download.DownloadActivity; -import net.osmand.plus.download.DownloadActivity.BannerAndDownloadFreeVersion; -import net.osmand.plus.download.DownloadActivityType; -import net.osmand.plus.download.DownloadIndexesThread.DownloadEvents; -import net.osmand.plus.download.DownloadResourceGroup; -import net.osmand.plus.download.DownloadResourceGroup.DownloadResourceGroupType; -import net.osmand.plus.download.DownloadResources; -import net.osmand.plus.download.IndexItem; -import net.osmand.util.Algorithms; -import android.content.Context; -import android.content.DialogInterface; import android.content.res.Resources; import android.content.res.TypedArray; import android.graphics.drawable.Drawable; @@ -38,6 +19,24 @@ import android.widget.ExpandableListView; import android.widget.ExpandableListView.OnChildClickListener; import android.widget.TextView; +import net.osmand.plus.IconsCache; +import net.osmand.plus.OsmandApplication; +import net.osmand.plus.OsmandSettings; +import net.osmand.plus.R; +import net.osmand.plus.activities.OsmandBaseExpandableListAdapter; +import net.osmand.plus.download.DownloadActivity; +import net.osmand.plus.download.DownloadActivity.BannerAndDownloadFreeVersion; +import net.osmand.plus.download.DownloadActivityType; +import net.osmand.plus.download.DownloadIndexesThread.DownloadEvents; +import net.osmand.plus.download.DownloadResourceGroup; +import net.osmand.plus.download.DownloadResourceGroup.DownloadResourceGroupType; +import net.osmand.plus.download.DownloadResources; +import net.osmand.plus.download.IndexItem; +import net.osmand.util.Algorithms; + +import java.util.ArrayList; +import java.util.List; + public class DownloadResourceGroupFragment extends DialogFragment implements DownloadEvents, OnChildClickListener { public static final int RELOAD_ID = 0; public static final int SEARCH_ID = 1; @@ -112,6 +111,19 @@ public class DownloadResourceGroupFragment extends DialogFragment implements Dow public void onResume() { super.onResume(); reloadData(); + String filter = getDownloadActivity().getFilterAndClear(); + String filterCat = getDownloadActivity().getFilterCatAndClear(); + if (filter != null) { + getDownloadActivity().showDialog(getActivity(), + SearchDialogFragment.createInstance(filter)); + } else if (filterCat != null) { + if (filterCat.equals(DownloadActivityType.VOICE_FILE.getTag())) { + String uniqueId = DownloadResourceGroup.DownloadResourceGroupType.getVoiceTTSId(); + final DownloadResourceGroupFragment regionDialogFragment = DownloadResourceGroupFragment + .createInstance(uniqueId); + ((DownloadActivity) getActivity()).showDialog(getActivity(), regionDialogFragment); + } + } } private void reloadData() { diff --git a/OsmAnd/src/net/osmand/plus/download/ui/SearchDialogFragment.java b/OsmAnd/src/net/osmand/plus/download/ui/SearchDialogFragment.java index 430bac41f0..1ac724d768 100644 --- a/OsmAnd/src/net/osmand/plus/download/ui/SearchDialogFragment.java +++ b/OsmAnd/src/net/osmand/plus/download/ui/SearchDialogFragment.java @@ -33,6 +33,7 @@ import net.osmand.plus.download.DownloadResourceGroup; import net.osmand.plus.download.DownloadResourceGroup.DownloadResourceGroupType; import net.osmand.plus.download.DownloadResources; import net.osmand.plus.download.IndexItem; +import net.osmand.util.Algorithms; import java.util.ArrayList; import java.util.Collections; @@ -181,6 +182,9 @@ public class SearchDialogFragment extends DialogFragment implements DownloadEven public void onResume() { super.onResume(); search.setIconified(false); + if (!Algorithms.isEmpty(searchText)) { + search.setQuery(searchText, true); + } } public void updateSearchText(String searchText) { diff --git a/OsmAnd/src/net/osmand/plus/openseamapsplugin/NauticalMapsPlugin.java b/OsmAnd/src/net/osmand/plus/openseamapsplugin/NauticalMapsPlugin.java index bccf333eb6..7523826568 100644 --- a/OsmAnd/src/net/osmand/plus/openseamapsplugin/NauticalMapsPlugin.java +++ b/OsmAnd/src/net/osmand/plus/openseamapsplugin/NauticalMapsPlugin.java @@ -60,7 +60,6 @@ public class NauticalMapsPlugin extends OsmandPlugin { @Override public void onClick(DialogInterface dialog, int which) { final Intent intent = new Intent(activity, app.getAppCustomization().getDownloadIndexActivity()); - intent.putExtra(DownloadActivity.FILTER_KEY, app.getString(net.osmand.plus.R.string.index_item_world_seamarks)); intent.putExtra(DownloadActivity.TAB_TO_OPEN, DownloadActivity.DOWNLOAD_TAB); activity.startActivity(intent); } From bf329e3577ff4cefede2a980005c457ac15e3223 Mon Sep 17 00:00:00 2001 From: ezjerry liao Date: Wed, 21 Oct 2015 17:14:48 +0200 Subject: [PATCH 05/23] Translated using Weblate (Chinese (Taiwan)) Currently translated at 89.7% (1847 of 2057 strings) --- OsmAnd/res/values-zh-rTW/phrases.xml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/OsmAnd/res/values-zh-rTW/phrases.xml b/OsmAnd/res/values-zh-rTW/phrases.xml index 86c60c0e62..901f5a73f7 100644 --- a/OsmAnd/res/values-zh-rTW/phrases.xml +++ b/OsmAnd/res/values-zh-rTW/phrases.xml @@ -1998,4 +1998,10 @@ 注釋 有水的地方 + 動物寄宿 + 寄宿類型:狗 + 寄宿類型:貓 + 寄宿類型:狗、貓 + 寄宿類型:馬 + From 4866cd483dccf8412563e1a409760152355e47a2 Mon Sep 17 00:00:00 2001 From: Alexey Kulish Date: Wed, 21 Oct 2015 18:48:10 +0300 Subject: [PATCH 06/23] Fix --- .../osmand/plus/download/DownloadActivity.java | 17 ++++++----------- 1 file changed, 6 insertions(+), 11 deletions(-) diff --git a/OsmAnd/src/net/osmand/plus/download/DownloadActivity.java b/OsmAnd/src/net/osmand/plus/download/DownloadActivity.java index 10ac527a71..33ebff637c 100644 --- a/OsmAnd/src/net/osmand/plus/download/DownloadActivity.java +++ b/OsmAnd/src/net/osmand/plus/download/DownloadActivity.java @@ -78,18 +78,13 @@ public class DownloadActivity extends BaseDownloadActivity { updateDescriptionTextWithSize(this, downloadProgressLayout); int currentTab = DOWNLOAD_TAB_NUMBER; String tab = getIntent() == null || getIntent().getExtras() == null ? null : getIntent().getExtras().getString(TAB_TO_OPEN); - if (tab != null) { - switch (tab) { - case DOWNLOAD_TAB: - currentTab = DOWNLOAD_TAB_NUMBER; - break; - case LOCAL_TAB: - currentTab = LOCAL_TAB_NUMBER; - break; - case UPDATES_TAB: - currentTab = UPDATES_TAB_NUMBER; - break; + if (tab.equals(DOWNLOAD_TAB)) { + currentTab = DOWNLOAD_TAB_NUMBER; + } else if (tab.equals(LOCAL_TAB)) { + currentTab = LOCAL_TAB_NUMBER; + } else if (tab.equals(UPDATES_TAB)) { + currentTab = UPDATES_TAB_NUMBER; } } From 395e52297a8126d26c1cd8c572c391e146699e50 Mon Sep 17 00:00:00 2001 From: Victor Shcherb Date: Wed, 21 Oct 2015 18:12:03 +0200 Subject: [PATCH 07/23] Fix update all --- .../plus/download/DownloadIndexesThread.java | 2 +- .../plus/download/DownloadResources.java | 20 +++++++++---------- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/OsmAnd/src/net/osmand/plus/download/DownloadIndexesThread.java b/OsmAnd/src/net/osmand/plus/download/DownloadIndexesThread.java index db33143108..8cc537665d 100644 --- a/OsmAnd/src/net/osmand/plus/download/DownloadIndexesThread.java +++ b/OsmAnd/src/net/osmand/plus/download/DownloadIndexesThread.java @@ -75,7 +75,7 @@ public class DownloadIndexesThread { } public void updateLoadedFiles() { - indexes.initAlreadyLoadedFiles(); + indexes.updateLoadedFiles(); } /// UI notifications methods diff --git a/OsmAnd/src/net/osmand/plus/download/DownloadResources.java b/OsmAnd/src/net/osmand/plus/download/DownloadResources.java index 4ad6a95792..5e0a59f728 100644 --- a/OsmAnd/src/net/osmand/plus/download/DownloadResources.java +++ b/OsmAnd/src/net/osmand/plus/download/DownloadResources.java @@ -38,7 +38,12 @@ public class DownloadResources extends DownloadResourceGroup { return itemsToUpdate; } - public void initAlreadyLoadedFiles() { + public void updateLoadedFiles() { + initAlreadyLoadedFiles(); + prepareFilesToUpdate(); + } + + private void initAlreadyLoadedFiles() { java.text.DateFormat dateFormat = app.getResourceManager().getDateFormat(); Map indexActivatedFileNames = app.getResourceManager().getIndexFileNames(); listWithAlternatives(dateFormat, app.getAppPath(""), IndexConstants.EXTRA_EXT, indexActivatedFileNames); @@ -49,7 +54,6 @@ public class DownloadResources extends DownloadResourceGroup { app.getResourceManager().getBackupIndexes(indexFileNames); this.indexFileNames = indexFileNames; this.indexActivatedFileNames = indexActivatedFileNames; - prepareFilesToUpdate(); } public boolean checkIfItemOutdated(IndexItem item, java.text.DateFormat format) { @@ -123,20 +127,16 @@ public class DownloadResources extends DownloadResourceGroup { protected void updateFilesToUpdate() { - initAlreadyLoadedFiles(); + initAlreadyLoadedFiles();; recalculateFilesToUpdate(); } private void recalculateFilesToUpdate() { List stillUpdate = new ArrayList(); for (IndexItem item : itemsToUpdate) { - String sfName = item.getTargetFileName(); java.text.DateFormat format = app.getResourceManager().getDateFormat(); - String date = item.getDate(format); - String indexactivateddate = indexActivatedFileNames.get(sfName); - String indexfilesdate = indexFileNames.get(sfName); - if (date != null && !date.equals(indexactivateddate) && !date.equals(indexfilesdate) - && indexActivatedFileNames.containsKey(sfName)) { + checkIfItemOutdated(item, format); + if (item.isOutdated()) { stillUpdate.add(item); } } @@ -286,7 +286,7 @@ public class DownloadResources extends DownloadResourceGroup { addGroup(voiceGroup); createHillshadeSRTMGroups(); trimEmptyGroups(); - initAlreadyLoadedFiles(); + updateLoadedFiles(); return true; } From d6acfc67f56913268dce350515aeeba08f05ba75 Mon Sep 17 00:00:00 2001 From: xmd5a Date: Wed, 21 Oct 2015 20:43:14 +0300 Subject: [PATCH 08/23] Fix vi strings --- OsmAnd/res/values-vi/strings.xml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/OsmAnd/res/values-vi/strings.xml b/OsmAnd/res/values-vi/strings.xml index 4716856a69..7d8bcd2cbc 100644 --- a/OsmAnd/res/values-vi/strings.xml +++ b/OsmAnd/res/values-vi/strings.xml @@ -167,9 +167,9 @@ Translator: Le Viet Thanh; email: lethanhx2k@gmail.com --> Các điểm ưa thích \tCác điểm thường xuyên được dùng có thể lưu vào mục Ưa thích. - \n\tĐể lưu một điểm như Yêu thích, đi đến menu ngữ cảnh của bản đồ, chọn tùy chọn \ 'Thêm vào Yêu thích \' và sau đó nhập tên cho nó. Sau khi lưu một Ưa thích, nó có thể truy cập thông qua \ 'Menu chính\' -> \'Yêu thích\'. + \n\tĐể lưu một điểm như Yêu thích, đi đến menu ngữ cảnh của bản đồ, chọn tùy chọn \'Thêm vào Yêu thích \' và sau đó nhập tên cho nó. Sau khi lưu một Ưa thích, nó có thể truy cập thông qua \'Menu chính\' -> \'Yêu thích\'. \n\tGiữ lâu lên một Yêu thích trong \'Yêu thích\' menu cung cấp tùy chọn để hướng đến, sửa hay xóa nó. - \n\tĐể hiển thị tất cả các điểm yêu thích trực tiếp trên bản đồ, cho phép lớp \'Favorites\' trong \ 'Bản đồ menu ngữ cảnh \' ->\'Xác định xem\'. + \n\tĐể hiển thị tất cả các điểm yêu thích trực tiếp trên bản đồ, cho phép lớp \'Favorites\' trong \'Bản đồ menu ngữ cảnh \' ->\'Xác định xem\'. Cải thiện dữ liệu OSM Phân loại bản đồ trên Online OSM với ảnh @@ -518,7 +518,7 @@ Translator: Le Viet Thanh; email: lethanhx2k@gmail.com --> Tự động Zoom bản đồ theo tốc độ di chuyển Tự động Zoom bản đồ Thiết lập thêm - Chọn một cấu hình sử dụng. (Mỗi cấu hình\ 's có thể được tùy chỉnh dưới đây.) + Chọn một cấu hình sử dụng. (Mỗi cấu hình\'s có thể được tùy chỉnh dưới đây.) Chế độ Ứng dụng Thiết lập Lưu track hiện tại vào thẻ nhớ SD From a13498f794902adebf625e69ee898f8b3b486e0e Mon Sep 17 00:00:00 2001 From: Alexey Kulish Date: Wed, 21 Oct 2015 21:21:55 +0300 Subject: [PATCH 09/23] Restored replace existing favorite feature --- .../osmand/plus/dialogs/FavoriteDialogs.java | 7 ++++-- .../editors/FavoritePointEditorFragment.java | 25 ++++++++++++++++++- 2 files changed, 29 insertions(+), 3 deletions(-) diff --git a/OsmAnd/src/net/osmand/plus/dialogs/FavoriteDialogs.java b/OsmAnd/src/net/osmand/plus/dialogs/FavoriteDialogs.java index ad0a5b0887..72f89f8fce 100644 --- a/OsmAnd/src/net/osmand/plus/dialogs/FavoriteDialogs.java +++ b/OsmAnd/src/net/osmand/plus/dialogs/FavoriteDialogs.java @@ -22,6 +22,7 @@ import android.widget.Toast; import net.osmand.AndroidUtils; import net.osmand.access.AccessibleToast; import net.osmand.data.FavouritePoint; +import net.osmand.data.LatLon; import net.osmand.data.PointDescription; import net.osmand.plus.FavouritesDbHelper; import net.osmand.plus.FavouritesDbHelper.FavoriteGroup; @@ -57,8 +58,10 @@ public class FavoriteDialogs { } FavouritePoint point = (FavouritePoint) args.getSerializable(KEY_FAVORITE); if (helper.editFavourite(fp, point.getLatitude(), point.getLongitude())) { - AccessibleToast.makeText(activity, activity.getString(R.string.fav_points_edited), - Toast.LENGTH_SHORT).show(); + if (activity instanceof MapActivity) { + ((MapActivity) activity).getContextMenu() + .show(new LatLon(point.getLatitude(), point.getLongitude()), fp.getPointDescription(), fp); + } } if (activity instanceof MapActivity) { ((MapActivity) activity).getMapView().refreshMap(); diff --git a/OsmAnd/src/net/osmand/plus/mapcontextmenu/editors/FavoritePointEditorFragment.java b/OsmAnd/src/net/osmand/plus/mapcontextmenu/editors/FavoritePointEditorFragment.java index 5cf18edfe4..ca39232110 100644 --- a/OsmAnd/src/net/osmand/plus/mapcontextmenu/editors/FavoritePointEditorFragment.java +++ b/OsmAnd/src/net/osmand/plus/mapcontextmenu/editors/FavoritePointEditorFragment.java @@ -7,6 +7,10 @@ import android.graphics.PorterDuff; import android.graphics.drawable.Drawable; import android.os.Bundle; import android.util.Log; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; +import android.widget.Button; import net.osmand.data.FavouritePoint; import net.osmand.data.LatLon; @@ -17,6 +21,7 @@ import net.osmand.plus.OsmandApplication; import net.osmand.plus.R; import net.osmand.plus.activities.MapActivity; import net.osmand.plus.base.FavoriteImageDrawable; +import net.osmand.plus.dialogs.FavoriteDialogs; import net.osmand.plus.mapcontextmenu.MapContextMenu; import net.osmand.util.Algorithms; @@ -38,7 +43,7 @@ public class FavoritePointEditorFragment extends PointEditorFragment { } @Override - public void onCreate(Bundle savedInstanceState) { + public void onCreate(final Bundle savedInstanceState) { super.onCreate(savedInstanceState); boolean light = getMyApplication().getSettings().isLightContent(); @@ -48,6 +53,24 @@ public class FavoritePointEditorFragment extends PointEditorFragment { group = helper.getGroup(favorite); } + @Override + public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { + View view = super.onCreateView(inflater, container, savedInstanceState); + if (view != null && editor.isNew()) { + Button btnReplace = (Button) view.findViewById(R.id.button_replace); + btnReplace.setVisibility(View.VISIBLE); + btnReplace.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + Bundle args = new Bundle(); + args.putSerializable(FavoriteDialogs.KEY_FAVORITE, favorite); + FavoriteDialogs.createReplaceFavouriteDialog(getActivity(), args); + } + }); + } + return view; + } + @Override public PointEditor getEditor() { return editor; From 3b79bea78407c8c455cf4b053ff2ab5f39122c9d Mon Sep 17 00:00:00 2001 From: Victor Shcherb Date: Wed, 21 Oct 2015 22:49:36 +0200 Subject: [PATCH 10/23] Fix opening hours --- OsmAnd-java/src/net/osmand/util/OpeningHoursParser.java | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/OsmAnd-java/src/net/osmand/util/OpeningHoursParser.java b/OsmAnd-java/src/net/osmand/util/OpeningHoursParser.java index f95a264282..26823f1ff6 100644 --- a/OsmAnd-java/src/net/osmand/util/OpeningHoursParser.java +++ b/OsmAnd-java/src/net/osmand/util/OpeningHoursParser.java @@ -727,11 +727,10 @@ public class OpeningHoursParser { } // check if valid final OpeningHoursRule r1 = parseRule(r); - boolean rule = r1 instanceof UnparseableRule; - if (!rule) { - return null; + boolean rule = r1 instanceof BasicOpeningHourRule; + if (rule) { + rs.addRule(r1); } - rs.addRule(r1); } return rs; } From 017da95f1247e3729c2e396aed897dee13382c80 Mon Sep 17 00:00:00 2001 From: jan madsen Date: Wed, 21 Oct 2015 22:17:54 +0200 Subject: [PATCH 11/23] Translated using Weblate (Danish) Currently translated at 100.0% (2057 of 2057 strings) --- OsmAnd/res/values-da/phrases.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/OsmAnd/res/values-da/phrases.xml b/OsmAnd/res/values-da/phrases.xml index 5a232a14b7..ee7f312f4c 100644 --- a/OsmAnd/res/values-da/phrases.xml +++ b/OsmAnd/res/values-da/phrases.xml @@ -2252,8 +2252,8 @@ Varde Fassade dekoration - Defibrillator - Defibrillator: Ja + Hjertestarter + Hjertestarter: Ja Type: krigsgrav Type: gravhøj From e54bf89a86c362e3d2d6df412269584b2820a081 Mon Sep 17 00:00:00 2001 From: Victor Shcherb Date: Wed, 21 Oct 2015 23:44:56 +0200 Subject: [PATCH 12/23] Add notification to download --- .../osmand/plus/activities/MapActivity.java | 3 +- .../plus/download/DownloadActivity.java | 9 +++- .../plus/download/DownloadIndexesThread.java | 47 +++++++++++++++++++ 3 files changed, 56 insertions(+), 3 deletions(-) diff --git a/OsmAnd/src/net/osmand/plus/activities/MapActivity.java b/OsmAnd/src/net/osmand/plus/activities/MapActivity.java index 1e8b33366f..bc5626328c 100644 --- a/OsmAnd/src/net/osmand/plus/activities/MapActivity.java +++ b/OsmAnd/src/net/osmand/plus/activities/MapActivity.java @@ -147,8 +147,7 @@ public class MapActivity extends AccessibleActivity { // notification.setLatestEventInfo(this, Version.getAppName(app), getString(R.string.go_back_to_osmand), // pi); int smallIcon = app.getSettings().getApplicationMode().getSmallIconDark(); - final Builder noti = new NotificationCompat.Builder( - this).setContentTitle(Version.getAppName(app)) + final Builder noti = new NotificationCompat.Builder(this).setContentTitle(Version.getAppName(app)) .setContentText(getString(R.string.go_back_to_osmand)) .setSmallIcon(smallIcon) // .setLargeIcon(Helpers.getBitmap(R.drawable.mirakel, getBaseContext())) diff --git a/OsmAnd/src/net/osmand/plus/download/DownloadActivity.java b/OsmAnd/src/net/osmand/plus/download/DownloadActivity.java index 33ebff637c..27d5c9796d 100644 --- a/OsmAnd/src/net/osmand/plus/download/DownloadActivity.java +++ b/OsmAnd/src/net/osmand/plus/download/DownloadActivity.java @@ -1,6 +1,10 @@ package net.osmand.plus.download; +import android.app.Notification; +import android.app.NotificationManager; +import android.app.PendingIntent; import android.content.ActivityNotFoundException; +import android.content.Context; import android.content.Intent; import android.net.Uri; import android.os.AsyncTask; @@ -11,13 +15,14 @@ import android.support.v4.app.DialogFragment; import android.support.v4.app.Fragment; import android.support.v4.app.FragmentActivity; import android.support.v4.view.ViewPager; +import android.support.v7.app.NotificationCompat; +import android.support.v7.app.NotificationCompat.Builder; import android.text.method.LinkMovementMethod; import android.view.MenuItem; import android.view.View; import android.widget.ProgressBar; import android.widget.TextView; import android.widget.Toast; - import net.osmand.IProgress; import net.osmand.access.AccessibleToast; import net.osmand.plus.OsmandApplication; @@ -25,6 +30,7 @@ import net.osmand.plus.OsmandSettings; import net.osmand.plus.R; import net.osmand.plus.Version; import net.osmand.plus.activities.LocalIndexInfo; +import net.osmand.plus.activities.MapActivity; import net.osmand.plus.activities.TabActivity; import net.osmand.plus.base.BasicProgressAsyncTask; import net.osmand.plus.download.DownloadIndexesThread.DownloadEvents; @@ -190,6 +196,7 @@ public class DownloadActivity extends BaseDownloadActivity { } } + @Override @UiThread diff --git a/OsmAnd/src/net/osmand/plus/download/DownloadIndexesThread.java b/OsmAnd/src/net/osmand/plus/download/DownloadIndexesThread.java index 8cc537665d..0b7e1bfc9e 100644 --- a/OsmAnd/src/net/osmand/plus/download/DownloadIndexesThread.java +++ b/OsmAnd/src/net/osmand/plus/download/DownloadIndexesThread.java @@ -26,6 +26,9 @@ import org.apache.commons.logging.Log; import android.annotation.SuppressLint; import android.app.AlertDialog; +import android.app.Notification; +import android.app.NotificationManager; +import android.app.PendingIntent; import android.content.ActivityNotFoundException; import android.content.Context; import android.content.DialogInterface; @@ -36,12 +39,15 @@ import android.os.AsyncTask.Status; import android.os.Build; import android.os.StatFs; import android.support.annotation.UiThread; +import android.support.v7.app.NotificationCompat; +import android.support.v7.app.NotificationCompat.Builder; import android.view.View; import android.widget.Toast; @SuppressLint({ "NewApi", "DefaultLocale" }) public class DownloadIndexesThread { private final static Log LOG = PlatformUtil.getLog(DownloadIndexesThread.class); + private static final int NOTIFICATION_ID = 45; private final Context ctx; private OsmandApplication app; @@ -54,6 +60,7 @@ public class DownloadIndexesThread { private int currentDownloadingItemProgress = 0; private DownloadResources indexes; + private Notification notification; public interface DownloadEvents { @@ -88,6 +95,45 @@ public class DownloadIndexesThread { if (uiActivity != null) { uiActivity.downloadInProgress(); } + updateNotification(); + } + + private void updateNotification() { + if(getCurrentDownloadingItem() != null) { + BasicProgressAsyncTask task = getCurrentRunningTask(); + final boolean isFinished = task == null + || task.getStatus() == AsyncTask.Status.FINISHED; + Intent contentIntent = new Intent(app, DownloadActivity.class); + PendingIntent contentPendingIntent = PendingIntent.getActivity(app, 0, contentIntent, + PendingIntent.FLAG_UPDATE_CURRENT); + Builder bld = new NotificationCompat.Builder(app); + String msg = Version.getAppName(app); + if(!isFinished) { + msg = task.getDescription(); + } + StringBuilder contentText = new StringBuilder(); + List ii = getCurrentDownloadingItems(); + for(IndexItem i : ii) { + if(contentText.length() > 0) { + contentText.append(", "); + } + contentText.append(i.getVisibleName(app, app.getRegions())); + } + bld.setContentTitle(msg).setSmallIcon(R.drawable.ic_action_import). + setContentIntent(contentPendingIntent).setOngoing(true); + int progress = getCurrentDownloadingItemProgress(); + bld.setProgress(100, Math.max(progress, 0), progress < 0); + notification = bld.build(); + NotificationManager mNotificationManager = (NotificationManager) app.getSystemService(Context.NOTIFICATION_SERVICE); + mNotificationManager.notify(NOTIFICATION_ID, notification); + } else { + if(notification != null) { + NotificationManager mNotificationManager = (NotificationManager) app.getSystemService(Context.NOTIFICATION_SERVICE); + mNotificationManager.cancel(NOTIFICATION_ID); + notification = null; + } + } + } @@ -96,6 +142,7 @@ public class DownloadIndexesThread { if (uiActivity != null) { uiActivity.downloadHasFinished(); } + updateNotification(); } @UiThread From bccbc2bd8bb7e170ce306c74d14f469f0dde19fa Mon Sep 17 00:00:00 2001 From: Victor Shcherb Date: Wed, 21 Oct 2015 23:48:48 +0200 Subject: [PATCH 13/23] Add notification to download --- OsmAnd/src/net/osmand/plus/download/DownloadIndexesThread.java | 1 + 1 file changed, 1 insertion(+) diff --git a/OsmAnd/src/net/osmand/plus/download/DownloadIndexesThread.java b/OsmAnd/src/net/osmand/plus/download/DownloadIndexesThread.java index 0b7e1bfc9e..dde6f583a4 100644 --- a/OsmAnd/src/net/osmand/plus/download/DownloadIndexesThread.java +++ b/OsmAnd/src/net/osmand/plus/download/DownloadIndexesThread.java @@ -120,6 +120,7 @@ public class DownloadIndexesThread { contentText.append(i.getVisibleName(app, app.getRegions())); } bld.setContentTitle(msg).setSmallIcon(R.drawable.ic_action_import). + setContentText(contentText.toString()). setContentIntent(contentPendingIntent).setOngoing(true); int progress = getCurrentDownloadingItemProgress(); bld.setProgress(100, Math.max(progress, 0), progress < 0); From 7530aa7b60ac48eeabb2418c6b8b0b848cceea66 Mon Sep 17 00:00:00 2001 From: Victor Shcherb Date: Wed, 21 Oct 2015 23:58:22 +0200 Subject: [PATCH 14/23] Add progress bar to copy --- OsmAnd-java/src/net/osmand/util/Algorithms.java | 16 ++++++++++++++++ .../plus/dashboard/DashChooseAppDirFragment.java | 3 ++- 2 files changed, 18 insertions(+), 1 deletion(-) diff --git a/OsmAnd-java/src/net/osmand/util/Algorithms.java b/OsmAnd-java/src/net/osmand/util/Algorithms.java index 09a3ed4f87..3a716d50a2 100644 --- a/OsmAnd-java/src/net/osmand/util/Algorithms.java +++ b/OsmAnd-java/src/net/osmand/util/Algorithms.java @@ -1,6 +1,7 @@ package net.osmand.util; +import net.osmand.IProgress; import net.osmand.PlatformUtil; import org.apache.commons.logging.Log; @@ -311,6 +312,21 @@ public class Algorithms { } } + + public static void streamCopy(InputStream in, OutputStream out, IProgress pg, int bytesDivisor) throws IOException{ + byte[] b = new byte[BUFFER_SIZE]; + int read; + int cp = 0; + while ((read = in.read(b)) != -1) { + out.write(b, 0, read); + cp += read; + if(pg != null && cp > bytesDivisor) { + pg.progress(cp / bytesDivisor); + cp = cp % bytesDivisor; + } + } + } + public static void oneByteStreamCopy(InputStream in, OutputStream out) throws IOException{ int read; while ((read = in.read()) != -1) { diff --git a/OsmAnd/src/net/osmand/plus/dashboard/DashChooseAppDirFragment.java b/OsmAnd/src/net/osmand/plus/dashboard/DashChooseAppDirFragment.java index 7cc15c2974..d241e5c69b 100644 --- a/OsmAnd/src/net/osmand/plus/dashboard/DashChooseAppDirFragment.java +++ b/OsmAnd/src/net/osmand/plus/dashboard/DashChooseAppDirFragment.java @@ -472,7 +472,8 @@ public class DashChooseAppDirFragment extends DashBaseFragment { FileInputStream fin = new FileInputStream(f); FileOutputStream fout = new FileOutputStream(t); try { - Algorithms.streamCopy(fin, fout); + progress.startTask(ctx.getString(R.string.copying_osmand_one_file_descr, t.getName()), (int) (f.length() / 1024)); + Algorithms.streamCopy(fin, fout, progress, 1024); } finally { fin.close(); fout.close(); From aa9709fa05adc27c4a1264132342278091edb390 Mon Sep 17 00:00:00 2001 From: Victor Shcherb Date: Thu, 22 Oct 2015 00:15:13 +0200 Subject: [PATCH 15/23] Don't display 1048 km --- OsmAnd/res/layout/map_hud_widget.xml | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/OsmAnd/res/layout/map_hud_widget.xml b/OsmAnd/res/layout/map_hud_widget.xml index 0a6538e9aa..6afd33ef7d 100644 --- a/OsmAnd/res/layout/map_hud_widget.xml +++ b/OsmAnd/res/layout/map_hud_widget.xml @@ -1,5 +1,6 @@ @@ -71,7 +72,7 @@ android:layout_gravity="bottom" android:maxLines="1" android:minWidth="10dp" - android:text="1048" + tools:text="1048" android:textColor="@color/color_black" android:textSize="@dimen/map_widget_text_size" /> @@ -89,7 +90,7 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:maxLines="1" - android:text="km" + tools:text="km" android:textColor="@color/color_white" android:textSize="@dimen/map_widget_text_size_small" /> @@ -98,7 +99,7 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:maxLines="1" - android:text="km" + tools:text="km" android:textColor="@color/color_black" android:textSize="@dimen/map_widget_text_size_small" /> From 37aefe99c2cb3705005d63c123808ac84b691104 Mon Sep 17 00:00:00 2001 From: Victor Shcherb Date: Thu, 22 Oct 2015 00:38:05 +0200 Subject: [PATCH 16/23] Update widgets up to 45% width #1821 --- OsmAnd/res/layout/map_hud_top.xml | 12 ++++++------ OsmAnd/res/layout/map_hud_widget.xml | 4 ++++ 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/OsmAnd/res/layout/map_hud_top.xml b/OsmAnd/res/layout/map_hud_top.xml index eb51f8b31b..90930692ca 100644 --- a/OsmAnd/res/layout/map_hud_top.xml +++ b/OsmAnd/res/layout/map_hud_top.xml @@ -139,7 +139,7 @@ android:layout_width="0dp" android:layout_height="wrap_content" android:layout_gravity="top|left" - android:layout_weight="0.4" + android:layout_weight="0.45" android:orientation="vertical" > - + + android:layout_weight="0.55" > @@ -197,19 +197,19 @@ android:orientation="horizontal" android:weightSum="1" > - + + android:layout_weight="0.55" > + android:layout_weight="0.45" > @@ -99,6 +102,7 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:maxLines="1" + android:singleLine="true" tools:text="km" android:textColor="@color/color_black" android:textSize="@dimen/map_widget_text_size_small" /> From 52ce34fae9b92d76526b03e40e61ab3829685990 Mon Sep 17 00:00:00 2001 From: Victor Shcherb Date: Thu, 22 Oct 2015 01:03:51 +0200 Subject: [PATCH 17/23] Fix issue #1780 --- .../osmand/plus/audionotes/AudioVideoNotesPlugin.java | 4 +--- .../src/net/osmand/plus/download/DownloadActivity.java | 10 +++++++--- .../download/ui/DownloadResourceGroupFragment.java | 6 +++--- .../osmand/plus/download/ui/SearchDialogFragment.java | 6 +++--- 4 files changed, 14 insertions(+), 12 deletions(-) diff --git a/OsmAnd/src/net/osmand/plus/audionotes/AudioVideoNotesPlugin.java b/OsmAnd/src/net/osmand/plus/audionotes/AudioVideoNotesPlugin.java index 99391f32b1..6fd3d11bcd 100644 --- a/OsmAnd/src/net/osmand/plus/audionotes/AudioVideoNotesPlugin.java +++ b/OsmAnd/src/net/osmand/plus/audionotes/AudioVideoNotesPlugin.java @@ -445,9 +445,7 @@ public class AudioVideoNotesPlugin extends OsmandPlugin { } audioNotesLayer = new AudioNotesLayer(activity, this); activity.getMapView().addLayer(audioNotesLayer, 3.5f); - if (recordControl == null) { - registerWidget(activity); - } + registerWidget(activity); } private void registerMediaListener(AudioManager am) { diff --git a/OsmAnd/src/net/osmand/plus/download/DownloadActivity.java b/OsmAnd/src/net/osmand/plus/download/DownloadActivity.java index 27d5c9796d..f678193a90 100644 --- a/OsmAnd/src/net/osmand/plus/download/DownloadActivity.java +++ b/OsmAnd/src/net/osmand/plus/download/DownloadActivity.java @@ -296,22 +296,25 @@ public class DownloadActivity extends BaseDownloadActivity { || application.getSettings().SHOULD_SHOW_FREE_VERSION_BANNER.get(); initFreeVersionBanner(); - updateFreeVersionBanner(); updateBannerInProgress(); if (ctx.getCurrentTab() != UPDATES_TAB_NUMBER) { downloadProgressLayout.setVisibility(View.VISIBLE); } } - + public void updateBannerInProgress() { + updateBannerInProgress(true); + } + + public void updateBannerInProgress(boolean showSpace) { BasicProgressAsyncTask basicProgressAsyncTask = ctx.getDownloadThread().getCurrentRunningTask(); final boolean isFinished = basicProgressAsyncTask == null || basicProgressAsyncTask.getStatus() == AsyncTask.Status.FINISHED; if (isFinished) { downloadProgressLayout.setOnClickListener(null); updateDescriptionTextWithSize(ctx, downloadProgressLayout); - if (ctx.getCurrentTab() == UPDATES_TAB_NUMBER) { + if (ctx.getCurrentTab() == UPDATES_TAB_NUMBER || !showSpace) { downloadProgressLayout.setVisibility(View.GONE); } updateFreeVersionBanner(); @@ -373,6 +376,7 @@ public class DownloadActivity extends BaseDownloadActivity { }); laterButton.setOnClickListener(new ToggleCollapseFreeVersionBanner(freeVersionDescriptionTextView, buttonsLinearLayout, freeVersionBannerTitle, application.getSettings())); + updateFreeVersionBanner(); } private void updateFreeVersionBanner() { diff --git a/OsmAnd/src/net/osmand/plus/download/ui/DownloadResourceGroupFragment.java b/OsmAnd/src/net/osmand/plus/download/ui/DownloadResourceGroupFragment.java index ab1c55074e..5b2cc0ca42 100644 --- a/OsmAnd/src/net/osmand/plus/download/ui/DownloadResourceGroupFragment.java +++ b/OsmAnd/src/net/osmand/plus/download/ui/DownloadResourceGroupFragment.java @@ -153,7 +153,7 @@ public class DownloadResourceGroupFragment extends DialogFragment implements Dow @Override public void newDownloadIndexes() { if(banner != null) { - banner.updateBannerInProgress(); + banner.updateBannerInProgress(false); } reloadData(); } @@ -161,7 +161,7 @@ public class DownloadResourceGroupFragment extends DialogFragment implements Dow @Override public void downloadHasFinished() { if(banner != null) { - banner.updateBannerInProgress(); + banner.updateBannerInProgress(false); } listAdapter.notifyDataSetChanged(); } @@ -169,7 +169,7 @@ public class DownloadResourceGroupFragment extends DialogFragment implements Dow @Override public void downloadInProgress() { if(banner != null) { - banner.updateBannerInProgress(); + banner.updateBannerInProgress(false); } listAdapter.notifyDataSetChanged(); } diff --git a/OsmAnd/src/net/osmand/plus/download/ui/SearchDialogFragment.java b/OsmAnd/src/net/osmand/plus/download/ui/SearchDialogFragment.java index 1ac724d768..8aea646a1e 100644 --- a/OsmAnd/src/net/osmand/plus/download/ui/SearchDialogFragment.java +++ b/OsmAnd/src/net/osmand/plus/download/ui/SearchDialogFragment.java @@ -151,7 +151,7 @@ public class SearchDialogFragment extends DialogFragment implements DownloadEven @Override public void newDownloadIndexes() { if(banner != null) { - banner.updateBannerInProgress(); + banner.updateBannerInProgress(false); } updateSearchText(searchText); } @@ -159,7 +159,7 @@ public class SearchDialogFragment extends DialogFragment implements DownloadEven @Override public void downloadHasFinished() { if(banner != null) { - banner.updateBannerInProgress(); + banner.updateBannerInProgress(false); } listAdapter.notifyDataSetChanged(); } @@ -167,7 +167,7 @@ public class SearchDialogFragment extends DialogFragment implements DownloadEven @Override public void downloadInProgress() { if(banner != null) { - banner.updateBannerInProgress(); + banner.updateBannerInProgress(false); } listAdapter.notifyDataSetChanged(); } From aa6d4840d7e09d5b1e45862182aef03e7cfb678c Mon Sep 17 00:00:00 2001 From: Hugo Barrocas Date: Thu, 22 Oct 2015 00:55:00 +0200 Subject: [PATCH 18/23] Translated using Weblate (Portuguese) Currently translated at 77.5% (1372 of 1769 strings) --- OsmAnd/res/values-pt/strings.xml | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/OsmAnd/res/values-pt/strings.xml b/OsmAnd/res/values-pt/strings.xml index 62d65edce5..d5f07c8e53 100644 --- a/OsmAnd/res/values-pt/strings.xml +++ b/OsmAnd/res/values-pt/strings.xml @@ -1929,4 +1929,31 @@ Afghanistan, Albania, Algeria, Andorra, Angola, Anguilla, Antigua and Barbuda, A Mostrar rotas para bicicletas Ocultar edifícios Rotas de trólebus + O nome escolhido já existe nessa categoria. Por favor, defina outro nome. + Nome da Categoria + Adicionar nova Categoria + Regiões + Mapas de Regiões + Mapas Mundiais + Camada de Sombra de colinas desligada + Curvas de Nível desligadas + Adicionar novo + Seleccionar Categoria + Definir unidades de medida para velocidade + Unidades de medida para velocidade + Milhas Náuticas + Quilómetros por Hora + Milhas por Hora + Metros por Segundo + Minutos por Quilómetro + Minutos por Milha + Milhas náuticas por hora (nó) + mn/h + min/m + min/km + m/s + + Gravar Viagem + Navegação + mn From 6077465ab99ca21143f1fa3fd7b315b1ccd18d8e Mon Sep 17 00:00:00 2001 From: Victor Shcherb Date: Thu, 22 Oct 2015 01:10:07 +0200 Subject: [PATCH 19/23] Show space if needed --- .../plus/download/DownloadActivity.java | 61 ++++++++----------- .../ui/DownloadResourceGroupFragment.java | 8 +-- .../download/ui/SearchDialogFragment.java | 8 +-- 3 files changed, 34 insertions(+), 43 deletions(-) diff --git a/OsmAnd/src/net/osmand/plus/download/DownloadActivity.java b/OsmAnd/src/net/osmand/plus/download/DownloadActivity.java index f678193a90..815d50e400 100644 --- a/OsmAnd/src/net/osmand/plus/download/DownloadActivity.java +++ b/OsmAnd/src/net/osmand/plus/download/DownloadActivity.java @@ -1,10 +1,28 @@ package net.osmand.plus.download; -import android.app.Notification; -import android.app.NotificationManager; -import android.app.PendingIntent; +import java.io.File; +import java.lang.ref.WeakReference; +import java.text.MessageFormat; +import java.util.ArrayList; +import java.util.List; +import java.util.Locale; + +import net.osmand.IProgress; +import net.osmand.access.AccessibleToast; +import net.osmand.plus.OsmandApplication; +import net.osmand.plus.OsmandSettings; +import net.osmand.plus.R; +import net.osmand.plus.Version; +import net.osmand.plus.activities.LocalIndexInfo; +import net.osmand.plus.activities.TabActivity; +import net.osmand.plus.base.BasicProgressAsyncTask; +import net.osmand.plus.download.DownloadIndexesThread.DownloadEvents; +import net.osmand.plus.download.ui.ActiveDownloadsDialogFragment; +import net.osmand.plus.download.ui.DownloadResourceGroupFragment; +import net.osmand.plus.download.ui.LocalIndexesFragment; +import net.osmand.plus.download.ui.UpdatesIndexFragment; +import net.osmand.plus.views.controls.PagerSlidingTabStrip; import android.content.ActivityNotFoundException; -import android.content.Context; import android.content.Intent; import android.net.Uri; import android.os.AsyncTask; @@ -15,37 +33,12 @@ import android.support.v4.app.DialogFragment; import android.support.v4.app.Fragment; import android.support.v4.app.FragmentActivity; import android.support.v4.view.ViewPager; -import android.support.v7.app.NotificationCompat; -import android.support.v7.app.NotificationCompat.Builder; import android.text.method.LinkMovementMethod; import android.view.MenuItem; import android.view.View; import android.widget.ProgressBar; import android.widget.TextView; import android.widget.Toast; -import net.osmand.IProgress; -import net.osmand.access.AccessibleToast; -import net.osmand.plus.OsmandApplication; -import net.osmand.plus.OsmandSettings; -import net.osmand.plus.R; -import net.osmand.plus.Version; -import net.osmand.plus.activities.LocalIndexInfo; -import net.osmand.plus.activities.MapActivity; -import net.osmand.plus.activities.TabActivity; -import net.osmand.plus.base.BasicProgressAsyncTask; -import net.osmand.plus.download.DownloadIndexesThread.DownloadEvents; -import net.osmand.plus.download.ui.ActiveDownloadsDialogFragment; -import net.osmand.plus.download.ui.DownloadResourceGroupFragment; -import net.osmand.plus.download.ui.LocalIndexesFragment; -import net.osmand.plus.download.ui.UpdatesIndexFragment; -import net.osmand.plus.views.controls.PagerSlidingTabStrip; - -import java.io.File; -import java.lang.ref.WeakReference; -import java.text.MessageFormat; -import java.util.ArrayList; -import java.util.List; -import java.util.Locale; public class DownloadActivity extends BaseDownloadActivity { public static final int UPDATES_TAB_NUMBER = 2; @@ -129,7 +122,7 @@ public class DownloadActivity extends BaseDownloadActivity { } }); - visibleBanner = new BannerAndDownloadFreeVersion(findViewById(R.id.mainLayout), this); + visibleBanner = new BannerAndDownloadFreeVersion(findViewById(R.id.mainLayout), this, true); final Intent intent = getIntent(); if (intent != null && intent.getExtras() != null) { @@ -275,9 +268,11 @@ public class DownloadActivity extends BaseDownloadActivity { private final OsmandApplication application; private final boolean shouldShowFreeVersionBanner; private final View freeVersionBannerTitle; + private boolean showSpace; - public BannerAndDownloadFreeVersion(View view, final DownloadActivity ctx) { + public BannerAndDownloadFreeVersion(View view, final DownloadActivity ctx, boolean showSpace) { this.ctx = ctx; + this.showSpace = showSpace; application = (OsmandApplication) ctx.getApplicationContext(); freeVersionBanner = view.findViewById(R.id.freeVersionBanner); downloadProgressLayout = view.findViewById(R.id.downloadProgressLayout); @@ -304,10 +299,6 @@ public class DownloadActivity extends BaseDownloadActivity { } public void updateBannerInProgress() { - updateBannerInProgress(true); - } - - public void updateBannerInProgress(boolean showSpace) { BasicProgressAsyncTask basicProgressAsyncTask = ctx.getDownloadThread().getCurrentRunningTask(); final boolean isFinished = basicProgressAsyncTask == null || basicProgressAsyncTask.getStatus() == AsyncTask.Status.FINISHED; diff --git a/OsmAnd/src/net/osmand/plus/download/ui/DownloadResourceGroupFragment.java b/OsmAnd/src/net/osmand/plus/download/ui/DownloadResourceGroupFragment.java index 5b2cc0ca42..ee2e593b37 100644 --- a/OsmAnd/src/net/osmand/plus/download/ui/DownloadResourceGroupFragment.java +++ b/OsmAnd/src/net/osmand/plus/download/ui/DownloadResourceGroupFragment.java @@ -93,7 +93,7 @@ public class DownloadResourceGroupFragment extends DialogFragment implements Dow setHasOptionsMenu(true); if(openAsDialog()) { - banner = new BannerAndDownloadFreeVersion(view, (DownloadActivity) getActivity()); + banner = new BannerAndDownloadFreeVersion(view, (DownloadActivity) getActivity(), false); } else { banner = null; view.findViewById(R.id.freeVersionBanner).setVisibility(View.GONE); @@ -153,7 +153,7 @@ public class DownloadResourceGroupFragment extends DialogFragment implements Dow @Override public void newDownloadIndexes() { if(banner != null) { - banner.updateBannerInProgress(false); + banner.updateBannerInProgress(); } reloadData(); } @@ -161,7 +161,7 @@ public class DownloadResourceGroupFragment extends DialogFragment implements Dow @Override public void downloadHasFinished() { if(banner != null) { - banner.updateBannerInProgress(false); + banner.updateBannerInProgress(); } listAdapter.notifyDataSetChanged(); } @@ -169,7 +169,7 @@ public class DownloadResourceGroupFragment extends DialogFragment implements Dow @Override public void downloadInProgress() { if(banner != null) { - banner.updateBannerInProgress(false); + banner.updateBannerInProgress(); } listAdapter.notifyDataSetChanged(); } diff --git a/OsmAnd/src/net/osmand/plus/download/ui/SearchDialogFragment.java b/OsmAnd/src/net/osmand/plus/download/ui/SearchDialogFragment.java index 8aea646a1e..39426e08c9 100644 --- a/OsmAnd/src/net/osmand/plus/download/ui/SearchDialogFragment.java +++ b/OsmAnd/src/net/osmand/plus/download/ui/SearchDialogFragment.java @@ -82,7 +82,7 @@ public class SearchDialogFragment extends DialogFragment implements DownloadEven } }); - banner = new BannerAndDownloadFreeVersion(view, (DownloadActivity) getActivity()); + banner = new BannerAndDownloadFreeVersion(view, (DownloadActivity) getActivity(), false); LinearLayout ll = (LinearLayout) view; ExpandableListView expandablelistView = (ExpandableListView) view.findViewById(android.R.id.list); @@ -151,7 +151,7 @@ public class SearchDialogFragment extends DialogFragment implements DownloadEven @Override public void newDownloadIndexes() { if(banner != null) { - banner.updateBannerInProgress(false); + banner.updateBannerInProgress(); } updateSearchText(searchText); } @@ -159,7 +159,7 @@ public class SearchDialogFragment extends DialogFragment implements DownloadEven @Override public void downloadHasFinished() { if(banner != null) { - banner.updateBannerInProgress(false); + banner.updateBannerInProgress(); } listAdapter.notifyDataSetChanged(); } @@ -167,7 +167,7 @@ public class SearchDialogFragment extends DialogFragment implements DownloadEven @Override public void downloadInProgress() { if(banner != null) { - banner.updateBannerInProgress(false); + banner.updateBannerInProgress(); } listAdapter.notifyDataSetChanged(); } From cd8a3d85b187dfc4b0da2e733ff7768d61734d56 Mon Sep 17 00:00:00 2001 From: Victor Shcherb Date: Thu, 22 Oct 2015 01:16:38 +0200 Subject: [PATCH 20/23] Update page --- .../net/osmand/plus/download/DownloadActivity.java | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) diff --git a/OsmAnd/src/net/osmand/plus/download/DownloadActivity.java b/OsmAnd/src/net/osmand/plus/download/DownloadActivity.java index 815d50e400..7738588eb3 100644 --- a/OsmAnd/src/net/osmand/plus/download/DownloadActivity.java +++ b/OsmAnd/src/net/osmand/plus/download/DownloadActivity.java @@ -110,11 +110,7 @@ public class DownloadActivity extends BaseDownloadActivity { @Override public void onPageSelected(int i) { - if (i == UPDATES_TAB_NUMBER) { - visibleBanner.hideDownloadProgressLayout(); - } else { - visibleBanner.showDownloadProgressLayout(); - } + visibleBanner.updateBannerInProgress(); } @Override @@ -292,10 +288,6 @@ public class DownloadActivity extends BaseDownloadActivity { initFreeVersionBanner(); updateBannerInProgress(); - - if (ctx.getCurrentTab() != UPDATES_TAB_NUMBER) { - downloadProgressLayout.setVisibility(View.VISIBLE); - } } public void updateBannerInProgress() { @@ -307,6 +299,8 @@ public class DownloadActivity extends BaseDownloadActivity { updateDescriptionTextWithSize(ctx, downloadProgressLayout); if (ctx.getCurrentTab() == UPDATES_TAB_NUMBER || !showSpace) { downloadProgressLayout.setVisibility(View.GONE); + } else { + downloadProgressLayout.setVisibility(View.VISIBLE); } updateFreeVersionBanner(); } else { From 776fe08a46d79d76b6e2693902ba1b17c33c4cc2 Mon Sep 17 00:00:00 2001 From: Victor Shcherb Date: Thu, 22 Oct 2015 01:29:58 +0200 Subject: [PATCH 21/23] Recreate drawer every time in case plugins installed --- .../osmand/plus/activities/MapActivity.java | 22 +++------------- .../plus/activities/MapActivityActions.java | 25 +++++++++++++++++-- 2 files changed, 26 insertions(+), 21 deletions(-) diff --git a/OsmAnd/src/net/osmand/plus/activities/MapActivity.java b/OsmAnd/src/net/osmand/plus/activities/MapActivity.java index bc5626328c..7f84f0e50b 100644 --- a/OsmAnd/src/net/osmand/plus/activities/MapActivity.java +++ b/OsmAnd/src/net/osmand/plus/activities/MapActivity.java @@ -235,29 +235,12 @@ public class MapActivity extends AccessibleActivity { .add(R.id.fragmentContainer, new FirstUsageFragment(), FirstUsageFragment.TAG).commit(); } - final ListView menuItemsListView = (ListView) findViewById(R.id.menuItems); - menuItemsListView.setDivider(null); - final ContextMenuAdapter contextMenuAdapter = mapActions.createMainOptionsMenu(); - contextMenuAdapter.setDefaultLayoutId(R.layout.simple_list_menu_item); - final ArrayAdapter simpleListAdapter = contextMenuAdapter.createListAdapter(this, - settings.OSMAND_THEME.get() == OsmandSettings.OSMAND_LIGHT_THEME); - menuItemsListView.setAdapter(simpleListAdapter); - menuItemsListView.setOnItemClickListener(new AdapterView.OnItemClickListener() { - @Override - public void onItemClick(AdapterView parent, View view, int position, long id) { - ContextMenuAdapter.OnContextMenuClick click = - contextMenuAdapter.getClickAdapter(position); - if (click.onContextMenuClick(simpleListAdapter, - contextMenuAdapter.getElementId(position), position, false)) { - closeDrawer(); - } - } - }); - + mapActions.updateDrawerMenu(); drawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout); } + private void checkAppInitialization() { if (app.isApplicationInitializing()) { findViewById(R.id.init_progress).setVisibility(View.VISIBLE); @@ -1002,6 +985,7 @@ public class MapActivity extends AccessibleActivity { } public void openDrawer() { + mapActions.updateDrawerMenu(); drawerLayout.openDrawer(Gravity.LEFT); } diff --git a/OsmAnd/src/net/osmand/plus/activities/MapActivityActions.java b/OsmAnd/src/net/osmand/plus/activities/MapActivityActions.java index b59d60e30e..717477096f 100644 --- a/OsmAnd/src/net/osmand/plus/activities/MapActivityActions.java +++ b/OsmAnd/src/net/osmand/plus/activities/MapActivityActions.java @@ -13,7 +13,6 @@ import net.osmand.Location; import net.osmand.PlatformUtil; import net.osmand.access.AccessibleAlertBuilder; import net.osmand.access.AccessibleToast; -import net.osmand.data.FavouritePoint; import net.osmand.data.LatLon; import net.osmand.data.PointDescription; import net.osmand.data.QuadRect; @@ -58,9 +57,11 @@ import android.view.View; import android.view.View.OnClickListener; import android.view.ViewGroup; import android.view.WindowManager; +import android.widget.AdapterView; import android.widget.ArrayAdapter; import android.widget.Button; import android.widget.EditText; +import android.widget.ListView; import android.widget.TextView; import android.widget.Toast; @@ -899,6 +900,26 @@ public class MapActivityActions implements DialogProvider { view.show(); } } - + + protected void updateDrawerMenu() { + final ListView menuItemsListView = (ListView) mapActivity.findViewById(R.id.menuItems); + menuItemsListView.setDivider(null); + final ContextMenuAdapter contextMenuAdapter = createMainOptionsMenu(); + contextMenuAdapter.setDefaultLayoutId(R.layout.simple_list_menu_item); + final ArrayAdapter simpleListAdapter = contextMenuAdapter.createListAdapter(mapActivity, + settings.OSMAND_THEME.get() == OsmandSettings.OSMAND_LIGHT_THEME); + menuItemsListView.setAdapter(simpleListAdapter); + menuItemsListView.setOnItemClickListener(new AdapterView.OnItemClickListener() { + @Override + public void onItemClick(AdapterView parent, View view, int position, long id) { + ContextMenuAdapter.OnContextMenuClick click = + contextMenuAdapter.getClickAdapter(position); + if (click.onContextMenuClick(simpleListAdapter, + contextMenuAdapter.getElementId(position), position, false)) { + mapActivity.closeDrawer(); + } + } + }); + } } From cc818703483a9f071035fc5d71624ad2f863a418 Mon Sep 17 00:00:00 2001 From: Victor Shcherb Date: Thu, 22 Oct 2015 01:37:26 +0200 Subject: [PATCH 22/23] Fix #1824 --- .../plus/download/BaseDownloadActivity.java | 31 +++++++------------ 1 file changed, 11 insertions(+), 20 deletions(-) diff --git a/OsmAnd/src/net/osmand/plus/download/BaseDownloadActivity.java b/OsmAnd/src/net/osmand/plus/download/BaseDownloadActivity.java index d1238656f4..245afee49f 100644 --- a/OsmAnd/src/net/osmand/plus/download/BaseDownloadActivity.java +++ b/OsmAnd/src/net/osmand/plus/download/BaseDownloadActivity.java @@ -134,11 +134,19 @@ public class BaseDownloadActivity extends ActionBarProgressActivity implements D } } - protected void downloadFilesCheck_2_Internet(IndexItem[] items) { + protected void downloadFilesCheck_2_Internet(final IndexItem[] items) { if (!getMyApplication().getSettings().isWifiConnected()) { if (getMyApplication().getSettings().isInternetConnectionAvailable()) { - new ConfirmDownloadDialogFragment().show(getSupportFragmentManager(), - ConfirmDownloadDialogFragment.TAG); + AlertDialog.Builder builder = new AlertDialog.Builder(this); + builder.setMessage(getString(R.string.download_using_mobile_internet)); + builder.setPositiveButton(R.string.shared_string_yes, new DialogInterface.OnClickListener() { + @Override + public void onClick(DialogInterface dialog, int which) { + downloadFilesCheck_3_ValidateSpace(items); + } + }); + builder.setNegativeButton(R.string.shared_string_no, null); + builder.show(); } else { AccessibleToast.makeText(this, R.string.no_index_file_to_download, Toast.LENGTH_LONG).show(); } @@ -202,22 +210,5 @@ public class BaseDownloadActivity extends ActionBarProgressActivity implements D } } - public static class ConfirmDownloadDialogFragment extends DialogFragment { - public static final String TAG = "ConfirmDownloadDialogFragment"; - @NonNull - @Override - public Dialog onCreateDialog(Bundle savedInstanceState) { - AlertDialog.Builder builder = new AlertDialog.Builder(getActivity()); - builder.setMessage(getString(R.string.download_using_mobile_internet)); - builder.setPositiveButton(R.string.shared_string_yes, new DialogInterface.OnClickListener() { - @Override - public void onClick(DialogInterface dialog, int which) { - ((BaseDownloadActivity) getActivity()).downloadFilesCheck_3_ValidateSpace(); - } - }); - builder.setNegativeButton(R.string.shared_string_no, null); - return builder.create(); - } - } } From 51ff44cea321b8277a841728860f459bc56bf39a Mon Sep 17 00:00:00 2001 From: josep constanti Date: Thu, 22 Oct 2015 07:47:13 +0200 Subject: [PATCH 23/23] Translated using Weblate (Catalan) Currently translated at 100.0% (1769 of 1769 strings) --- OsmAnd/res/values-ca/strings.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/OsmAnd/res/values-ca/strings.xml b/OsmAnd/res/values-ca/strings.xml index bf80d4ae72..04778aa61e 100644 --- a/OsmAnd/res/values-ca/strings.xml +++ b/OsmAnd/res/values-ca/strings.xml @@ -179,10 +179,10 @@ Mostra la descripció del PDI Europa - França Europa - Alemanya -Europa/Àsia - Rússia +Rússia Àfrica Àsia -Oceania +Austràlia i Oceania Indicadors de veu (enregistrats, funcionalitats limitades) Viquipèdia (fora de línia) Navegació