mirror of
https://github.com/moparisthebest/open-keychain
synced 2025-02-14 06:00:16 -05:00
Workaround for nullpointer bug in support lib, close #591
This commit is contained in:
parent
283e3c3365
commit
adea9df714
@ -0,0 +1,33 @@
|
|||||||
|
package android.support.v4.widget;
|
||||||
|
|
||||||
|
import android.content.Context;
|
||||||
|
import android.util.AttributeSet;
|
||||||
|
import android.view.Gravity;
|
||||||
|
import android.view.View;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Fix for NullPointerException at android.support.v4.widget.DrawerLayout.isContentView(DrawerLayout.java:840)
|
||||||
|
* <p/>
|
||||||
|
* http://stackoverflow.com/a/18107942
|
||||||
|
*/
|
||||||
|
public class FixedDrawerLayout extends DrawerLayout {
|
||||||
|
public FixedDrawerLayout(Context context) {
|
||||||
|
super(context);
|
||||||
|
}
|
||||||
|
|
||||||
|
public FixedDrawerLayout(Context context, AttributeSet attrs) {
|
||||||
|
super(context, attrs);
|
||||||
|
}
|
||||||
|
|
||||||
|
public FixedDrawerLayout(Context context, AttributeSet attrs, int defStyle) {
|
||||||
|
super(context, attrs, defStyle);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
boolean isContentView(View child) {
|
||||||
|
if (child == null) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
return ((LayoutParams) child.getLayoutParams()).gravity == Gravity.NO_GRAVITY;
|
||||||
|
}
|
||||||
|
}
|
@ -26,6 +26,7 @@ import android.os.Bundle;
|
|||||||
import android.support.v4.app.ActionBarDrawerToggle;
|
import android.support.v4.app.ActionBarDrawerToggle;
|
||||||
import android.support.v4.view.GravityCompat;
|
import android.support.v4.view.GravityCompat;
|
||||||
import android.support.v4.widget.DrawerLayout;
|
import android.support.v4.widget.DrawerLayout;
|
||||||
|
import android.support.v4.widget.FixedDrawerLayout;
|
||||||
import android.support.v7.app.ActionBarActivity;
|
import android.support.v7.app.ActionBarActivity;
|
||||||
import android.view.LayoutInflater;
|
import android.view.LayoutInflater;
|
||||||
import android.view.Menu;
|
import android.view.Menu;
|
||||||
@ -43,7 +44,7 @@ import org.sufficientlysecure.keychain.Constants;
|
|||||||
import org.sufficientlysecure.keychain.R;
|
import org.sufficientlysecure.keychain.R;
|
||||||
|
|
||||||
public class DrawerActivity extends ActionBarActivity {
|
public class DrawerActivity extends ActionBarActivity {
|
||||||
private DrawerLayout mDrawerLayout;
|
private FixedDrawerLayout mDrawerLayout;
|
||||||
private ListView mDrawerList;
|
private ListView mDrawerList;
|
||||||
private ActionBarDrawerToggle mDrawerToggle;
|
private ActionBarDrawerToggle mDrawerToggle;
|
||||||
|
|
||||||
@ -58,7 +59,7 @@ public class DrawerActivity extends ActionBarActivity {
|
|||||||
|
|
||||||
protected void setupDrawerNavigation(Bundle savedInstanceState) {
|
protected void setupDrawerNavigation(Bundle savedInstanceState) {
|
||||||
mDrawerTitle = getString(R.string.app_name);
|
mDrawerTitle = getString(R.string.app_name);
|
||||||
mDrawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout);
|
mDrawerLayout = (FixedDrawerLayout) findViewById(R.id.drawer_layout);
|
||||||
mDrawerList = (ListView) findViewById(R.id.left_drawer);
|
mDrawerList = (ListView) findViewById(R.id.left_drawer);
|
||||||
ViewGroup viewGroup = (ViewGroup) findViewById(R.id.content_frame);
|
ViewGroup viewGroup = (ViewGroup) findViewById(R.id.content_frame);
|
||||||
int leftMarginLoaded = ((ViewGroup.MarginLayoutParams) viewGroup.getLayoutParams()).leftMargin;
|
int leftMarginLoaded = ((ViewGroup.MarginLayoutParams) viewGroup.getLayoutParams()).leftMargin;
|
||||||
|
@ -4,7 +4,7 @@
|
|||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
android:orientation="horizontal" >
|
android:orientation="horizontal" >
|
||||||
<android.support.v4.widget.DrawerLayout
|
<android.support.v4.widget.FixedDrawerLayout
|
||||||
android:id="@+id/drawer_layout"
|
android:id="@+id/drawer_layout"
|
||||||
|
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
@ -13,7 +13,7 @@
|
|||||||
|
|
||||||
<include layout="@layout/drawer_list"/>
|
<include layout="@layout/drawer_list"/>
|
||||||
|
|
||||||
</android.support.v4.widget.DrawerLayout>
|
</android.support.v4.widget.FixedDrawerLayout>
|
||||||
|
|
||||||
<include layout="@layout/api_apps_list_content"/>
|
<include layout="@layout/api_apps_list_content"/>
|
||||||
|
|
||||||
|
@ -4,7 +4,7 @@
|
|||||||
android:orientation="horizontal"
|
android:orientation="horizontal"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent">
|
android:layout_height="match_parent">
|
||||||
<android.support.v4.widget.DrawerLayout
|
<android.support.v4.widget.FixedDrawerLayout
|
||||||
xmlns:bootstrapbutton="http://schemas.android.com/apk/res-auto"
|
xmlns:bootstrapbutton="http://schemas.android.com/apk/res-auto"
|
||||||
android:id="@+id/drawer_layout"
|
android:id="@+id/drawer_layout"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
@ -12,7 +12,7 @@
|
|||||||
|
|
||||||
<include layout="@layout/drawer_list"/>
|
<include layout="@layout/drawer_list"/>
|
||||||
|
|
||||||
</android.support.v4.widget.DrawerLayout>
|
</android.support.v4.widget.FixedDrawerLayout>
|
||||||
|
|
||||||
<include layout="@layout/decrypt_content"/>
|
<include layout="@layout/decrypt_content"/>
|
||||||
|
|
||||||
|
@ -4,7 +4,7 @@
|
|||||||
android:orientation="horizontal"
|
android:orientation="horizontal"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent">
|
android:layout_height="match_parent">
|
||||||
<android.support.v4.widget.DrawerLayout
|
<android.support.v4.widget.FixedDrawerLayout
|
||||||
xmlns:bootstrapbutton="http://schemas.android.com/apk/res-auto"
|
xmlns:bootstrapbutton="http://schemas.android.com/apk/res-auto"
|
||||||
xmlns:fontawesometext="http://schemas.android.com/apk/res-auto"
|
xmlns:fontawesometext="http://schemas.android.com/apk/res-auto"
|
||||||
android:id="@+id/drawer_layout"
|
android:id="@+id/drawer_layout"
|
||||||
@ -13,7 +13,7 @@
|
|||||||
|
|
||||||
<include layout="@layout/drawer_list"/>
|
<include layout="@layout/drawer_list"/>
|
||||||
|
|
||||||
</android.support.v4.widget.DrawerLayout>
|
</android.support.v4.widget.FixedDrawerLayout>
|
||||||
|
|
||||||
<include layout="@layout/encrypt_content"/>
|
<include layout="@layout/encrypt_content"/>
|
||||||
</FrameLayout>
|
</FrameLayout>
|
@ -4,14 +4,14 @@
|
|||||||
android:orientation="horizontal"
|
android:orientation="horizontal"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent">
|
android:layout_height="match_parent">
|
||||||
<android.support.v4.widget.DrawerLayout
|
<android.support.v4.widget.FixedDrawerLayout
|
||||||
android:id="@+id/drawer_layout"
|
android:id="@+id/drawer_layout"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent">
|
android:layout_height="match_parent">
|
||||||
|
|
||||||
<include layout="@layout/drawer_list"/>
|
<include layout="@layout/drawer_list"/>
|
||||||
|
|
||||||
</android.support.v4.widget.DrawerLayout>
|
</android.support.v4.widget.FixedDrawerLayout>
|
||||||
|
|
||||||
<include layout="@layout/key_list_content"/>
|
<include layout="@layout/key_list_content"/>
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
<android.support.v4.widget.FixedDrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
android:id="@+id/drawer_layout"
|
android:id="@+id/drawer_layout"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent" >
|
android:layout_height="match_parent" >
|
||||||
@ -8,4 +8,4 @@
|
|||||||
|
|
||||||
<include layout="@layout/drawer_list" />
|
<include layout="@layout/drawer_list" />
|
||||||
|
|
||||||
</android.support.v4.widget.DrawerLayout>
|
</android.support.v4.widget.FixedDrawerLayout>
|
@ -1,5 +1,5 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
<android.support.v4.widget.FixedDrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
xmlns:bootstrapbutton="http://schemas.android.com/apk/res-auto"
|
xmlns:bootstrapbutton="http://schemas.android.com/apk/res-auto"
|
||||||
android:id="@+id/drawer_layout"
|
android:id="@+id/drawer_layout"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
@ -9,4 +9,4 @@
|
|||||||
|
|
||||||
<include layout="@layout/drawer_list" />
|
<include layout="@layout/drawer_list" />
|
||||||
|
|
||||||
</android.support.v4.widget.DrawerLayout>
|
</android.support.v4.widget.FixedDrawerLayout>
|
@ -1,5 +1,5 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
<android.support.v4.widget.FixedDrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
xmlns:bootstrapbutton="http://schemas.android.com/apk/res-auto"
|
xmlns:bootstrapbutton="http://schemas.android.com/apk/res-auto"
|
||||||
xmlns:fontawesometext="http://schemas.android.com/apk/res-auto"
|
xmlns:fontawesometext="http://schemas.android.com/apk/res-auto"
|
||||||
android:id="@+id/drawer_layout"
|
android:id="@+id/drawer_layout"
|
||||||
@ -10,4 +10,4 @@
|
|||||||
|
|
||||||
<include layout="@layout/drawer_list" />
|
<include layout="@layout/drawer_list" />
|
||||||
|
|
||||||
</android.support.v4.widget.DrawerLayout>
|
</android.support.v4.widget.FixedDrawerLayout>
|
@ -1,5 +1,5 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
<android.support.v4.widget.FixedDrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
android:id="@+id/drawer_layout"
|
android:id="@+id/drawer_layout"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent" >
|
android:layout_height="match_parent" >
|
||||||
@ -8,4 +8,4 @@
|
|||||||
|
|
||||||
<include layout="@layout/drawer_list" />
|
<include layout="@layout/drawer_list" />
|
||||||
|
|
||||||
</android.support.v4.widget.DrawerLayout>
|
</android.support.v4.widget.FixedDrawerLayout>
|
Loading…
Reference in New Issue
Block a user