Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bVj9f-0004ho-7J for pgadmin-hackers@arkaria.postgresql.org; Fri, 05 Aug 2016 17:43:31 +0000 Received: from localhost ([127.0.0.1] helo=postgresql.org) by malur.postgresql.org with smtp (Exim 4.84_2) (envelope-from ) id 1bVj9e-00077i-Iy for pgadmin-hackers@arkaria.postgresql.org; Fri, 05 Aug 2016 17:43:30 +0000 Received: from makus.postgresql.org ([2001:4800:1501:1::229]) by malur.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1bVj9R-0006ti-8u for pgadmin-hackers@postgresql.org; Fri, 05 Aug 2016 17:43:17 +0000 Received: from mail-wm0-x231.google.com ([2a00:1450:400c:c09::231]) by makus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.84_2) (envelope-from ) id 1bVj9N-0007BV-CO for pgadmin-hackers@postgresql.org; Fri, 05 Aug 2016 17:43:16 +0000 Received: by mail-wm0-x231.google.com with SMTP id o80so46900850wme.1 for ; Fri, 05 Aug 2016 10:43:13 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=enterprisedb-com.20150623.gappssmtp.com; s=20150623; h=mime-version:from:date:message-id:subject:to; bh=hzoyC2ObRdKaif8qXSWoiq6pwrS/ncIASHpDHokh9Mo=; b=fiQlGxGEOQRtoUP/rG2qnVbhRSNgU1YOTK+QGpXkZ0kCruqi8/uOJ+4yaN7rPoLONJ /AyZaFcCaysT4Nq58d0ADa1EVRh+c2FmN+oWTgdHFmbHmXIbshox3GS0YBQAKqERqUlZ 2a4gbHxLEG+3y2izsBdphJp/7tAPkOtPKsd1mx7lvGwkTsKyjv/RJmoW2wSG8XWG4yRI VN3jTH9PZwOL1uEhuLqd3+njoxQjU9DhDvRxWfKkDOz1Iib2cmw0nfdecfF+lK9CUsd+ xMHgAQTeelOtKzkD5d2U9eko1OA9mAPz3hbkAPkwobiMWrIXZRg4LcFv9Bvz2ByStExQ LLww== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=hzoyC2ObRdKaif8qXSWoiq6pwrS/ncIASHpDHokh9Mo=; b=R/34TjyvyVowXFgbCD3BD/zEoU7NIO1YhGEYRjP1Y90Ua90pNmTiO2IycKQHm8yXCr R/jjidCCfiy0Y2/2Hzo9lMfJcueU2qqDjfTTEg6l85qk/IzQ/dQZU4uHSKznQY+ZMaVw a/1TFzA/Tp0dI3QQha8nFuO7JjQdggtyZ0toZdlr3GBe7b1FuBQwSeo2e2WLfSmPypxB t3bYtAdqfRxlduTTV2a0s8avy0Nm41T00SvZdoLDIYmUM+g4ouyAast3YUoEpEFpVSmq 2n3w6iiHbs2abeqmjDFj0wEK6IhELyBn1rNdnvQuqDKYCAqWLOh9DL2IspRUZx4MVEPF J9Xg== X-Gm-Message-State: AEkoous97QUgqS3774mlhh076QtaCJDh+eax6vslYmI19SQUo8tuy+kPLW7YrGNXPLIW2pE6kXgBGkIAqVr5B3xn X-Received: by 10.28.24.5 with SMTP id 5mr4680311wmy.6.1470418991563; Fri, 05 Aug 2016 10:43:11 -0700 (PDT) MIME-Version: 1.0 Received: by 10.28.167.81 with HTTP; Fri, 5 Aug 2016 10:42:40 -0700 (PDT) From: Surinder Kumar Date: Fri, 5 Aug 2016 23:12:40 +0530 Message-ID: Subject: [pgAdmin4][Patch]: RM#1478 - Make code mirror text editor keyboard shortcuts consistent irrespective of platform type To: pgadmin-hackers Content-Type: multipart/mixed; boundary=001a11469058a9ff8f0539569926 X-Pg-Spam-Score: -2.6 (--) List-Archive: List-Help: List-ID: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: X-Mailing-List: pgadmin-hackers Precedence: bulk Sender: pgadmin-hackers-owner@postgresql.org --001a11469058a9ff8f0539569926 Content-Type: multipart/alternative; boundary=001a11469058a9ff8a0539569924 --001a11469058a9ff8a0539569924 Content-Type: text/plain; charset=UTF-8 Hi I found that *Code-mirror* library itself provides the List of keyboard shortcuts for Mac OSX and other platform type. We just need to pass them in extraKeys param while creating code-mirror instance. *Following is the keyboard shortcuts for various operations in text editor:* 1. Copy - [Ctrl-C, Cmd-C] 2. Cut - [Ctrl-X, Cmd-X] 3. Select All - [Ctrl-A, Cmd-A] 4. Undo - [Ctrl-Z, Cmd-Z] 5. Redo - [Ctrl-Y, Cmd-Y] 6. Delete Line - [Ctrl-D, Cmd-D] 7. Move left/right(words) - [Alt-Left, Alt-Right] 8. Move start/end of line - [Cmd-Left, Cmd-Right] // *Ctrl-Left/Right* are bound to System shortcuts. so these keys cannot be used. These keyboard shortcuts are consistent in Web/Runtime applications in all platform types. *Issue not fixed:* keyboard shortcut for *Paste text* doesn't work in Mac Runtime only. It is working on Linux runtime & Windows Runtime. An issue "Key shortcuts doesn't work on Mac OS for QWebView widget " is also reported. I also found that right click paste is working in Mac Runtime which is the feature of code-mirror, So I am looking into its code to figure out and I will send a patch with fix once it gets fixed. Please find attached patch and review. Thanks, Surinder Kumar --001a11469058a9ff8a0539569924 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable
Hi<= /div>

I found that Code-mirr= or library itself provides the List of keyboard shortcuts for Mac OSX a= nd other platform type.
We just need to pass them in extraKeys param while creating code-m= irror instance.

Follow= ing is the keyboard shortcuts for various operations in text editor:

  1. Copy - =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0[Ctrl-C, Cmd-C]
  2. Cut - = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 [Ctrl-X, Cmd-X]
  3. Select All - = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0[Ctrl-A, Cmd-A]
  4. Undo - =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0[Ctrl-Z, Cmd-= Z]
  5. Redo - =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0[Ctrl-Y, Cmd-Y]
  6. De= lete Line - =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0[= Ctrl-D, Cmd-D]
  7. Move left/right(words) - =C2=A0[Alt-Left,=C2=A0A= lt-Right]
  8. Move start/end of line - =C2=A0[Cmd-Left, Cmd-Right] = // Ctrl-Left/Right are bound to System =C2=A0 shortcuts. so these ke= ys cannot be used.
These keyboard shortcuts are consistent in Web/Runtime= applications in all platform types.

Issue not fixed:
keyboard shortcut for=C2=A0Paste text=C2=A0does= n't work in Mac Runtime only. It is working on Linux runtime & Wind= ows Runtime.
An= issue=C2=A0"Key shortcuts do= esn't work on Mac OS for QWebView widget" is also reported.

I also found that right cli= ck paste is working in Mac Runtime which is the feature of code-mirror, So = I am looking into its code to figure out and I will send a patch with fix o= nce it gets fixed.

Please= find attached patch and review.


Th= anks,
Surinder = Kumar

--001a11469058a9ff8a0539569924-- --001a11469058a9ff8f0539569926 Content-Type: application/octet-stream; name="RM1478_v1.patch" Content-Disposition: attachment; filename="RM1478_v1.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_iri1cpk20 ZGlmZiAtLWdpdCBhL3dlYi9wZ2FkbWluL3Rvb2xzL2RhdGFncmlkL3RlbXBs YXRlcy9kYXRhZ3JpZC9qcy9kYXRhZ3JpZC5qcyBiL3dlYi9wZ2FkbWluL3Rv b2xzL2RhdGFncmlkL3RlbXBsYXRlcy9kYXRhZ3JpZC9qcy9kYXRhZ3JpZC5q cwppbmRleCAxY2I5YzFlLi42NjRkN2ViIDEwMDY0NAotLS0gYS93ZWIvcGdh ZG1pbi90b29scy9kYXRhZ3JpZC90ZW1wbGF0ZXMvZGF0YWdyaWQvanMvZGF0 YWdyaWQuanMKKysrIGIvd2ViL3BnYWRtaW4vdG9vbHMvZGF0YWdyaWQvdGVt cGxhdGVzL2RhdGFncmlkL2pzL2RhdGFncmlkLmpzCkBAIC0yNDMsNyArMjQz LDggQEAgZGVmaW5lKAogICAgICAgICAgICAgICAgICAgbGluZVdyYXBwaW5n OiB0cnVlLAogICAgICAgICAgICAgICAgICAgbWF0Y2hCcmFja2V0czogdHJ1 ZSwKICAgICAgICAgICAgICAgICAgIGluZGVudFVuaXQ6IDQsCi0gICAgICAg ICAgICAgICAgICBtb2RlOiAidGV4dC94LXBnc3FsIgorICAgICAgICAgICAg ICAgICAgbW9kZTogInRleHQveC1wZ3NxbCIsCisgICAgICAgICAgICAgICAg ICBleHRyYUtleXM6IHBnQWRtaW4uZWRpdG9yX3Nob3J0Y3V0X2tleXMKICAg ICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICAgfSwKCmRpZmYgLS1n aXQgYS93ZWIvcGdhZG1pbi90b29scy9zcWxlZGl0b3IvdGVtcGxhdGVzL3Nx bGVkaXRvci9qcy9zcWxlZGl0b3IuanMgYi93ZWIvcGdhZG1pbi90b29scy9z cWxlZGl0b3IvdGVtcGxhdGVzL3NxbGVkaXRvci9qcy9zcWxlZGl0b3IuanMK aW5kZXggYzM2NGFhZC4uZmJlZjE4NCAxMDA2NDQKLS0tIGEvd2ViL3BnYWRt aW4vdG9vbHMvc3FsZWRpdG9yL3RlbXBsYXRlcy9zcWxlZGl0b3IvanMvc3Fs ZWRpdG9yLmpzCisrKyBiL3dlYi9wZ2FkbWluL3Rvb2xzL3NxbGVkaXRvci90 ZW1wbGF0ZXMvc3FsZWRpdG9yL2pzL3NxbGVkaXRvci5qcwpAQCAtMzIsNiAr MzIsMzYgQEAgZGVmaW5lKAogICAgICAgICBGN19LRVkgPSAxMTgsCiAgICAg ICAgIEY4X0tFWSA9IDExOTsKCisgICAgLyoKKyAgICAgKiBMaXN0IG9mIHNo b3J0Y3V0IGtleXMgc3VwcG9ydGVkIGZvciBiYXNpYworICAgICAqIG9wZXJh dGlvbnMgaW4gdGV4dCBlZGl0b3IuIFNob3J0Y3V0cyBhcmUKKyAgICAgKiBj b25zaXN0ZW50IGlycmVzcGVjdGl2ZSBvZiBwbGF0Zm9ybSB0eXBlLgorICAg ICAqLworICAgIHZhciBlZGl0b3Jfc2hvcnRjdXRfa2V5cyA9IHBnQWRtaW4u ZWRpdG9yX3Nob3J0Y3V0X2tleXMgPSB7CisgICAgICAvLyBBdXRvY29tcGxl dGUgc3FsIGNvbW1hbmQKKyAgICAgICJDdHJsLVNwYWNlIjogImF1dG9jb21w bGV0ZSIsCisgICAgICAiQ21kLVNwYWNlIjogImF1dG9jb21wbGV0ZSIsCisg ICAgICAvLyBTZWxlY3QgQWxsIHRleHQKKyAgICAgICJDdHJsLUEiOiAic2Vs ZWN0QWxsIiwKKyAgICAgICJDbWQtQSI6ICJzZWxlY3RBbGwiLAorICAgICAg Ly8gUmVkbyB0ZXh0CisgICAgICAiQ3RybC1ZIjogInJlZG8iLAorICAgICAg IkNtZC1ZIjogInJlZG8iLAorICAgICAgLy8gVW5kbyB0ZXh0CisgICAgICAi Q3RybC1aIjogInVuZG8iLAorICAgICAgIkNtZC1aIjogInVuZG8iLAorICAg ICAgLy8gRGVsZXRlIExpbmUKKyAgICAgICJDdHJsLUQiOiAiZGVsZXRlTGlu ZSIsCisgICAgICAiQ21kLUQiOiAiZGVsZXRlTGluZSIsCisgICAgICAvLyBH byB0byBiZWdpbm5pbmcgb2YgbGluZQorICAgICAgIkNtZC1MZWZ0IjogImdv TGluZVN0YXJ0IiwKKyAgICAgIC8vIEdvIHRvIGVuZCBvZiBMaW5lCisgICAg ICAiQ21kLVJpZ2h0IjogImdvTGluZUVuZCIsCisgICAgICAvLyBNb3ZlIHdv cmQgYnkgd29yZCBsZWZ0L3JpZ2h0CisgICAgICAiQWx0LUxlZnQiOiAiZ29H cm91cExlZnQiLAorICAgICAgIkFsdC1SaWdodCI6ICJnb0dyb3VwUmlnaHQi CisgICAgfTsKKwogICAgIC8vIERlZmluaW5nIHRoZSBiYWNrYm9uZSBtb2Rl bCBmb3IgdGhlIHNxbCBncmlkCiAgICAgdmFyIHNxbEVkaXRvclZpZXdNb2Rl bCA9IEJhY2tib25lLk1vZGVsLmV4dGVuZCh7CgpAQCAtMjA2LDcgKzIzNiw4 IEBAIGRlZmluZSgKICAgICAgICAgICAgICAgcmFuZ2VGaW5kZXI6IENvZGVN aXJyb3IuZm9sZC5jb21iaW5lKENvZGVNaXJyb3IucGdhZG1pbkJlZ2luUmFu Z2VGaW5kZXIsIENvZGVNaXJyb3IucGdhZG1pbklmUmFuZ2VGaW5kZXIsCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENvZGVNaXJyb3IucGdh ZG1pbkxvb3BSYW5nZUZpbmRlciwgQ29kZU1pcnJvci5wZ2FkbWluQ2FzZVJh bmdlRmluZGVyKQogICAgICAgICAgICAgfSwKLSAgICAgICAgICAgIGd1dHRl cnM6IFsiQ29kZU1pcnJvci1saW5lbnVtYmVycyIsICJDb2RlTWlycm9yLWZv bGRndXR0ZXIiXQorICAgICAgICAgICAgZ3V0dGVyczogWyJDb2RlTWlycm9y LWxpbmVudW1iZXJzIiwgIkNvZGVNaXJyb3ItZm9sZGd1dHRlciJdLAorICAg ICAgICAgICAgZXh0cmFLZXlzOiBlZGl0b3Jfc2hvcnRjdXRfa2V5cwogICAg ICAgICB9KTsKCiAgICAgICAgIC8vIENyZWF0ZSBtYWluIHdjRG9ja2VyIGlu c3RhbmNlCkBAIC0yNDgsNyArMjc5LDcgQEAgZGVmaW5lKAogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBDb2RlTWlycm9yLnBnYWRtaW5Mb29w UmFuZ2VGaW5kZXIsIENvZGVNaXJyb3IucGdhZG1pbkNhc2VSYW5nZUZpbmRl cikKICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICBndXR0ZXJzOiBbIkNv ZGVNaXJyb3ItbGluZW51bWJlcnMiLCAiQ29kZU1pcnJvci1mb2xkZ3V0dGVy Il0sCi0gICAgICAgICAgICBleHRyYUtleXM6IHsiQ3RybC1TcGFjZSI6ICJh dXRvY29tcGxldGUifQorICAgICAgICAgICAgZXh0cmFLZXlzOiBlZGl0b3Jf c2hvcnRjdXRfa2V5cwogICAgICAgICB9KTsKCiAgICAgICAgIC8vIENyZWF0 ZSBwYW5lbHMgZm9yICdEYXRhIE91dHB1dCcsICdFeHBsYWluJywgJ01lc3Nh Z2VzJyBhbmQgJ0hpc3RvcnknCg== --001a11469058a9ff8f0539569926 Content-Type: text/plain Content-Disposition: inline Content-Transfer-Encoding: 8bit MIME-Version: 1.0 -- Sent via pgadmin-hackers mailing list (pgadmin-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgadmin-hackers --001a11469058a9ff8f0539569926--