Sbisson has uploaded a new change for review.

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

Change subject: Make summary top border solid and full width
......................................................................

Make summary top border solid and full width

Change-Id: I0d68bd1bd523d6d82f5956a534d51ea7bb4345ab
---
M handlebars/compiled/flow_block_topic.handlebars.php
M handlebars/compiled/flow_block_topiclist.handlebars.php
M handlebars/flow_topic_titlebar.partial.handlebars
M handlebars/flow_topic_titlebar_content.partial.handlebars
M modules/styles/board/topic/summary.less
M modules/styles/board/topic/titlebar.less
6 files changed, 138 insertions(+), 128 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/Flow 
refs/changes/57/223857/1

diff --git a/handlebars/compiled/flow_block_topic.handlebars.php 
b/handlebars/compiled/flow_block_topic.handlebars.php
index d5074d4..a0bfd9d 100644
--- a/handlebars/compiled/flow_block_topic.handlebars.php
+++ b/handlebars/compiled/flow_block_topic.handlebars.php
@@ -37,7 +37,35 @@
 '.$sp.'' : '').'</div>
 ';},'flow_topic_moderation_flag' => function ($cx, $in, $sp) {return 
''.$sp.'<span class="mw-ui-icon mw-ui-icon-before'.LCRun3::hbch($cx, 'ifCond', 
array(array(((isset($in['moderateState']) && is_array($in)) ? 
$in['moderateState'] : null),'===','lock'),array()), $in, false, function($cx, 
$in)use($sp){return ' mw-ui-icon-check';}).''.LCRun3::hbch($cx, 'ifCond', 
array(array(((isset($in['moderateState']) && is_array($in)) ? 
$in['moderateState'] : null),'===','hide'),array()), $in, false, function($cx, 
$in)use($sp){return ' mw-ui-icon-flag';}).''.LCRun3::hbch($cx, 'ifCond', 
array(array(((isset($in['moderateState']) && is_array($in)) ? 
$in['moderateState'] : null),'===','delete'),array()), $in, false, 
function($cx, $in)use($sp){return ' mw-ui-icon-remove';}).'"></span>
 ';},'flow_post_moderation_state' => function ($cx, $in, $sp) {return 
''.$sp.'<span class="plainlinks">'.((LCRun3::ifvar($cx, 
((isset($in['replyToId']) && is_array($in)) ? $in['replyToId'] : null))) ? 
''.LCRun3::ch($cx, 'l10nParse', array(array(LCRun3::ch($cx, 'concat', 
array(array('flow-',((isset($in['moderateState']) && is_array($in)) ? 
$in['moderateState'] : null),'-post-content'),array()), 
'raw'),((isset($in['moderator']['name']) && is_array($in['moderator'])) ? 
$in['moderator']['name'] : null),((isset($in['links']['topic-history']['url']) 
&& is_array($in['links']['topic-history'])) ? 
$in['links']['topic-history']['url'] : null)),array()), 'encq').'' : 
''.LCRun3::ch($cx, 'l10nParse', array(array(LCRun3::ch($cx, 'concat', 
array(array('flow-',((isset($in['moderateState']) && is_array($in)) ? 
$in['moderateState'] : null),'-title-content'),array()), 
'raw'),((isset($in['moderator']['name']) && is_array($in['moderator'])) ? 
$in['moderator']['name'] : null),((isset($in['links']['topic-history']['url']) 
&& is_array($in['links']['topic-history'])) ? 
$in['links']['topic-history']['url'] : null)),array()), 'encq').'').'</span>
-';},'flow_topic_titlebar_summary' => function ($cx, $in, $sp) {return 
''.$sp.'<div class="flow-topic-summary-container '.((LCRun3::ifvar($cx, 
((isset($in['isLocked']) && is_array($in)) ? $in['isLocked'] : null))) ? 
'flow-click-interactive' : '').'"
+';},'flow_topic_titlebar_content' => function ($cx, $in, $sp) {return 
''.$sp.'<div class="flow-topic-titlebar-container">
+'.$sp.'    <h2 class="flow-topic-title flow-load-interactive 
'.((LCRun3::ifvar($cx, ((isset($in['isLocked']) && is_array($in)) ? 
$in['isLocked'] : null))) ? 'flow-click-interactive' : '').'"
+'.$sp.'        
data-flow-topic-title="'.htmlentities((string)((isset($in['content']['content'])
 && is_array($in['content'])) ? $in['content']['content'] : null), ENT_QUOTES, 
