Commit graph

115 commits

Author SHA1 Message Date
Ed Sanders 3b4ffe089f build: Update eslint to 0.4.0 and make pass
Change-Id: I764892179b136b8a4ae6940611ba8b4ecb672957
2017-05-04 21:09:35 +00:00
Brad Jorsch fe072480d3 Check for numeric 0 when checking 'usecodeeditor' pref in JS
A recent core change caused zero-valued preferences to start being
returned as numeric 0 rather than string 0. See the linked bug for
details.

Bug: T161875
Change-Id: I183fd9944e65041b0a330725c41fec2b59ca8379
2017-03-31 19:57:08 +00:00
Volker E e90acf0ab4 Align colors to WikimediaUI color palette
Aligning colors to overhauled color palette, ensuring WCAG level AA
conformance. Also removing unnecessary `xmlns:xlink` where applicable.

Bug: T160602
Change-Id: I958d1868cd5ff80226af566dfe34885f1932b16e
2017-03-15 19:31:55 -07:00
Ed Sanders 7148dfcf3f Use OOUI for prompt dialog
Depends on latest OOUI, and therefore MW 1.29.

Change-Id: I91594f534a2dca657785357a1dcb39e86d072bac
2017-01-09 15:39:27 -08:00
Fomafix 84be29b197 Replace $( document ).ready(...) by $(...)
In jQuery 3 $(document).ready(...) is deprecated.
https://jquery.com/upgrade-guide/3.0/#deprecated-document-ready-handlers-other-than-jquery-function

Change-Id: Id8cfdfa74c1789db1b24c39c16e51c7a0c408f11
2017-01-05 23:03:28 +01:00
Ed Sanders 6042898fcf Use OOUI for confirm dialog
Would be nice to do this for the goto line prompt,
but such a OO.ui.prompt doesn't exist yet.

Change-Id: I6b24e51b5b106ece80e265ff5417878f108619b7
2016-12-24 22:49:21 +00:00
Ed Sanders 1818ed4bea Add missing i18n for 'go to line' prompt
Change-Id: If4f7c243f23fc809c95cf671d5b47ec978a9fdb9
2016-12-09 13:49:46 +00:00
Ed Sanders 7fddf35aa8 build: Remove jshint/jscs, add eslint/stylelint
Change-Id: I4304ca95de7dd395676f40bcbb35a447c039ba21
2016-12-09 13:31:08 +00:00
Derk-Jan Hartman 07b24bb9f0 Remove inline CodeEditor for <syntaxhighlight>
This was an unfinished module to enable the CodeEditor to do inline
editing of <syntaxhighlight> blocks. It was never finished and I think
that with the VE and WE 2017 work, it likely will never be finished
either. For that reason, it is better to remove it altogether.

Change-Id: I83714188a53d2ca6bb7bf0dc6d0c89b7fb45a47a
2016-11-14 23:47:28 +01:00
Derk-Jan Hartman c9d4d7663e Simplify modeloading
Analogous to I82d278920695be12aa80a79548abf8b8ce5445fd, make sure that
we can lazy load any language that Ace supports. Not because we need
it, but because it's the nicer way to do it.

Change-Id: I19b8a31041814ac1273d62a24b5ed622fd91a7a8
2016-10-21 14:13:26 +02:00
Derk-Jan Hartman 46d76471e1 Use slice instead of substring per code conventions
Change-Id: Id9b08270c377f2b31486dbdb9492b77860f436e7
2016-09-26 21:36:53 +02:00
Derk-Jan Hartman c158ae5602 Update Ace and use scoped require / define
This brings Ace to upstream commit
4a55188fdb0eee9e2d3854f175e67408a1e47655

Bug: T127643
Change-Id: I7699e842d7b561b8a35cf7a4ea048f4126eaf856
2016-03-14 00:26:27 +01:00
jenkins-bot e10ed30111 Merge "Replace toolbar with OOUI/OOUI-style SVGs" 2016-02-29 23:33:18 +00:00
Ed Sanders b5312f1d4c Replace toolbar with OOUI/OOUI-style SVGs
* Use resource loader embedding for better performance
  (uses a slightly hacky method to achieve this, the only
  alternative would be to fix the WikiEditor API, but that
  would introduce a version dependency)
* Use SVGs from OOUI where available or create new ones where not.
  These are used and available under the OOjs UI MIT licence.
* Provide PNG fallbacks using LESS mixin
* Remove unused icons

Change-Id: If38d51d24958716e2617c4cb515e7c0575cdfeba
2016-02-29 13:00:15 -08:00
Ed Sanders 41e9cee298 GotoLine: Don't throw an exception if the user cancels the prompt
Change-Id: I540ba492cf3acda01ad61800561cda0276f36c76
2016-02-27 22:39:39 +00:00
jenkins-bot 0a7dc634fc Merge "Adapt toolbar icon change to change 19789d76 in WikiEditor" 2016-02-23 22:01:27 +00:00
Fomafix ecfc6514d3 Remove check for existence of mw.hook
mw.hook was introduced with 2e970257 in MediaWiki core for REL 1.22.

