parent
							
								
									47a6024c80
								
							
						
					
					
						commit
						8a0e048674
					
				
					 1 changed files with 12 additions and 5 deletions
				
			
		| 
						 | 
					@ -4143,10 +4143,14 @@ pub const Editor = struct {
 | 
				
			||||||
        var root = b.root;
 | 
					        var root = b.root;
 | 
				
			||||||
        for (self.cursels.items) |*cursel_| if (cursel_.*) |*cursel| {
 | 
					        for (self.cursels.items) |*cursel_| if (cursel_.*) |*cursel| {
 | 
				
			||||||
            if (cursel.selection) |*sel| {
 | 
					            if (cursel.selection) |*sel| {
 | 
				
			||||||
 | 
					                const chars_begin, const chars_end = if (sel.is_reversed())
 | 
				
			||||||
 | 
					                    .{ chars_right, chars_left }
 | 
				
			||||||
 | 
					                else
 | 
				
			||||||
 | 
					                    .{ chars_left, chars_right };
 | 
				
			||||||
                var begin: CurSel = .{ .cursor = sel.begin };
 | 
					                var begin: CurSel = .{ .cursor = sel.begin };
 | 
				
			||||||
                root = try self.insert(root, &begin, chars_left, b.allocator);
 | 
					                root = try self.insert(root, &begin, chars_begin, b.allocator);
 | 
				
			||||||
                var end: CurSel = .{ .cursor = sel.end };
 | 
					                var end: CurSel = .{ .cursor = sel.end };
 | 
				
			||||||
                root = try self.insert(root, &end, chars_right, b.allocator);
 | 
					                root = try self.insert(root, &end, chars_end, b.allocator);
 | 
				
			||||||
                sel.end.move_left(root, self.metrics) catch {};
 | 
					                sel.end.move_left(root, self.metrics) catch {};
 | 
				
			||||||
            } else blk: {
 | 
					            } else blk: {
 | 
				
			||||||
                const egc, _, _ = cursel.cursor.egc_at(root, self.metrics) catch {
 | 
					                const egc, _, _ = cursel.cursor.egc_at(root, self.metrics) catch {
 | 
				
			||||||
| 
						 | 
					@ -4180,11 +4184,14 @@ pub const Editor = struct {
 | 
				
			||||||
        var root = b.root;
 | 
					        var root = b.root;
 | 
				
			||||||
        for (self.cursels.items) |*cursel_| if (cursel_.*) |*cursel| {
 | 
					        for (self.cursels.items) |*cursel_| if (cursel_.*) |*cursel| {
 | 
				
			||||||
            if (cursel.selection) |*sel| {
 | 
					            if (cursel.selection) |*sel| {
 | 
				
			||||||
 | 
					                const chars_begin, const chars_end = if (sel.is_reversed())
 | 
				
			||||||
 | 
					                    .{ chars_right, chars_left }
 | 
				
			||||||
 | 
					                else
 | 
				
			||||||
 | 
					                    .{ chars_left, chars_right };
 | 
				
			||||||
                var begin: CurSel = .{ .cursor = sel.begin };
 | 
					                var begin: CurSel = .{ .cursor = sel.begin };
 | 
				
			||||||
                root = try self.insert(root, &begin, chars_left, b.allocator);
 | 
					                root = try self.insert(root, &begin, chars_begin, b.allocator);
 | 
				
			||||||
                var end: CurSel = .{ .cursor = sel.end };
 | 
					                var end: CurSel = .{ .cursor = sel.end };
 | 
				
			||||||
                root = try self.insert(root, &end, chars_right, b.allocator);
 | 
					                root = try self.insert(root, &end, chars_end, b.allocator);
 | 
				
			||||||
                sel.begin.move_left(root, self.metrics) catch {};
 | 
					 | 
				
			||||||
                cursel.disable_selection(root, self.metrics);
 | 
					                cursel.disable_selection(root, self.metrics);
 | 
				
			||||||
            } else blk: {
 | 
					            } else blk: {
 | 
				
			||||||
                const egc, _, _ = cursel.cursor.egc_at(root, self.metrics) catch {
 | 
					                const egc, _, _ = cursel.cursor.egc_at(root, self.metrics) catch {
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue