Commit graph

51 commits

Author SHA1 Message Date
Ed Sanders cd421a4b1d build: Update eslint-config-wikimedia to 0.28.0
Change-Id: Ia565bd4d314b7b512a46c4bb2af74784d5c2edc1
2024-06-06 16:33:02 +01:00
Novem Linguae 859db0ef3d JSDoc: @mixins -> @mixes
Convert old JSDuck syntax to new JSDoc syntax

Bug: T366230
Change-Id: If1103a5945f6be02f9f6d81ec361e873e40d0192
2024-05-31 15:38:02 +00:00
Ed Sanders e69f76ffc8 Use ES6 syntax (arrow callbacks and let/const)
Change-Id: I494f8ee3ab3d805aafbc1c95a5b19b34de598d2b
2024-04-29 21:09:27 +01:00
jenkins-bot e3cfcbd571 Merge "Allow line ranges to be selected using shift+click" 2024-03-11 19:14:46 +00:00
Ed Sanders d6cc861de7 Allow line ranges to be selected using shift+click
Change-Id: I224de2d2d72525b61608d7b6d0f13ce84a699ef7
2024-03-06 22:30:51 +00:00
Ed Sanders 963859f8c9 VE integration: Remove copyright dates
Change-Id: I424e7bb7ac64297b55a47db058605f528084c35e
2024-02-29 15:13:03 +00:00
thiemowmde 040f45302b Fix GeSHi support, update PHP/JSDocs, use modern PHP
The PHPDoc/JSDoc updates are mostly about generic "array" types that
can be made more specific.

In PHP we can remove documentation when it is 100% identical to the
type declarations in the code.

A few mistakes are fixed as well, e.g. a missing "null".

This patch also made a major mistake visible. It looks like the
$geshi2pygments compatibility map was broken since 2018. The array was
changed from values to keys via I7a852dd and some usages updated, but
one was forgotten.

Change-Id: I480999d21f2f69cba84166bb877aa75882778966
2024-01-22 20:10:04 +01:00
thiemowmde 0b13847937 Avoid dirty diffs when editing code blocks with line numbers
Steps to reproduce:
* Make a wikitext page with <syntaxhighlight line="sure">…</…>.
* Edit with VisualEditor and make an unrelated change to the content.
* Save.
* Before the attribute was always replaced with line="1".
* With this patch the old value stays untouched.

Change-Id: I433a206905c1a0a1bc06ef8b4037f6db9d935810
2022-10-26 12:59:32 +00:00
Ed Sanders e2a95de1ce Move var delcarations inline
Change-Id: I4546e0bd18845fa21b7aaca2b50d11e16e637229
2021-10-07 14:34:55 +01:00
Ed Sanders 173491fa6f VE: Fix highlight of block syntax next to floats
Bug: T272864
Change-Id: Ifb8a36bb0f7fee93711c07ebc4efa8c0da244469
2021-01-25 15:13:31 +00:00
Ed Sanders c09c3ed190 Use language as node description
No point using body as that is already visible.

Change-Id: I3425ae4712ccc820ba736ee605524abbc35aecc4
2019-07-31 16:41:15 +01:00
Ed Sanders 6f1c7c88e5 VE: Add read-only support
Change-Id: Ib39d6247385affed7ef46316903db97795407f32
2019-04-16 12:13:18 +01:00
Ed Sanders 8d1c397b63 Update eslint-config-wikimedia to 0.9.0
Change-Id: Ifded26af687dd409b01554df68e83c32a6844317
2018-11-27 21:59:16 +00:00
Ed Sanders c546bf5348 Replace jQuery.map with Array.map
Change-Id: I4bc7e347fe12038bdcadd62a023b6e0041d105c0
2018-10-31 12:51:24 +00:00
Ed Sanders b485d4c6fa Remove unused window.static.icon
Change-Id: I0d79af60052554a5a6c3f79139688d14e5351ab4
2018-10-31 12:51:02 +00:00
Ed Sanders e25603a1b6 Follow-up I3daca6fb: Fix exception thrown when inserting new code block
Change-Id: Ie5f93ace8a81c5053dbadb99dd447b37d2d07316
2018-10-31 12:45:50 +00:00
Bjornskjald ad372167bc Make VE language checking case-insensitive
Bug: T125231
Change-Id: I3daca6fbfce1c2fe4bd901b8912089aa820fb022
2018-10-24 18:01:46 +00:00
Thalia dbd6afcfab Update syntax highlight dialog actions consistently
Require that the node is modified and the language input is
valid before enabling the "done" action. Otherwise disable it.

