[GNC-dev] Register text selection + V#3 Windows scroll bars.

Chris Good goodchris96 at gmail.com
Sat May 26 21:00:50 EDT 2018


Hi Geert,

 

Re Changing GnuCash 3 scrollbars back to typical MS Windows style

 

Thanks for the information.

 

I see from your comment on:
 
<https://wiki.gnucash.org/wiki/Windows#Q:_What_if_I_need_to_change_another_v
isual_aspect.2C_not_covered_by_.22Select_Theme.22.3F> 
https://wiki.gnucash.org/wiki/Windows#Q:_What_if_I_need_to_change_another_vi
sual_aspect.2C_not_covered_by_.22Select_Theme.22.3F :
       To fix [This is not working as written below. The settings.ini file
is partly documented in the gtk api reference, but gnucash is not picking it
up. Perhaps we need to initialize the gtksettings early in the application
run ?]
 

that GnuCash is currently ignoring settings in the GTK3 settings.ini file. I
have tested this is still true.

 

I have raised bug https://bugzilla.gnome.org/show_bug.cgi?id=796421 - GTK3
settings.ini not being used

so that hopefully this can be fixed.

 

I see from:
 
<https://developer.gnome.org/gtk3/stable/GtkSettings.html#GtkSettings--gtk-p
rimary-button-warps-slider>
https://developer.gnome.org/gtk3/stable/GtkSettings.html#GtkSettings--gtk-pr
imary-button-warps-slider :
       Whichever action you choose for the primary button, the other action
will be available by holding Shift and primary-clicking, or (since GTK+
3.22.25) clicking the middle mouse button.

 

I confirm that I can use shift-left-click or middle-button-click to perform
the desired scrollbar action in Windows 10.

I'll send a less complicated email to gnucash-user to let people know of the
alternative.

 

Regards, Chris Good

 

From: Geert Janssens <geert.gnucash at kobaltwit.be> 
Sent: Tuesday, 22 May 2018 5:57 PM
To: gnucash-devel at gnucash.org
Cc: David Carlson <david.carlson.417 at gmail.com>; Chris Good
<goodchris96 at gmail.com>
Subject: Re: [GNC-dev] Register text selection + V#3 Windows scroll bars.

 

This is another behavioral change we got "for free" from Gtk3.

 

Luckily this one is configurable [1] by adding

gtk-primary-button-warps-slider = false

to the [Settings] section of gtk3's settings.ini file

 

The location of this file is platform dependent.

 

