db2634b37c0d5d01df1992f126eceec5ee2fd6af kate Wed Apr 19 08:24:21 2017 -0700 Fix map box problem causing some clicks to misfire. refs #18736 diff --git src/hg/hgTracks/barChartTrack.c src/hg/hgTracks/barChartTrack.c index b74c1f5..b9dfa75 100644 --- src/hg/hgTracks/barChartTrack.c +++ src/hg/hgTracks/barChartTrack.c @@ -635,31 +635,31 @@ tg->track, mapItemName, buf); return; } int topGraphHeight = barChartHeight(tg, itemInfo); topGraphHeight = max(topGraphHeight, tl.fontHeight); // label int yZero = topGraphHeight + y - 1; // yZero is bottom of graph // add map box to item label int labelWidth = mgFontStringWidth(tl.font, itemName); getItemX(start, end, &x1, &x2); if (x1-labelWidth <= insideX) labelWidth = 0; // map over label int itemHeight = itemInfo->height; -mapBoxHc(hvg, start, end, x1-labelWidth, y, labelWidth, itemHeight-3, +mapBoxHc(hvg, itemStart, itemEnd, x1-labelWidth, y, labelWidth, itemHeight-3, tg->track, mapItemName, itemName); // add maps to category bars struct barChartCategory *categs = getCategories(tg); struct barChartCategory *categ = NULL; int barWidth = barChartBarWidth(tg); int padding = barChartPadding(); double maxMedian = ((struct barChartTrack *)tg->extraUiData)->maxMedian; int graphX = barChartX(bed); if (graphX < 0) return; // x1 is at left of graph x1 = insideX + graphX; @@ -670,31 +670,31 @@ for (categ = categs; categ != NULL; categ = categ->next, i++) { if (!filterCategory(tg, categ->name)) continue; double expScore = bed->expScores[i]; int height = valToClippedHeight(expScore, maxMedian, viewMax, barChartMaxHeight(), extras->doLogTransform); mapBoxHc(hvg, itemStart, itemEnd, x1, yZero-height, barWidth, height, tg->track, mapItemName, barChartMapText(tg, categ, expScore)); x1 = x1 + barWidth + padding; } // map over background of chart int graphWidth = barChartWidth(tg, itemInfo); getItemX(start, end, &x1, &x2); -mapBoxHc(hvg, start, end, x1, y, graphWidth, itemHeight-3, +mapBoxHc(hvg, itemStart, itemEnd, x1, y, graphWidth, itemHeight-3, tg->track, mapItemName, itemName); } /* This is lifted nearly wholesale from gtexGene track. Could be shared */ static int getBarChartHeight(void *item) { struct barChartItem *itemInfo = (struct barChartItem *)item; assert(itemInfo->height != 0); return itemInfo->height; } /* This is lifted nearly wholesale from gtexGene track. Could be shared */ static int barChartTotalHeight(struct track *tg, enum trackVisibility vis)