resolved all mail query bug or first time address creation slow response issue

This commit is contained in:
Navjot 2019-10-10 21:38:52 +05:30
parent 7298726ab7
commit 1960e7c8a5
No known key found for this signature in database
GPG Key ID: 9EE70AFD71357F1C
2 changed files with 10 additions and 40 deletions

View File

@ -1,42 +1,18 @@
#:import Toolbar kivymd.toolbar.Toolbar #:import Toolbar kivymd.toolbar.Toolbar
#:import ThemeManager kivymd.theming.ThemeManager
#:import MDNavigationDrawer kivymd.navigationdrawer.MDNavigationDrawer
#:import NavigationLayout kivymd.navigationdrawer.NavigationLayout #:import NavigationLayout kivymd.navigationdrawer.NavigationLayout
#:import NavigationDrawerDivider kivymd.navigationdrawer.NavigationDrawerDivider #:import NavigationDrawerDivider kivymd.navigationdrawer.NavigationDrawerDivider
#:import NavigationDrawerToolbar kivymd.navigationdrawer.NavigationDrawerToolbar
#:import NavigationDrawerSubheader kivymd.navigationdrawer.NavigationDrawerSubheader #:import NavigationDrawerSubheader kivymd.navigationdrawer.NavigationDrawerSubheader
#:import MDCheckbox kivymd.selectioncontrols.MDCheckbox #:import MDCheckbox kivymd.selectioncontrols.MDCheckbox
#:import MDSwitch kivymd.selectioncontrols.MDSwitch
#:import MDList kivymd.list.MDList #:import MDList kivymd.list.MDList
#:import OneLineListItem kivymd.list.OneLineListItem #:import OneLineListItem kivymd.list.OneLineListItem
#:import TwoLineListItem kivymd.list.TwoLineListItem
#:import ThreeLineListItem kivymd.list.ThreeLineListItem
#:import OneLineAvatarListItem kivymd.list.OneLineAvatarListItem
#:import OneLineIconListItem kivymd.list.OneLineIconListItem
#:import OneLineAvatarIconListItem kivymd.list.OneLineAvatarIconListItem
#:import MDTextField kivymd.textfields.MDTextField #:import MDTextField kivymd.textfields.MDTextField
#:import MDSpinner kivymd.spinner.MDSpinner
#:import MDCard kivymd.card.MDCard
#:import MDSeparator kivymd.card.MDSeparator
#:import MDDropdownMenu kivymd.menu.MDDropdownMenu
#:import get_color_from_hex kivy.utils.get_color_from_hex #:import get_color_from_hex kivy.utils.get_color_from_hex
#:import colors kivymd.color_definitions.colors #:import colors kivymd.color_definitions.colors
#:import SmartTile kivymd.grid.SmartTile
#:import MDSlider kivymd.slider.MDSlider
#:import MDTabbedPanel kivymd.tabs.MDTabbedPanel #:import MDTabbedPanel kivymd.tabs.MDTabbedPanel
#:import MDTab kivymd.tabs.MDTab #:import MDTab kivymd.tabs.MDTab
#:import MDProgressBar kivymd.progressbar.MDProgressBar
#:import MDAccordion kivymd.accordion.MDAccordion
#:import MDAccordionItem kivymd.accordion.MDAccordionItem
#:import MDAccordionSubItem kivymd.accordion.MDAccordionSubItem
#:import MDThemePicker kivymd.theme_picker.MDThemePicker
#:import MDBottomNavigation kivymd.tabs.MDBottomNavigation
#:import MDBottomNavigationItem kivymd.tabs.MDBottomNavigationItem
#:import MDFloatingActionButton kivymd.button.MDFloatingActionButton #:import MDFloatingActionButton kivymd.button.MDFloatingActionButton
#:import Factory kivy.factory.Factory #:import Factory kivy.factory.Factory
#:import MDTextButton kivymd.button.MDTextButton
#:import FadeTransition kivy.uix.screenmanager.FadeTransition
#:import MDScrollViewRefreshLayout kivymd.refreshlayout.MDScrollViewRefreshLayout #:import MDScrollViewRefreshLayout kivymd.refreshlayout.MDScrollViewRefreshLayout
#:set color_button (0.784, 0.443, 0.216, 1) # brown #:set color_button (0.784, 0.443, 0.216, 1) # brown
@ -142,7 +118,7 @@
on_press: app.refreshScreen(self) on_press: app.refreshScreen(self)
NavigationDrawerIconButton: NavigationDrawerIconButton:
text: "Subscriptions/Payment" text: "Subscriptions/Payment"
icon:'wallet' icon:'bell'
on_release: app.root.ids.scr_mngr.current = 'payment' on_release: app.root.ids.scr_mngr.current = 'payment'
on_press: app.refreshScreen(self) on_press: app.refreshScreen(self)
NavigationDrawerIconButton: NavigationDrawerIconButton:
@ -416,17 +392,6 @@ NavigationLayout:
helper_text_mode: "on_error" helper_text_mode: "on_error"
BoxLayout: BoxLayout:
spacing:50 spacing:50
AnchorLayout:
MDRaisedButton:
size_hint: 1, None
height: dp(40)
on_press: root.reset_composer()
MDLabel:
font_style: 'Title'
text: 'reset'
font_size: '13sp'
color: (1,1,1,1)
halign: 'center'
<MyTextInput>: <MyTextInput>:
readonly: False readonly: False

View File