'UTF-8').'"
+'.$sp.'        data-flow-load-handler="topicTitle"
+'.$sp.''.((LCRun3::ifvar($cx, ((isset($in['isLocked']) && is_array($in)) ? 
$in['isLocked'] : null))) ? '        
data-flow-interactive-handler="collapserCollapsibleToggle"
+'.$sp.'' : '').'            >
+'.$sp.'                '.((LCRun3::ifvar($cx, ((isset($in['isLocked']) && 
is_array($in)) ? $in['isLocked'] : null))) ? '<span class="mw-ui-icon 
mw-ui-icon-before mw-ui-icon-check"></span> ' : '').''.LCRun3::ch($cx, 
'escapeContent', array(array(((isset($in['content']['format']) && 
is_array($in['content'])) ? $in['content']['format'] : 
null),((isset($in['content']['content']) && is_array($in['content'])) ? 
$in['content']['content'] : null)),array()), 'encq').'</h2>
+'.$sp.'    <div class="flow-topic-meta">
+'.$sp.''.((LCRun3::ifvar($cx, ((isset($in['isLocked']) && is_array($in)) ? 
$in['isLocked'] : null))) ? '<a class="expand-collapse-posts-link 
flow-click-interactive"
+'.$sp.'               href="javascript:void(0);"
+'.$sp.'               title="'.LCRun3::ch($cx, 'l10n', 
array(array('flow-show-comments-title',((isset($in['reply_count']) && 
is_array($in)) ? $in['reply_count'] : null)),array()), 'encq').'"
+'.$sp.'               data-collapsed-title="'.LCRun3::ch($cx, 'l10n', 
array(array('flow-show-comments-title',((isset($in['reply_count']) && 
is_array($in)) ? $in['reply_count'] : null)),array()), 'encq').'"
+'.$sp.'               data-expanded-title="'.LCRun3::ch($cx, 'l10n', 
array(array('flow-hide-comments-title',((isset($in['reply_count']) && 
is_array($in)) ? $in['reply_count'] : null)),array()), 'encq').'"
+'.$sp.'               
data-flow-interactive-handler="collapserCollapsibleToggle"
+'.$sp.'                    >'.LCRun3::ch($cx, 'l10n', 
array(array('flow-topic-comments',((isset($in['reply_count']) && is_array($in)) 
? $in['reply_count'] : null)),array()), 'encq').'</a>' : ''.LCRun3::ch($cx, 
'l10n', array(array('flow-topic-comments',((isset($in['reply_count']) && 
is_array($in)) ? $in['reply_count'] : null)),array()), 'encq').'').' &bull;
+'.$sp.'
+'.$sp.'        <a 
href="'.htmlentities((string)((isset($in['links']['topic-history']['url']) && 
is_array($in['links']['topic-history'])) ? $in['links']['topic-history']['url'] 
: null), ENT_QUOTES, 'UTF-8').'" class="flow-timestamp-anchor">
+'.$sp.''.((LCRun3::ifvar($cx, ((isset($in['last_updated']) && is_array($in)) ? 
$in['last_updated'] : null))) ? '                               
'.LCRun3::ch($cx, 'timestamp', array(array(((isset($in['last_updated']) && 
is_array($in)) ? $in['last_updated'] : null)),array()), 'encq').'
+'.$sp.'' : '                           '.LCRun3::ch($cx, 'uuidTimestamp', 
array(array(((isset($in['postId']) && is_array($in)) ? $in['postId'] : 
null)),array()), 'encq').'
+'.$sp.'').'        </a>
+'.$sp.'    </div>
+'.$sp.''.((LCRun3::ifvar($cx, ((isset($in['isModeratedNotLocked']) && 
is_array($in)) ? $in['isModeratedNotLocked'] : null))) ? '        <div 
class="flow-moderated-topic-title 
flow-ui-text-truncated">'.htmlentities((string)((isset($in['noop']) && 
is_array($in)) ? $in['noop'] : null), ENT_QUOTES, 'UTF-8').''.LCRun3::p($cx, 
'flow_topic_moderation_flag', array(array($in),array())).'
+'.$sp.''.LCRun3::p($cx, 'flow_post_moderation_state', 
array(array($in),array()), '                     ').'        </div>
+'.$sp.'        <div class="flow-moderated-topic-reason">
+'.$sp.'                        '.LCRun3::ch($cx, 'l10n', 
array(array('flow-topic-moderated-reason-prefix'),array()), 'encq').'
+'.$sp.'                        '.LCRun3::ch($cx, 'escapeContent', 
array(array(((isset($in['moderateReason']['format']) && 
is_array($in['moderateReason'])) ? $in['moderateReason']['format'] : 
null),((isset($in['moderateReason']['content']) && 
is_array($in['moderateReason'])) ? $in['moderateReason']['content'] : 
null)),array()), 'encq').'
+'.$sp.'        </div>
+'.$sp.'' : '').'    <span class="flow-reply-count"><span 
class="flow-reply-count-number">'.htmlentities((string)((isset($in['reply_count'])
 && is_array($in)) ? $in['reply_count'] : null), ENT_QUOTES, 
'UTF-8').'</span></span>
+'.$sp.'</div>';},'flow_topic_titlebar_summary' => function ($cx, $in, $sp) 
{return ''.$sp.'<div class="flow-topic-summary-container '.((LCRun3::ifvar($cx, 
((isset($in['isLocked']) && is_array($in)) ? $in['isLocked'] : null))) ? 
'flow-click-interactive' : '').'"
 '.$sp.''.((LCRun3::ifvar($cx, ((isset($in['isLocked']) && is_array($in)) ? 
$in['isLocked'] : null))) ? '               
data-flow-interactive-handler="collapserCollapsibleToggle"
 '.$sp.'' : '').'               >
 '.$sp.''.LCRun3::p($cx, 'flow_errors', array(array($in),array()), '    
').''.((LCRun3::ifvar($cx, ((isset($in['revision']['content']['content']) && 
is_array($in['revision']['content'])) ? $in['revision']['content']['content'] : 
null))) ? '                <div class="flow-topic-summary">
@@ -51,35 +79,7 @@
 '.$sp.'                        </div>
 '.$sp.'                </div>
 '.$sp.'' : '').'</div>
-';},'flow_topic_titlebar_content' => function ($cx, $in, $sp) {return 
''.$sp.'<h2 class="flow-topic-title flow-load-interactive 
'.((LCRun3::ifvar($cx, ((isset($in['isLocked']) && is_array($in)) ? 
$in['isLocked'] : null))) ? 'flow-click-interactive' : '').'"
-'.$sp.'        
data-flow-topic-title="'.htmlentities((string)((isset($in['content']['content'])
 && is_array($in['content'])) ? $in['content']['content'] : null), ENT_QUOTES, 
