Commit Graph

524 Commits

Author SHA1 Message Date
Soren I. Bjornstad
a479bc7c48 change "discard field" to "ignore" in text importer
A user pointed out that once selected it said "ignore" and that
"discard" threatened that the information might be deleted.
2014-08-11 10:31:48 -05:00
Soren I. Bjornstad
9bb217f198 reduce tab width in template editor
The previous one was ridiculously wide; reduced to 30 pixels.
2014-08-10 14:36:13 -05:00
Damien Elmes
1d6eff36b1 make sure we write addon .py files as they've been uploaded 2014-08-09 13:28:48 +09:00
Damien Elmes
1d2afd1ab3 make sure .db is initialized at start of profiles init
fixes
File "aqt/profiles.pyc", line 253, in _loadMeta
  File "aqt/profiles.pyc", line 234, in recover
AttributeError: 'ProfileManager' object has no attribute 'db'
2014-08-09 12:50:32 +09:00
Soren I. Bjornstad
2c05c874d7 fall back to homedir on collection package export if no desktop 2014-08-05 11:25:24 -05:00
Soren I. Bjornstad
96818a07c7 don't allow pasting rich text into template editor 2014-08-05 10:42:36 -05:00
Soren I. Bjornstad
4ebb26fe6b say "notes exported", not "cards", if appropriate 2014-08-05 09:50:29 -05:00
Soren I. Bjornstad
0914c01706 Merge branch 'master' of https://github.com/dae/anki 2014-08-04 10:44:43 -05:00
Damien Elmes
d53346d783 limit url unquoting to image tags
this prevents random text like %20 in a field from being converted
when note is saved
2014-08-01 09:42:28 +09:00
Damien Elmes
f8bf8afe4a Revert "remove urllib.unquote() step in editor"
This reverts commit 23cec2d5e9.

without other changes, this causes double escaping when editing
2014-08-01 09:37:23 +09:00
Damien Elmes
cf801e4fb4 display more feedback when syncing media
deletes in particular take some time for the server to process, but
don't require much bandwidth, leading to the progress appearing to
have pause when content is actually being processed

this also gives the user an idea of how long the process will take to
complete
2014-07-28 17:00:26 +09:00
Damien Elmes
908c514e58 Merge branch 'master' of https://github.com/sobjornstad/anki 2014-07-23 20:15:29 +09:00
Soren I. Bjornstad
04966d42b6 additions to contributors list
- Volker Jansen
- myself
2014-07-22 14:37:56 -05:00
Soren I. Bjornstad
9e69da6c9a use Documents/Anki (in English) if no DocumentsLocation
Otherwise it gets created directly in the home folder, which is
confusing when you would expect that only to happen on older installs
which previously used it.
2014-07-22 11:22:06 -05:00
Soren I. Bjornstad
23cec2d5e9 remove urllib.unquote() step in editor
Fixes bug #950. We need to keep an eye out for media filename problems,
as this line is probably not necessary anymore with changes to the way
Anki handles encoding but could potentially introduce issues.
2014-07-22 10:36:08 -05:00
Damien Elmes
d43d9fd87a disable more useful msg in disk i/o error case 2014-07-22 08:01:19 +09:00
Julien Baley
ee55d3e96c Do not ignore the state of a window when opening it 2014-07-13 18:42:18 +01:00
Damien Elmes
1099b743b7 yet another file locking bug: must close prefs.db before moving 2014-07-07 13:18:00 +09:00
Damien Elmes
bbefeb0cfd make sure we don't rename to existing prefs.db.broken 2014-07-07 10:47:57 +09:00
Damien Elmes
760e16dfbf catch more startup errors 2014-07-07 10:41:56 +09:00
Damien Elmes
efbb77c078 add jussi to about 2014-07-07 09:03:58 +09:00
Damien Elmes
a5d9131445 force media resync on deauth 2014-07-04 19:44:15 +09:00
Damien Elmes
03f9c76b9e Merge branch 'master' of https://github.com/sobjornstad/anki 2014-07-04 06:41:44 +09:00
Soren I. Bjornstad
8e2b653bd0 make path to documents folder translatable 2014-07-03 14:46:34 -05:00
Soren I. Bjornstad
45a6e8cdba fix automatic 'deck:current' missing trailing space
3aeb5d8 accidentally added some duplicate code that made the search
parser run twice and strip the space from the search that had just been
automatically placed in the box.
2014-07-03 14:03:04 -05:00
Damien Elmes
e5a2a9c3f8 make sure users can unload corrupt collection to create new profile 2014-07-02 06:29:53 +09:00
Damien Elmes
0abcc7412f initial zip check should display same zip error message 2014-06-29 05:55:01 +09:00
Damien Elmes
1e34696c5b Merge branch 'master' of git://github.com/sobjornstad/anki into sobjornstad-master
Conflicts:
	anki/exporting.py
2014-06-29 04:07:00 +09:00
Soren I. Bjornstad
0c937074eb prevent profiles from getting out of sync when rename fails
If there is an error in renaming the folder, don't write the new profile
name to the database.
2014-06-28 11:31:02 -05:00
Soren I. Bjornstad
186641ad8c add css id to the star used for marking
Can't automatically prevent the star from being affected by image resize
and other CSS properties, as even weirder things happen to it when we
try. However, this will give users the ability to fix it themselves.
2014-06-28 09:17:36 -05:00
Damien Elmes
4c7a1a2af7 Merge branch 'master' of https://github.com/hssm/anki 2014-06-28 05:06:57 +09:00
Houssam Salem
68d8275ce1 Reduce margin of search box so that text isn't covered by fav button 2014-06-28 01:38:34 +10:00
Damien Elmes
61b0072dcc fix handling of corrupt collections on windows
- advise user to create new profile, which prevents restores from
  backup overwriting old backups
