Commit graph

503 commits

Author SHA1 Message Date
Ed Sanders 72e48c26e0 Convert remaining tools to OOUI
Replaces the insert and advanced-insert groups, which
are currently multi-colour icons.

Drops the button-sprite + offset mode, according to
mwgrep there are no other users of this.

Bug: T191031
Bug: T143508
Change-Id: I7032f98908a591ea5c9d3dbbb7616e2c10bbfc80
2018-04-11 15:50:23 +01:00
Bartosz Dziewoński 5dd46f9943 Fix margin on OOUI icon buttons in Apex theme (MonoBook)
Bug: T191031
Change-Id: Ia11bf09e0dea8e929cfd0ab85cd46252f6a52325
2018-04-10 18:58:29 +02:00
Ed Sanders bfafde341f Use OOUI icons for bold & italic
Bug: T191031
Change-Id: I3beca4122e8b0514808ccffeb4042f1965e9f056
2018-04-04 20:13:03 +01:00
jenkins-bot e772abe425 Merge "Remove background colour on WikiEditor wrapper" 2018-04-03 19:42:26 +00:00
jenkins-bot b8b79c19ec Merge "Use OOUI icons for advanced format & size tools" 2018-04-03 19:42:23 +00:00
jenkins-bot c21d53cabb Merge "Replace toolbar background image with CSS linear gradient" 2018-04-03 19:33:33 +00:00
Ed Sanders 546933e52b Allow dialogs to have their borders
There is quite low contranst between dialog
background and the overlay, so it makes sense
to just leave the border, which is consistent
with MWUI dialogs in OOUI.

Change-Id: I90ad752b91d15a25e8b36d43df44ac56df75cd9c
2018-04-02 22:11:13 +01:00
Ed Sanders 89eff4701e Remove background colour on WikiEditor wrapper
The backgorund colour is more selectively applied
elsewhere. This just causes problems if the skin
sets <textarea>s to transparent (e.g. Minerva).

Change-Id: I6695dc5af9224238efdc3eac97817010cf52237d
2018-04-02 22:09:58 +01:00
jenkins-bot 37b51a2dc4 Merge "Hide right border of only the last group in the toolbar" 2018-04-02 11:49:06 +00:00
Ed Sanders 5ec5da115e Replace toolbar background image with CSS linear gradient
Change-Id: I1d72be9119e85fd9957ba0fb86f22a9a5cc2edca
2018-03-30 15:59:36 +01:00
Ed Sanders 38c91e7512 Remove unused format-indent icons
Change-Id: I2c12b77129b86268191173292b82f2051d85e795
2018-03-30 00:22:13 +01:00
MusikAnimal 96518636b3 Hide right border of only the last group in the toolbar
Bug: T190378
Change-Id: I14295eb71afad9c6c444199d1b84b7b714525475
2018-03-29 17:02:35 -04:00
Ed Sanders 335f189460 Use OOUI icons for advanced format & size tools
Bug: T191031
Change-Id: Ifb6c166ecfe082414677420939106d55a5715bb2
2018-03-29 15:53:15 +01:00
Ed Sanders 2dd87044e2 Provide #setActive API for buttons
Change-Id: I3e6f65f6f290778d3fbfa22f5d212c26fee12a86
2018-03-23 13:39:01 +00:00
Ed Sanders e7fea7563c Toolbar: Increase opacity on active tools
Change-Id: Ib83fa83794b9ecdb091aa14a5c4002640fc2f2fc
2018-03-22 15:33:52 +00:00
jenkins-bot 8f6a39059e Merge "Provide a 'tool-active' styling for toggle buttons" 2018-03-21 23:15:58 +00:00
jenkins-bot 76dcd4216a Merge "Allow toolbar items to use OOUI icons as buttons" 2018-03-21 22:50:43 +00:00
jenkins-bot b0a5d572d1 Merge "Remove never-used tools" 2018-03-21 19:38:23 +00:00
Ed Sanders a2e2b69241 Provide a 'tool-active' styling for toggle buttons
Based on styling used by CodeMirror extension.

Change-Id: I74b7399c6dba3409b26656ae89fa3a569c69fef3
2018-03-21 18:31:36 +00:00
Ed Sanders 6b9aa52894 Allow toolbar items to use OOUI icons as buttons
Change-Id: I04e8b6c395e9569e5593378a556e239edc254186
2018-03-21 18:31:21 +00:00
Ed Sanders accdb762f1 Remove never-used tools
Five tools are registered in toolbar.config, then overridden
in dialogs.config with more advanced verisons. As the dialog
module is no longer optional, the simplified versions are
no longer accessible.

Change-Id: Ib66025d209a36fb821c5619cbfe63330fb6c9a1f
2018-03-21 17:28:32 +00:00
jenkins-bot 5ce2c13463 Merge "Avoid '|' in title is interpreted as separator on API request" 2018-03-12 22:36:25 +00:00
Fomafix d5648e2c95 Avoid '|' in title is interpreted as separator on API request
mw.Api uses U+001f as separator when the title contains a '|'.
This is activated by using an array instead of a string.
The local check for an invalid title because of a '|' is not necessary
anymore.

This changes requires MediaWiki 1.28+ which is already required.

Change-Id: I8450c478d42158f064bf5309efae6bd1d81244ea
2018-03-04 09:44:27 +01:00
Amire80 2592dc0e4c Use display:inline-block for special character buttons
This allows them to use the natural text direction which will
be right-to-left for right-to-left alphabets.

Also fix bottom padding to match top padding.