'UTF-8').'"
-'.$sp.'        data-flow-load-handler="topicTitle"
-'.$sp.''.((LCRun3::ifvar($cx, ((isset($in['isLocked']) && is_array($in)) ? 
$in['isLocked'] : null))) ? '       
data-flow-interactive-handler="collapserCollapsibleToggle"
-'.$sp.'' : '').'               >
-'.$sp.'        '.((LCRun3::ifvar($cx, ((isset($in['isLocked']) && 
is_array($in)) ? $in['isLocked'] : null))) ? '<span class="mw-ui-icon 
mw-ui-icon-before mw-ui-icon-check"></span> ' : '').''.LCRun3::ch($cx, 
'escapeContent', array(array(((isset($in['content']['format']) && 
is_array($in['content'])) ? $in['content']['format'] : 
null),((isset($in['content']['content']) && is_array($in['content'])) ? 
$in['content']['content'] : null)),array()), 'encq').'</h2>
-'.$sp.'<div class="flow-topic-meta">
-'.$sp.''.((LCRun3::ifvar($cx, ((isset($in['isLocked']) && is_array($in)) ? 
$in['isLocked'] : null))) ? '<a class="expand-collapse-posts-link 
flow-click-interactive"
-'.$sp.'                   href="javascript:void(0);"
-'.$sp.'                   title="'.LCRun3::ch($cx, 'l10n', 
array(array('flow-show-comments-title',((isset($in['reply_count']) && 
is_array($in)) ? $in['reply_count'] : null)),array()), 'encq').'"
-'.$sp.'                   data-collapsed-title="'.LCRun3::ch($cx, 'l10n', 
array(array('flow-show-comments-title',((isset($in['reply_count']) && 
is_array($in)) ? $in['reply_count'] : null)),array()), 'encq').'"
-'.$sp.'                   data-expanded-title="'.LCRun3::ch($cx, 'l10n', 
array(array('flow-hide-comments-title',((isset($in['reply_count']) && 
is_array($in)) ? $in['reply_count'] : null)),array()), 'encq').'"
-'.$sp.'                   
data-flow-interactive-handler="collapserCollapsibleToggle"
-'.$sp.'                                >'.LCRun3::ch($cx, 'l10n', 
array(array('flow-topic-comments',((isset($in['reply_count']) && is_array($in)) 
? $in['reply_count'] : null)),array()), 'encq').'</a>' : ''.LCRun3::ch($cx, 
'l10n', array(array('flow-topic-comments',((isset($in['reply_count']) && 
is_array($in)) ? $in['reply_count'] : null)),array()), 'encq').'').' &bull;
-'.$sp.'
-'.$sp.'        <a 
href="'.htmlentities((string)((isset($in['links']['topic-history']['url']) && 
is_array($in['links']['topic-history'])) ? $in['links']['topic-history']['url'] 
: null), ENT_QUOTES, 'UTF-8').'" class="flow-timestamp-anchor">
-'.$sp.''.((LCRun3::ifvar($cx, ((isset($in['last_updated']) && is_array($in)) ? 
$in['last_updated'] : null))) ? '                       '.LCRun3::ch($cx, 
'timestamp', array(array(((isset($in['last_updated']) && is_array($in)) ? 
$in['last_updated'] : null)),array()), 'encq').'
-'.$sp.'' : '                   '.LCRun3::ch($cx, 'uuidTimestamp', 
array(array(((isset($in['postId']) && is_array($in)) ? $in['postId'] : 
null)),array()), 'encq').'
-'.$sp.'').'    </a>
-'.$sp.'</div>
-'.$sp.''.((LCRun3::ifvar($cx, ((isset($in['isModeratedNotLocked']) && 
is_array($in)) ? $in['isModeratedNotLocked'] : null))) ? '       <div 
class="flow-moderated-topic-title 
flow-ui-text-truncated">'.htmlentities((string)((isset($in['noop']) && 
is_array($in)) ? $in['noop'] : null), ENT_QUOTES, 'UTF-8').''.LCRun3::p($cx, 
'flow_topic_moderation_flag', array(array($in),array())).'
-'.$sp.''.LCRun3::p($cx, 'flow_post_moderation_state', 
array(array($in),array()), '             ').'    </div>
-'.$sp.'        <div class="flow-moderated-topic-reason">
-'.$sp.'                '.LCRun3::ch($cx, 'l10n', 
array(array('flow-topic-moderated-reason-prefix'),array()), 'encq').'
-'.$sp.'                '.LCRun3::ch($cx, 'escapeContent', 
array(array(((isset($in['moderateReason']['format']) && 
is_array($in['moderateReason'])) ? $in['moderateReason']['format'] : 
null),((isset($in['moderateReason']['content']) && 
is_array($in['moderateReason'])) ? $in['moderateReason']['content'] : 
null)),array()), 'encq').'
-'.$sp.'        </div>
-'.$sp.'' : '').'<span class="flow-reply-count"><span 
class="flow-reply-count-number">'.htmlentities((string)((isset($in['reply_count'])
 && is_array($in)) ? $in['reply_count'] : null), ENT_QUOTES, 
'UTF-8').'</span></span>
-'.$sp.'
-'.$sp.''.LCRun3::p($cx, 'flow_topic_titlebar_summary', 
array(array(((isset($in['summary']) && is_array($in)) ? $in['summary'] : 
null)),array('isLocked'=>((isset($in['isLocked']) && is_array($in)) ? 
$in['isLocked'] : null)))).'';},'flow_topic_titlebar_watch' => function ($cx, 
$in, $sp) {return ''.$sp.'<div class="flow-topic-watchlist flow-watch-link">
+';},'flow_topic_titlebar_watch' => function ($cx, $in, $sp) {return 
''.$sp.'<div class="flow-topic-watchlist flow-watch-link">
 '.$sp.''.LCRun3::p($cx, 'flow_errors', array(array($in),array()), '    ').'
 '.$sp.'        <a href="'.((LCRun3::ifvar($cx, ((isset($in['isWatched']) && 
is_array($in)) ? $in['isWatched'] : null))) ? 
''.htmlentities((string)((isset($in['links']['unwatch-topic']['url']) && 
is_array($in['links']['unwatch-topic'])) ? $in['links']['unwatch-topic']['url'] 
: null), ENT_QUOTES, 'UTF-8').'' : 
''.htmlentities((string)((isset($in['links']['watch-topic']['url']) && 
is_array($in['links']['watch-topic'])) ? $in['links']['watch-topic']['url'] : 
null), ENT_QUOTES, 'UTF-8').'').'"
 '.$sp.'           class="mw-ui-anchor mw-ui-hovericon mw-ui-constructive 
'.((!LCRun3::ifvar($cx, ((isset($in['isWatched']) && is_array($in)) ? 
$in['isWatched'] : null))) ? 'mw-ui-quiet' : '').'
@@ -177,8 +177,7 @@
 '.$sp.'                                   
href="'.htmlentities((string)((isset($in['actions']['unlock']['url']) && 
is_array($in['actions']['unlock'])) ? $in['actions']['unlock']['url'] : null), 
ENT_QUOTES, 'UTF-8').'"
 '.$sp.'                                   
title="'.htmlentities((string)((isset($in['actions']['unlock']['title']) && 
is_array($in['actions']['unlock'])) ? $in['actions']['unlock']['title'] : 
null), ENT_QUOTES, 'UTF-8').'">'.((LCRun3::ifvar($cx, 
((isset($in['moderationIcons']) && is_array($in)) ? $in['moderationIcons'] : 
null))) ? '<span class="mw-ui-icon mw-ui-icon-before 
mw-ui-icon-ongoingConversation 
mw-ui-icon-ongoingConversation-progressive-hover"></span> ' : 
'').''.LCRun3::ch($cx, 'l10n', array(array(LCRun3::ch($cx, 'concat', 
array(array('flow-',((isset($in['moderationType']) && is_array($in)) ? 
$in['moderationType'] : null),'-action-unlock-topic'),array()), 
'raw')),array()), 'encq').'</a>'.htmlentities((string)((isset($in['noop']) && 
is_array($in)) ? $in['noop'] : null), ENT_QUOTES, 'UTF-8').'</li>' : 
'').'';}).'</section>
 ';},'flow_topic_titlebar' => function ($cx, $in, $sp) {return ''.$sp.'<div 
