فهرست منبع

Merge branch 'feature' of https://gitlab.com/Arisono/SkWeiChat-Baidu into feature_bitliker

# Conflicts:
#	WeiChat/version.properties
#	app_modular/appworks/src/main/AndroidManifest.xml
Bitliker 8 سال پیش
والد
کامیت
0709d4b1f7

+ 3 - 3
WeiChat/version.properties

@@ -1,5 +1,5 @@
-#Tue Dec 26 09:12:57 CST 2017
-debugName=240
+#Tue Dec 26 17:06:39 CST 2017
+debugName=272
 versionName=613
-debugCode=240
+debugCode=272
 versionCode=152

+ 2 - 9
app_modular/appworks/src/main/AndroidManifest.xml

@@ -345,17 +345,10 @@
             android:name=".CRM.erp.activity.DeviceCycleCountAddActivity"
             android:label="@string/text_cycle_count_add"
         />
-        <activity android:name=".OA.platform.activity.BusinessTravelActivity"></activity>
-            android:label="@string/text_cycle_count_add" />
-        <activity android:name=".OA.platform.activity.BusinessTravelActivity">
-            <intent-filter>
-                <action android:name="com.modular.work.BusinessTravelActivity" />
-
-                <category android:name="android.intent.category.DEFAULT" />
-            </intent-filter>
-        </activity>
+        <activity android:name=".OA.platform.activity.BusinessTravelActivity"/>
 
         <activity android:name=".activity.DeviceQueryActivity"
+            android:launchMode="singleTask"
                   android:windowSoftInputMode="adjustPan">
             <intent-filter>
                 <action android:name="com.modular.work.DeviceQueryActivity" />

+ 24 - 17
app_modular/appworks/src/main/java/com/uas/appworks/CRM/erp/activity/DeviceCycleCountAddActivity.java

@@ -205,20 +205,21 @@ public class DeviceCycleCountAddActivity extends BaseActivity implements View.On
         public List<CycleCountAdd> getModels() {
             return models;
         }
