Right Click on Mac

I noticed a couple plugins mention highlighting text and right clicking to perform an action (i.e. Go to Note, Tag or Notebook via highlighting text in editor and Create note from highlighted text).

On Mac 10.14.6, Joplin version 1.6.2 I don't see any menu at all when right clicking on text highlighted in the markdown editor or WYSIWYG editor. I only see "copy" when doing the same in the Preview editor.

Am I misunderstanding the intended behavior?

1 Like

Do you use a the zoom feature? Because there was a bug related to zooming and context menus and maybe it's still there in some cases.

It should have usual items - copy, paste, etc

Hmm, I don't think that's it, I am at "Actual Size" in the View menu.

Strange, then maybe it's broken in the pre release. Is there any error in the console when you right click? https://joplinapp.org/debugging

No error appears when I right click (no logs are output at all on that action specifically).

I do have one URL error right when the app is loaded, but seems unrelated.

/Applications/Joplin.app/Contents/Resources/app.asar/node_modules/@joplin/lib/Logger.js:179 11:46:21: RevisionService::collectRevisions: Could not create revision for note: d305ac3c473e4fdf93d562436bb90cac: URIError: URI malformed
    at encodeURI (<anonymous>)
    at diff_match_patch.patch_obj.toString (/Applications/Joplin.app/Contents/Resources/app.asar/node_modules/@joplin/lib/node_modules/diff-match-patch/index.js:2207:24)
    at Array.join (<anonymous>)
    at diff_match_patch.patch_toText (/Applications/Joplin.app/Contents/Resources/app.asar/node_modules/@joplin/lib/node_modules/diff-match-patch/index.js:2071:15)
    at Function.createTextPatch (/Applications/Joplin.app/Contents/Resources/app.asar/node_modules/@joplin/lib/models/Revision.js:20:14)
    at RevisionService.createNoteRevision_ (/Applications/Joplin.app/Contents/Resources/app.asar/node_modules/@joplin/lib/services/RevisionService.js:97:33)
    at async RevisionService.collectRevisions (/Applications/Joplin.app/Contents/Resources/app.asar/node_modules/@joplin/lib/services/RevisionService.js:153:21)
    at async RevisionService.maintenance (/Applications/Joplin.app/Contents/Resources/app.asar/node_modules/@joplin/lib/services/RevisionService.js:261:5)

And after leaving the app running for a min, this one appeared:

/Applications/Joplin.app/Contents/Resources/app.asar/gui/NoteEditor/utils/useWindowCommandHandler.js:26 Uncaught (in promise) TypeError: Cannot read property 'execCommand' of null
    at /Applications/Joplin.app/Contents/Resources/app.asar/gui/NoteEditor/utils/useWindowCommandHandler.js:26
    at Generator.next (<anonymous>)
    at /Applications/Joplin.app/Contents/Resources/app.asar/gui/NoteEditor/utils/useWindowCommandHandler.js:8
    at new Promise (<anonymous>)
    at __awaiter (/Applications/Joplin.app/Contents/Resources/app.asar/gui/NoteEditor/utils/useWindowCommandHandler.js:4)
    at Object.execute (/Applications/Joplin.app/Contents/Resources/app.asar/gui/NoteEditor/utils/useWindowCommandHandler.js:25)
    at CommandService.<anonymous> (/Applications/Joplin.app/Contents/Resources/app.asar/node_modules/@joplin/lib/services/CommandService.js:144)
    at Generator.next (<anonymous>)
    at /Applications/Joplin.app/Contents/Resources/app.asar/node_modules/@joplin/lib/services/CommandService.js:8
    at new Promise (<anonymous>)

I just noticed that Joplin prerelease 1.6.4 is out, I'll upgrade and report back on that.

Confirmed that it is the same behavior in 1.6.4

There was indeed a bug with the context menu on high DPI screens, which will be fixed from the next version.

I'm also curious about this error:

RevisionService::collectRevisions: Could not create revision for note: d305ac3c473e4fdf93d562436bb90cac: URIError: URI malformed

It means in some cases revisions cannot be created for certain notes. Is there any chance you could export this note as JEX to see what text might cause this error? I wonder if it's something to do with having emojis or similar in the note.

Awesome, thanks for looking into it.

I am not sure how to search for a note by id in the app, but I have a little CLI script I use for that. Basically it wraps:

curl (printf 'localhost:41184/search?query=%s&token=%s' $query $token) | python -m json.tool

For that note ID I get

{
    "has_more": false,
    "items": []
}

vs a normal note which is

{
    "has_more": false,
    "items": [
        {
            "id": "XXXXXXXXX",
            "parent_id": "XXXXXXXXX",
            "title": "XXXXXXXXX",
            "type_": 1
        }
    ]
}

I rarely use that CLI script, so let me know if there is a better way of find the offending note. Seems like this is not really a note anymore?

It wouldn't find it with a search query, but if you have the clipper server running, you could run this on the command line:

curl 'http://localhost:41184/notes/d305ac3c473e4fdf93d562436bb90cac?token=YOUR_TOKEN'

And that should give you the note title, which you could then export as JEX.

Ok that worked. Unfortunately it is not a note I can post, but it was able to be exported to JEX.

Also Good guess on the emoji, that note has a 🎉 in it. I don't see any other special characters, and the note is in English. Searching for that particular emoji, I have 4 other notes that use the same one.

Another thing to point out is that the note has 4 revisions, 3 of which are after the emoji was added.

Thanks for the info, I'll see if I can make it fail by adding this emoji. I guess it's an upstream issue anyway, but I want to double-check that revisions don't get corrupted because of this.

Confirmed that this has been fixed in 1.6.6. Thanks!

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.