Commit graph

80 commits

Author SHA1 Message Date
Bartosz Dziewoński dd6c27ae65 ve.ui.MWIncludesContextItem: Fix hiding includeonly tags for multi-line content
Change-Id: Ic3cb24b7470bb71688b25c0c90673ff4d16176d0
2020-06-08 21:06:27 +02:00
Bartosz Dziewoński 1fc11e0146 Handle <noinclude> etc. as nodes rather than metaitems
The difference is that metaitems are not visible on the editing
surface, and their exact position is not preserved when the paragraph
containing them is edited.

This behavior is desirable for e.g. categories, but not for
<noinclude> and related tags, which are intentionally placed in
specific places in the text.

Note that we don't really have any editing interface for these nodes
yet. But you can see them (and they come with descriptions and links
to documentation pages), and delete or copy-paste them.

Bug: T250937
Change-Id: I104e7abbd650567df0e59813653c46a66d955d58
2020-06-01 18:47:14 +02:00
Ed Sanders de47496b19 Move MWutils to preinit and rename to parsoid utils
Bring in ve.dm.MWInternalLinkAnnotation.static.getTargetDataFromHref
and ve.resolveUrl, so that the file has no dependencies on VE.

Change-Id: I03bc455d5484a6c51f3fa2397c64936b829fe7e3
2020-03-24 23:13:16 +01:00
James D. Forrester 2c77e88d2c doc: Bump copyright year for 2020
Change-Id: I30539877543dc2a57bd1428a00d10ac46d8fc294
2020-01-08 09:13:24 -08:00
Ed Sanders 2d4234fac8 Remove jQuery from ve.dm.MWLanguageVariantNode
Change-Id: I849cb6756171aa7bba43dc390cbd390b323328d2
2019-11-02 16:28:32 +00:00
Ed Sanders ffa3742ce1 build: Update linters
Change-Id: I03d1a8e63b730ad98ec07ad5f630ba82698de5be
2019-11-01 16:20:22 +00:00
jenkins-bot def3261c49 Merge "Fix linking to pages in media dialog/media context/internal link context" 2019-10-07 15:13:02 +00:00
Bartosz Dziewoński 55aec8f977 ve.ui.MWDefinedTransclusionContextItem: Fix handling of template names
The ...target.wt property contains the wikitext used to generate
the template name. It can contain trailing newlines (T234817) and
all kinds of funny wikitext syntax. Instead, use ...target.href,
which is the title of the page that is actually transcluded. Compare
the new code to ve.dm.MWTransclusionNode.prototype.getPartsList.

Additionally, fix some confusion about namespaces (treating template
names as titles in the main namespace). The template names in the
configuration page (visualeditor-template-tools-definition.json)
now support overriding namespaces in the same way as in wikitext.

Bug: T234817
Change-Id: I7c557d28e961d0b9117fc0380c65cdd42035ae96
2019-10-07 14:56:16 +02:00
Bartosz Dziewoński 7579f6eb1f Fix linking to pages in media dialog/media context/internal link context
If you had an image thumbnail for a file 'Foo?.png' on the page,
ve.ui.MWMediaContextItem and ve.ui.MWMediaDialog did not escape
the '?' when linking to it, which resulted in incorrect links.
Similarly, if you had an internal link to the page 'Foo?',
ve.ui.MWInternalLinkContextItem did not escape it.

Additionally, the links were always generated as if the wiki was
using short URLs, even when it is not (T233628).

The approach using mw.Title is copied from ve.ui.MWGalleryDialog.

Bug: T233628
Change-Id: I10256ed6883dae0ea216de4c0719f03d7fd19ae4
2019-10-07 14:27:02 +02:00
Ed Sanders e5f5a49344 Support for defined template context items
Context items can be created for specific template titles. Titles
are mapped to context items using an on-wiki message.