+
         public void updateValues(String message) {
             if (!StringUtil.isEmpty(message) && JSONUtil.validateJSONObject(message)) {
-                LogUtil.i("message="+message);
+                LogUtil.i("message=" + message);
                 JSONObject object = JSON.parseObject(message);
                 if (models != null) {
-                    for (int i=0;i<models.size();i++) {
-                        LogUtil.i("e="+JSON.toJSONString(models.get(i)));
-                        if (object.containsKey(models.get(i).getField())){
-                            LogUtil.i("Field="+models.get(i).getField());
-                            models.get(i).setValues(JSONUtil.getText(object,models.get(i).getField()));
+                    for (int i = 0; i < models.size(); i++) {
+                        LogUtil.i("e=" + JSON.toJSONString(models.get(i)));
+                        if (object.containsKey(models.get(i).getField())) {
+                            LogUtil.i("Field=" + models.get(i).getField());
+                            models.get(i).setValues(JSONUtil.getText(object, models.get(i).getField()));
                             notifyItemChanged(i);
                         }
                     }
-                    for (CycleCountAdd e:models){
+                    for (CycleCountAdd e : models) {
                         LogUtil.i(JSON.toJSONString(e));
                     }
                 }
@@ -258,19 +259,25 @@ public class DeviceCycleCountAddActivity extends BaseActivity implements View.On
         @Override
         public void onBindViewHolder(ViewHodler holder, int position) {
             CycleCountAdd model = models.get(position);
-            holder.captionTv.setText(model.getCaption());
-            holder.valuesEd.setText(model.getValues());
+            int hint = R.string.common_input;
             if (model.getType().equals("DBFIND") || model.getType().equals("C")) {
                 holder.valuesEd.setFocusableInTouchMode(false);
                 holder.valuesEd.setTag(R.id.tag_key, position);
                 holder.valuesEd.setTag(model);
                 holder.valuesEd.setOnClickListener(onClickListener);
                 holder.valuesEd.setCompoundDrawablesWithIntrinsicBounds(null, null, drawable, null);
+                hint = model.isAllowblank() ? R.string.common_select : R.string.common_select_not_must;
             } else {
                 holder.valuesEd.setFocusableInTouchMode(true);
                 holder.valuesEd.setCompoundDrawablesWithIntrinsicBounds(null, null, null, null);
                 holder.valuesEd.addTextChangedListener(new TextChangListener(holder, position));
+                if (!model.isAllowblank()) {
+                    hint = R.string.common_input1;
+                }
             }
+            holder.valuesEd.setHint(hint);
+            holder.captionTv.setText(model.getCaption());
+            holder.valuesEd.setText(model.getValues());
         }
 
         @Override
@@ -311,8 +318,8 @@ public class DeviceCycleCountAddActivity extends BaseActivity implements View.On
                         Intent intent = new Intent(ct, SelectActivity.class);
                         intent.putExtra("title", model.getCaption());
                         if (model.getType().equals("C")) {
-                            selectField=model.getField();
-                            LogUtil.i("selectField="+selectField);
+                            selectField = model.getField();
+                            LogUtil.i("selectField=" + selectField);
                             ArrayList<SelectBean> formBeaans = new ArrayList<>();
                             for (Approval.Data e : model.getDatas()) {
                                 formBeaans.add(new SelectBean(e.display));
@@ -336,20 +343,20 @@ public class DeviceCycleCountAddActivity extends BaseActivity implements View.On
         };
     }
 
-    private String  selectField;
+    private String selectField;
 
     @Override
     protected void onActivityResult(int requestCode, int resultCode, Intent data) {
         super.onActivityResult(requestCode, resultCode, data);
         if (data != null && popAdapter != null) {
-            if (0x21 == requestCode&&!StringUtil.isEmpty(selectField)) {
+            if (0x21 == requestCode && !StringUtil.isEmpty(selectField)) {
                 SelectBean b = data.getParcelableExtra("data");
                 LogUtil.d(JSON.toJSONString(b));
                 if (b == null) return;
-                Map<String,Object> map=new HashMap<>();
-                LogUtil.i("selectField="+selectField);
-                map.put(selectField,b.getName());
-                selectField=null;
+                Map<String, Object> map = new HashMap<>();
+                LogUtil.i("selectField=" + selectField);
+                map.put(selectField, b.getName());
+                selectField = null;
                 popAdapter.updateValues(JSONUtil.map2JSON(map));
             } else if (90 == requestCode) {
                 String json = data.getStringExtra("data");

+ 1 - 1
app_modular/appworks/src/main/java/com/uas/appworks/CRM/erp/activity/DeviceDataFormAddActivity.java

@@ -655,7 +655,7 @@ public class DeviceDataFormAddActivity extends BaseActivity implements View.OnCl
             if (caller.equals("DeviceChange!Use")) {
                 dc_class = "使用转移";
             } else if (caller.equals("DeviceChange!Scrap")) {
-                dc_class = "报废";
+                dc_class = "报废申请";
             } else if (caller.equals("DeviceChange!Maintain")) {
                 dc_class = "保养维护";
             } else if (caller.equals("DeviceChange!Inspect")) {

+ 1 - 1
app_modular/appworks/src/main/java/com/uas/appworks/CRM/erp/model/CycleCountAdd.java

@@ -38,7 +38,7 @@ public class CycleCountAdd {
                 datas.add(new Approval.Data(JSONUtil.getText(o, "DLC_VALUE"), JSONUtil.getText(o, "DLC_DISPLAY")));
             }
         }
-        setAllowblank(JSONUtil.getBoolean(object, "fd_allowblank"));
+        setAllowblank(JSONUtil.getText(object, "fd_allowblank").equals("T"));
         setId(JSONUtil.getInt(object, "fd_id"));
         setWhich("from");
     }

+ 23 - 4
app_modular/appworks/src/main/java/com/uas/appworks/OA/erp/activity/CommonDocDetailsActivity.java

@@ -209,12 +209,27 @@ public class CommonDocDetailsActivity extends BaseActivity {
         final Intent intent = getIntent();
         mCaller = intent.getStringExtra("caller");
         mkeyValue = intent.getIntExtra("keyValue", -1);
+
         real_status = intent.getStringExtra("status");
         update=  intent.getStringExtra("update");
         Log.i("mCaller", mCaller+"");
         Log.isLoggable("keyValue", mkeyValue);
         Log.i("real_status", real_status+"");
 
+        if (mkeyValue==-1){
+            LogUtil.i("mkeyValue==-1");
+            String keyValue = intent.getStringExtra("keyValue");
+            LogUtil.i("keyValue="+keyValue);
+            if (!StringUtil.isEmpty(keyValue)   ) {
+                try {
+                    mkeyValue = Integer.valueOf(keyValue);
+                    LogUtil.i("mkeyValue="+mkeyValue);
+                } catch (Exception e) {
+                    LogUtil.i("e="+e.getMessage());
+                }
+            }
+        }
+
         //当获取到正确的单据caller和单据id时
         if (!TextUtils.isEmpty(mCaller) && mkeyValue != -1) {
             if ("Ask4Leave".equals(mCaller)) {
@@ -1053,15 +1068,19 @@ public class CommonDocDetailsActivity extends BaseActivity {
         if (mCaller.equals("DeviceChange!Use")) {
             dc_class = "使用转移";
         } else if (mCaller.equals("DeviceChange!Scrap")) {
-            dc_class = "报废";
+            dc_class = "报废申请";
         } else if (mCaller.equals("DeviceChange!Maintain")) {
             dc_class = "保养维护";
         } else if (mCaller.equals("DeviceChange!Inspect")) {
             dc_class = "故障送检";
         }
-        startActivity(new Intent(ct, DeviceQueryActivity.class).putExtra(Constants.FLAG.DEVICE_CALLER, mCaller)
-                .putExtra(Constants.FLAG.DEVICE_CLASS, dc_class));
-        finish();
+        if (ActivityUtils.isExsitMianActivity(mContext, DeviceQueryActivity.class)){
+            onBackPressed();
+        }else{
+            startActivity(new Intent(ct, DeviceQueryActivity.class).putExtra(Constants.FLAG.DEVICE_CALLER, mCaller)
+                    .putExtra(Constants.FLAG.DEVICE_CLASS, dc_class));
+            finish();
+        }
     }
 
     /**

+ 21 - 8
app_modular/appworks/src/main/java/com/uas/appworks/OA/platform/adapter/TypeAdapter.java

@@ -10,6 +10,7 @@ import android.widget.BaseAdapter;
 import android.widget.Button;
 import android.widget.TextView;
 
+import com.common.LogUtil;
 import com.common.data.ListUtils;
 import com.uas.appworks.R;
 
@@ -26,20 +27,18 @@ public class TypeAdapter extends RecyclerView.Adapter<TypeAdapter.ViewHolder> im
     private int lastPosition = 0;
     private ChangeListener changeListener = null;
 
-    public void setAreaList(List<String> areaList) {
-        this.areaList = areaList;
-        notifyDataSetChanged();
-    }
 
-    public TypeAdapter(Context ct, List<String> areaList, ChangeListener changeListener) {
+
+    public TypeAdapter(Context ct, List<String> areaList,int lastPosition, ChangeListener changeListener) {
         this.ct = ct;
         this.areaList = areaList;
+        this.lastPosition = lastPosition;
         this.changeListener = changeListener;
     }
 
     @Override
     public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
-        return new ViewHolder(getLayoutInflater().inflate(R.layout.item_type_btn,parent,false));
+        return new ViewHolder(getLayoutInflater().inflate(R.layout.item_type_btn, parent, false));
     }
 
     @Override
@@ -53,13 +52,21 @@ public class TypeAdapter extends RecyclerView.Adapter<TypeAdapter.ViewHolder> im
             holder.typeBtn.setTextColor(ct.getResources().getColor(R.color.hintColor));
         }
         holder.typeBtn.setPadding(20, 10, 20, 10);
+        final ViewHolder finalHolder = holder;
+//        finalHolder.typeBtn.post(new Runnable() {
+//            @Override
+//            public void run() {
+//                int width = finalHolder.typeBtn.getWidth();
+//                LogUtil.i(finalHolder.typeBtn.getText().toString() + "==" + width);
+//            }
+//        });
         holder.itemView.setTag(position);
         holder.itemView.setOnClickListener(this);
     }
 
     @Override
     public int getItemCount() {
-        return  ListUtils.getSize(areaList);
+        return ListUtils.getSize(areaList);
     }
 
 
@@ -70,12 +77,18 @@ public class TypeAdapter extends RecyclerView.Adapter<TypeAdapter.ViewHolder> im
             lastPosition = (int) view.getTag();
             notifyItemChanged(upLast);
             notifyItemChanged(lastPosition);
-            if (changeListener!=null&&ListUtils.getSize(areaList)>lastPosition){
+            if (changeListener != null && ListUtils.getSize(areaList) > lastPosition) {
                 changeListener.change(areaList.get(lastPosition));
             }
         }
     }
 
+    public void clear() {
+        int pos = lastPosition;
+        lastPosition = -1;
+        notifyItemChanged(pos);
+    }
+
     class ViewHolder extends RecyclerView.ViewHolder {
         TextView typeBtn;
 

+ 97 - 58
app_modular/appworks/src/main/java/com/uas/appworks/OA/platform/fragment/CharitableListFragment.java

@@ -6,6 +6,8 @@ import android.graphics.Color;
 import android.os.Bundle;
 import android.support.v7.widget.DefaultItemAnimator;
 import android.support.v7.widget.GridLayoutManager;
+import android.support.v7.widget.LinearLayoutManager;
+import android.support.v7.widget.OrientationHelper;
 import android.support.v7.widget.RecyclerView;
 import android.view.Gravity;
 import android.view.LayoutInflater;
@@ -69,7 +71,7 @@ public class CharitableListFragment extends EasyFragment implements OnPlayListen
             .readTimeout(5000)
             .isDebug(true).build();
     private CustomerBanner banner;
-    private RecyclerView typeGv;
+    private RecyclerView typeGv, typeGv2;
     private BaseActivity baseActivity;
     private PullToRefreshListView refreshListView;
 
@@ -133,6 +135,7 @@ public class CharitableListFragment extends EasyFragment implements OnPlayListen
         moneyAmountLL = (LinearLayout) handlerView.findViewById(R.id.moneyAmountLL);
         banner = (CustomerBanner) handlerView.findViewById(R.id.banner);
         typeGv = (RecyclerView) handlerView.findViewById(R.id.typeGv);
+        typeGv2 = (RecyclerView) handlerView.findViewById(R.id.typeGv2);
         return handlerView;
     }
 
@@ -203,7 +206,6 @@ public class CharitableListFragment extends EasyFragment implements OnPlayListen
                 char c = showTop.charAt(i);
                 TextView textView = new TextView(ct);
                 textView.setTextSize(textSize);
-                textView.setPadding(4, 2, 4, 2);
                 textView.setText(String.valueOf(c));
                 textView.setGravity(Gravity.CENTER_VERTICAL);
                 textView.setBackgroundResource(R.drawable.text_frame_hint_bg);
@@ -228,14 +230,19 @@ public class CharitableListFragment extends EasyFragment implements OnPlayListen
         }
         setBannerData(list);
         List<String> areaList = new ArrayList<>();
+        List<String> areaList2 = new ArrayList<>();
         allArea.add(0, "全部");
         for (int i = 0; i < allArea.size(); i++) {
             String type = allArea.getString(i);
             if (!StringUtil.isEmpty(type)) {
-                areaList.add(type);
+                if (i < 4) {
+                    areaList.add(type);
+                } else {
+                    areaList2.add(type);
+                }
             }
         }
-        setTypeData(areaList);
+        setTypeData(areaList, areaList2);
         PreferenceUtils.putString("appIndex", message);
     }
 
@@ -295,73 +302,105 @@ public class CharitableListFragment extends EasyFragment implements OnPlayListen
         }
     }
 
+    //TODO 我真是被这样的需求搞废了
     private TypeAdapter typeAdapter;
+    private TypeAdapter typeAdapter2;
+
+    private void setTypeData(final List<String> areaList, final List<String> areaList2) {
+        typeAdapter = new TypeAdapter(ct, areaList, 0, new TypeAdapter.ChangeListener() {
+            @Override
+            public void change(String type) {
+                typeAdapter2.clear();
+                loadProjects(type);
+            }
+        });
+        typeAdapter2 = new TypeAdapter(ct, areaList2, -1, new TypeAdapter.ChangeListener() {
+            @Override
+            public void change(String type) {
+                typeAdapter.clear();
+                loadProjects(type);
+            }
+        });
+
+        typeGv.setItemAnimator(new DefaultItemAnimator());
+        LinearLayoutManager layoutManager = new LinearLayoutManager(ct);
+        layoutManager.setOrientation(OrientationHelper.HORIZONTAL);
+        typeGv.setLayoutManager(layoutManager);
+        typeGv.setAdapter(typeAdapter);
+        LinearLayoutManager layoutManager2 = new LinearLayoutManager(ct);
+        layoutManager2.setOrientation(OrientationHelper.HORIZONTAL);
+        typeGv2.setItemAnimator(new DefaultItemAnimator());
+        typeGv2.setLayoutManager(layoutManager2);
+        typeGv2.setAdapter(typeAdapter2);
+//            GridLayoutManager layoutManager = new GridLayoutManager(ct, 782);
+//            layoutManager.setSpanSizeLookup(new GridLayoutManager.SpanSizeLookup() {
+//                @Override
+//                public int getSpanSize(int position) {
+//                    switch (position) {
+//                        case 0:
+//                            return 124;
+//                        case 1:
+//                            return 208;
+//                        case 2:
+//                            return 225;
+//                        case 3:
+//                            return 225;
+//                        case 4:
+//                            return 309;
+//                        case 6:
+//                            return 225;
+//                        case 7:
+//                            return 124;
+//                        default:
+//                            return 124;
+//                    }
+////
+//                }
+//            });
+
 
-    private void setTypeData(final List<String> areaList) {
-        if (typeAdapter == null) {
-            typeAdapter = new TypeAdapter(ct, areaList, new TypeAdapter.ChangeListener() {
-                @Override
-                public void change(String type) {
-                    loadProjects(type);
-                }
-            });
-            typeGv.setItemAnimator(new DefaultItemAnimator());
-            GridLayoutManager layoutManager = new GridLayoutManager(ct, 360);
-            layoutManager.setSpanSizeLookup(new GridLayoutManager.SpanSizeLookup() {
-                @Override
-                public int getSpanSize(int position) {
-                    int spanSize =32+(areaList.get(position).length())*14;
-                    LogUtil.i("spanSize="+spanSize);
-                    return spanSize;
-                }
-            });
-            typeGv.setLayoutManager(layoutManager);
-            typeGv.setAdapter(typeAdapter);
-        } else {
-            typeAdapter.setAreaList(areaList);
-        }
     }
 
     private CharitableAdapter charitableAdapter;
 
     private void setContantData(List<CharitModel> models) {
 //        if (charitableAdapter == null) {
-            charitableAdapter = new CharitableAdapter(ct, models, new CharitableAdapter.MyClickListener() {
-                @Override
-                public void myOnClick(int position, View v) {
-                    CharitModel model = charitableAdapter.getModels(position);
-                    if (!model.isEnded()) {
-                        SelectPlayPop.showPlay(getActivity(), charitableAdapter.getModels(position), new SelectPlayPop.OnSureListener() {
-                            @Override
-                            public void sure(double num, int type, CharitModel model) {
-                                if (type == 1) {
-                                    LogUtil.i("选择了微信支付");
-                                } else {
-                                    LogUtil.i("选择了支付宝支付");
-                                }
-                                loadOrderInfo(num, model);
+        charitableAdapter = new CharitableAdapter(ct, models, new CharitableAdapter.MyClickListener() {
+            @Override
+            public void myOnClick(int position, View v) {
+                CharitModel model = charitableAdapter.getModels(position);
+                if (!model.isEnded()) {
+                    SelectPlayPop.showPlay(getActivity(), charitableAdapter.getModels(position), new SelectPlayPop.OnSureListener() {
+                        @Override
+                        public void sure(double num, int type, CharitModel model) {
+                            if (type == 1) {
+                                LogUtil.i("选择了微信支付");
+                            } else {
+                                LogUtil.i("选择了支付宝支付");
                             }
-                        });
-                    }
+                            loadOrderInfo(num, model);
+                        }
+                    });
+                }
 
 
-                }
-            });
-            refreshListView.setAdapter(charitableAdapter);
-            refreshListView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
-                @Override
-                public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
-                    if (charitableAdapter != null) {
-                        CharitModel model = charitableAdapter.getModels((int) l);
-                        if (model != null) {
-                            IntentUtils.linkCommonWeb(ct, Constants.BASE_CHARIT_PROJECT_URL
-                                            + model.getId() + "/" + MyApplication.getInstance().getLoginUserId()
-                                    , StringUtil.getMessage(R.string.charitable)
-                                    , model.getMobileImg(), model.getName());
-                        }
+            }
+        });
+        refreshListView.setAdapter(charitableAdapter);
+        refreshListView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
+            @Override
+            public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
+                if (charitableAdapter != null) {
+                    CharitModel model = charitableAdapter.getModels((int) l);
+                    if (model != null) {
+                        IntentUtils.linkCommonWeb(ct, Constants.BASE_CHARIT_PROJECT_URL
+                                        + model.getId() + "/" + MyApplication.getInstance().getLoginUserId()
+                                , StringUtil.getMessage(R.string.charitable)
+                                , model.getMobileImg(), model.getName());
                     }
                 }
-            });
+            }
+        });
 //        } else {
 //            charitableAdapter.setModels(models);
 //        }

+ 1 - 1
app_modular/appworks/src/main/java/com/uas/appworks/widget/SelectPlayPop.java

@@ -161,7 +161,7 @@ public class SelectPlayPop {
         agreeNoteTv.setOnClickListener(new View.OnClickListener() {
             @Override
             public void onClick(View view) {
-                IntentUtils.linkCommonWeb(ct,"http://lj.ubtob.com/userAgreement");
+                IntentUtils.linkCommonWeb(ct,"http://lj.ubtob.com/mobile#/userAgreement");
             }
         });
         agreeCb.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {

+ 1 - 1
app_modular/appworks/src/main/res/drawable/text_frame_hint_bg.xml

@@ -4,7 +4,7 @@
         <shape>
             <solid android:color="@color/black_gray" />
             <stroke android:width="@dimen/line" android:color="@color/item_line" />
-            <padding android:bottom="2dp" android:left="2dp" android:right="2dp" android:top="2dp" />
+            <padding android:bottom="2dp" android:left="3dp" android:right="3dp" android:top="2dp" />
         </shape>
     </item>
 </selector>

+ 18 - 7
app_modular/appworks/src/main/res/layout/handler_charit_list.xml

@@ -7,7 +7,7 @@
 
     <LinearLayout
         android:layout_width="match_parent"
-        android:layout_height="wrap_content"
+        android:layout_height="30dp"
         android:background="@color/white">
 
         <TextView
@@ -30,9 +30,9 @@
             android:divider="@drawable/spacer_medium"
             android:gravity="center_vertical"
             android:orientation="horizontal"
-            android:showDividers="middle"
-            android:paddingTop="3dp"
             android:paddingBottom="3dp"
+            android:paddingTop="3dp"
+            android:showDividers="middle"
             android:visibility="visible" />
 
     </LinearLayout>
@@ -52,15 +52,26 @@
     <android.support.v7.widget.RecyclerView
         android:id="@+id/typeGv"
         android:layout_width="match_parent"
-        android:layout_height="wrap_content"
+        android:layout_height="38dp"
+        android:layout_gravity="center"
+        android:background="@color/white"
+        android:paddingTop="@dimen/padding"
+        android:gravity="center"
+        android:horizontalSpacing="10dp"
+        android:paddingLeft="@dimen/padding"
+        android:paddingRight="@dimen/padding"
+        android:verticalSpacing="10dp" />
+
+    <android.support.v7.widget.RecyclerView
+        android:id="@+id/typeGv2"
+        android:layout_width="match_parent"
+        android:layout_height="38dp"
         android:layout_gravity="center"
-        android:layout_marginTop="10dp"
         android:background="@color/white"
         android:gravity="center"
         android:horizontalSpacing="10dp"
-        android:paddingBottom="10dp"
+        android:paddingBottom="@dimen/padding"
         android:paddingLeft="@dimen/padding"
         android:paddingRight="@dimen/padding"
-        android:paddingTop="10dp"
         android:verticalSpacing="10dp" />
 </LinearLayout>

+ 2 - 1
app_modular/appworks/src/main/res/layout/item_type_btn.xml

@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
-    android:layout_width="match_parent"
+    android:layout_width="wrap_content"
     android:paddingTop="@dimen/paddingMin"
     android:paddingBottom="@dimen/paddingMin"
     android:layout_height="wrap_content">
@@ -17,6 +17,7 @@
         android:lines="1"
         android:ellipsize="end"
         android:paddingBottom="4dp"
+        android:layout_marginRight="15dp"
         android:paddingLeft="@dimen/padding"
         android:paddingRight="@dimen/padding"
         android:paddingTop="4dp"