Thread: [Squirrel-sql-develop] Alt-Forward Arrow Key
A Java SQL client for any JDBC compliant database
Brought to you by:
colbell,
gerdwagner
From: Johnathan J. <ha...@gm...> - 2008-08-25 14:36:33
|
Hello all.. I have been trying to work with the source this weekend to fix a bug that has been bugging me. Basically, if you open a new Session from the Aliases window, then CTRL-N to create a new window, if you press ALT-ForwardArrow, usually the focus will remain in the second window, when it should have moved to the second. So if you type, it will affect the window just hidden, not the one you just made visible. Anyway, my question is where is the KeyListener for ALT-ForwardArrow? When I press that key, what code runs to process it? Thanks.. |
From: Robert M. <rob...@gm...> - 2008-08-25 16:45:17
|
On Mon, Aug 25, 2008 at 10:36 AM, Johnathan James <ha...@gm...> wrote: > Hello all.. > > I have been trying to work with the source this weekend to fix a bug that > has been bugging me. Basically, if you open a new Session from the Aliases > window, then CTRL-N to create a new window, if you press ALT-ForwardArrow, > usually the focus will remain in the second window, when it should have > moved to the second. So if you type, it will affect the window just hidden, > not the one you just made visible. > > Anyway, my question is where is the KeyListener for ALT-ForwardArrow? When > I > press that key, what code runs to process it? All of the key accelerator mappings are found at the bottom of : sql12/app/src/net/sourceforge/squirrel_sql/client/resources/squirrel.properties These are translated to KeyStrokes and assigned to the appropriate action in : sql12/fw/src/net/sourceforge/squirrel_sql/fw/util/Resources.java The accelerator you are referring to is defined by the mapping: menuitem.net.sourceforge.squirrel_sql.client.session.action.NextSessionAction.accelerator=alt RIGHT So the code that gets executed is found in : sql12/app/src/net/sourceforge/squirrel_sql/client/session/action/NextSessionAction.java Incidentally, I tried the series of events you described and the cursor is consistently correctly moved to the window that has focus. I wonder if this is related to platform / java version. I'm using Sun Java 1.6.0_05-ea-b05 on Ubuntu Linux. How about you ? Rob |
From: Johnathan J. <ha...@gm...> - 2008-08-26 04:01:43
|
Rob, et al.. I was on JDK 1.5.09 this morning, but I have since upgraded and rebuilt the project under JDK 1.6.0-b105. I am running Ubuntu. I am still able to reproduce the error. 1. Open a session from the Aliases window. 2. Hit Ctrl-N. You should have two session windows. 3. Hit Alt-RightArrow. The cursor's focus should be in the first window you opened. 4. Hit Alt-RightArrow again, cursor focus will be in the second window. 5. Hit Alt-RightArrow again, cursor focus will still be in the second window. I am still debugging but hope to have a patch for you soon! Johnathan On Mon, Aug 25, 2008 at 9:45 AM, Robert Manning <rob...@gm...>wrote: > > > On Mon, Aug 25, 2008 at 10:36 AM, Johnathan James <ha...@gm...>wrote: > >> Hello all.. >> >> I have been trying to work with the source this weekend to fix a bug that >> has been bugging me. Basically, if you open a new Session from the Aliases >> window, then CTRL-N to create a new window, if you press ALT-ForwardArrow, >> usually the focus will remain in the second window, when it should have >> moved to the second. So if you type, it will affect the window just >> hidden, >> not the one you just made visible. >> >> Anyway, my question is where is the KeyListener for ALT-ForwardArrow? When >> I >> press that key, what code runs to process it? > > > All of the key accelerator mappings are found at the bottom of : > > > sql12/app/src/net/sourceforge/squirrel_sql/client/resources/squirrel.properties > > These are translated to KeyStrokes and assigned to the appropriate action > in : > > sql12/fw/src/net/sourceforge/squirrel_sql/fw/util/Resources.java > > The accelerator you are referring to is defined by the mapping: > > menuitem.net.sourceforge.squirrel_sql.client.session.action.NextSessionAction.accelerator=alt > RIGHT > > So the code that gets executed is found in : > > > sql12/app/src/net/sourceforge/squirrel_sql/client/session/action/NextSessionAction.java > > Incidentally, I tried the series of events you described and the cursor is > consistently correctly moved > to the window that has focus. I wonder if this is related to platform / > java version. I'm using Sun Java > 1.6.0_05-ea-b05 on Ubuntu Linux. How about you ? > > Rob > > |
From: Robert M. <rob...@gm...> - 2008-08-26 12:20:12
|
I think I see what's happening. The reason that I was unable to reproduce the problem yesterday is because I had the SQL tab selected in the main session window (the one with the object tree). If the SQL tab is open in both session windows, the cursor will move when the selected window changes - at least for me. But, if the object tree tab is selected in the main session window, then the cursor never moves from the other SQL tab in the other session window. If that accurately describes the bug, what should the correct behavior be? Rob On Tue, Aug 26, 2008 at 12:01 AM, Johnathan James <ha...@gm...> wrote: > Rob, et al.. > > I was on JDK 1.5.09 this morning, but I have since upgraded and rebuilt the > project under JDK 1.6.0-b105. I am running Ubuntu. > > I am still able to reproduce the error. > > 1. Open a session from the Aliases window. > 2. Hit Ctrl-N. You should have two session windows. > 3. Hit Alt-RightArrow. The cursor's focus should be in the first window you > opened. > 4. Hit Alt-RightArrow again, cursor focus will be in the second window. > 5. Hit Alt-RightArrow again, cursor focus will still be in the second > window. > > I am still debugging but hope to have a patch for you soon! > > Johnathan > > On Mon, Aug 25, 2008 at 9:45 AM, Robert Manning < > rob...@gm...> wrote: > >> >> >> On Mon, Aug 25, 2008 at 10:36 AM, Johnathan James <ha...@gm...>wrote: >> >>> Hello all.. >>> >>> I have been trying to work with the source this weekend to fix a bug that >>> has been bugging me. Basically, if you open a new Session from the >>> Aliases >>> window, then CTRL-N to create a new window, if you press >>> ALT-ForwardArrow, >>> usually the focus will remain in the second window, when it should have >>> moved to the second. So if you type, it will affect the window just >>> hidden, >>> not the one you just made visible. >>> >>> Anyway, my question is where is the KeyListener for ALT-ForwardArrow? >>> When I >>> press that key, what code runs to process it? >> >> >> All of the key accelerator mappings are found at the bottom of : >> >> >> sql12/app/src/net/sourceforge/squirrel_sql/client/resources/squirrel.properties >> >> These are translated to KeyStrokes and assigned to the appropriate action >> in : >> >> sql12/fw/src/net/sourceforge/squirrel_sql/fw/util/Resources.java >> >> The accelerator you are referring to is defined by the mapping: >> >> menuitem.net.sourceforge.squirrel_sql.client.session.action.NextSessionAction.accelerator=alt >> RIGHT >> >> So the code that gets executed is found in : >> >> >> sql12/app/src/net/sourceforge/squirrel_sql/client/session/action/NextSessionAction.java >> >> Incidentally, I tried the series of events you described and the cursor is >> consistently correctly moved >> to the window that has focus. I wonder if this is related to platform / >> java version. I'm using Sun Java >> 1.6.0_05-ea-b05 on Ubuntu Linux. How about you ? >> >> Rob >> >> > |
From: Johnathan J. <ha...@gm...> - 2008-08-26 15:16:19
|
I don't think were on exactly the same page.. you should only have a SQL tab in the Session created at Step 1 (this is the SessionInternalFrame). In Step 2, by hitting ctrl-n, you create a window that has no tabs, only an area to enter SQL (this is SQLInternalFrame). From this point on, if you hit Alt-RightArrow (or Alt-LeftArrow), if the target window has a SQL text entry area, that area should get focus. The bug is that it leaves focus in the previous SQL text entry area, not the one made current by Alt-RightArrow. Then when you type, the text appears in the previous window, not the one that is Active. If what you happen to type is a CTRL-Enter and the cursor happens to be on an unfortunate query, that could present a problem. Off hand, I'd say the correct behavior is that whenever the user switches, by whatever means, to a different Session window, if the SQL text entry area of that different window is active, it should get the focus. On Tue, Aug 26, 2008 at 5:20 AM, Robert Manning <rob...@gm...>wrote: > I think I see what's happening. The reason that I was unable to reproduce > the problem yesterday is because > I had the SQL tab selected in the main session window (the one with the > object tree). If the SQL tab is open > in both session windows, the cursor will move when the selected window > changes - at least for me. But, if > the object tree tab is selected in the main session window, then the cursor > never moves from the other SQL > tab in the other session window. If that accurately describes the bug, > what should the correct behavior be? > > Rob > > > On Tue, Aug 26, 2008 at 12:01 AM, Johnathan James <ha...@gm...>wrote: > >> Rob, et al.. >> >> I was on JDK 1.5.09 this morning, but I have since upgraded and rebuilt >> the project under JDK 1.6.0-b105. I am running Ubuntu. >> >> I am still able to reproduce the error. >> >> 1. Open a session from the Aliases window. >> 2. Hit Ctrl-N. You should have two session windows. >> 3. Hit Alt-RightArrow. The cursor's focus should be in the first window >> you opened. >> 4. Hit Alt-RightArrow again, cursor focus will be in the second window. >> 5. Hit Alt-RightArrow again, cursor focus will still be in the second >> window. >> >> I am still debugging but hope to have a patch for you soon! >> >> Johnathan >> >> On Mon, Aug 25, 2008 at 9:45 AM, Robert Manning < >> rob...@gm...> wrote: >> >>> >>> >>> On Mon, Aug 25, 2008 at 10:36 AM, Johnathan James <ha...@gm...>wrote: >>> >>>> Hello all.. >>>> >>>> I have been trying to work with the source this weekend to fix a bug >>>> that >>>> has been bugging me. Basically, if you open a new Session from the >>>> Aliases >>>> window, then CTRL-N to create a new window, if you press >>>> ALT-ForwardArrow, >>>> usually the focus will remain in the second window, when it should have >>>> moved to the second. So if you type, it will affect the window just >>>> hidden, >>>> not the one you just made visible. >>>> >>>> Anyway, my question is where is the KeyListener for ALT-ForwardArrow? >>>> When I >>>> press that key, what code runs to process it? >>> >>> >>> All of the key accelerator mappings are found at the bottom of : >>> >>> >>> sql12/app/src/net/sourceforge/squirrel_sql/client/resources/squirrel.properties >>> >>> These are translated to KeyStrokes and assigned to the appropriate action >>> in : >>> >>> sql12/fw/src/net/sourceforge/squirrel_sql/fw/util/Resources.java >>> >>> The accelerator you are referring to is defined by the mapping: >>> >>> menuitem.net.sourceforge.squirrel_sql.client.session.action.NextSessionAction.accelerator=alt >>> RIGHT >>> >>> So the code that gets executed is found in : >>> >>> >>> sql12/app/src/net/sourceforge/squirrel_sql/client/session/action/NextSessionAction.java >>> >>> Incidentally, I tried the series of events you described and the cursor >>> is consistently correctly moved >>> to the window that has focus. I wonder if this is related to platform / >>> java version. I'm using Sun Java >>> 1.6.0_05-ea-b05 on Ubuntu Linux. How about you ? >>> >>> Rob >>> >>> >> > |
From: Robert M. <rob...@gm...> - 2008-08-26 15:33:23
|
Step 1 which was : Open a session from the Aliases window. Always results in a session window which has 2 tabs ("Objects" and "SQL") or three if you have the Hibernate plugin installed. Indeed, we seem to be at different starting points. Rob On Tue, Aug 26, 2008 at 11:16 AM, Johnathan James <ha...@gm...> wrote: > I don't think were on exactly the same page.. you should only have a SQL > tab in the Session created at Step 1 (this is the SessionInternalFrame). In > Step 2, by hitting ctrl-n, you create a window that has no tabs, only an > area to enter SQL (this is SQLInternalFrame). From this point on, if you hit > Alt-RightArrow (or Alt-LeftArrow), if the target window has a SQL text entry > area, that area should get focus. The bug is that it leaves focus in the > previous SQL text entry area, not the one made current by Alt-RightArrow. > Then when you type, the text appears in the previous window, not the one > that is Active. If what you happen to type is a CTRL-Enter and the cursor > happens to be on an unfortunate query, that could present a problem. > > Off hand, I'd say the correct behavior is that whenever the user switches, > by whatever means, to a different Session window, if the SQL text entry area > of that different window is active, it should get the focus. > > > On Tue, Aug 26, 2008 at 5:20 AM, Robert Manning < > rob...@gm...> wrote: > >> I think I see what's happening. The reason that I was unable to reproduce >> the problem yesterday is because >> I had the SQL tab selected in the main session window (the one with the >> object tree). If the SQL tab is open >> in both session windows, the cursor will move when the selected window >> changes - at least for me. But, if >> the object tree tab is selected in the main session window, then the >> cursor never moves from the other SQL >> tab in the other session window. If that accurately describes the bug, >> what should the correct behavior be? >> >> Rob >> >> >> On Tue, Aug 26, 2008 at 12:01 AM, Johnathan James <ha...@gm...>wrote: >> >>> Rob, et al.. >>> >>> I was on JDK 1.5.09 this morning, but I have since upgraded and rebuilt >>> the project under JDK 1.6.0-b105. I am running Ubuntu. >>> >>> I am still able to reproduce the error. >>> >>> 1. Open a session from the Aliases window. >>> 2. Hit Ctrl-N. You should have two session windows. >>> 3. Hit Alt-RightArrow. The cursor's focus should be in the first window >>> you opened. >>> 4. Hit Alt-RightArrow again, cursor focus will be in the second window. >>> 5. Hit Alt-RightArrow again, cursor focus will still be in the second >>> window. >>> >>> I am still debugging but hope to have a patch for you soon! >>> >>> Johnathan >>> >>> On Mon, Aug 25, 2008 at 9:45 AM, Robert Manning < >>> rob...@gm...> wrote: >>> >>>> >>>> >>>> On Mon, Aug 25, 2008 at 10:36 AM, Johnathan James <ha...@gm...>wrote: >>>> >>>>> Hello all.. >>>>> >>>>> I have been trying to work with the source this weekend to fix a bug >>>>> that >>>>> has been bugging me. Basically, if you open a new Session from the >>>>> Aliases >>>>> window, then CTRL-N to create a new window, if you press >>>>> ALT-ForwardArrow, >>>>> usually the focus will remain in the second window, when it should have >>>>> moved to the second. So if you type, it will affect the window just >>>>> hidden, >>>>> not the one you just made visible. >>>>> >>>>> Anyway, my question is where is the KeyListener for ALT-ForwardArrow? >>>>> When I >>>>> press that key, what code runs to process it? >>>> >>>> >>>> All of the key accelerator mappings are found at the bottom of : >>>> >>>> >>>> sql12/app/src/net/sourceforge/squirrel_sql/client/resources/squirrel.properties >>>> >>>> These are translated to KeyStrokes and assigned to the appropriate >>>> action in : >>>> >>>> sql12/fw/src/net/sourceforge/squirrel_sql/fw/util/Resources.java >>>> >>>> The accelerator you are referring to is defined by the mapping: >>>> >>>> menuitem.net.sourceforge.squirrel_sql.client.session.action.NextSessionAction.accelerator=alt >>>> RIGHT >>>> >>>> So the code that gets executed is found in : >>>> >>>> >>>> sql12/app/src/net/sourceforge/squirrel_sql/client/session/action/NextSessionAction.java >>>> >>>> Incidentally, I tried the series of events you described and the cursor >>>> is consistently correctly moved >>>> to the window that has focus. I wonder if this is related to platform / >>>> java version. I'm using Sun Java >>>> 1.6.0_05-ea-b05 on Ubuntu Linux. How about you ? >>>> >>>> Rob >>>> >>>> >>> >> > |
From: Johnathan J. <ha...@gm...> - 2008-08-26 15:42:31
|
True enough.. Perhaps my words weren't clear enough. There will be a SQL tab in the window that is opened from the Aliases window. But when you hit Ctrl-N, that new window will not have a SQL tab. What I was trying to address was your point, "If the SQL tab is open in both session windows, the cursor will move when the selected window changes - at least for [you]." There isn't a SQL tab in both session windows; only the first one that was opened from the Aliases window. On Tue, Aug 26, 2008 at 8:31 AM, Robert Manning <rob...@gm...>wrote: > Step 1 which was : > > Open a session from the Aliases window. > > Always results in a session window which has 2 tabs ("Objects" and "SQL") > or three if you have the Hibernate plugin installed. > > Indeed, we seem to be at different starting points. > > Rob > > > > On Tue, Aug 26, 2008 at 11:16 AM, Johnathan James <ha...@gm...>wrote: > >> I don't think were on exactly the same page.. you should only have a SQL >> tab in the Session created at Step 1 (this is the SessionInternalFrame). In >> Step 2, by hitting ctrl-n, you create a window that has no tabs, only an >> area to enter SQL (this is SQLInternalFrame). From this point on, if you hit >> Alt-RightArrow (or Alt-LeftArrow), if the target window has a SQL text entry >> area, that area should get focus. The bug is that it leaves focus in the >> previous SQL text entry area, not the one made current by Alt-RightArrow. >> Then when you type, the text appears in the previous window, not the one >> that is Active. If what you happen to type is a CTRL-Enter and the cursor >> happens to be on an unfortunate query, that could present a problem. >> >> Off hand, I'd say the correct behavior is that whenever the user switches, >> by whatever means, to a different Session window, if the SQL text entry area >> of that different window is active, it should get the focus. >> >> >> On Tue, Aug 26, 2008 at 5:20 AM, Robert Manning < >> rob...@gm...> wrote: >> >>> I think I see what's happening. The reason that I was unable to reproduce >>> the problem yesterday is because >>> I had the SQL tab selected in the main session window (the one with the >>> object tree). If the SQL tab is open >>> in both session windows, the cursor will move when the selected window >>> changes - at least for me. But, if >>> the object tree tab is selected in the main session window, then the >>> cursor never moves from the other SQL >>> tab in the other session window. If that accurately describes the bug, >>> what should the correct behavior be? >>> >>> Rob >>> >>> >>> On Tue, Aug 26, 2008 at 12:01 AM, Johnathan James <ha...@gm...>wrote: >>> >>>> Rob, et al.. >>>> >>>> I was on JDK 1.5.09 this morning, but I have since upgraded and rebuilt >>>> the project under JDK 1.6.0-b105. I am running Ubuntu. >>>> >>>> I am still able to reproduce the error. >>>> >>>> 1. Open a session from the Aliases window. >>>> 2. Hit Ctrl-N. You should have two session windows. >>>> 3. Hit Alt-RightArrow. The cursor's focus should be in the first window >>>> you opened. >>>> 4. Hit Alt-RightArrow again, cursor focus will be in the second window. >>>> 5. Hit Alt-RightArrow again, cursor focus will still be in the second >>>> window. >>>> >>>> I am still debugging but hope to have a patch for you soon! >>>> >>>> Johnathan >>>> >>>> On Mon, Aug 25, 2008 at 9:45 AM, Robert Manning < >>>> rob...@gm...> wrote: >>>> >>>>> >>>>> >>>>> On Mon, Aug 25, 2008 at 10:36 AM, Johnathan James <ha...@gm...>wrote: >>>>> >>>>>> Hello all.. >>>>>> >>>>>> I have been trying to work with the source this weekend to fix a bug >>>>>> that >>>>>> has been bugging me. Basically, if you open a new Session from the >>>>>> Aliases >>>>>> window, then CTRL-N to create a new window, if you press >>>>>> ALT-ForwardArrow, >>>>>> usually the focus will remain in the second window, when it should >>>>>> have >>>>>> moved to the second. So if you type, it will affect the window just >>>>>> hidden, >>>>>> not the one you just made visible. >>>>>> >>>>>> Anyway, my question is where is the KeyListener for ALT-ForwardArrow? >>>>>> When I >>>>>> press that key, what code runs to process it? >>>>> >>>>> >>>>> All of the key accelerator mappings are found at the bottom of : >>>>> >>>>> >>>>> sql12/app/src/net/sourceforge/squirrel_sql/client/resources/squirrel.properties >>>>> >>>>> These are translated to KeyStrokes and assigned to the appropriate >>>>> action in : >>>>> >>>>> sql12/fw/src/net/sourceforge/squirrel_sql/fw/util/Resources.java >>>>> >>>>> The accelerator you are referring to is defined by the mapping: >>>>> >>>>> menuitem.net.sourceforge.squirrel_sql.client.session.action.NextSessionAction.accelerator=alt >>>>> RIGHT >>>>> >>>>> So the code that gets executed is found in : >>>>> >>>>> >>>>> sql12/app/src/net/sourceforge/squirrel_sql/client/session/action/NextSessionAction.java >>>>> >>>>> Incidentally, I tried the series of events you described and the cursor >>>>> is consistently correctly moved >>>>> to the window that has focus. I wonder if this is related to platform >>>>> / java version. I'm using Sun Java >>>>> 1.6.0_05-ea-b05 on Ubuntu Linux. How about you ? >>>>> >>>>> Rob >>>>> >>>>> >>>> >>> >> > |
From: Robert M. <rob...@gm...> - 2008-08-26 15:51:26
|
On Tue, Aug 26, 2008 at 11:40 AM, Johnathan James <ha...@gm...> wrote: > True enough.. Perhaps my words weren't clear enough. There will be a SQL > tab in the window that is opened from the Aliases window. But when you hit > Ctrl-N, that new window will not have a SQL tab. > > What I was trying to address was your point, "If the SQL tab is open in > both session windows, the cursor will move when the selected window changes > - at least for [you]." There isn't a SQL tab in both session windows; only > the first one that was opened from the Aliases window. > Ah yes, sorry for the confusion. You are indeed correct - there is no SQL tab in the window created by Ctrl-N - just a SQL entry panel. As I see it now, it appears that there is a difference in behavior between using Alt-Right to select the next window and selecting the next window with the mouse pointer. If the next window has an object tree displayed, Alt-Right will not cause the focus to leave from the original SQL entry panel. But selecting the next window with the mouse pointer, causes the object tree to gain focus for keyboard events. Rob |