This commit is contained in:
Damien Elmes 2019-12-16 08:51:38 +10:00
parent 4e377a3b33
commit c508498ba8
8 changed files with 29 additions and 14 deletions

View file

@ -6,6 +6,8 @@ import json
import re import re
import zipfile import zipfile
from collections import defaultdict from collections import defaultdict
from typing import Callable, Dict, Any
import markdown import markdown
from send2trash import send2trash from send2trash import send2trash
import jsonschema import jsonschema
@ -355,8 +357,8 @@ and have been disabled: %(found)s") % dict(name=self.addonName(dir), found=addon
# Add-on Config # Add-on Config
###################################################################### ######################################################################
_configButtonActions = {} _configButtonActions: Dict[str, Callable[[], None]] = {}
_configUpdatedActions = {} _configUpdatedActions: Dict[str, Callable[[Any], None]] = {}
def addonConfigDefaults(self, dir): def addonConfigDefaults(self, dir):
path = os.path.join(self.addonsFolder(dir), "config.json") path = os.path.join(self.addonsFolder(dir), "config.json")
@ -437,7 +439,7 @@ and have been disabled: %(found)s") % dict(name=self.addonName(dir), found=addon
# Web Exports # Web Exports
###################################################################### ######################################################################
_webExports = {} _webExports: Dict[str, str] = {}
def setWebExports(self, module, pattern): def setWebExports(self, module, pattern):
addon = self.addonFromModule(module) addon = self.addonFromModule(module)

View file

@ -12,6 +12,8 @@ import shutil
import io import io
import locale import locale
from typing import Dict, Any
from aqt.qt import * from aqt.qt import *
from anki.db import DB from anki.db import DB
from anki.utils import isMac, isWin, intTime from anki.utils import isMac, isWin, intTime
@ -35,7 +37,7 @@ metaConf = dict(
disabledAddons=[], disabledAddons=[],
) )
profileConf = dict( profileConf: Dict[str,Any] = dict(
# profile # profile
mainWindowGeom=None, mainWindowGeom=None,
mainWindowState=None, mainWindowState=None,

View file

@ -11,14 +11,15 @@ os.environ["LIBOVERLAY_SCROLLBAR"] = "0"
from anki.utils import isWin, isMac from anki.utils import isWin, isMac
from PyQt5.Qt import * from PyQt5.QtCore import *
from PyQt5.QtWidgets import *
# trigger explicit message in case of missing libraries # trigger explicit message in case of missing libraries
# instead of silently failing to import # instead of silently failing to import
from PyQt5.QtWebEngineWidgets import * from PyQt5.QtWebEngineWidgets import * # type: ignore
try: try:
from PyQt5 import sip from PyQt5 import sip
except ImportError: except ImportError:
import sip import sip # type: ignore
from PyQt5.QtCore import pyqtRemoveInputHook # pylint: disable=no-name-in-module from PyQt5.QtCore import pyqtRemoveInputHook # pylint: disable=no-name-in-module

View file

@ -44,7 +44,7 @@ class SyncManager(QObject):
auth=auth, media=self.pm.profile['syncMedia'], auth=auth, media=self.pm.profile['syncMedia'],
hostNum=self.pm.profile.get("hostNum"), hostNum=self.pm.profile.get("hostNum"),
) )
t.event.connect(self.onEvent) t._event.connect(self.onEvent)
self.label = _("Connecting...") self.label = _("Connecting...")
prog = self.mw.progress.start(immediate=True, label=self.label) prog = self.mw.progress.start(immediate=True, label=self.label)
self.sentBytes = self.recvBytes = 0 self.sentBytes = self.recvBytes = 0
@ -287,7 +287,7 @@ Check Database, then sync again."""))
class SyncThread(QThread): class SyncThread(QThread):
event = pyqtSignal(str, str) _event = pyqtSignal(str, str)
def __init__(self, path, hkey, auth=None, media=True, hostNum=None): def __init__(self, path, hkey, auth=None, media=True, hostNum=None):
QThread.__init__(self) QThread.__init__(self)
@ -460,6 +460,6 @@ class SyncThread(QThread):
self.fireEvent("mediaSuccess") self.fireEvent("mediaSuccess")
def fireEvent(self, cmd, arg=""): def fireEvent(self, cmd, arg=""):
self.event.emit(cmd, arg) self._event.emit(cmd, arg)

View file

@ -13,7 +13,7 @@ from anki.lang import _
# Page for debug messages # Page for debug messages
########################################################################## ##########################################################################
class AnkiWebPage(QWebEnginePage): class AnkiWebPage(QWebEnginePage): # type: ignore
def __init__(self, onBridgeCmd): def __init__(self, onBridgeCmd):
QWebEnginePage.__init__(self) QWebEnginePage.__init__(self)
@ -89,7 +89,7 @@ class AnkiWebPage(QWebEnginePage):
# Main web view # Main web view
########################################################################## ##########################################################################
class AnkiWebView(QWebEngineView): class AnkiWebView(QWebEngineView): # type: ignore
def __init__(self, parent=None): def __init__(self, parent=None):
QWebEngineView.__init__(self, parent=parent) QWebEngineView.__init__(self, parent=parent)

View file

@ -7,7 +7,7 @@ Depends only on ctypes, and retrieves path locations in Unicode
""" """
import ctypes import ctypes
from ctypes import windll, wintypes from ctypes import windll, wintypes # type: ignore
__license__ = "MIT" __license__ = "MIT"
__version__ = "0.2" __version__ = "0.2"

View file

@ -21,3 +21,13 @@ ignore_missing_imports = True
ignore_missing_imports = True ignore_missing_imports = True
[mypy-bs4] [mypy-bs4]
ignore_missing_imports = True ignore_missing_imports = True
[mypy-pythoncom]
ignore_missing_imports = True
[mypy-win32com]
ignore_missing_imports = True
[mypy-send2trash]
ignore_missing_imports = True
[mypy-markdown]
ignore_missing_imports = True
[mypy-jsonschema.*]
ignore_missing_imports = True

View file

@ -1,4 +1,4 @@
#!/bin/bash #!/bin/bash
TOOLS="$(cd "`dirname "$0"`"; pwd)" TOOLS="$(cd "`dirname "$0"`"; pwd)"
mypy $TOOLS/../anki mypy $TOOLS/../anki $TOOLS/../aqt