Dyalog / ride

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

RIDE does not accept APL characters typed with alt key in Ubuntu 22.04 under Wayland #879

Open dyavc opened 2 years ago

dyavc commented 2 years ago

Describe the issue you are having

RIDE does not accept APL characters typed with alt key in Ubuntu 22.04 under Wayland. It works if use Xorg instead of Wayland.

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

Started the interpreter from RIDE

How do you reproduce the issue?

I set up my ubuntu to be able to type APL characters in Ubuntu 22.04 under wayland as detailed in this forums post https://forums.dyalog.com/viewtopic.php?f=20&t=1848

I start RIDE and then start Dyalog. alt+i does not give iota

It does in gedit or dyalog in Terminal as a TTY

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

IDE:
  Version: 4.4.3700
  Electron: 13.6.9
  Chrome: 91.0.4472.164
  Node: 14.16.0
  Platform: Linux x86_64
  Date: 2022-06-21 09:48:27 +0200
  Git commit: b3db6781df6dc63f7bbc4fa4e0a634ef5b44765c
  Preferences:{
    "kbdLocale":"en_GB"
  }

Interpreter:
  Version: 18.2.45645
  Platform: Linux-64
  Edition: Unicode/64
  Date: May 27 2022 at 00:09:25
rikedyp commented 2 years ago

I've investigated and found the following related issues:

The workaround for VSCode is:

code --enable-features=UseOzonePlatform --ozone-platform=wayland

However, these options caused RIDE not to start:

$ ride --enable-features=UseOzonePlatform --ozone-platform=wayland

VMware: No 3D enabled (0, Success).
VMware: No 3D enabled (0, Success).
Trace/breakpoint trap (core dumped)
e9gille commented 1 year ago

I have investigated this and tested various options. There seems to be incremental support for wayland with every version of electron and on my computer it now works as expected if you add the flags:

--enable-features=UseOzonePlatform,WaylandWindowDecorations --ozone-platform=wayland

The option WaylandWindowDecorations is required to get the titlebar appearing.

This is tested in master branch where we now use electron v21. There is unfortunately no way to build this options into ride, so they have to be set up by the user (see https://wiki.archlinux.org/title/wayland and https://wiki.archlinux.org/title/Desktop_entries#Modify_desktop_files)