Change-Id: Ib81ba150c4056be19ede2145308489d0b286aea0
2016-01-29 12:32:14 +00:00
Fomafix d4a5b7eddf Adapt toolbar icon change to change 19789d76 in WikiEditor
Bug: T125201
Change-Id: I58c1d246d3fbb8031e3be482f349a0538c44152c
2016-01-29 11:07:47 +00:00
jenkins-bot 74e4cc383f Merge "Abort previous unfinished API request before sending new request" 2016-01-27 20:57:22 +00:00
Fomafix 135716727d Abort previous unfinished API request before sending new request
This change requires 81171ab3 from core included in MediaWiki 1.27.

Change-Id: I8dec32bf49e412510cf5d98f2f946bfd337f47a1
2016-01-27 11:07:38 +00:00
Fomafix d10cfbb1bf Update URLs from http://ace.ajax.org/ to https://ace.c9.io/
http://ace.ajax.org/ redirects to https://ace.c9.io/

Change-Id: Ib915fec2855bfcec1a7d9b3c91dd3dd13db703ab
2016-01-27 11:01:54 +00:00
jenkins-bot 49f5843e65 Merge "Use module "mediawiki.api.options" to save options" 2015-11-30 19:01:06 +00:00
Fomafix aeb072ce8a Avoid accessing undefined context
The delayed update of the status bar fails when the CodeEditor is disabled
in the meantime.

Bug: T119869
Change-Id: I6b23148f7a3d79021b87ad5f0f537eda9b68970f
2015-11-30 12:49:30 +00:00
Fomafix 370b597b79 Enable the "Go to line nummer" button on read-only pages
Bug: T114618
Change-Id: I17b5c05673489935a80db2e115d211695c17bde5
2015-11-30 09:09:53 +00:00
Fomafix c59add0448 Use $.map from jQuery
This requires jQuery >= 1.6. This is included in MediaWiki >= 1.18.
This change drops support for MediaWiki 1.17.

Change-Id: I12f3f3e22d9bc47a0a2d9a9d201af4e44012e0a2
2015-11-29 20:16:03 +00:00
Fomafix eacbcd828a Use module "mediawiki.api.options" to save options
This change requires MediaWiki 1.25.

Change-Id: Id476b7422bd47751813f671982ceecd6d9844718
2015-11-29 16:00:13 +00:00
Paladox b6e9f6cca4 Add jshint and jscs to npm, Also add composer.json
Instead of running the jshint test through jenkins, Run it through npm
instead.

Also add composer.json for running php code sniffer and phplint instead of
running phplint through jenkins.

Also update grunt-jsonlint to 1.0.6

Change-Id: Icd9aa1b1c7213d056aa5294a804341053141b0bd
2015-11-29 12:03:16 +01:00
jenkins-bot 52ef9085a9 Merge "Do not try to save options for anonymous user" 2015-11-29 10:38:09 +00:00
Fomafix 2278f87b89 Do not try to save options for anonymous user
This change requires 65062d3c from core included in MediaWiki 1.20+.

Change-Id: I130ab8e93107e066d2cb757c511c844e161b703f
2015-11-28 23:10:40 +00:00
Fomafix 22f1a0c3d2 Fix error message in set user options fail
* Write error.info instead of "[object Object]" into console.
* Avoid accessing result.error when not defined.

Bug: T119809
Change-Id: I23a124cbaf8ef9376c4c6071dec4d7e846f1eabe
2015-11-28 22:51:20 +00:00
paladox 6d052a8011 Update Ace to 29-10-2015
Updates ACE to commit:
3fb55e8e37

This includes basic scrolling support in mobiles
https://github.com/ajaxorg/ace/pull/2555

iOS 6 or later supported.

Android 4.x or later is supported.

Re enabled indent and outdent seems to work now, Ive tested it.

Bug: T119086
Bug: T69328
Change-Id: If8ecc499c281c92c53982cee281a88119a773514
2015-11-19 19:32:21 +00:00
Derk-Jan Hartman 838c627728 Make sure that wikieditor context is ready
This fixes a bug where the event could be triggered before the
WikiEditor context was ready. Also make sure that the fragment monitor
takes into account the possible disabled state of the CodeEditor.

Bug: T103802
Change-Id: Id5564c4a91a0a14632024781f3e57b68c4803970
2015-08-27 21:22:09 +02:00
Fomafix c09b7f5b78 Define variable event
* Declare event as first function parameter.
* Move event.preventDefault() to the synchronous end of the function.

Change-Id: I813355088cbf215264dcccd474e97630915d63c5
2015-08-14 15:12:04 +00:00
Fomafix db1692c38c Remove quotes around object properties keys
Change-Id: Ie2126869364dcf56beb1190c80b6d8c36b282dce
2015-06-27 20:22:54 +00:00
Matthew Flaschen a7f5ae257c ucFirst has been deprecated, so inline it
Also, it wasn't declaring the dependency, so this fixes that as well.

