<commit_before>iD.Map = function() {
    var connection, history,
        dimensions = [],
        dispatch = d3.dispatch('move', 'drawn'),
        projection = d3.geo.mercator().scale(1024),
        roundedProjection = iD.svg.RoundProjection(projection),
        zoom = d3.behavior.zoom()
            .translate(projection.translate())
            .scale(projection.scale())
            .scaleExtent([1024, 256 * Math.pow(2, 24)])
            .on('zoom', zoomPan),
        dblclickEnabled = true,
        fastEnabled = true,
        transformStart,
        minzoom = 0,
        background = iD.Background()
            .projection(projection),
        transformProp = iD.util.prefixCSSProperty('Transform'),
        points = iD.svg.Points(roundedProjection),
        vertices = iD.svg.Vertices(roundedProjection),
        lines = iD.svg.Lines(roundedProjection),
        areas = iD.svg.Areas(roundedProjection),
        multipolygons = iD.svg.Multipolygons(roundedProjection),
        midpoints = iD.svg.Midpoints(roundedProjection),
        labels = iD.svg.Labels(roundedProjection),
        tail = d3.tail(),
        surface, tilegroup;

    function map(selection) {
        tilegroup = selection.append('div')
            .attr('id', 'tile-g');

        var supersurface = selection.append('div')
            .style('position', 'absolute')
            .call(zoom);

        surface = supersurface.append('svg')
            .on('mousedown.zoom', function() {
                if (d3.event.button == 2) {
                    d3.event.stopPropagation();
                }
            }, true)
            .attr('id', 'surface')
            .call(iD.svg.Surface());


        map.size(selection.size());<commit_msg>Fix opera dragging<commit_after>iD.Map = function() {
    var connection, history,
        dimensions = [],
        dispatch = d3.dispatch('move', 'drawn'),
        projection = d3.geo.mercator().scale(1024),
        roundedProjection = iD.svg.RoundProjection(projection),
        zoom = d3.behavior.zoom()
            .translate(projection.translate())
            .scale(projection.scale())
            .scaleExtent([1024, 256 * Math.pow(2, 24)])
            .on('zoom', zoomPan),
        dblclickEnabled = true,
        fastEnabled = true,
        transformStart,
        minzoom = 0,
        background = iD.Background()
            .projection(projection),
        transformProp = iD.util.prefixCSSProperty('Transform'),
        points = iD.svg.Points(roundedProjection),
        vertices = iD.svg.Vertices(roundedProjection),
        lines = iD.svg.Lines(roundedProjection),
        areas = iD.svg.Areas(roundedProjection),
        multipolygons = iD.svg.Multipolygons(roundedProjection),
        midpoints = iD.svg.Midpoints(roundedProjection),
        labels = iD.svg.Labels(roundedProjection),
        tail = d3.tail(),
        surface, tilegroup;

    function map(selection) {
        selection.call(zoom);

        tilegroup = selection.append('div')
            .attr('id', 'tile-g');

        var supersurface = selection.append('div')
            .style('position', 'absolute')

        surface = supersurface.append('svg')
            .on('mousedown.zoom', function() {
                if (d3.event.button == 2) {
                    d3.event.stopPropagation();
                }
            }, true)
            .attr('id', 'surface')
            .call(iD.svg.Surface());


        map.size(selection.size());
{'fraction_non_alphanumeric': 0.13775065387968613, 'fraction_numerical': 0.012786980528916013, 'mean_word_length': 2.0568383658969807, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '4514497', 'n_tokens_mistral': 1038, 'n_tokens_neox': 979, 'n_words': 157}