Questions and discussion about using ProcessMaker: user interface, running cases & functionality

Moderator: amosbatto

#825536
Hello,
I'm using ProcessMaker 3.3.10-community, and I found a bug in the Suggest box behavior when pasting a value in a suggest box: it doesn't call the execute-query-suggest under some circumstances...
Attached are the dynaform definition to be used for the test, and the pmt table to be uploaded into the PM server.

Here are the steps to reproduce this behavior:
1. import the table schema + data into PM server
2. create a new process, create a new dynaform, edit it, and import the Suggest test dynaform
3. Click on preview to preview the dynaform
4. copy from notepad++ (or any text editor) the following text: 1000
5. set focus into the suggest box (click in it)
6. press CTRL (do not release the key)
7. wait for 1 or 2 seconds,
8. press V (for ctrl+v)
9. it will not show the suggest list, and such it will not select the label matching the value.

If you press the V key without any delay after the CTRL, then the label will show up correctly...

Thank you
Regards,
Tomolimo
Attachments
(2.24 KiB) Downloaded 6 times
(2.01 KiB) Downloaded 2 times
#825551
amosbatto wrote: Tue Jul 23, 2019 9:46 pm Do you see this problem in all web browsers (Firefox, Chrome, Edge and IE)?
Hello amosbatto,

I made tests with IE11 and Chrome 75.0.3770.142 (current latest version).

Thank you
Regards,
Tomolimo
#825557
Hello amosbatto,

Here is a video of the issue:
First part with a CTRL + V that doesn't trigger the execute-query-suggest (and of course the second field is not filled), and second part another CTRL+V that triggers the execute-query-suggest (and of course the second field is filled).

The suggest box with CTRL+V behaves like if there was a sort of timeout after the CTRL key is pressed...

Thank you,
Regards,
Tomolimo
Attachments
(1.76 MiB) Downloaded 2 times
#825576
In the file workflow/public_html/lib/pmdynaform/build/js/PMDynaform.js,
line 12444 tells the suggest box to ignore the CTRL key (which is number 17):
Code: Select all
        /**
         * @param {Array} invalidEnterKeys - is the list of keyboard events captured incorrect not to execute queries
         */
        invalidEnterKeys: [16, 17, 18, 20, 37, 39, 9],
If you remove 17 from the list, the suggest box will execute immediately when you release the CTRL key. Is that what you want?
#825587
Hello amosbatto,

I'll propose another fix (not sure that it has no other drawbacks ...):

Instead of the modification on line 12444, I'll propose to change the line 12568 like following:
Code: Select all
this.invalidEnterKeys.indexOf(event.which) === -1 && (!event.ctrlKey || (event.ctrlKey && event.which === 86))) {
This fix has the advantage to send only one execute-query-suggest, but I'm not sure that it covers all aspects of the paste event.

But I believe that the real root cause is that the paste event is not handled, and that an handler should be written for it and added in the events structure at line 12417. Something like:
Code: Select all
        events: {
            "keyup input": "generateOptionsHandler",
            "keydown input": "refreshBinding",
            "focusin input": "preventFocusIn",
            "change input": "eventListener",
            "paste input": "clipboardListener"
        },
Of course clipboardListener has to be defined :)

Thank you,
Regards,
Tomolimo
#825891
Hello amosbatto,
I'm trying to fill in a bug for this issue in the https://support.processmaker.com but I cannot log in, as I don't remember which email address was associated with my Mantis account. My account was Tomolimo.
Could you do something to help me?
Thank you
Regards,
Tomolimo
#825898
Unfortunately, our bug tracker was just changed last Friday, and it hasn't been decided how bugs will be handled for ProcessMaker 3.X Community Edition. At this point, only Enterprise clients have priority to get their bugs fixed. If I have an update on how bugs will be handled, I will post an announcement on the forum, but right now I don't have access to the bug tracker.

ProcessMaker 4 is using Github as its bug tracker, and the goal that its development will happen in the open and accept code contributions from the community.

Hi Support, I think this is good. I too have fixe[…]

Hi, I'm facing the same error and when I run : […]

Routing Logic

Hi All I am doing a process, where i have 3 tasks […]

Hi @amosbatto, thanks a lot. at least the message[…]