From 7fad7ef046052420f0ba751b56f1430bd0f461ff Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jindra=20Pet=C5=99=C3=ADk?= Date: Fri, 2 Apr 2021 15:41:52 +0200 Subject: [PATCH] Fixed: #1676 Messages on movie tags when Flash Player ActiveX not available --- CHANGELOG.md | 2 ++ .../decompiler/flash/gui/PreviewPanel.java | 23 +++++++++++-------- .../flash/gui/locales/MainFrame.properties | 10 ++++++++ .../flash/gui/locales/MainFrame_cs.properties | 13 ++++++++++- 4 files changed, 37 insertions(+), 11 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 32e03ea81..a724c5606 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -27,6 +27,7 @@ All notable changes to this project will be documented in this file. - Flash viewer - scaling grid - ignore nonshapes when scaling - [#1672] Raw editor - digits grouping causing incorrect cursor movement - Rename invalid identifiers renames identifiers with a dollar sign +- [#1676] Messages on movie tags when Flash Player ActiveX not available ## [14.3.1] - 2021-03-25 ### Fixed @@ -2185,6 +2186,7 @@ All notable changes to this project will be documented in this file. [#1670]: https://www.free-decompiler.com/flash/issues/1670 [#1671]: https://www.free-decompiler.com/flash/issues/1671 [#1672]: https://www.free-decompiler.com/flash/issues/1672 +[#1676]: https://www.free-decompiler.com/flash/issues/1676 [#1665]: https://www.free-decompiler.com/flash/issues/1665 [#1661]: https://www.free-decompiler.com/flash/issues/1661 [#1435]: https://www.free-decompiler.com/flash/issues/1435 diff --git a/src/com/jpexs/decompiler/flash/gui/PreviewPanel.java b/src/com/jpexs/decompiler/flash/gui/PreviewPanel.java index c0624e354..f1dccbf0b 100644 --- a/src/com/jpexs/decompiler/flash/gui/PreviewPanel.java +++ b/src/com/jpexs/decompiler/flash/gui/PreviewPanel.java @@ -43,6 +43,7 @@ import com.jpexs.decompiler.flash.treeitems.TreeItem; import com.jpexs.decompiler.flash.types.MATRIX; import com.jpexs.decompiler.flash.types.shaperecords.SHAPERECORD; import com.jpexs.helpers.SerializableImage; +import com.sun.jna.Platform; import java.awt.BorderLayout; import java.awt.CardLayout; import java.awt.Color; @@ -349,22 +350,24 @@ public class PreviewPanel extends JPersistentSplitPane implements TagEditorPanel JPanel flashPlayPanel = new JPanel(new BorderLayout()); flashPlayPanel.add(flashPanel, BorderLayout.CENTER); - /*JPanel bottomPanel = new JPanel(new BorderLayout()); - JPanel buttonsPanel = new JPanel(new FlowLayout()); - JButton selectColorButton = new JButton(View.getIcon("color16")); - selectColorButton.addActionListener(mainPanel::selectBkColor); - selectColorButton.setToolTipText(AppStrings.translate("button.selectbkcolor.hint")); - buttonsPanel.add(selectColorButton); - bottomPanel.add(buttonsPanel, BorderLayout.EAST); - - flashPlayPanel.add(bottomPanel, BorderLayout.SOUTH);*/ JPanel flashPlayPanel2 = new JPanel(new BorderLayout()); flashPlayPanel2.add(flashPlayPanel, BorderLayout.CENTER); flashPlayPanel2.add(new PlayerControls(mainPanel, flashPanel), BorderLayout.SOUTH); leftComponent = flashPlayPanel2; } else { JPanel swtPanel = new JPanel(new BorderLayout()); - swtPanel.add(new JLabel("
" + mainPanel.translate("notavailonthisplatform") + "
", JLabel.CENTER), BorderLayout.CENTER); + String labelStr = ""; + if (!Platform.isWindows()) { + labelStr = mainPanel.translate("notavailonthisplatform"); + } else { + if (Configuration.useAdobeFlashPlayerForPreviews.get()) { + labelStr = mainPanel.translate("notavailable.activex") + "\n" + mainPanel.translate("notavailable.activex.disable"); + } else { + labelStr = mainPanel.translate("notavailable.internalviewer"); + } + } + String htmlLabelStr = "
" + labelStr.replace("\n", "
") + "
"; + swtPanel.add(new JLabel(htmlLabelStr, JLabel.CENTER), BorderLayout.CENTER); swtPanel.setBackground(View.getDefaultBackgroundColor()); leftComponent = swtPanel; } diff --git a/src/com/jpexs/decompiler/flash/gui/locales/MainFrame.properties b/src/com/jpexs/decompiler/flash/gui/locales/MainFrame.properties index 2472caf2b..58f0ba21b 100644 --- a/src/com/jpexs/decompiler/flash/gui/locales/MainFrame.properties +++ b/src/com/jpexs/decompiler/flash/gui/locales/MainFrame.properties @@ -816,3 +816,13 @@ error.outOfMemory.unixmac = You can increase this maximum by editing "ffdec.sh" error.outOfMemory.64bit = You need 64 bit OS and 64 bit Java to use more memory than cca 1GB. error.outOfMemory.32BitJreOn64bitOs = WARNING: You are running 32bit Java on 64bit system. Please use 64bit Java. +notavailable.internalviewer = Preview of this object is only available through Flash ActiveX component.\n \ + You can enable using Flash ActiveX by checking\n \ + Advanced Settings / Other / (Deprecated) Use Adobe Flash player for preview of objects + +notavailable.activex = Preview of this object is not available since Flash ActiveX component is not correctly working on your system.\n \ + This is pretty common situation as Adobe dropped support for in 2021. + +notavailable.activex.disable = You can enable using internal viewer by unchecking\n \ + Advanced Settings / Other / (Deprecated) Use Adobe Flash player for preview of objects\n \ + But unfortunately, this won't work for movie tags. diff --git a/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_cs.properties b/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_cs.properties index ef49eabec..6260360c3 100644 --- a/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_cs.properties +++ b/src/com/jpexs/decompiler/flash/gui/locales/MainFrame_cs.properties @@ -790,4 +790,15 @@ error.outOfMemory = Dekompil\u00e1toru do\u0161la pam\u011b\u0165. Aktu\u00e1ln\ error.outOfMemory.windows = Pokud pou\u0161t\u00edte aplikaci p\u0159es "ffdec.exe", je to ji\u017e nastavov\u00e1no na maximum mo\u017en\u00e9 pam\u011bti, \npokud p\u0159es "ffdec.bat", m\u016f\u017eete to v tomto souboru nastavit manu\u00e1ln\u011b na vy\u0161\u0161\u00ed hodnotu. error.outOfMemory.unixmac = Toto maximum m\u016f\u017eete nav\u00fd\u0161it upraven\u00edm souboru "ffdec.sh". error.outOfMemory.64bit = Pot\u0159ebujete 64 bitov\u00fd opera\u010dn\u00ed syst\u00e9m a 64 bitovou Javu pro pou\u017eit\u00ed v\u00edc jak zhruba 1GB. -error.outOfMemory.32BitJreOn64bitOs = VAROV\u00c1N\u00cd: Pou\u017e\u00edv\u00e1te 32bitovou Javu na 64bitov\u00e9m syst\u00e9mu. Pros\u00edm pou\u017e\u00edvejte 64bitovou Javu. \ No newline at end of file +error.outOfMemory.32BitJreOn64bitOs = VAROV\u00c1N\u00cd: Pou\u017e\u00edv\u00e1te 32bitovou Javu na 64bitov\u00e9m syst\u00e9mu. Pros\u00edm pou\u017e\u00edvejte 64bitovou Javu. + +notavailable.internalviewer = N\u00e1hled tohoto objektu je dostupn\u00fd pouze s pou\u017eit\u00edtm komponenty Flash ActiveX.\n \ + M\u016f\u017eete povolit pou\u017eit\u00ed Flash ActiveX za\u0161krtnut\u00edm\n \ + Pokro\u010dil\u00e1 nastaven\u00ed / Ostatn\u00ed / (P\u0159ekon\u00e1no) Pou\u017e\u00edvat Adobe Flash player pro n\u00e1hledy objekt\u016f + +notavailable.activex = N\u00e1hled tohoto objektu nen\u00ed dostupn\u00fd proto\u017ee komponenta Flash ActiveX na va\u0161em syst\u00e9mu nefunguje spr\u00e1vn\u011b\n \ + Tohle je vcelku b\u011b\u017en\u00e1 situace proto\u017ee Adobe pro n\u00ed zru\u0161il podporu od roku 2021. + +notavailable.activex.disable = M\u016f\u017eete povolit pou\u017eit\u00ed intern\u00edho prohl\u00ed\u017ee\u010de od\u0161krtnut\u00edm\n \ + Pokro\u010dil\u00e1 nastaven\u00ed / Ostatn\u00ed / (P\u0159ekon\u00e1no) Pou\u017e\u00edvat Adobe Flash player pro n\u00e1hledy objekt\u016f\n \ + Ale bohu\u017eel, tohle nebude fungovat pro tagy s videi. \ No newline at end of file