Commit graph

331 commits

Author SHA1 Message Date
Ed Sanders 704ec7ad3f MWCategoryWidget: Improve caching
For every title request, store an entry in noramlizedTitle to
avoid ever making an API request for that category again.

This prevents API requests from being fired every time a
category was moved, which in turn prevents the list from
flickering as it waits for the API request to resolve.

Also normalise the spelling of normalize to en-US/en-GB-oxendict

Bug: T127317
Change-Id: Ie26d9d60fb83981c45ff27199e38ae98e5560a28
2016-02-18 17:14:33 +00:00
Ed Sanders 7eeb136d94 MWCategoryWidget: Use namespace constants from config
Change-Id: I63661ce49dbb0fac62cb7dbd65c466cfdd6e57b0
2016-02-18 11:36:31 +00:00
James D. Forrester 1e0486a679 Remove all Extension:Cite code, now moved there
Depends-on: I39936ed83d5a60471a0a75da753f498e80aef234
Depends-on: Ifd853bf9f901065798bd0063aeaa786a3761aa71
Depends-on: I32c93c5118eafe5f071252290c58d3de8dacc81a
Change-Id: Iba0f25b3ebe4e5e63377da57afb760d6980f9907
2016-02-05 21:36:56 +00:00
Thalia 16330ac05d Add method for setting minimum number of rows in Ace editor widget
Bug: T123891
Change-Id: Ia2e094071f385628449f1935f0250cbeb75196f0
2016-01-22 17:05:35 +00:00
James D. Forrester ada58df361 build: Bump file copyright notices for 2016
Change-Id: I3c618c196e504a80ca297a4132a17f1977a24fb7
2016-01-03 14:57:25 -08:00
Ed Sanders 93f0e8b30c Refactor MediaResources(Provider/Queue)
Create a subclass for MediaSearch(Provider/Queue) and make the parent
class a more generic representation of API requests for media.

Change-Id: Iea8b90e829d532d210bfef3c96d6798c64e15eed
2015-12-22 14:00:10 +00:00
Thalia f8fbbdf66d Make Ace Editor adjustSize method chainable
Change-Id: I48307bd9184bb238a553d178c0d66084244e9ebf
2015-12-19 10:57:04 +00:00
Ed Sanders ae26eefb05 Fix typos
Add some common ones to typos.json

Change-Id: I3830be4949ab6a5fd998d6937ed83e9f18091c2b
2015-12-09 16:47:13 +00:00
jenkins-bot 2a46cc7873 Merge "Add autocomplete options to AceEditorWidget config options" 2015-11-25 03:48:38 +00:00
Thalia 3d98b1d291 Add autocomplete options to AceEditorWidget config options
Bug: T119549
Change-Id: I57db44c876c5cb0487bda6a72e36fedaccb532b5
2015-11-24 19:44:41 -08:00
Ed Sanders bbdb48abdf Create MWPreviewElement which adds the mw-body-content class
This fixes some rendering issues, and also increases the font
size of reference contexts from 12.8px (interface) to 14px (content).

Bug: T119430
Change-Id: Ib1bae8cd4cfe86903d78406a33db78e1489fde86
2015-11-23 14:28:57 -08:00
Ed Sanders bbfcbeb79d Use ES5 trim instead of jQuery
Change-Id: I6e8b958176385cb672380454fcc3b4970261caa9
2015-11-20 11:48:55 -08:00
jenkins-bot 8fae033411 Merge "AceEditorWidget: Ensure loadingPromise is set when setupEditor runs" 2015-11-19 16:47:13 +00:00
Ed Sanders dbdae59128 AceEditorWidget: Ensure loadingPromise is set when setupEditor runs
Change-Id: I11d37b863f28bacd4c09992d6fcc180621766577
2015-11-18 23:11:10 -08:00
jenkins-bot 9f1aedbefc Merge "Make selectRange method of AceEditorWidget focus the input" 2015-11-19 03:28:44 +00:00
Thalia 18448bb42b Make selectRange method of AceEditorWidget focus the input
The selectRange method does this in TextInputWidget, so it
should here too.

