Merge branch 'master' into Fix_my_places_edit_fav
Before Width: | Height: | Size: 601 B |
Before Width: | Height: | Size: 667 B |
Before Width: | Height: | Size: 315 B |
Before Width: | Height: | Size: 827 B |
Before Width: | Height: | Size: 398 B |
Before Width: | Height: | Size: 226 B |
Before Width: | Height: | Size: 559 B |
Before Width: | Height: | Size: 724 B |
Before Width: | Height: | Size: 706 B |
Before Width: | Height: | Size: 372 B |
Before Width: | Height: | Size: 1 KiB |
Before Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 924 B |
Before Width: | Height: | Size: 539 B |
Before Width: | Height: | Size: 1.4 KiB |
Before Width: | Height: | Size: 1.5 KiB |
Before Width: | Height: | Size: 1.4 KiB |
Before Width: | Height: | Size: 781 B |
Before Width: | Height: | Size: 2 KiB |
12
OsmAnd/res/drawable/bg_right_menu_dark.xml
Normal file
|
@ -0,0 +1,12 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<item>
|
||||
<nine-patch android:src="@drawable/bg_contextmenu_shadow_left_light" />
|
||||
</item>
|
||||
<item>
|
||||
<shape>
|
||||
<solid
|
||||
android:color="@color/list_background_color_dark" />
|
||||
</shape>
|
||||
</item>
|
||||
</layer-list>
|
12
OsmAnd/res/drawable/bg_right_menu_light.xml
Normal file
|
@ -0,0 +1,12 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<item>
|
||||
<nine-patch android:src="@drawable/bg_contextmenu_shadow_left_light" />
|
||||
</item>
|
||||
<item>
|
||||
<shape>
|
||||
<solid
|
||||
android:color="@color/list_background_color_light" />
|
||||
</shape>
|
||||
</item>
|
||||
</layer-list>
|
24
OsmAnd/res/drawable/ic_action_manage_profiles.xml
Normal file
|
@ -0,0 +1,24 @@
|
|||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:width="24dp"
|
||||
android:height="24dp"
|
||||
android:viewportWidth="24"
|
||||
android:viewportHeight="24">
|
||||
<path
|
||||
android:pathData="M4,2C2.8954,2 2,2.8954 2,4V4.2676C2.2942,4.0974 2.6357,4 3,4H21C21.3643,4 21.7058,4.0974 22,4.2676V4C22,2.8954 21.1046,2 20,2H4Z"
|
||||
android:strokeAlpha="0.5"
|
||||
android:fillColor="#ffffff"
|
||||
android:fillAlpha="0.5"/>
|
||||
<path
|
||||
android:pathData="M8.1111,9H16C16.1099,9 16.2048,9.077 16.2275,9.1846L16.8202,12H7.1798L7.7497,9.2933C7.7856,9.1224 7.9364,9 8.1111,9Z"
|
||||
android:fillColor="#ffffff"/>
|
||||
<path
|
||||
android:pathData="M8,15C8.5523,15 9,14.5523 9,14C9,13.4477 8.5523,13 8,13C7.4477,13 7,13.4477 7,14C7,14.5523 7.4477,15 8,15Z"
|
||||
android:fillColor="#ffffff"/>
|
||||
<path
|
||||
android:pathData="M16,15C16.5523,15 17,14.5523 17,14C17,13.4477 16.5523,13 16,13C15.4477,13 15,13.4477 15,14C15,14.5523 15.4477,15 16,15Z"
|
||||
android:fillColor="#ffffff"/>
|
||||
<path
|
||||
android:pathData="M2,4C0.8954,4 0,4.8954 0,6V20C0,21.1046 0.8954,22 2,22H22C23.1046,22 24,21.1046 24,20V6C24,4.8954 23.1046,4 22,4H2ZM6,12.75L6.7711,9.0873C6.9045,8.4536 7.4636,8 8.1111,8H16C16.5828,8 17.0859,8.4082 17.206,8.9785L18,12.75V18C18,18.5523 17.5523,19 17,19C16.4477,19 16,18.5523 16,18V17.5H8V18C8,18.5523 7.5523,19 7,19C6.4477,19 6,18.5523 6,18V12.75Z"
|
||||
android:fillColor="#ffffff"
|
||||
android:fillType="evenOdd"/>
|
||||
</vector>
|
19
OsmAnd/res/drawable/ic_action_notification.xml
Normal file
|
@ -0,0 +1,19 @@
|
|||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:width="24dp"
|
||||
android:height="24dp"
|
||||
android:viewportWidth="24"
|
||||
android:viewportHeight="24">
|
||||
<path
|
||||
android:pathData="M22,22V5C22,3.3431 20.6569,2 19,2H5C3.3431,2 2,3.3431 2,5V22H4V7H20V22H22Z"
|
||||
android:strokeAlpha="0.5"
|
||||
android:fillColor="#ffffff"
|
||||
android:fillAlpha="0.5"/>
|
||||
<path
|
||||
android:pathData="M4,7h16v5h-16z"
|
||||
android:fillColor="#ffffff"/>
|
||||
<path
|
||||
android:pathData="M4,12h16v10h-16z"
|
||||
android:strokeAlpha="0.2"
|
||||
android:fillColor="#ffffff"
|
||||
android:fillAlpha="0.2"/>
|
||||
</vector>
|
10
OsmAnd/res/drawable/ic_action_privacy_and_security.xml
Normal file
|
@ -0,0 +1,10 @@
|
|||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:width="24dp"
|
||||
android:height="24dp"
|
||||
android:viewportWidth="24"
|
||||
android:viewportHeight="24">
|
||||
<path
|
||||
android:pathData="M18.5988,5.5545C18.7397,5.593 18.8734,5.6281 19,5.6602V14C19,16.1095 18.9281,16.5624 18.3884,17.1621C18.1087,17.4729 17.6552,17.8508 16.8883,18.3299L16.6011,16.6065C16.5366,16.2195 16.3148,15.8765 15.9884,15.6589L15.7541,15.5027C15.2536,15.1691 14.7108,14.9036 14.1402,14.7134C12.751,14.2503 11.249,14.2503 9.8598,14.7134C9.2892,14.9036 8.7464,15.1691 8.2459,15.5027L8.0116,15.6589C7.6852,15.8765 7.4634,16.2195 7.3989,16.6065L7.1548,18.0714C6.6216,17.7127 6.221,17.3925 5.9142,17.0858C5.5004,16.672 5.3095,16.3264 5.1946,15.9489C5.0634,15.5179 5,14.9433 5,14V5.7348C5.2262,5.6872 5.4712,5.6312 5.7351,5.5653C7.2372,5.1897 9.3455,4.492 12.0591,3.197C15.147,4.4891 17.2321,5.1818 18.5988,5.5545ZM21,14C21,18 21,19 12,23C4,19 3,18 3,14V4C3,4 6,4 12,1C19,4 21,4 21,4V14ZM15,10C15,11.6569 13.6569,13 12,13C10.3431,13 9,11.6569 9,10C9,8.3432 10.3431,7 12,7C13.6569,7 15,8.3432 15,10Z"
|
||||
android:fillColor="#ffffff"
|
||||
android:fillType="evenOdd"/>
|
||||
</vector>
|
56
OsmAnd/res/drawable/img_help_height_limit_day.xml
Normal file
|
@ -0,0 +1,56 @@
|
|||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:width="360dp"
|
||||
android:height="90dp"
|
||||
android:viewportWidth="360"
|
||||
android:viewportHeight="90">
|
||||
<path
|
||||
android:pathData="M0,0h360v90h-360z"
|
||||
android:fillColor="#F5F5F5"/>
|
||||
<path
|
||||
android:pathData="M16,82h328v8h-328z"
|
||||
android:fillColor="#D7D8DB"/>
|
||||
<path
|
||||
android:pathData="M272,20C272,14.477 276.477,10 282,10H344V22H272V20Z"
|
||||
android:fillColor="#D7D8DB"/>
|
||||
<path
|
||||
android:pathData="M272,22H344V82H272V22Z"
|
||||
android:fillColor="#AEB0B7"/>
|
||||
<path
|
||||
android:pathData="M124,33C122.343,33 121,34.343 121,36V67H119V75H128.062C128.554,78.946 131.92,82 136,82C140.08,82 143.446,78.946 143.938,75H201.062C201.554,78.946 204.92,82 209,82C213.08,82 216.446,78.946 216.938,75H222V56L215,41H196V71H193V33H124ZM136,77C134.343,77 133,75.657 133,74C133,72.343 134.343,71 136,71C137.657,71 139,72.343 139,74C139,75.657 137.657,77 136,77ZM206.171,75C206.583,76.165 207.694,77 209,77C210.306,77 211.417,76.165 211.829,75C211.94,74.687 212,74.351 212,74C212,72.343 210.657,71 209,71C207.343,71 206,72.343 206,74C206,74.351 206.06,74.687 206.171,75ZM212.253,45L217,56H200V45H212.253Z"
|
||||
android:fillColor="#237BFF"
|
||||
android:fillType="evenOdd"/>
|
||||
<path
|
||||
android:pathData="M260,16L266,22L272,16H260Z"
|
||||
android:fillColor="#EE5622"/>
|
||||
<path
|
||||
android:pathData="M260,88L266,82L272,88H260Z"
|
||||
android:fillColor="#EE5622"/>
|
||||
<path
|
||||
android:pathData="M265,26C265,25.448 265.448,25 266,25C266.552,25 267,25.448 267,26V33C267,33.552 266.552,34 266,34C265.448,34 265,33.552 265,33V26Z"
|
||||
android:fillColor="#EE5622"/>
|
||||
<path
|
||||
android:pathData="M265,56C265,55.448 265.448,55 266,55C266.552,55 267,55.448 267,56V63C267,63.552 266.552,64 266,64C265.448,64 265,63.552 265,63V56Z"
|
||||
android:fillColor="#EE5622"/>
|
||||
<path
|
||||
android:pathData="M266,40C265.448,40 265,40.448 265,41V48C265,48.552 265.448,49 266,49C266.552,49 267,48.552 267,48V41C267,40.448 266.552,40 266,40Z"
|
||||
android:fillColor="#EE5622"/>
|
||||
<path
|
||||
android:pathData="M265,71C265,70.448 265.448,70 266,70C266.552,70 267,70.448 267,71V78C267,78.552 266.552,79 266,79C265.448,79 265,78.552 265,78V71Z"
|
||||
android:fillColor="#EE5622"/>
|
||||
<path
|
||||
android:pathData="M82,42C82,59.673 67.673,74 50,74C32.327,74 18,59.673 18,42C18,24.327 32.327,10 50,10C67.673,10 82,24.327 82,42Z"
|
||||
android:fillColor="#ffffff"/>
|
||||
<path
|
||||
android:pathData="M50,68C64.359,68 76,56.359 76,42C76,27.641 64.359,16 50,16C35.641,16 24,27.641 24,42C24,56.359 35.641,68 50,68ZM50,74C67.673,74 82,59.673 82,42C82,24.327 67.673,10 50,10C32.327,10 18,24.327 18,42C18,59.673 32.327,74 50,74Z"
|
||||
android:fillColor="#EE5622"
|
||||
android:fillType="evenOdd"/>
|
||||
<path
|
||||
android:pathData="M38,22L50,30L62,22H38Z"
|
||||
android:fillColor="#000000"/>
|
||||
<path
|
||||
android:pathData="M46,34V40H54V34H58V50H54V44H46L46,50H42V34H46Z"
|
||||
android:fillColor="#000000"/>
|
||||
<path
|
||||
android:pathData="M50,54L38,62H62L50,54Z"
|
||||
android:fillColor="#000000"/>
|
||||
</vector>
|
56
OsmAnd/res/drawable/img_help_height_limit_night.xml
Normal file
|
@ -0,0 +1,56 @@
|
|||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:width="360dp"
|
||||
android:height="90dp"
|
||||
android:viewportWidth="360"
|
||||
android:viewportHeight="90">
|
||||
<path
|
||||
android:pathData="M0,0h360v90h-360z"
|
||||
android:fillColor="#28292A"/>
|
||||
<path
|
||||
android:pathData="M16,82h328v8h-328z"
|
||||
android:fillColor="#4B4D4E"/>
|
||||
<path
|
||||
android:pathData="M272,20C272,14.477 276.477,10 282,10H344V22H272V20Z"
|
||||
android:fillColor="#4B4C4E"/>
|
||||
<path
|
||||
android:pathData="M272,22H344V82H272V22Z"
|
||||
android:fillColor="#1F1F1F"/>
|
||||
<path
|
||||
android:pathData="M124,33C122.343,33 121,34.343 121,36V67H119V75H128.062C128.554,78.946 131.92,82 136,82C140.08,82 143.446,78.946 143.938,75H201.062C201.554,78.946 204.92,82 209,82C213.08,82 216.446,78.946 216.938,75H222V56L215,41H196V71H193V33H124ZM136,77C134.343,77 133,75.657 133,74C133,72.343 134.343,71 136,71C137.657,71 139,72.343 139,74C139,75.657 137.657,77 136,77ZM206.171,75C206.583,76.165 207.694,77 209,77C210.306,77 211.417,76.165 211.829,75C211.94,74.687 212,74.351 212,74C212,72.343 210.657,71 209,71C207.343,71 206,72.343 206,74C206,74.351 206.06,74.687 206.171,75ZM212.253,45L217,56H200V45H212.253Z"
|
||||
android:fillColor="#237BFF"
|
||||
android:fillType="evenOdd"/>
|
||||
<path
|
||||
android:pathData="M260,16L266,22L272,16H260Z"
|
||||
android:fillColor="#EE5622"/>
|
||||
<path
|
||||
android:pathData="M260,88L266,82L272,88H260Z"
|
||||
android:fillColor="#EE5622"/>
|
||||
<path
|
||||
android:pathData="M265,26C265,25.448 265.448,25 266,25C266.552,25 267,25.448 267,26V33C267,33.552 266.552,34 266,34C265.448,34 265,33.552 265,33V26Z"
|
||||
android:fillColor="#EE5622"/>
|
||||
<path
|
||||
android:pathData="M265,56C265,55.448 265.448,55 266,55C266.552,55 267,55.448 267,56V63C267,63.552 266.552,64 266,64C265.448,64 265,63.552 265,63V56Z"
|
||||
android:fillColor="#EE5622"/>
|
||||
<path
|
||||
android:pathData="M266,40C265.448,40 265,40.448 265,41V48C265,48.552 265.448,49 266,49C266.552,49 267,48.552 267,48V41C267,40.448 266.552,40 266,40Z"
|
||||
android:fillColor="#EE5622"/>
|
||||
<path
|
||||
android:pathData="M265,71C265,70.448 265.448,70 266,70C266.552,70 267,70.448 267,71V78C267,78.552 266.552,79 266,79C265.448,79 265,78.552 265,78V71Z"
|
||||
android:fillColor="#EE5622"/>
|
||||
<path
|
||||
android:pathData="M82,42C82,59.673 67.673,74 50,74C32.327,74 18,59.673 18,42C18,24.327 32.327,10 50,10C67.673,10 82,24.327 82,42Z"
|
||||
android:fillColor="#F5F5F5"/>
|
||||
<path
|
||||
android:pathData="M50,68C64.359,68 76,56.359 76,42C76,27.641 64.359,16 50,16C35.641,16 24,27.641 24,42C24,56.359 35.641,68 50,68ZM50,74C67.673,74 82,59.673 82,42C82,24.327 67.673,10 50,10C32.327,10 18,24.327 18,42C18,59.673 32.327,74 50,74Z"
|
||||
android:fillColor="#EE5622"
|
||||
android:fillType="evenOdd"/>
|
||||
<path
|
||||
android:pathData="M38,22L50,30L62,22H38Z"
|
||||
android:fillColor="#000000"/>
|
||||
<path
|
||||
android:pathData="M46,34V40H54V34H58V50H54V44H46L46,50H42V34H46Z"
|
||||
android:fillColor="#000000"/>
|
||||
<path
|
||||
android:pathData="M50,54L38,62H62L50,54Z"
|
||||
android:fillColor="#000000"/>
|
||||
</vector>
|
35
OsmAnd/res/drawable/img_help_weight_limit_day.xml
Normal file
|
@ -0,0 +1,35 @@
|
|||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:width="360dp"
|
||||
android:height="90dp"
|
||||
android:viewportWidth="360"
|
||||
android:viewportHeight="90">
|
||||
<path
|
||||
android:pathData="M0,0h360v90h-360z"
|
||||
android:fillColor="#F5F5F5"/>
|
||||
<path
|
||||
android:pathData="M16,82h328v8h-328z"
|
||||
android:fillColor="#D7D8DB"/>
|
||||
<path
|
||||
android:pathData="M59,30C57.343,30 56,31.343 56,33V64H54V72H63.062C63.554,75.946 66.92,79 71,79C75.08,79 78.446,75.946 78.938,72H136.062C136.554,75.946 139.92,79 144,79C148.08,79 151.446,75.946 151.938,72H157V53L150,38H131V68H128V30H59ZM71,74C69.343,74 68,72.657 68,71C68,69.343 69.343,68 71,68C72.657,68 74,69.343 74,71C74,72.657 72.657,74 71,74ZM141.171,72C141.583,73.165 142.694,74 144,74C145.306,74 146.417,73.165 146.829,72C146.94,71.687 147,71.351 147,71C147,69.343 145.657,68 144,68C142.343,68 141,69.343 141,71C141,71.351 141.06,71.687 141.171,72ZM147.253,42L152,53H135V42H147.253Z"
|
||||
android:fillColor="#237BFF"
|
||||
android:fillType="evenOdd"/>
|
||||
<path
|
||||
android:pathData="M56,79V82L62,88L68,82L161,82V79H56Z"
|
||||
android:fillColor="#EE5622"/>
|
||||
<path
|
||||
android:pathData="M149,82L155,88L161,82L149,82Z"
|
||||
android:fillColor="#EE5622"/>
|
||||
<path
|
||||
android:pathData="M312,42C312,59.673 297.673,74 280,74C262.327,74 248,59.673 248,42C248,24.327 262.327,10 280,10C297.673,10 312,24.327 312,42Z"
|
||||
android:fillColor="#ffffff"/>
|
||||
<path
|
||||
android:pathData="M280,68C294.359,68 306,56.359 306,42C306,27.641 294.359,16 280,16C265.641,16 254,27.641 254,42C254,56.359 265.641,68 280,68ZM280,74C297.673,74 312,59.673 312,42C312,24.327 297.673,10 280,10C262.327,10 248,24.327 248,42C248,59.673 262.327,74 280,74Z"
|
||||
android:fillColor="#EE5622"
|
||||
android:fillType="evenOdd"/>
|
||||
<path
|
||||
android:pathData="M282,30L282,44H278V30H272V26H288V30H282Z"
|
||||
android:fillColor="#000000"/>
|
||||
<path
|
||||
android:pathData="M264,48C264,46.895 264.895,46 266,46H268C269.105,46 270,46.895 270,48V50H278C278,48.895 278.895,48 280,48C281.105,48 282,48.895 282,50H290V48C290,46.895 290.895,46 292,46H294C295.105,46 296,46.895 296,48V56C296,57.105 295.105,58 294,58H292C290.895,58 290,57.105 290,56V54L282,54C282,55.105 281.105,56 280,56C278.895,56 278,55.105 278,54H270V56C270,57.105 269.105,58 268,58H266C264.895,58 264,57.105 264,56V48Z"
|
||||
android:fillColor="#000000"/>
|
||||
</vector>
|
35
OsmAnd/res/drawable/img_help_weight_limit_night.xml
Normal file
|
@ -0,0 +1,35 @@
|
|||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:width="360dp"
|
||||
android:height="90dp"
|
||||
android:viewportWidth="360"
|
||||
android:viewportHeight="90">
|
||||
<path
|
||||
android:pathData="M0,0h360v90h-360z"
|
||||
android:fillColor="#28292A"/>
|
||||
<path
|
||||
android:pathData="M16,82h328v8h-328z"
|
||||
android:fillColor="#4B4D4E"/>
|
||||
<path
|
||||
android:pathData="M59,30C57.343,30 56,31.343 56,33V64H54V72H63.062C63.554,75.946 66.92,79 71,79C75.08,79 78.446,75.946 78.938,72H136.062C136.554,75.946 139.92,79 144,79C148.08,79 151.446,75.946 151.938,72H157V53L150,38H131V68H128V30H59ZM71,74C69.343,74 68,72.657 68,71C68,69.343 69.343,68 71,68C72.657,68 74,69.343 74,71C74,72.657 72.657,74 71,74ZM141.171,72C141.583,73.165 142.694,74 144,74C145.306,74 146.417,73.165 146.829,72C146.94,71.687 147,71.351 147,71C147,69.343 145.657,68 144,68C142.343,68 141,69.343 141,71C141,71.351 141.06,71.687 141.171,72ZM147.253,42L152,53H135V42H147.253Z"
|
||||
android:fillColor="#237BFF"
|
||||
android:fillType="evenOdd"/>
|
||||
<path
|
||||
android:pathData="M56,79V82L62,88L68,82L161,82V79H56Z"
|
||||
android:fillColor="#EE5622"/>
|
||||
<path
|
||||
android:pathData="M149,82L155,88L161,82L149,82Z"
|
||||
android:fillColor="#EE5622"/>
|
||||
<path
|
||||
android:pathData="M312,42C312,59.673 297.673,74 280,74C262.327,74 248,59.673 248,42C248,24.327 262.327,10 280,10C297.673,10 312,24.327 312,42Z"
|
||||
android:fillColor="#F5F5F5"/>
|
||||
<path
|
||||
android:pathData="M280,68C294.359,68 306,56.359 306,42C306,27.641 294.359,16 280,16C265.641,16 254,27.641 254,42C254,56.359 265.641,68 280,68ZM280,74C297.673,74 312,59.673 312,42C312,24.327 297.673,10 280,10C262.327,10 248,24.327 248,42C248,59.673 262.327,74 280,74Z"
|
||||
android:fillColor="#EE5622"
|
||||
android:fillType="evenOdd"/>
|
||||
<path
|
||||
android:pathData="M282,30L282,44H278V30H272V26H288V30H282Z"
|
||||
android:fillColor="#000000"/>
|
||||
<path
|
||||
android:pathData="M264,48C264,46.895 264.895,46 266,46H268C269.105,46 270,46.895 270,48V50H278C278,48.895 278.895,48 280,48C281.105,48 282,48.895 282,50H290V48C290,46.895 290.895,46 292,46H294C295.105,46 296,46.895 296,48V56C296,57.105 295.105,58 294,58H292C290.895,58 290,57.105 290,56V54L282,54C282,55.105 281.105,56 280,56C278.895,56 278,55.105 278,54H270V56C270,57.105 269.105,58 268,58H266C264.895,58 264,57.105 264,56V48Z"
|
||||
android:fillColor="#000000"/>
|
||||
</vector>
|
55
OsmAnd/res/drawable/img_help_width_limit_day.xml
Normal file
|
@ -0,0 +1,55 @@
|
|||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:width="360dp"
|
||||
android:height="90dp"
|
||||
android:viewportWidth="360"
|
||||
android:viewportHeight="90">
|
||||
<path
|
||||
android:pathData="M0,0h360v90h-360z"
|
||||
android:fillColor="#F5F5F5"/>
|
||||
<path
|
||||
android:pathData="M16,82h328v8h-328z"
|
||||
android:fillColor="#D7D8DB"/>
|
||||
<path
|
||||
android:pathData="M108,89L114,83L108,77V89Z"
|
||||
android:fillColor="#EE5622"/>
|
||||
<path
|
||||
android:pathData="M180,89L174,83L180,77V89Z"
|
||||
android:fillColor="#EE5622"/>
|
||||
<path
|
||||
android:pathData="M118,84C117.448,84 117,83.552 117,83C117,82.448 117.448,82 118,82H125C125.552,82 126,82.448 126,83C126,83.552 125.552,84 125,84H118Z"
|
||||
android:fillColor="#EE5622"/>
|
||||
<path
|
||||
android:pathData="M148,84C147.448,84 147,83.552 147,83C147,82.448 147.448,82 148,82H155C155.552,82 156,82.448 156,83C156,83.552 155.552,84 155,84H148Z"
|
||||
android:fillColor="#EE5622"/>
|
||||
<path
|
||||
android:pathData="M132,83C132,83.552 132.448,84 133,84L140,84C140.552,84 141,83.552 141,83C141,82.448 140.552,82 140,82L133,82C132.448,82 132,82.448 132,83Z"
|
||||
android:fillColor="#EE5622"/>
|
||||
<path
|
||||
android:pathData="M163,84C162.448,84 162,83.552 162,83C162,82.448 162.448,82 163,82H170C170.552,82 171,82.448 171,83C171,83.552 170.552,84 170,84H163Z"
|
||||
android:fillColor="#EE5622"/>
|
||||
<path
|
||||
android:pathData="M168.813,51.648L165.005,37.684C164.412,35.509 162.436,34 160.181,34H127.819C125.564,34 123.588,35.509 122.995,37.684L119.162,51.738L117.012,51.43C115.422,51.203 114,52.437 114,54.042C114,56.228 115.772,58 117.958,58H118V77C118,79.209 119.791,81 122,81C124.209,81 126,79.209 126,77V75H162V77C162,79.209 163.791,81 166,81C168.209,81 170,79.209 170,77V58H170.012C172.214,58 174,56.215 174,54.012C174,52.413 172.598,51.175 171.011,51.374L168.813,51.648ZM160.181,38H127.819C127.368,38 126.973,38.302 126.854,38.737L123.128,52.401C123.659,52.436 124.234,52.471 124.853,52.507C129.155,52.752 135.578,53 144,53C152.422,53 158.845,52.752 163.147,52.507C163.766,52.471 164.341,52.436 164.872,52.401L161.146,38.737C161.027,38.302 160.632,38 160.181,38ZM124,62C124,59.791 125.791,58 128,58C130.209,58 132,59.791 132,62C132,64.209 130.209,66 128,66C125.791,66 124,64.209 124,62ZM156,62C156,59.791 157.791,58 160,58C162.209,58 164,59.791 164,62C164,64.209 162.209,66 160,66C157.791,66 156,64.209 156,62Z"
|
||||
android:fillColor="#237BFF"
|
||||
android:fillType="evenOdd"/>
|
||||
<path
|
||||
android:pathData="M152,53.5C152,51.015 154.015,49 156.5,49V49C158.985,49 161,51.015 161,53.5V53.5C161,55.985 158.985,58 156.5,58V58C154.015,58 152,55.985 152,53.5V53.5Z"
|
||||
android:strokeAlpha="0.5"
|
||||
android:fillColor="#237BFF"
|
||||
android:fillAlpha="0.5"/>
|
||||
<path
|
||||
android:pathData="M312,42C312,59.673 297.673,74 280,74C262.327,74 248,59.673 248,42C248,24.327 262.327,10 280,10C297.673,10 312,24.327 312,42Z"
|
||||
android:fillColor="#ffffff"/>
|
||||
<path
|
||||
android:pathData="M280,68C294.359,68 306,56.359 306,42C306,27.641 294.359,16 280,16C265.641,16 254,27.641 254,42C254,56.359 265.641,68 280,68ZM280,74C297.673,74 312,59.673 312,42C312,24.327 297.673,10 280,10C262.327,10 248,24.327 248,42C248,59.673 262.327,74 280,74Z"
|
||||
android:fillColor="#EE5622"
|
||||
android:fillType="evenOdd"/>
|
||||
<path
|
||||
android:pathData="M260.002,54L268.002,42L260.002,30V54Z"
|
||||
android:fillColor="#000000"/>
|
||||
<path
|
||||
android:pathData="M276.002,42.004L274.002,34H270.002L274.002,50H278.003L280.002,42.004L282.002,50H286.002L290.002,34H286.002L284.002,42L282.002,34.004L282.003,34H278.002L278.002,34.004L276.002,42.004Z"
|
||||
android:fillColor="#000000"/>
|
||||
<path
|
||||
android:pathData="M292.003,42L300.003,54V30L292.003,42Z"
|
||||
android:fillColor="#000000"/>
|
||||
</vector>
|
55
OsmAnd/res/drawable/img_help_width_limit_night.xml
Normal file
|
@ -0,0 +1,55 @@
|
|||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:width="360dp"
|
||||
android:height="90dp"
|
||||
android:viewportWidth="360"
|
||||
android:viewportHeight="90">
|
||||
<path
|
||||
android:pathData="M0,0h360v90h-360z"
|
||||
android:fillColor="#28292A"/>
|
||||
<path
|
||||
android:pathData="M16,82h328v8h-328z"
|
||||
android:fillColor="#4B4D4E"/>
|
||||
<path
|
||||
android:pathData="M108,89L114,83L108,77V89Z"
|
||||
android:fillColor="#EE5622"/>
|
||||
<path
|
||||
android:pathData="M180,89L174,83L180,77V89Z"
|
||||
android:fillColor="#EE5622"/>
|
||||
<path
|
||||
android:pathData="M118,84C117.448,84 117,83.552 117,83C117,82.448 117.448,82 118,82H125C125.552,82 126,82.448 126,83C126,83.552 125.552,84 125,84H118Z"
|
||||
android:fillColor="#EE5622"/>
|
||||
<path
|
||||
android:pathData="M148,84C147.448,84 147,83.552 147,83C147,82.448 147.448,82 148,82H155C155.552,82 156,82.448 156,83C156,83.552 155.552,84 155,84H148Z"
|
||||
android:fillColor="#EE5622"/>
|
||||
<path
|
||||
android:pathData="M132,83C132,83.552 132.448,84 133,84L140,84C140.552,84 141,83.552 141,83C141,82.448 140.552,82 140,82L133,82C132.448,82 132,82.448 132,83Z"
|
||||
android:fillColor="#EE5622"/>
|
||||
<path
|
||||
android:pathData="M163,84C162.448,84 162,83.552 162,83C162,82.448 162.448,82 163,82H170C170.552,82 171,82.448 171,83C171,83.552 170.552,84 170,84H163Z"
|
||||
android:fillColor="#EE5622"/>
|
||||
<path
|
||||
android:pathData="M168.813,51.648L165.005,37.684C164.412,35.509 162.436,34 160.181,34H127.819C125.564,34 123.588,35.509 122.995,37.684L119.162,51.738L117.012,51.43C115.422,51.203 114,52.437 114,54.042C114,56.228 115.772,58 117.958,58H118V77C118,79.209 119.791,81 122,81C124.209,81 126,79.209 126,77V75H162V77C162,79.209 163.791,81 166,81C168.209,81 170,79.209 170,77V58H170.012C172.214,58 174,56.215 174,54.012C174,52.413 172.598,51.175 171.011,51.374L168.813,51.648ZM160.181,38H127.819C127.368,38 126.973,38.302 126.854,38.737L123.128,52.401C123.659,52.436 124.234,52.471 124.853,52.507C129.155,52.752 135.578,53 144,53C152.422,53 158.845,52.752 163.147,52.507C163.766,52.471 164.341,52.436 164.872,52.401L161.146,38.737C161.027,38.302 160.632,38 160.181,38ZM124,62C124,59.791 125.791,58 128,58C130.209,58 132,59.791 132,62C132,64.209 130.209,66 128,66C125.791,66 124,64.209 124,62ZM156,62C156,59.791 157.791,58 160,58C162.209,58 164,59.791 164,62C164,64.209 162.209,66 160,66C157.791,66 156,64.209 156,62Z"
|
||||
android:fillColor="#237BFF"
|
||||
android:fillType="evenOdd"/>
|
||||
<path
|
||||
android:pathData="M152,53.5C152,51.015 154.015,49 156.5,49V49C158.985,49 161,51.015 161,53.5V53.5C161,55.985 158.985,58 156.5,58V58C154.015,58 152,55.985 152,53.5V53.5Z"
|
||||
android:strokeAlpha="0.5"
|
||||
android:fillColor="#237BFF"
|
||||
android:fillAlpha="0.5"/>
|
||||
<path
|
||||
android:pathData="M312,42C312,59.673 297.673,74 280,74C262.327,74 248,59.673 248,42C248,24.327 262.327,10 280,10C297.673,10 312,24.327 312,42Z"
|
||||
android:fillColor="#F5F5F5"/>
|
||||
<path
|
||||
android:pathData="M280,68C294.359,68 306,56.359 306,42C306,27.641 294.359,16 280,16C265.641,16 254,27.641 254,42C254,56.359 265.641,68 280,68ZM280,74C297.673,74 312,59.673 312,42C312,24.327 297.673,10 280,10C262.327,10 248,24.327 248,42C248,59.673 262.327,74 280,74Z"
|
||||
android:fillColor="#EE5622"
|
||||
android:fillType="evenOdd"/>
|
||||
<path
|
||||
android:pathData="M260.002,54L268.002,42L260.002,30V54Z"
|
||||
android:fillColor="#000000"/>
|
||||
<path
|
||||
android:pathData="M276.002,42.004L274.002,34H270.002L274.002,50H278.003L280.002,42.004L282.002,50H286.002L290.002,34H286.002L284.002,42L282.002,34.004L282.003,34H278.002L278.002,34.004L276.002,42.004Z"
|
||||
android:fillColor="#000000"/>
|
||||
<path
|
||||
android:pathData="M292.003,42L300.003,54V30L292.003,42Z"
|
||||
android:fillColor="#000000"/>
|
||||
</vector>
|
|
@ -20,7 +20,9 @@
|
|||
android:layout_height="@dimen/dashboard_map_toolbar"
|
||||
android:minHeight="@dimen/dashboard_map_toolbar"
|
||||
app:contentInsetLeft="54dp"
|
||||
app:contentInsetStart="54dp">
|
||||
app:contentInsetStart="54dp"
|
||||
app:contentInsetRight="0dp"
|
||||
app:contentInsetEnd="0dp">
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
|
|
|
@ -23,7 +23,9 @@
|
|||
android:background="?attr/bg_color"
|
||||
android:minHeight="@dimen/dashboard_map_toolbar"
|
||||
app:contentInsetLeft="54dp"
|
||||
app:contentInsetStart="54dp">
|
||||
app:contentInsetStart="54dp"
|
||||
app:contentInsetRight="0dp"
|
||||
app:contentInsetEnd="0dp">
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
|
|
|
@ -22,7 +22,9 @@
|
|||
android:minHeight="@dimen/dashboard_map_toolbar"
|
||||
android:theme="?attr/toolbar_theme"
|
||||
app:contentInsetLeft="72dp"
|
||||
app:contentInsetStart="72dp">
|
||||
app:contentInsetStart="72dp"
|
||||
app:contentInsetRight="0dp"
|
||||
app:contentInsetEnd="0dp">
|
||||
|
||||
</androidx.appcompat.widget.Toolbar>
|
||||
|
||||
|
|
|
@ -7,7 +7,9 @@
|
|||
android:layout_height="@dimen/bottom_sheet_selected_item_title_height"
|
||||
android:minHeight="@dimen/bottom_sheet_selected_item_title_height"
|
||||
osmand:contentInsetLeft="54dp"
|
||||
osmand:contentInsetStart="54dp">
|
||||
osmand:contentInsetStart="54dp"
|
||||
osmand:contentInsetRight="0dp"
|
||||
osmand:contentInsetEnd="0dp">
|
||||
|
||||
<net.osmand.plus.widgets.TextViewEx
|
||||
android:id="@+id/title"
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:gravity="center">
|
||||
|
@ -31,7 +31,7 @@
|
|||
android:textColor="@color/gpx_chart_blue"
|
||||
android:textStyle="bold"
|
||||
android:ellipsize="end"
|
||||
android:singleLine="true"/>
|
||||
android:maxLines="1"/>
|
||||
|
||||
<TextView
|
||||
android:id="@+id/text_alt_units"
|
||||
|
@ -41,7 +41,7 @@
|
|||
android:textSize="@dimen/default_sub_text_size"
|
||||
android:textColor="?android:attr/textColorSecondary"
|
||||
android:ellipsize="end"
|
||||
android:singleLine="true"/>
|
||||
android:maxLines="1"/>
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
|
@ -74,7 +74,7 @@
|
|||
android:textColor="@color/gpx_chart_orange"
|
||||
android:textStyle="bold"
|
||||
android:ellipsize="end"
|
||||
android:singleLine="true"/>
|
||||
android:maxLines="1"/>
|
||||
|
||||
<TextView
|
||||
android:id="@+id/text_spd_units"
|
||||
|
@ -84,7 +84,7 @@
|
|||
android:textSize="@dimen/default_sub_text_size"
|
||||
android:textColor="?android:attr/textColorSecondary"
|
||||
android:ellipsize="end"
|
||||
android:singleLine="true"/>
|
||||
android:maxLines="1"/>
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
|
@ -109,7 +109,7 @@
|
|||
android:textColor="@color/gpx_chart_green"
|
||||
android:textStyle="bold"
|
||||
android:ellipsize="end"
|
||||
android:singleLine="true"/>
|
||||
android:maxLines="1"/>
|
||||
|
||||
<TextView
|
||||
android:id="@+id/text_slp_units"
|
||||
|
@ -119,10 +119,10 @@
|
|||
android:textSize="@dimen/default_sub_text_size"
|
||||
android:textColor="?android:attr/textColorSecondary"
|
||||
android:ellipsize="end"
|
||||
android:singleLine="true"/>
|
||||
android:maxLines="1"/>
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
</RelativeLayout>
|
||||
</FrameLayout>
|
|
@ -8,7 +8,9 @@
|
|||
android:layout_height="@dimen/dashboard_map_toolbar"
|
||||
android:background="@color/app_bar_color_light"
|
||||
app:contentInsetLeft="4dp"
|
||||
app:contentInsetStart="4dp">
|
||||
app:contentInsetStart="4dp"
|
||||
app:contentInsetRight="0dp"
|
||||
app:contentInsetEnd="0dp">
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
|
|
|
@ -16,7 +16,9 @@
|
|||
android:background="?attr/actionModeBackground"
|
||||
android:minHeight="@dimen/dashboard_map_toolbar"
|
||||
app:contentInsetLeft="54dp"
|
||||
app:contentInsetStart="54dp">
|
||||
app:contentInsetStart="54dp"
|
||||
app:contentInsetRight="0dp"
|
||||
app:contentInsetEnd="0dp">
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
|
|
|
@ -17,7 +17,9 @@
|
|||
android:minHeight="@dimen/dashboard_map_toolbar"
|
||||
android:theme="?attr/toolbar_theme"
|
||||
app:contentInsetLeft="@dimen/settings_divider_margin_start"
|
||||
app:contentInsetStart="@dimen/settings_divider_margin_start"/>
|
||||
app:contentInsetStart="@dimen/settings_divider_margin_start"
|
||||
app:contentInsetRight="0dp"
|
||||
app:contentInsetEnd="0dp"/>
|
||||
|
||||
<ScrollView
|
||||
android:layout_width="fill_parent"
|
||||
|
|
|
@ -28,7 +28,9 @@
|
|||
android:layout_height="match_parent"
|
||||
android:minHeight="@dimen/dashboard_map_toolbar"
|
||||
app:contentInsetLeft="54dp"
|
||||
app:contentInsetStart="54dp">
|
||||
app:contentInsetStart="54dp"
|
||||
app:contentInsetRight="0dp"
|
||||
app:contentInsetEnd="0dp">
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
|
|
|
@ -18,7 +18,7 @@
|
|||
style="@style/Widget.AppCompat.Button.Borderless"
|
||||
android:layout_width="52dp"
|
||||
android:layout_height="52dp"
|
||||
android:src="@drawable/ic_action_mode_back"/>
|
||||
android:src="@drawable/ic_arrow_back"/>
|
||||
|
||||
<net.osmand.plus.widgets.TextViewEx
|
||||
android:id="@+id/titleTextView"
|
||||
|
|
|
@ -17,7 +17,9 @@
|
|||
android:gravity="center_vertical"
|
||||
android:minHeight="@dimen/toolbar_height"
|
||||
osmand:contentInsetLeft="54dp"
|
||||
osmand:contentInsetStart="54dp">
|
||||
osmand:contentInsetStart="54dp"
|
||||
osmand:contentInsetRight="0dp"
|
||||
osmand:contentInsetEnd="0dp">
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
|
|
|
@ -8,7 +8,9 @@
|
|||
android:background="?attr/actionModeBackground"
|
||||
android:minHeight="@dimen/toolbar_height"
|
||||
app:contentInsetLeft="0dp"
|
||||
app:contentInsetStart="0dp">
|
||||
app:contentInsetStart="0dp"
|
||||
app:contentInsetRight="0dp"
|
||||
app:contentInsetEnd="0dp">
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
|
@ -21,7 +23,7 @@
|
|||
android:layout_width="@dimen/toolbar_height"
|
||||
android:layout_height="@dimen/toolbar_height"
|
||||
android:contentDescription="@string/access_shared_string_navigate_up"
|
||||
android:src="@drawable/ic_action_mode_back" />
|
||||
android:src="@drawable/ic_arrow_back" />
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="wrap_content"
|
||||
|
|
|
@ -7,7 +7,9 @@
|
|||
android:layout_height="wrap_content"
|
||||
android:background="?attr/actionModeBackground"
|
||||
app:contentInsetLeft="0dp"
|
||||
app:contentInsetStart="0dp">
|
||||
app:contentInsetStart="0dp"
|
||||
app:contentInsetRight="0dp"
|
||||
app:contentInsetEnd="0dp">
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
|
@ -27,7 +29,7 @@
|
|||
android:layout_width="@dimen/toolbar_height"
|
||||
android:layout_height="@dimen/toolbar_height"
|
||||
android:contentDescription="@string/access_shared_string_navigate_up"
|
||||
android:src="@drawable/ic_action_mode_back" />
|
||||
android:src="@drawable/ic_arrow_back" />
|
||||
|
||||
<net.osmand.plus.widgets.TextViewEx
|
||||
android:id="@+id/toolbar_title"
|
||||
|
|
|
@ -18,7 +18,9 @@
|
|||
android:minHeight="@dimen/dashboard_map_toolbar"
|
||||
android:theme="?attr/toolbar_theme"
|
||||
app:contentInsetLeft="72dp"
|
||||
app:contentInsetStart="72dp" />
|
||||
app:contentInsetStart="72dp"
|
||||
app:contentInsetRight="0dp"
|
||||
app:contentInsetEnd="0dp" />
|
||||
|
||||
</com.google.android.material.appbar.AppBarLayout>
|
||||
|
||||
|
|
|
@ -1,12 +1,12 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:layout_width="fill_parent"
|
||||
android:layout_height="72dp"
|
||||
android:background="?attr/bg_color"
|
||||
android:descendantFocusability="blocksDescendants"
|
||||
android:minHeight="@dimen/list_item_height"
|
||||
android:orientation="horizontal">
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:background="?attr/bg_color"
|
||||
android:descendantFocusability="blocksDescendants"
|
||||
android:minHeight="@dimen/list_item_height"
|
||||
android:orientation="horizontal">
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/icon"
|
||||
|
@ -16,9 +16,10 @@
|
|||
android:layout_marginStart="@dimen/list_content_padding"
|
||||
android:layout_marginRight="@dimen/favorites_icon_right_margin"
|
||||
android:layout_marginEnd="@dimen/favorites_icon_right_margin"
|
||||
android:layout_marginTop="@dimen/favorites_icon_top_margin"
|
||||
android:focusable="false"
|
||||
android:src="@drawable/ic_map"/>
|
||||
android:layout_centerVertical="true"
|
||||
android:src="@drawable/ic_map"
|
||||
android:contentDescription="@string/map_downloaded" />
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
|
@ -39,7 +40,7 @@
|
|||
android:lines="1"
|
||||
android:textColor="?android:textColorPrimary"
|
||||
android:textSize="@dimen/default_list_text_size"
|
||||
tools:text="Belarus"/>
|
||||
tools:text="Belarus" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/subheaderTextView"
|
||||
|
@ -50,7 +51,7 @@
|
|||
android:textColor="?android:textColorSecondary"
|
||||
android:textSize="@dimen/default_sub_text_size"
|
||||
tools:text="11.1 MB"
|
||||
tools:visibility="gone"/>
|
||||
tools:visibility="gone" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/descriptionTextView"
|
||||
|
@ -62,7 +63,7 @@
|
|||
android:lines="1"
|
||||
android:textColor="?android:textColorSecondary"
|
||||
android:textSize="@dimen/default_sub_text_size"
|
||||
tools:text="Last Update: 1 Dec 2015"/>
|
||||
tools:text="Last Update: 1 Dec 2015" />
|
||||
</LinearLayout>
|
||||
|
||||
<ImageButton
|
||||
|
@ -76,7 +77,7 @@
|
|||
android:layout_gravity="center_vertical"
|
||||
android:background="?attr/dashboard_button"
|
||||
android:focusable="false"
|
||||
android:src="@drawable/ic_overflow_menu_white"/>
|
||||
android:src="@drawable/ic_overflow_menu_white" />
|
||||
|
||||
<View
|
||||
android:id="@+id/divider"
|
||||
|
@ -85,5 +86,5 @@
|
|||
android:layout_alignParentBottom="true"
|
||||
android:layout_marginLeft="56dp"
|
||||
android:layout_marginStart="56dp"
|
||||
android:background="?attr/dashboard_divider"/>
|
||||
android:background="?attr/dashboard_divider" />
|
||||
</RelativeLayout>
|
|
@ -37,7 +37,8 @@
|
|||
|
||||
<FrameLayout
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="@dimen/card_row_min_height"
|
||||
android:layout_height="wrap_content"
|
||||
android:minHeight="@dimen/card_row_min_height"
|
||||
android:layout_gravity="center_vertical"
|
||||
android:layout_weight="1">
|
||||
|
||||
|
|
|
@ -548,7 +548,9 @@
|
|||
android:layout_height="@dimen/dashboard_map_toolbar"
|
||||
android:background="@color/app_bar_color_light"
|
||||
app:contentInsetLeft="4dp"
|
||||
app:contentInsetStart="4dp">
|
||||
app:contentInsetStart="4dp"
|
||||
app:contentInsetRight="0dp"
|
||||
app:contentInsetEnd="0dp">
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
|
|
|
@ -18,7 +18,7 @@
|
|||
style="@style/Widget.AppCompat.Button.Borderless"
|
||||
android:layout_width="52dp"
|
||||
android:layout_height="52dp"
|
||||
android:src="@drawable/ic_action_mode_back"/>
|
||||
android:src="@drawable/ic_arrow_back"/>
|
||||
|
||||
<net.osmand.plus.widgets.TextViewEx
|
||||
android:id="@+id/titleTextView"
|
||||
|
|
|
@ -18,7 +18,8 @@
|
|||
android:theme="?attr/toolbar_theme"
|
||||
app:contentInsetLeft="72dp"
|
||||
app:contentInsetStart="72dp"
|
||||
/>
|
||||
app:contentInsetRight="0dp"
|
||||
app:contentInsetEnd="0dp"/>
|
||||
</com.google.android.material.appbar.AppBarLayout>
|
||||
|
||||
<include
|
||||
|
|
|
@ -20,7 +20,10 @@
|
|||
android:layout_height="wrap_content"
|
||||
android:minHeight="@dimen/list_item_height"
|
||||
android:paddingLeft="@dimen/list_content_padding"
|
||||
android:paddingStart="@dimen/list_content_padding">
|
||||
android:paddingStart="@dimen/list_content_padding"
|
||||
android:paddingRight="0dp"
|
||||
android:paddingEnd="0dp">
|
||||
|
||||
<CheckBox
|
||||
android:id="@+id/check_local_index"
|
||||
android:layout_width="wrap_content"
|
||||
|
|
|
@ -40,8 +40,8 @@
|
|||
android:layout_marginLeft="@dimen/context_menu_buttons_padding_bottom"
|
||||
android:layout_marginRight="@dimen/context_menu_buttons_padding_bottom"
|
||||
android:orientation="horizontal"
|
||||
android:paddingStart="40dp"
|
||||
android:paddingLeft="40dp"
|
||||
android:paddingStart="@dimen/route_info_app_modes_padding"
|
||||
android:paddingLeft="@dimen/route_info_app_modes_padding"
|
||||
android:paddingEnd="@dimen/route_info_app_modes_padding"
|
||||
android:paddingRight="@dimen/route_info_app_modes_padding"
|
||||
android:layout_marginStart="@dimen/context_menu_buttons_padding_bottom"
|
||||
|
|
|
@ -16,6 +16,8 @@
|
|||
android:visibility="gone"
|
||||
app:contentInsetLeft="54dp"
|
||||
app:contentInsetStart="54dp"
|
||||
app:contentInsetRight="0dp"
|
||||
app:contentInsetEnd="0dp"
|
||||
tools:visibility="visible">
|
||||
|
||||
<LinearLayout
|
||||
|
|
|
@ -25,7 +25,9 @@
|
|||
android:minHeight="@dimen/dashboard_map_toolbar"
|
||||
android:theme="?attr/toolbar_theme"
|
||||
app:contentInsetLeft="72dp"
|
||||
app:contentInsetStart="72dp">
|
||||
app:contentInsetStart="72dp"
|
||||
app:contentInsetRight="0dp"
|
||||
app:contentInsetEnd="0dp">
|
||||
|
||||
</androidx.appcompat.widget.Toolbar>
|
||||
|
||||
|
|
|
@ -7,6 +7,8 @@
|
|||
android:minHeight="@dimen/dashboard_map_toolbar"
|
||||
osmand:contentInsetLeft="0dp"
|
||||
osmand:contentInsetStart="0dp"
|
||||
osmand:contentInsetRight="0dp"
|
||||
osmand:contentInsetEnd="0dp"
|
||||
osmand:theme="@style/ThemeOverlay.AppCompat.ActionBar">
|
||||
|
||||
<LinearLayout
|
||||
|
@ -22,7 +24,7 @@
|
|||
android:layout_width="@dimen/toolbar_height"
|
||||
android:layout_height="@dimen/toolbar_height"
|
||||
android:contentDescription="@string/access_shared_string_navigate_up"
|
||||
android:src="@drawable/ic_action_mode_back"
|
||||
android:src="@drawable/ic_arrow_back"
|
||||
android:tint="?attr/default_icon_color" />
|
||||
|
||||
<LinearLayout
|
||||
|
|
|
@ -6,6 +6,8 @@
|
|||
android:layout_height="wrap_content"
|
||||
osmand:contentInsetLeft="0dp"
|
||||
osmand:contentInsetStart="0dp"
|
||||
osmand:contentInsetRight="0dp"
|
||||
osmand:contentInsetEnd="0dp"
|
||||
osmand:theme="@style/ThemeOverlay.AppCompat.ActionBar">
|
||||
|
||||
<LinearLayout
|
||||
|
@ -27,7 +29,7 @@
|
|||
android:layout_width="@dimen/toolbar_height"
|
||||
android:layout_height="@dimen/toolbar_height"
|
||||
android:contentDescription="@string/access_shared_string_navigate_up"
|
||||
android:src="@drawable/ic_action_mode_back"
|
||||
android:src="@drawable/ic_arrow_back"
|
||||
android:tint="?attr/default_icon_color" />
|
||||
|
||||
<net.osmand.plus.widgets.TextViewEx
|
||||
|
|
|
@ -7,7 +7,9 @@
|
|||
android:background="?attr/actionModeBackground"
|
||||
android:minHeight="@dimen/toolbar_height"
|
||||
osmand:contentInsetLeft="0dp"
|
||||
osmand:contentInsetStart="0dp">
|
||||
osmand:contentInsetStart="0dp"
|
||||
osmand:contentInsetRight="0dp"
|
||||
osmand:contentInsetEnd="0dp">
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
|
@ -21,7 +23,7 @@
|
|||
android:layout_width="@dimen/toolbar_height"
|
||||
android:layout_height="@dimen/toolbar_height"
|
||||
android:contentDescription="@string/access_shared_string_navigate_up"
|
||||
android:src="@drawable/ic_action_mode_back"
|
||||
android:src="@drawable/ic_arrow_back"
|
||||
android:tint="?attr/app_bar_primary_item_color"/>
|
||||
|
||||
<LinearLayout
|
||||
|
|
|
@ -6,6 +6,8 @@
|
|||
android:layout_height="wrap_content"
|
||||
osmand:contentInsetLeft="0dp"
|
||||
osmand:contentInsetStart="0dp"
|
||||
osmand:contentInsetRight="0dp"
|
||||
osmand:contentInsetEnd="0dp"
|
||||
osmand:theme="@style/ThemeOverlay.AppCompat.ActionBar">
|
||||
|
||||
<LinearLayout
|
||||
|
@ -27,7 +29,7 @@
|
|||
android:layout_width="@dimen/toolbar_height"
|
||||
android:layout_height="@dimen/toolbar_height"
|
||||
android:contentDescription="@string/access_shared_string_navigate_up"
|
||||
android:src="@drawable/ic_action_mode_back"
|
||||
android:src="@drawable/ic_arrow_back"
|
||||
android:tint="?attr/default_icon_color" />
|
||||
|
||||
<LinearLayout
|
||||
|
|
|
@ -31,6 +31,8 @@
|
|||
android:contentInsetLeft="72dp"
|
||||
app:contentInsetLeft="72dp"
|
||||
app:contentInsetStart="72dp"
|
||||
app:contentInsetRight="0dp"
|
||||
app:contentInsetEnd="0dp"
|
||||
android:background="?attr/actionModeBackground"/>
|
||||
|
||||
<RelativeLayout
|
||||
|
|
|
@ -18,7 +18,9 @@
|
|||
android:minHeight="@dimen/dashboard_map_toolbar"
|
||||
android:theme="?attr/toolbar_theme"
|
||||
app:contentInsetLeft="54dp"
|
||||
app:contentInsetStart="54dp">
|
||||
app:contentInsetStart="54dp"
|
||||
app:contentInsetRight="0dp"
|
||||
app:contentInsetEnd="0dp">
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
|
|
|
@ -19,7 +19,9 @@
|
|||
android:minHeight="@dimen/dashboard_map_toolbar"
|
||||
android:theme="?attr/toolbar_theme"
|
||||
app:contentInsetLeft="54dp"
|
||||
app:contentInsetStart="54dp">
|
||||
app:contentInsetStart="54dp"
|
||||
app:contentInsetRight="0dp"
|
||||
app:contentInsetEnd="0dp">
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
|
|
|
@ -24,7 +24,9 @@
|
|||
android:minHeight="@dimen/dashboard_map_toolbar"
|
||||
android:theme="?attr/toolbar_theme"
|
||||
app:contentInsetLeft="54dp"
|
||||
app:contentInsetStart="54dp">
|
||||
app:contentInsetStart="54dp"
|
||||
app:contentInsetRight="0dp"
|
||||
app:contentInsetEnd="0dp">
|
||||
|
||||
<include layout="@layout/search_text_layout"/>
|
||||
|
||||
|
@ -40,6 +42,8 @@
|
|||
android:visibility="gone"
|
||||
app:contentInsetLeft="54dp"
|
||||
app:contentInsetStart="54dp"
|
||||
app:contentInsetRight="0dp"
|
||||
app:contentInsetEnd="0dp"
|
||||
tools:visibility="visible">
|
||||
|
||||
<LinearLayout
|
||||
|
|
|
@ -18,7 +18,9 @@
|
|||
android:minHeight="@dimen/dashboard_map_toolbar"
|
||||
android:theme="?attr/toolbar_theme"
|
||||
app:contentInsetLeft="54dp"
|
||||
app:contentInsetStart="54dp">
|
||||
app:contentInsetStart="54dp"
|
||||
app:contentInsetRight="0dp"
|
||||
app:contentInsetEnd="0dp">
|
||||
|
||||
<include layout="@layout/search_text_layout"/>
|
||||
|
||||
|
|
|
@ -21,7 +21,9 @@
|
|||
android:descendantFocusability="blocksDescendants"
|
||||
android:orientation="horizontal"
|
||||
android:paddingLeft="@dimen/list_content_padding"
|
||||
android:paddingStart="@dimen/list_content_padding">
|
||||
android:paddingStart="@dimen/list_content_padding"
|
||||
android:paddingRight="0dp"
|
||||
android:paddingEnd="0dp">
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/icon"
|
||||
|
|
|
@ -18,7 +18,9 @@
|
|||
android:minHeight="@dimen/dashboard_map_toolbar"
|
||||
android:theme="?attr/toolbar_theme"
|
||||
app:contentInsetLeft="54dp"
|
||||
app:contentInsetStart="54dp">
|
||||
app:contentInsetStart="54dp"
|
||||
app:contentInsetRight="0dp"
|
||||
app:contentInsetEnd="0dp">
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
|
|
|
@ -17,7 +17,9 @@
|
|||
android:layout_height="match_parent"
|
||||
android:theme="?attr/actionBarStyle"
|
||||
app:contentInsetLeft="54dp"
|
||||
app:contentInsetStart="54dp">
|
||||
app:contentInsetStart="54dp"
|
||||
app:contentInsetRight="0dp"
|
||||
app:contentInsetEnd="0dp">
|
||||
|
||||
<TextView
|
||||
android:id="@+id/title"
|
||||
|
|
|
@ -36,6 +36,8 @@
|
|||
android:contentInsetLeft="0dp"
|
||||
app:contentInsetLeft="0dp"
|
||||
app:contentInsetStart="0dp"
|
||||
app:contentInsetRight="0dp"
|
||||
app:contentInsetEnd="0dp"
|
||||
android:layout_width="fill_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="bottom"/>
|
||||
|
|
|
@ -17,7 +17,9 @@
|
|||
android:gravity="center_vertical"
|
||||
android:minHeight="@dimen/toolbar_height"
|
||||
osmand:contentInsetLeft="54dp"
|
||||
osmand:contentInsetStart="54dp">
|
||||
osmand:contentInsetStart="54dp"
|
||||
osmand:contentInsetRight="0dp"
|
||||
osmand:contentInsetEnd="0dp">
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
|
|
|
@ -22,7 +22,9 @@
|
|||
android:background="?attr/wikivoyage_bg_color"
|
||||
android:minHeight="@dimen/dashboard_map_toolbar"
|
||||
osmand:contentInsetLeft="54dp"
|
||||
osmand:contentInsetStart="54dp">
|
||||
osmand:contentInsetStart="54dp"
|
||||
app:contentInsetRight="0dp"
|
||||
app:contentInsetEnd="0dp">
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
|
|
|
@ -34,6 +34,7 @@
|
|||
<attr name="ctx_menu_divider" format="reference" />
|
||||
<attr name="bottom_menu_view_bg" format="reference" />
|
||||
<attr name="left_menu_view_bg" format="reference" />
|
||||
<attr name="right_menu_view_bg" format="reference" />
|
||||
<attr name="stroked_buttons_and_links_outline" format="color" />
|
||||
|
||||
<attr name="dashboard_divider" format="reference" />
|
||||
|
|
|
@ -11,6 +11,16 @@
|
|||
Thx - Hardy
|
||||
|
||||
-->
|
||||
<string name="release_3_7">
|
||||
• New offline Slope maps\n\n
|
||||
• Full customization of Favorites and GPX Waypoints – custom colors, icons, shapes\n\n
|
||||
• Customize items order in Context Menu, Configure Map, Drawer\n\n
|
||||
• Wikipedia as a separate layer in Configure map, select only needed languages\n\n
|
||||
• Create your own POI filter/maps with total flexibility\n\n
|
||||
• Added options to restore settings for custom profiles\n\n
|
||||
• Full GPX routes from Navigation support traffic lanes and complete turn instructions\n\n
|
||||
• Fix UI sizes on tablets\n\n
|
||||
• Fix bugs with RTL\n\n</string>
|
||||
<string name="navigation_profiles_item">Navigation profiles</string>
|
||||
<string name="legend_item_description">The guide to a map\'s symbology</string>
|
||||
<string name="osmand_purchases_item">OsmAnd purchases</string>
|
||||
|
|
|
@ -20,17 +20,19 @@
|
|||
<item name="typeface">@string/font_roboto_medium</item>
|
||||
<item name="android:textColor">?android:textColorSecondary</item>
|
||||
<item name="android:layout_marginLeft">@dimen/subHeaderMarginLeft</item>
|
||||
<item name="android:layout_marginStart">@dimen/subHeaderMarginLeft</item>
|
||||
</style>
|
||||
|
||||
<style name="DashboardGeneralButton">
|
||||
<item name="android:layout_width">wrap_content</item>
|
||||
<item name="android:gravity">center_vertical|right</item>
|
||||
<item name="android:gravity">center_vertical|end</item>
|
||||
<item name="android:layout_height">@dimen/showAllButtonHeight</item>
|
||||
<item name="android:layout_gravity">center_vertical</item>
|
||||
<item name="android:textSize">@dimen/default_sub_text_size</item>
|
||||
<item name="typeface">@string/font_roboto_medium</item>
|
||||
<item name="android:textColor">?attr/dashboard_general_button_text_color</item>
|
||||
<item name="android:layout_marginRight">@dimen/showAllButtonMarginRight</item>
|
||||
<item name="android:layout_marginEnd">@dimen/showAllButtonMarginRight</item>
|
||||
<item name="android:background">?attr/dashboard_button</item>
|
||||
</style>
|
||||
|
||||
|
@ -162,7 +164,7 @@
|
|||
<item name="ctx_menu_controller_text_color">@drawable/context_menu_controller_text_color_light</item>
|
||||
<item name="ctx_menu_divider">@color/ctx_menu_buttons_divider_light</item>
|
||||
<item name="search_background">@color/activity_background_color_dark</item>
|
||||
<item name="actionModeCloseDrawable">@drawable/ic_action_mode_back</item>
|
||||
<item name="actionModeCloseDrawable">@drawable/ic_arrow_back</item>
|
||||
<item name="actionModeStyle">@style/WhiteActionMode</item>
|
||||
<item name="actionMenuTextColor">@color/color_white</item>
|
||||
<item name="switch_ex_background">@drawable/switch_ex_background_light</item>
|
||||
|
@ -194,7 +196,7 @@
|
|||
|
||||
<item name="android:actionModeBackground">@color/app_bar_color_light</item>
|
||||
<item name="android:actionBarStyle">@style/Widget.Styled.ActionBarLight</item>
|
||||
<item name="android:actionModeCloseDrawable">@drawable/ic_action_mode_back</item>
|
||||
<item name="android:actionModeCloseDrawable">@drawable/ic_arrow_back</item>
|
||||
<item name="android:actionModeStyle">@style/WhiteActionMode</item>
|
||||
<item name="android:actionMenuTextColor">@color/color_white</item>
|
||||
<item name="actionOverflowButtonStyle">@style/OverflowMenuButton</item>
|
||||
|
@ -430,6 +432,7 @@
|
|||
<item name="bg_map_context_menu">@drawable/bg_map_context_menu_dark</item>
|
||||
<item name="bottom_menu_view_bg">@drawable/bg_bottom_menu_dark</item>
|
||||
<item name="left_menu_view_bg">@drawable/bg_left_menu_dark</item>
|
||||
<item name="right_menu_view_bg">@drawable/bg_right_menu_dark</item>
|
||||
<item name="bg_point_editor_view">@drawable/bg_point_editor_view_dark</item>
|
||||
<item name="dashboard_divider">@color/divider_color_dark</item>
|
||||
<item name="divider_color">@color/divider_color_dark</item>
|
||||
|
@ -683,7 +686,9 @@
|
|||
<style name="create_poi_text_field">
|
||||
<item name="android:layout_marginTop">8dp</item>
|
||||
<item name="android:layout_marginRight">16dp</item>
|
||||
<item name="android:layout_marginEnd">16dp</item>
|
||||
<item name="android:layout_marginLeft">68dp</item>
|
||||
<item name="android:layout_marginStart">68dp</item>
|
||||
<item name="android:layout_width">match_parent</item>
|
||||
<item name="android:layout_height">wrap_content</item>
|
||||
<item name="android:layout_weight">1</item>
|
||||
|
@ -692,6 +697,7 @@
|
|||
<style name="edit_poi_imageview_style">
|
||||
<item name="android:layout_marginTop">16dp</item>
|
||||
<item name="android:layout_marginLeft">16dp</item>
|
||||
<item name="android:layout_marginStart">16dp</item>
|
||||
<item name="android:layout_width">wrap_content</item>
|
||||
<item name="android:layout_height">wrap_content</item>
|
||||
</style>
|
||||
|
|
|
@ -14,6 +14,7 @@ import android.graphics.Matrix;
|
|||
import android.graphics.Paint;
|
||||
import android.graphics.PointF;
|
||||
import android.graphics.Typeface;
|
||||
import android.graphics.drawable.BitmapDrawable;
|
||||
import android.graphics.drawable.ClipDrawable;
|
||||
import android.graphics.drawable.Drawable;
|
||||
import android.graphics.drawable.LayerDrawable;
|
||||
|
@ -662,6 +663,13 @@ public class AndroidUtils {
|
|||
}
|
||||
}
|
||||
|
||||
public static Drawable[] getCompoundDrawables(@NonNull TextView tv){
|
||||
if (isSupportRTL()) {
|
||||
return tv.getCompoundDrawablesRelative();
|
||||
}
|
||||
return tv.getCompoundDrawables();
|
||||
}
|
||||
|
||||
public static void setPadding(View view, int start, int top, int end, int bottom) {
|
||||
if (isSupportRTL()) {
|
||||
view.setPaddingRelative(start, top, end, bottom);
|
||||
|
@ -684,14 +692,67 @@ public class AndroidUtils {
|
|||
}
|
||||
|
||||
public static int getNavigationIconResId(@NonNull Context ctx) {
|
||||
return getLayoutDirection(ctx) == ViewCompat.LAYOUT_DIRECTION_RTL ?
|
||||
R.drawable.ic_arrow_forward : R.drawable.ic_arrow_back;
|
||||
return isLayoutRtl(ctx) ? R.drawable.ic_arrow_forward : R.drawable.ic_arrow_back;
|
||||
}
|
||||
|
||||
public static Drawable getDrawableForDirection(@NonNull Context ctx,
|
||||
@NonNull Drawable drawable) {
|
||||
return isLayoutRtl(ctx) ? getMirroredDrawable(ctx, drawable) : drawable;
|
||||
}
|
||||
|
||||
public static Drawable getMirroredDrawable(@NonNull Context ctx,
|
||||
@NonNull Drawable drawable) {
|
||||
Bitmap bitmap = drawableToBitmap(drawable);
|
||||
return new BitmapDrawable(ctx.getResources(), flipBitmapHorizontally(bitmap));
|
||||
}
|
||||
|
||||
public static Bitmap drawableToBitmap(Drawable drawable) {
|
||||
if (drawable instanceof BitmapDrawable) {
|
||||
BitmapDrawable bitmapDrawable = (BitmapDrawable) drawable;
|
||||
if(bitmapDrawable.getBitmap() != null) {
|
||||
return bitmapDrawable.getBitmap();
|
||||
}
|
||||
}
|
||||
|
||||
Bitmap bitmap = null;
|
||||
if(drawable.getIntrinsicWidth() <= 0 || drawable.getIntrinsicHeight() <= 0) {
|
||||
bitmap = Bitmap.createBitmap(1, 1, Bitmap.Config.ARGB_8888);
|
||||
} else {
|
||||
bitmap = Bitmap.createBitmap(drawable.getIntrinsicWidth(), drawable.getIntrinsicHeight(), Bitmap.Config.ARGB_8888);
|
||||
}
|
||||
|
||||
Canvas canvas = new Canvas(bitmap);
|
||||
drawable.setBounds(0, 0, canvas.getWidth(), canvas.getHeight());
|
||||
drawable.draw(canvas);
|
||||
return bitmap;
|
||||
}
|
||||
|
||||
public static Bitmap flipBitmapHorizontally(Bitmap source) {
|
||||
Matrix matrix = new Matrix();
|
||||
matrix.preScale(-1.0f, 1.0f, source.getWidth() / 2f, source.getHeight() / 2f);
|
||||
return Bitmap.createBitmap(source, 0, 0, source.getWidth(), source.getHeight(), matrix, true);
|
||||
}
|
||||
|
||||
public static void setTextHorizontalGravity(@NonNull TextView tv, int hGravity) {
|
||||
if (tv.getContext() != null) {
|
||||
boolean isLayoutRtl = AndroidUtils.isLayoutRtl(tv.getContext());
|
||||
int gravity = Gravity.LEFT;
|
||||
if (isLayoutRtl && (hGravity == Gravity.START)
|
||||
|| !isLayoutRtl && hGravity == Gravity.END) {
|
||||
gravity = Gravity.RIGHT;
|
||||
}
|
||||
tv.setGravity(gravity);
|
||||
}
|
||||
}
|
||||
|
||||
public static boolean isSupportRTL() {
|
||||
return Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR1;
|
||||
}
|
||||
|
||||
public static boolean isLayoutRtl(Context ctx) {
|
||||
return isSupportRTL() && getLayoutDirection(ctx) == ViewCompat.LAYOUT_DIRECTION_RTL;
|
||||
}
|
||||
|
||||
public static ArrayList<View> getChildrenViews(ViewGroup vg) {
|
||||
ArrayList<View> result = new ArrayList<>();
|
||||
for (int i = 0; i < vg.getChildCount(); i++) {
|
||||
|
|
|
@ -145,7 +145,7 @@ public class SecondSplashScreenFragment extends BaseOsmAndFragment {
|
|||
} else {
|
||||
elementsPaddingLeft = getNavigationBarWidth();
|
||||
}
|
||||
logoLayoutParams.setMargins(0, logoMarginTop, 0, 0);
|
||||
AndroidUtils.setMargins(logoLayoutParams, 0, logoMarginTop, 0, 0);
|
||||
logo.setPadding(elementsPaddingLeft, 0, elementsPaddingRight, 0);
|
||||
logo.setLayoutParams(logoLayoutParams);
|
||||
view.addView(logo);
|
||||
|
|
|
@ -117,7 +117,7 @@ public class AppInitializer implements IProgress {
|
|||
private static final String VERSION_INSTALLED = "VERSION_INSTALLED"; //$NON-NLS-1$
|
||||
private static final String EXCEPTION_FILE_SIZE = "EXCEPTION_FS"; //$NON-NLS-1$
|
||||
|
||||
public static final String LATEST_CHANGES_URL = "https://osmand.net/blog/osmand-3-6-released";
|
||||
public static final String LATEST_CHANGES_URL = "https://osmand.net/blog/osmand-3-7-released";
|
||||
// public static final String LATEST_CHANGES_URL = null; // not enough to read
|
||||
public static final int APP_EXIT_CODE = 4;
|
||||
public static final String APP_EXIT_KEY = "APP_EXIT_KEY";
|
||||
|
|
|
@ -560,6 +560,7 @@ public class ContextMenuAdapter {
|
|||
boolean onIntegerValueChangedListener(int newValue);
|
||||
}
|
||||
|
||||
|
||||
public static abstract class OnRowItemClick implements ItemClickListener {
|
||||
|
||||
//boolean return type needed to describe if drawer needed to be close or not
|
||||
|
|
|
@ -37,6 +37,7 @@ public class ContextMenuItem {
|
|||
private final ContextMenuAdapter.ItemClickListener itemClickListener;
|
||||
private final ContextMenuAdapter.OnIntegerValueChangedListener integerListener;
|
||||
private final ContextMenuAdapter.ProgressListener progressListener;
|
||||
private final OnItemDeleteAction itemDeleteAction;
|
||||
private final boolean hideDivider;
|
||||
private final boolean hideCompoundButton;
|
||||
private final int minHeight;
|
||||
|
@ -61,6 +62,7 @@ public class ContextMenuItem {
|
|||
ContextMenuAdapter.ItemClickListener itemClickListener,
|
||||
ContextMenuAdapter.OnIntegerValueChangedListener integerListener,
|
||||
ContextMenuAdapter.ProgressListener progressListener,
|
||||
OnItemDeleteAction itemDeleteAction,
|
||||
boolean hideDivider,
|
||||
boolean hideCompoundButton,
|
||||
int minHeight,
|
||||
|
@ -85,6 +87,7 @@ public class ContextMenuItem {
|
|||
this.integerListener = integerListener;
|
||||
this.progressListener = progressListener;
|
||||
this.hideDivider = hideDivider;
|
||||
this.itemDeleteAction = itemDeleteAction;
|
||||
this.hideCompoundButton = hideCompoundButton;
|
||||
this.minHeight = minHeight;
|
||||
this.tag = tag;
|
||||
|
@ -170,6 +173,8 @@ public class ContextMenuItem {
|
|||
return description;
|
||||
}
|
||||
|
||||
public OnItemDeleteAction getItemDeleteAction() { return itemDeleteAction; }
|
||||
|
||||
public ContextMenuAdapter.ItemClickListener getItemClickListener() {
|
||||
return itemClickListener;
|
||||
}
|
||||
|
@ -273,6 +278,7 @@ public class ContextMenuItem {
|
|||
private ContextMenuAdapter.ItemClickListener mItemClickListener = null;
|
||||
private ContextMenuAdapter.OnIntegerValueChangedListener mIntegerListener = null;
|
||||
private ContextMenuAdapter.ProgressListener mProgressListener = null;
|
||||
private OnItemDeleteAction itemDeleteAction;
|
||||
private boolean mSkipPaintingWithoutColor;
|
||||
private boolean mHideDivider;
|
||||
private boolean mHideCompoundButton;
|
||||
|
@ -374,6 +380,10 @@ public class ContextMenuItem {
|
|||
return this;
|
||||
}
|
||||
|
||||
public void setItemDeleteAction(OnItemDeleteAction itemDeleteAction) {
|
||||
this.itemDeleteAction = itemDeleteAction;
|
||||
}
|
||||
|
||||
public ItemBuilder hideDivider(boolean hideDivider) {
|
||||
mHideDivider = hideDivider;
|
||||
return this;
|
||||
|
@ -406,8 +416,14 @@ public class ContextMenuItem {
|
|||
public ContextMenuItem createItem() {
|
||||
return new ContextMenuItem(mTitleId, mTitle, mIcon, mColorRes, mSecondaryIcon,
|
||||
mSelected, mProgress, mLayout, mLoading, mIsCategory, mIsClickable, mSkipPaintingWithoutColor,
|
||||
mPosition, mOrder, mDescription, mItemClickListener, mIntegerListener, mProgressListener,
|
||||
mPosition, mOrder, mDescription, mItemClickListener, mIntegerListener, mProgressListener, itemDeleteAction,
|
||||
mHideDivider, mHideCompoundButton, mMinHeight, mTag, mId);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// when action is deleted or reset
|
||||
public interface OnItemDeleteAction {
|
||||
boolean itemWasDeleted(boolean profileOnly);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -23,7 +23,6 @@ import android.view.WindowManager;
|
|||
import android.widget.CompoundButton;
|
||||
import android.widget.ImageView;
|
||||
import android.widget.LinearLayout;
|
||||
import android.widget.SeekBar;
|
||||
import android.widget.TextView;
|
||||
|
||||
import androidx.annotation.ColorInt;
|
||||
|
@ -620,10 +619,10 @@ public class UiUtilities {
|
|||
return new ContextThemeWrapper(context, nightMode ? darkStyle : lightStyle);
|
||||
}
|
||||
|
||||
public static void setMargins(View v, int l, int t, int r, int b) {
|
||||
public static void setMargins(View v, int s, int t, int e, int b) {
|
||||
if (v.getLayoutParams() instanceof ViewGroup.MarginLayoutParams) {
|
||||
ViewGroup.MarginLayoutParams p = (ViewGroup.MarginLayoutParams) v.getLayoutParams();
|
||||
p.setMargins(l, t, r, b);
|
||||
AndroidUtils.setMargins(p, s, t, e, b);
|
||||
v.requestLayout();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1951,11 +1951,13 @@ public class MapActivity extends OsmandActionBarActivity implements DownloadEven
|
|||
if (settings.DO_NOT_USE_ANIMATIONS.get()) {
|
||||
if (event.getAction() == MotionEvent.ACTION_DOWN) {
|
||||
if (drawerLayout.isDrawerOpen(Gravity.START)) {
|
||||
int width = AndroidUtils.dpToPx(this, 280);
|
||||
if (event.getRawX() > width) {
|
||||
int drawerWidth = AndroidUtils.dpToPx(this, 280);
|
||||
int screenWidth = AndroidUtils.getScreenWidth(MapActivity.this);
|
||||
boolean isLayoutRtl = AndroidUtils.isLayoutRtl(app);
|
||||
if ((!isLayoutRtl && event.getRawX() > drawerWidth)
|
||||
|| (isLayoutRtl && event.getRawX() <= screenWidth - drawerWidth)) {
|
||||
closeDrawer();
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -117,7 +117,7 @@ public class StartGPSStatus extends OsmAndAction {
|
|||
final AppCompatCheckBox cb = new AppCompatCheckBox(activity);
|
||||
cb.setText(R.string.shared_string_remember_my_choice);
|
||||
LinearLayout.LayoutParams lp = new LinearLayout.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT);
|
||||
lp.setMargins(dp24, dp8, dp8, dp24);
|
||||
AndroidUtils.setMargins(lp, dp24, dp8, dp8, dp24);
|
||||
cb.setLayoutParams(lp);
|
||||
cb.setPadding(dp8, 0, 0, 0);
|
||||
int textColorPrimary = ContextCompat.getColor(activity, isNightMode() ? R.color.text_color_primary_dark : R.color.text_color_primary_light);
|
||||
|
|
|
@ -287,7 +287,8 @@ public abstract class ContextMenuFragment extends BaseOsmAndFragment {
|
|||
currentMenuState = MenuState.FULL_SCREEN;
|
||||
if (isSingleFragment()) {
|
||||
final TypedValue typedValueAttr = new TypedValue();
|
||||
mapActivity.getTheme().resolveAttribute(R.attr.left_menu_view_bg, typedValueAttr, true);
|
||||
int bgAttrId = AndroidUtils.isLayoutRtl(app) ? R.attr.right_menu_view_bg : R.attr.left_menu_view_bg;
|
||||
mapActivity.getTheme().resolveAttribute(bgAttrId, typedValueAttr, true);
|
||||
mainView.setBackgroundResource(typedValueAttr.resourceId);
|
||||
mainView.setLayoutParams(new FrameLayout.LayoutParams(getLandscapeWidth(), ViewGroup.LayoutParams.MATCH_PARENT));
|
||||
} else {
|
||||
|
|
|
@ -16,6 +16,7 @@ import android.view.View;
|
|||
import android.view.View.OnClickListener;
|
||||
import android.view.ViewGroup;
|
||||
import android.view.Window;
|
||||
import android.widget.ImageView;
|
||||
import android.widget.LinearLayout;
|
||||
import android.widget.ProgressBar;
|
||||
import android.widget.TextView;
|
||||
|
@ -187,7 +188,9 @@ public abstract class ChoosePlanDialogFragment extends BaseOsmAndDialogFragment
|
|||
}
|
||||
View view = inflate(R.layout.purchase_dialog_fragment, container);
|
||||
|
||||
view.findViewById(R.id.button_back).setOnClickListener(new OnClickListener() {
|
||||
ImageView buttonBack = view.findViewById(R.id.button_back);
|
||||
buttonBack.setImageResource(AndroidUtils.getNavigationIconResId(ctx));
|
||||
buttonBack.setOnClickListener(new OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
dismiss();
|
||||
|
|
|
@ -29,7 +29,8 @@ public class DashSearchFragment extends DashBaseFragment {
|
|||
View view = getActivity().getLayoutInflater().inflate(R.layout.dash_search_fragment, container, false);
|
||||
|
||||
TextView searchFor = (TextView) view.findViewById(R.id.search_for);
|
||||
searchFor.setCompoundDrawablesWithIntrinsicBounds(getMyApplication().getUIUtilities().getThemedIcon(R.drawable.ic_action_search_dark), null, null, null);
|
||||
AndroidUtils.setCompoundDrawablesWithIntrinsicBounds(searchFor,
|
||||
getMyApplication().getUIUtilities().getThemedIcon(R.drawable.ic_action_search_dark), null, null, null);
|
||||
searchFor.setCompoundDrawablePadding(AndroidUtils.dpToPx(getActivity(), 16f));
|
||||
|
||||
view.findViewById(R.id.search_card).setOnClickListener(new View.OnClickListener() {
|
||||
|
|
|
@ -395,9 +395,9 @@ public class DashboardOnMap implements ObservableScrollViewCallbacks, IRouteInfo
|
|||
private FrameLayout.LayoutParams getActionButtonLayoutParams(int btnSizePx) {
|
||||
int topPadPx = mapActivity.getResources().getDimensionPixelSize(R.dimen.dashboard_map_top_padding);
|
||||
FrameLayout.LayoutParams params = new FrameLayout.LayoutParams(btnSizePx, btnSizePx);
|
||||
int marginRight = btnSizePx / 4;
|
||||
params.setMargins(0, landscape ? 0 : topPadPx - 2 * btnSizePx, marginRight, landscape ? marginRight : 0);
|
||||
params.gravity = landscape ? Gravity.BOTTOM | Gravity.RIGHT : Gravity.TOP | Gravity.RIGHT;
|
||||
int marginEnd = btnSizePx / 4;
|
||||
AndroidUtils.setMargins(params, 0, landscape ? 0 : topPadPx - 2 * btnSizePx, marginEnd, landscape ? marginEnd : 0);
|
||||
params.gravity = landscape ? Gravity.BOTTOM | Gravity.END : Gravity.TOP | Gravity.END;
|
||||
return params;
|
||||
}
|
||||
|
||||
|
|
|
@ -14,6 +14,7 @@ import androidx.annotation.NonNull;
|
|||
import androidx.appcompat.widget.Toolbar;
|
||||
import androidx.fragment.app.DialogFragment;
|
||||
|
||||
import net.osmand.AndroidUtils;
|
||||
import net.osmand.PlatformUtil;
|
||||
import net.osmand.plus.OsmandApplication;
|
||||
import net.osmand.plus.OsmandSettings;
|
||||
|
@ -58,6 +59,7 @@ public class HelpArticleDialogFragment extends DialogFragment {
|
|||
final View view = inflater.inflate(R.layout.fragment_help_article, container, false);
|
||||
|
||||
Toolbar toolbar = (Toolbar) view.findViewById(R.id.toolbar);
|
||||
toolbar.setNavigationIcon(AndroidUtils.getNavigationIconResId(getContext()));
|
||||
toolbar.setNavigationContentDescription(R.string.access_shared_string_navigate_up);
|
||||
toolbar.setNavigationOnClickListener(new View.OnClickListener() {
|
||||
@Override
|
||||
|
|
|
@ -30,7 +30,7 @@ public class WhatsNewDialogFragment extends DialogFragment {
|
|||
final OsmandApplication osmandApplication = (OsmandApplication) getActivity().getApplication();
|
||||
final String appVersion = Version.getAppVersion(osmandApplication);
|
||||
builder.setTitle(getString(R.string.whats_new) + " " + appVersion)
|
||||
.setMessage(getString(R.string.release_3_6))
|
||||
.setMessage(getString(R.string.release_3_7))
|
||||
.setNegativeButton(R.string.shared_string_close, null);
|
||||
if (AppInitializer.LATEST_CHANGES_URL != null) {
|
||||
builder.setPositiveButton(R.string.read_more, new DialogInterface.OnClickListener() {
|
||||
|
|
|
@ -15,7 +15,6 @@ import android.util.TypedValue;
|
|||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
import android.widget.AbsListView;
|
||||
import android.widget.Button;
|
||||
import android.widget.CompoundButton;
|
||||
import android.widget.ExpandableListView;
|
||||
|
@ -547,15 +546,12 @@ public class LiveUpdatesFragment extends BaseOsmAndFragment implements InAppPurc
|
|||
}
|
||||
|
||||
private static class LocalFullMapsViewHolder {
|
||||
public static final int UPDATES_ENABLED_ITEM_HEIGHT = 72;
|
||||
public static final int UPDATES_DISABLED_ITEM_HEIGHT = 50;
|
||||
private final ImageView icon;
|
||||
private final TextView nameTextView;
|
||||
private final TextView subheaderTextView;
|
||||
private final TextView descriptionTextView;
|
||||
private final ImageButton options;
|
||||
private final LiveUpdatesFragment fragment;
|
||||
private final View view;
|
||||
private final int secondaryColor;
|
||||
private final View divider;
|
||||
|
||||
|
@ -565,7 +561,6 @@ public class LiveUpdatesFragment extends BaseOsmAndFragment implements InAppPurc
|
|||
subheaderTextView = (TextView) view.findViewById(R.id.subheaderTextView);
|
||||
descriptionTextView = (TextView) view.findViewById(R.id.descriptionTextView);
|
||||
options = (ImageButton) view.findViewById(R.id.options);
|
||||
this.view = view;
|
||||
this.fragment = context;
|
||||
|
||||
TypedValue typedValue = new TypedValue();
|
||||
|
@ -582,7 +577,6 @@ public class LiveUpdatesFragment extends BaseOsmAndFragment implements InAppPurc
|
|||
IncrementalChangesManager changesManager = context.getResourceManager().getChangesManager();
|
||||
|
||||
nameTextView.setText(getNameToDisplay(item, fragment.getMyActivity()));
|
||||
AbsListView.LayoutParams layoutParams = (AbsListView.LayoutParams) view.getLayoutParams();
|
||||
if (shouldUpdatePreference.get()) {
|
||||
final Integer frequencyId = preferenceUpdateFrequency(item, fragment.getSettings()).get();
|
||||
final Integer timeOfDateToUpdateId = preferenceTimeOfDayToUpdate(item, fragment.getSettings()).get();
|
||||
|
@ -598,14 +592,11 @@ public class LiveUpdatesFragment extends BaseOsmAndFragment implements InAppPurc
|
|||
.getColor(R.color.osmand_orange));
|
||||
icon.setImageDrawable(fragment.getIcon(R.drawable.ic_map, R.color.osmand_orange));
|
||||
options.setImageDrawable(getSecondaryColorPaintedIcon(R.drawable.ic_overflow_menu_white));
|
||||
layoutParams.height = (int) dpToPx(view.getContext(), UPDATES_ENABLED_ITEM_HEIGHT);
|
||||
} else {
|
||||
subheaderTextView.setVisibility(View.GONE);
|
||||
icon.setImageDrawable(getSecondaryColorPaintedIcon(R.drawable.ic_map));
|
||||
options.setImageDrawable(getSecondaryColorPaintedIcon(R.drawable.ic_action_plus));
|
||||
layoutParams.height = (int) dpToPx(view.getContext(), UPDATES_DISABLED_ITEM_HEIGHT);
|
||||
}
|
||||
view.setLayoutParams(layoutParams);
|
||||
|
||||
final String fileNameWithoutExtension =
|
||||
Algorithms.getFileNameWithoutExtension(new File(item));
|
||||
|
@ -710,10 +701,6 @@ public class LiveUpdatesFragment extends BaseOsmAndFragment implements InAppPurc
|
|||
adapter.notifyDataSetChanged();
|
||||
}
|
||||
|
||||
public static float dpToPx(final Context context, final float dp) {
|
||||
return dp * context.getResources().getDisplayMetrics().density;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onError(InAppPurchaseTaskType taskType, String error) {
|
||||
disableProgress();
|
||||
|
|
|
@ -2,6 +2,7 @@ package net.osmand.plus.liveupdates;
|
|||
|
||||
import android.app.Activity;
|
||||
import android.app.ProgressDialog;
|
||||
import android.graphics.drawable.Drawable;
|
||||
import android.os.Bundle;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.MotionEvent;
|
||||
|
@ -98,7 +99,7 @@ public class SubscriptionFragment extends BaseOsmAndDialogFragment implements In
|
|||
@Override
|
||||
public View onCreateView(@NonNull LayoutInflater inflater, ViewGroup container,
|
||||
Bundle savedInstanceState) {
|
||||
|
||||
OsmandApplication app = getMyApplication();
|
||||
String userName = settings.BILLING_USER_NAME.get();
|
||||
String email = settings.BILLING_USER_EMAIL.get();
|
||||
String countryDownloadName = settings.BILLING_USER_COUNTRY_DOWNLOAD_NAME.get();
|
||||
|
@ -122,7 +123,8 @@ public class SubscriptionFragment extends BaseOsmAndDialogFragment implements In
|
|||
|
||||
View view = inflater.inflate(R.layout.subscription_fragment, container, false);
|
||||
ImageButton closeButton = (ImageButton) view.findViewById(R.id.closeButton);
|
||||
closeButton.setImageDrawable(getMyApplication().getUIUtilities().getIcon(R.drawable.ic_action_mode_back));
|
||||
Drawable icBack = app.getUIUtilities().getIcon(AndroidUtils.getNavigationIconResId(app));
|
||||
closeButton.setImageDrawable(icBack);
|
||||
closeButton.setOnClickListener(new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
|
|
|
@ -320,7 +320,8 @@ public class MapContextMenuFragment extends BaseOsmAndFragment implements Downlo
|
|||
|
||||
if (menu.isLandscapeLayout()) {
|
||||
final TypedValue typedValueAttr = new TypedValue();
|
||||
mapActivity.getTheme().resolveAttribute(R.attr.left_menu_view_bg, typedValueAttr, true);
|
||||
int bgAttrId = AndroidUtils.isLayoutRtl(app) ? R.attr.right_menu_view_bg : R.attr.left_menu_view_bg;
|
||||
mapActivity.getTheme().resolveAttribute(bgAttrId, typedValueAttr, true);
|
||||
mainView.setBackgroundResource(typedValueAttr.resourceId);
|
||||
mainView.setLayoutParams(new FrameLayout.LayoutParams(menu.getLandscapeWidthPx(),
|
||||
ViewGroup.LayoutParams.MATCH_PARENT));
|
||||
|
|
|
@ -1112,7 +1112,7 @@ public class MenuBuilder {
|
|||
} else {
|
||||
button.setTextColor(ContextCompat.getColor(context, light ? R.color.text_color_primary_light : R.color.text_color_primary_dark));
|
||||
}
|
||||
button.setGravity(Gravity.LEFT | Gravity.CENTER_VERTICAL);
|
||||
button.setGravity(Gravity.START | Gravity.CENTER_VERTICAL);
|
||||
button.setSingleLine(singleLine);
|
||||
button.setEllipsize(TextUtils.TruncateAt.END);
|
||||
|
||||
|
|
|
@ -6,6 +6,7 @@ import android.view.View.OnClickListener;
|
|||
|
||||
import androidx.annotation.NonNull;
|
||||
|
||||
import net.osmand.AndroidUtils;
|
||||
import net.osmand.binary.OsmandOdb.TransportRouteStop;
|
||||
import net.osmand.data.LatLon;
|
||||
import net.osmand.data.PointDescription;
|
||||
|
@ -29,8 +30,10 @@ public class TransportRouteController extends MenuController {
|
|||
super(new MenuBuilder(mapActivity), pointDescription, mapActivity);
|
||||
this.transportRoute = transportRoute;
|
||||
builder.setShowOnlinePhotos(false);
|
||||
int navigationIconResId = AndroidUtils.getNavigationIconResId(mapActivity);
|
||||
toolbarController = new ContextMenuToolbarController(this);
|
||||
toolbarController.setTitle(getNameStr());
|
||||
toolbarController.setBackBtnIconIds(navigationIconResId, navigationIconResId);
|
||||
toolbarController.setOnBackButtonClickListener(new OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
|
@ -66,7 +69,6 @@ public class TransportRouteController extends MenuController {
|
|||
}
|
||||
};
|
||||
leftTitleButtonController.caption = mapActivity.getString(R.string.shared_string_previous);
|
||||
leftTitleButtonController.leftIconId = R.drawable.ic_arrow_back;
|
||||
|
||||
rightTitleButtonController = new TitleButtonController() {
|
||||
@Override
|
||||
|
@ -78,7 +80,14 @@ public class TransportRouteController extends MenuController {
|
|||
}
|
||||
};
|
||||
rightTitleButtonController.caption = mapActivity.getString(R.string.shared_string_next);
|
||||
rightTitleButtonController.rightIconId = R.drawable.ic_arrow_forward;
|
||||
|
||||
if (AndroidUtils.isLayoutRtl(mapActivity)) {
|
||||
leftTitleButtonController.rightIconId = R.drawable.ic_arrow_forward;
|
||||
rightTitleButtonController.leftIconId = R.drawable.ic_arrow_back;
|
||||
} else {
|
||||
leftTitleButtonController.leftIconId = R.drawable.ic_arrow_back;
|
||||
rightTitleButtonController.rightIconId = R.drawable.ic_arrow_forward;
|
||||
}
|
||||
}
|
||||
|
||||
@NonNull
|
||||
|
|
|
@ -3,6 +3,7 @@ package net.osmand.plus.mapcontextmenu.other;
|
|||
import android.graphics.drawable.Drawable;
|
||||
import android.os.Build;
|
||||
import android.os.Bundle;
|
||||
import android.util.TypedValue;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
|
@ -195,7 +196,10 @@ public class TrackDetailsMenuFragment extends BaseOsmAndFragment {
|
|||
if (!landscapeLayout) {
|
||||
AndroidUtils.setBackground(ctx, mainView, nightMode, R.drawable.bg_bottom_menu_light, R.drawable.bg_bottom_menu_dark);
|
||||
} else {
|
||||
AndroidUtils.setBackground(ctx, mainView, nightMode, R.drawable.bg_left_menu_light, R.drawable.bg_left_menu_dark);
|
||||
final TypedValue typedValueAttr = new TypedValue();
|
||||
int bgAttrId = AndroidUtils.isLayoutRtl(ctx) ? R.attr.right_menu_view_bg : R.attr.left_menu_view_bg;
|
||||
ctx.getTheme().resolveAttribute(bgAttrId, typedValueAttr, true);
|
||||
mainView.setBackgroundResource(typedValueAttr.resourceId);
|
||||
}
|
||||
|
||||
AndroidUtils.setTextPrimaryColor(ctx, (TextView) mainView.findViewById(R.id.y_axis_title), nightMode);
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
package net.osmand.plus.mapmarkers;
|
||||
|
||||
import android.content.Context;
|
||||
import android.graphics.drawable.Drawable;
|
||||
import android.os.Bundle;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
|
@ -81,7 +82,8 @@ public class MapMarkerSelectionFragment extends BaseOsmAndDialogFragment {
|
|||
|
||||
View view = inflater.inflate(R.layout.map_marker_selection_fragment, container, false);
|
||||
ImageButton closeButton = (ImageButton) view.findViewById(R.id.closeButton);
|
||||
closeButton.setImageDrawable(getMyApplication().getUIUtilities().getIcon(R.drawable.ic_action_mode_back));
|
||||
Drawable icBack = app.getUIUtilities().getIcon(AndroidUtils.getNavigationIconResId(app));
|
||||
closeButton.setImageDrawable(icBack);
|
||||
closeButton.setOnClickListener(new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
|
|
|
@ -200,8 +200,9 @@ public class PlanRouteFragment extends BaseOsmAndFragment implements OsmAndLocat
|
|||
}
|
||||
});
|
||||
|
||||
int navigationIconResId = AndroidUtils.getNavigationIconResId(mapActivity);
|
||||
toolbarController = new PlanRouteToolbarController();
|
||||
toolbarController.setBackBtnIconIds(R.drawable.ic_action_mode_back, R.drawable.ic_action_mode_back);
|
||||
toolbarController.setBackBtnIconIds(navigationIconResId, navigationIconResId);
|
||||
toolbarController.setTitle(getString(R.string.plan_route));
|
||||
toolbarController.setOnBackButtonClickListener(new View.OnClickListener() {
|
||||
@Override
|
||||
|
|
|
@ -296,7 +296,8 @@ public class MeasurementToolFragment extends BaseOsmAndFragment {
|
|||
undoBtn = ((ImageButton) mainView.findViewById(R.id.undo_point_button));
|
||||
redoBtn = ((ImageButton) mainView.findViewById(R.id.redo_point_button));
|
||||
|
||||
undoBtn.setImageDrawable(getContentIcon(R.drawable.ic_action_undo_dark));
|
||||
Drawable undoDrawable = getContentIcon(R.drawable.ic_action_undo_dark);
|
||||
undoBtn.setImageDrawable(AndroidUtils.getDrawableForDirection(mapActivity, undoDrawable));
|
||||
undoBtn.setOnClickListener(new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View view) {
|
||||
|
@ -316,7 +317,8 @@ public class MeasurementToolFragment extends BaseOsmAndFragment {
|
|||
}
|
||||
});
|
||||
|
||||
redoBtn.setImageDrawable(getContentIcon(R.drawable.ic_action_redo_dark));
|
||||
Drawable redoDrawable = getContentIcon(R.drawable.ic_action_redo_dark);
|
||||
redoBtn.setImageDrawable(AndroidUtils.getDrawableForDirection(mapActivity, redoDrawable));
|
||||
redoBtn.setOnClickListener(new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View view) {
|
||||
|
@ -394,7 +396,8 @@ public class MeasurementToolFragment extends BaseOsmAndFragment {
|
|||
|
||||
toolBarController = new MeasurementToolBarController(newGpxData);
|
||||
if (editingCtx.getSelectedPointPosition() != -1) {
|
||||
toolBarController.setBackBtnIconIds(R.drawable.ic_action_mode_back, R.drawable.ic_action_mode_back);
|
||||
int navigationIconResId = AndroidUtils.getNavigationIconResId(mapActivity);
|
||||
toolBarController.setBackBtnIconIds(navigationIconResId, navigationIconResId);
|
||||
} else {
|
||||
toolBarController.setBackBtnIconIds(R.drawable.ic_action_remove_dark, R.drawable.ic_action_remove_dark);
|
||||
}
|
||||
|
@ -971,7 +974,8 @@ public class MeasurementToolFragment extends BaseOsmAndFragment {
|
|||
|
||||
private void switchMovePointMode(boolean enable) {
|
||||
if (enable) {
|
||||
toolBarController.setBackBtnIconIds(R.drawable.ic_action_mode_back, R.drawable.ic_action_mode_back);
|
||||
int navigationIconResId = AndroidUtils.getNavigationIconResId(getMapActivity());
|
||||
toolBarController.setBackBtnIconIds(navigationIconResId, navigationIconResId);
|
||||
} else {
|
||||
toolBarController.setBackBtnIconIds(R.drawable.ic_action_remove_dark, R.drawable.ic_action_remove_dark);
|
||||
}
|
||||
|
@ -990,7 +994,8 @@ public class MeasurementToolFragment extends BaseOsmAndFragment {
|
|||
|
||||
private void switchAddPointBeforeAfterMode(boolean enable) {
|
||||
if (enable) {
|
||||
toolBarController.setBackBtnIconIds(R.drawable.ic_action_mode_back, R.drawable.ic_action_mode_back);
|
||||
int navigationIconResId = AndroidUtils.getNavigationIconResId(getMapActivity());
|
||||
toolBarController.setBackBtnIconIds(navigationIconResId, navigationIconResId);
|
||||
} else {
|
||||
toolBarController.setBackBtnIconIds(R.drawable.ic_action_remove_dark, R.drawable.ic_action_remove_dark);
|
||||
}
|
||||
|
|
|
@ -57,7 +57,8 @@ public class RecyclerViewFragment extends Fragment {
|
|||
final int backgroundColor = ContextCompat.getColor(getActivity(),
|
||||
nightMode ? R.color.activity_background_color_dark : R.color.activity_background_color_light);
|
||||
final TypedValue typedValueAttr = new TypedValue();
|
||||
getActivity().getTheme().resolveAttribute(R.attr.left_menu_view_bg, typedValueAttr, true);
|
||||
int bgAttrId = AndroidUtils.isLayoutRtl(getActivity()) ? R.attr.right_menu_view_bg : R.attr.left_menu_view_bg;
|
||||
getActivity().getTheme().resolveAttribute(bgAttrId, typedValueAttr, true);
|
||||
|
||||
parent = new FrameLayout(mapActivity);
|
||||
parent.setLayoutParams(new LayoutParams(width + AndroidUtils.dpToPx(getActivity(), 16), height));
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
package net.osmand.plus.measurementtool;
|
||||
|
||||
import android.graphics.drawable.Drawable;
|
||||
import android.os.Build;
|
||||
import android.os.Bundle;
|
||||
import android.view.ContextThemeWrapper;
|
||||
|
@ -7,6 +8,8 @@ import android.view.MotionEvent;
|
|||
import android.view.View;
|
||||
import android.widget.ImageView;
|
||||
|
||||
import net.osmand.AndroidUtils;
|
||||
import net.osmand.plus.OsmandApplication;
|
||||
import net.osmand.plus.R;
|
||||
import net.osmand.plus.base.MenuBottomSheetDialogFragment;
|
||||
import net.osmand.plus.base.bottomsheetmenu.BaseBottomSheetItem;
|
||||
|
@ -26,6 +29,11 @@ public class SaveAsNewTrackBottomSheetDialogFragment extends MenuBottomSheetDial
|
|||
|
||||
@Override
|
||||
public void createMenuItems(Bundle savedInstanceState) {
|
||||
OsmandApplication app = getMyApplication();
|
||||
if (app == null) {
|
||||
return;
|
||||
}
|
||||
|
||||
items.add(new TitleItem(getString(R.string.shared_string_save_as_gpx)));
|
||||
|
||||
items.add(new ShortDescriptionItem(getString(R.string.measurement_tool_save_as_new_track_descr)));
|
||||
|
@ -37,12 +45,16 @@ public class SaveAsNewTrackBottomSheetDialogFragment extends MenuBottomSheetDial
|
|||
|
||||
final ImageView routePointImage = (ImageView) imagesRow.findViewById(R.id.route_point_image);
|
||||
final ImageView lineImage = (ImageView) imagesRow.findViewById(R.id.line_image);
|
||||
routePointImage.setImageResource(nightMode
|
||||
Drawable routePointDrawable = app.getUIUtilities().getIcon(nightMode
|
||||
? R.drawable.img_help_trip_route_points_night
|
||||
: R.drawable.img_help_trip_route_points_day);
|
||||
lineImage.setImageResource(nightMode
|
||||
Drawable lineDrawable = app.getUIUtilities().getIcon(nightMode
|
||||
? R.drawable.img_help_trip_track_night
|
||||
: R.drawable.img_help_trip_track_day);
|
||||
if (routePointDrawable != null && lineDrawable != null) {
|
||||
routePointImage.setImageDrawable(AndroidUtils.getDrawableForDirection(app, routePointDrawable));
|
||||
lineImage.setImageDrawable(AndroidUtils.getDrawableForDirection(app, lineDrawable));
|
||||
}
|
||||
routePointImage.setOnClickListener(saveAsRoutePointOnClickListener);
|
||||
lineImage.setOnClickListener(saveAsLineOnClickListener);
|
||||
|
||||
|
|
|
@ -573,9 +573,9 @@ public class OsmandMonitoringPlugin extends OsmandPlugin {
|
|||
cb.setTextColor(textColorPrimary);
|
||||
LinearLayout.LayoutParams lp = new LinearLayout.LayoutParams(LayoutParams.MATCH_PARENT,
|
||||
LayoutParams.WRAP_CONTENT);
|
||||
lp.setMargins(dp24, dp8, dp24, 0);
|
||||
AndroidUtils.setMargins(lp, dp24, dp8, dp24, 0);
|
||||
cb.setLayoutParams(lp);
|
||||
cb.setPadding(dp8, 0, 0, 0);
|
||||
AndroidUtils.setPadding(cb, dp8, 0, 0, 0);
|
||||
cb.setChecked(!choice.value);
|
||||
cb.setOnCheckedChangeListener(new OnCheckedChangeListener() {
|
||||
@Override
|
||||
|
@ -590,7 +590,7 @@ public class OsmandMonitoringPlugin extends OsmandPlugin {
|
|||
if (showTrackSelection) {
|
||||
View divider = new View(uiCtx);
|
||||
LinearLayout.LayoutParams lp = new LinearLayout.LayoutParams(LayoutParams.MATCH_PARENT, AndroidUtils.dpToPx(uiCtx, 1f));
|
||||
lp.setMargins(0, dp8 * 2, 0, 0);
|
||||
AndroidUtils.setMargins(lp, 0, dp8 * 2, 0, 0);
|
||||
divider.setLayoutParams(lp);
|
||||
divider.setBackgroundColor(uiCtx.getResources().getColor(nightMode ? R.color.divider_color_dark : R.color.divider_color_light));
|
||||
ll.addView(divider);
|
||||
|
@ -600,9 +600,9 @@ public class OsmandMonitoringPlugin extends OsmandPlugin {
|
|||
cb.setTextColor(textColorPrimary);
|
||||
lp = new LinearLayout.LayoutParams(LayoutParams.MATCH_PARENT,
|
||||
LayoutParams.WRAP_CONTENT);
|
||||
lp.setMargins(dp24, dp8 * 2, dp24, 0);
|
||||
AndroidUtils.setMargins(lp, dp24, dp8 * 2, dp24, 0);
|
||||
cb.setLayoutParams(lp);
|
||||
cb.setPadding(dp8, 0, 0, 0);
|
||||
AndroidUtils.setPadding(cb, dp8, 0, 0, 0);
|
||||
cb.setChecked(app.getSelectedGpxHelper().getSelectedCurrentRecordingTrack() != null);
|
||||
cb.setOnCheckedChangeListener(new OnCheckedChangeListener() {
|
||||
|
||||
|
|
|
@ -7,6 +7,7 @@ import android.text.Editable;
|
|||
import android.text.InputFilter;
|
||||
import android.text.TextWatcher;
|
||||
import android.view.ContextThemeWrapper;
|
||||
import android.view.Gravity;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.view.View.OnFocusChangeListener;
|
||||
|
@ -21,6 +22,7 @@ import android.widget.TextView;
|
|||
import androidx.annotation.NonNull;
|
||||
import androidx.annotation.Nullable;
|
||||
|
||||
import net.osmand.AndroidUtils;
|
||||
import net.osmand.PlatformUtil;
|
||||
import net.osmand.osm.AbstractPoiType;
|
||||
import net.osmand.osm.MapPoiTypes;
|
||||
|
@ -202,6 +204,7 @@ public class AdvancedEditPoiFragment extends BaseOsmAndFragment
|
|||
.inflate(R.layout.poi_tag_list_item, null, false);
|
||||
final AutoCompleteTextView tagEditText =
|
||||
(AutoCompleteTextView) convertView.findViewById(R.id.tagEditText);
|
||||
AndroidUtils.setTextHorizontalGravity(tagEditText, Gravity.START);
|
||||
ImageButton deleteItemImageButton =
|
||||
(ImageButton) convertView.findViewById(R.id.deleteItemImageButton);
|
||||
deleteItemImageButton.setImageDrawable(deleteDrawable);
|
||||
|
@ -215,6 +218,7 @@ public class AdvancedEditPoiFragment extends BaseOsmAndFragment
|
|||
});
|
||||
final AutoCompleteTextView valueEditText =
|
||||
(AutoCompleteTextView) convertView.findViewById(R.id.valueEditText);
|
||||
AndroidUtils.setTextHorizontalGravity(valueEditText, Gravity.START);
|
||||
valueEditText.setFilters(new InputFilter[] {
|
||||
new InputFilter.LengthFilter(AMENITY_TEXT_LENGTH)
|
||||
});
|
||||
|
|
|
@ -10,6 +10,7 @@ import android.text.TextUtils;
|
|||
import android.text.TextWatcher;
|
||||
import android.util.TypedValue;
|
||||
import android.view.ContextThemeWrapper;
|
||||
import android.view.Gravity;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
|
@ -24,6 +25,7 @@ import androidx.annotation.NonNull;
|
|||
import androidx.annotation.Nullable;
|
||||
import androidx.fragment.app.Fragment;
|
||||
|
||||
import net.osmand.AndroidUtils;
|
||||
import net.osmand.PlatformUtil;
|
||||
import net.osmand.osm.edit.OSMSettings;
|
||||
import net.osmand.plus.R;
|
||||
|
@ -104,6 +106,11 @@ public class BasicEditPoiFragment extends BaseOsmAndFragment
|
|||
phoneEditText.setFilters(lengthLimit);
|
||||
webSiteEditText.setFilters(lengthLimit);
|
||||
descriptionEditText.setFilters(lengthLimit);
|
||||
AndroidUtils.setTextHorizontalGravity(streetEditText, Gravity.START);
|
||||
AndroidUtils.setTextHorizontalGravity(houseNumberEditText, Gravity.START);
|
||||
AndroidUtils.setTextHorizontalGravity(phoneEditText, Gravity.START);
|
||||
AndroidUtils.setTextHorizontalGravity(webSiteEditText, Gravity.START);
|
||||
AndroidUtils.setTextHorizontalGravity(descriptionEditText, Gravity.START);
|
||||
Button addOpeningHoursButton = (Button) view.findViewById(R.id.addOpeningHoursButton);
|
||||
addOpeningHoursButton.setOnClickListener(new View.OnClickListener() {
|
||||
@Override
|
||||
|
|
|
@ -16,6 +16,7 @@ import android.text.Editable;
|
|||
import android.text.TextUtils;
|
||||
import android.text.TextWatcher;
|
||||
import android.util.TypedValue;
|
||||
import android.view.Gravity;
|
||||
import android.view.KeyEvent;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.MotionEvent;
|
||||
|
@ -247,6 +248,7 @@ public class EditPoiDialogFragment extends BaseOsmAndDialogFragment {
|
|||
});
|
||||
|
||||
EditText poiNameEditText = (EditText) view.findViewById(R.id.poiNameEditText);
|
||||
AndroidUtils.setTextHorizontalGravity(poiNameEditText, Gravity.START);
|
||||
poiNameEditText.addTextChangedListener(new TextWatcher() {
|
||||
@Override
|
||||
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
|
||||
|
@ -273,6 +275,7 @@ public class EditPoiDialogFragment extends BaseOsmAndDialogFragment {
|
|||
AndroidUtils.showSoftKeyboard(poiNameEditText);
|
||||
poiTypeTextInputLayout = (TextInputLayout) view.findViewById(R.id.poiTypeTextInputLayout);
|
||||
poiTypeEditText = (AutoCompleteTextView) view.findViewById(R.id.poiTypeEditText);
|
||||
AndroidUtils.setTextHorizontalGravity(poiTypeEditText, Gravity.START);
|
||||
poiTypeEditText.setText(editPoiData.getPoiTypeString());
|
||||
poiTypeEditText.addTextChangedListener(new TextWatcher() {
|
||||
@Override
|
||||
|
@ -301,12 +304,26 @@ public class EditPoiDialogFragment extends BaseOsmAndDialogFragment {
|
|||
poiTypeEditText.setOnTouchListener(new View.OnTouchListener() {
|
||||
@Override
|
||||
public boolean onTouch(final View v, MotionEvent event) {
|
||||
Context ctx = getContext();
|
||||
if (ctx == null) {
|
||||
return false;
|
||||
}
|
||||
boolean isLayoutRtl = AndroidUtils.isLayoutRtl(getContext());
|
||||
final EditText editText = (EditText) v;
|
||||
final int DRAWABLE_RIGHT = 2;
|
||||
if (event.getAction() == MotionEvent.ACTION_UP) {
|
||||
if (event.getX() >= (editText.getRight()
|
||||
- editText.getCompoundDrawables()[DRAWABLE_RIGHT].getBounds().width()
|
||||
- editText.getPaddingRight())) {
|
||||
final int DRAWABLE_END = 2;
|
||||
int expandBtnWidth = AndroidUtils.getCompoundDrawables(editText)[DRAWABLE_END].getBounds().width();
|
||||
|
||||
boolean expandButtonPressed = false;
|
||||
if (isLayoutRtl) {
|
||||
expandButtonPressed = event.getX() <= (editText.getLeft() + expandBtnWidth
|
||||
+ editText.getPaddingLeft());
|
||||
} else {
|
||||
expandButtonPressed = event.getX() >= (editText.getRight() - expandBtnWidth
|
||||
- editText.getPaddingRight());
|
||||
}
|
||||
|
||||
if (expandButtonPressed) {
|
||||
PoiCategory category = editPoiData.getPoiCategory();
|
||||
if (category != null) {
|
||||
PoiSubTypeDialogFragment dialogFragment =
|
||||
|
@ -319,7 +336,6 @@ public class EditPoiDialogFragment extends BaseOsmAndDialogFragment {
|
|||
});
|
||||
dialogFragment.show(getChildFragmentManager(), "PoiSubTypeDialogFragment");
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
|