Alex Monk has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/182336

Change subject: Update "Watch this page" option when necessary
......................................................................

Update "Watch this page" option when necessary

On load and change the user presses the button

Bug: T78694
Change-Id: I1df2836f8ba4ae647bfb142513e5de9f32ecd0fe
---
M ApiVisualEditor.php
M VisualEditor.hooks.php
M modules/ve-mw/init/targets/ve.init.mw.ViewPageTarget.js
M modules/ve-mw/init/ve.init.mw.Target.js
4 files changed, 15 insertions(+), 3 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/VisualEditor 
refs/changes/36/182336/1

diff --git a/ApiVisualEditor.php b/ApiVisualEditor.php
index 9fb6f26..c25776a 100644
--- a/ApiVisualEditor.php
+++ b/ApiVisualEditor.php
@@ -483,7 +483,8 @@
                                                        'notices' => $notices,
                                                        'checkboxes' => 
$checkboxes,
                                                        'links' => $links,
-                                                       'protectedClasses' => 
implode( ' ', $protectedClasses )
+                                                       'protectedClasses' => 
implode( ' ', $protectedClasses ),
+                                                       'watched' => 
$user->isWatched( $page )
                                                ),
                                                $parsed['result']
                                        );
diff --git a/VisualEditor.hooks.php b/VisualEditor.hooks.php
index a7542cb..99bf603 100644
--- a/VisualEditor.hooks.php
+++ b/VisualEditor.hooks.php
@@ -381,7 +381,6 @@
                $pageLanguage = $out->getTitle()->getPageLanguage();
 
                $vars['wgVisualEditor'] = array(
-                       'isPageWatched' => $out->getUser()->isWatched( 
$out->getTitle() ),
                        'pageLanguageCode' => $pageLanguage->getHtmlCode(),
                        'pageLanguageDir' => $pageLanguage->getDir(),
                        'svgMaxSize' => $out->getConfig()->get( 'SVGMaxSize' ),
diff --git a/modules/ve-mw/init/targets/ve.init.mw.ViewPageTarget.js 
b/modules/ve-mw/init/targets/ve.init.mw.ViewPageTarget.js
index 735e171..e389d82 100644
--- a/modules/ve-mw/init/targets/ve.init.mw.ViewPageTarget.js
+++ b/modules/ve-mw/init/targets/ve.init.mw.ViewPageTarget.js
@@ -254,6 +254,18 @@
                this.originalEditondbclick = mw.user.options.get( 
'editondblclick' );
                mw.user.options.set( 'editondblclick', 0 );
 
+               $( '#ca-watch, #ca-unwatch' ).on( 'watchpage.mw', function ( e, 
actionPerformed ) {
+                       if ( !this.active && !this.activating ) {
+                               return;
+                       }
+                       this.$checkboxes.filter( '#wpWatchthis' )
+                               .prop( 'checked',
+                                       mw.user.options.get( 'watchdefault' ) ||
+                                       ( mw.user.options.get( 'watchcreations' 
) && !this.pageExists ) ||
+                                       actionPerformed === 'watch'
+                               );
+               }.bind( this ) );
+
                // User interface changes
                this.transformPage();
                this.hideReadOnlyContent();
diff --git a/modules/ve-mw/init/ve.init.mw.Target.js 
b/modules/ve-mw/init/ve.init.mw.Target.js
index c1a425f..c1ffb09 100644
--- a/modules/ve-mw/init/ve.init.mw.Target.js
+++ b/modules/ve-mw/init/ve.init.mw.Target.js
@@ -438,7 +438,7 @@
                                .prop( 'checked',
                                        mw.user.options.get( 'watchdefault' ) ||
                                        ( mw.user.options.get( 'watchcreations' 
) && !this.pageExists ) ||
-                                       mw.config.get( 'wgVisualEditor' 
).isPageWatched
+                                       data.watched
                                );
 
                this.baseTimeStamp = data.basetimestamp;

-- 
To view, visit https://gerrit.wikimedia.org/r/182336
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I1df2836f8ba4ae647bfb142513e5de9f32ecd0fe
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/VisualEditor
Gerrit-Branch: master
Gerrit-Owner: Alex Monk <[email protected]>

_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to