Vivaldi browser and open-source

  • Personally i would love to see vivaldi going open source, but the reasons on the post sounds reasonable to me, still as a modder i would love to have non obfuscate code of some parts as it'll make easier to add or extend features or even find and help to fix bugs.

    Bugs that i'll want to help fixing cause annoy me badly are:

    • The ui sluggishness, the worse time for me is when opening multiple tabs at once (a bookmark folder) the whole browser stop responding to user input during some of the loading time, It's so slow that makes me question if the UI is running on the same thread as the content, the rest of the time is fast enough, but loading content shouldn't block the ui, i know this has been reported and i'm sure it's hard to fix or else it would have been addressed already, yet when i recommend vivaldi the usual complain is the sluggy ui.

    • The User Interface zoom when at a different value than 100% makes some extensions panels have an incorrect size making them impossible to use, a good example is umatrix, but any extensions that doesn't render the panel instantly can have this problem, I managed to workaround some of it using css over the extensions panels but it has to be done per extension basis and was not reliable so i finally decided to keep the scale at 100% till i have time to test if i can trigger a recalculation of the extension panel size using js, or the issue is fixed.

    I hope that didn't sound aggressive, what i thought of vivaldi is that, albeit there's still work to be done, vivaldi is close to be perfect for me, and even with those annoyances i still prefer it over any of the alternatives.

    As for mods that will be easier to do with non obfuscated source:

    • Presenting tab groups as tree tabs on the tab bar (when positioned on the side) pretty much like how the window view shows them. i thing this feature will make easier to work with tab groups.
      As i said It's like what the window panel does so with non-obfuscated code we could just reuse parts of the code to port that feature to the tab bar.

    • Clickable elements of URL but "extended", in fact i did some work on this just before the native feature was added on the snapshots (feature that is now temporary disabled) the idea was to do something similar to the location bar enhancer extension for pre-quantum firefox, for those who doesn't know it here's an article, i hope this doesn't count as spam:

    The advantages of that extensions are:

      • clicking on any element of the url, not limited to left click but also ctrl/alt and middle mouse button so you can open the cropped url in a new tab or window, and the ability to click the last element to refresh the page.
      • Scrolling on an element let you go to visited siblings or on pages that have a patter similar to "?page=2" it will let you increase/decrease the number when scrolling over the last element. (i rarely used the scroll feature but maybe someone like it).

    I've decided to wait and see how the native feature will look like before developing this further as it may be sufficient, currently it looks like this but has almost none of the extra features.

    If someone want to work on any of those features feel free to do it, I've limited time right now so i don't know how much time it will take me to finish any of those mods.

    And for the vivaldi team, thank you for crating such a great browser!

  • Moderator

    @julien_picalausa said:

    @quhno: Technically, you can figure out our internal API by reading the published code. The .json files under /extensions/schema describe the full API. If you can make sense of C++, then the implementation is under /extensions/api. In general, the json files are supposed to use descriptions to explain what everything is doing. If there is something there that you can't understand, then it's probably something we should fix.

    So that others don't have to download and sift through several Gb of files, I have put all of the API documentation here:

    I notice that some of types lack descriptions, but they are mostly self explanatory. I think I had done this previously, but knowing where to look in the official documents is helpful.

  • @julien_picalausa
    This is what I was talking about when I said:

    I haven’t had a look at it yet, but it’s from a big part coz it’s big (well this can’t be solved) and gets outdated with every release. Why not publish it (still talking about the back-end code) as a git (or whatever VCS) repo?

    As written here ("size": 2087690), it’s only ~2 GB even though it’s from 1.0, while the per-version packs are now nearly 1.5 GB each.

  • Ambassador

    @LonM That's really impressive from your part.
    But those are not Open APIs, nor are they accessible through extensions.

    Vivaldi need those.

  • Moderator

    @Cqoicebordel The API is open enough for mods. But you are right - I would love if extensions could access them.

    Two of my more useful mods, the sessions panel & sessions autosave could easily be implemented through an extensions API instead of a mod, and it would be less prone to bugs.

  • @julien_picalausa said in Vivaldi browser and open-source:

    And in addition, anytime someone chooses to fork Chromium, they are reinforcing it as a de-facto standard, giving Google more power.

    ... and Adobe, and Microsoft and all the others which contribute to the standard, making it a strong standard.

    The only thing it is missing to become a real Standard (with a capital S) is a Standard Body that can set what must be in and what is free to change.

    As it is now, when "The Chromium Authors" decide to deprecate things, functionality in which e.g. extension developers have literally put in 1000s of hours are declared to NULL, or additional portions of the web cannot be displayed properly anymore, or not at all. This way we lose more and more information that might still be valuable. That makes me sad.

    Not all old information is there to be forgotten.

  • @QuHno said in Vivaldi browser and open-source:

    "The Chromium Authors" decide to deprecate things, functionality in which e.g. extension developers have literally put in 1000s of hours are declared to NULL, or additional portions of the web cannot be displayed properly anymore, or not at all.

    Funny thing that was what firefox did with xul/xpcom and even sdk extensions.

  • @Sdar Yes and that more or less killed the poor fox..sad to see mozilla slowly destroy the fox over the years..a great browser wrecked by a lousy company.

  • Ambassador

    @LonM And it would allow a lot more users to use them…
    Modding is a PITA. Installing an extension is a breeze.

Log in to reply

Looks like your connection to Vivaldi Forum was lost, please wait while we try to reconnect.