Proyectos de Subversion Android Microlearning

Rev

Rev 43 | Mostrar el archivo completo | | | Autoría | Ultima modificación | Ver Log |

Rev 43 Rev 44
Línea 14... Línea 14...
14
import androidx.lifecycle.LifecycleOwner;
14
import androidx.lifecycle.LifecycleOwner;
15
import androidx.lifecycle.Observer;
15
import androidx.lifecycle.Observer;
16
import androidx.lifecycle.ViewModelProvider;
16
import androidx.lifecycle.ViewModelProvider;
17
import androidx.recyclerview.widget.RecyclerView;
17
import androidx.recyclerview.widget.RecyclerView;
Línea -... Línea 18...
-
 
18
 
18
 
19
import com.cesams.twogetskills.Constants;
19
import com.cesams.twogetskills.R;
20
import com.cesams.twogetskills.R;
20
import com.cesams.twogetskills.activity.MainActivity;
21
import com.cesams.twogetskills.activity.MainActivity;
21
import com.cesams.twogetskills.adapter.CapsuleListViewAdapter;
22
import com.cesams.twogetskills.adapter.CapsuleListViewAdapter;
22
import com.cesams.twogetskills.dao.CapsuleDao;
23
import com.cesams.twogetskills.dao.CapsuleDao;
23
import com.cesams.twogetskills.dao.ProgressDao;
24
import com.cesams.twogetskills.dao.ProgressDao;
24
import com.cesams.twogetskills.dao.TopicDao;
25
import com.cesams.twogetskills.dao.TopicDao;
25
import com.cesams.twogetskills.entity.Capsule;
26
import com.cesams.twogetskills.entity.Capsule;
26
import com.cesams.twogetskills.entity.Progress;
27
import com.cesams.twogetskills.entity.Progress;
27
import com.cesams.twogetskills.entity.Topic;
28
import com.cesams.twogetskills.entity.Topic;
28
import com.cesams.twogetskills.skeleton.ITwoGetSkills;
-
 
29
import com.cesams.twogetskills.viewdata.CapsuleRefreshUIViewData;
-
 
30
import com.cesams.twogetskills.viewdata.SlideRefreshUIViewData;
-
 
31
import com.cesams.twogetskills.viewmodel.CapsuleRefreshUIViewModel;
29
import com.cesams.twogetskills.skeleton.ITwoGetSkills;
32
import com.cesams.twogetskills.viewmodel.CapsuleViewModel;
-
 
33
import com.cesams.twogetskills.viewmodel.GalleryViewModel;
-
 
Línea 34... Línea 30...
34
import com.cesams.twogetskills.viewmodel.SlideRefreshUIViewModel;
30
import com.cesams.twogetskills.viewmodel.CapsuleViewModel;
35
 
31
 
Línea 36... Línea 32...
36
import java.util.ArrayList;
32
import java.util.ArrayList;
37
import java.util.List;
33
import java.util.List;
38
 
34
 