Bug: T103612
Change-Id: Ic37fe3fec02ee4b328bd88ef46107431758216da
2015-06-23 23:40:51 -04:00
Fomafix 887bae8ac9 Remove explicit setting of the width of the textarea
The setting of the width is not necessary and sometimes it generates
a width which is to wide.

Bug: T102736
Change-Id: I7ed715fba4d65e7a571421b7a06d604e6b0958f7
2015-06-17 04:23:56 +00:00
Derk-Jan Hartman aba51ef4f5 Additional CodeEditor buttons
- toggle invisible characters.
- search and replace (disabled)
- indent/outdent
- line wrapping
- go to line

Icons by Connor Shea

Bug: T61923
Change-Id: I9e434d1b23f8254bc654ebbd31b5e4b70bbf5fe1
2015-05-26 01:43:47 +00:00
Derk-Jan Hartman a9cdbcacb4 Add tooltip to annotation indicator
In the past I had made the annotation indicators clickable, and your
cursor will in this case navigate to the next annotation in editor.
This was not really easily discoverable, so I have added a tooltip to
make it slightly more discoverable.

I also added a CSS line to prevent users from accidently selecting the
text (or rather numbers) in this area, which I had noticed happened to
me at times when trying to click it.

Change-Id: I47ecba232ff925169d0f64d85ae34ff6564cc1a5
2015-05-25 11:07:41 +02:00
Derk-Jan Hartman 76b4899835 Only block for errors when saving
Bug: T70765
Change-Id: I947f7f5bda4272677dd8d090e155b1010a66795d
2015-03-29 16:22:42 +02:00
jenkins-bot 442e3a0338 Merge "Remove trigger 'LivePreviewPrepare'" 2015-02-05 12:17:30 +00:00
Fomafix d3be0b552b Fix whitespaces
Change-Id: Ia26f885ac2423d9f4a67b9e4d58a90aba22d0f07
2015-02-05 12:13:18 +00:00
Derk-Jan Hartman 7254cda535 Ace: Update to 2015-01-28
Updated to
6b88b939c2

Includes fixes for drag delay (bug 60432)
and chrome useragent detection: Github issue
https://github.com/ajaxorg/ace/issues/1950

Bug: T62432
Change-Id: I5ac67a812f09ac43e73475613afc9a3f1ddc9a75
2015-01-28 11:04:27 -08:00
Fomafix f64a164986 Remove trigger 'LivePreviewPrepare'
Depends on I30bd709d8 in mediawiki-core.
The '#wpTextbox1' gets read by textSelection( 'getContents' ).
The trigger is not necessary anymore.

Change-Id: Iae54a2422ff1814f8858723d51fcb10d04645c51
2015-01-03 15:35:06 +00:00
Derk-Jan Hartman 2d4810f186 Add setContents to textSelection impl of CodeEditor
Change-Id: I0a5434b9d40d8945b6b801e2aa2b4b23466ea71c
2014-11-29 20:10:44 +01:00
jenkins-bot 8d45645cdc Merge "Disable CodeEditor on mobile" 2014-10-31 17:28:35 +00:00
Derk-Jan Hartman c91e62b74f Improve the CodeEditor toolbar
There isn't much in it yet, but it's a start.
Also needs a patch in WikiEditor, which is forcing some elements to be
visible for no apparent reason.

Change-Id: I6b57e5c11066a104a89bef3b7c8efd2129a80a8f
2014-10-26 18:09:26 +00:00
Derk-Jan Hartman 37228b2578 Split jquery.textSelection and WikiEditor api overrides
Split context.evt up into 2 objects
- context.fn, where WikiEditor API functions are defined
- textSelectionFn, where all textSelection API function are defined.

- scrollToTop() is moved to the WikiEditor API block
- getElementAtCursor() is removed. It is no longer in use by the
WikiEditor API or the textSelection API.

This depends on MediaWiki core change I14492572

Bug: 29328
Change-Id: I57bc7791dc61b7edcf258e6c16445d5a4a8783cf
2014-10-16 21:18:15 +02:00
Timo Tijhof 72f3c78381 Use returnFalse instead of jQuery.noop
Follows-up 86622b6.

While these functions looked like placeholders in a configuration
object to allow calling them unconditionally, they actually had
meaning. They were event overrides to prevent WikiEditor from
running its own event handlers.

They were implicitly returning false by having no return statement
(implying a 'return undefined', which casts to false).

The separate functions were already quite obfuscated as returning
false, using $.noop made it even harder to understand what's
going on.

Use an explicit return value instead.

Change-Id: I0852fbc9225d069f50085787d2d0105fd7b1743c
2014-10-16 20:37:18 +02:00
Fomafix 86622b63fb Use jQuery.noop
This avoids the definition of several empty functions.

Change-Id: Ic6fe5c46e1ed90217c1935dd0a87c6b97a0ad513
2014-10-16 19:25:17 +02:00
jenkins-bot aefe1def47 Merge "Use mediawiki.api.parse" 2014-10-16 17:16:42 +00:00