Change-Id: Ib3851e0c72876d3c25ae5992cf9732637238d117
2015-11-18 19:14:50 -08:00
jenkins-bot 718e06cf1b Merge "Add method to toggle the AceEditorWidget print margin" 2015-11-18 21:46:44 +00:00
Thalia 21fd89ba3c Add method to toggle the AceEditorWidget print margin
Change-Id: I758f90abb92a91491237150f607e7b0f93bf8f85
2015-11-18 13:38:41 -08:00
Thalia 88d466ba23 Make focus method of AceEditorWidget chainable
The focus method of InputWidget and other descendants
of InputWidget is already chainable

Change-Id: Ib75fb7b08769e86c652c63dac069e2573e61f89a
2015-11-18 12:21:44 -08:00
Ed Sanders a5d700807a AceEditorWidget: Implement getRange
Depends on I109a666679 in OOUI.

Change-Id: Ie40a30a3743237c1c1cd59dd2165d313363e04cb
2015-11-18 03:32:54 +00:00
jenkins-bot 370a060ffc Merge "AceEditorWidget: Implement selectRange" 2015-11-17 23:49:46 +00:00
Ed Sanders 5e96050b48 AceEditorWidget: Implement selectRange
This is not trivial because Ace selections are
[column,row] tuples, so we need to translate to
one dimensional offsets.

Change-Id: I901b025b3747d61c74f49038fe4a65ed75758211
2015-11-17 23:39:33 +00:00
Ed Sanders b5c16ac95c Make 'moment' a dependency of just 'mwimage', not all of VE-MW
Change-Id: I23c193bfb34203aa6f2ef1d3633c208e5c692c97
2015-11-17 14:55:10 -08:00
jenkins-bot 3e9d040a79 Merge "AceEditorWidget: Allow users to force an Ace editor refresh" 2015-11-16 22:46:24 +00:00
Ed Sanders 35c44db988 AceEditorWidget: Allow users to force an Ace editor refresh
Ace is clever about not updating the rendering of elements
which aren't visible, so allow users to force an update, for
example if they changed the value while the whole widget
was hidden.

Change-Id: I7bbbffd17489bc80fe5fa80911f29d7223e125a3
2015-11-16 12:12:10 -08:00
Ed Sanders 470a4a551b AceEditorWidget: Refactor to ensure setValue runs synchronously
Also ensure setEditorWidget is only called once when
loadingPromise resolves.

Change-Id: I1a95bda5e9ff17d7575326f29fa01d273193c4a5
2015-11-16 11:36:08 -08:00
Ed Sanders b21b939a67 AceEditorWidget: Emit resize event at end of cycle
Ensures the widget has taken its new size before emitting the event.

Bug: T117926
Change-Id: If1dab2ecadb2a581100c0ae154b341ce8d173a7c
2015-11-13 18:48:35 -08:00
Ed Sanders 6dd7576941 AceEditorWidget: Add method to clear undo stack
After the widget is initialised the caller will probably
want to clear the undo stack, so that the first state
is the initial value provided.

Bonus: Add documentation for the widget.

Change-Id: Ia331acc4177e32784061cae55c450eb0f83fd744
2015-11-03 13:41:09 -08:00
jenkins-bot adb0c427ef Merge "[PULL THROUGH] Remove resize detection now that TextInputWidget implements it" 2015-11-03 01:47:41 +00:00
Ed Sanders e582fae840 [PULL THROUGH] Remove resize detection now that TextInputWidget implements it
This depends on the OOUI release which contains Iaadaf1f9f.

Change-Id: I24d3756d627fc3514d8b476f9af87fdecbaa1e09
2015-11-03 01:13:26 +00:00
Ed Sanders bd22be33db AceEditorWidget: Preserve selection on setValue
Also avoid calling setValue when the value hasn't changed
so as not to pollute the undo stack.

Change-Id: I07fc5db0480a8583b361d472723f863ca90046f7
2015-10-30 16:14:09 +00:00
Ed Sanders def886b845 AceEditorWidget: Make setters chainable and support invalid flag
Change-Id: I78f395459f526164c0c506beec62a0083817e64b
2015-10-27 19:02:17 +00:00
Ed Sanders 35b9c4119a AceEditorWidget: Use mw.loader#getState instead of private moduleRegistry
Change-Id: I845651af837ccc042b6193876e17ba2b571dfe9c
2015-10-26 09:31:37 +00:00
Ed Sanders 21aec73795 AceEditorWidget: Use showLineNumbers instead of showGutter
The gutter is still useful even if line numbers are hidden.