Bug: T211243
Change-Id: Icfc39e350452da238d0e0c17cb2305c60d9ca16a
2019-08-30 13:02:47 +01:00
Ed Sanders 4a8947686d Docs: Standardise "messages used" comments
Change-Id: Ic563901a9439e86ca85ac6210323a35ab34736c3
2019-08-28 16:41:19 +01:00
Ed Sanders 042bfdfd9d Update VE core submodule to master (07687721b)
New changes:
77076f828 LinkAnnotationInspector: add a "label" field on mobile

Local changes:
* Updates for mobile link label editing

Bug: T229431
Change-Id: Ib0489f6f59b228ebc4a20f7a0a515be938a8f6d3
2019-08-23 00:25:51 +02:00
Ed Sanders 3cbe0a5a20 Update VE core submodule to master (c2c5149f3)
New changes:
62f06382c Localisation updates from https://translatewiki.net.
5fc25c0d9 LinkContextItem: Apply ellipsis directly to link

Local changes to fix link ellipsis styles.

Bug: T230267
Depends-On: I25bb4fa9b7288232b08bab9c88f281817a26d6bb
Change-Id: I8a4b04d45979a1f6c375a7c92a340e3e81d7753c
2019-08-15 10:12:22 +02:00
Ed Sanders 9a1994e47c Update VE core submodule to master (7cb9caca1)
New changes:
28aea2e4d Edit cards v2 design
739017973 Track usage of the new "close context" button

Local changes:
* Edit cards v2 pull through

Bug: T222396
Change-Id: I1ca885e8d8127e7827a059755315ed789a7b9210
2019-07-25 22:24:48 +02:00
Ed Sanders 393de5985f Update VE core submodule to abf2bfa85e64e67cdf963601fe1da2a11fd9e89a
New changes:
1a7460058 Remove ve.newMobileContext feature flag

Local changes:
* Remove ve.newMobileContext feature flag

Change-Id: Ia8def997b7cba4623866080752b06068d2118cc3
2019-07-23 22:12:48 +00:00
Ed Sanders c958ea383d Add number of images to gallery context
Change-Id: I3e54c6cb2b29ecb1153afd5f2f61adaabceb095b
2019-07-16 01:04:08 +02:00
Timo Tijhof ef36f4b0a1 Move usePageImages/usePageDescriptions from page conf to site conf
These do not vary by user or page, and can thus be loaded asynchronously
via the startup module, rather than blocking rendering and fetching
of modules on all pages.

In a future change, it might be better to go a step further and bundle
these with a module so that they only load as-needed instead of still
on all page views, but this should be an improvement nonetheless.

Change-Id: Icae3712ac5546a90bc7ffd787b0f3285dff6a26f
2019-04-17 00:10:27 +01:00
Ed Sanders d14d443aff Use new CE Surface selectAnnotation method
Change-Id: Ic26c46d3cdabc7b9949527d04eada5203cf6f7d3
Depends-On: I23f3586e340899801c99b3015e51dd0965a8ef0b
2019-04-16 17:09:01 +02:00
Ed Sanders 8e3ef8fb7f Hide label section in MagicLinkNodeContextItem
Change-Id: Ifc6cdb2ee15874bfd036b29a6abaffa6e4207728
2019-02-24 13:25:23 +00:00
Ed Sanders 18907dde5a Implementations for read-only mode
Depends-On: Ifaa74be266c048d87f94b4ae2df59cafc7aa155f
Change-Id: Iedd1bd9ce17750ad8528c1a053293c4a7321c5de
2019-02-22 18:20:51 +00:00
Ed Sanders de2a2ca06f Improve abstraction around template context description
* Separate partDescription from partDescription*s* and use Array#map
* Lookup CE node class of current model, instead of using
  ve.ce.MWTransclusionNode hard-coded.

Change-Id: Ief07b865b4c216dc13408b12e8a1354cd2c28dfe
2019-02-19 13:23:14 +00:00
Bartosz Dziewoński 9ff514a460 ve.ui.MWTransclusionContextItem: Use the right class name in override
Follow-up to I47a995905fef5aa2cabb2b3215111de0b506e7f7.