Bug: T206481
Change-Id: Ie9d2907358ea585ba72628887c46af69f942772f
2018-10-09 12:19:38 +01:00
Thalia 118dcdb405 Separate node classes into individual files
Bug: T205231
Change-Id: Id175f839f0ac8714c44407c52145d4140cd8e343
2018-09-24 18:48:22 +01:00
Ed Sanders af1a91ade9 Use OOUI 'markup' icon instead of VE's deprecated 'alienextension'
Change-Id: Iad1882c20c17792c1339cf9922b9c4c43bf6122b
2018-03-20 19:00:41 +00:00
Ed Sanders b5eb22bf04 Document monospace hack
Change-Id: Ia27dccdb9dc2de6ca66e08c54c62eb91302a381c
2018-01-11 14:45:39 +01:00
David Lynch 17c5301995 ce.MWSyntaxHighlightNode: Always generate node contents
Don't bother checking supported languages before generating the node contents.
We always want the preview, as that's what will display on the rendered page
even if the language is invalid.

Bug: T164120
Change-Id: I8344449bbf9c9cce131d745ea5f4e54b96fe57b1
2017-07-17 11:37:05 -05:00
Ed Sanders 7239e4439c Remove redundant multiline option
MWAceEditorWidget is now multiline by inheritance

Bug: T170275
Change-Id: Ie9d8f200b95497bbe91396ea92e29b0d317f010a
2017-07-12 16:28:34 +01:00
Bartosz Dziewoński 8a186b5822 ve.ui.MWSyntaxHighlightWindow: Set $overlay for the ComboBoxInputWidget
* Allows the dropdown menu to extend outside of the dialog.
* Avoid z-index conflicts with Ace scrollbars (T170027).

Bug: T170027
Change-Id: I52d2d06b56391f30be07c71a86d71d9ab50f0a8c
2017-07-11 00:15:38 +02:00
Ed Sanders 28b480ca0a Pass dataElement type to parent's toDataElement
Ensures the rendering is cached with the correct hash.

Bug: T151130
Depends-On: I80e2f2587cff8e9d9fe6ded5d8581263268deaa8
Change-Id: I64466cc342f7ab7f9d4539f935688d167853a662
2017-05-19 16:06:44 +02:00
Ed Sanders f53d8c2e6e VE: Support editing start line parameter
Change-Id: I869ac413f4d7581026353e2d54f9d22c6b6290f5
2017-05-15 09:49:42 +01:00
Ed Sanders d150ddea1c build: Replace jshint/jscs with eslint
Change-Id: I503a57bed2ee6bb648697d6245af0b0286b5f3ec
2016-11-19 13:56:05 +00:00
Ed Sanders 37711ca15c VE: Fix combobox API and other issues
* Combobox is now an input widget so doesn't need .input
* Replace isValid with getValidity.
* Remove 'Show line numbers' from inline mode, as it has
  no effect.
* Remove no-longer required z-index hack.

Bug: T150555
Change-Id: I3c4ac3cb6b174348cc3582469a86fb1a23ca7c51
2016-11-15 17:22:54 +00:00
James D. Forrester cfbc206cb2 MWSyntaxHighlightWindow: It's ComboBoxInputWidget now
Change-Id: Id18b096103c82eea996c27be5b33b05615e74757
2016-11-09 11:39:12 -08:00
Derk-Jan Hartman 50075eaa66 Convert SyntaxHighlight names to Ace names
Provide a translation from Syntaxhighlight compatible Pygments and
GeSHi language names to CodeEditor compatible Ace lexer names

Now when you select php4, the CodeEditor will use the Ace lexer php,
instead of falling back to text mode.

Bug: T148515
Change-Id: Ibc209f97318614f764457726f8d55f4e15276d79
2016-10-31 14:13:36 +01:00
jenkins-bot 65de308fdc Merge "VE: Ensure ext.pygments module gets loaded when a user adds a syntax highlight node" 2016-09-20 22:53:50 +00:00
Alex Monk 37ff7c6709 VE: Ensure ext.pygments module gets loaded when a user adds a syntax highlight node
Otherwise it won't get styled unless VE was loaded on a read page with one existing.

