forked from qt-creator/qt-creator
QmlProfiler: unify centering on items and do it only once per click
Change-Id: Ic228a825aebe3d24eeb5b1d84c58499bae4ae69b Reviewed-by: Kai Koehne <kai.koehne@digia.com>
This commit is contained in:
@@ -177,7 +177,6 @@ Rectangle {
|
|||||||
view.selectedItem = itemIndex;
|
view.selectedItem = itemIndex;
|
||||||
if (itemIndex !== -1) {
|
if (itemIndex !== -1) {
|
||||||
view.selectionLocked = true;
|
view.selectionLocked = true;
|
||||||
recenterOnItem(modelIndex, itemIndex);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
lockItemSelection = false;
|
lockItemSelection = false;
|
||||||
@@ -339,19 +338,7 @@ Rectangle {
|
|||||||
rangeDetails.setLocation(qmlProfilerModelProxy.getEventLocation(selectedModel, selectedItem));
|
rangeDetails.setLocation(qmlProfilerModelProxy.getEventLocation(selectedModel, selectedItem));
|
||||||
|
|
||||||
// center view (horizontally)
|
// center view (horizontally)
|
||||||
var windowLength = view.endTime - view.startTime;
|
recenterOnItem(selectedModel, selectedItem);
|
||||||
var eventStartTime = qmlProfilerModelProxy.getStartTime(selectedModel, selectedItem);
|
|
||||||
var eventEndTime = eventStartTime +
|
|
||||||
qmlProfilerModelProxy.getDuration(selectedModel, selectedItem);
|
|
||||||
|
|
||||||
if (eventEndTime < view.startTime || eventStartTime > view.endTime) {
|
|
||||||
var center = (eventStartTime + eventEndTime)/2;
|
|
||||||
var from = Math.min(qmlProfilerModelProxy.traceEndTime()-windowLength,
|
|
||||||
Math.max(0, Math.floor(center - windowLength/2)));
|
|
||||||
|
|
||||||
zoomControl.setRange(from, from + windowLength);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!lockItemSelection) {
|
if (!lockItemSelection) {
|
||||||
lockItemSelection = true;
|
lockItemSelection = true;
|
||||||
// update in other views
|
// update in other views
|
||||||
|
|||||||
Reference in New Issue
Block a user