Bug: T209610
Change-Id: I204e92771bcde9015244a1697c3a7e6bd888a516
2019-02-06 22:36:52 +01:00
Bartosz Dziewoński c56b764330 ve.ui.MWTransclusionContextItem: Remove "Generated from" prefix from description (mobile)
It does not provide any additional information, and it is long enough
that it causes the actual template name(s) to not fit on the screen on
small mobile sizes.

Bug: T209610
Change-Id: I47a995905fef5aa2cabb2b3215111de0b506e7f7
2019-02-04 19:48:28 +01:00
James D. Forrester 3c293ea00c doc: Bump copyright year for 2019
Change-Id: I8991b97c980d4149f53eb5601036220ef3c0c440
2019-01-01 13:24:23 +00:00
Ed Sanders f2a9ccd5bd Avoid HTML string parsing
Identified using https://github.com/wikimedia/eslint-plugin-jquery/pull/12

Change-Id: I138e018fdc037d688e055eacddfdc5bfc2cc5abe
2018-11-21 18:47:19 +00:00
David Chan 2c3e33b759 Use changed ve.dm.Selection interface, if present
Bug: T208228
Change-Id: Ie2027c4d16e0ac591512e90dbdeea012f11ff875
2018-10-31 12:07:14 +08:00
David Lynch 56a3aa9f01 Update link contexts with label info from core
Bug: T124305
Depends-On: Iad48fb559f3dae16cc0013791b79ec71308a1f9f
Change-Id: I341a15199bddb45e2cd8391b9b00c86e1c3a193e
2018-06-26 21:16:53 +00:00
Ed Sanders 3b4923fa74 Use ve.resolveUrl in MediaContext/Dialog
Change-Id: I53e28d6cec13ac77718ba3cae425c4c43c96e174
2018-05-05 14:04:15 +01:00
Ed Sanders 924f9ec730 Use 'imageBroken' icon for missing images' contextItem
Change-Id: I3ba8f34a8ff03c949c18df102e7334449abb6e27
2018-04-06 15:32:55 +01:00
jenkins-bot 9d004c4d35 Merge "Use OOUI 'markup' icon instead of local 'alienextension'" 2018-03-20 19:50:55 +00:00
Ed Sanders 10792e179f MediaContext: Link filename to file page
Change-Id: Ice3fdd40cd1f7b8ba2841ac326babc7f24a2635e
2018-03-20 17:45:50 +00:00
Ed Sanders c245dd9ca0 Improve media context item to show Image/Video/Audio instead of 'Media'
Change-Id: Ie3b7ec62483e725d3ce073095a2a958c1db930d5
2018-03-20 17:45:48 +00:00
Ed Sanders 78ba8bbe3c Use OOUI 'markup' icon instead of local 'alienextension'
Change-Id: Id15596ab0013cb2078480bdb4dde25ef8e7ae50b
2018-03-20 17:27:54 +00:00
Ed Sanders a1e2cb237c Resize link context item after getting description
Descriptions can run to more than two lines.

Bug: T183650
Change-Id: I3d0a5787cab19abc4851340b08fe4a109e7aec31
2018-01-17 16:06:28 +00:00
James D. Forrester 0a7a845a42 doc: Bump copyright year
Change-Id: I0b299c840ede1a1b8552cecfc70c5760ab036181
2018-01-03 17:45:07 +00:00
David Lynch 7777f69e7b Use rel="noopener" on links targeted at new windows
Bug: T180932
Change-Id: I93bda6aaebf97727a187774cccbeba4f27fcddd5
2017-11-30 13:15:38 -06:00
C. Scott Ananian 853ec0bc9c Inspectors for editing LanguageConverter markup
Basic inspectors for editing.  Changing from block to inline, or
adding "hidden" or "describe" flags not supported.

The UI layout for two-way and one-way rules could certainly be improved.

Bug: T49411
Change-Id: I5ce29e4bf47abf509afde0a57f64b5d1189f5185
2017-09-15 09:24:33 -07:00
C. Scott Ananian 26df4dca33 Doc update: use the full class name so JSDuck hyperlinks it correctly
Change-Id: I2c6f6a6c5b497767d7f7731c86cc145ed60b1deb
2017-09-14 11:07:07 -04:00
Bartosz Dziewoński 92cea19890 Use .length instead of .size() for jQuery objects
.size() is deprecated.