Bug: T56310
Change-Id: I7b2ebf9d1682fe827517fc959618531c904c94ca
2018-02-28 13:56:07 +00:00
Alangi Derick e0977eeb93 Escape messages appropriately and not use raw html
Make sure messages are escaped and not feed on raw html
before inserting into the group.

Also, updated the minus-x version to 0.3.0.

Bug: T154891
Change-Id: I12e5dc03396fa8bed9beb362ae91a77e64646113
2018-01-22 20:21:58 +01:00
Jforrester 436a0aa1fa Remove dummy isSupported function, deprecated in REL1_31
This reverts commit a92c99cd45.

Change-Id: I2567fbf5a41efb1242b690dd23e4b59b166c0251
2018-01-18 18:19:46 +00:00
jenkins-bot b25a3f68dc Merge "Restore isSupported as deprecated dummy function" 2018-01-18 12:44:10 +00:00
Ed Sanders a92c99cd45 Restore isSupported as deprecated dummy function
Bug: T185143
Change-Id: I0be5d09390b70ee581262b4ba6421f5f51f2e696
2018-01-18 11:24:10 +00:00
James D. Forrester 86256e0c10 Remove reference to mw-editButtons-pipe-separator, now removed from MW
Change-Id: I50aeda4aee2dae8094ae19bdc6fb0c64425c3e14
2018-01-10 14:27:59 -08:00
Ed Sanders 17cf175e78 Save/restore selection in all browsers
Previously this wasn't required due to an iFrame mode.

Change-Id: Ib89af27d5ab6b9b1b05046b32b05ce368ff47a5f
2018-01-02 21:46:31 +00:00
Ed Sanders 84926bbd33 Remove browser compatibility checks
WikiEditor works in all browsers that MW supports,
and should do going forward.

Change-Id: I189516917d805dff3819e742a9fd8ad96a161159
2018-01-02 21:44:59 +00:00
James D. Forrester 6f35dcc39c Merge all the non-styles-only ResourceLoader modules into one
These were always jointly loaded, so they just bloated the module table
to no benefit.

Bug: T165112
Change-Id: I51745e84d6b840a18d84385dfb5ea4f96ada311d
2018-01-02 21:41:42 +00:00
James D. Forrester be36244c70 Radically simplify this extension now there's only one config option
On or off. Pick your apples.

Change-Id: I7677f0b597c33f236192aea1aaa347a36216fbb7
2018-01-02 21:25:16 +00:00
James D. Forrester 77cea2697c Drop the never-finished "Labs" publish and preview features
These features were ideas in the Usability Initiative but were never
finished to the level that they would be deployed on Wikimedia wikis
and have been marked as "going to be removed" for years. Now is time
to act on that promise.

Change-Id: Ia1eb91d2dfb1979518d97badc1477146b4606f7c
2018-01-02 21:00:44 +00:00
jenkins-bot 3d39b80b0c Merge "Track time-to-ready/loaded via window.performance" 2017-12-11 21:28:30 +00:00
jenkins-bot fae67b0a3d Merge "Track action=loaded when the editor is *fully* ready" 2017-12-11 21:28:29 +00:00
David Lynch 046e9b6374 Track time-to-ready/loaded via window.performance
Change-Id: Iadb9c131ca6730c20d4b166e686942f9b404e198
2017-12-11 11:53:14 -06:00
Ed Sanders 0322d628aa Track action=loaded when the editor is *fully* ready
Change-Id: I29ee776bdfe5d89ddffb97175588ed037ef0beee
2017-12-06 16:32:27 +00:00
Seb35 db23e9984c Cancel button returns Undefined error
The associated HTML changed in MediaWiki commit 97d7de0b.

Bug: T177313
Change-Id: I360fbd375efd7090256626df3fce418a5aa45ac2
2017-11-24 19:12:53 +01:00
Amir Sarabadani f3aad21d96 More alignment with WikimediaUI color style
Bug: T174119
Change-Id: I4ae87be955ef60e5cad45133c9b0118e1cf246be
2017-10-31 21:48:22 +01:00
jenkins-bot 1c67de24a2 Merge "build: Update linters and fix errors" 2017-10-31 19:17:42 +00:00
Ed Sanders 66a29b9c0a build: Update linters and fix errors
Change-Id: I3d316cfa7432d0600f0114608342155c1d1f6c1d
2017-10-31 18:40:57 +00:00
Amir Sarabadani 2726762994 Align colors with WikimediaUI color palette
Bug: T179411
Change-Id: I39f47c15547c0bc3197dc1c186cee748f48b1b67
2017-10-31 17:12:52 +01:00
Ed Sanders ca87c9020e Remove rest of partially-removed IE hack
Bug: T123219
Change-Id: I3b900116ce2dc44338451c07ecdc419bad82014b
2017-10-12 16:02:48 +01:00
jenkins-bot a005f16488 Merge "Align close colors to conform to WCAG level AA" 2017-10-12 01:18:47 +00:00
Fomafix 1e0621fc1f Show invalidreason from API response on invalid title
Bug: T99547
Change-Id: I34372e054e509732b008875260ba5c5e0248e551
2017-10-11 11:02:08 +02:00
Volker E 10c92ebd15 Align close colors to conform to WCAG level AA
`#666` is closest simple one that also works on
backgrounds like `#fafafa`.

