Commit Graph

463 Commits

Author SHA1 Message Date
Adam Mesha
5629533b38 Add hooks before and after a state change.
Useful for plugin authors.
2014-04-22 01:20:48 +03:00
Damien Elmes
28b2f8fe03 allow main webview to focus, which may fix shortcut issues
some users reported plugins that define reviewer shortcuts broke
2014-04-16 01:43:33 +09:00
Damien Elmes
966aca0f20 disable window modal progress dialog which is causing crashes 2014-04-16 00:46:26 +09:00
Damien Elmes
b99e349695 fix copy not appearing when reviewing 2014-04-14 15:32:30 +09:00
Damien Elmes
468c4f0c4b add julien 2014-04-13 01:16:31 +09:00
Damien Elmes
2802d074bb disable previous osx workaround that may be causing crash on file dialog 2014-04-10 14:01:24 +09:00
Houssam Salem
3aeb5d86da Added search saving feature to card browser. 2014-04-09 04:35:00 +10:00
Houssam Salem
8f61dd3bf2 Merge branch 'master' of https://github.com/dae/anki 2014-04-06 16:38:32 +10:00
Damien Elmes
7dc26ed31d only collapse cloze in type answer if single unique phrase 2014-03-28 07:25:27 +09:00
Damien Elmes
9f6b073def allow copy context item in info view 2014-03-27 16:48:26 +09:00
Damien Elmes
5044089d42 Revert "tweak heights and font sizes"
This reverts commit 9beed20dc0.

beta testers all seem to prefer the original smaller size
2014-03-27 14:02:55 +09:00
Damien Elmes
b562b8c6dc Revert "fix some memory leaks"
This reverts commit b9ba2375a1.