39
public class CapsuleFragment extends Fragment implements CapsuleListViewAdapter.ItemClickListener, LifecycleOwner {
35
public class CapsuleFragment extends Fragment implements CapsuleListViewAdapter.ItemClickListener, LifecycleOwner {
40
    private final String TAG = "C2GS - CapsuleFragment";
36
    private final String TAG = "C2GS - CapsuleFragment";
41
    private RecyclerView listView;
37
    private RecyclerView listView;
42
    private CapsuleListViewAdapter adapter;
-
 
Línea 43... Línea 38...
43
    private ITwoGetSkills iTwoGetSkills;
38
    private CapsuleListViewAdapter adapter;
44
    private CapsuleViewModel mCapsuleViewModel;
39
    private ITwoGetSkills iTwoGetSkills;
45
    private CapsuleRefreshUIViewModel mCapsuleRefreshUIViewModel;
40
    private CapsuleViewModel mCapsuleViewModel;
Línea 68... Línea 63...
68
    @Override
63
    @Override
69
    public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) {
64
    public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) {
70
        super.onViewCreated(view, savedInstanceState);
65
        super.onViewCreated(view, savedInstanceState);
71
        iTwoGetSkills = (ITwoGetSkills) getActivity();
66
        iTwoGetSkills = (ITwoGetSkills) getActivity();
Línea 72... Línea -...
72
 
-
 
73
 
-
 
74
        mCapsuleRefreshUIViewModel = new ViewModelProvider(requireActivity()).get(CapsuleRefreshUIViewModel.class);
67
 
75
        mCapsuleViewModel = new ViewModelProvider(requireActivity()).get(CapsuleViewModel.class);
68
        mCapsuleViewModel = new ViewModelProvider(requireActivity()).get(CapsuleViewModel.class);
76
        adapter = new CapsuleListViewAdapter(requireActivity(), mCapsuleViewModel.getCapsuleArrayList());
69
        adapter = new CapsuleListViewAdapter(requireActivity(), mCapsuleViewModel.getCapsuleArrayList());
Línea 95... Línea 88...
95
        listView.setAdapter(adapter);
88
        listView.setAdapter(adapter);
96
        listView.setHasFixedSize(true);
89
        listView.setHasFixedSize(true);
Línea 97... Línea 90...
97
 
90
 
Línea 98... Línea 91...
98
 
91
 
Línea 111... Línea 104...
111
 
104
 
112
    @Override
105
    @Override
113
    public void onResume() {
106
    public void onResume() {
Línea 114... Línea 107...
114
        super.onResume();
107
        super.onResume();
Línea 115... Línea 108...
115
 
108
 
Línea 116... Línea 109...
116
        loadData(true);
109
        loadData();
117
 
110
 
118
    }
111
    }
Línea 119... Línea 112...
119
    
112
    
Línea 120... Línea 113...
120
    @Override
113
    @Override
121
    public void onHiddenChanged(boolean hidden) {
114
    public void onHiddenChanged(boolean hidden) {
122
        super.onHiddenChanged(hidden);
115
        super.onHiddenChanged(hidden);
123
 
116
 
Línea 124... Línea 117...
124
        Log.d(TAG, "onHiddenChanged : " + (hidden ? "true" : "false"));
117
        Log.d(TAG, "onHiddenChanged : " + (hidden ? "true" : "false"));
Línea 125... Línea 118...
125
 
118
 
-
 
119
        if(!hidden) {
126
        if(!hidden) {
120
            loadData();
127
            loadData(false);
121
        }
128
        }
122
    }
-
 
123
 
-
 
124
    private void loadData() {
-
 
125
 
Línea 129... Línea 126...
129
    }
126
        int fragmentIdxActive = iTwoGetSkills.getPreference().getFragmentIdxActive();
130
 
127
 
131
    private void loadData(boolean background) {
-
 
Línea 132... Línea -...
132
 
-
 
Línea -... Línea 128...
-
 
128
        if (fragmentIdxActive != Constants.IDX_FRAGMENT_GALLERY
-
 
129
                && fragmentIdxActive != Constants.IDX_FRAGMENT_SLIDES
-
 
130
                && fragmentIdxActive != Constants.IDX_FRAGMENT_CAPSULES
-
 
131
        ) {
Línea 133... Línea 132...
133
        TopicDao topicDao = iTwoGetSkills.getDatabase().getTopicDao();
132
            return;
134
        CapsuleDao capsuleDao = iTwoGetSkills.getDatabase().getCapsuleDao();
133
        }
Línea 135... Línea 134...
135
        List<Capsule> dbCapsules;
134
 
136
        CapsuleRefreshUIViewData CapsuleRefreshUIViewData = mCapsuleRefreshUIViewModel.getCapsuleRefreshUIViewData();
135
        Log.d("BUG 2PLANO", "CapsuleFragment - loadData");
Línea 137... Línea -...
137
 
-
 
138
        if (!background) {
-
 
139
            Topic topic = topicDao.selectByUuid(iTwoGetSkills.getTopicUuidActive());
-
 
140
            iTwoGetSkills.setTitleActionBar(topic.getName());
-
 
141
 
-
 
142
            dbCapsules = capsuleDao.selectAllByTopicUuid(topic.getUuid());
-
 
Línea 143... Línea 136...
143
 
136
        Log.d("BUG 2PLANO", "CapsuleFragment - TopicUuid : " + iTwoGetSkills.getTopicUuidActive());
Línea 144... Línea 137...
144
 
137
 
Línea 171... Línea 164...
171
                capsule.setDescription(dbCapsule.getDescription());
164
                capsule.setDescription(dbCapsule.getDescription());
172
                capsule.setImage(dbCapsule.getImage());
165
                capsule.setImage(dbCapsule.getImage());
173
                capsule.setPosition(dbCapsule.getPosition());
166
                capsule.setPosition(dbCapsule.getPosition());
Línea 174... Línea 167...
174
 
167
 
175
 
168
 
176
                progress = progressDao.selectByCapsuleUuid(capsule.getUuid());
169
                progress = progressDao.selectByCapsuleUuidAndUserUuid(capsule.getUuid(), userUuid);
177
                if(progress != null) {
170
                if(progress != null) {
178
                    capsule.setCompleted( progress.getCompleted());
171
                    capsule.setCompleted( progress.getCompleted());
179
                    capsule.setViewSlides(progress.getViewSlides());
172
                    capsule.setViewSlides(progress.getViewSlides());