Change-Id: Iffca2872504e2a173155e4ddc5e4ab652464eb8f
2017-10-10 20:06:12 -07:00
jenkins-bot 3fb5a2c9e1 Merge "Hide loading spinner also on API fail" 2017-08-10 22:32:26 +00:00
Pavel Astakhov 3e14a90fb7 Do not add a background image if the icon is not defined
Bug: T172500
Change-Id: Ib658651e04090ec4f5bc1f5bacbbfb0d7e7f893e
2017-08-04 15:46:08 +06:00
Fomafix bb1bc1d2c1 Hide loading spinner also on API fail
Change-Id: I65c1adf8058f2cd0a18466b0d92e43d5ec67d8f7
2017-07-25 17:43:14 +02:00
Derk-Jan Hartman 0cdd6d467e WikiEditor: <br /> -> <br>
Bug: T150172
Change-Id: I645cd627a8f66144fdbbdecf15b24af0528746a8
2017-06-04 20:54:37 +02:00
James D. Forrester ba6e4e171d Follow-up d400102: Drop irrelevant comment, merge var declaration
Change-Id: I09685da71cdfa21b40258ecffc64fa9a2f6ec272
2017-05-22 13:20:09 +02:00
jenkins-bot a899832759 Merge "Remove IE8 hacks" 2017-05-22 10:47:25 +00:00
Ed Sanders d400102c38 Remove IE8 hacks
Change-Id: I23e33e3498487bedcc50d95e2162175e940882c4
2017-05-22 11:50:04 +02:00
Fomafix c410ce8a4d Add parameter useskin to action=parse for live preview
This change duplicates the Change-Id: Ie3615866 in core and is needed to load
the module 'mediawiki.toc' since Change-Id: Iaad84d24.

Change-Id: Ie667e97737acb66a8efcb299bc081b9577ae24d6
2017-05-21 19:44:30 +02:00
jenkins-bot 86da31e8e0 Merge "Make toolbar and dialog part of the core module" 2017-05-11 23:17:17 +00:00
Fomafix 5432a42d2d Use background-image instead of <img> for spinner
* Background images get embedded.

Change-Id: Iea1fb3db29b1eb8d5bff1b9b07a6c16145b9efc0
2017-05-05 19:09:37 +02:00
Ed Sanders 1b0bd60ee8 build: Update eslint to 0.4.0 and make pass
Change-Id: Ib0ac14fb53479eb964a5d51066661b4771b1f72e
2017-05-04 22:38:47 +00:00
Ed Sanders 781504057a Make toolbar and dialog part of the core module
Bug: T163793
Change-Id: Ia6d02b51d4e04f148d836827640ff132366c4bee
2017-05-03 11:54:23 -07:00
jenkins-bot ecc01e9122 Merge "Explicit load module 'jquery.tablesorter' instead of use when loaded" 2017-04-27 13:04:51 +00:00
Fomafix 278ae63c04 Explicit load module 'jquery.tablesorter' instead of use when loaded
The module 'jquery.tablesorter' is already loaded a few lines above.
The previous situation depends on a race-condition of the function is called
or not.

Change-Id: If6777fcc7d9d49604eb78b6d233a32898fc82446
2017-04-27 13:50:23 +02:00
Fomafix 25d64833dd Remove workarounds for IE8
Since MediaWiki 1.27 JavaScript is disabled on Internet Explorer 8.

Bug: T123219
Change-Id: If8e36d5cf39531ca9c599131847f612d17c31166
2017-04-26 18:28:25 +02:00
jenkins-bot 983cd6f480 Merge "Replace deprecated jQuery.isArray with Array.isArray" 2017-04-26 16:12:50 +00:00
Fomafix 24ee938095 Replace deprecated jQuery.isArray with Array.isArray
jQuery.isArray was deprecated in jQuery 3.2.0. [1]

Array.isArray is part of ES5 and MediaWiki 1.29+ which ensures that
JavaScript is only used when the browser supports ES5. (T128115)

Performed using:
find . -type f -name \*.js -exec sed -i -e 's/\$\.isArray/Array.isArray/g' {} \;

[1] https://blog.jquery.com/2017/03/16/jquery-3-2-0-is-out/
[2] https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/isArray#Browser_compatibility

