Disappearing insertion point (Mojave)

User avatar
auxbuss
Posts: 314
Joined: Mon Nov 30, 2015 9:50 pm
Platform: Mac
Contact:

Tue Sep 25, 2018 7:53 pm Post

I'm hoping this is something that the upcoming update has in hand and will fix, but in case not:

Having updated to Mojave, my cursor/insertion point goes AWOL in Scrivener as soon as I start typing. It returns by pressing left cursor.

I've tried the macOS accessibility options to no avail, and also fiddled with the Scrivener block insertion width similarly negative results. Scrivener is the only app with this problem that I've found. Others include: textedit, Pages, textpad, typora, Notes, and a few others.
ImageImage

RH
RHvdG
Posts: 56
Joined: Sun Sep 09, 2018 5:23 pm
Platform: Mac
Location: Utrecht, Netherlands
Contact:

Wed Sep 26, 2018 8:27 am Post

On my installation, the insertion point disappears only in the Composition mode, and only after a carriage return. As soon as I start typing the new paragraph, it reappears. I am using (and greatly benefiting from) a non-blinking, somewhat fatter (3 pt) insertion point (in Composition mode only). Using macOS 10.14 (18A391) and Scrivener 3.0.3 (3032).

I have to rephrase this: the insertion point (in Compose mode) also disappears after a space, and after every second character I type.
Doing a PhD on Hegel, using Scrivener. ‘Es geht vernünftig zu.’

User avatar
KB
Site Admin
Posts: 20775
Joined: Tue Jun 13, 2006 11:23 pm
Platform: Mac
Location: Truro, Cornwall
Contact:

Wed Sep 26, 2018 9:17 am Post

macOS Mojave has introduced insertion point problems into the TextKit - this is a known issue on Apple's side. Personally I'm not seeing what you two are seeing - I'm not seeing the insertion point disappearing while typing, or on every second letter in Compose - but it does disappear completely when I hit backspace to delete several return characters. Exactly the same issue *can* be found in TextEdit (Pages, Notes and others use a custom text system, not the standard TextKit one).

I reported this to Apple at the beginning of August (bug ID#42977334). In September they closed it as a duplicate of a report they received much later, bizarrely (bug ID#43574405), and it was not fixed for release - unsurprising, as Apple cares little for TextKit and rarely fixes bugs reports related to it in time for release.

I have implemented a dirty workaround for 3.1 which overrides Apple's cursor blink code. Could you both please just confirm - does the bug only appear when typing at the *end* of the text?
"You can't waltz in here, use my toaster, and start spouting universal truths without qualification."

User avatar
auxbuss
Posts: 314
Joined: Mon Nov 30, 2015 9:50 pm
Platform: Mac
Contact:

Wed Sep 26, 2018 9:37 am Post

It happens everywhere for me as soon as I start typing.

I don't get the problem in TextEdit.
ImageImage

User avatar
auxbuss
Posts: 314
Joined: Mon Nov 30, 2015 9:50 pm
Platform: Mac
Contact:

Wed Sep 26, 2018 9:59 am Post

I have little more info:

I save my preferences every now and again, and I happened to have one called "scriv3 starter", which I presume I saved before I started fiddling with Scrivener's settings – I upgraded from Scrivener 2. Anyway, I just created a new project (with the Novel template) and loaded that saved preference preset. The cursor problem is not present in the new project.

Edit: If I now switch to my preferences (saved this morning), the cursor problem reappears.

Edit: For me, the problem appears to be caused by the Disable insertion point blinking preferences.
Last edited by auxbuss on Wed Sep 26, 2018 10:08 am, edited 1 time in total.
ImageImage

RH
RHvdG
Posts: 56
Joined: Sun Sep 09, 2018 5:23 pm
Platform: Mac
Location: Utrecht, Netherlands
Contact:

Wed Sep 26, 2018 10:06 am Post

It happens further up in the text as well. I made a screen recording: https://denkdieper.nl/insertionpoint.mov.
Doing a PhD on Hegel, using Scrivener. ‘Es geht vernünftig zu.’

User avatar
auxbuss
Posts: 314
Joined: Mon Nov 30, 2015 9:50 pm
Platform: Mac
Contact:

Wed Sep 26, 2018 10:41 am Post

So, my workaround for now is to uncheck Disable insertion point blinking in preferences and use the below commands found here.

Code: Select all

defaults write -g NSTextInsertionPointBlinkPeriodOn -float 10000
defaults write -g NSTextInsertionPointBlinkPeriodOff -float 1

Please let me know if this is a terrible thing to do; I'm no Apple-hacker.
ImageImage

User avatar
KB
Site Admin
Posts: 20775
Joined: Tue Jun 13, 2006 11:23 pm
Platform: Mac
Location: Truro, Cornwall
Contact:

Wed Sep 26, 2018 10:43 am Post

Ah, right, yes. You'll see problems with both "Disable insertion point blinking" and "Use block insertion point". Of course you won't see such issues in TextEdit, because TextEdit has no such options. :)

