Opened 6 years ago

Closed 8 months ago

Last modified 8 months ago

#11675 closed bug (fixed)

[HaikuDepot] scroll featured packages with arrow keys

Reported by: diver Owned by: stippi
Priority: normal Milestone: R1/beta2
Component: Applications/HaikuDepot Version: R1/Development
Keywords: Cc:
Blocked By: Blocking: #11794
Platform: All



Can't go though featured packages using arrow keys. This used to work a week ago but featured packages view didn't scroll accordingly. Now nothing happens at all, so probably a recent regression.

Change History (14)

comment:1 by diver, 6 years ago

Blocking: 11794 added

comment:2 by closequarters, 2 years ago

Planning to look into this one.

comment:3 by closequarters, 2 years ago

Patch posted: It ended up being tiny but this took many nights of troubleshooting. There's a lot going on in HaikuDepot!

comment:4 by closequarters, 2 years ago

stippi, apl-haiku, please have another look at my patch - I've made a few updates and responded to stippi's comments. Most of all, please give the patch a try - it really makes using HaikuDepot much nicer for those of us who like moving through lists with the keyboard.

comment:5 by stippi, 2 years ago

Thanks for pointing to the new review, since I get no Gerrit notifactions.

I want it to be known: I hate Gerrit. I just lost everything I typed by accidentally pressing some wrong key on the keyboard. I /think/ I somehow moved the focus out of the text box, and the BACKSPACE key is associated with page navigation and there was nothing in the browser history. I know webpages can be programmed in a way that users don't lose all their text this way. I just hate it.

Can't we somehow use GitHub for patches review? The notifications work and the interface doesn't leave me wondering how I freaking "send" my "draft" comments everytime I use the tool.

comment:6 by stippi, 2 years ago

And now for what I actually wanted to post:

To figure out why MouseDown() is called for every package, please run HaikuDepot in the Debugger. You make a debug build of HaikuDepot like this:

DEBUG=1 jam HaikuDepot

This will compile everything that HaikuDepot depends on with debug symbols and place all the object files and the executable itself in a separate output path. Then you launch it in the debugger like this:

Debugger generated/...debug/path/to/HaikuDepot

In the Debugger, place a breakpoint in MouseDown(), then use HaikuDepot, generate a click and see where all calls come from. The problem should reveal itself. This MouseDown() hook seems to be intended to be called for an actual click only and only once per click.

Hope this helps!

comment:7 by stippi, 2 years ago

Hi David, have you seen my last review in

comment:8 by closequarters, 2 years ago

Stippi, I see it. I'm a little tied up in my personal life but hope to get back to this soon

comment:9 by diver, 16 months ago


comment:10 by closequarters, 15 months ago

Unfortunately I usually only get time to work on Haiku in summers. While I appreciated Stippi's feedback, he was asking a lot of exploratory questions that I didn't end up getting the time to answer - and was a little frustrating to be honest, given how much time I put into getting keyboard navigation working. My patch actually did work from what I could tell in my testing. I'd strongly suggest folks give the patch a try if interested in this feature

comment:11 by apl-haiku, 9 months ago

I hadn't really been across this one sorry; @closequarters - do you mind if I download your patch to understand it a bit and (if I get the time) to update the PR if necessary? Your help on this project is much appreciated. Sometimes peer-review can seem frustrating, but I think in the end we all gain from it.

comment:12 by closequarters, 9 months ago

@apl-haiku, of course, feel free to take a look at the patch. In my testing (now years ago), it worked quite well from an end-user perspective. I'm of course a big fan of peer review and I have learned a lot from Haiku contributors, but in this case the amount of feedback for something that was working was beyond the time I had to commit to the project.

comment:13 by pulkomandy, 8 months ago

Resolution: fixed
Status: newclosed

Fixed in hrev54227

comment:14 by nielx, 8 months ago

Milestone: R1R1/beta2

Assign tickets with status=closed and resolution=fixed within the R1/beta2 development window to the R1/beta2 Milestone

Note: See TracTickets for help on using tickets.