class="flow-topic-titlebar">
-'.$sp.''.LCRun3::p($cx, 'flow_topic_titlebar_content', 
array(array($in),array()), '    ').'
-'.$sp.''.((LCRun3::ifvar($cx, ((isset($in['watchable']) && is_array($in)) ? 
$in['watchable'] : null))) ? ''.LCRun3::p($cx, 'flow_topic_titlebar_watch', 
array(array($in),array()), '           ').'' : '').'   <div class="flow-menu 
flow-menu-hoverable">
+'.$sp.''.LCRun3::p($cx, 'flow_topic_titlebar_content', 
array(array($in),array()), '    ').''.LCRun3::p($cx, 
'flow_topic_titlebar_summary', array(array(((isset($in['summary']) && 
is_array($in)) ? $in['summary'] : 
null)),array('isLocked'=>((isset($in['isLocked']) && is_array($in)) ? 
$in['isLocked'] : null))), ' ').''.((LCRun3::ifvar($cx, 
((isset($in['watchable']) && is_array($in)) ? $in['watchable'] : null))) ? 
''.LCRun3::p($cx, 'flow_topic_titlebar_watch', array(array($in),array()), '     
          ').'' : '').'   <div class="flow-menu flow-menu-hoverable">
 '.$sp.'                <div class="flow-menu-js-drop"><a 
href="javascript:void(0);"><span class="mw-ui-icon mw-ui-icon-before 
mw-ui-icon-ellipsis"></span></a></div>
 '.$sp.'                <ul class="mw-ui-button-container flow-list">
 '.$sp.''.LCRun3::p($cx, 'flow_moderation_actions_list', 
array(array($in),array('moderationType'=>'topic','moderationTarget'=>'title','moderationTemplate'=>'topic','moderationContainerClass'=>'flow-menu','moderationMwUiClass'=>'mw-ui-button','moderationIcons'=>true)),
 '                  ').'            </ul>
diff --git a/handlebars/compiled/flow_block_topiclist.handlebars.php 
b/handlebars/compiled/flow_block_topiclist.handlebars.php
index ef80eac..7803995 100644
--- a/handlebars/compiled/flow_block_topiclist.handlebars.php
+++ b/handlebars/compiled/flow_block_topiclist.handlebars.php
@@ -87,7 +87,35 @@
 '.$sp.'        </form>
 '.$sp.'' : '').'';},'flow_topic_moderation_flag' => function ($cx, $in, $sp) 
{return ''.$sp.'<span class="mw-ui-icon mw-ui-icon-before'.LCRun3::hbch($cx, 
'ifCond', array(array(((isset($in['moderateState']) && is_array($in)) ? 
$in['moderateState'] : null),'===','lock'),array()), $in, false, function($cx, 
$in)use($sp){return ' mw-ui-icon-check';}).''.LCRun3::hbch($cx, 'ifCond', 
array(array(((isset($in['moderateState']) && is_array($in)) ? 
$in['moderateState'] : null),'===','hide'),array()), $in, false, function($cx, 
$in)use($sp){return ' mw-ui-icon-flag';}).''.LCRun3::hbch($cx, 'ifCond', 
array(array(((isset($in['moderateState']) && is_array($in)) ? 
$in['moderateState'] : null),'===','delete'),array()), $in, false, 
function($cx, $in)use($sp){return ' mw-ui-icon-remove';}).'"></span>
 ';},'flow_post_moderation_state' => function ($cx, $in, $sp) {return 
''.$sp.'<span class="plainlinks">'.((LCRun3::ifvar($cx, 
((isset($in['replyToId']) && is_array($in)) ? $in['replyToId'] : null))) ? 
''.LCRun3::ch($cx, 'l10nParse', array(array(LCRun3::ch($cx, 'concat', 
array(array('flow-',((isset($in['moderateState']) && is_array($in)) ? 
$in['moderateState'] : null),'-post-content'),array()), 
'raw'),((isset($in['moderator']['name']) && is_array($in['moderator'])) ? 
$in['moderator']['name'] : null),((isset($in['links']['topic-history']['url']) 
&& is_array($in['links']['topic-history'])) ? 
$in['links']['topic-history']['url'] : null)),array()), 'encq').'' : 
''.LCRun3::ch($cx, 'l10nParse', array(array(LCRun3::ch($cx, 'concat', 
array(array('flow-',((isset($in['moderateState']) && is_array($in)) ? 
$in['moderateState'] : null),'-title-content'),array()), 
'raw'),((isset($in['moderator']['name']) && is_array($in['moderator'])) ? 
$in['moderator']['name'] : null),((isset($in['links']['topic-history']['url']) 
&& is_array($in['links']['topic-history'])) ? 
$in['links']['topic-history']['url'] : null)),array()), 'encq').'').'</span>
-';},'flow_topic_titlebar_summary' => function ($cx, $in, $sp) {return 
''.$sp.'<div class="flow-topic-summary-container '.((LCRun3::ifvar($cx, 
((isset($in['isLocked']) && is_array($in)) ? $in['isLocked'] : null))) ? 
'flow-click-interactive' : '').'"
+';},'flow_topic_titlebar_content' => function ($cx, $in, $sp) {return 
''.$sp.'<div class="flow-topic-titlebar-container">
+'.$sp.'    <h2 class="flow-topic-title flow-load-interactive 
'.((LCRun3::ifvar($cx, ((isset($in['isLocked']) && is_array($in)) ? 
$in['isLocked'] : null))) ? 'flow-click-interactive' : '').'"
+'.$sp.'        
data-flow-topic-title="'.htmlentities((string)((isset($in['content']['content'])
 && is_array($in['content'])) ? $in['content']['content'] : null), ENT_QUOTES, 
