Bug 33201 - UI: Highlight (not select) current row and column in spreadsheet
Summary: UI: Highlight (not select) current row and column in spreadsheet
Status: NEW
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Calc (show other bugs)
(earliest affected)
Inherited From OOo
Hardware: All All
: high enhancement
Assignee: Not Assigned
URL: http://ask.libreoffice.org/en/questio...
Whiteboard: feature
: 78682 93702 129545 (view as bug list)
Depends on:
Blocks: Calc-Enhancements
  Show dependency treegraph
Reported: 2011-01-17 02:33 UTC by Thomas
Modified: 2022-04-30 18:06 UTC (History)
34 users (show)

See Also:
Crash report or crash signature:
Regression By:

Mockup of what this feature would look like. (102.22 KB, image/jpeg)
2014-09-23 10:41 UTC, Owen Genat (retired)
Transparent rectangle for the current row & column (5.26 KB, image/png)
2020-08-25 20:49 UTC, Dan Dascalescu

Note You need to log in before you can comment on or make changes to this bug.
Description Thomas 2011-01-17 02:33:45 UTC
On large screens in large spreadsheets, it is hard to track which cells are in the same row (or column). It should be at least optional that all cells in the same column/row should be highlighted, e.g. by being darker, lighter, or with some additional semi-transparent color.
Note: This is not the same as selecting rows/columns via Ctrl+Space or Shift+Space. My request is optical only, it does not change the content or functionality of a spreadsheet.
Comment 1 Kohei Yoshida 2011-01-21 07:09:34 UTC
Someone else had requested this before.  In fact, there was even a patch (though not implemented correctly).

