Skip to content

Commit

Permalink
Click to play audio in previewer
Browse files Browse the repository at this point in the history
  • Loading branch information
RicBent committed Dec 11, 2021
1 parent 58753c2 commit 61f36b5
Showing 1 changed file with 19 additions and 17 deletions.
36 changes: 19 additions & 17 deletions src/click_play_audio.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,38 +2,40 @@

import aqt
from aqt.reviewer import Reviewer
from aqt.browser.previewer import Previewer

from .note_type_mgr import nt_get_lang


def reviewer_play_audio(reviewer: Reviewer, word: str):
def ctx_get_lang(ctx):

card = reviewer.card
note = None

if not card:
return
if isinstance(ctx, Reviewer):
card = ctx.card

elif isinstance(ctx, Previewer):
card = ctx.card()

if not card:
return None

note = card.note()

if not note:
return
return None

lang = nt_get_lang(card.note_type())
if lang is None:
return

aqt.mw.migaku_connection.play_audio(lang.code, word)
return nt_get_lang(card.note_type())


def handle_js_message(handled: Tuple[bool, Any], message: str, ctx: Any) -> Tuple[bool, Any]:

if not isinstance(ctx, Reviewer):
return handled

reviewer: Reviewer = ctx

if message.startswith('play_audio'):
reviewer_play_audio(reviewer, message[11:])
lang = ctx_get_lang(ctx)

if lang:
word = message[11:]
aqt.mw.migaku_connection.play_audio(lang.code, word)

return (True, None)

return handled
Expand Down

0 comments on commit 61f36b5

Please sign in to comment.