Change-Id: Ia85ce7cd4987eb0b7022dc35cfd1029fbe78e3dc
2015-10-23 00:04:57 +01:00
Ed Sanders 60c1ee7d56 Introduce Ace editor widget
The widget attempts to load the ext.codeEditor.ace.modes module
and if it fails, will fall back to regular TextWidget behaviour.

Bug: T49742
Change-Id: Ie483f6eba25e3732a396c18decc0e1844b806b23
2015-10-21 20:59:08 +01:00
Ed Sanders 4943127cde Link inspector: Show redlink in suggestions
This feature was accidentally dropped when the widget was moved to core.

Change-Id: I302b4b001f1db64b023dae73e36c85e491617e92
2015-10-14 17:24:53 +01:00
jenkins-bot 291065459c Merge "Use ve.setProp to set new pages list in MWTemplateTitleInputWidget#getLookupRequest" 2015-10-04 19:54:45 +00:00
Ed Sanders f814ea719b MWLinkAnnotationInspector: Use TitleSearchWidget instead of TitleInputWidget
Depends on I335bd912d in MediaWiki core.

Bug: T101169
Change-Id: I2932c9df5444d1363af5af9b438bb905ed298148
2015-09-27 14:03:52 +01:00
Thalia b7bdf2d867 Adjust uses of renamed PreviewWidget to PreviewElement
Depends on I516b87f3be in VE core.

Change-Id: I9ad4bab3fff0bf0fb8a79673dbe67be4a9b2c363
2015-09-25 09:37:34 +00:00
Alex Monk 0fb38cc824 Use ve.setProp to set new pages list in MWTemplateTitleInputWidget#getLookupRequest
Bug: T113647
Change-Id: I537a235064cf8e95b0e1cde46f3079e0af082e7c
2015-09-24 22:35:38 +01:00
Alex Monk 821ceb9920 Order template title results by provided index
This only comes back in results from certain modules, so I'm not entirely
sure whether we want to do this in here or mw.widgets.TitleInputWidget.

Bug: T111598
Change-Id: If2916706db359d520c41c2dec7ded44e0d3a56a9
2015-09-10 20:53:35 +01:00
jenkins-bot c010450e08 Merge "Move MWReferenceSourceSelectWidget out to Citoid" 2015-08-26 15:40:19 +00:00
Ed Sanders 48a07e0bdc Use new internal link builder
Bug: T64816
Change-Id: I9ec857eef948028e65eb5e8bf21707f5f5bfd9c0
2015-08-25 16:39:32 +01:00
Alex Monk b0507f692d Move MWReferenceSourceSelectWidget out to Citoid
Merge after Iaca69f17

Bug: T109988
Change-Id: I80c1be419e545aecdc9f7db98133776d4b4cc326
2015-08-24 15:24:17 +01:00
Ed Sanders e59ee87887 Add spacer above basic reference option
Also add classes to basic/reuse so they can be differently styled.

Bug: T108725
Change-Id: I4d128afe86c7fae2d8cbd8a57749970942e39e76
2015-08-23 20:06:35 +01:00
James D. Forrester 00d3226be1 build: Enable jscs jsDoc rule 'checkParamNames' and make pass
Change-Id: Ifcd3f67524c32148ff3591263d6374b31ee57d3b
2015-08-19 11:33:59 -07:00
James D. Forrester 85f91f394e build: Enable jscs jsDoc rule 'requireNewlineAfterDescription' and make pass
Change-Id: I7c0fabc93834d19198caea8f5dd1834e9e473d0a
2015-08-19 11:21:01 -07:00
James D. Forrester 945242a55a build: Enable jscs jsDoc rule 'checkAnnotations' and make pass
Change-Id: I76abb1eb1f3e1a2e8a4c03f577a080f4889b3a6d
2015-08-19 11:09:34 -07:00
James D. Forrester 19df1d4c8a build: Enable jscs rule 'requireVarDeclFirst' and make pass
Change-Id: Ia2f765d12bde001c329c2ff4c080a36b71de9803
2015-08-19 11:05:01 -07:00
James D. Forrester f5c6f61163 build: Enable jscs rule 'requireSpacesInsideBrackets' and make pass
Change-Id: I846d36c15e1b1f810d2ef7fd422f8412790bcb0f
2015-08-19 10:33:02 -07:00