News:

When registered with our forums, feel free to send a "here I am" post here to differ human beings from SPAM bots.

Main Menu

code completion does not get focus

Started by pwuertz, October 18, 2005, 03:18:00 AM

Previous topic - Next topic

pwuertz

hi there

its a little bit strange, but when requesting code completion, the code completion window does not get the focus, so I have to use the mouse to activate it.

i'm using the current cvs version. compiled with gtk 2.8.6, wxGTK 2.6.2

any ideas why this happens?

pwuertz

this seems to be a window-manager issue...

the code completion window is working correctly using
gnome window-manager "metacity"
xfce window-manager "xfwm"

the code completion window does not get focus and closes when trying to move/resize
using kde's "kwin"

can anyone confirm that?

pwuertz


rickg22


David Perfors

not yet, I am working on getting KDE to work ;)
So please hold on for a few days (I am not very fast :P)
OS: winXP
Compiler: mingw
IDE: Code::Blocks SVN WX: 2.8.4 Wish list: faster code completion, easier debugging, refactoring


Der Meister

I have got the same problems using enlightenment e16. The code-completion windows only gets the focus when the mouse is above it. In fact, that is the intended behavior for application windows (that means in order to switch between running applications I just move the mouse onto them), but this is definitely not good for code-completion. Is there a possibility to change this behavior from Code::Blocks or is changing the settings of the windowmanager or even the windowmanager itself the only solution to this problem?
Real Programmers don't comment their code. If it was hard to write, it should be hard to understand.
Real Programmers don't write in BASIC. Actually, no programmers write in BASIC, after the age of 12.

mandrav

Quote from: Der Meister on November 21, 2005, 12:56:36 PM
I have got the same problems using enlightenment e16. The code-completion windows only gets the focus when the mouse is above it. In fact, that is the intended behavior for application windows (that means in order to switch between running applications I just move the mouse onto them), but this is definitely not good for code-completion. Is there a possibility to change this behavior from Code::Blocks or is changing the settings of the windowmanager or even the windowmanager itself the only solution to this problem?

All we 're doing is display a window. What the window manager does with it, we don't know and there's not much we can do about it.
The only special thing about this window is that if you click outside it, it disappears...
Be patient!
This bug will be fixed soon...

takeshimiya

It would be good if you can make think other programs that its a combobox or another control but NOT a window.

Urxae

Quote from: Takeshi Miya on November 21, 2005, 05:30:47 PM
It would be good if you can make think other programs that its a combobox or another control but NOT a window.

Yeah, any chance of making it just another control that happens to be on top of the editor?

pwuertz

I don't know anything about WxWidgets, but in some other environments it would be sufficient to invoke some kind of "window->setFocus()" method. I haven't found such a method in the Wx documentation, but as i said i don't have any experience with that toolkit.

Does Wx allow some kind of floating combobox as described by Takeshi Miya or Urxae?

Ceniza

virtual void wxWindow::SetFocus()

This sets the window to receive keyboard input.

That one could do the trick...

Der Meister

I'm not sure if I did it right but I have already tested this and at least on enlightenment e16 it didn't work (which seems quite logical). Maybe this is different on other window-managers but it seems that this is not overall solution.
Real Programmers don't comment their code. If it was hard to write, it should be hard to understand.
Real Programmers don't write in BASIC. Actually, no programmers write in BASIC, after the age of 12.

takeshimiya

The codecompletion should be a control, not a window.

Some window managers implements focus over the cursor.

sfeng