Change-Id: Ia1a118fefb23761fe297647442f0a598a9488968
2017-04-26 16:04:51 +00:00
jenkins-bot 744dd98914 Merge "Fix deprecation warning since jQuery 3" 2017-04-17 20:58:19 +00:00
Amire80 677041ff59 Add Canadian Aboriginal characters to the special characters toolbar
Bug: T108626
Change-Id: I613e89a520f78bcf7b6640c3ed5b9f3cce351912
Depends-On: Ia337d42c6ef7f9645f1dd843ef0e7553857f6aa3
2017-04-17 14:23:26 +00:00
Fomafix 74229b1d25 Fix deprecation warning since jQuery 3
JQMIGRATE: Attribute selector with '#' must be quoted: a:not([href^=#])

Change-Id: I892d27fd5e1b7e4a8b495f295d95592f164f7003
2017-04-13 11:18:45 +02:00
Fomafix ebf4d28dfe Replace deprecated jQuery .bind() by .on()
jQuery .bind() is deprecated since jQuery 3.0.
https://api.jquery.com/bind/

Change-Id: Ibbcfbefe2983b2ed2e3b110518c16539cbb84d88
2017-03-24 08:51:58 +01:00
Fomafix bd133991ba Replace deprecated jQuery .unbind() by .off()
jQuery .unbind() is deprecated since jQuery 3.0.
https://api.jquery.com/unbind/

The deprecated jQuery .bind() was aready replaced by .on() in 7769baa5.

Change-Id: Ia03d7a26754cc26345d9551d740719c43f598995
2017-03-23 20:36:39 +01:00
Ed Sanders d4b3d2c87f build: Update stylelint to 0.4.1
Change-Id: I4f21c19a9b834fa5442df201c4d65c6184bcbd2c
2017-03-20 14:39:18 +00:00
Ed Sanders 9f7fcfd80e Follow-up Ife5e782bd: Syntax fixes
Change-Id: I0a9d68344b2e5ed5589d421525e6113b72476705
2017-01-09 13:43:42 -08:00
Timo Tijhof 7769baa56e Replace deprecated jQuery bind() and size()
> JQMIGRATE: jQuery.fn.bind() is deprecated
> JQMIGRATE: jQuery.fn.size() is deprecated; use the .length property

Note that bind() is not removed in v3, merely deprecated.
Even after the jQuery Migrate phase, it will continue to work.

size() was removed in v3 and works only during the Migrate phase.

https://api.jquery.com/size/
https://api.jquery.com/bind/
https://jquery.com/upgrade-guide/3.0/

Bug: T124742
Change-Id: I6bbd8f829ecf987228c6a5abd32c84e4e088a9bd
2016-11-21 18:23:50 -08:00
Ed Sanders 7eed707a48 Replace jshint/jscs with eslint/stylelint
Change-Id: Ife5e782bd5513e0496e384655b9b203de5c841a5
2016-11-21 21:02:38 +00:00
Bartosz Dziewoński eb3097759f Make Upload/Insert buttons in "Insert media" dialog less confusing
The "Upload" button is now displayed on the left side of the dialog,
which make it clear it's a "secondary" action. "Insert" is on the
right, like all jQuery UI buttons, and the primary action.

Unfortunately jQuery UI doesn't give us a lot of styling options for
buttons or dialogs, even this is a bit of a hack.

Bug: T135917
Change-Id: Ia64229b880653668c11787744c177f6c91900382
2016-11-02 16:56:37 +01:00
Fomafix fe7e2a790c Load module 'mediawiki.diff.styles' on show changes
The loading of the diff styles get lost in 6627f2cd.

In MediaWiki 1.28 the name of the module was renamed from
'mediawiki.action.history.diff' to 'mediawiki.diff.styles'.

Bug: T142845
Change-Id: I86ed2a0568c6bc4e81819633a295cec2e8924215
2016-09-26 21:29:14 +02:00
Derk-Jan Hartman 10583ec1a7 Avoid flash of content when hiding editHelp and the pipe separator
Bug: T120408
Change-Id: I651ea3d2b891ce347a51be9b3bc3e34351bc53dc
2016-05-25 11:26:13 +00:00
Derk-Jan Hartman 79a052dc5e Avoid reflow due to WikiEditor toolbar loading
This avoids part of the reflow that occurs when the WikiEditor has
finished loading it's toolbar, by reserving 33px above the textarea.

I will still reflow to uncollapse a Advanced or Help section of
course, but there is only so much we can do.

Bug: T125843
Change-Id: Ibadea803bdfde9f88cff082b043ed58a05ed75a9
2016-05-25 00:26:20 +02:00
Paladox f473a2bc36 Allow the signature wikitext to be overridden locally
Bug: T26191
Depends-On: I33de58e9729a51ae73a13853ffcfcbb2d2305111
Change-Id: I43f5bbaee007bbd038f2e118b3ffb8690753afb8
2016-05-18 00:43:15 +00:00
jenkins-bot d1bfcb7d5a Merge "Small side-by-side preview improvements" 2016-04-19 15:57:59 +00:00
Derk-Jan Hartman 6627f2cd94 Small side-by-side preview improvements
- load jsconfigvars
- trigger the hooks for wikipage.content and wikipage.diff
- rvdifftotextpst for diffs
- improve section support

This module is not used within WMF, but has some users amongst 3rd
parties.

Change-Id: I7f0b2de4a984d811ccd94149670390929a6182f6
2016-04-16 00:34:05 +02:00
Ed Sanders 785703b5c5 Add 'Greek extended' to special character list
Bug: T130535
Change-Id: I57634d14b8ada16bd00db0c0333c1fc87d2be28c
2016-04-14 19:58:51 +01:00
jenkins-bot c49eba0099 Merge "Fix spelling mistakes and clarify code comments" 2016-04-01 10:50:36 +00:00
Ramunas Geciauskas c277e3eeb6 Stop any other tab animations when clicking on the tab button
When quickly clicking on a tab (the same one or a different one) in the
toolbar the new animation is started immediately even though previously
triggered animations might still be running. This leads to potential
issues as reported in T106993 bug report.
Make sure to stop previous animation first before issuing a new one.
Additionally 'resize' trigger is under racing conditions when
expanding/collapsing tabs, and needs to be invoked explicitly on any
size-change event (cannot rely on the fact that the last issued animation
will trigger last).

Bug: T106993
Change-Id: I874dd7cb9f2fe96e3a6493508cbae4de56f7a6c0
2016-03-31 12:08:07 -04:00
Ramunas Geciauskas ddda9c0c13 Fix spelling mistakes and clarify code comments
No functional changes

Change-Id: I395f97640931d7902cb468d62187d6d8fd10c0b7
2016-03-31 10:28:32 -04:00
jenkins-bot a9aeec920d Merge "Revert "Compress PNGs with zopflipng"" 2016-02-28 00:29:33 +00:00
Legoktm c950e0a53f Revert "Compress PNGs with zopflipng"
This reverts commit f50c6d0bb7.

Change-Id: I62e486f949bf0940e109ae5b1dabe098cbcb4c67
2016-02-28 00:07:54 +00:00
Derk-Jan Hartman cfb3d25117 Only load a page/booklet once
Bug: T126138
Change-Id: Ib4b2b76b115026df12a7d9cc3c30b7559c2580e4
2016-02-22 23:21:21 +01:00
jenkins-bot c1acfd639f Merge "Remove loading spinner" 2016-02-21 21:11:23 +00:00
jenkins-bot a1184765e6 Merge "Use formatversion=2 for API request" 2016-02-21 20:59:39 +00:00
Fomafix ce96b0c72e Remove loading spinner
Since e8d37102 the loading spinner is not visible, because all actions
relating to it are in the same render step of the browser.

The loading occurs fast enough now, that we also don't want to show an
intermediate spinner.

Change-Id: Id2a3584deed2ecde807d8f354341dd6868b10009
2016-02-21 20:57:44 +00:00
Ori Livneh f50c6d0bb7 Compress PNGs with zopflipng
Zopfli is the most efficient DEFLATE compression algorithm, trading run-time
performance for file sizes that are typically 3-8% smaller than those produced
by zlib with the maximum compression setting. Its output is Deflate-compatible,
so no specialized decoder is needed.

This change was created by running zopflipng against all the PNG files in this
repository. The exact invocation was:

  git ls-files --exclude-per-directory=.gitignore -- '*.png' \|
    parallel zopflipng -m -y {} {} \;

Files which zopflipng was not able to compress more efficiently were left unmodified.

Bug: T127608
Change-Id: I56c6870e86f9b359fc8c025caf6917560ebb606b
2016-02-21 02:04:49 +00:00
Ori Livneh 77f5499cfc Compress PNGs with zopflipng
Zopfli is the most efficient DEFLATE compression algorithm, trading run-time
performance for file sizes that are typically 3-8% smaller than those produced
by zlib with the maximum compression setting. Its output is Deflate-compatible,
so no specialized decoder is needed.

This change was created by running zopflipng against all the PNG files in this
repository. The exact invocation was:

  git ls-files --exclude-per-directory=.gitignore -- '*.png' \|
    parallel zopflipng -m -y {} {} \;

Files which zopflipng was not able to compress more efficiently were left unmodified.

Bug: T127608
Change-Id: Ic0aa0017f97411a282b54d51217a019871a93433
2016-02-21 00:44:19 +00:00
Fomafix d7d2b65487 Use formatversion=2 for API request
With formatversion=2 the JSON response uses UTF-8 instead of escape sequence
with hex for encoding of non-ASCII characters (e.g. "\u00e4" for "ä").

The JSON response from formatversion=2 has some structural improvements.
This allows a simplification of the processing of the response.
The parameter indexpageids= is not necessary anymore.

Change-Id: Ic08c8ba46b7529952c0fb2f04564b458b55112fd
2016-02-08 11:49:17 +00:00
Fomafix 3d103f09b5 JavaScript: Use single quotes instead of double quotes for
strings

* This avoids escaping of double quotes.
* Exceptions: "''" and "'''"
* https://www.mediawiki.org/wiki/Manual:Coding_conventions/JavaScript#Quotes

Set "validateQuoteMarks": { "mark": "'", "escape": true } in .jscsrc
This tests for single quotes but allows double quotes to avoid escaping.

Change-Id: Ibd32a63c4c97a7ef8938c6d2dff83b952cfca43e
2016-02-07 18:22:06 +00:00
Fomafix 0b5c23d42b Use .prop() instead of .attr()/.removeAttr() for boolean HTML attributes
https://www.mediawiki.org/wiki/Manual:Coding_conventions/JavaScript#Pitfalls

Create elements according to
https://www.mediawiki.org/wiki/Manual:Coding_conventions/JavaScript#Creating_elements

Change-Id: I14a7f6e8d2c0a43b89d0d186398a4fea76b7d362
2016-02-07 14:22:56 +00:00
Fomafix 7d8b6a1ab6 Use boolean values for .prop() on boolean HTML attributes
.prop() expects a boolean value. .id() returns a boolean value.

Change-Id: If3dc6197f9dded92e99faeaa33e31dc937ebf66f
2016-01-15 12:43:37 +00:00
jenkins-bot 60d9feb204 Merge "Use background-image instead of <img> for toolbar icons" 2016-01-07 19:35:23 +00:00
jenkins-bot af564f288b Merge "Add format-bold-Iab image for lang ce" 2015-12-28 09:15:22 +00:00
jenkins-bot 6b6109e222 Merge "Use mw.Message#text() instead of plain() in wikiEditor.autoMsg()" 2015-12-28 08:42:09 +00:00
Paladox 38d28d5631 Add format-bold-Iab image for lang ce
Also use the icon for Chechen. Also requested by Bug: T119716

Add these icons for lang ce

png

https://commons.wikimedia.org/wiki/File:Toolbaricon_bold_%D3%80%D0%B0%D1%8C.png

svg

https://commons.wikimedia.org/wiki/File:Toolbaricon_bold_%D3%80%D0%B0%D1%8C.svg

This was requested at
https://ru.wikipedia.org/wiki/%D0%92%D0%B8%D0%BA%D0%B8%D0%BF%D0%B5%D0%B4%D0%B8%D1%8F:%D0%A4%D0%BE%D1%80%D1%83%D0%BC/%D0%A2%D0%B5%D1%85%D0%BD%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D0%B9#.D0.9F.D0.B0.D0.BD.D0.B5.D0.BB.D1.8C

Bug: T119716
Change-Id: I4b41aa53138eae660ebeb9b1d9f6f547cfcca7a4
2015-12-27 20:54:23 +00:00
Timo Tijhof f583469ece Use mw.Message#text() instead of plain() in wikiEditor.autoMsg()
* Follows-up 6a73d06 by removing the hardcoded SITENAME regex.
* Follows-up 1b797b7f6a which introduced this regression in the first
  place. This is exactly the reason why mw.msg() defaults to format
  'text' instead of 'plain' without transformations.

Change-Id: I7f1b877710fb6baa45b83054d1e30a24979b37b4
2015-12-25 21:33:47 +01:00
Derk-Jan Hartman 95ab425166 Remove non-working {{#special:mypage}} from help
Bug: T44107
Change-Id: Iff987eddfb1fbe6a6ce1c88795b9dc1fd5b47f9e
2015-12-25 20:28:43 +00:00
Fomafix 19789d762b Use background-image instead of <img> for toolbar icons
Change-Id: I8af0e2c8585e8d9f6f72133953792eb88a176bcf
2015-12-22 13:36:36 +00:00
2nd-player 6a73d06932 Substitute {{SITENAME}} in the title of dialogs
Bug: T62695
Change-Id: I7e5378b37e66b8b35bb7b3aa2121eea3cbf1defd
2015-12-21 20:03:32 +00:00
Fomafix de74cc81f5 Use mw. instead of mediaWiki. in code
Change-Id: Ib7905bbbb8954cf8e268acac45e00ceba959b00b
2015-12-13 12:44:49 +00:00
Paladox bfc5e2a6bd Fix ie 8 support in js follows-up: I039bc4c17fbba3c74a5050066b20af05434ca482
Change-Id: Icfea4cedde88efb88307cbb1842edc8a17ebf83a
2015-11-25 10:32:05 +00:00
paladox bdb67f719c build: Test JS code with jshint and jscs via npm
Change-Id: I039bc4c17fbba3c74a5050066b20af05434ca482
2015-11-18 12:06:36 +00:00
Prateek Saxena 5ea5952cd1 Use mw.Upload.Dialog to upload and insert file
Bug: T115748
Change-Id: I2427cd959f0d9b6872866e120e7bd0e7e298ec27
2015-10-23 16:54:24 +00:00
Timo Tijhof c4a6039f8c Remove use of deprecated 'modulemessages'
Deprecated as of MediaWiki 1.26, replaced with an empty array.

Change-Id: Ic5f308060f796b896f98de34e153bb8bd11f8e6c
2015-09-24 18:01:24 +01:00
Alex Monk 7eba01c398 Finish updates for Schema:Edit
Follows-up Ib5fc6004

Bug: T111421
Change-Id: I3f1148ed7ec424875d73b0eb6571c8f38180685f
2015-09-04 20:46:56 +01:00
Derk-Jan Hartman 1d654454c6 Dialogs: handle jQuery content for dialogs
Follow up to Change Ia7ad5aaa9cac429d1c9d706bdf6760e3eda358bc

Bug: T109781
Change-Id: I5373600f4d3c0bb4e5192ca5ce1acea2b853dc3a
2015-08-22 01:01:37 +02:00
Schnark 522331ddda Wikieditor: Rework deferred building of toolbar
Currently sections of the toolbar can be built deferred. This
is done for the help section and the special characters. The
disadvantage is, that you can't modify such sections before
they are really loaded.

This patch modifies the behavior by doing the following:

* Toolbars are always built directly. After all, deferring isn't
  used there anyway in the standard configuration.
* When a booklet is requested to be built only when it's needed,
  the index and all pages will be built immediately, only the
  content of the pages is deferred and built only when it is
  needed.

Even on slow machines building all pages immediately doesn't cause
noticeable pauses, in fact, opening a page with special characters
seems even faster because only the page you need is built, not all
pages.

Since all pages exist from beginning, you can remove and add pages
from user scripts. It is still not possible to modify an existing
page (add or remove a row to a help page, add or remove a character,
unless it is the page that was opened last time), but this is something
that shouldn't be needed very often, so it should be acceptable that
it still doesn't work.

Bug: T25479
Bug: T70791
Change-Id: I0e61b1fd4f6139a251e53a1fac28b3821bc6b860
2015-08-14 13:11:39 +00:00
Schnark 6602d905ee WikiEditor: Move HTML for dialogs to separate files
Move the HTML for the dialogs to separate template files,
using the template mechanism from core.
It is still possible to specify the HTML directly as before,
to be used in gadgets etc.

Change-Id: Ia7ad5aaa9cac429d1c9d706bdf6760e3eda358bc
2015-08-14 13:07:27 +00:00
This, that and the other 52d3e279a1 Replace hidesig module with a more robust implementation
Per T42972, the current hidesig implementation is broken, and only
hides the signature button in namespace 0 regardless of the value of
$wgContentNamespaces.

Seeing as the old implementation of hidesig was broken, I don't really
think backward compatibility with old configurations is a useful
concern here. In particular, hiding of the signature button is no longer
able to be configured in Special:Preferences (why such a trivial pref was
ever able to be exposed to users, I don't know).

Bug: T59727
Change-Id: I596fd435bc9be8c37da43177c1bea90ebff0b2fe
2015-08-05 13:59:00 +10:00
Derk-Jan Hartman 1b02e98296 Toolbar: Remove Opera redraw hack
The versions of Opera that this was targeting aren't really supported
anymore anyways. So let's just remove this hack.

Bug: T106574
Change-Id: I1b11fc8ec30f3c33b681daff7f676fa965fb78cb
2015-07-22 21:06:28 +02:00
jenkins-bot 10ff6c36de Merge "WikiEditor shouldn't store wrong cookies for booklets" 2015-07-21 23:01:58 +00:00
jenkins-bot 75021184a9 Merge "Fix spaces" 2015-07-21 23:01:55 +00:00
jenkins-bot 8173336157 Merge "WikiEditor: Improve help section" 2015-07-21 16:56:45 +00:00
Ebrahim Byagowi 2d188d18f9 Use "B" and "I" icon for Persian
Change-Id: I4e6f69debc489d34e611bc177975fba9c3874a54
2015-07-20 22:31:04 +00:00
Schnark 27353c44b7 WikiEditor: Improve help section
* Internal links: Show simple example first
* References: Show use of unnamed references
* Discussion: Use --~~~~ for consistency with what the toolbar button inserts

Bug: T26128
Change-Id: I08de0ad416727447eccad914c2ade3a93e5a8ae2
2015-07-20 07:42:35 +00:00
Fomafix 7c932c06da Fix spaces
Change-Id: Icce6ba3de9e472472b8b9e98e78e4aece82e806d
2015-07-20 07:12:45 +00:00
Schnark 72d7413480 WikiEditor shouldn't store wrong cookies for booklets
When additional booklets are created, or existing removed, WikiEditor
currently stores one wrong cookie for each new booklet. This is because
twice a wrong id is passed as parameter, and because a cookie is set for
the default value. This patch fixes these issues.

Additionally I replaced in the function that needed to be edited a loose
comparison with a strict one ($.cookie will return null, never undefined),
and .size() by .length.

Bug: T27184
Change-Id: Iacc1c71a1e0fc2307a3a28d9c1bb00967ac9827a
2015-07-16 07:19:25 +00:00
paladox d4b293587c Updated insert-signature image
* Some users have reported that they did not like the new colour for the wirting. New colour changed back to black.

Author is Roul P

Compressed using https://compressor.io/compress

Change-Id: Ieda03d57197bc6c2dd0361e942a819732876ac36
2015-07-14 08:31:17 +00:00
Derk-Jan Hartman e8d37102a5 Toolbar: Let's remove a speedup loop...
Change-Id: I3e965dda1c48195d7c11f1d7f23a09dd8447cfc7
2015-07-06 14:41:33 +02:00
Fomafix b365425f76 Replace deprecated 'jquery.mwExtension' by 'mediawiki.RegExp'
Replace $.escapeRE from 'jquery.mwExtension' by
mw.RegExp.escape from 'mediawiki.RegExp'.

This change requires MediaWiki 1.26+

Bug: T103993
Change-Id: I5fc19e1313fc6a06726981e0365cea6d00abb5f3
2015-06-26 15:10:20 +00:00
jenkins-bot e110a57562 Merge "Remove unused parameter lang from $.wikiEditor.auto* functions" 2015-06-23 20:51:34 +00:00
paladox e62f582d54 Add svg to LESS file
Requires patch https://gerrit.wikimedia.org/r/#/c/181786/

Bug: T37342
Change-Id: I994208cdf35fb11f0b0a724272124ac5410e2076
2015-06-23 20:43:19 +00:00
paladox 28aa2ff1d2 WikiEditor: Add svg images
* Re adds svg images that were reverted earler for causing problems.
* Adds some missing rtl svg images.
* Fixes insert-ilink.svg that was causing it to not show in some browsers eg internet explorer.

User Perhelion Fixed the problem in insert-ilink.svg and insert-signature.svg. I just added it to button-sprite.svg.

Related less file adding svg to it is at https://gerrit.wikimedia.org/r/#/c/195529/

Bug: T37342
Change-Id: I14482c7b66901609689bf9ddb67b8d2add937612
2015-06-23 14:45:03 +01:00
jenkins-bot 03e93d626d Merge "Reduce 'Edit' EventLogging schema sampling rate to 6.25% (1/16th)" 2015-06-22 15:00:07 +00:00
Fomafix a27f478bf5 Remove unused parameter lang from $.wikiEditor.auto* functions
Change-Id: I71680155b668b6e87be909d2b765f9cbed064bbf
2015-06-22 07:08:54 +00:00
Fomafix edbee613fc Support fallback languages for icons
Use mw.language.getFallbackLanguageChain() to get the
fallback language chain. This chain currently always contains 'en'
as last element. Remove the last element to prevent a fallback to 'en'.

Reimplement autoIconOrOffset to correctly prefer sprite before icon.

Bug: T87247
Change-Id: I452dd45d20ea4dd542d63274b7aad0272e20ea12
2015-06-21 15:42:18 +00:00
James D. Forrester ab9dbac995 Reduce 'Edit' EventLogging schema sampling rate to 6.25% (1/16th)
Bug: T103036
Change-Id: Ib437c2542f9f6ed4d333047383ff66e637b5065e
2015-06-18 16:39:29 -07:00
Roan Kattouw d1270ed4b6 Populate abort.type in Schema:Edit logging
Using document.activeElement at the time of the unload
event as a proxy for whether the user is switching to VE.

Switching to VE is weighed more heavily than whether or not
the user made changes: switching to VE causes abort.type to be
'switchwithout' regardless of whether changes were made; only
if the user isn't switching to VE do we look at whether changes
were made and use 'abort' or 'nochange' as appropriate.

When wgAction === 'submit' (i.e. we're on a preview / show changes
view), it is assumed that the user has made changes.

Bug: T95938
Change-Id: Ic91b87c4fc5b601e1fd98b237100d808e97400bd
2015-05-04 18:15:18 -07:00
Roan Kattouw cc5ca3a2f6 Perform 25% sampling on the client side as well
Needed because session IDs can be generated on the client
from the unload handler (when the back button is used).

Bug: T95919
Change-Id: Iac921bc36806205fc11ac76154ed8b3890f10d31
2015-04-28 14:55:54 -07:00
Roan Kattouw 418baf1efa Regenerate editingStatsId on unload
So that the ID isn't reused when the user uses the back button
to navigate back to an edit page.

It would be more natural to use pageshow for this, but that
event also fires on initial load. There is a .persisted property
that indicates whether the page was recycled, but that
property doesn't work in Chrome:
https://code.google.com/p/chromium/issues/detail?id=344507

Doing this from pagehide doesn't work either, because that
runs before unload (at least in Chrome) and causes the
abort event to be emitted with the new ID. So instead,
regenerate the ID in the unload handler after the
abort event has been sent.

Bug: T95919
Change-Id: I20a602a7896e75ffa116dcd2c137306ca84164b6
2015-04-21 01:01:41 +00:00
Roan Kattouw 1a96528f69 Remove extraneous comma
Change-Id: Ica0bb9f5a266e265647ade4a13e1e1d368c928d2
2015-04-19 15:35:39 -07:00
Fomafix 465d411536 Rework color definitions in LESS
* Use #rgb instead of #rrggbb where possible.
* Use lower case letters.

Change-Id: I390bf23d44bc2d78eb1d2185fd89b94297d1f05f
2015-04-14 21:39:04 +00:00
Alex Monk 596a790d00 Try to unbreak WikiEditor modules
Some very weird issues going on involving multiple wikiEditor instances being
set up on the same textarea element. It's probably a race condition of some
sort and I'm hoping that restoring the modules like this will fix it.

Bug: T93384
Change-Id: I44c9c013993220ab709893d239614552d7b25d46
2015-04-07 19:51:58 +01:00
Fomafix 539dabeeed Escape messages
* Use .text() instead of .append() to add a text.
* Integrate only once used variables.

Change-Id: I62cd1a402fc44d90e746ec79e96a13aa49e7f926
2015-03-28 23:42:47 +00:00
Alex Monk fb4f71a46b Move WikiEditor's special character data and messages out to core
Core part done in If9c5cdbe

Bug: T91608
Change-Id: Ifd0ed245ca9d1209b3dad5334f3fcfca428ceeec
2015-03-27 22:46:24 +00:00
Alex Monk 2b914eeddf Don't try to do event logging if we don't have a stats ID
I found that pages like:
https://pl.wikipedia.org/w/index.php?title=Wikipedia:Strona_g%C5%82%C3%B3wna&action=edit
which load WE dynamically don't have this.

Change-Id: Ib3952f4efbf265dbb0d1e25b2059e1be934565a7
2015-03-20 01:26:31 +00:00
Alex Monk bf15f72dc7 Try to prevent crazy EventLogging entries with no session ID etc.
Seems to be causing errors on view (!) on plwiki, and I would not expect this
to work on non-wikitext pages.

Bug: T93242
Change-Id: I0336a85a2ab4bef1d20086382012047688ffa909
2015-03-19 21:29:57 +00:00
Alex Monk 4d54fa4471 Only do client-side instrumentation on action=edit/action=submit
So we don't break the tests

Bug: T93119
Change-Id: Ib0545f581fd2a845b893a046ab7aa7161e27180e
2015-03-18 23:59:24 +00:00
Derk-Jan Hartman 1514d166e0 Insert link: trim whitespace from the external link
Bug: T25499
Change-Id: I2392ade17d3d4428784c40dabf9ae5e216fbab47
2015-03-16 00:16:13 +01:00
Fomafix 5c36a20623 Move hardcoded parsed thumbnail html from i18n to config
Also update the actual HTML with what the current parser outputs:
* width:104px -> width:102px (2px in addition to 100px image width)
* No more "title" attribute on the outer <a>.

And reduce duplication in the message:
* Re-use "thumbnail-more" message.
* Re-use "wikieditor-toolbar-help-content-file-caption" message.

Change-Id: I25f0763b2274ebdcf681c78af277a9be302350a1
2015-03-14 20:41:11 +01:00
Tiziano Müller 51f3d145bc Reformat the license warning only if available
If the WikiEditor is enabled for Semantic Forms Text Area Input there is
no license warning div around.

Change-Id: I8d39f8d47a73cdc2d4be198061e8f68f22c0c308
2015-03-14 18:10:52 +00:00
Fomafix 83c079ceb6 Reuse variable profile instead of $.client.profile()
Change-Id: I66543bd0838b062bea08ca4b5f4fded41ff835cc
2015-03-14 18:01:58 +00:00
Fomafix d16dfb0ad5 Style code
* Fix errors and warnings from phpcs.
* Add commas at end of lines for arrays in PHP.
* Add space between // and comment.
* Add space between ) and {.
* Use tabs instead of spaces for indenting.
* Break lines in PHP with more than 100 characters.
* Remove double spaces and spaces at end of line.
* Remove spaces before comma.
* Fix some typos.

Change-Id: I9c014bdfa9832fa6a20d0190fe2fc668983d0fb9
2015-03-14 15:49:04 +00:00
Alex Monk ef7c4ce2be Don't try to load edit schema if it's not installed
It would only be installed by the WikimediaEvents extension.

Change-Id: I0a1841ad7639765cedf6294d62104f9aedb36d83
2015-03-12 16:49:50 +00:00
Alex Monk 74da530f2d Schema:Edit instrumentation
Depends on Ib8612626

Bug: T88027
Change-Id: I67f1000d23cb257df29d5d4be8ae85764458e6c1
2015-03-10 14:56:45 +01:00