testing assumption that this is causing the windows crashes
2014-03-27 13:58:30 +09:00
Damien Elmes
c4c031d680 Merge branch 'master' of github.com:dae/anki 2014-03-20 08:00:48 +09:00
Damien Elmes
5cc8e9b7d3 show main window on startup on mac
this causes a visible resize, but seems to fix the intermittent
beachball on startup issue
2014-03-20 08:00:02 +09:00
Houssam Salem
b4057152f7 Merge branch 'master' of https://github.com/dae/anki 2014-03-16 22:23:29 +11:00
Damien Elmes
29026b08e2 fix crashes and corruption in column headers
set all columns to interactive at once to work around qt5 issues
2014-03-14 15:41:00 +09:00
Damien Elmes
f9d93fa888 Revert "use a new header key on qt5 to fix drawing bug"
This reverts commit e063123218.
2014-03-14 15:29:48 +09:00
Damien Elmes
44031b065c update add-on forum link 2014-03-14 15:28:34 +09:00
Damien Elmes
e13fcad8a2 Merge pull request #67 from julienbaley/cloze_clone
Fixes creation of Cloze when having a chained modifier
2014-03-14 13:50:15 +09:00
Damien Elmes
b9ba2375a1 fix some memory leaks 2014-03-14 12:51:38 +09:00
Julien Baley
69a19b58c2 Fixes creation of Cloze when having a chained modifier on the left of cloze 2014-03-09 18:12:39 +00:00
Damien Elmes
fe2c94b819 use different way of scrolling to answer to fix qt5 bug 2014-03-07 10:21:38 +09:00
Damien Elmes
9beed20dc0 tweak heights and font sizes 2014-03-07 10:16:38 +09:00
Damien Elmes
66908a172a add houssam to about 2014-03-07 06:47:12 +09:00
Damien Elmes
e063123218 use a new header key on qt5 to fix drawing bug 2014-03-06 09:07:03 +09:00
Damien Elmes
93414007b8 stop providing pyqtconfig, as it's no longer available on newer plats 2014-03-06 09:04:28 +09:00
Damien Elmes
8fecf53c3b use qdesktopservices on qt5+pyqt4 2014-03-06 09:03:52 +09:00
Houssam Salem
068a63270d Changed location of import button (#1018).
Also updated help link in same window to point to a valid anchor.
2014-02-22 21:30:32 +11:00
Damien Elmes
96cc486528 editor needs to accept focus; rename cardViewer to canFocus 2014-02-18 15:13:59 +09:00
Houssam Salem
81d88908a5 Remember scroll position in deck browser (#977). 2014-02-17 13:08:32 +11:00
Damien Elmes
776168b2ea Merge pull request #62 from hssm/998
Issue #998: Allow copy/paste and context menu in all card windows.
2014-02-15 23:43:15 +09:00
Damien Elmes
23c557af6e Merge pull request #61 from hssm/browser-deck-collapse
Add expand/collapse support for decks in browser tree.
2014-02-15 23:43:00 +09:00
Houssam Salem
a12e6f6b65 Issue #998: Allow copy/paste and context menu in all card windows. 2014-02-15 17:26:03 +11:00
Houssam Salem
770c6e9c4a Add expand/collapse support for decks in browser tree.
The state is preserved in a new deck configuration key named 'browserCollapsed'.
2014-02-15 13:32:14 +11:00
Damien Elmes
2ec399a009 catch ssl error 2014-02-06 06:50:41 +09:00
Damien Elmes
640bcfa7d5 fix 1000 cap in overview screen 2014-02-06 05:33:58 +09:00
Damien Elmes
b97f913ba1 catch another invalidTempFolder msg 2014-02-03 01:51:51 +09:00
Damien Elmes
3b20de173f preserve order in multi cloze type answer; bump version 2014-01-30 00:34:42 +09:00
Damien Elmes
1e1e1f6f95 catch broken pipe error 2014-01-24 03:10:04 +09:00
Damien Elmes
92eb4e71d4 ignore duplicates in cloze+type answer 2014-01-17 14:30:40 +09:00
Damien Elmes
14a2321408 increase custom study size limit as well 2014-01-14 15:45:12 +09:00
Damien Elmes
227c5cbc94 rename corrupt collection (#999)
if we don't do this, the user can never get back into the profile
in order to overwrite it with a backup
2014-01-14 15:24:42 +09:00
Damien Elmes
513b0ca8d7 ignore filtered cards when determining new card pos boundaries 2014-01-14 15:06:22 +09:00
Damien Elmes
76ed611bc0 workaround for google images+safari 2014-01-14 14:59:16 +09:00
Damien Elmes
4b217664aa confirm interface language selection on first startup 2014-01-14 14:40:45 +09:00
Damien Elmes
8769a6daf0 catch err 10054 2014-01-14 14:12:49 +09:00
Damien Elmes
c5df294a28 fix "local variable 'txt' referenced before assignment" 2014-01-13 19:07:34 +09:00
Damien Elmes
cc98ef3763 tweak imports to work around tooling incorrectly finding module unused
fixes 'quit' from the profile menu, etc
2013-12-19 07:41:29 +09:00
Damien Elmes
f057242da1 typo in clock off msg 2013-12-09 15:45:39 +09:00
Damien Elmes
647ca8bffa option to disable backup compression 2013-12-06 13:35:31 +09:00
Damien Elmes
46a771def3 fix clock off message 2013-12-06 13:27:13 +09:00
Damien Elmes
5bc25e494c add fixme 2013-12-02 10:26:18 +09:00
Damien Elmes
9b02f71abf friendly msg for 10053 error 2013-11-27 23:02:03 +09:00
Damien Elmes
0372f30220 adjust media regexp to not trigger on mce_src
otherwise pasting the following will cause an error:

<img src="..." mce_src="/foo.png">
2013-11-27 19:24:41 +09:00
Damien Elmes
1f05392113 change default import mode to ignore updates 2013-11-26 18:19:54 +09:00
Damien Elmes
dc2fd097d8 if unrecognized url pasted in, paste as text
this fixes pasting a url copied from the location bar in chrome
2013-11-26 17:57:14 +09:00
Damien Elmes
dd1899bcc6 cascading column resize must be set after resize 2013-11-26 04:57:39 +09:00
Damien Elmes
6ed971cb6b we need to retry when we get BadStatusLine
this is caused by the http keep alive being closed by the server
2013-11-26 02:43:59 +09:00
Damien Elmes
fb8cb34532 fix clayout switching back to original tab when flipping 2013-11-18 10:29:40 +09:00
Damien Elmes
ae8074ec01 make sure we reset odue when rescheduling as new
if we fail to do this for a relearning card, it sticks around
until it causes problems later
2013-11-17 16:03:58 +09:00
Damien Elmes
0389eebc43 ask people to check media when media sanity occurs 2013-11-14 12:12:37 +09:00
Damien Elmes
8812472b53 catch "no such file or directory" error when connecting with no net
soren reports it happening on his computer; can't repro it here

also make sure exception is always converted to string in reliable way
2013-11-14 11:14:21 +09:00
Damien Elmes
f6b9dadf13 catch invalid file encodings in media check & sync 2013-11-13 17:19:25 +09:00
Damien Elmes
ef9157a8ee don't open log for export or upgrade, only regular+sync 2013-11-13 16:48:22 +09:00
Damien Elmes
9f548ad85a recover from a corrupt prefs.db that fails to load at all 2013-11-13 15:29:50 +09:00
Damien Elmes
9c678c32ad further simplify augmented httplib2 conn_request 2013-11-13 15:15:03 +09:00
Damien Elmes
927e618f53 disable plastique theme on osx as possible crash fix 2013-11-13 14:56:37 +09:00
Damien Elmes
3dbc6fa0dd strip out buggy retry code
it assumed there'd be at least one retry, and was trying to return
response that was initialized
2013-11-08 01:14:49 +09:00
Damien Elmes
be81d282ac catch temp folder issue when importing 2013-11-07 21:57:23 +09:00
Damien Elmes
5dfe95aa67 move debug logging into libanki
we want to be able to log the initial automatic sync, which
happens before the debug logging was set up in ankiqt

also skip the flush, as it should eventually get written
2013-11-04 23:04:27 +09:00
Damien Elmes
2e22b6218b don't close log on profile close
we want the log to stick around for syncs, and if the user
changes to another profile the log will be closed then
2013-11-04 06:35:30 +09:00
Damien Elmes
1d2ef1dbfb seeking on win32 is slow, so keep file handle around 2013-11-03 18:39:03 +09:00
Damien Elmes
3348b091d0 tweak logging
- log only sched getCard(), not all getCard calls
- don't log sched.today unless it's changed
2013-10-30 22:42:32 +09:00
Damien Elmes
41a5f4eb4e work around a font issue on osx10.9 2013-10-26 10:53:27 +09:00
Damien Elmes
1fe04a29b2 change env var name 2013-10-23 16:04:44 +09:00
Damien Elmes
82a54c780f catch invalid temp folder and other tweaks
- tweak sync code so that a failure in loading the collection
  won't leave the app with an unopen collection
- don't show corrupt collection message when the error is not
  a db error
- catch the temp folder issue when loading the collection. i suspect
  this was the issue that was causing some people to end up with
  an open anki instance with no collection loaded
2013-10-22 15:30:53 +09:00
Damien Elmes
553a908839 skip startup sync when restoring from backup 2013-10-22 14:57:56 +09:00
Damien Elmes
a9c9452271 bury card option 2013-10-22 14:28:45 +09:00
Damien Elmes
004998c8ec env var to skip expensive closing during dev 2013-10-22 14:28:17 +09:00
Piotr Kubowicz
b0a24a14ff Fixed the translation in the warning about system clock 2013-10-21 09:52:54 +02:00
Damien Elmes
184ea3503a use file system encoding for cmdline args
thanks to to wlhunag for the initial patch!
2013-10-21 09:22:14 +09:00
Damien Elmes
4a9c08014e return of the evil bytestring windows exceptions 2013-10-20 11:01:57 +09:00
Damien Elmes
4841858f14 update about 2013-10-20 10:42:08 +09:00
Damien Elmes
58f13f1e9a display time difference & more info in clock off msg; i18n it 2013-10-20 10:26:11 +09:00
Damien Elmes
bab63de768 silly me, we were overriding retries in the aqt monkeypatch 2013-10-20 10:25:25 +09:00
Damien Elmes
d6f9fb4ab0 fix invalid translation 2013-10-20 10:02:29 +09:00
Damien Elmes
0ac8789ad5 encode to utf8 before writing log 2013-10-18 15:21:54 +09:00
Damien Elmes
0fbc94c186 more logging tweaks
- disable in browser, note.cards()
- in getCard() we want the calling frame, not us
- log current day
- show card/note id in card info stat
2013-10-18 14:20:20 +09:00
Damien Elmes
b99533a5ad add logging to some scheduling and syncing code 2013-10-18 11:52:21 +09:00
Damien Elmes
9baa3e197a add option to disable burying of reviews 2013-10-18 10:38:29 +09:00
Damien Elmes
9cb1d19dc2 try to work around the qbytearray issue
https://anki.tenderapp.com/discussions/ankidesktop/3369-bug-report-for-restoring-from-backup
2013-10-18 07:53:53 +09:00
Damien Elmes
5bf0a31c51 catch 413 error and don't trigger on file line numbers
fixes spurious proxy auth required msg
2013-10-14 11:18:52 +09:00
Damien Elmes
2f3f285528 clarify 409 msg 2013-10-10 11:48:38 +09:00
Damien Elmes
d503b62cd1 fix display of non-latin tags 2013-10-08 07:42:06 +09:00
Damien Elmes
3ed2861115 include platform in cv 2013-10-06 04:37:39 +09:00
Damien Elmes
9524dbed96 give note types unique name when adding/importing (#325) 2013-10-04 09:00:08 +09:00
Damien Elmes
174914b7dc scroll to newly added column in browser (#978) 2013-10-04 08:43:46 +09:00
Damien Elmes
0f7000db83 refactor second instance detection
- get rid of shared memory check as it was causing problems when an existing
  session was forcefully closed; instead we rely on the socket
- include a hash of the user's name in the key so that multiple users can run
  anki at the same time
2013-10-04 07:37:19 +09:00
Damien Elmes
f64c07ca40 show sync username in prefs screen 2013-10-04 06:09:36 +09:00
Damien Elmes
f29a04ae29 bump sync ver to 7 and change meta return value
- /sync/meta now returns a dictionary
- it includes the following extra fields
- msg: if non-empty, show this message at the end of the sync
- cont: if false, show above message and abort sync
- uname: the user's email address, so it can be stored by the local client to
  show users who have forgotten which email address they used. in the future
  this will be saved only when logging in, so do a conditional access on it
2013-10-04 06:09:28 +09:00
Damien Elmes
b55761190f option to tag notes in find dupes function 2013-10-04 00:07:11 +09:00
Damien Elmes
3d33436a86 move version number into libanki 2013-10-02 03:50:19 +09:00
Damien Elmes
e7be6fd4be make sure we decode full traceback on addon err (#954) 2013-09-20 15:02:46 +09:00
Damien Elmes
fe3ce87020 make sure we escape html chars after type ans comp. (#960) 2013-09-20 14:57:05 +09:00
Damien Elmes
7eabc36468 remember window size for deck&model selection (#931) 2013-09-20 14:51:12 +09:00
Damien Elmes
2fff30db2f prioritize urls over text; fixes linux fm drop (#945) 2013-09-20 14:41:56 +09:00
Damien Elmes
bd8707f54c support import of renamed .apkg files 2013-09-11 15:56:59 +09:00
Damien Elmes
c1827e0561 unbury from overview shouldn't unbury all decks 2013-09-11 15:33:27 +09:00
Damien Elmes
b49d52393e add tags column in browser 2013-09-04 03:21:19 +09:00
Damien Elmes
463fec1158 setdestroyonexit (#907) 2013-09-04 03:15:35 +09:00
Damien Elmes
31c42a4f75 fix import when dyn deck selected (#959) 2013-09-04 03:13:02 +09:00
Damien Elmes
4fe76257f1 about about and available languages 2013-08-22 15:54:33 +09:00
Damien Elmes
afde11671e rework sibling handling and change bury semantics
First, burying changes:

- unburying now happens on day rollover, or when manually unburying from
  overview screen

- burying is not performed when returning to deck list, or when closing
  collection, so burying now must mark cards as modified to ensure sync
  consistent

- because they're no longer temporary to a session, make sure we exclude them
  in filtered decks in -is:suspended

Sibling spacing changes:

- core behaviour now based on automatically burying related cards when we
  answer a card

- applies to reviews, optionally to new cards, and never to cards in the
  learning queue (partly because we can't suspend/bury cards in that queue at
  the moment)

- this means spacing works consistently in filtered decks now, works on
  reviews even when user is late to review, and provides better separation of
  new cards

- if burying new cards disabled, we just discard them from the current queue.
  an option to set due=ord*space+due would be nicer, but would require
  changing a lot of code and is more appropriate for a future major version
  change. discarding from queue suffers from the same issue as the new card
  cycling in that queue rebuilds may cause cards to be shown close together,
  so the default burying behaviour is preferable

- refer to them as 'related cards' rather than 'siblings'

These changes don't require any changes to the database format, so they
should hopefully coexist with older clients without issue.
2013-08-10 15:56:26 +09:00
Damien Elmes
8a4fbcc430 unbury in deckbrowser, not deckduelist() (#946) 2013-08-08 15:19:57 +09:00
Damien Elmes
f6c19ca0b4 don't die if autojunk unavailable (#952) 2013-08-08 10:56:44 +09:00
Damien Elmes
ed5df2b251 bump version 2013-07-24 01:05:06 +09:00
Damien Elmes
0254a25c23 unused media tooltip patch from julien baley (removed redundant .finish()) 2013-07-24 01:04:37 +09:00
Damien Elmes
36e877fe12 work around crash on close when card layout opened on windows (#940) 2013-07-23 22:35:00 +09:00
Damien Elmes
402ec3a0b8 don't try to download local image urls 2013-07-18 20:44:33 +09:00
Damien Elmes
9ccb21fe09 fix incorrect code that was not restoring clipboard 2013-07-18 19:56:47 +09:00
Damien Elmes
70008a8f40 remove filtered deck restriction on stats 2013-07-18 19:01:39 +09:00
Damien Elmes
99c90b929b warn when prefs.db corrupt and catch another case 2013-07-18 18:59:14 +09:00
Damien Elmes
6f66f11572 Merge pull request #40 from steveaw/add-hooks3
Add hooks for context menus
2013-07-16 19:08:59 -07:00
Damien Elmes
4c671b3676 work around linux crash on paste
https://anki.tenderapp.com/discussions/ankidesktop/2019-inaccessible-firewall-blocked-media-url-paste-hangs-anki-for-a-minute-until-a-network-is-unreachable-like-message-appears
2013-07-17 10:19:09 +09:00
steveaw
e5bc1650f9 Add hooks for context menus 2013-07-16 17:42:50 +10:00
Damien Elmes
ffff271362 make sure we strip <!--anki--> 2013-07-11 21:22:51 +09:00
Damien Elmes
f7c841fba2 Revert "when target add deck changed, switch review deck too (#695)"
This reverts commit db262031c3.

This addresses issue #929
2013-07-11 18:17:26 +09:00
Damien Elmes
3007d884b8 if there's no html and we have an image, use that (#915) 2013-07-11 17:43:18 +09:00
Damien Elmes
e2d2b759a4 refactor media downloading on paste/drop
- use html as the first choice for incoming drops/pastes
- when filtering incoming html, automatically localize any remote image
  references
- add a special case for pasting/dropping from google images when html
  stripping is on
- move filtering code into editor
2013-07-11 17:21:16 +09:00
Damien Elmes
a1ca03ee17 allow urllib2 to be passed unicode data to send (#923) 2013-07-03 04:48:52 +09:00
Damien Elmes
2754ead0a4 don't bug out if cloze:text is invalid (#925) 2013-07-03 04:27:46 +09:00
Damien Elmes
2047e5c93c don't send old backups to the trash (#912) 2013-07-03 03:41:41 +09:00
Hans Engel
c916fa533f Handle invalid import file argument in both launch cases (single-profile and multi-profile launch) (#924) 2013-06-29 15:08:37 -07:00
Soren Bjornstad
b5521af059 fix incorrect instructions to "maintenance" menu
(on finding an empty card, tells user to go to old location of the empty
cards tool)
2013-06-25 10:59:00 -05:00
Damien Elmes
1a9ef3734e bump version 2013-06-14 13:15:18 +09:00
Damien Elmes
077d6b8187 Revert "force webkit to output <br> when enter pressed, instead of div"
This reverts commit e63c8e5619.
2013-06-14 13:11:48 +09:00
Damien Elmes
24995de437 Revert "need to strip trailing <br /> when saving fields"
This reverts commit f10b336fb9.
2013-06-14 13:11:26 +09:00
Damien Elmes
49ea66bca9 Revert "add a hack to prevent double newlines when deleting formatting"
This reverts commit ecf9776f90.
2013-06-14 13:11:04 +09:00
Damien Elmes
e7ec4edf92 fix sync error message bug 2013-06-14 13:06:56 +09:00
Damien Elmes
b71282ea0b bump version 2013-06-12 11:22:27 +09:00
Damien Elmes
c0e061a9f4 make sure we show correct version when nothing typed in 2013-06-12 11:22:13 +09:00
Damien Elmes
5ec30e6858 allow apostrophe when renaming deck 2013-06-12 11:12:03 +09:00
Damien Elmes
f80d01dc4f update about 2013-06-12 10:50:57 +09:00
Damien Elmes
426eff4cff prioritize images over html for now
when a user copies an image from the browser to the clipboard, we need to do
this so the image pastes, as we currently don't support images derived from
html pastes (issue 92)
2013-06-10 16:04:58 +09:00
Damien Elmes
51121f6e86 escape image links in clayout and preview as well (#903) 2013-06-10 15:28:34 +09:00
Damien Elmes
c7b31d28e4 fix unicode error on export (#904) 2013-06-10 15:19:44 +09:00
Damien Elmes
9d173f4c83 default to allowing HTML on import 2013-06-10 15:03:26 +09:00
Damien Elmes
8fd4ae7a89 include pyqtconfig until add-ons have a chance to update 2013-06-10 15:03:19 +09:00
Damien Elmes
dbd60dba4b fix error when opening card layout 2013-06-07 09:51:26 +09:00
Damien Elmes
daca1af693 compare typed answer in nfc form 2013-06-05 18:39:42 +09:00