X-Git-Url: http://git.nikiroo.be/?a=blobdiff_plain;f=src%2Fbe%2Fnikiroo%2Ffanfix%2Freader%2Fui%2FGuiReader.java;h=c6c8413632e07bff43f99cb9dd0a8b575a59a055;hb=dd81a122f978dd0f7f74348fdab122d19fadd159;hp=f97ffddd48a08cf8317d5adbdca682d754796d72;hpb=eea1c0a848465b54feb2648f426196e6ffb7a24f;p=nikiroo-utils.git diff --git a/src/be/nikiroo/fanfix/reader/ui/GuiReader.java b/src/be/nikiroo/fanfix/reader/ui/GuiReader.java index f97ffdd..c6c8413 100644 --- a/src/be/nikiroo/fanfix/reader/ui/GuiReader.java +++ b/src/be/nikiroo/fanfix/reader/ui/GuiReader.java @@ -17,6 +17,7 @@ import javax.swing.event.HyperlinkListener; import be.nikiroo.fanfix.Instance; import be.nikiroo.fanfix.VersionCheck; +import be.nikiroo.fanfix.bundles.UiConfig; import be.nikiroo.fanfix.data.MetaData; import be.nikiroo.fanfix.data.Story; import be.nikiroo.fanfix.library.BasicLibrary; @@ -266,20 +267,32 @@ class GuiReader extends BasicReader { * in case of I/O errors */ void read(String luid, boolean sync, Progress pg) throws IOException { - File file = cacheLib.getFile(luid, pg); + MetaData meta = cacheLib.getInfo(luid); - GuiReaderViewer viewer = new GuiReaderViewer(cacheLib, - cacheLib.getStory(luid, null)); + boolean textInternal = Instance.getUiConfig().getBoolean( + UiConfig.NON_IMAGES_DOCUMENT_USE_INTERNAL_READER, true); + boolean imageInternal = Instance.getUiConfig().getBoolean( + UiConfig.IMAGES_DOCUMENT_USE_INTERNAL_READER, true); - // TODO: testing internal story viewer: - if (false) { + boolean useInternalViewer = true; + if (meta.isImageDocument() && !imageInternal) { + useInternalViewer = false; + } + if (!meta.isImageDocument() && !textInternal) { + useInternalViewer = false; + } + + if (useInternalViewer) { + GuiReaderViewer viewer = new GuiReaderViewer(cacheLib, + cacheLib.getStory(luid, null)); if (sync) { sync(viewer); } else { viewer.setVisible(true); } } else { - openExternal(getLibrary().getInfo(luid), file, sync); + File file = cacheLib.getFile(luid, pg); + openExternal(meta, file, sync); } }