The problem was caused by elements having their scroll-behavior set to
"smooth". This meant that offsetTop was updated with a delay. The delay
made Tridactyl that the element couldn't be scrolled at all and thus
scrolling failed.
This commit has the nice side-effect of disabling smooth scrolling ig
"smoothscroll" isn't set to "true" in the config.
This fixes https://github.com/cmcaine/tridactyl/issues/762.
This fixes https://github.com/cmcaine/tridactyl/issues/724.
What happened was that sanitise was executed,
browser.storage.{local,sync}.clear() was called, the rest of the
settings were modified and only after this was the onChange event
listener in config.ts called, which then cleared the config.
Awaiting the result of .clear() makes sure that the onChange event
listener is triggered before executing any other command that might
make modifications to the browser storage. This can (and has) been
verified by surrounding the .clear() calls with console.logs and adding
a console.log to the onChange event listener.
When a promise throws an error in l(), the error is automatically logged
in the console. This is a problem because it happens even when the error
is catched by the code that called l(), which might not want to log
errors at all.
l() was necessary when errors thrown in promises didn't reach the
toplevel. Now that they do, it is safe to remove l().
This will enable better error handling.
This guiset navbar option completely removes the bar (except during
customization), rather than auto-hiding it when not in focus.
Since add-on panels are appended as children of #nav-bar, care has been
taken not to hide them to keep functionality.
Signed-off-by: Franklin "Snaipe" Mathieu <me@snai.pe>
This is similar to setting "hintchars" to "1234567890", but
ends up with more predictable and stable hints (see the
included documentation).
Setting "hintfiltermode" to "vimperator-reflow" and
"hintnames" to "numeric" provides more or less the same
experience that pentadactyl did.
We always generate hints using the "short" mechanism added
by 34aa42061e. In preparation
for adding a new mode, let's add a config option to select
this.
I've made "uniform" a separate mode. I don't actually care
about this mode myself, but it looks like there's no other
way to trigger the pre-34aa4206 behavior, even though we're
still carrying the code. It's possible that nobody cares and
it should simply be removed.
When these comments get formatted into ":help open", etc,
the line breaks are eaten and we get a big jumble of text.
Let's space things out so that they get formatted in a sane
way.
Possibly a definition list would be better than bullets, but
this is at least an improvement over the status quo.
- containerremove now closes all tabs that were open in said container prior to deleting.
- helper commands in lib/container.ts are no longer exported.
- it throws an error if no container with that name was found.
- chooses the first available container with that name (other addons don't force name uniqueness on containers)
Changed containerExists to take a name instead of an id for tabopen -c to work.
Various updates to src/lib/containers.ts
./lib/containers updates:
containerCreate: now treats (name, color, icon) as a unique constraint
containerUpdate: not working right now, really needs non positional arguments
containerGetAll: returns all containers (probably useful for completions later)
containerFromString: takes in string arguments and returns a pseudo ContextualIdentity object for validation purposes.
containerExists: returns a boolean, true if container exists or if the query fails.