- don't rename the collection file, as it's no longer necessary,
  and it fixes a windows bug where the main window would be left
  open due to a failure to rename the locked collection file
2014-06-27 04:25:40 +09:00
Soren I. Bjornstad
4619933e7e change default Anki folder location on Linux to Documents/Anki
(leave in ~/Anki for existing installs)
2014-06-26 10:55:45 -05:00
dae
2aa7714f87 new media syncing protocol
- media syncing no longer locks the account, so it can be done
  in the background in the future, and multiple clients can safely
  sync media at the same time
- all operations are now idempotent, so they can be repeatedly safely
  in the event of a connection error
- whether it's a normal incremental sync, an initial sync,
  or the media database has been deleted, no files will be uploaded
  or downloaded if they already exist on the other side
- file removals are now chunked like additions & updates, preventing
  timeouts due to large requests
- if the server can't process a chunk in time, it will return a count
  of what it did process, so the client can retry the rest

Notes for AnkiDroid:

- when porting this, recommend you pick a different name for the
.media.db2 file, so users don't accidentally copy the AD version to
the desktop or vice versa
- please make sure filenames are added to the zip in NFC form
2014-06-26 09:00:38 +09:00
dae
1933779fa6 Merge branch 'master' of github.com:dae/anki 2014-06-26 08:58:22 +09:00
dae
48dbc48b65 provide debug info when collection corrupt 2014-06-26 07:37:16 +09:00
Soren I. Bjornstad
083d9e8aa5 remove search text when ctrl-clicking a left panel item 2014-06-25 13:46:21 -05:00
Soren I. Bjornstad
9ac6ac4d2b Merge branch 'windows-case-fix' 2014-06-24 15:30:32 -05:00
Soren I. Bjornstad
a2eb5a09c3 allow changing case of profile name on Windows 2014-06-24 15:28:32 -05:00
Soren I. Bjornstad
88c36af987 don't try to log in if user cancels login dialog 2014-06-24 15:04:23 -05:00
Soren I. Bjornstad
d659d9cff7 add 'replay audio' button to previewer 2014-06-21 15:35:45 -05:00
Soren I. Bjornstad
5b61db7d0a make sure unused media exist before deleting them 2014-06-20 19:41:56 -05:00
Soren I. Bjornstad
5f94d92f78 Merge branch 'geom_saverestore' 2014-06-20 10:36:31 -05:00
Soren I. Bjornstad
436f257e36 dialog box size and position improvements
- keep track of size and position for a number of dialogs
- make sure addons dialog opens at an appropriate size for the system
  font size
- add optional argument to showText to restore geom on creation and save
  on reject (other buttons, if used, need to be programmed to save
  individually)
2014-06-20 10:31:52 -05:00
Soren I. Bjornstad
50e0d0b811 better message when Anki can't create a profile folder 2014-06-20 10:00:44 -05:00
Soren I. Bjornstad
b4784b7437 add "export" button to deck menus 2014-06-19 19:13:12 -05:00
Soren I. Bjornstad
ebcab2122d more helpful error message for corrupt collection package 2014-06-17 16:55:55 -05:00
Soren I. Bjornstad
4de023ecba check that save to desktop was successful before showing message 2014-06-17 08:44:26 -05:00
Soren I. Bjornstad
6771af40b1 fix error handling for selecting invalid file type
(The error was never appearing because the test was missing quotation
marks.)
2014-06-17 08:31:38 -05:00
dae
fc4f24ce59 don't default to a button in prefs dialog 2014-06-03 16:26:46 +09:00
black silence
4529fa4513 fix tooltip for inverted color schemes 2014-06-02 20:02:26 +02:00
dae
c89199aee9 Merge branch 'master' of https://github.com/hssm/anki 2014-05-28 17:42:27 +09:00
Houssam Salem
7fa346c2a2 Re-check favourites status on any text change
Updates the favourites button when the search text is updated programmatically as well as user input. Fixes a bug where using the recent search drop-down doesn't update the favourites button state correctly.
2014-05-27 07:04:10 +10:00
dae
2a26b8684e Merge branch 'master' of https://github.com/hssm/anki 2014-05-26 14:19:06 +09:00
dae
8dd88c5f30 add m4a to usable formats 2014-05-25 20:02:24 +09:00
Houssam Salem
96a294039e Don't manually specify tab order.
The default order is more logical:
Text input -> Search -> Preview -> Results table
2014-05-25 11:06:30 +10:00
Houssam Salem
07426a883c Replace search lineEdit before we connect signals.
Avoids overriding the setup work we do on it.
2014-05-22 21:53:35 +10:00
Damien Elmes
7134da4cd6 enable houssam's fav code 2014-05-12 15:45:21 +09:00
Damien Elmes
380080416f Merge branch 'master' of https://github.com/hssm/anki 2014-05-12 15:34:12 +09:00
Damien Elmes
b4c5215013 allow app modal again now that qt's been fixed 2014-04-23 08:20:00 +09:00
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