Changeset View
Changeset View
Standalone View
Standalone View
webroot/rsrc/js/core/behavior-phabricator-nav.js
Show All 11 Lines | |||||
*/ | */ | ||||
JX.behavior('phabricator-nav', function(config) { | JX.behavior('phabricator-nav', function(config) { | ||||
var content = JX.$(config.contentID); | var content = JX.$(config.contentID); | ||||
var local = JX.$(config.localID); | var local = JX.$(config.localID); | ||||
var main = JX.$(config.mainID); | var main = JX.$(config.mainID); | ||||
var drag = JX.$(config.dragID); | var drag = JX.$(config.dragID); | ||||
var background = JX.$(config.backgroundID); | |||||
// - Flexible Navigation Column ------------------------------------------------ | // - Flexible Navigation Column ------------------------------------------------ | ||||
var dragging; | var dragging; | ||||
var track; | var track; | ||||
Show All 11 Lines | track = [ | ||||
{ | { | ||||
element: local, | element: local, | ||||
parameter: 'width', | parameter: 'width', | ||||
start: JX.Vector.getDim(local).x, | start: JX.Vector.getDim(local).x, | ||||
width: JX.Vector.getDim(local).x, | width: JX.Vector.getDim(local).x, | ||||
minWidth: 1 | minWidth: 1 | ||||
}, | }, | ||||
{ | { | ||||
element: background, | |||||
parameter: 'width', | |||||
start: JX.Vector.getDim(background).x, | |||||
minWidth: 1 | |||||
}, | |||||
{ | |||||
element: drag, | element: drag, | ||||
parameter: 'left', | parameter: 'left', | ||||
start: JX.$V(drag).x | start: JX.$V(drag).x | ||||
}, | }, | ||||
{ | { | ||||
element: content, | element: content, | ||||
parameter: 'marginLeft', | parameter: 'marginLeft', | ||||
start: parseInt(getComputedStyle(content).marginLeft, 10), | start: parseInt(getComputedStyle(content).marginLeft, 10), | ||||
Show All 39 Lines | JX.Stratcom.listen('mouseup', null, function() { | ||||
} | } | ||||
JX.DOM.alterClass(document.body, 'jx-drag-col', false); | JX.DOM.alterClass(document.body, 'jx-drag-col', false); | ||||
dragging = false; | dragging = false; | ||||
}); | }); | ||||
function resetdrag() { | function resetdrag() { | ||||
local.style.width = ''; | local.style.width = ''; | ||||
background.style.width = ''; | |||||
drag.style.left = ''; | drag.style.left = ''; | ||||
content.style.marginLeft = ''; | content.style.marginLeft = ''; | ||||
} | } | ||||
var collapsed = config.collapsed; | var collapsed = config.collapsed; | ||||
JX.Stratcom.listen('differential-filetree-toggle', null, function() { | JX.Stratcom.listen('differential-filetree-toggle', null, function() { | ||||
collapsed = !collapsed; | collapsed = !collapsed; | ||||
JX.DOM.alterClass(main, 'has-local-nav', !collapsed); | JX.DOM.alterClass(main, 'has-local-nav', !collapsed); | ||||
Show All 39 Lines |