I'll keep this meanwhile.
Comment 2 Thomas 2012-01-25 02:06:54 UTC
Happy anniversary!
Kohei: Any news about this bug?
If someone else requested this before, is there are a bug report on this? Where can I get the patch you are speaking of?
Comment 3 Joel Madero 2012-09-07 16:57:45 UTC
Any progress on this Kohei? This would be a really useful feature, I was actually looking for it in MS Office at my work today thinking "man that would be useful" from what I can see, they don't have it, it would be awesome if we did :) Let me know if there's something I can do to help - if you link to the old patch I might be able to see what I can do with it
Comment 4 Kohei Yoshida 2012-09-07 16:58:43 UTC
Unassign.  No time for this.
Comment 5 Joel Madero 2012-09-07 19:44:37 UTC
Thanks for the update. After I'm done moving measurements I might take a stab at this, until then I'll try to find someone else to pawn it off on :)
Comment 6 Joel Madero 2014-05-16 19:43:26 UTC
*** Bug 78682 has been marked as a duplicate of this bug. ***
Comment 7 Owen Genat (retired) 2014-09-23 02:54:27 UTC
Related AskLO thread: http://ask.libreoffice.org/en/question/40153/
Comment 8 Joel Madero 2014-09-23 03:53:23 UTC
Apparently this is quite difficult to implement...which is unfortunate. Maybe a decent GSoC idea for the next round
Comment 9 Owen Genat (retired) 2014-09-23 10:39:06 UTC
(In reply to comment #7)
> Related AskLO thread: http://ask.libreoffice.org/en/question/40153/

Sorry. That was a duplicate thread. Original AskLO thread and LO forum thread (which contains a clear mockup) added to URL field. My comments are info only (for clarity of others) and not a desire to see this issue pushed. @Joel, shame about the difficulty all the same as it does seem a decent feature.
Comment 10 Owen Genat (retired) 2014-09-23 10:41:55 UTC
Created attachment 106721 [details]
Mockup of what this feature would look like.

Mockup from LO forum thread added for ease of use.
Comment 11 putt1ck 2015-02-02 12:05:17 UTC
This would be a really great feature and plenty of users would vote for it if they only knew how they could - or that this RFE existed...
Comment 12 alejsek 2015-02-21 03:40:59 UTC
It is obvious no author of excel/calc really uses it for serious work with big tables, otherwise this feature would already be there. Sorry for OT, but it is like debating if we need graphical representation for cursor. In the end, You can just start writing and see where it is, or You can just click with mouse to ensure its location, so where is the problem?
Comment 13 Joel Madero 2015-02-21 07:12:19 UTC
Please refrain from adding useless comments that add nothing to getting the enhancement moving forward. http://joelmadero.wordpress.com/2014/10/11/user-expectations-and-the-reality-of-our-community/?sn=c&c=326#comment-326

Of course - if you have the skills (and aren't just demanding other people to put in time) - patches more than welcome
Comment 14 raal 2015-08-31 08:33:17 UTC
*** Bug 93702 has been marked as a duplicate of this bug. ***
Comment 15 marcostinez 2015-10-05 11:08:32 UTC
Just want to state that I personally think it would be a useful feature, if possible even with some sort of options menu where you can chose the kind of highlighting and whether to select the complete row column (like a cross +) or only the two sides related to the row column (L-form).
I am aware, depending on the implied work, this might be more or less prioritized, but it's one of those things that might make a positive impression on potential new users, encouraging LO usage.
Comment 16 Thomas 2016-01-18 06:02:14 UTC
Happy 5th anniversary!
So, most agree that this is a good idea. Anyone actually working on it?
Comment 17 Joel Madero 2016-01-18 07:22:02 UTC
No - we don't give ETAs or guarantees. A volunteer with some pretty serious skills would have to take an interest and put in the time. Talking to one of the experienced developers...it's no trivial task. It might never be implemented, really just depends on if a volunteer wants to do it.
Comment 18 Romano Giannetti 2016-10-09 15:33:00 UTC
It seems a quite popular request even in Excel, where there is a (commercial) extension set that does it, and a series of hacks with VBA. 

Just saying --- I'd love to have the skill for implementing it, so I will not whine ;-).

See https://www.extendoffice.com/documents/excel/1494-excel-highlight-active-row-and-column.html
Comment 19 Igal 2017-10-31 20:19:11 UTC
I can take a swing at this issue if given a starting point by someone more familiar with the project.

Are there any instructions on how to set up the project in an IDE like Eclipse or IntelliJ IDEA?
Comment 20 Dan Dascalescu 2017-11-26 04:19:12 UTC
Sad to hear it's not a trivial task to highlight the current row.
Comment 21 Jan Pospíšil 2017-12-09 16:20:46 UTC
I completely agree, the VBA macro for excel is something like 25 lines of code, pretty sparse code In fact it just dynamically sets the background color property of all cells in active row/column. Is it really so difficult to implement something similar in LibreOffice that it takes several years?
Comment 22 horus 2018-09-01 10:58:22 UTC
Oh, how I really hope time travel would be real.  Because I am pretty sure that given 30 years, LO or OO or whatever succeeds them will have this function implemented natively without the use of macro.  Or maybe Microsoft Office would be totally free and there's no need to use OO or LO.  So I just need to go to 2048 and grap a copy of the software!
Comment 23 business 2018-11-03 09:49:39 UTC
I am not a programmer, but this lack of a feature has always baffled me for its seemingly simple solution, and the lack of it has made working from a spreadsheet much more tedious (when calling hundreds of phone numbers from a contact list, for example.) I've never understood why this is such a difficult task, considering so many other programs, like gnucash, are able to highlight (or put a temporary border) around the row and/or column last clicked on. 

It sees to me, and this is for anyone who does have the notion for programming it in, that it should be as simple as duplicating the routines in the select row/column action that cause the selected row/column to highlight. It is obvious this routine analyzes the position of the cell, figures out which column and row it is in, determines which cell in that row is the first one in the sheet that is actively being displayed on the screen, and then paints a background color in that originating cell, and continues +1 until all actively displayed cells in the row/column are painted. 

Couldn't a duplicate of this routine be created for a highlighting function (turned on and off in a menu item?) The only difference would be using a different color. This routine also wouldn't select the first cell in the column/row you select, as you would be selecting a cell first, and calling the routine to highlight second.
Comment 24 cpohle 2019-01-15 13:59:00 UTC
Comment 25 Rich 2019-04-03 20:14:20 UTC
I have a vision problem that makes going across a row difficult some days to follow. This is just what I need. While I cannot code I would be willing to test such a patch.
Comment 26 Ben 2019-07-29 11:54:02 UTC
+1 Similar to Rich with the vision. Having the highlight would be of a big help.
Comment 27 Gaurang 2019-10-06 07:10:54 UTC
+1 i really need this feature.
Comment 28 m.a.riosv 2019-12-22 18:12:13 UTC
*** Bug 129545 has been marked as a duplicate of this bug. ***
Comment 29 Konstantin 2020-01-15 09:16:40 UTC
+1 similar to Rich and Ben
Comment 30 pshute 2020-02-22 23:49:15 UTC
I can understand this might be difficult to implement. A compromise could be a function to momentarily select the row and/or column of the current cell.

It could be a shortcut you press to highlight the row and/or column for one second, or it could highlight the row/column for an instant each time you press the left/up or right/down arrow.
Comment 31 lore 2020-04-04 09:51:48 UTC
Instead of changing the behaviour of the software can this perhaps be implemented with a sort of modifier keys? 

The user selects the cell and the behaviour is unchanged but if the user uses key+click to select the cell that highlights the row and the column. 

Would this be easier to implement?

Sorry for not being able to bring a bigger contribution to this.
Comment 32 ilpaleo 2020-05-29 10:29:31 UTC
Comment 33 bugzilla2 2020-06-27 11:24:56 UTC
Hello there...

Seems like no user of OOo 1 has read this bug so far, because that feature was already in OOo (or was it Star Calc?) before. And yes, it was EXTREMELY helpfull!! I think it vanished when Windows XP arrived, because there was a problem with the new Theme back then. But that is ages ago ;)

Count me in to the people that want that feature (back) in LibO. It really is so hard to copy lines to paper by hand, if there is no visual highlight of the current line/row... I started to select the line that I'm working on right now, but thats more of a workaround, not a permanent solution...
Comment 34 bugzilla2 2020-07-10 12:29:12 UTC
Feature still missing in
Comment 35 Dan Dascalescu 2020-08-25 20:49:29 UTC
Created attachment 164684 [details]
Transparent rectangle for the current row & column
Comment 36 Dan Dascalescu 2020-08-25 20:49:47 UTC
Maybe there's an easy way to implement this in v7!

I saw in the LO 7 release notes[1] that there's now support for transparent text in Writer and other components.

Can that code be reused to apply a transparent rectangle over the current row and column, as illustrated at https://superuser.com/questions/899479/how-to-highlight-whole-row-and-column-under-cursor-in-openoffice-calc?

[1]: https://wiki.documentfoundation.org/ReleaseNotes/7.0
Comment 37 Dan Dascalescu 2020-08-28 07:22:55 UTC
Actually, this SHOULD be easy to implement - just do exactly what clicking a row or column header does (or Shift+Space), but with a different color.
Comment 38 Wojciech 2020-10-01 09:15:09 UTC

I also need this feature for work with long and wide spreadsheets.

It seems such feature is present in Windows version? Or is it only system feature there? I am a Linux user (KDE), have only seen it by other people.
Comment 39 bugzilla2 2020-10-01 09:58:49 UTC
(In reply to Wojciech from comment #38)
> It seems such feature is present in Windows version?

I wish that would be so... Don't worry, Linux users are not disadvantaged here, there is currently no highlight, on any OS.
Comment 40 bugzilla2 2020-10-01 10:03:25 UTC
(In reply to Dan Dascalescu from comment #37)
> Actually, this SHOULD be easy to implement - just do exactly what clicking a
> row or column header does (or Shift+Space), but with a different color.

Thanks for the hint on Shift + Space. That makes the situation already a bit better ;)
Comment 41 Tamás Éliás 2021-06-20 09:21:52 UTC
All. This feature request is more then ten years old now. It is funny that we are still in the same shame.

+1, this should be an extremely helpful feature.

CTRL+SPACE and Shift+Space does not work for me on 

Version: / LibreOffice Community
Build ID: 10(Build:2)
CPU threads: 8; OS: Linux 5.8; UI render: default; VCL: gtk3
Locale: hu-HU (hu_HU.UTF-8); UI: hu-HU
Ubuntu package version: 1:7.1.4~rc2-0ubuntu0.20.04.1~lo1
Calc: threaded

Ctrl+space OR shift+space alone itself are working, but cannot highlight the current cell as a +, due to the complete sheet gets highlighted upon pressing the second set of keyboard shortcuts.
Comment 42 Heiko Tietze 2021-07-07 07:34:13 UTC
Sounds like a good enhancement. We should make it optional in both on/off and color. Tools > Options > Calc > View: "[x] Highlight col/row <Blue>" (default color ideally taken from the system theme). And it requires an entry under the View main menu and a good shortcut. Perhaps alt+space since ctrl/shift+space select the col/row. A selection overwrites the highlighting, of course.
Comment 43 Romano Giannetti 2021-07-07 07:45:20 UTC
It could be a highlight (transparent shade of color) or even a border (similar to selection highlight in another color, maybe, or just a colored border making a "cross" row-column).

I use to have to explore big student data spreadsheets (thousands of rows and around one hundred columns) and this would be a life safer --- now I sometimes have to select a column and use an on-screen horizontal ruler to be sure to pick the right spot.

Heiko's suggestions seem spot on!
Comment 44 Heiko Tietze 2021-07-08 07:59:48 UTC
Was looking into the code but it seems to be a tricky thing. We could use either ScOutputData::DrawBackground() or ScOutputData::DrawGrid() for the highlighting (would suggest to add a boolean parameter to the function because it's also used for print and other previews), which is called from ScGridWindow::DrawContent() (gridwin4.cxx). But no idea what cells is focused at this position.
Comment 45 Eike Rathke 2021-07-17 21:45:00 UTC
(In reply to Heiko Tietze from comment #42)
> Sounds like a good enhancement. We should make it optional in both on/off
> and color. Tools > Options > Calc > View: "[x] Highlight col/row <Blue>"
> (default color ideally taken from the system theme).
Marked selection is already blue, so that should be something different.

> shortcut. Perhaps alt+space
No, because Alt+Space opens the window menu in at least GNOME and other window managers.

(In reply to Heiko Tietze from comment #44)
> Was looking into the code but it seems to be a tricky thing. We could use
> either ScOutputData::DrawBackground() or ScOutputData::DrawGrid()
Anything ScOutputData would be wrong because it's not related to data at all, nor styles. It also wouldn't be a background.

Take a look at ScTabView::MarkRows() and ScTabView::MarkColumns(), which are called for .uno:SelectRow and .uno:SelectColumn, it would be almost the same (without the actual mark and selection of course) and should be a HighlightOverlay added to the OverlayManager, similar to the SelectionOverlay that is updated from InitBlockMode() as ScGridWindow::UpdateSelectionOverlay(), e.g. like UpdateHighlightOverlay() and so on. They could share a great portion of code.
Comment 46 bugzilla2 2021-07-18 10:35:07 UTC
Thanks Heiko and Eike for working on this :)

(In reply to Eike Rathke from comment #45)
> (In reply to Heiko Tietze from comment #42)
> > Sounds like a good enhancement. We should make it optional in both on/off
> > and color. Tools > Options > Calc > View: "[x] Highlight col/row <Blue>"
> > (default color ideally taken from the system theme).
> Marked selection is already blue, so that should be something different.

I just played with colors:
- Color only on the Border (as someone suggested) → In my opinion too subtle to be really helpful in crowded tables.
- Blue highlight → I tried it with less opaque versions of the "selection blue" and indeed that doesn't work, as the “selection blue” is already quite light, and you can't really go much lighter. Darker is also bad because you lose contrast to the content then. So Eike is right, it has to be another color then the "selection blue".
Comment 47 Heiko Tietze 2021-09-29 13:19:29 UTC
Too difficult for me. ScTabView::MarkColumns() and *Rows() take a lot of conditions into account such as merged cells (not perfectly correct though), other selection, and many more situations that are not clear to me.

I also wonder if adding a selection is the right way. We could do it on-the-fly in ScGridWindow::UpdateSelectionOverlay(), and perhaps only if nothing else is selected. The range would be from 0 to max_view (GetScrSize()?) with GetCurX/Y() by cell width (no idea how to calculate the width/height in px) and has to respond to ScGridWindow::CursorChanged() but also resize and scroll.

Bayram, is this something for you?
Comment 48 Bayram Çiçek 2021-10-01 08:32:34 UTC
(In reply to Heiko Tietze from comment #47)

> Bayram, is this something for you?

I'm not sure, but I'll work on it as soon as possible.
Comment 49 Phil 2022-04-28 13:53:09 UTC
Any progress?
For LO 7.4 beta1?
Comment 50 Bayram Çiçek 2022-04-29 17:37:04 UTC
(In reply to Phil from comment #49)
> Any progress?
> For LO 7.4 beta1?

no progress so far.
Comment 51 Romano Giannetti 2022-04-30 18:06:31 UTC
In the meanwhile, I discovered that (at least on Gnome Shell) I can use the "Universal access" hairline zoom feature, which helps a lot.

There is an explanation here: https://askubuntu.com/a/1095983/16395 --- if you choose a very transparent color for the airline cursor and a default zoom factor of 1.00, you can then use the keyboard (by default super+alt+8, but you can change it) to superpose to the mouse cursor a full-screen crossline. 

Clearly not the same thing, because it follows the mouse and not the active cell, but it's better than nothing on very big sheets.