Apple broke a lot of insertion point code with Mojave, basically. Fortunately I've found workarounds for these for 3.1, too. Until then I recommend turning those options off - when you do, you'll only see the insertion point disappear when you backspace to delete return characters.

Auxbuss - that's fine to do that. That will turn of insertion point blinking in *all* areas, including text fields, though, just so you know.
"You can't waltz in here, use my toaster, and start spouting universal truths without qualification."

User avatar
AmberV
Posts: 24312
Joined: Sun Jun 18, 2006 4:30 am
Platform: Mac + Linux
Location: Ourense, Galiza
Contact:

Wed Sep 26, 2018 11:18 am Post

For the record, I’ve been using a combination of block cursor with blinking left on, and I don’t think I’ve seen the cursor vanish in Scrivener yet. It is possible to set the block cursor very narrow, if you don’t like the aesthetics.
.:.
Ioa Petra'ka
“Whole sight, or all the rest is desolation.” —John Fowles

se
se1961
Posts: 151
Joined: Tue Jul 05, 2011 8:00 pm
Platform: Mac

Wed Sep 26, 2018 12:08 pm Post

Hi! I logged in because I just updated to Mojave and am having what might be a related problem. In composition mode, my hovering insertion point (when you move your pointer over text, and your pointer turns into an insertion point that lets you select text) is extremely heavy-- as if it's in bold. It's perfectly normal when I type in the editor, or (so far) anywhere else. I've never noticed it before, so I'm hoping it's a related bug. Is it? If not, am I missing a setting that makes the pointer less heavy? It's kind of distracting. ☹️ [Edit: I am not using "disable blinking" or "block cursor" and don't seem to have any problems with my actual insertion point. Just the hover pointer. I notice that in the above "movie" the pointer is "fat" the way mine is:
RHvdG wrote:It happens further up in the text as well. I made a screen recording: https://denkdieper.nl/insertionpoint.mov.

]

User avatar
KB
Site Admin
Posts: 20775
Joined: Tue Jun 13, 2006 11:23 pm
Platform: Mac
Location: Truro, Cornwall
Contact:

Wed Sep 26, 2018 12:49 pm Post

AmberV wrote:For the record, I’ve been using a combination of block cursor with blinking left on, and I don’t think I’ve seen the cursor vanish in Scrivener yet. It is possible to set the block cursor very narrow, if you don’t like the aesthetics.


Hmm, that's a good point, actually - all of these bugs are present when I build on Mojave, but in 3.0.3, which was built on 10.13, I don't see the bugs in Mojave either (the platform the app is built on making a huge difference). All the same, I have had to address exactly these bugs for Mojave, so 3.1 should fix them.

se1961 wrote:Hi! I logged in because I just updated to Mojave and am having what might be a related problem. In composition mode, my hovering insertion point (when you move your pointer over text, and your pointer turns into an insertion point that lets you select text) is extremely heavy-- as if it's in bold. It's perfectly normal when I type in the editor, or (so far) anywhere else. I've never noticed it before, so I'm hoping it's a related bug. Is it? If not, am I missing a setting that makes the pointer less heavy? It's kind of distracting. ☹️ [Edit: I am not using "disable blinking" or "block cursor" and don't seem to have any problems with my actual insertion point. Just the hover pointer. I notice that in the above "movie" the pointer is "fat" the way mine is:
RHvdG wrote:It happens further up in the text as well. I made a screen recording: https://denkdieper.nl/insertionpoint.mov.

]


It's not a related bug, no, but it is down to changes in Mojave. Because the I-beam cursor is black, Scrivener modifies it and colours it in using the composition mode text colour so that it is visible against a dark background. With the introduction of dark mode in Mojave, though, it looks though Apple has added a white border around the I-beam cursor so that it works in either mode. Scrivener therefore no longer needs to colour in the cursor on Mojave, but because 3.0.3 is doing so, it ends up thick because colouring affects the whole image, including the border. This is fixed for 3.1 - thanks for bringing it to my attention.
"You can't waltz in here, use my toaster, and start spouting universal truths without qualification."

se
se1961
Posts: 151
Joined: Tue Jul 05, 2011 8:00 pm
Platform: Mac

Wed Sep 26, 2018 12:59 pm Post

KB wrote:This is fixed for 3.1 - thanks for bringing it to my attention.


Lovely! Thank you! I am quite astonished, always, by how much you keep track of. :)