Dyalog / ride

Cross-platform IDE for Dyalog APL
https://dyalog.github.io/ride
MIT License
203 stars 31 forks source link

Issues with closing the editor while the Save? dialog is open #339

Closed abrudz closed 2 years ago

abrudz commented 6 years ago

Describe the issue you are having

Clicking the X button on an edit while its Save? dialog is open closes the editor. Attempting to re-edit that same item hangs RIDE.

Did you connect to an already running interpreter or start the interpreter from RIDE?

Start an interpreter

How do you reproduce the issue?

)ed f Click X and the Editor will ask whether you want to save or not. Ignore the dialog and click X again. Wait a couple of seconds and the editor will close. Enter )ed f RIDE hangs.

Paste the contents of Help → About (Shift+F1)

IDE: Version: 4.1.2990 Platform: Win32 Date: 2017-12-14 21:00:41 +0100 Git commit: b50942479e4d884ad23be5659c1ef7fece907db5 Preferences:{ "colourScheme":"Default (1)", "colourSchemes":"[{\"name\":\"Default (1)\",\"styles\":\"asgn=fg:00f com=fg:088 dfn=fg:00f diam=fg:00f err=fg:f00 fn=fg:008 idm=fg:008,bg:#ffff00 kw=fg:800 lnum=fg:008,bg:f,bgo:0 mod=bg:e,bgo:1 mtch=bg:ff8,bgo:0.5 norm=bg:f,bgo:1 ns=fg:8 num=fg:8 op1=fg:00f op2=fg:00f par=fg:00f quad=fg:808 sel=bg:48e,bgo:0.5 semi=fg:00f sqbr=fg:00f srch=bg:f80,bgo:0.5 str=fg:088 tc=bg:d,bgo:1 tcpe=bg:c8c8c8,bgo:1 trad=fg:8 var=fg:8 zld=fg:008 scmd=fg:00f ucmd=fg:00f vtt=bg:ff0\"}]", "floatOnTop":"1", "floating":"1", "ime":"0", "indentComments":"1", "kbdLocale":"en_US", "keys":"{\"AC\":[\"Ctrl-,\"],\"AO\":[\"Ctrl-'\"],\"BP\":[\"Ctrl-.\"],\"DO\":[\"Ctrl-;\"],\"FX\":[\"Ctrl-S\"],\"MA\":[\"Ctrl-G\"],\"NEW\":[],\"NX\":[\"Ctrl-N\"],\"PV\":[\"Ctrl-P\"],\"RP\":[\"Ctrl-R\"]}", "lbarOrder":"← +-×÷*⍟⌹○!? |⌈⌊⊥⊤⊣⊢ =≠≤<>≥≡≢ ∨∧⍲⍱ ↑↓⊂⊃⊆⌷⍋⍒ ⍳⍸∊⍷∪∩~ /\⌿⍀ ,⍪⍴⌽⊖⍉ ¨⍨⍣.∘⍤@ ⍞⎕⍠⌸⌺⌶⍎⍕ ⋄⍝→⍵⍺∇⍬& ¯", "menu":"# see below for syntax\n\nDyalog {mac}\n About Dyalog =ABT\n -\n Preferences =PRF\n - \n &Quit =QIT\n&File {!browser}\n New &Session =NEW\n &Connect... =CNC\n - {!mac}\n &Quit =QIT {!mac}\n&Edit\n Undo =UND {!browser}\n Redo =RDO {!browser}\n - {!browser}\n Cut =CT {!browser}\n Copy =CP {!browser}\n Paste =PT {!browser}\n Select All =SA {mac}\n - {!mac&&!browser}\n Preferences =PRF {!mac}\n&View\n Show Language Bar =LBR\n Show Workspace Explorer =WSE\n Show Debug =DBG\n Floating Edit Windows =FLT\n Editors on Top =TOP {!browser}\n Line Wrapping in Session =WRP\n - {!browser}\n Increase Font Size =ZMI {!browser}\n Decrease Font Size =ZMO {!browser}\n Reset Font Size =ZMR {!browser}\n - {!browser}\n Toggle Full Screen {!browser}\n&Window\n Close All Windows =CAW\n&Action\n Edit =ED\n Trace =TC\n Weak Interrupt =WI\n Strong Interrupt =SI\n&Help\n Dyalog Help =http://help.dyalog.com/\n Documentation Centre =http://dyalog.com/documentation.htm\n &Idioms =http://miserver.dyalog.com/Examples/Applications/Idiom_Search.mipage?nowrapper=1\n -\n Dyalog Website =http://dyalog.com/\n MyDyalog =https://my.dyalog.com/\n -\n Dyalog Forum =http://www.dyalog.com/forum\n - {!mac}\n About =ABT {!mac}\n\n# Syntax:\n# &x access key, alt+x\n# =CMD command code; some are special:\n# LBR FLT WRP TOP WSE render as checkboxes\n# =http://example.com/ open a URL\n# {} conditional display, a boolean expression\n# operators: && || ! ( )\n# variables: browser mac win\n# - separator (when alone)\n# # comment\n\n# The =PRF (\"Preferences\") menu item must be present.", "otherExe":"C:\Program Files\Dyalog\Dyalog APL-64 17.0 Unicode\dyalog.exe", "pfkeys":"[\"\",\"\",\"Foo\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\"]", "selectedExe":"C:\Program Files\Dyalog\Dyalog APL-64 16.0 Unicode\dyalog.exe", "squiggleTips":"1", "title":"RIDE {RIDE_VER} - {WSID} {VER}", "zoom":"4" }

Interpreter: Version: 17.0.32776 Platform: Windows-64 Edition: Unicode/64 Date: Apr 9 2018 at 16:10:15

jayfoad commented 6 years ago

Still seems to be a problem on the monaco branch. Although the "Do you want to save" dialog appears to be modal and greys out the editor window behind it, on Linux I can still click on the editor window's close button (the X in the corner of the window's chrome) and after a delay of 2 seconds the editor window disappears, but the dialog remains.

Given the 2 second delay, I wonder if the OS (or something) decides that the editor window is unresponsive and forcibly closes it...?

e9gille commented 6 years ago

tested on mac and windows in the master branch and can't replicate this. will check the linux version tomrrow.

e9gille commented 6 years ago

I can confirm it is an issue on linux only and it has been reported now. https://github.com/electron/electron/issues/12672

abrudz commented 2 years ago

Electron issue has been closed.