RealRaven2000 / QuickFolders

Thunderbird Add-on: QuickFolders
http://quickfolders.org/
Other
48 stars 9 forks source link

Keyboard Shortcut conflict with the 'QNote' extension - quickMove / quickJump triggered unintendedly #497

Open LinuxOnTheDesktop opened 1 week ago

LinuxOnTheDesktop commented 1 week ago

Perhaps I should file this against QNote (if I can find a bug tracker for it).

QF keeps stealing focus from my QNote note: when I try to enter text into the note, often the text goes into a QF box. Screenshot:

image

Thunderbird 128.2.0 QF 6.7. Qnote 0.13.0

OS: Windows 10.

LinuxOnTheDesktop commented 1 week ago

Except, ah, I can no longer reproduce the problem (though I had already restarted TBird after installing QNote). Hmm.

RealRaven2000 commented 1 week ago

Are you using a shortcut for QNote? You can set / activate the shortcut for quickJump / quickMove on the license tab:

image

it is possible that the global key listener that provides the shortcuts did not guard against this particular field:

    let tag = eventTarget.tagName ? eventTarget.tagName.toLowerCase() : "";
    if (
      eventTarget.id != "threadTree" &&
      eventTarget.id != "folderTree" &&
      eventTarget.id != "accountTree" &&
      ((tag &&
        [
          "textarea", // Postbox quick reply
          "textbox", // any textbox
          "input", // Thunderbird 68 textboxes.
          "html:input", // Thunderbird 78 textboxes.
          "search-textbox", // Thunderbird 78 search boxes
          "xul:search-textbox", // Thunderbird 115 search boxes  [issue ]
          "global-search-bar", // Thunderbird 115 global search [issue ]
          "search-bar", // Thunderbird 128 quick search
          "findbar", // [Bug 26654] in-mail search
        ].includes(tag)) ||
        (eventTarget.baseURI &&
          eventTarget.baseURI.toString().lastIndexOf("chrome://conversations", 0) === 0)) // Bug 26202. replaced startswith
    ) {
      logEvent(eventTarget);
      return;
    }
LinuxOnTheDesktop commented 1 week ago

Thanks.

I had the idea that ctrl-Q would insert a QNote, so I pressed that combination a few times. It was not long after that that I had the problem I think (though the shortcut did not create a QNote). Shortly afterwards I checked by QF keyboard shortcuts and they were set to default - so, no ctrl-Q. But I disabled them anyway - and, as I said, have not experienced the problem subsequently. Perhaps in trying to press ctrl-Q I had pressed some other key combination. Perhaps though some extra 'field guarding' is in order.

RealRaven2000 commented 6 days ago

What you should try is if the ficus changes to the quickmove field if you type Shift+M or Shift+J within the Q-Note?

(this would only happen if those shortcuts are active on the QuickFolders license screen)

RealRaven2000 commented 5 days ago

I was able to reproduce the issue. Fix incoming soon.

GayzeN57 commented 5 days ago

Just commenting because I'm experiencing the same issue. I'll try to change the focus for the QuickMove, etc, fields, or just try to avoid typing capital J, M or T. 😉 Thank you for posting this. It's something to try.

RealRaven2000 commented 5 days ago

Quickfixed version:

QuickFolders-mx-6.8pre24.zip

this one filters out inputs based on the class webextension-popup-browser - which is added to all popups generated by Add-ons via the ExtensionPopups.jsm module. (I have no idea of the internals just that Qnote creates a browser with that class and the class is also mentioned in the core code)


To tryout this version, download the zip file and then drag it into Thunderbird Add-ons Manager (without extracting)

GayzeN57 commented 5 days ago

Thank you! This update fixes the issue. Much appreciated!

LinuxOnTheDesktop commented 5 days ago

Great stuff as usual, Raven. Thank you. I'll re-open if the problem recurs.

RealRaven2000 commented 5 days ago

Don't close my issues for me until I release an official version please.

LinuxOnTheDesktop commented 5 days ago

@RealRaven2000

Don't close my issues for me until I release an official version please.

I forgot about that policy. I suggest that you create an issue template and mention the policy within that template. :)

RealRaven2000 commented 4 days ago

@RealRaven2000

Don't close my issues for me until I release an official version please.

I forgot about that policy. I suggest that you create an issue template and mention the policy within that template. :)

yeah if I get time... basically I am trying to fix problems for everyone as they happen and then leave issues open until changes are rolled into an official release, so that all users see what I am currently working on (sort issue by most recent changes!) - closed issues are pretty much hidden unless you know what you are doing. It's always nice and satisfying to close issues when I am adding another tagged release.

As part of my release workflow I now have a release-notes.html - mainly for my change entry on ATN - and release-notes.md which I am keeping in parallel to make a tagged release quickly without having to search through my change comments block.

Once I make the tagged release, I close all issues while adding the publishing date on ATN, that's the point in time all my users can rest assured that these issues are fixed / implemented. Issues are usually not personal support requests, they potentitally affect a lot of users.