'UTF-8').'"
+'.$sp.'        data-flow-load-handler="topicTitle"
+'.$sp.''.((LCRun3::ifvar($cx, ((isset($in['isLocked']) && is_array($in)) ? 
$in['isLocked'] : null))) ? '        
data-flow-interactive-handler="collapserCollapsibleToggle"
+'.$sp.'' : '').'            >
+'.$sp.'                '.((LCRun3::ifvar($cx, ((isset($in['isLocked']) && 
is_array($in)) ? $in['isLocked'] : null))) ? '<span class="mw-ui-icon 
mw-ui-icon-before mw-ui-icon-check"></span> ' : '').''.LCRun3::ch($cx, 
'escapeContent', array(array(((isset($in['content']['format']) && 
is_array($in['content'])) ? $in['content']['format'] : 
null),((isset($in['content']['content']) && is_array($in['content'])) ? 
$in['content']['content'] : null)),array()), 'encq').'</h2>
+'.$sp.'    <div class="flow-topic-meta">
+'.$sp.''.((LCRun3::ifvar($cx, ((isset($in['isLocked']) && is_array($in)) ? 
$in['isLocked'] : null))) ? '<a class="expand-collapse-posts-link 
flow-click-interactive"
+'.$sp.'               href="javascript:void(0);"
+'.$sp.'               title="'.LCRun3::ch($cx, 'l10n', 
array(array('flow-show-comments-title',((isset($in['reply_count']) && 
is_array($in)) ? $in['reply_count'] : null)),array()), 'encq').'"
+'.$sp.'               data-collapsed-title="'.LCRun3::ch($cx, 'l10n', 
array(array('flow-show-comments-title',((isset($in['reply_count']) && 
is_array($in)) ? $in['reply_count'] : null)),array()), 'encq').'"
+'.$sp.'               data-expanded-title="'.LCRun3::ch($cx, 'l10n', 
array(array('flow-hide-comments-title',((isset($in['reply_count']) && 
is_array($in)) ? $in['reply_count'] : null)),array()), 'encq').'"
+'.$sp.'               
data-flow-interactive-handler="collapserCollapsibleToggle"
+'.$sp.'                    >'.LCRun3::ch($cx, 'l10n', 
array(array('flow-topic-comments',((isset($in['reply_count']) && is_array($in)) 
? $in['reply_count'] : null)),array()), 'encq').'</a>' : ''.LCRun3::ch($cx, 
'l10n', array(array('flow-topic-comments',((isset($in['reply_count']) && 
is_array($in)) ? $in['reply_count'] : null)),array()), 'encq').'').' &bull;
+'.$sp.'
+'.$sp.'        <a 
href="'.htmlentities((string)((isset($in['links']['topic-history']['url']) && 
is_array($in['links']['topic-history'])) ? $in['links']['topic-history']['url'] 
: null), ENT_QUOTES, 'UTF-8').'" class="flow-timestamp-anchor">
+'.$sp.''.((LCRun3::ifvar($cx, ((isset($in['last_updated']) && is_array($in)) ? 
$in['last_updated'] : null))) ? '                               
'.LCRun3::ch($cx, 'timestamp', array(array(((isset($in['last_updated']) && 
is_array($in)) ? $in['last_updated'] : null)),array()), 'encq').'
+'.$sp.'' : '                           '.LCRun3::ch($cx, 'uuidTimestamp', 
array(array(((isset($in['postId']) && is_array($in)) ? $in['postId'] : 
null)),array()), 'encq').'
+'.$sp.'').'        </a>
+'.$sp.'    </div>
+'.$sp.''.((LCRun3::ifvar($cx, ((isset($in['isModeratedNotLocked']) && 
is_array($in)) ? $in['isModeratedNotLocked'] : null))) ? '        <div 
class="flow-moderated-topic-title 
flow-ui-text-truncated">'.htmlentities((string)((isset($in['noop']) && 
is_array($in)) ? $in['noop'] : null), ENT_QUOTES, 'UTF-8').''.LCRun3::p($cx, 
'flow_topic_moderation_flag', array(array($in),array())).'
+'.$sp.''.LCRun3::p($cx, 'flow_post_moderation_state', 
array(array($in),array()), '                     ').'        </div>
+'.$sp.'        <div class="flow-moderated-topic-reason">
+'.$sp.'                        '.LCRun3::ch($cx, 'l10n', 
array(array('flow-topic-moderated-reason-prefix'),array()), 'encq').'
+'.$sp.'                        '.LCRun3::ch($cx, 'escapeContent', 
array(array(((isset($in['moderateReason']['format']) && 
is_array($in['moderateReason'])) ? $in['moderateReason']['format'] : 
null),((isset($in['moderateReason']['content']) && 
is_array($in['moderateReason'])) ? $in['moderateReason']['content'] : 
null)),array()), 'encq').'
+'.$sp.'        </div>
+'.$sp.'' : '').'    <span class="flow-reply-count"><span 
class="flow-reply-count-number">'.htmlentities((string)((isset($in['reply_count'])
 && is_array($in)) ? $in['reply_count'] : null), ENT_QUOTES, 
'UTF-8').'</span></span>
+'.$sp.'</div>';},'flow_topic_titlebar_summary' => function ($cx, $in, $sp) 
{return ''.$sp.'<div class="flow-topic-summary-container '.((LCRun3::ifvar($cx, 
((isset($in['isLocked']) && is_array($in)) ? $in['isLocked'] : null))) ? 
'flow-click-interactive' : '').'"
 '.$sp.''.((LCRun3::ifvar($cx, ((isset($in['isLocked']) && is_array($in)) ? 
$in['isLocked'] : null))) ? '               
data-flow-interactive-handler="collapserCollapsibleToggle"
 '.$sp.'' : '').'               >
 '.$sp.''.LCRun3::p($cx, 'flow_errors', array(array($in),array()), '    
').''.((LCRun3::ifvar($cx, ((isset($in['revision']['content']['content']) && 
is_array($in['revision']['content'])) ? $in['revision']['content']['content'] : 
null))) ? '                <div class="flow-topic-summary">
@@ -101,35 +129,7 @@
 '.$sp.'                        </div>
 '.$sp.'                </div>
 '.$sp.'' : '').'</div>
-';},'flow_topic_titlebar_content' => function ($cx, $in, $sp) {return 
''.$sp.'<h2 class="flow-topic-title flow-load-interactive 
'.((LCRun3::ifvar($cx, ((isset($in['isLocked']) && is_array($in)) ? 
$in['isLocked'] : null))) ? 'flow-click-interactive' : '').'"
-'.$sp.'        
data-flow-topic-title="'.htmlentities((string)((isset($in['content']['content'])
 && is_array($in['content'])) ? $in['content']['content'] : null), ENT_QUOTES, 