@ -558,6 +558,7 @@ class DropDownWidget(BoxLayout):
self.ids.txt_input.text = '' self.ids.txt_input.text = ''
self.ids.subject.text = '' self.ids.subject.text = ''
self.ids.body.text = '' self.ids.body.text = ''
toast("Reset message")
def auto_fill_fromaddr(self): def auto_fill_fromaddr(self):
"""Mehtod used to fill the text automatically From Address.""" """Mehtod used to fill the text automatically From Address."""
@ -694,6 +695,7 @@ class Random(Screen):
self.parent.parent.parent.parent.ids.toolbar.opacity = 1 self.parent.parent.parent.parent.ids.toolbar.opacity = 1
self.parent.parent.parent.parent.ids.toolbar.disabled = False self.parent.parent.parent.parent.ids.toolbar.disabled = False
self.parent.parent.parent.parent.ids.sc10.ids.ml.clear_widgets() self.parent.parent.parent.parent.ids.sc10.ids.ml.clear_widgets()
self.manager.current = 'myaddress'
self.parent.parent.parent.parent.ids.sc10.init_ui() self.parent.parent.parent.parent.ids.sc10.init_ui()
self.manager.current = 'myaddress' self.manager.current = 'myaddress'
toast('New address created') toast('New address created')
@ -1158,6 +1160,7 @@ class NavigateApp(App): # pylint: disable=too-many-public-methods
self.root.ids.toolbar.left_action_items = [ self.root.ids.toolbar.left_action_items = [
['arrow-left', lambda x: self.back_press()]] ['arrow-left', lambda x: self.back_press()]]
self.root.ids.toolbar.right_action_items = [ self.root.ids.toolbar.right_action_items = [
['refresh', lambda x: self.root.ids.sc3.children[0].reset_composer()],
['send', lambda x: self.root.ids.sc3.children[0].send(self)]] ['send', lambda x: self.root.ids.sc3.children[0].send(self)]]
def back_press(self): def back_press(self):
@ -1167,7 +1170,7 @@ class NavigateApp(App): # pylint: disable=too-many-public-methods
self.root.ids.toolbar.left_action_items = \ self.root.ids.toolbar.left_action_items = \
[['menu', lambda x: self.root.toggle_nav_drawer()]] [['menu', lambda x: self.root.toggle_nav_drawer()]]
self.root.ids.scr_mngr.current = 'inbox' \ self.root.ids.scr_mngr.current = 'inbox' \
if state.in_composer else 'allmails' if state.is_allmail else state.detailPageType if state.in_composer else 'allmails' if state.is_allmail else state.detailPageType if state.detailPageType else 'inbox'
self.root.ids.scr_mngr.transition.direction = 'right' self.root.ids.scr_mngr.transition.direction = 'right'
self.root.ids.scr_mngr.transition.bind(on_complete=self.reset) self.root.ids.scr_mngr.transition.bind(on_complete=self.reset)
if state.is_allmail or state.detailPageType == 'draft': if state.is_allmail or state.detailPageType == 'draft':
@ -1465,6 +1468,8 @@ class MailDetail(Screen):
sqlExecute( sqlExecute(
"UPDATE inbox SET folder = 'trash' WHERE \ "UPDATE inbox SET folder = 'trash' WHERE \
msgid = ?;", str(state.mail_id)) msgid = ?;", str(state.mail_id))
msg_count_objs.inbox_cnt.badge_text = str(int(state.inbox_count) - 1)
state.inbox_count = str(int(state.inbox_count) - 1)
self.parent.screens[0].ids.ml.clear_widgets() self.parent.screens[0].ids.ml.clear_widgets()
self.parent.screens[0].loadMessagelist(state.association) self.parent.screens[0].loadMessagelist(state.association)
elif state.detailPageType == 'draft': elif state.detailPageType == 'draft':
@ -1593,7 +1598,7 @@ class AddbookDetailPopup(Popup):
window_obj = self.parent.children[1].ids window_obj = self.parent.children[1].ids
window_obj.sc3.children[0].ids.txt_input.text = self.address window_obj.sc3.children[0].ids.txt_input.text = self.address
window_obj.sc3.children[0].ids.ti.text = '' window_obj.sc3.children[0].ids.ti.text = ''
window_obj.sc3.children[0].ids.btn.text = '' window_obj.sc3.children[0].ids.btn.text = 'Select'
window_obj.sc3.children[0].ids.subject.text = '' window_obj.sc3.children[0].ids.subject.text = ''
window_obj.sc3.children[0].ids.body.text = '' window_obj.sc3.children[0].ids.body.text = ''
window_obj.scr_mngr.current = 'create' window_obj.scr_mngr.current = 'create'
@ -1813,10 +1818,10 @@ class Allmails(Screen):
"""Load Inbox, Sent anf Draft list of messages.""" """Load Inbox, Sent anf Draft list of messages."""
all_mails = sqlQuery( all_mails = sqlQuery(
"SELECT toaddress, fromaddress, subject, message, folder, ackdata As id, DATE(lastactiontime) As actionTime \ "SELECT toaddress, fromaddress, subject, message, folder, ackdata As id, DATE(lastactiontime) As actionTime \
FROM sent \ FROM sent WHERE folder = 'sent'\
UNION \ UNION \
SELECT toaddress, fromaddress, subject, message, folder, msgid As id, DATE(received) As actionTime \ SELECT toaddress, fromaddress, subject, message, folder, msgid As id, DATE(received) As actionTime \
FROM inbox ORDER BY actionTime DESC") FROM inbox WHERE folder = 'inbox' ORDER BY actionTime DESC")
if all_mails: if all_mails:
state.kivyapp.root.children[2].children[0].ids.allmail_cnt.badge_text = str(len(all_mails)) state.kivyapp.root.children[2].children[0].ids.allmail_cnt.badge_text = str(len(all_mails))
state.all_count = str(len(all_mails)) state.all_count = str(len(all_mails))