On systems following the Freedesktop specification (being linux, gnucash on
macports, most bsd's,...) settings.ini should be created (if not exists yet)

in

$HOME/.config/gtk-3.0

$HOME is a special shell variable and refers to your home directory.

For example

/home/someuser/.config/gtk-3.0/settings.ini

 

On Windows this file should reside in

%localappdata%\gtk-3.0

%localappdata% is a special Windows variable and refers to a location to
store local user specific configuration files.

For example

c:\Users\someuser\AppData\Local\gtk-3.0

 

For our OS X/Quartz the settings.ini file will be searched for in

$HOME/Library/Application Support/Gnucash/config/gtk-3.0

Like on linux $HOME refers to your home direcory.

For example

/home/someuser/Library/Application
Support/Gnucash/config/gtk-3.0/settings.ini

 

Geert

 

[1] According to this AskUbuntu forum topic:

https://askubuntu.com/questions/295988/how-to-fix-gtk3-scrollbar-behavior

 

Op dinsdag 22 mei 2018 02:47:01 CEST schreef David Carlson:

> I have seen that proportional scrollbar jumping behavior in some other

> Linux applications, and I too dislike it. In very long lists like our

> registers become after a while, it is not easy to scroll several screens
up

> or down frequently. I think that it is a GTK thing. If there is a

> work-around, I would like to know about it.

> 

> David C

> 

> On Mon, May 21, 2018 at 7:36 PM, Chris Good <goodchris96 at gmail.com
<mailto:goodchris96 at gmail.com> > wrote:

> > [GNC-dev] Register text selection

> > 

> > 

> > Geert Janssens

> > <mailto:gnucash-devel%40gnucash.org?Subject=Re:%

> > 20Re%3A%20%5BGNC-dev%5D%20Re

> > gister%20text%20selection&In-Reply-To=%3C1925551.

> > T7MvD3KevP%40legolas.kobalt

> > wit.lan%3E> geert.gnucash at kobaltwit.be

> > Mon May 21 09:14:29 EDT 2018

> > 

> > _____

> > 

> > Op maandag 21 mei 2018 13:08:05 CEST schreef Robert Fewell:

> > > I have been looking at getting the middle mouse button to work for

> > 

> > pasting

> > 

> > > selected text and whilst trying to do that started to wonder about the

> > > existing preselected text.

> > > 

> > > Currently...

> > > If you open a register, the blank transaction date text is
preselected.

> > > If you start Gnucash with saved open registers, the last register in
the

> > > list to load has the blank date text preselected, this may not be the

> > > current open register.

> > > 

> > > If you navigate by keyboard, the next field text is preselected and
the

> > > cursor set to the end of text.

> > > If you navigate by mouse, the text is not selected and the cursor is
the

> > > mouse position.

> > > If you update a transaction in one register and have the other

> > > corresponding register open, the text where the cursor is will get

> > > selected. (I think this is an easy fix).

> > > 

> > > I am just wondering if we should be doing this preselected text at all
?

> > 

> > As far as I can tell the first two (text navigation hightlights the full

> > text,

> > mouse navigation sets the text cursor) are at least common behavior, if

> > not

> > default. Find any dialog with more than one text field and try what

> > happens

> > if

> > you tab from one field to the next or click in random fields. I would
find

> > it

> > disturbing if the register would behave differently.

> > 

> > I don't understand exactly what you mean with the third behavior.

> > 

> > > Some might say it is a good indication of where the focus is, only
with

> > > keyboard navigation, but one could simply add something like this to

> > > your

> > > css file which would also work for mouse navigation...

> > > 

> > > cursor entry {

> > > 

> > > background-color: pink;

> > > 

> > > }

> > > 

> > > So just asking the question.

> > 

> > It's not just a matter of visual indication. It's also about ergonomics.

> > Text

> > and mouse navigation have different dynamics and this is reflected in
the

> > way

> > text is selected or not when entering a text field.

> > 

> > For your information I plan to work in this area of the code soon to fix

> > input

> > methods. I intend to drop all code related to text manipulation from the

> > sheet

> > and make the gtk entry responsible for it instead. Perhaps it's best you

> > hold

> > off other changes related to text entry until that's done to avoid doing

> > double work.

> > 

> > Geert

> > 

> > 

> > 

> > I agree with Geert, the way it is, works well with how I work, and is

> > usual

> > UI.

> > 

> > 

> > 

> > The fact that the current field is highlighted when you go back to the

> > register makes it easier to find where you are.

> > 

> > 

> > 

> > This email reminded me of another issue I wish to discuss.

> > 

> > The scroll bars on all the windows seem to have changed in 3.0+.

> > 

> > If you now click above (or below) the current position bar in the

> > scrollbar,

> > it takes you to the place in the

> > 

> > window which is proportional to where in the scroll bar you click,
rather

> > than up (or down) 1 screen full.

> > 

> > 

> > 

> > This is not typical MS Windows UI and surprises me because it is not
what

> > I

> > expect. Suddenly I am far from

> > 

> > where I was instead of just being 1 page away, and it can be laborious
to

> > get back to where I want to be.

> > 

> > 

> > 

> > I know I can use PgUp/PgDn instead and once I get used to it, the new

> > method

> > does offer extra

> > 

> > functionality, but I'm not sure if there is a real need to be able to go

> > say

> > approx. 1/3 of the way through all

> > 

> > the entries in the window.

> > 

> > 

> > 

> > Also, usually in Windows, the height of the scroll bar indicates how
much

> > the current screen is, as a

> > 

> > proportion of all entries.

> > 

> > 

> > 

> > What do other think?

> > 

> > 

> > 

> > Maybe this is an option I can set in css?

> > 

> > 

> > 

> > Regards, Chris Good

> > 

> > 

> > 

> > _______________________________________________

> > gnucash-devel mailing list

> > gnucash-devel at gnucash.org <mailto:gnucash-devel at gnucash.org> 

> > https://lists.gnucash.org/mailman/listinfo/gnucash-devel

> 

> _______________________________________________

> gnucash-devel mailing list

> gnucash-devel at gnucash.org <mailto:gnucash-devel at gnucash.org> 

> https://lists.gnucash.org/mailman/listinfo/gnucash-devel

 

 



More information about the gnucash-devel mailing list