'UTF-8').'"
-'.$sp.'        data-flow-load-handler="topicTitle"
-'.$sp.''.((LCRun3::ifvar($cx, ((isset($in['isLocked']) && is_array($in)) ? 
$in['isLocked'] : null))) ? '       
data-flow-interactive-handler="collapserCollapsibleToggle"
-'.$sp.'' : '').'               >
-'.$sp.'        '.((LCRun3::ifvar($cx, ((isset($in['isLocked']) && 
is_array($in)) ? $in['isLocked'] : null))) ? '<span class="mw-ui-icon 
mw-ui-icon-before mw-ui-icon-check"></span> ' : '').''.LCRun3::ch($cx, 
'escapeContent', array(array(((isset($in['content']['format']) && 
is_array($in['content'])) ? $in['content']['format'] : 
null),((isset($in['content']['content']) && is_array($in['content'])) ? 
$in['content']['content'] : null)),array()), 'encq').'</h2>
-'.$sp.'<div class="flow-topic-meta">
-'.$sp.''.((LCRun3::ifvar($cx, ((isset($in['isLocked']) && is_array($in)) ? 
$in['isLocked'] : null))) ? '<a class="expand-collapse-posts-link 
flow-click-interactive"
-'.$sp.'                   href="javascript:void(0);"
-'.$sp.'                   title="'.LCRun3::ch($cx, 'l10n', 
array(array('flow-show-comments-title',((isset($in['reply_count']) && 
is_array($in)) ? $in['reply_count'] : null)),array()), 'encq').'"
-'.$sp.'                   data-collapsed-title="'.LCRun3::ch($cx, 'l10n', 
array(array('flow-show-comments-title',((isset($in['reply_count']) && 
is_array($in)) ? $in['reply_count'] : null)),array()), 'encq').'"
-'.$sp.'                   data-expanded-title="'.LCRun3::ch($cx, 'l10n', 
array(array('flow-hide-comments-title',((isset($in['reply_count']) && 
is_array($in)) ? $in['reply_count'] : null)),array()), 'encq').'"
-'.$sp.'                   
data-flow-interactive-handler="collapserCollapsibleToggle"
-'.$sp.'                                >'.LCRun3::ch($cx, 'l10n', 
array(array('flow-topic-comments',((isset($in['reply_count']) && is_array($in)) 
? $in['reply_count'] : null)),array()), 'encq').'</a>' : ''.LCRun3::ch($cx, 
'l10n', array(array('flow-topic-comments',((isset($in['reply_count']) && 
is_array($in)) ? $in['reply_count'] : null)),array()), 'encq').'').' &bull;
-'.$sp.'
-'.$sp.'        <a 
href="'.htmlentities((string)((isset($in['links']['topic-history']['url']) && 
is_array($in['links']['topic-history'])) ? $in['links']['topic-history']['url'] 
: null), ENT_QUOTES, 'UTF-8').'" class="flow-timestamp-anchor">
-'.$sp.''.((LCRun3::ifvar($cx, ((isset($in['last_updated']) && is_array($in)) ? 
$in['last_updated'] : null))) ? '                       '.LCRun3::ch($cx, 
'timestamp', array(array(((isset($in['last_updated']) && is_array($in)) ? 
$in['last_updated'] : null)),array()), 'encq').'
-'.$sp.'' : '                   '.LCRun3::ch($cx, 'uuidTimestamp', 
array(array(((isset($in['postId']) && is_array($in)) ? $in['postId'] : 
null)),array()), 'encq').'
-'.$sp.'').'    </a>
-'.$sp.'</div>
-'.$sp.''.((LCRun3::ifvar($cx, ((isset($in['isModeratedNotLocked']) && 
is_array($in)) ? $in['isModeratedNotLocked'] : null))) ? '       <div 
class="flow-moderated-topic-title 
flow-ui-text-truncated">'.htmlentities((string)((isset($in['noop']) && 
is_array($in)) ? $in['noop'] : null), ENT_QUOTES, 'UTF-8').''.LCRun3::p($cx, 
'flow_topic_moderation_flag', array(array($in),array())).'
-'.$sp.''.LCRun3::p($cx, 'flow_post_moderation_state', 
array(array($in),array()), '             ').'    </div>
-'.$sp.'        <div class="flow-moderated-topic-reason">
-'.$sp.'                '.LCRun3::ch($cx, 'l10n', 
array(array('flow-topic-moderated-reason-prefix'),array()), 'encq').'
-'.$sp.'                '.LCRun3::ch($cx, 'escapeContent', 
array(array(((isset($in['moderateReason']['format']) && 
is_array($in['moderateReason'])) ? $in['moderateReason']['format'] : 
null),((isset($in['moderateReason']['content']) && 
is_array($in['moderateReason'])) ? $in['moderateReason']['content'] : 
null)),array()), 'encq').'
-'.$sp.'        </div>
-'.$sp.'' : '').'<span class="flow-reply-count"><span 
class="flow-reply-count-number">'.htmlentities((string)((isset($in['reply_count'])
 && is_array($in)) ? $in['reply_count'] : null), ENT_QUOTES, 
'UTF-8').'</span></span>
-'.$sp.'
-'.$sp.''.LCRun3::p($cx, 'flow_topic_titlebar_summary', 
array(array(((isset($in['summary']) && is_array($in)) ? $in['summary'] : 
null)),array('isLocked'=>((isset($in['isLocked']) && is_array($in)) ? 
$in['isLocked'] : null)))).'';},'flow_topic_titlebar_watch' => function ($cx, 
$in, $sp) {return ''.$sp.'<div class="flow-topic-watchlist flow-watch-link">
+';},'flow_topic_titlebar_watch' => function ($cx, $in, $sp) {return 
''.$sp.'<div class="flow-topic-watchlist flow-watch-link">
 '.$sp.''.LCRun3::p($cx, 'flow_errors', array(array($in),array()), '    ').'
 '.$sp.'        <a href="'.((LCRun3::ifvar($cx, ((isset($in['isWatched']) && 
is_array($in)) ? $in['isWatched'] : null))) ? 
''.htmlentities((string)((isset($in['links']['unwatch-topic']['url']) && 
is_array($in['links']['unwatch-topic'])) ? $in['links']['unwatch-topic']['url'] 
: null), ENT_QUOTES, 'UTF-8').'' : 
''.htmlentities((string)((isset($in['links']['watch-topic']['url']) && 
is_array($in['links']['watch-topic'])) ? $in['links']['watch-topic']['url'] : 
null), ENT_QUOTES, 'UTF-8').'').'"
 '.$sp.'           class="mw-ui-anchor mw-ui-hovericon mw-ui-constructive 
