News:

Accounts with zero posts and zero activity during the last months will be deleted periodically to fight SPAM!

Main Menu

Request : C::B View::notebook enhancements

Started by earlgrey, December 08, 2010, 07:01:47 AM

Previous topic - Next topic

daniloz

Quote from: jens on December 22, 2010, 02:18:21 PM
I  understood that, but I think it's not really intuitive.
In other applications scrolling with the mousewheel als changes the focus.
It's interesting, because I find it so much more intuitive than changing the focus...And I'm sure I've seeing it in some other application,  but I can't remember where... Anyway, just found interesting how what we find intuitive or not is related to our life experience...  8)

Quote from: jens on December 22, 2010, 02:18:21 PM
What do you think about making it configurable:
as default scrolling with mousewheel changes the focus, but with key pressed (I suggest ctrl) we only scroll through the tabs without changing the activated tab.
The default behaviour, without additional key (scrolling and activating or just scrolling) can be made configurable and the additional key also.
I like the idea of making it configurable and having a modifying key to change behavior... I'd go for it...

Jenna

#61
Quote from: daniloz on December 22, 2010, 02:29:32 PM
Quote from: jens on December 22, 2010, 02:18:21 PM
I  understood that, but I think it's not really intuitive.
In other applications scrolling with the mousewheel als changes the focus.
It's interesting, because I find it so much more intuitive than changing the focus...And I'm sure I've seeing it in some other application,  but I can't remember where... Anyway, just found interesting how what we find intuitive or not is related to our life experience...  8)

Quote from: jens on December 22, 2010, 02:18:21 PM
What do you think about making it configurable:
as default scrolling with mousewheel changes the focus, but with key pressed (I suggest ctrl) we only scroll through the tabs without changing the activated tab.
The default behaviour, without additional key (scrolling and activating or just scrolling) can be made configurable and the additional key also.
I like the idea of making it configurable and having a modifying key to change behavior... I'd go for it...