Change-Id: Ib28b7fede117de474efea705adf5dc2cdf8cb101
2017-09-06 14:52:40 +02:00
Bartosz Dziewoński bff16fb352 ve.ui.MWLanguageVariantNodeContextItem: Fix condition for empty table
For magical HTML reasons, a `<tbody>` node is automatically inserted
inside the `<table>` node. Therefore the table always had exactly one
direct child, this check always failed and table was never shown.
Instead, count the rows.

Change-Id: Ia8a5387c3f605689ab1053c923952ec955b83253
2017-08-29 21:57:48 +02:00
jenkins-bot 8975449eaf Merge "Context item for LanguageConverter markup" 2017-08-11 14:29:09 +00:00
C. Scott Ananian c89a3059f8 Context item for LanguageConverter markup
Add a context item giving more information on language converter markup.

Bug: T49411
Change-Id: I3c91db84793a9a965dcb760253b24edee5d7bd23
2017-08-10 11:02:41 -04:00
David Chan c03d69b761 Expose ve.ui.MWInternalLinkContextItem generateBody logic
Change-Id: I94912ac2c471cc5d227fa8b9cb29c302ca29814d
2017-08-09 17:58:49 +00:00
James D. Forrester 528942c2e1 Drop local 'template' icon, use 'puzzle' from upstream
Now that our template icon has been upstreamed thereto.

Bug: T111041
Change-Id: If101018de284dcc1be086d92427de0d88adb0e02
2017-07-06 09:52:56 -07:00
David Lynch cdefd36d1e Internal link context popup: selflinks still get link styling
Bug: T162671
Change-Id: I0ba584b90db73ebade81050f0d782945b8934080
2017-04-11 10:51:05 -07:00
David Lynch d5ac18a466 LinkCache: don't treat a link with a fragment as a selflink
This matches the rendered output for the page.

Bug: T162669
Change-Id: I1ea0ab37a2751c0b4669da8a23adf0ce271facea
2017-04-11 12:19:01 -05:00
Bartosz Dziewoński 49f603c703 Update <pre> support for Parsoid changes
After 79ccfb9372cb57afa569036ef39ead13abfba673, MediaWiki's `<pre>`
tags get rendered as `<pre typeof="mw:Extension/pre">` in Parsoid HTML.
MediaWiki's indent-pre syntax (block indented by a single space) is
still rendered as `<pre>` in Parsoid HTML, however.

Indent-pre is still handled by MWPreformattedNode (no changes).
Introducing MWPreNode, which will handle `<pre>` extension tags,
and MWPreDialog to change its contents (and allow converting
to MWPreformattedNode).

Pieces copied from MWGalleryNode, MWLinkNodeInspector, CommentInspector.

Possible future improvements:
* Add a specific icon for MWPreContextItem
* Avoid API roundtrips for rendering (but rendering wikitext <pre>
  is not as simple as it looks)
* Consider a way to insert these other than '<pre' sequence

Bug: T159900
Change-Id: I5bc4ea6e5d893736f65ef0dd43b08c18cb1a1e85
2017-03-14 14:08:50 -07:00
Bartosz Dziewoński 48f227b263 ve.ui.MWMagicLinkNodeContextItem: Do not display 'Clear styling' button in context
It doesn't work, you can't turn a MWMagicLinkNode into text by
clearing its styling. (You can still do that by clicking 'Edit',
'Convert to simple link', 'Clear styling'.)

`clearable = true` was being inherited from ve.ui.LinkContextItem.

Change-Id: Ib40e952554966fb74b3e72662a6e1e44ad748a57
2017-03-07 16:34:18 +01:00
James D. Forrester 122f49b2dd build: Bump file copyright notices for 2017
Change-Id: I3c20809e71cc0da58123e1b5f29c4f3aac945496
2017-01-03 08:58:33 -08: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