'.((!LCRun3::ifvar($cx, ((isset($in['isWatched']) && is_array($in)) ? 
$in['isWatched'] : null))) ? 'mw-ui-quiet' : '').'
@@ -227,8 +227,7 @@
 '.$sp.'                                   
href="'.htmlentities((string)((isset($in['actions']['unlock']['url']) && 
is_array($in['actions']['unlock'])) ? $in['actions']['unlock']['url'] : null), 
ENT_QUOTES, 'UTF-8').'"
 '.$sp.'                                   
title="'.htmlentities((string)((isset($in['actions']['unlock']['title']) && 
is_array($in['actions']['unlock'])) ? $in['actions']['unlock']['title'] : 
null), ENT_QUOTES, 'UTF-8').'">'.((LCRun3::ifvar($cx, 
((isset($in['moderationIcons']) && is_array($in)) ? $in['moderationIcons'] : 
null))) ? '<span class="mw-ui-icon mw-ui-icon-before 
mw-ui-icon-ongoingConversation 
mw-ui-icon-ongoingConversation-progressive-hover"></span> ' : 
'').''.LCRun3::ch($cx, 'l10n', array(array(LCRun3::ch($cx, 'concat', 
array(array('flow-',((isset($in['moderationType']) && is_array($in)) ? 
$in['moderationType'] : null),'-action-unlock-topic'),array()), 
'raw')),array()), 'encq').'</a>'.htmlentities((string)((isset($in['noop']) && 
is_array($in)) ? $in['noop'] : null), ENT_QUOTES, 'UTF-8').'</li>' : 
'').'';}).'</section>
 ';},'flow_topic_titlebar' => function ($cx, $in, $sp) {return ''.$sp.'<div 