Bug: T60388
Change-Id: I32c02eda1e7dca077340c2bf3c15aadad7e3b61a
2016-09-20 22:24:40 +00:00
David Lynch 87736b516e Enable live autocomplete
Bug: T138458
Change-Id: I8440957ebc04267807c55aa4b8b347ede1240021
2016-09-19 11:26:31 -05:00
Chad Horohoe 3a017611da Add missing LICENSE and AUTHORS files
Bug: T138157
Change-Id: I9b1430c983f0ca6fea0bb0354796cffcff0030bb
2016-06-27 11:43:24 -07:00
Ed Sanders d679469840 Introduce stylelint
Change-Id: Iea4d20abb8aa9d656639c8e128df0e963291cace
2016-05-19 17:44:00 +01:00
jenkins-bot 7bb06997dc Merge "VE: Preserve context when calling parent static method" 2016-04-12 15:09:27 +00:00
Ed Sanders f285f9e8c5 VE: Rename parent tool
InspectorTool is a deprecated alias.

Change-Id: If96a623cf260b01dad53e888ff111728b529ceec
2016-04-12 15:05:03 +01:00
Ed Sanders 635ef9c4c0 VE: Preserve context when calling parent static method
Change-Id: I32e9c13d549f8f13ca50cf8d244f0dfbc3f3bb8d
2016-04-01 12:59:32 +03:00
Ed Sanders fbdf65a344 VE: Fix primary command on SH nodes
This fixes the double-click/press-enter to edit functionality.

Change-Id: I275c505d8a3abb7d7e3686ffacf52e54235241e7
2016-02-07 23:31:16 +00:00
Florian 3203eaf554 Fix inheritance of ve.ui.MWSyntaxHighlightDialogTool
From the description of the commit message[1] for WindowTool (which replaces
DialogTool) and FragmentWindowTool, the
ve.ui.MWSyntaxHighlightDialogTool should be a FragmentWindowTool,
and not a WindowTool/DialogTool.

In fact, the bug is caused by the missing isCompatibleWith method
in WindowTool.

[1] I3a0e761f0d6e942d503ec

Follow up: I676af9c50b09ef007926240eb2327d1a0fdd80f5

Bug: T121596
Change-Id: I0fa440d845c1dea34b623de0a36fb57cebf60f78
2015-12-19 01:27:14 +00:00
jenkins-bot 6267ec8450 Merge "VE: Register sequence with CommandHelp" 2015-11-05 15:36:41 +00:00
Ed Sanders f24eb8bfba VE: Register sequence with CommandHelp
Depends on I65e2bfc2 in VE-MW

Change-Id: I6054caa97c4f7e5fcd632912534deac977af6016
2015-11-05 10:14:14 +00:00
Ed Sanders 8a39d4f9dc VE: Clear Ace's undo manager after setting initial value
Depends on Ia331acc41 in ve-mw.

Change-Id: Idf8cd4983d7ce8cd570f5672521b04a988bbc324
2015-10-30 16:27:43 +00:00
Ed Sanders e127b3162b VE: Add '<syntax' and '<source' sequences
Change-Id: Ie087fd665f527ea13254576ee07ebd029a1803ea
2015-10-22 11:56:48 +01:00
Ed Sanders 826c2cba40 Use Ace editor widget for code input
Depends on Ie483f6eba2 in ve-mw.

Bug: T49742
Change-Id: Ifaff6a5345fef92aba57b4fc00181f5b32cf7365
2015-10-21 17:32:15 +01:00
Ed Sanders 0f10206cf2 Use dialog for editing block level syntax highlights
Maintain the inspector for inline snippets (which are editable
but still not creatable).

Bug: T112617
Bug: T57934
Change-Id: I76e36590363d36c0d3db4ec28ce81c4860d9b467
2015-10-20 15:16:11 +01:00
Ed Sanders 10b6dee5a2 VE: Remove unnecessary validation check
Change-Id: I7cc68eaead398ed97baf620142386f8e0bab4fb9
2015-10-20 15:16:11 +01:00
Ed Sanders 30a98dcbcd VE: Focus, but don't open, language input on open
Bug: T112798
Bug: T114202
Change-Id: Id70e8baea3687d5cd57ff3f45b5f332098451b7d
2015-10-20 15:16:05 +01:00
Ed Sanders 115fc92bfc VE: Update renamed CSS class to restore fixed width font
Change-Id: I029cfdfc5eabb8358b7c3b0274f4e759134a3af5
2015-10-19 13:51:03 +02:00
Ed Sanders c0482fe738 build: Update JSCS from 1.8.0 to 2.1.0 and make pass
Change-Id: I3b26c3cba814dcc8691f9f1ac04eb7dcc996f185
2015-09-18 16:01:40 +00:00