It's good that we're not trying to close the save dialog
if it's not open, but we still need to release our reference
to it in that case, otherwise trying to open the save dialog
in a new incarnation of the editor will fail.
If you opened VE, opened the save dialog, closed it,
went back to read mode, opened VE again, and tried to open the
save dialog again, it would fail because it tried to open
the cached reference to the previous editor's save dialog.
Bonus: prevent JS errors in this case by only attaching an
onClose handler if the dialog actually opened successfully.
If opening the dialog failed, the callback parameter isn't
a promise but an OO.ui.Error, and calling .always() causes
a JS error.
Change-Id: I62d6d3e7cd3df2c29a0c99e2e23bf1aac5187a12
New changes:
c027917 Regular expression find and replace
50ca51f Fix the src attribute for non-debug chimeras
0f0ae08 ve.ce.TestRunner: Fix copypasta in JS documentation
c3a26f8 Localisation updates from https://translatewiki.net.
c477adf Track state properly at the end of an event loop
Change-Id: I4e38607d82b57063d05c0a275b0a15b0147bca6c
New changes:
9145f1a Use String#slice instead of discouraged String#substr
a3b7fe4 bin: Update update-unicodejs.sh to parity with update-oojs.sh
d475ba6 Localisation updates from https://translatewiki.net.
af4b395 Localisation updates from https://translatewiki.net.
Change-Id: Ie2615f54c4aa48aaab39229e6169953f721620dc
Aside from the confusion and differences between substr() and
substring() and IE8 bugs with substr(), substr() was removed from
the spec as of ECMAScript 5. It's been standardised in the
optional Annex B section of ES5.
Change-Id: I221ef6ae6956ce20dd9bb74510500f747d04c3b1
New changes:
5e60f12 Ensure clipboard key is removed from paste target
32397d8 Update OOjs UI to v0.4.0
Local changes to compensate for new OOUI version, and updated wfUseMW call.
Change-Id: I005f7b23a36e04f1305d4aa037c19a5c7db9a699
Use model HTMLDocument when parsing transclusion nodes and their link hrefs
As well as mobile, this also covers the issue I found in /w/index.php?veaction=edit
See also T76374
Bug: T76379
Change-Id: I07c9ba0adbcee32f7eb2ca280d3a1d46e963d28f
New changes:
c6e298f Localisation updates from https://translatewiki.net.
c5f083a Update IE detection to include Edge
aa026f0 Localisation updates from https://translatewiki.net.
543c929 Ignore enter key when no results.
8be322b Fix find and replace highlights in RTL
144c9ac ve.ce.Surface: Remove use of deprecated OO.ui.Element#onDOMEvent and #offDOMEvent
3ae9ba9 Update UnicodeJS to v0.1.2
b173384 navigator.appVersion -> navigator.userAgent
e9991c9 Papaparse update per https://github.com/edg2s/PapaParse/pull/2
461176e Localisation updates from https://translatewiki.net.
Change-Id: I7a3fed99a2559efe071ed515cb0b0d4ae627d05e
canonicalQueryValue can be null at this point, so let's not insert it
into an array that contains strings.
Bug: T76868
Change-Id: I8096a9c1017e883d28124bf807d2d375ae98452a
New changes:
f033911 Only run showSelection if one of the command successfully executed
381aee1 Remove ve.instances
df0f7e5 Rerender ContentBranchNodes when the selection anchor leaves
27d7517 Check the selection is in the correct surface
40101e4 Use a chimera instead of  in inline slugs
Change-Id: I6af416ccc99c42e0595f0a52dbb348c710ea7e73
New changes:
5eb7294 Find and replace
123a6ad Find and replace tool
557f70f Go backwards through find and replace results on shift enter
4a4ed81 Allow language widget to filter on available languages
Local changes to adjust.
Change-Id: I15e14d6d3c7ee60e465baf3a4df7572851cbca3e
New changes:
82b7ecf Localisation updates from https://translatewiki.net.
a142762 Use unicorn client rect for adjacent collapsed selection
3ee5955 Add getDescription method to selections
d4be8ea Show entire expandable call tree in ve.ui.Filibuster
4743d59 Update OOjs UI to v0.2.4
Change-Id: Ic4ce5d8aff5a8b90cd541069cf22546940dd4b53
Both onDocumentKeyDown and onViewTabClick would check
this.activating and invoke deactivate() differently depending
on its value. That's ugly, so incorporate the "don't show a dialog
if deactivating during activation" logic into deactivate() itself.
Rename the override parameter to noDialog, and fix the broken
logic around it (it overrode too much).
Also move setting this.activating = false; out of these event
handlers into cancel(), where it clearly belongs because
activatingDeferred is being rejected there.
Change-Id: I6c040c74d36f829128a175f00d4e712dd19d31a7
Or at least open the confirmation dialog about it.
Relies on I0047bd9d to not break stuff on the second try.
Bug: T52868
Change-Id: Id178a2a0aad2f4bf5f589d66efde61aaa6fae498
If you tried to do styleElement( undefined, $element ), you'd
get an exception in the mw.Title constructor from a setTimeout.
That's not very nice, and there's no point sending non-strings
through the queue and other data structures in LinkCache, so
instead just make get() return a rejected promise when given
non-string values.
Change-Id: Iab06929d7e232a8ecd8eb1eff9d1190c303421c1
Method was moved to parent, but not deleted from child. Also move
sanityCheckPromise to parent where it is used.
Change-Id: Ie2b00330d796cd089fd4bc84d9332c316500633f