From d3cbe45608ac8b31977e9d6e6b20accbb36af4a0 Mon Sep 17 00:00:00 2001 From: navjot Date: Thu, 31 Oct 2019 16:24:18 +0530 Subject: [PATCH] worked on implementing loader popup functionality on account switching --- src/bitmessagekivy/main.kv | 17 ++++++- src/bitmessagekivy/mpybit.py | 95 +++++++++++++++++++++-------------- src/buildozer.spec | 2 +- src/images/3.zip | Bin 0 -> 3043 bytes src/images/loader.gif | Bin 0 -> 13527 bytes src/images/loader.zip | Bin 0 -> 15918 bytes 6 files changed, 75 insertions(+), 39 deletions(-) create mode 100644 src/images/3.zip create mode 100644 src/images/loader.gif create mode 100644 src/images/loader.zip diff --git a/src/bitmessagekivy/main.kv b/src/bitmessagekivy/main.kv index 759bd71c..48c7d889 100644 --- a/src/bitmessagekivy/main.kv +++ b/src/bitmessagekivy/main.kv @@ -14,6 +14,7 @@ #:import MDFloatingActionButton kivymd.button.MDFloatingActionButton #:import Factory kivy.factory.Factory #:import MDScrollViewRefreshLayout kivymd.refreshlayout.MDScrollViewRefreshLayout +#:import MDSpinner kivymd.spinner.MDSpinner #:set color_button (0.784, 0.443, 0.216, 1) # brown #:set color_button_pressed (0.659, 0.522, 0.431, 1) # darker brown @@ -29,7 +30,7 @@ color: color_font : - drawer_logo: app.address_identicon() + drawer_logo: './images/drawer_logo1.png' NavigationDrawerDivider: NavigationDrawerSubheader: text: "Accounts" @@ -1204,3 +1205,17 @@ NavigationLayout: id: search_field hint_text: 'Search' on_text: app.searchQuery(self) + + +: + separator_color: 1, 1, 1, 1 + background: "White.png" + Button: + id: btn + disabled: True + background_disabled_normal: "White.png" + Image: + source: './images/loader.zip' + anim_delay: 0 + #mipmap: True + size: root.size \ No newline at end of file diff --git a/src/bitmessagekivy/mpybit.py b/src/bitmessagekivy/mpybit.py index 7270514b..14ea7e8f 100644 --- a/src/bitmessagekivy/mpybit.py +++ b/src/bitmessagekivy/mpybit.py @@ -1026,10 +1026,25 @@ class NavigateApp(App): self.root_window.children[1].ids.toolbar.title = address_label state.association = text state.searcing_text = '' + LoadingPopup().open() self.root.ids.sc1.ids.ml.clear_widgets() self.root.ids.sc1.loadMessagelist(state.association) + + self.root.ids.sc4.ids.ml.clear_widgets() + self.root.ids.sc4.children[1].children[1].ids.search_field.text = '' + self.root.ids.sc4.loadSent(state.association) + + self.root.ids.sc16.clear_widgets() + self.root.ids.sc16.add_widget(Draft()) + + self.root.ids.sc5.clear_widgets() + self.root.ids.sc5.add_widget(Trash()) + + self.root.ids.sc17.clear_widgets() + self.root.ids.sc17.add_widget(Allmails()) + self.root.ids.scr_mngr.current = 'inbox' - msg_counter_objs = self.root_window.children[1].children[2].children[0].ids + msg_counter_objs = self.root_window.children[2].children[2].children[0].ids state.sent_count = str( sqlQuery( "SELECT COUNT(*) FROM sent WHERE fromaddress = '{}' and" @@ -1224,37 +1239,37 @@ class NavigateApp(App): def refreshScreen(self, instance): """Method show search button only on inbox or sent screen.""" state.searcing_text = '' - if instance.text == 'Sent': - self.root.ids.sc4.ids.ml.clear_widgets() - self.root.ids.sc4.children[1].children[1].ids.search_field.text = '' - self.root.ids.sc4.loadSent(state.association) - elif instance.text == 'Inbox': - self.root.ids.sc1.ids.ml.clear_widgets() - try: - self.root.ids.sc1.children[2].children[1].ids.search_field.text = '' - except Exception: - self.root.ids.sc1.children[1].children[1].ids.search_field.text = '' - self.root.ids.sc1.loadMessagelist(state.association) - elif instance.text == 'Draft': - self.root.ids.sc16.clear_widgets() - self.root.ids.sc16.add_widget(Draft()) - elif instance.text == 'Trash': - self.root.ids.sc5.clear_widgets() - self.root.ids.sc5.add_widget(Trash()) - elif instance.text == 'All Mails': - self.root.ids.sc17.clear_widgets() - self.root.ids.sc17.add_widget(Allmails()) - elif instance.text == 'Address Book': - self.root.ids.sc11.ids.ml.clear_widgets() - self.root.ids.sc11.children[1].children[1].ids.search_field.text = '' - self.root.ids.sc11.loadAddresslist(None, 'All', '') - elif instance.text == 'My Addresses': - self.root.ids.sc10.ids.ml.clear_widgets() - try: - self.root.ids.sc10.children[1].children[1].ids.search_field.text = '' - except Exception: - self.root.ids.sc10.children[2].children[1].ids.search_field.text = '' - self.root.ids.sc10.init_ui() + # if instance.text == 'Sent': + # self.root.ids.sc4.ids.ml.clear_widgets() + # self.root.ids.sc4.children[1].children[1].ids.search_field.text = '' + # self.root.ids.sc4.loadSent(state.association) + # elif instance.text == 'Inbox': + # self.root.ids.sc1.ids.ml.clear_widgets() + # try: + # self.root.ids.sc1.children[2].children[1].ids.search_field.text = '' + # except Exception: + # self.root.ids.sc1.children[1].children[1].ids.search_field.text = '' + # self.root.ids.sc1.loadMessagelist(state.association) + # elif instance.text == 'Draft': + # self.root.ids.sc16.clear_widgets() + # self.root.ids.sc16.add_widget(Draft()) + # elif instance.text == 'Trash': + # self.root.ids.sc5.clear_widgets() + # self.root.ids.sc5.add_widget(Trash()) + # elif instance.text == 'All Mails': + # self.root.ids.sc17.clear_widgets() + # self.root.ids.sc17.add_widget(Allmails()) + # elif instance.text == 'Address Book': + # self.root.ids.sc11.ids.ml.clear_widgets() + # self.root.ids.sc11.children[1].children[1].ids.search_field.text = '' + # self.root.ids.sc11.loadAddresslist(None, 'All', '') + # elif instance.text == 'My Addresses': + # self.root.ids.sc10.ids.ml.clear_widgets() + # try: + # self.root.ids.sc10.children[1].children[1].ids.search_field.text = '' + # except Exception: + # self.root.ids.sc10.children[2].children[1].ids.search_field.text = '' + # self.root.ids.sc10.init_ui() return def set_identicon(self, text): @@ -1262,11 +1277,6 @@ class NavigateApp(App): img = identiconGeneration.generate(text) self.root.children[2].children[0].ids.btn.children[1].texture = img.texture - @staticmethod - def address_identicon(): - """Address identicon""" - return './images/drawer_logo1.png' - def set_mail_detail_header(self): """Method is used for setting the details of the page""" toolbar_obj = self.root.ids.toolbar @@ -1966,3 +1976,14 @@ class Spam(Screen): """Spam Screen show widgets of page.""" pass + + +class LoadingPopup(Popup): + + def __init__(self, **kwargs): + super(LoadingPopup, self).__init__(**kwargs) + # call dismiss_popup in 2 seconds + Clock.schedule_once(self.dismiss_popup, 0.5) + + def dismiss_popup(self, dt): + self.dismiss() \ No newline at end of file diff --git a/src/buildozer.spec b/src/buildozer.spec index 444bf8ca..0dfeb191 100644 --- a/src/buildozer.spec +++ b/src/buildozer.spec @@ -13,7 +13,7 @@ package.domain = org.test source.dir = . # (list) Source files to include (let empty to include all the files) -source.include_exts = py,png,jpg,kv,atlas +source.include_exts = py,png,jpg,kv,atlas,gif,zip # (list) List of inclusions using pattern matching #source.include_patterns = assets/*,images/*.png diff --git a/src/images/3.zip b/src/images/3.zip new file mode 100644 index 0000000000000000000000000000000000000000..34d555fed251e96b6493497f61d8078c8cb68b5c GIT binary patch literal 3043 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 literal 0 HcmV?d00001 diff --git a/src/images/loader.gif b/src/images/loader.gif new file mode 100644 index 0000000000000000000000000000000000000000..29064d5795d97c6c88cf5ef5332461e8e2b312dc GIT binary patch literal 13527 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

da1Z@@=)C#bc5oIsGy)A7 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%0Axy_!V``!*DX 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 BLgN4c literal 0 HcmV?d00001 diff --git a/src/images/loader.zip b/src/images/loader.zip new file mode 100644 index 0000000000000000000000000000000000000000..c80a3a17e22d05832db089959679ec1c995e0cb9 GIT binary patch literal 15918 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 K`X3bl!2bc@Mkc@j literal 0 HcmV?d00001