From 614435fb0eac80813be83e88a80c998edda65d96 Mon Sep 17 00:00:00 2001 From: Philipp Schaefer Date: Sat, 7 Dec 2013 12:04:58 +0100 Subject: [PATCH 1/8] removed settings icon...it's not needed --- mobile/res/drawable-hdpi/ic_action_settings.png | Bin 892 -> 0 bytes mobile/res/drawable-mdpi/ic_action_settings.png | Bin 601 -> 0 bytes mobile/res/drawable-xhdpi/ic_action_settings.png | Bin 1204 -> 0 bytes .../res/drawable-xxhdpi/ic_action_settings.png | Bin 1734 -> 0 bytes mobile/res/menu/main.xml | 1 - 5 files changed, 1 deletion(-) delete mode 100644 mobile/res/drawable-hdpi/ic_action_settings.png delete mode 100644 mobile/res/drawable-mdpi/ic_action_settings.png delete mode 100644 mobile/res/drawable-xhdpi/ic_action_settings.png delete mode 100644 mobile/res/drawable-xxhdpi/ic_action_settings.png diff --git a/mobile/res/drawable-hdpi/ic_action_settings.png b/mobile/res/drawable-hdpi/ic_action_settings.png deleted file mode 100644 index f50c2d3aad494c6a6d06343b1ebfcd1e90472ffc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 892 zcmV-?1B3jDP)c=)n1q9y>#KO!~#=eD}Ke z0G7Tdz9;KDfM@@80F*vsdOWub8C&piklgp^{FEN=NFO&0os#@4%hC&&M=hP)&|^({ zMVgW3idE3Qkyr=MQ0PnO-GqI)IlkVny4`C4V3*Gg!z!?h3a(_1t3W1jaE0Fi##BOp zr)p(<)9ALLU#(h-FBCH;1Lmv>>o@ z_f3GExKQq>1%P+j3M=rvA^oJaE62Bl!9rMwOAWBf#;IUiNlG@hUNAtpctbgPt>NGs zIRB~Uykd}2uu+kX?-+lAW|jZ9cyHF$`BpnIR`h~3Wx}o-+p10U>5eHIdv4d&`PQWb z8Q!zsxt0!v3wL87czR8=bW7U!)G7cDD&+KEzO^uw33f}yQoR&&UJoXHRilNL&#q;3 zAmn|Zr6VsdItw7uK0D9d(1o`_$s9W++5*d-a(p>WlWb82@IB;*MxzU&%9JSc)^c8m z8I9JP;f&Gf+_j8w{sM4*DV(mZG%Tnz*hyakZ98EjO9k5z>aXL=X*RK`l*qBeN_fc` zK0-qs6{3QbBy8daoqsSH3`;H~{84?FC;mH~HXXLhKs5A=71T_=Zn$2*~@;a;c)Z|v)i)a&K0Fr@#b-Vt3{{X6Gh9y-aCMc4jAco6YXt z-gn={^Lpv!z;e{(qc9A8dc2ViVJb-{N~yJLtmBS_ha$O$@wiK%t_57z6y+=@Ev+8< zzJH~){t)v=8s1j8pVK>!bWQ$0!hc}q&KRHouUHxHG4F4HcJsIpt|hi0z&OWuJYN$w z?wt#undg@1&1IeeR9H5Y(mc4nDV zBsQy4u%#HA(-6ZZ<$_`cTZ525QxbSqG`t}lu!)p`bZLsAmd?pfL30Km_MQE|3^2tO ztemz0q%y&DDUKe4Dy{IBorncUYxm!U2TIZUqQOsD->__UK}6sGbr-Z1Fft$#D~ehu zTGDfOCbW2f5w-%cFyr|Iyu$KN#C>3hh(Q=JpvnJpYa+stSyUXuJFzm!h7pRBWc6&} z;eo)oabdzGS}%jVkUllE*N|0g`DjW$cEx~w)P_i&A&D({1zFX_a=wfdbd0WOaDx^g zHQT_pck$0ai&vAn9H%WHoq}Xa6qEr6Ne#dAN;Bafh$46TOSTZ8`@0P(@pNB*L`4e= n?xg_PTHUpPUV1sW{0cAtZ|k!lqDBg&00000NkvXXu0mjfn@I(Z diff --git a/mobile/res/drawable-xhdpi/ic_action_settings.png b/mobile/res/drawable-xhdpi/ic_action_settings.png deleted file mode 100644 index 3f2f394f7d8b2d97eaa64f3d9d95f4048724e3e3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1204 zcmV;l1WWsgP)8VoRe5ts!9zisSk#l5(OfOs%ca)NevkACBBEMI#)v!m_$|GKhXDPeqomD?%jSQI|261 z?1Z^}`|jRv-@dOUiUI`+6ev)jK!F0iOnT+}g-Mbe(@#S&y`XWKW!cQv_iTGsKB1p> z1>2m4HvnGyHh>lJJZ}JqYR?V;D3z=bs3&Iutu^s(J^-})v4-;#=>yhmb{M3OOnV(nZUV3`k$A#1dvZ?gvg zVW(cfHY3v=!6X}Hd^q!2Me)Nj`WywoTSj&Gr}a5O9D#lbO9vtCn@MaJlBIUZk;>p7 z%0N9N+4(L6ycS~&J$Q6J`rl=@M8xHbi=DpY?0O}G&iyv4+iEGnE zDz3``a-!G-e*nM%jthxOq)1o07O&_k%H^U}^<4nia#a42)1w52cjJ!6`@)hvlS+-` zbGSQ_OkI$iS|Jf)*)`50y;y*tyv(fINO)xDw2wMMM|s(&$07II%@#9mpnih zX|{w*BryAMWT_&@&oMUy?;K}d_eyPGqlnAJNSTvcNSqocF;`+=VA;PDuhkF+Taj5a zl{-;A-vHDQ5$bSMDRjvS@m$s#n@KXp`6>7S diff --git a/mobile/res/drawable-xxhdpi/ic_action_settings.png b/mobile/res/drawable-xxhdpi/ic_action_settings.png deleted file mode 100644 index 6725c082b751e3b47d2af3f3c434876c0d68960b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1734 zcmV;%208hOP)YCU6-7cFl0UX-IO?a`_Oh88nI4=R(ZwLVl_W#5&$+7|Z_!0eF@6qjBnEAGd z8SqLyd!94q7Lwn=*{8$bNhlIR67WC}1_<*j3a(7+H+iHLJhx>Cu#0`?0SKJq7(d`| z(RksRHz5}HE&>Uks?BA9mtCQ@riA3|pziyTLq-qBa_u>ujp~0^dje26kDlGE&}pVd zpIsED%|B=px6_0m5d#LLxaD@_AqZG_I8iW3W9=l-kBmH`p%>8)_BV^%S4yF)+u9O< z;p4)wd4d|2qQ;IHlPH)GpNzhz9;8A)>$)alGX~-7=!r9f1z|seg1|G>H9^Pjf)S^{ zeqoOJ`<}vwK7LczuK{9%E69r5?e;+-QP)=e4P?Ks*iTFMQMVc3q8VvM_|uZGkqc9N z*3q1x0-S9YTrz2Y>=@=v46}20!WDq2Hb;(T^IA1$Sthw)G(oe9Cg>Pfqf>k!5_l+D z)<6;=2pAIkdP=Sw^A=drSozA0tttYA84*cHqvwi+0YP9XhLfw3=O<`RR%l}GEapr{ zS~JW$1{KWTl0*2cPWY&vKOI|}5NH1hYb%&w-4mQNn5tccaU^OOf8&fObLg?U4`Tao z>i3G6zkK2neuywM!gSph;;o3z?0`->aTo_=!M6k_JIIXbWH~?(0t^z0UOWNepzXKq z_l|uQz_9HkdR{fn%@JTG;=Nmo*;#YTD&&sXEoyKU`XxFRo4a(;{DPVA*>am!gk4F% zunZxjU<9B>jSJRiBFj=hN;C=7v8)S}Au^P~99wq%XBJ9MLHC67G}!pJGDp1&u=c*S z5rDHL``k%L8J&7l-XtV;6jlfVS_NaYjkDeaU~-f-Emeu)nvHwQSkF?#6?z7=h{WVM z&U0b^ng}SuKat=h1f(t+e&%w*&Z{9HCkmnpmfi8$YL4YjU)i~2RaqAPBVHMF^*+qS@zhK*#A3Q z)K)tJ@P+$jrT|O*%IxcaBQ{6j4Twovw?G-@0cK?{KKu0;qEE&~XEO1O1s5Rh6-(ZYoUqrAn|c1iFN+Bvh6z_}+pCQNk`H@GiA z-H!!9t%$|B)H1|ll{B__jA&buPh~WgR>k-$ZOYeDYB*c<*M3SSds5_#O}^eCrfDb!{00jP;CgMs>-*x0{4)yFkH zqwrgiy(l1e_Hb26b2?#{ExTis0)oJdGc*a%_ii9U5lGRrmnbPvCGDW*vxyS$Tj0s=jLe zU3K$KU3>NS22BJcLRSubZqU*HrTY699q#WDeN{GZqJODn9*~KMd?T7II!ZIl>|vN$ zc9>3|!rWt+n;Pvo4t(5j@7C4%ke=4yW!_6?4(c6B?&(L>>OKq2YlzyQa~xAm(aG+k z=d-@H!yRzn8cl%huy-82JnLI%POx8nKPhQz5&^Lh<|SxWwnYLYRy3Q!%k733ivF*< z*&wc$)6X!}#!To>6|{{+jdDNt;XJZQ%NYj{0n5|75H+DEA;6Qk5hD>K!Jh-Q{%)w} znd6|&v#yC)2$NBVKHe+=ThI1M9nDT-2p}Aquwh+u1#84d`*uDY3IPlg!LeN$x~S?+ z5P&xP@EWzhDKh}@RS0OF8A_V)Vom!G94H^<+c(Aj3j_jzKp+qZ1OkCTAP@)y0)aqq cBK#-70A_66$Yml?hX4Qo07*qoM6N<$f`d98`~Uy| diff --git a/mobile/res/menu/main.xml b/mobile/res/menu/main.xml index 8ddb56e3..ac0f3948 100644 --- a/mobile/res/menu/main.xml +++ b/mobile/res/menu/main.xml @@ -41,7 +41,6 @@ From 90cb29a58bd121e15f7fc8beb3076b15e8a9581d Mon Sep 17 00:00:00 2001 From: Philipp Schaefer Date: Sat, 7 Dec 2013 12:14:25 +0100 Subject: [PATCH 2/8] show reload button if room --- mobile/res/menu/main.xml | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/mobile/res/menu/main.xml b/mobile/res/menu/main.xml index ac0f3948..63790b3f 100644 --- a/mobile/res/menu/main.xml +++ b/mobile/res/menu/main.xml @@ -19,20 +19,20 @@ android:showAsAction="ifRoom" android:title="@string/layer_chooser"> - - + + Date: Sat, 7 Dec 2013 13:36:39 +0100 Subject: [PATCH 3/8] show portal title in share activity --- mobile/res/drawable-hdpi/ic_action_place.png | Bin 0 -> 555 bytes mobile/res/drawable-mdpi/ic_action_place.png | Bin 0 -> 393 bytes mobile/res/drawable-xhdpi/ic_action_place.png | Bin 0 -> 712 bytes mobile/res/drawable-xxhdpi/ic_action_place.png | Bin 0 -> 958 bytes mobile/res/values/strings.xml | 4 ++-- .../cradle/iitc_mobile/share/ShareActivity.java | 5 ++++- 6 files changed, 6 insertions(+), 3 deletions(-) create mode 100644 mobile/res/drawable-hdpi/ic_action_place.png create mode 100644 mobile/res/drawable-mdpi/ic_action_place.png create mode 100644 mobile/res/drawable-xhdpi/ic_action_place.png create mode 100644 mobile/res/drawable-xxhdpi/ic_action_place.png diff --git a/mobile/res/drawable-hdpi/ic_action_place.png b/mobile/res/drawable-hdpi/ic_action_place.png new file mode 100644 index 0000000000000000000000000000000000000000..dba994d8a7f0b5a8d113467b2ccabe2c1338e34b GIT binary patch literal 555 zcmV+`0@VG9P)Q2BcO>9fKqQieJO92Dt@E4WI5n3Lx?w3;|Gn3B#jB@h-F% zHbA1BoB%5S;`#dRi$B6{@~l(QF5SUB;Y+4g}@ghft@%3ba};~d`&qUP|N5i0|C+;Bm%g*HpJwu zCL_RL!6K9+Woc_K&RBm*U7M?wD5kJJ_pQVbFR)mjyO}GbtF6XV1NN5sT%(O|8ESW ze1X^=hLU%LO901MF zq!h8Yh$#a|O@v!WP`jK~b-`vFS(4<$M{YKpMI|*9Rmb>3fh6CPTM*5nmhZ_50X(5V zvhOJ=iW{(q^^#){Sq^|UyO7I;vp}%}4D09hcsHv^ObV1O_H1JnbM0n+zWKJ<{w<$_!+St-_?FLyv3`O|M%HZYw$ zxlJR02p|H803v`0AOeU0p4Dbj4{Dkwh06-s65G7ZWC=NLr8iJit(sB}6*wiT=g`fbr$@%rgLLc7B5azjo>X zmrc`ED*zWu9hT0nT{KRCQgG^?)d9dlMgoF?XI(Waz-wd%?C7&I-vCO76 z03%jujy|^nd_|6PRpABTK?SVQmr%f?5iGc!V+Vi{G#aBXr2uQW#^{Ryz`DStiZc?? zmsEgjL~|*p!~mcQC|lVJ=PyD+DuAkjT+$&?0Ju{u?(Fx?zXj0R)%6`})Y8!p0sv2R z_I+Taej6BC0e!`hEqaO&zJ&aCxGncAloPX154KBP(=>KjoJ%fyY5=rUkcM<1C;&`) ubx0rL{{0000ES_G;v+i=t>LfM4KUz!&!V z*z+xFd+n?c2MW+V@GHsqA#je^A_`G}1%4`lUygJO=ZG&zrKtc4{@ng~l=?mnr8BZyFB731A1k z9I(yw;YK>Id`ggXJYSWw|0Q>}6g}tSfE8Hq9iOsrfYjR`o^MmhqNW#6`(Ez^CmjyOa{8&j>F--|T9;OpdbK*>`pOo&vn4PcZw=1GAI`m<7<# z1U)Z)7g&Jf5T!`6yf&}*f`;f|nv?|?>ah?P=q31P#4ACvm^vC<+R)DqX-vX3umHgy z+?wPt$PWBWUI1(HI&`Oj>`tw9Km{25O5>45Edln-enkP~(4+wh{!vP!$;APV9gqNO zj+`i49%VAFvJ*fiJcP-((s&>X!2u{`NVOqQ6+kji(*+0ZuPse7&p>qtstX_)sF8(g zttXlT9Azf=#1ufm1upyd6hN;RFHr`K_B~;jm9qfZzd#u?+EWo_PT3FVfB-Il%6>!# zI5xRtKcoO7c0@3p54r=!%G45ZppXKL-~!0(M|Qx_8M{FpB&-19f*}@X2jpMOLVr5C z1anee0t|3oP$OqQOa6&S%Gc4o-IH!H+_Kb1+S}r>a}@+8>nw z;)1ec_O}#ZSP}MDF3#MdtBhq_F?~tz+Lm$~(}1E9;EKiB0pXxMWe1#H(58_6Q3@cf z7;2`~@+6JvxBLI@#*5JCtc ggb+gd@LPZZ00z4O$j^F$r~m)}07*qoM6N<$f)f{~B>(^b literal 0 HcmV?d00001 diff --git a/mobile/res/values/strings.xml b/mobile/res/values/strings.xml index e6e934f0..8d1ed63c 100644 --- a/mobile/res/values/strings.xml +++ b/mobile/res/values/strings.xml @@ -150,9 +150,9 @@ Copied to clipboard… Do not show again - Map + Locate Share - Browser + Intel Highlighter Base Layer diff --git a/mobile/src/com/cradle/iitc_mobile/share/ShareActivity.java b/mobile/src/com/cradle/iitc_mobile/share/ShareActivity.java index 24523eeb..b09e57f9 100644 --- a/mobile/src/com/cradle/iitc_mobile/share/ShareActivity.java +++ b/mobile/src/com/cradle/iitc_mobile/share/ShareActivity.java @@ -81,7 +81,7 @@ public class ShareActivity extends FragmentActivity implements ActionBar.TabList String geoUri = "geo:" + mLl; Intent geoIntent = new Intent(android.content.Intent.ACTION_VIEW, Uri.parse(geoUri)); intents.add(geoIntent); - addTab(intents, R.string.tab_map, R.drawable.ic_action_map); + addTab(intents, R.string.tab_map, R.drawable.ic_action_place); Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(getUrl())); addTab(intent, R.string.tab_browser, R.drawable.ic_action_web_site); @@ -122,6 +122,9 @@ public class ShareActivity extends FragmentActivity implements ActionBar.TabList setupShareIntent(intent.getStringExtra("shareString")); } + // show portal name as action bar title, if available + if (mTitle != getString(R.string.app_name)) actionBar.setTitle(mTitle); + mViewPager = (ViewPager) findViewById(R.id.pager); mViewPager.setAdapter(mFragmentAdapter); From bfc082401448d24d66a65316238f50f3ff34ee45 Mon Sep 17 00:00:00 2001 From: Philipp Schaefer Date: Sat, 7 Dec 2013 15:07:48 +0100 Subject: [PATCH 4/8] scale listView icons of shareActivity to the same size --- .../cradle/iitc_mobile/share/IntentListView.java | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/mobile/src/com/cradle/iitc_mobile/share/IntentListView.java b/mobile/src/com/cradle/iitc_mobile/share/IntentListView.java index fdec0b86..e11fc766 100644 --- a/mobile/src/com/cradle/iitc_mobile/share/IntentListView.java +++ b/mobile/src/com/cradle/iitc_mobile/share/IntentListView.java @@ -9,6 +9,7 @@ import android.content.pm.PackageManager; import android.content.pm.ResolveInfo; import android.graphics.drawable.Drawable; import android.util.AttributeSet; +import android.util.DisplayMetrics; import android.util.Pair; import android.view.LayoutInflater; import android.view.View; @@ -37,6 +38,10 @@ public class IntentListView extends ListView { } private class IntentAdapter extends ArrayAdapter { + + // actually the mdpi pixel size is 48, but this ugly...so scale icons down for listView + private static final int MDPI_PX = 36; + private IntentAdapter() { super(IntentListView.this.getContext(), android.R.layout.simple_list_item_1); } @@ -48,11 +53,19 @@ public class IntentListView extends ListView { ActivityInfo info = getItem(position).activityInfo; CharSequence label = info.loadLabel(mPackageManager); + + // get icon and scale it manually to ensure that all have the same size Drawable icon = info.loadIcon(mPackageManager); + DisplayMetrics dm = new DisplayMetrics(); + ((Activity) getContext()).getWindowManager().getDefaultDisplay().getMetrics(dm); + float densityScale = dm.density; + float scaledWidth = MDPI_PX * densityScale; + float scaledHeight = MDPI_PX * densityScale; + icon.setBounds(0,0,Math.round(scaledWidth),Math.round(scaledHeight)); view.setText(label); view.setCompoundDrawablePadding((int) getResources().getDimension(R.dimen.icon_margin)); - view.setCompoundDrawablesWithIntrinsicBounds(icon, null, null, null); + view.setCompoundDrawables(icon, null, null, null); return view; } From 1a25fd1c663d9339d36a07c36e46475e45171338 Mon Sep 17 00:00:00 2001 From: Philipp Schaefer Date: Sat, 7 Dec 2013 15:08:36 +0100 Subject: [PATCH 5/8] unregister package installer broadcast receiver when iitc is stopped --- mobile/src/com/cradle/iitc_mobile/IITC_Mobile.java | 1 + 1 file changed, 1 insertion(+) diff --git a/mobile/src/com/cradle/iitc_mobile/IITC_Mobile.java b/mobile/src/com/cradle/iitc_mobile/IITC_Mobile.java index 3332f442..45ce2442 100644 --- a/mobile/src/com/cradle/iitc_mobile/IITC_Mobile.java +++ b/mobile/src/com/cradle/iitc_mobile/IITC_Mobile.java @@ -321,6 +321,7 @@ public class IITC_Mobile extends Activity implements OnSharedPreferenceChangeLis mLocMngr.removeUpdates(this); } + unregisterReceiver(mBroadcastReceiver); super.onStop(); } From 8e7e4ec14aa52d4cdaeea7e90bf446cf9873bf83 Mon Sep 17 00:00:00 2001 From: Philipp Schaefer Date: Sat, 7 Dec 2013 15:37:51 +0100 Subject: [PATCH 6/8] receiver should be unregistered only onDestroy --- mobile/src/com/cradle/iitc_mobile/IITC_Mobile.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/mobile/src/com/cradle/iitc_mobile/IITC_Mobile.java b/mobile/src/com/cradle/iitc_mobile/IITC_Mobile.java index 45ce2442..ea2b4092 100644 --- a/mobile/src/com/cradle/iitc_mobile/IITC_Mobile.java +++ b/mobile/src/com/cradle/iitc_mobile/IITC_Mobile.java @@ -321,10 +321,15 @@ public class IITC_Mobile extends Activity implements OnSharedPreferenceChangeLis mLocMngr.removeUpdates(this); } - unregisterReceiver(mBroadcastReceiver); super.onStop(); } + @Override + protected void onDestroy() { + unregisterReceiver(mBroadcastReceiver); + super.onDestroy(); + } + @Override public void onConfigurationChanged(Configuration newConfig) { super.onConfigurationChanged(newConfig); From 3e00645f4ad49768b09154266e9a25c24f6f79df Mon Sep 17 00:00:00 2001 From: Philipp Schaefer Date: Sat, 7 Dec 2013 21:27:11 +0100 Subject: [PATCH 7/8] boost performance on kitkat: ignore result of javascript. it's slow and we only can use it on kitkat. --- mobile/src/com/cradle/iitc_mobile/IITC_WebView.java | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/mobile/src/com/cradle/iitc_mobile/IITC_WebView.java b/mobile/src/com/cradle/iitc_mobile/IITC_WebView.java index c0c0fccf..4e5127cf 100644 --- a/mobile/src/com/cradle/iitc_mobile/IITC_WebView.java +++ b/mobile/src/com/cradle/iitc_mobile/IITC_WebView.java @@ -165,12 +165,7 @@ public class IITC_WebView extends WebView { public void loadJS(String js) { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) { - evaluateJavascript(js, new ValueCallback() { - @Override - public void onReceiveValue(String value) { - // maybe we want to add stuff here - } - }); + evaluateJavascript(js, null); } else { // if in edit text mode, don't load javascript otherwise the keyboard closes. HitTestResult testResult = getHitTestResult(); From 04d521f71c1b53c9ac84a0ca397fe662b15bea59 Mon Sep 17 00:00:00 2001 From: Philipp Schaefer Date: Sat, 7 Dec 2013 21:29:08 +0100 Subject: [PATCH 8/8] use kitkats new SYSTEM_UI_FLAG_IMMERSIVE on navbar hide (thx Simeon Mac) --- .../com/cradle/iitc_mobile/IITC_WebView.java | 20 ++++++++++++++----- .../iitc_mobile/share/IntentListView.java | 2 +- 2 files changed, 16 insertions(+), 6 deletions(-) diff --git a/mobile/src/com/cradle/iitc_mobile/IITC_WebView.java b/mobile/src/com/cradle/iitc_mobile/IITC_WebView.java index 4e5127cf..f00cad8d 100644 --- a/mobile/src/com/cradle/iitc_mobile/IITC_WebView.java +++ b/mobile/src/com/cradle/iitc_mobile/IITC_WebView.java @@ -71,7 +71,15 @@ public class IITC_WebView extends WebView { @Override public void run() { if (isInFullscreen() && (getFullscreenStatus() & (FS_NAVBAR)) != 0) { - setSystemUiVisibility(SYSTEM_UI_FLAG_HIDE_NAVIGATION); + int systemUiVisibility = SYSTEM_UI_FLAG_HIDE_NAVIGATION; + // in immersive mode the user can interact with the app while the navbar is hidden + // this mode is available since KitKat + // you can leave this mode by swiping down from the top of the screen. this does only work + // when the app is in total-fullscreen mode + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT && (mFullscreenStatus & FS_SYSBAR) != 0) { + systemUiVisibility |= SYSTEM_UI_FLAG_IMMERSIVE; + } + setSystemUiVisibility(systemUiVisibility); } } }; @@ -185,20 +193,22 @@ public class IITC_WebView extends WebView { @Override public boolean onTouchEvent(MotionEvent event) { getHandler().removeCallbacks(mNavHider); - getHandler().postDelayed(mNavHider, 2000); + getHandler().postDelayed(mNavHider, 3000); return super.onTouchEvent(event); } @Override public void setSystemUiVisibility(int visibility) { - getHandler().postDelayed(mNavHider, 2000); + if ((visibility & SYSTEM_UI_FLAG_HIDE_NAVIGATION) == 0) { + getHandler().postDelayed(mNavHider, 3000); + } super.setSystemUiVisibility(visibility); } @Override public void onWindowFocusChanged(boolean hasWindowFocus) { if (hasWindowFocus) { - getHandler().postDelayed(mNavHider, 2000); + getHandler().postDelayed(mNavHider, 3000); } else { getHandler().removeCallbacks(mNavHider); } @@ -220,7 +230,7 @@ public class IITC_WebView extends WebView { attrs.flags |= WindowManager.LayoutParams.FLAG_FULLSCREEN; } if ((mFullscreenStatus & FS_NAVBAR) != 0) { - setSystemUiVisibility(View.SYSTEM_UI_FLAG_HIDE_NAVIGATION); + getHandler().post(mNavHider); } if ((mFullscreenStatus & FS_STATUSBAR) != 0) { loadUrl("javascript: $('#updatestatus').hide();"); diff --git a/mobile/src/com/cradle/iitc_mobile/share/IntentListView.java b/mobile/src/com/cradle/iitc_mobile/share/IntentListView.java index e11fc766..785c1edb 100644 --- a/mobile/src/com/cradle/iitc_mobile/share/IntentListView.java +++ b/mobile/src/com/cradle/iitc_mobile/share/IntentListView.java @@ -39,7 +39,7 @@ public class IntentListView extends ListView { private class IntentAdapter extends ArrayAdapter { - // actually the mdpi pixel size is 48, but this ugly...so scale icons down for listView + // actually the mdpi pixel size is 48, but this looks ugly...so scale icons down for listView private static final int MDPI_PX = 36; private IntentAdapter() {