Here comes an updated patch, that includes your changes, but make it configurable in "Settings -> Environment -> Notebooks appearance" (not the best title for it, but it's not totally wrong there). The text of the radiobuttons might not be optimal, but it's not easy to describe it in a short term (any better ideas are welcome).

The minimize space part works better now (selected tab will not be moved to the rightmost place, if mnot necessary), but works still not good with reordered tabs (drag and drop). An updated patch will come.

EDIT:
patch updated: http://forums.next.codeblocks.org/index.php/topic,13826.msg94108.html#msg94108

oBFusCATed

Jens: your patch seems to work well, I think I've not encountered any problems using it...

But I've another feature request:
1. open many tabs
2. enlarge the project manager (on the left side of the editor)
3. select the last opened file
4. shrink the project manager

The result is that there unused space on the notebooks (same as the file closing problem).
(most of the time I ignore long posts)
[strangers don't send me private messages, I'll ignore them; post a topic in the forum, but first read the rules!]

MortenMacFly

Quote from: oBFusCATed on January 06, 2011, 02:27:23 AM
Jens: your patch seems to work well, I think I've not encountered any problems using it...
I got another one: C::B started to crash since application of this patch in very rare cases that seems to happen when C::B was running in the background and the mouse is hovering over the tab so that it gets "Re-Activated" I don't remember the exact reason though (I accidentally deleted the report file) but it happened more than once. I can (however) not reproduce... :-(
Compiler logging: Settings->Compiler & Debugger->tab "Other"->Compiler logging="Full command line"
C::B Manual: [url="https://www.codeblocks.org/docs/main_codeblocks_en.html"]https://www.codeblocks.org/docs/main_codeblocks_en.html[/url]
C::B FAQ: [url="https://wiki.codeblocks.org/index.php?title=FAQ"]https://wiki.codeblocks.org/index.php?title=FAQ[/url]

Jenna

Quote from: oBFusCATed on January 06, 2011, 02:27:23 AM
Jens: your patch seems to work well, I think I've not encountered any problems using it...

But I've another feature request:
1. open many tabs
2. enlarge the project manager (on the left side of the editor)
3. select the last opened file
4. shrink the project manager

The result is that there unused space on the notebooks (same as the file closing problem).
I will see what can be done.

Quote from: MortenMacFly on January 06, 2011, 06:52:13 AM
Quote from: oBFusCATed on January 06, 2011, 02:27:23 AM
Jens: your patch seems to work well, I think I've not encountered any problems using it...
I got another one: C::B started to crash since application of this patch in very rare cases that seems to happen when C::B was running in the background and the mouse is hovering over the tab so that it gets "Re-Activated" I don't remember the exact reason though (I accidentally deleted the report file) but it happened more than once. I can (however) not reproduce... :-(

I try to reproduce it on win7, but if the app is not active, the dwell-timer should return (after destroying tooltips if they still exist).
MouseEnter and MouseLeave events should not be triggered if the app is not active and therefore does not have the focus, but that might happen anyways, I will try to debug it.

Jenna

Quote from: oBFusCATed on January 06, 2011, 02:27:23 AM
Jens: your patch seems to work well, I think I've not encountered any problems using it...

But I've another feature request:
1. open many tabs
2. enlarge the project manager (on the left side of the editor)
3. select the last opened file
4. shrink the project manager

The result is that there unused space on the notebooks (same as the file closing problem).
Should be fixed with the attached patch.

Quote from: MortenMacFly on January 06, 2011, 06:52:13 AM
Quote from: oBFusCATed on January 06, 2011, 02:27:23 AM
Jens: your patch seems to work well, I think I've not encountered any problems using it...
I got another one: C::B started to crash since application of this patch in very rare cases that seems to happen when C::B was running in the background and the mouse is hovering over the tab so that it gets "Re-Activated" I don't remember the exact reason though (I accidentally deleted the report file) but it happened more than once. I can (however) not reproduce... :-(

Might be fixed also with the patch.

daniloz

@jens:
I've changed the direction of scrolling without activating tabs to be the same when activating, I think it's nicer this way... and more natural as well... There's only one change in cbaiubook.cpp; see the patch attached, which includes your latest patch....

Jenna

#67
Quote from: daniloz on January 06, 2011, 03:04:36 PM
@jens:
I've changed the direction of scrolling without activating tabs to be the same when activating, I think it's nicer this way... and more natural as well... There's only one change in cbaiubook.cpp; see the patch attached, which includes your latest patch....

With my patch, the selection moves from left to right with activating, if I scroll down without activating, the selected tab moves from left to right.

For me it feels more natural this way, but this might be a matter of taste (or what one is used to).

Let's see what other users say.

Pecan

#68
How does a user turn off the new tooltip when hovering over the editor tab?

It's interfering with both the middle mouse key and the "x" close button.

I have to click twice to close an editor. On the first click, a tooltip appears. Only then can I click again and close the tab.

svn build  rev 6929 (2011-01-19 11:39:43)   gcc 4.3.1 Windows/unicode - 32 bit


MortenMacFly

Quote from: Pecan on January 20, 2011, 08:03:40 PM
It's interfering with both the middle mouse key and the "x" close button.
Huh? I can't reproduce. How long are you hovering before you click the "X"? And what does actually happen with the middle mouse button?
Compiler logging: Settings->Compiler & Debugger->tab "Other"->Compiler logging="Full command line"
C::B Manual: [url="https://www.codeblocks.org/docs/main_codeblocks_en.html"]https://www.codeblocks.org/docs/main_codeblocks_en.html[/url]
C::B FAQ: [url="https://wiki.codeblocks.org/index.php?title=FAQ"]https://wiki.codeblocks.org/index.php?title=FAQ[/url]

Pecan

For awhile there, I didn't have to hover at all.

Then I deleted my local repository, downloaded and rebuilt. It's working much better now.

However, I would like to turn this feature off. If we're going to add features that popup, we should also give the user a chance to turn them off.

Jenna

I'm currently working on a patch, that alows turning off tooltips completely and to change the dwelltime.

MortenMacFly

#72
I've experienced an issue with this patch on Windows Vista meanwhile. It's (however) VERY weired, I am tryinig to explain anyways:
1.) steps to reproduce (crashes always for me)
- startup a fresh C::B
- open a workspace with a saved last opened editor window, so thatt his editor window is re-opened when opening the workspace
- close the editor via the "X"
- open another file from the project tree
-> You'll see the new editor quickly and then -> CRASH.