class="flow-topic-titlebar">
-'.$sp.''.LCRun3::p($cx, 'flow_topic_titlebar_content', 
array(array($in),array()), '    ').'
-'.$sp.''.((LCRun3::ifvar($cx, ((isset($in['watchable']) && is_array($in)) ? 
$in['watchable'] : null))) ? ''.LCRun3::p($cx, 'flow_topic_titlebar_watch', 
array(array($in),array()), '           ').'' : '').'   <div class="flow-menu 
flow-menu-hoverable">
+'.$sp.''.LCRun3::p($cx, 'flow_topic_titlebar_content', 
array(array($in),array()), '    ').''.LCRun3::p($cx, 
'flow_topic_titlebar_summary', array(array(((isset($in['summary']) && 
is_array($in)) ? $in['summary'] : 
null)),array('isLocked'=>((isset($in['isLocked']) && is_array($in)) ? 
$in['isLocked'] : null))), ' ').''.((LCRun3::ifvar($cx, 
((isset($in['watchable']) && is_array($in)) ? $in['watchable'] : null))) ? 
''.LCRun3::p($cx, 'flow_topic_titlebar_watch', array(array($in),array()), '     
          ').'' : '').'   <div class="flow-menu flow-menu-hoverable">
 '.$sp.'                <div class="flow-menu-js-drop"><a 
href="javascript:void(0);"><span class="mw-ui-icon mw-ui-icon-before 
mw-ui-icon-ellipsis"></span></a></div>
 '.$sp.'                <ul class="mw-ui-button-container flow-list">
 '.$sp.''.LCRun3::p($cx, 'flow_moderation_actions_list', 
array(array($in),array('moderationType'=>'topic','moderationTarget'=>'title','moderationTemplate'=>'topic','moderationContainerClass'=>'flow-menu','moderationMwUiClass'=>'mw-ui-button','moderationIcons'=>true)),
 '                  ').'            </ul>
diff --git a/handlebars/flow_topic_titlebar.partial.handlebars 
b/handlebars/flow_topic_titlebar.partial.handlebars
index 8edcf77..69b95f8 100644
--- a/handlebars/flow_topic_titlebar.partial.handlebars
+++ b/handlebars/flow_topic_titlebar.partial.handlebars
@@ -1,6 +1,6 @@
 <div class="flow-topic-titlebar">
        {{> flow_topic_titlebar_content}}
-
+       {{> flow_topic_titlebar_summary summary isLocked=isLocked}}
        {{#if watchable}}
                {{> flow_topic_titlebar_watch}}
        {{/if}}
diff --git a/handlebars/flow_topic_titlebar_content.partial.handlebars 
b/handlebars/flow_topic_titlebar_content.partial.handlebars
index 1bca656..f41f022 100644
--- a/handlebars/flow_topic_titlebar_content.partial.handlebars
+++ b/handlebars/flow_topic_titlebar_content.partial.handlebars
@@ -1,44 +1,44 @@
-<h2 class="flow-topic-title flow-load-interactive {{#if 
isLocked}}flow-click-interactive{{/if}}"
-       data-flow-topic-title="{{content.content}}"
-       data-flow-load-handler="topicTitle"
-       {{#if isLocked}}
-       data-flow-interactive-handler="collapserCollapsibleToggle"
-       {{/if}}
-               >
-       {{#if isLocked}}<span class="mw-ui-icon mw-ui-icon-before 
mw-ui-icon-check"></span> {{/if}}
-       {{~escapeContent content.format content.content~}}
-</h2>
-<div class="flow-topic-meta">
-       {{#if isLocked~}}
-               <a class="expand-collapse-posts-link flow-click-interactive"
-                  href="javascript:void(0);"
-                  title="{{l10n "flow-show-comments-title" reply_count}}"
-                  data-collapsed-title="{{l10n "flow-show-comments-title" 
reply_count}}"
-                  data-expanded-title="{{l10n "flow-hide-comments-title" 
reply_count}}"
-                  data-flow-interactive-handler="collapserCollapsibleToggle"
-                               >{{l10n "flow-topic-comments" reply_count}}</a>
-       {{~else~}}
-               {{l10n "flow-topic-comments" reply_count}}
-       {{~/if}} &bull;
-
-       <a href="{{links.topic-history.url}}" class="flow-timestamp-anchor">
-               {{#if last_updated}}
-                       {{timestamp last_updated}}
-               {{else}}
-                       {{uuidTimestamp postId}}
+<div class="flow-topic-titlebar-container">
+    <h2 class="flow-topic-title flow-load-interactive {{#if 
isLocked}}flow-click-interactive{{/if}}"
+        data-flow-topic-title="{{content.content}}"
+        data-flow-load-handler="topicTitle"
+               {{#if isLocked}}
+        data-flow-interactive-handler="collapserCollapsibleToggle"
                {{/if}}
-       </a>
-</div>
-{{#if isModeratedNotLocked}}
-       <div class="flow-moderated-topic-title flow-ui-text-truncated">
-               {{~noop~}}{{> flow_topic_moderation_flag}}
-               {{> flow_post_moderation_state}}
-       </div>
-       <div class="flow-moderated-topic-reason">
-               {{l10n "flow-topic-moderated-reason-prefix"}}
-               {{escapeContent moderateReason.format moderateReason.content}}
-       </div>
-{{/if}}
-<span class="flow-reply-count"><span 
class="flow-reply-count-number">{{reply_count}}</span></span>
+            >
+               {{#if isLocked}}<span class="mw-ui-icon mw-ui-icon-before 
mw-ui-icon-check"></span> {{/if}}
+               {{~escapeContent content.format content.content~}}
+    </h2>
+    <div class="flow-topic-meta">
+               {{#if isLocked~}}
+            <a class="expand-collapse-posts-link flow-click-interactive"
+               href="javascript:void(0);"
+               title="{{l10n "flow-show-comments-title" reply_count}}"
+               data-collapsed-title="{{l10n "flow-show-comments-title" 
reply_count}}"
+               data-expanded-title="{{l10n "flow-hide-comments-title" 
reply_count}}"
+               data-flow-interactive-handler="collapserCollapsibleToggle"
+                    >{{l10n "flow-topic-comments" reply_count}}</a>
+                       {{~else~}}
+                       {{l10n "flow-topic-comments" reply_count}}
+               {{~/if}} &bull;
 
-{{> flow_topic_titlebar_summary summary isLocked=isLocked}}
+        <a href="{{links.topic-history.url}}" class="flow-timestamp-anchor">
+                       {{#if last_updated}}
+                               {{timestamp last_updated}}
+                       {{else}}
+                               {{uuidTimestamp postId}}
+                       {{/if}}
+        </a>
+    </div>
+       {{#if isModeratedNotLocked}}
+        <div class="flow-moderated-topic-title flow-ui-text-truncated">
+                       {{~noop~}}{{> flow_topic_moderation_flag}}
+                       {{> flow_post_moderation_state}}
+        </div>
+        <div class="flow-moderated-topic-reason">
+                       {{l10n "flow-topic-moderated-reason-prefix"}}
+                       {{escapeContent moderateReason.format 
moderateReason.content}}
+        </div>
+       {{/if}}
+    <span class="flow-reply-count"><span 
class="flow-reply-count-number">{{reply_count}}</span></span>
+</div>
\ No newline at end of file
diff --git a/modules/styles/board/topic/summary.less 
b/modules/styles/board/topic/summary.less
index b5d7c72..dbd812f 100644
--- a/modules/styles/board/topic/summary.less
+++ b/modules/styles/board/topic/summary.less
@@ -3,21 +3,23 @@
 @import 'flow.helpers';
 @import 'flow.variables';
 
-.flow-topic-summary {
-       border-top: 1px dotted @colorGrayLight;
-       margin-top: .33em;
-       padding-top: .33em;
+.flow-topic-summary-container {
+       .flow-topic-summary {
+               border-top: 1px solid @colorGrayLight;
+               margin-top: .33em;
+               padding-top: .33em;
 
-       .flow-topic-summary-author {
-               font-weight: bold;
-               color: @colorTextLight
-       }
+               .flow-topic-summary-author {
+                       font-weight: bold;
+                       color: @colorTextLight
+               }
 
-       .flow-topic-summary-content {
-               p {
-                       &:last-of-type {
-                               // Remove margin-bottom from last p in summary, 
to remove excess bottom whitespace
-                               margin-bottom: 0;
+               .flow-topic-summary-content {
+                       p {
+                               &:last-of-type {
+                                       // Remove margin-bottom from last p in 
summary, to remove excess bottom whitespace
+                                       margin-bottom: 0;
+                               }
                        }
                }
        }
diff --git a/modules/styles/board/topic/titlebar.less 
b/modules/styles/board/topic/titlebar.less
index 9114a44..8305cf4 100644
--- a/modules/styles/board/topic/titlebar.less
+++ b/modules/styles/board/topic/titlebar.less
@@ -6,7 +6,7 @@
 // Show that the topic titlebar is clickable
 .flow-topic-titlebar {
        position: relative;
-       padding: .5em .75em;
+       padding: .5em 0;
        background: @colorGrayLightest;
        border-radius: 3px;
        outline: none;
@@ -81,14 +81,24 @@
 // MEDIA QUERIES
 @media all and (min-width: @small) {
        .flow-topic-titlebar {
-               .mw-content-ltr & {
-                       /* @noflip */
-                       padding: 1em (@topicIndent + 1) 1em @topicIndent;
+               padding-top: 1em;
+               padding-bottom: 1em;
+
+               .flow-topic-titlebar-container,
+               .flow-topic-summary-container {
+
+                       .mw-content-ltr & {
+                               /* @noflip */
+                               padding: 0 (@topicIndent + 1) 0 @topicIndent;
+                       }
+
+                       .mw-content-rtl & {
+                               /* @noflip */
+                               padding: 0 @topicIndent 0 (@topicIndent + 1);
+                       }
+
                }
 
-               .mw-content-rtl & {
-                       /* @noflip */
-                       padding: 1em @topicIndent 1em (@topicIndent + 1);
-               }
+
        }
 }

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

Gerrit-MessageType: newchange
Gerrit-Change-Id: I0d68bd1bd523d6d82f5956a534d51ea7bb4345ab
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/Flow
Gerrit-Branch: master
Gerrit-Owner: Sbisson <[email protected]>

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

Reply via email to