@@ -102,30 +102,37 @@ boolean onOptionsItemSelected(MenuItem item) {
102102 pickIntent .putExtra (AppWidgetManager .EXTRA_APPWIDGET_ID , appWidgetId );
103103 mainActivity .startActivityForResult (pickIntent , REQUEST_PICK_APPWIDGET );
104104 return true ;
105- } else if (item .getItemId () == R .id .remove_widget && widgetWithMenuCurrentlyDisplayed != null ) {
105+ }
106+
107+ if (item .getItemId () == R .id .remove_widget && widgetWithMenuCurrentlyDisplayed != null ) {
106108 ((ViewGroup ) widgetWithMenuCurrentlyDisplayed .getParent ()).removeView (widgetWithMenuCurrentlyDisplayed );
107- widgetWithMenuCurrentlyDisplayed = null ;
108109 serializeState ();
110+ widgetWithMenuCurrentlyDisplayed = null ;
109111 return true ;
110112 } else if (item .getItemId () == R .id .increase_size && widgetWithMenuCurrentlyDisplayed != null ) {
111113 int lineSize = Math .round (widgetWithMenuCurrentlyDisplayed .getLayoutParams ().height / getLineHeight ());
112114 lineSize ++;
115+ AppWidgetProviderInfo appWidgetInfo = mAppWidgetManager .getAppWidgetInfo (widgetWithMenuCurrentlyDisplayed .getAppWidgetId ());
113116 ViewGroup .LayoutParams params = widgetWithMenuCurrentlyDisplayed .getLayoutParams ();
114117 params .height = (int ) (lineSize * getLineHeight ());
115118 widgetWithMenuCurrentlyDisplayed .setLayoutParams (params );
116119 serializeState ();
120+ widgetWithMenuCurrentlyDisplayed = null ;
121+ return true ;
117122 } else if (item .getItemId () == R .id .decrease_size && widgetWithMenuCurrentlyDisplayed != null ) {
118123 int lineSize = Math .round (widgetWithMenuCurrentlyDisplayed .getLayoutParams ().height / getLineHeight ());
119124 lineSize --;
120125 AppWidgetProviderInfo appWidgetInfo = mAppWidgetManager .getAppWidgetInfo (widgetWithMenuCurrentlyDisplayed .getAppWidgetId ());
121-
122126 if (lineSize == 0 || (lineSize * getLineHeight () < appWidgetInfo .minHeight )) {
123127 return true ;
124128 }
129+
125130 ViewGroup .LayoutParams params = widgetWithMenuCurrentlyDisplayed .getLayoutParams ();
126131 params .height = (int ) (lineSize * getLineHeight ());
127132 widgetWithMenuCurrentlyDisplayed .setLayoutParams (params );
128133 serializeState ();
134+ widgetWithMenuCurrentlyDisplayed = null ;
135+ return true ;
129136 }
130137 else if (item .getItemId () == R .id .move_up && widgetWithMenuCurrentlyDisplayed != null ) {
131138 ViewGroup parent = (ViewGroup ) widgetWithMenuCurrentlyDisplayed .getParent ();
@@ -134,6 +141,8 @@ else if(item.getItemId() == R.id.move_up && widgetWithMenuCurrentlyDisplayed !=
134141 parent .removeViewAt (currentIndex );
135142 parent .addView (widgetWithMenuCurrentlyDisplayed , currentIndex - 1 );
136143 serializeState ();
144+ widgetWithMenuCurrentlyDisplayed = null ;
145+ return true ;
137146 }
138147 }
139148 else if (item .getItemId () == R .id .move_down && widgetWithMenuCurrentlyDisplayed != null ) {
@@ -143,6 +152,8 @@ else if(item.getItemId() == R.id.move_down && widgetWithMenuCurrentlyDisplayed !
143152 parent .removeViewAt (currentIndex );
144153 parent .addView (widgetWithMenuCurrentlyDisplayed , currentIndex + 1 );
145154 serializeState ();
155+ widgetWithMenuCurrentlyDisplayed = null ;
156+ return true ;
146157 }
147158 }
148159
0 commit comments