awesomeWM / awesome

awesome window manager
https://awesomewm.org/
GNU General Public License v2.0
6.39k stars 597 forks source link

pycharm 2018.1 #2233

Open brianmay opened 6 years ago

brianmay commented 6 years ago

It looks like the recent pycharm 2018.1 update did something that breaks popup windows with pycharm.

Very likely to be pycharm's fault(?), however my knowledge of debugging these type of issues is weak.

Workarounds appreciated.

Output of awesome --version:

awesome v4.0 (Harder, Better, Faster, Stronger) • Compiled against Lua 5.1.5 (running with Lua 5.1) • D-Bus support: ✔ • execinfo support: ✔ • RandR 1.5 support: ✔ • LGI version: 0.9.1

How to reproduce the issue:

  1. Select a pull-down menu. Note that the menu now has full window decorations. This didn't happen with early releases of pycharm. This is not an issue in itself, just an observation.

  2. Right-click somewhere for context menu. Context menu briefly appears (with full window decorations) and then disappears. Again this didn't happen with early releases of pycharm. Might be a "focus-follows-mouse" issue. This makes the context menus unusable.

psychon commented 6 years ago

How about reporting this to the PyCharm developers then? (with a link here, please)

A quick Google search did not find a Git repository for PyCharms. A quick look at the PyCharms website mentions 'JetBrains' and ' Intellij'. These keywords (together with 'Java') are basically a red flag for me which means "sorry, I already wasted enough time debugging that mess".

Sorry.

actionless commented 6 years ago

that was one of the reasons i switched from PyCharm to Vim + Syntastic + YouCompleteMe :-)

actionless commented 6 years ago

also i think you can run pycharm on a separate x server

radaiming commented 6 years ago

@psychon Maybe you could check how i3 deals with Intellij's products? They had closed many related issues. I was suffering #889 for a long time and have to restart awesome many times everyday, but Intellij's recent update causes this issue so I have to switch to i3, and haven't seen any issue these days.

psychon commented 6 years ago

@radaiming random look: https://github.com/i3/i3/issues/3069 is unrelated and https://github.com/i3/i3/pull/2865/commits/220fe5ea5a2e8707265001a64c4861f61c3fa65c is an ugly hack that they should fix in their own code instead + that you can somehow implement in awesome-lua directly, I think (don't have the time right now to look into the details).

Neither of these is related to context menus.

brianmay commented 6 years ago

Filed upstream bug report: https://youtrack.jetbrains.com/issue/PY-29418

psychon commented 6 years ago

Thanks!

One more data point:

Note that the menu now has full window decorations.

For awesome to add window decorations to a window, it has to manage the window. Which should mean that on a tiling layout the window is tiled. Which just means that pycharm broke its menus on all tiling WMs. This is quite wrong and really cannot be fixed on our side.

Edit: The issue above was "linked" with https://youtrack.jetbrains.com/issue/IDEA-185727, which had someone report other issues with AwesomeWM and pycharm, so the problem here might also depend on details of rc.lua?

d3f3kt commented 6 years ago

With the new Idea update every Idea IDE has this issue. Furthermore the code suggestion popup closes immediately too.

p-himik commented 6 years ago

Relevant issue: https://youtrack.jetbrains.com/issue/JRE-709

p-himik commented 6 years ago

Actually, if you search around, there're tens of related issues, some of them many years old, all with different symptoms and different workarounds. Many of them boil down to replacing IDEA boot JDK with OpenJDK, and that's exactly what helped me with everything - context menus, tool windows, popups.

4ban commented 6 years ago

Confirmed the @p-himik solution. Changing the IDE boot JDK solved all the problems.

radaiming commented 6 years ago

I've tried openjdk version 8/9/10 and oracle jdk 8/9 but unfortunately could not solved all issues, at least I still can't focus some windows after opening a dialog.

4ban commented 6 years ago

Have you tried it like written here?

brianmay commented 6 years ago

How do I switch the IDE boot JDK? I know of these instructions: https://www.jetbrains.com/help/idea/switching-boot-jdk.html - but that relies on "Find Action" which suffers from this very problem. i.e. the popup appears and then disappears.

brianmay commented 6 years ago

This appears to fix the problems for me:

--- pycharm.sh  2018-04-10 08:21:35.462426747 +1000
+++ pycharm-local-java.sh   2018-04-10 08:21:16.829844256 +1000
@@ -63,7 +63,7 @@
   JDK="$PYCHARM_JDK"
 fi

-if [ -z "$JDK" -a -s "$HOME/.PyCharm2018.1/config/pycharm.jdk" ]; then
+if false && [ -z "$JDK" -a -s "$HOME/.PyCharm2018.1/config/pycharm.jdk" ]; then
   USER_JRE=`"$CAT" $HOME/.PyCharm2018.1/config/pycharm.jdk`
   if [ ! -d "$USER_JRE" ]; then
     USER_JRE="$IDE_HOME/$USER_JRE"
@@ -73,7 +73,7 @@
   fi
 fi

-if [ -z "$JDK" -a "$OS_TYPE" = "Linux" ] ; then
+if false && [ -z "$JDK" -a "$OS_TYPE" = "Linux" ] ; then
   BUNDLED_JRE="$IDE_HOME/jre64"
   if [ ! -d "$BUNDLED_JRE" ]; then
     BUNDLED_JRE="$IDE_HOME/jre"
radaiming commented 6 years ago

@4ban Yes, exactly. I had also tried the idea bundle without jdk before and without luck.

Sigurs commented 6 years ago

There is a workaround to get around this issue if you became affected it with 2018.1. Download an old 2017.3 version of PhpStorm (https://confluence.jetbrains.com/display/PhpStorm/Previous+PhpStorm+Releases) and replace your PyCharm's jre64 folder with one from the old PhpStorm.

p-himik commented 6 years ago

Interestingly - after waking my laptop to sleep, new symptoms appeared.

Another approach (hopefully, more future-proof wrt Java changes) is to make all such popups (find action, file, class, find in path) not dialog-based by unchecking the mark near allow.dialog.based.popups in the registry (available via Ctrl+Alt+Shift+/). It has its downside - none of the popups will be managed by WM, so you won't be able to e.g. tile them.

brianmay commented 6 years ago

Thanks for the workarounds. Both here and in #2204. Currently using the "revert to old PhpStorm" one.

I have not noticed any additional problems with putting my computer to sleep.