Damien Elmes
9b6a21126d
drag&drop support, and paste refactor
...
- insert resulting html directly into fields instead of relying on
fragile clipboard rewriting
- catch paste events in js and send them back to python so we cover
all possible ways of pasting
- use checksum in pasted image filenames instead of .cacheKey(),
which was not unique across runs
- try each _processX() in turn instead of having special cases inside
them
- rewrite the HTML filtering:
- img rewriting and stripping of certain tags handled in bs4; other
processing handled in js for easier sharing with other clients
- use a whitelist of HTML tags and properties instead of focusing
mainly on webkit cruft
- don't run filter when focus lost, as it no longer seems to
be necessary
- the "strip html" option is currently ignored
2016-12-15 18:14:47 +10:00
Marcio Mazza
e7eaf5f378
Fix open addon folder
...
The open folder operation would break if the environment variable
LD_LIBRARY_PATH was not set
2016-11-28 18:02:30 -02:00
Damien Elmes
6131b149da
Merge pull request #142 from goapunk/master
...
Fix the lambda function for changing the mapping of the fields
2016-10-20 17:16:09 +10:00
noobie
1a665cc185
Suppress the BeautifulSoup filename warning
...
Bs4 will raise a warning if the markup (field input) starts with '/'. Suppressing the warning is probably the easiest solution, as Bs4 will still process it (no disadvantages?).
2016-10-20 04:00:34 +02:00
noobie
90128cf2d5
Fix the lambda function for changing the mapping of the fields
...
The connect signal passes a bool to the given function by default, we need to ignore it.
use underscore for the sake of idiomology
2016-10-19 22:45:46 +02:00
Damien Elmes
54ea891564
another fix for add-on downloading
2016-08-02 11:51:44 +10:00
Damien Elmes
6377dd161f
fix mesa driver being loaded on nvidia driver machines
2016-08-01 12:16:06 +10:00
Damien Elmes
f465dbd8ad
use helvetica on mac
2016-07-26 10:34:16 +10:00
Damien Elmes
adda80fc33
refuse to run on qt5.7.0
2016-07-18 13:59:45 +10:00
Damien Elmes
6a109caa7c
dialogs.open() needs to un-minimize as well
2016-07-18 13:02:21 +10:00
Damien Elmes
7c76a23cce
we can revert to fix#1 for the modSchema issue now
...
as we save at start of change note type screen, instead of in
beginReset()
2016-07-14 21:49:40 +10:00
Damien Elmes
3be25cf900
fix nautilus failing to load in linux build
2016-07-14 21:06:33 +10:00
Damien Elmes
8e71554ac4
saveNow() now requires a callback
...
the current code was freezing when clicking on 'cards' in the
browser - it looks like like the javascript callback was never
being called despite calling processEvents(). so we need to
refactor the code to call saveNow() with a callback that does the
subsequent processing.
a lot of the browser code was implicitly calling saveNow() via
beginReset(), so we've had to change all that code to save
immediately before it begins any processing. found a probable bug in
the process - it doesn't look like onRowChange() was saving before
overwriting the note, so theoretically edits could be lost if the
user switched to another card very quickly after typing something.
onSearch() has been split into a GUI-activated onSearchActivated()
that takes care of saving, and a lower level search() that refreshes
the current search. it keeps track of the last search via an instance
variable so that it refreshes properly if a user accidentally adds
some characters to their search without activating the search, then
does something like reverse the sort order.
2016-07-14 20:23:44 +10:00
Damien Elmes
37bac3979c
select all shortcut in fields
2016-07-14 11:56:18 +10:00
Damien Elmes
8fdda2bb9c
tweak win button size
2016-07-12 16:40:13 +10:00
Damien Elmes
74de1face7
specify font size again on osx
...
we lose the native button appearance, but the text is too small to
read on OSX otherwise
2016-07-12 16:28:14 +10:00
Damien Elmes
85215018a5
another approach to fixing modSchema bug
...
start the progress dialog immediately so that askUser()
becomes part of the progress dialog's modality
the problem with the previous approach was that beginReset() attempts
to save the note again, leading to schema mismatches
2016-07-12 13:53:59 +10:00
Damien Elmes
166c6f4b3c
remove debug statement
2016-07-12 13:43:21 +10:00
Damien Elmes
3fa597ed1a
wait until saveNow() is done
...
fixes content missing if typed right before save, and add window
complaining that fields aren't empty when they appear so
2016-07-12 13:30:10 +10:00
Damien Elmes
44457e78d2
fix import of media
2016-07-11 14:56:58 +10:00
Damien Elmes
5b10d7c45b
fix change note type getting stuck
...
thanks to stvad for the report
2016-07-11 11:34:12 +10:00
Damien Elmes
46dae2507b
tweaks to UI font on win/lin
2016-07-08 16:17:06 +10:00
Damien Elmes
53f7457d4c
swallow http server errors
2016-07-08 13:22:36 +10:00
Damien Elmes
00111e4182
re-enable add-on downloading
2016-07-08 13:17:33 +10:00
Damien Elmes
3afef3edb0
fix edit & delete bugs in add-ons section
2016-07-08 13:10:19 +10:00
Damien Elmes
807b7382cb
add missing runHook to deck options
2016-07-08 12:59:10 +10:00
Damien Elmes
d0fcf6a2ff
debug webengine dll problems
2016-07-08 12:34:30 +10:00
Damien Elmes
a8e2f992c8
image support
2016-07-07 23:39:48 +10:00
Damien Elmes
7d0eb6dd39
ignore copy/paste shortcuts except on mac
2016-07-07 23:34:19 +10:00
Damien Elmes
eddef71f75
prevent field from collapsing
2016-07-07 17:41:47 +10:00
Damien Elmes
9c569ac35c
fix onHeight error by not reloading toolbar each note
2016-07-07 17:29:53 +10:00
Damien Elmes
258a10edc7
add titles to various webviews to make them easy to locate
2016-07-07 17:23:13 +10:00
Damien Elmes
d94c011c88
fix clayout preview, js errors
...
.exec_() and webengineview don't seem to play nicely together
2016-07-07 12:32:27 +10:00
Damien Elmes
39a2ddac51
fix 'loading' message by removing old type answer code
2016-07-07 11:08:32 +10:00
Damien Elmes
d831bbee5f
fix exporting & one bug in stats image export
2016-07-05 19:52:26 +10:00
Damien Elmes
06169de6cd
fix type answer
2016-07-05 13:14:45 +10:00
Damien Elmes
2d5affd3f2
Revert "hack around broken qwebchannel behaviour"
...
This reverts commit 447718c605
.
2016-07-05 12:26:08 +10:00
Damien Elmes
44bf02d872
quieten beautifulsoup warning
2016-07-04 18:06:08 +10:00
Damien Elmes
d025fddfb4
Merge pull request #109 from subfusc/master
...
[Addons] Make it possible to distribute addons in a directory.
2016-07-04 16:35:49 +10:00
Damien Elmes
058fc373bd
Merge branch 'master' of github.com:dae/anki
2016-07-04 16:33:03 +10:00
Damien Elmes
dfa479607c
hook for showDeckOptions
2016-07-04 16:32:30 +10:00
Damien Elmes
d824f178cc
Merge pull request #133 from hssm/browser-recenter
...
Fix automatic horizontal scrolling in browser
2016-07-04 16:29:45 +10:00
Damien Elmes
447718c605
hack around broken qwebchannel behaviour
...
https://bugreports.qt.io/browse/QTBUG-53411
2016-07-04 16:25:24 +10:00
Damien Elmes
704610ef8f
remove button styling
...
qt5.7 loses system styling when zoom applied
2016-07-04 16:24:43 +10:00
Damien Elmes
94463991bc
basic sync support
...
currently no progress shown on large uploads/downloads
2016-07-04 15:45:53 +10:00
Damien Elmes
a1caa93054
fix mem leaks in dialogs
...
- ensure we're cleaning them up after they're rejected
- run the garbage collector afterwards so the qwebengineprocess
instances get cleaned up
2016-07-04 13:22:35 +10:00
Damien Elmes
eb3208e1e7
QKeySequence.Cancel is not in 5.5
2016-06-28 15:52:13 +10:00
Damien Elmes
a4cab1d8f2
remove setupFonts(), disable syncing
2016-06-23 12:06:16 +10:00
Damien Elmes
a001553f66
move the editor buttons into the webview
...
use new icons, which scale with dpi changes
2016-06-22 14:52:17 +10:00
Damien Elmes
8a7107ad8e
tweak button appearance on osx
2016-06-22 14:43:59 +10:00
Damien Elmes
34b95514b5
import anki earlier so we can catch invalid python version
2016-06-22 14:42:41 +10:00
Houssam Salem
7a60482269
Fix automatic horizontal scrolling in browser
2016-06-07 16:32:19 +10:00
Damien Elmes
4e2bd3f739
resize toolbars to fit content
2016-06-07 14:27:33 +10:00
Damien Elmes
d7339d9a27
update editor, key handling in webview
...
keyPressEvent/etc no longer work with qwebengineview, so we need to
install an event filter to catch things like ctrl+c. drag & drop
doesn't seem to be supported until 5.7
2016-06-06 17:54:39 +10:00
Damien Elmes
9abc9fde9f
use a channel for bridge
...
acceptNavRequest was not being called for rapid updates, so it's not
usable
2016-06-06 15:50:03 +10:00
Damien Elmes
de7e40537d
port majority of code to qt5.5+
...
- a few issues to work out still, and editor changes not done yet
- for communication between webengine and python code, we set window
.location to 'http://anki/ <something>' - the leading http is
necessary for qt to call the link handler, which was introduced
in qt5.5
- the designer files now use a promoted qobject to create instances
of AnkiWebView
- we use the css zoom property to alter webengine font size based on
system dpi
- prefs and addons folder stored in new location (at least for now)
2016-05-31 18:51:40 +10:00
Damien Elmes
15b349e3a8
start port to python 3
...
unit tests pass and main screens of GUI load
2016-05-12 14:45:35 +10:00
Damien Elmes
1dce3eaaff
drop anki1 upgrade code
2016-05-12 14:20:59 +10:00
Damien Elmes
89a5777585
store profiles as blobs
...
the cPickle data may not be valid utf8, and even with
text_factory=str this seems to cause problems sometimes
2016-05-12 14:19:16 +10:00
Dmitry Mikheev
74e28058f7
sorry, a typo crept in
2016-05-05 03:26:13 +05:00
Dmitry Mikheev
692dcfd4e7
2 tooltips in Preview window and support Enter
...
Let's give the users tips over the arrow buttons
and provide passing Back Side / Next Card
by pressing Enter key.
2016-05-05 03:21:04 +05:00
Damien Elmes
640d906230
fix bug in contributed patch
2016-05-01 13:32:17 +10:00
Dmitry Mikheev
75e574cb9f
parameters to specify a desired title and size
...
Let's give authors of add-ons the ability to specify a desired title and minimum width and height of the message window.
2016-04-30 10:44:41 +05:00
Damien Elmes
80e45fee85
Revert "Deal with Internationalized Domain Name in URI"
...
This reverts commit a68af5f199
.
Patch does not fix the issue on my machine, so reverting for now.
2016-04-27 20:43:11 +10:00
Roman Franchuk
a68af5f199
Deal with Internationalized Domain Name in URI
...
This fixes https://anki.tenderapp.com/discussions/ankidesktop/17132-anki-reports-an-error-when-pasting-an-image-from-non-ascii-url
The problem is that urllib2 can't work with IDN. However, it's perfectly valid
to have such URIs in HTML, and Firefox, when copying image, generates exactly
this kind of HTML.
2016-04-17 15:49:28 +03:00
Glutanimate
df4b74f7bb
Preserve identical fields when switching note types
2016-04-10 13:11:25 +02:00
Damien Elmes
864a9135dc
allow language changing in prefs
...
avoided adding this in the past as on a multi user system it allows
one profile user to annoys others by changing the interface language,
but it comes at the expense of easily changing the language for users
who choose the wrong one on first startup
2016-04-05 11:02:01 +10:00
Damien Elmes
9baccec002
update credits
2016-03-23 09:07:33 +10:00
Damien Elmes
781e592339
don't set current dir in file selector if it doesn't exist
...
some users were reporting hangs
2016-03-21 09:57:45 +10:00
Glutanimate
ec401a6c23
Add keyboard shortcut for 'Add Note' action in Browser (Ctrl+E)
2016-03-04 20:21:58 +01:00
Damien Elmes
3bbd0bca7e
zip64 support, and import/export improvements
...
- we now allow exports over 2gb/64k files - AnkiMobile and AnkiDroid
will need to be updated to support this
- avoid compressing media files in export, as in the common case of
jpg/mp3 it's much faster with no increase in size
- exports and imports now show # of files processed
- mw.progress.update() now limits # of updates per sec
2016-02-26 10:01:46 +10:00
Damien Elmes
216a68f656
add missing comma in received patch
2016-02-22 10:42:27 +10:00
Damien Elmes
97311e33d9
suspend note -> suspend card
2016-02-22 09:31:00 +10:00
Damien Elmes
d15aafa940
Merge pull request #118 from Glutanimate/master
...
Add keyboard shortcut for 'Suspend Note' in Browser
2016-02-22 09:30:20 +10:00
Glutanimate
4c9d176272
Add keyboard shortcut for 'Suspend Note' in Browser
2016-02-21 12:10:02 +01:00
Damien Elmes
ed04b4ce3d
BadZipFile -> BadZipfile
2016-02-18 18:49:44 +10:00
bogdanteleaga
1f1220cf7c
Limit tags in custom study dialog to those in the selected deck
2015-11-21 14:38:21 +02:00
Damien Elmes
52f8a4a75e
missed deck browser arrow
2015-09-29 13:32:26 +10:00
Damien Elmes
6f95527758
use the larger arrow only on windows, and in other screens
2015-09-28 23:09:30 +10:00
Sindre Wetjen
69a0110422
[Addons] Make it possible to distribute addons in a directory.
...
with addons that are large and e.g. use git, it is very inconvenient to
have any files that is outside the addon directory. This patch makes it
possible to create an executable dir that is loaded as an addon.
2015-09-27 01:14:57 +02:00
Damien Elmes
96a18d2872
use a different unicode arrow
...
the smaller arrow doesn't appear to be supported on English W10 installs
2015-09-26 13:02:27 +10:00
Damien Elmes
147c9a02e1
fix star to top right
2015-08-11 19:02:59 +10:00
Damien Elmes
70b7dd88ca
Merge pull request #106 from hssm/fav-tree-rebuild
...
Rebuild browser tree without reconnecting signals
2015-07-03 18:48:00 +10:00
Houssam Salem
98d98ad363
Rebuild browser tree without reconnecting signals
...
Fixes a bug where adding or removing a saved search triggers
multiple click events on tree items.
2015-06-30 21:41:16 +10:00
Christian Krause
a65c20b3ad
Avoid exception on exit
...
Closing anki when the preferences dialog
is open will cause an exception since
self.mw.col in Preferences is not available
anymore.
Avoid the exception by checking self.mw.col
again on accept().
2015-04-26 12:31:54 +02:00
Jonathan Hall
6f77eed9bf
Recognize a couple new media formats.
...
Adding 'webp' was necessary for Anki to recognize WebP images
(https://developers.google.com/speed/webp/?csw=1 ) as images rather than
audio. The addition of the audio formats was incidental, as it appears Anki
assumes audio files if a file is not an image file.
2015-03-15 17:33:48 -05:00
Damien Elmes
cdb1cb06a0
prevent sync error being shown twice when aborting
2015-03-13 16:03:52 +11:00
Damien Elmes
7024fed002
fix cont=False handling in sync
2015-03-02 21:09:12 +11:00
Damien Elmes
0262da2700
catch corrupt add-on downloads
2015-01-05 11:49:29 +10:00
Thomas TEMPÉ
3d81ef2c68
Avoid calling checkValid on an empty note
...
Fix error message when editFocusLost is called after editor destruction
https://anki.tenderapp.com/discussions/ankidesktop/11175-bug-in-browser-revealed-by-add-on?unresolve=true
To reproduce:
1. Install the attached add-on. (All it does is register a function on the editFocusLost hook, and set the flag to 1 to signify that a field has been updated).
2. Run Anki. Enter the Browse window. Press Enter to display your deck.
3. Select one card.
4. Click inside one of the fields for that card. Now, when you leave that field, the editFocusLost hook will be called.
5. Now, select 2 notes from the browser, with your mouse, without clicking anywhere else before.
You will observe this error message:
Traceback (most recent call last):
File "aqt/progress.pyc", line 69, in handler
File "aqt/editor.pyc", line 467, in onUpdate
File "aqt/editor.pyc", line 572, in checkValid AttributeError: 'NoneType' object has no attribute 'fields'
2014-12-31 22:36:12 +08:00
Houssam Salem
6e20bf7013
Load saved searches list in sorted order
2014-11-11 10:13:29 +11:00
Damien Elmes
6e7e08ebd0
be explicit about modSchema()'s check flag
...
- remove gui code that adds exceptions for syncing
- use check=False for all syncing and upgrade code
2014-11-03 16:28:12 +09:00
Soren I. Bjornstad
44425ab9d5
Merge branch 'master' of https://github.com/dae/anki
2014-10-23 14:23:14 -05:00
Damien Elmes
1f178b869f
remove backspace to delete shortcut on macs
...
too many people activating it accidentally
2014-10-10 17:59:18 +09:00
Houssam Salem
9eaacf8977
Bump mod time when editing saved searches
...
Fixes saved searches not getting synced when modified.
2014-10-05 20:37:09 +11:00
Soren I. Bjornstad
9ec91724bf
catch more invalid zip file errors
2014-09-27 10:19:43 -05:00
Damien Elmes
6b65cfc08f
disable embedded fonts on osx
2014-09-27 10:26:14 +09:00
Damien Elmes
ece78a7d11
allow all ankiwebview instances to take focus
...
the canFocus/canCopy separate variables was silly, as we ended up
with text that could be copied from the context menu but not with
a shortcut key. also we default to allowing focus now, since that's
the more sensible default. fixes copy issues with card info dialog and
some addons
2014-09-15 15:04:14 +09:00
Damien Elmes
70db1035b1
catch another ssl error
2014-09-01 21:06:41 +09:00
Damien Elmes
8420fa02d1
Merge branch 'master' of https://github.com/sobjornstad/anki
2014-09-01 15:03:00 +09:00
Soren I. Bjornstad
a0e736ef39
accept Ctrl-Enter to close the edit current dialog
...
Esc already works, but since the Add dialog accepts it it's nice to have
as well.
2014-08-31 14:41:08 -05:00
Damien Elmes
3ce77fd25e
Merge branch 'master' of github.com:dae/anki
2014-08-28 09:40:14 +09:00
Derbeth
8dedcdf6ac
allow better translations of '1 note deleted' browser tooltip
2014-08-26 09:31:32 +02:00
Damien Elmes
346dfe1c7f
start new instance if existing instance hung
2014-08-26 15:25:22 +09:00
Damien Elmes
591015417b
Merge branch 'master' of https://github.com/sobjornstad/anki
2014-08-22 22:06:13 +09:00
Soren I. Bjornstad
f9f007e5c4
add C. van Rooyen to contributors
2014-08-17 13:46:08 -05:00
Soren I. Bjornstad
b19a1707fb
put selection in a sensible place after deleting several cards
...
If the last selection was at the top, the new selection will be right
above the last-selected item; otherwise, it will be right below it.
2014-08-11 14:32:59 -05:00
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