In the debugger you#ll see the image as attached. It's this line that fails:
m_pLastFocused->SetFocus();
...in void cbAuiNotebook::RestoreFocus().

However, I don't get why it fails. Comparing the addresses shows that the address of m_pLastFocused is indeed not the one of nullptr. However, it seems also not to be a valid address to a wxWindow -> or probably it hasn't been reset. Now I wonder how that can be. m_pLastFocused is initialised with nullptr or set in void cbAuiNotebook::StoreFocus(). So for me either its a valid pointer or not. The only thing I can imagine is that the window that had the focus (most likely the previous editor) is not released properly on destruction and thus the pointer is not being cleared.

Any ideas? Notice that this happens ONLY on windows Vista for me. All other Windows's I drive are working properly with a binary identical C::B and wxWidgets version.


EDIT: Notice that this does NOT happen if I disable to open the last used editors from settings -> environment -> On project load... I might have disabled this option on the other Windows's, but I can't have a look atm...
Compiler logging: Settings->Compiler & Debugger->tab "Other"->Compiler logging="Full command line"
C::B Manual: [url="https://www.codeblocks.org/docs/main_codeblocks_en.html"]https://www.codeblocks.org/docs/main_codeblocks_en.html[/url]
C::B FAQ: [url="https://wiki.codeblocks.org/index.php?title=FAQ"]https://wiki.codeblocks.org/index.php?title=FAQ[/url]

Jenna

Quote from: MortenMacFly on January 21, 2011, 10:38:07 PM
I've experienced an issue with this patch on Windows Vista meanwhile. It's (however) VERY weired, I am tryinig to explain anyways:
1.) steps to reproduce (crashes always for me)
- startup a fresh C::B
- open a workspace with a saved last opened editor window, so thatt his editor window is re-opened when opening the workspace
- close the editor via the "X"
- open another file from the project tree
-> You'll see the new editor quickly and then -> CRASH.

In the debugger you#ll see the image as attached. It's this line that fails:
m_pLastFocused->SetFocus();
...in void cbAuiNotebook::RestoreFocus().

However, I don't get why it fails. Comparing the addresses shows that the address of m_pLastFocused is indeed not the one of nullptr. However, it seems also not to be a valid address to a wxWindow -> or probably it hasn't been reset. Now I wonder how that can be. m_pLastFocused is initialised with nullptr or set in void cbAuiNotebook::StoreFocus(). So for me either its a valid pointer or not. The only thing I can imagine is that the window that had the focus (most likely the previous editor) is not released properly on destruction and thus the pointer is not being cleared.

Any ideas? Notice that this happens ONLY on windows Vista for me. All other Windows's I drive are working properly with a binary identical C::B and wxWidgets version.


EDIT: Notice that this does NOT happen if I disable to open the last used editors from settings -> environment -> On project load... I might have disabled this option on the other Windows's, but I can't have a look atm...

That's a show stopper for me.

I will try to investigate, nut not this  weekend (no time).
I have an idea what to do, so I try to reproduce and fix it next week.

I will not commit, before the cause is found.

MortenMacFly

Quote from: jens on January 22, 2011, 07:51:07 AM
That's a show stopper for me.
[...]
I will not commit, before the cause is found.
Agreed.
Compiler logging: Settings->Compiler & Debugger->tab "Other"->Compiler logging="Full command line"
C::B Manual: [url="https://www.codeblocks.org/docs/main_codeblocks_en.html"]https://www.codeblocks.org/docs/main_codeblocks_en.html[/url]
C::B FAQ: [url="https://wiki.codeblocks.org/index.php?title=FAQ"]https://wiki.codeblocks.org/index.php?title=FAQ[/url]