The DnD Sanctuary

Pings => Otter Browser Forum => Topic started by: ersi on 2014-02-27, 20:06:19

Title: Questions to the Developer
Post by: ersi on 2014-02-27, 20:06:19
Here's some I have come up with

- Why dependent on Qt5? This dependency makes it difficult to install. 
- Will the GUI be skinnable with old Opera skins?
- Any plans to implement the startup dialog (options 'continue from last', 'home page', etc.)? Old Opera had excellent crash management.
- What are the plans with otter.conf? I would like a human-readable configuration file where absolutely everything is there. An otter:config page would be nice as a perfect mirror of otter.conf, but the conf file is more important.
Title: Re: Questions to the Developer
Post by: Frenzie on 2014-02-27, 20:20:36
I asked Emdek if he could put up a sticky or two with some information, but he hasn't gotten around to it yet. However, I believe I can answer at least one question.

- Will the GUI be skinnable with old Opera skins?

Yes (https://github.com/Emdek/otter/issues/36). On that topic, you can find a 1GB archive of all (?) skins here (https://mega.co.nz/#!txIEFKCD!e056bT4WW5Gz1HpX4LWSTGreuUlJpwi_uL66S_WRaYk) (via (https://github.com/Emdek/otter/issues/165#issuecomment-35087899)).
Title: Re: Questions to the Developer
Post by: ersi on 2014-02-27, 20:23:24
I see, thanks. Looks like I have to learn to browse the discussions on Github and mirror some relevant stuff here.

Another question:
- What are the developer's favourite browsers? Specifically, is there some other browser inspiring the development besides Opera?
Title: Re: Questions to the Developer
Post by: Emdek on 2014-02-28, 15:28:11

- Why dependent on Qt5? This dependency makes it difficult to install. 

Qt5 allows to easily create multi platform applications, without it it could be even more difficult to built it from sources. ;-)
And surely it would take much more time to develop.


- Any plans to implement the startup dialog (options 'continue from last', 'home page', etc.)? Old Opera had excellent crash management.

Yes, it is planned, but probably defaulting to continue from last session, as it is now.


- What are the plans with otter.conf? I would like a human-readable configuration file where absolutely everything is there. An otter:config page would be nice as a perfect mirror of otter.conf, but the conf file is more important.

It will stay as central configuration file, with to level structure   sections and keys.
Stuff like site specific preferences etc. will use own files, probably SQLite based storage, for better efficiency (fast URL matching is very important).
Title: Re: Questions to the Developer
Post by: ersi on 2014-03-01, 07:57:00


- Why dependent on Qt5? This dependency makes it difficult to install. 

Qt5 allows to easily create multi platform applications, without it it could be even more difficult to built it from sources. ;-)
And surely it would take much more time to develop.

My question stems from my lack of understanding of what Qt is at all. As a matter of principle, too many or too obscure dependencies make installation difficult. In this case, the issue is that Qt5 is not an easy-peasily available package that would handily self-install when one attempts installing Otter that requires it.

I managed to install Otter on Manjaro Linux with the help of Yaourt on third try. I have not managed to install it on any other distro. It's because "building a package" is like Chinese to me. If make and install don't straightforwardly lead to the desired result, I simply don't know what to do. And most people who are newer to Linux than me, they don't even know about make and install and if they know, they might be impatient. If we are making a product for people to use, it should be relatively easy to install.

But okay for now, it's alpha.


- Any plans to implement the startup dialog (options 'continue from last', 'home page', etc.)? Old Opera had excellent crash management.

Yes, it is planned, but probably defaulting to continue from last session, as it is now.
The default for the dialogue should be to show itself when the user attempts to launch the app again after crash - just like Opera Presto does. For example, when there is a specific page that makes it crash inevitably, then going back to that page by default would make it crash again. Which is something that already happened to me with Otter. Otter crashed on me on a page that pushed a download that I refused. So, launching it again takes it to the same page and I get the same download that I don't want. It's not good to create an endless crash loop.

There is much common sense in many details implemented in Opera. I am confident that this is the main drive in the development, so keep it up :)
Title: Re: Questions to the Developer
Post by: Emdek on 2014-03-01, 19:06:29
@ersi,  there is no need to use packages specific to distribution, SDK (linked in INSTALL file) should work in most cases. ;-)
It should be possible to create package that would bundle all libraries required for Linux, just like one for win32 (where it is required).
Adoption of Qt5 would be faster if KDE5 would be already available, that would force mainstream distributions to package it properly...

The default for the dialogue should be to show itself when the user attempts to launch the app again after crash - just like Opera Presto does.

Sure, that's planned too. ;-)
Title: Re: Questions to the Developer
Post by: Frenzie on 2014-03-02, 08:10:34
probably around 16.03.2014.

Okay, what's up with the exceptional specificity? :P
Title: Re: Questions to the Developer
Post by: Emdek on 2014-03-03, 11:18:37
@Frenzie, first beta is planned for 01.04.2014, it should give enough time for translators while giving enough time to introduce bigger changes in strings that can be translated.
Title: Re: Questions to the Developer
Post by: Frenzie on 2014-03-03, 12:16:10
Is it known yet how many strings there'll be to translate?
Title: Re: Questions to the Developer
Post by: ersi on 2014-03-03, 12:23:01

@ersi, nope, we will use formats used by Qt Linguist.

Something I must learn to use then. I installed QtCreator to my main machine. ("Main" only means it's the more capable machine, not that I use it more often.)

Is there a translator for Finnish and Estonian? Those are my first languages.
Title: Re: Questions to the Developer
Post by: Frenzie on 2014-03-03, 12:40:29
This seems to be issue #32 (https://github.com/Emdek/otter/issues/32). If you need some input on English and Dutch, feel free to run it by me.

At a quick glance, here's a string that's a little problematic in multiple ways:
Quote
Inform websites that user allows to be tracked

should be more like
Quote
Inform websites that the user allows tracking


You could also consider making it more personal:
Quote
Inform websites that I want to be tracked
Inform websites that I do not want to be tracked


Or like this to keep with the allow theme:
Quote
Inform websites that I want to allow tracking
Inform websites that I do not want to allow tracking


That's just at a quick glance. There's also "Enable Search Suggestions" under the Search tab, which seems inconsistent with the capitalization elsewhere.

I could change such things independently and offer them up as a pull request, but I can't seem to find the current language sources.
Title: Re: Questions to the Developer
Post by: ersi on 2014-03-03, 12:58:34
@Frenzie
Such fine-tuning of the lingo used in the app should be a non-issue if the language files were hackable and shareable in the fan community. This is what I did with Opera. I didn't like the Estonian translation, so I used Finnish, and "fixed" it further to my own satisfaction - and shared the result with anyone interested. This is how I imagine it should be done with Otter too.
Title: Re: Questions to the Developer
Post by: Frenzie on 2014-03-03, 13:10:28
Sure, but there are two separate issues at hand. The original string was just plain ungrammatical, so the grammatical equivalent should be adopted no matter what. But besides that, I don't believe speaking of the user as "the user" is actually appropriate wording in this case.
Title: Re: Questions to the Developer
Post by: ersi on 2014-03-03, 13:58:43

I don't believe speaking of the user as "the user" is actually appropriate wording in this case.

Why? I think geek browsers have geek users. You disagree?
Title: Re: Questions to the Developer
Post by: Frenzie on 2014-03-03, 14:24:15
I don't understand what you're trying to say.

If I said "Frenzie doesn't understand what ersi is trying to say" that'd be odd no matter what. :P
Title: Re: Questions to the Developer
Post by: ersi on 2014-03-03, 15:10:39
Which words don't you understand?

I had a question about your statement that it's inappropriate to speak of the user as "the user" in this case. The way I understood it, I thought you meant that you prefer to define "user" broader, to include newbies, and you have an issue the way I define users - those who are ready to read and re-write configuration files. This is why I said that geek browsers have geek users.

Maybe I misunderstood your statement.
Title: Re: Questions to the Developer
Post by: Emdek on 2014-03-03, 15:14:01
@Frenzie, currently there are 573 strings, but not all of them are unique.
And yes, "audit" for source strings is needed. ;-)
I would go for more neutral phrasing, feel free to create pull request, one bigger commit containing all mentioned fixes (probably all values for DNT need to be fixed).

@ersi, well, in our case it will be a bit harder, there will be editable source files (XML based, example (https://gist.github.com/Emdek/7b40dd2271a92375928b)) and binary files. Source files had to be compiled using lrelease from Qt SDK.
For sure Opera like plain text files with identifiers are simpler for quick edit but this is the only advantage of such system...
Title: Re: Questions to the Developer
Post by: Frenzie on 2014-03-03, 15:32:04
I had a question about your statement that it's inappropriate to speak of the user as "the user" in this case. The way I understood it, I thought you meant that you prefer to define "user" broader, to include newbies, and you have an issue the way I define users - those who are ready to read and re-write configuration files. This is why I said that geek browsers have geek users.

Perhaps my use was more technical than I thought, which would itself be an example of inappropriate wording.

You can find a quick overview of the CCC-model of text quality here (http://staff.science.uva.nl/~toto/academic_skills/ccc_chap3.pdf), which defines appropriate wording as:
Quote
Sentence structure and choice of words must be neither too difficult nor too easy.
Also, the middle course has to be steered between too much terseness and long-
windedness, between “too boring” and “too familiar.” The quality of a text is also
negatively influenced if the author fails to strike the proper tone. If the reader is
addressed too patronizingly or too arrogantly, it has repercussions on the
transmission of information.

I do not believe the style is appropriate to the text type because it is or should be aimed at the user, not the developer. The user is me, not some unknown person.


@Frenzie, currently there are 573 strings, but not all of them are unique.
And yes, "audit" for source strings is needed. ;-)
I would go for more neutral phrasing, feel free to create pull request, one bigger commit containing all mentioned fixes (probably all values for DNT need to be fixed).

Not today for sure. But what's the path to the strings?
Title: Re: Questions to the Developer
Post by: Emdek on 2014-03-03, 15:48:46
Not today for sure. But what's the path to the strings?

It's here:
https://github.com/Emdek/otter/blob/master/src/ui/PreferencesDialog.ui
In QtCreator it is available in Forms tree, just remember to set tab bar back to "General". ;-)
Title: Re: Questions to the Developer
Post by: ersi on 2014-03-03, 15:52:55
@Frenzie
Right, so you were phrasing as per guidelines familiar to you, whereas I was not thinking in English in the first place. I have always been ready to rewrite things readily rewriteable. Lang files in Opera provided a good opportunity for this. Sad if Otter won't make it equally easy.
Title: Re: Questions to the Developer
Post by: Frenzie on 2014-03-03, 16:26:35
@Emdek: Thanks! :)
Title: Re: Questions to the Developer
Post by: Belfrager on 2014-03-03, 17:14:51
For the terms I see in these threads about Otter browser, I suppose it doesn't work in Windows...
Title: Re: Questions to the Developer
Post by: ersi on 2014-03-03, 17:20:18
It aspires to be cross-platform (which should mean Linux, Win and Mac desktops at least), so let's hope the first beta release will be that.
Title: Re: Questions to the Developer
Post by: Frenzie on 2014-03-03, 18:44:35

For the terms I see in these threads about Otter browser, I suppose it doesn't work in Windows...

You can try it out in Windows using the precompiled binaries here (http://sourceforge.net/projects/otter-browser/files/otter-browser-alpha3/).
Title: Re: Questions to the Developer
Post by: Belfrager on 2014-03-03, 22:05:25


For the terms I see in these threads about Otter browser, I suppose it doesn't work in Windows...

You can try it out in Windows using the precompiled binaries here (http://sourceforge.net/projects/otter-browser/files/otter-browser-alpha3/).

"Precompiled binaries"... is that a name to call to a software? :)
Thanks Frenzie.
Title: Re: Questions to the Developer
Post by: ersi on 2014-03-04, 05:13:49



For the terms I see in these threads about Otter browser, I suppose it doesn't work in Windows...

You can try it out in Windows using the precompiled binaries here (http://sourceforge.net/projects/otter-browser/files/otter-browser-alpha3/).

"Precompiled binaries"... is that a name to call to a software? :)
Thanks Frenzie.

I remember now how at first glance I failed to find Linux binaries. I only saw Windows exes.

Otter is at the stage where it should be made more broadly available, like Softpedia or Download.com. It's been ages since I visited those sites, because for a long while I already have everything I need, but I imagine the sites are still around and there might still be people eager to try stuff out.

You'd also accumulate some third opinions this way. In the description it would be best stated that the idea is to re-create Opera somewhat, not to innovate in any random direction.
Title: Re: Questions to the Developer
Post by: Frenzie on 2014-03-04, 08:20:01
"Precompiled binaries"... is that a name to call to a software?

Hehe, oops. Regular old executables?
Title: Re: Questions to the Developer
Post by: Emdek on 2014-03-04, 09:10:16
@ersi, it would be best to wait for first beta, when more features will be ready.
Title: Re: Questions to the Developer
Post by: ersi on 2014-03-04, 09:15:55

@ersi, it would be best to wait for first beta, when more features will be ready.
Yes, when it can be called internet suite, not a mere browser :)

By the way, based on what will you implement the email component? On FF's Simplemail extension? Or will you tailor together something unique?
Title: Re: Questions to the Developer
Post by: Emdek on 2014-03-04, 18:15:03
@ersi, email client for sure won't be ready in time for first beta, so suite won't be correct term yet. ;-)
I'm still evaluating best solution for email client, some were listed here:
https://github.com/Emdek/otter/issues/37
Title: Re: Questions to the Developer
Post by: donjoe on 2014-03-04, 22:18:02
Might be worth mentioning on http://alternativeto.net as well when it's ready for more publicity.

One big question for me: is Otter planned to support only Chrome-compatible extensions and thus to be unable to block YouTube ads even with AdBlock [Plus] installed? That would be sad, as Opera Presto v12.16 is still perfectly capable of giving me a 100% clean YouTube experience.
Title: Re: Questions to the Developer
Post by: Emdek on 2014-03-05, 06:48:04
@donjoe, content blocking will be built-in and should come much sooner than extensions (hopefully in time for first beta).
Title: Re: Questions to the Developer
Post by: ersi on 2014-03-05, 07:09:18

@donjoe, content blocking will be built-in and should come much sooner than extensions (hopefully in time for first beta).
Will it be like in Opera? (right-click / Block content)

Opera gathered the blocked addresses to a text file. Will it be the same?
Title: Re: Questions to the Developer
Post by: Emdek on 2014-03-05, 07:38:56
Will it be like in Opera? (right-click / Block content)

Should be doable.
Opera gathered the blocked addresses to a text file. Will it be the same?

That's not decided yet.
Title: Re: Questions to the Developer
Post by: donjoe on 2014-03-05, 10:35:37
@donjoe, content blocking will be built-in and should come much sooner than extensions (hopefully in time for first beta).
There's only so much one could do with the built-in content blocking, I see it more as a nice-to-have compared to ad blocking extensions. I don't remember ever being able to block in-video ads with it, so I don't consider it a solution for YouTube. The only solution I know for YouTube is AdBlock Plus, and that one only works for me on Opera Presto and Firefox so far.

LE:
OK, just tested it in Opera v12.16: you can definitely not clean up YouTube using the built-in content blocking functionality - it just hides the whole video player if you try, it can't detect pre-roll video ads, nor can it detect overlaid banners that sometimes show over the video.
Title: Re: Questions to the Developer
Post by: ersi on 2014-03-05, 12:32:07
I don't consider it a solution for YouTube. The only solution I know for YouTube is AdBlock Plus, and that one only works for me on Opera Presto and Firefox so far.
In Presto I use this one https://addons.opera.com/en/extensions/details/youtube-adsfree/ and normal native content-blocking. Has been perfectly adequate.

I suppose when you have a way to identify the addresses that push the ads into the video, blocking those addresses the normal way should work, no?
Title: Re: Questions to the Developer
Post by: donjoe on 2014-03-05, 12:36:02
The fact that the same people who make the AdBlock Plus extension work fine in Firefox and Opera Presto can't make it work reliably on Chromium-based browsers tells me the problem is a bit more complicated than identifying and blocking some URLs.


LE:
Apparently the Chrome-compatible version of AdBlock Plus can block in-video ads just fine, but only in browsers using the newer "Pepper" Flash plugin developed by Google in collaboration with Adobe and available exclusively in Chrome installations (or as a separate install for Linux via this workaround (https://launchpad.net/~skunk/+archive/pepper-flash/)). The problem with the "Pepper" Flash plugin is that it's still very buggy, e.g. the current version insta-crashes every time I try to watch any twitch.tv stream (though it works fine with YouTube and allows AdBlock Plus to block all ads like it's supposed to). So it would seem that if Otter provides support for Chrome-compatible extensions in the future and if Google fixes its "Pepper" Flash plugin, it will be possible to have proper video ad blocking in Otter just like in Opera Presto.
Title: Re: Questions to the Developer
Post by: Emdek on 2014-03-06, 10:48:23
@donjoe, it all depends how these ads work, as long as requests go through instance of *NetworkAccessManager* then they could be blocked.
Possibly these extensions use other methods, like JavaScript.
Title: Re: Questions to the Developer
Post by: donjoe on 2014-03-06, 10:54:12
Considering the updated information in my previous post, I'd say they're using the Flash plugin itself. Or maybe I've got this all wrong and it's the JavaScript that's fetching the data and Flash that's only used to display it. But then ad blocking may be oriented toward blocking the display phase and not the download phase, because it's generally more reliable to prevent something from being rendered than it is to keep up with continuous changes that might be made easily to the JavaScript that fetches the data.

I don't know, I'm just speculating. :) What's important is that I now have reason to think everything will be fine in Otter if it supports the Chrome-compatible version of AdBlock [Plus] and the manual replacement of its Flash plugin with the newer "Pepper" Flash plugin.
Title: Re: Questions to the Developer
Post by: Emdek on 2014-03-10, 18:21:24
@donjoe, Pepper (PPAPI) should be available for QtWebEngine (Blink), other engines do not support it yet.
Title: Re: Questions to the Developer
Post by: ersi on 2014-04-08, 07:10:40
An otter:config page would be nice as a perfect mirror of otter.conf

This is a repeated request in this forum now. I made a Git ticket too https://github.com/Emdek/otter/issues/245

Edit: and it was locked immediately, because the page is there. This raises the question: How to make things that should be obvious in fact obvious?
Title: Re: Questions to the Developer
Post by: Emdek on 2014-04-08, 15:03:41
@ersi, maybe some kind of documentation for end users?
It's too early for that but for sure it would be useful.
Title: Error 4 and Error 8
Post by: ersi on 2014-05-06, 18:50:00
Code: [Select]
Error 4
Socket operation timed out


Code: [Select]
Error 8
The specified configuration cannot be used.


Error 4 probably means the network cannot be reached.

What does Error 8 mean?

Edit: And it's a nasty error. When Error 8 happens, it renders the tab unusable. Keyboard shortcuts cease to function. Refresh does not reach the address in the address field, and enter in the address field takes you to bookmarks. A workaround that seems to help is to clone the tab.
Title: Re: Questions to the Developer
Post by: Emdek on 2014-05-21, 07:44:34
@ersi, is it reproducible?
I haven't seen that one.
Title: Re: Questions to the Developer
Post by: ersi on 2014-05-31, 20:17:19
Not sure how to reproduce Error 8. The day I reported it, it occurred repeatedly in conjunction with general network problems I had.

I use Otter as a session storage for a bunch of work-and-hobby-related webpages that I frequent. I mean, I have some twenty tabs open in Otter and I use "continue previous session". So, when I have poor access to network, a bunch of pages times out with Error 4. When I reported it, Error 8 also occurred at one particular address repeatedly.

I think the address was Vivaldi.net. Vivaldi forum used to have a bunch of issues with logging in and staying logged in. Otter does the best work logging in and staying in there, but then one day, if I remember correctly, internet was shaky and Error 8 occurred at Vivaldi.net.
Title: Re: Questions to the Developer
Post by: Emdek on 2014-05-31, 21:19:56
@ersi, thanks for details, I'll try to find some information about this one after beta.
Title: Re: Questions to the Developer
Post by: ersi on 2014-06-02, 08:52:50
I should say that I have not cleaned my profile ever since I first installed Otter. I am not a good software QA assistant in this sense. I use software for my own selfish purposes, not methodically debugging. When testing and reporting issues, should we try a clean profile too? Or is your development method such that a clean profile is irrelevant?
Title: Re: Questions to the Developer
Post by: Emdek on 2014-06-02, 10:12:01
@ersi, in most cases it shouldn't matter, and if it matters then you can simply temporary rename otter.conf or use fresh profile (--profile switch).
Also it could be a good idea to allow to run it in mode that doesn't write to disk at all.
Title: No monthly releases for Arch any more?
Post by: ersi on 2014-07-07, 09:06:52
I have been waiting for the Arch release that used to be there at every turn of the month. What happened this July? AUR still holds 0.9.01
Title: Re: Questions to the Developer
Post by: Emdek on 2014-07-07, 19:55:49
@ersi, beta 2 got rescheduled to August due to amount of unresolved issues assigned to this release.
Title: Re: Questions to the Developer
Post by: ersi on 2014-07-10, 14:37:31
Were they specifically Arch-related unresolved issues?
Title: Re: Questions to the Developer
Post by: Emdek on 2014-07-10, 17:47:22
@ersi, nope, just not enough stuff got done in time.
Title: Re: Questions to the Developer
Post by: ersi on 2014-11-05, 14:10:21
There's a menu item Clone Tab that works. Is there a corresponding macro action available that would work for keyboard? It's not CloneTab, this much I figured out. Is there a list of available actions?

Edit: I tried to combine actions to make an action macro to clone tab, but there must be something I am missing. In another browser, Dwb, duplicate tab or clone tab was also missing and I had to create a macro for that. It was easy to do in Dwb but I am not getting it to work in Otter.
Title: Re: Questions to the Developer
Post by: ersi on 2014-11-12, 01:34:47
What is ShowAddressTooltip supposed to do in about:config? When it's set to false, is it supposed to hide the tooltips with link information (url and title) on webpages?

I would very much like this feature, to hide the link tooltips, because the tooltips in Otter are not trimmed. The tooltips go all over the page when the title or url is long, and the page will be hidden. This is why the tooltip should be possible to turn off. Similarly it would be nice to be able to turn off tab previews in tab bar.

Edit: I see that ShowAddressToolTips is meant to hide the link tooltips https://github.com/Emdek/otter/issues/449#issuecomment-51692171 However, this setting changes nothing for me. It has no effect.
Title: Re: Questions to the Developer
Post by: Emdek on 2014-11-17, 13:39:43
@ersi, Clone Tab action is now available globally, I'm planning to the same with remaining actions from that context menu ((Un)pin Tab and Detach Tab).

Tooltips ca be fully disabled since 1007b169e62d74ceeec07cc0a56b3cab839fd51c (https://github.com/Emdek/otter/commit/1007b169e62d74ceeec07cc0a56b3cab839fd51c).

Title: Re: Questions to the Developer
Post by: ersi on 2014-12-18, 19:24:42
Since weekly 49 or so there appeared a new action "Reload or Stop" which reloads the page when it's not already reloading, and stops the reload when its reloading.

Question: Why is this a single action and not a macro? In my opinion, this would be a perfect candidate for a macro.

Follow-up question: When will the first macro be available, so I can see the syntax and begin trying out my own macros?
Title: Re: Questions to the Developer
Post by: Emdek on 2014-12-18, 20:39:01
@ersi, that action existed for looong time. ;-)
And it's not suitable for being a macro since it must change own icon and text.

Currently macros are limited to being just a list of actions to be executed in specified order, but in future they will be able to execute simple scripts using APIs that might be shared with extensions (and this is one of reasons why this part is not yet available, to avoid duplication / incompatibility in cases when specific API could be shared by macros and extensions).
Title: Re: Questions to the Developer
Post by: ersi on 2014-12-19, 00:41:14

@ersi, that action existed for looong time. ;-)

I didn't notice it earlier. There are definitely more actions active than can be seen under Preferences > Advanced > Keyboard, but I only see them when they appear there.


And it's not suitable for being a macro since it must change own icon and text.

In Opera things like Button, 21235=Stop | Reload, , , 21210 were able to change icons etc. I understand that Otter's macros are not on that level yet but hopefully will be.
Title: Re: Questions to the Developer
Post by: Emdek on 2014-12-19, 08:08:16
There are definitely more actions active than can be seen under Preferences > Advanced > Keyboard, but I only see them when they appear there.

Currently some actions are available only for tabs containing WebWidget (and shortcuts can be set only for actions defined globally) and there is a good reason for that, albeit it's complicated and hopefully will be finally changed before beta4.
In Opera things like Button, 21235=Stop | Reload, , , 21210 were able to change icons etc. I understand that Otter's macros are not on that level yet but hopefully will be.

Possible, but that syntax isn't user friendly and we should design something more modern.

Title: Re: Questions to the Developer
Post by: Frenzie on 2014-12-19, 09:53:57
Possible, but that syntax isn't user friendly and we should design something more modern.

What part do you mean exactly? That was made a whole lot more user-friendly by changing from numbers referencing strings to textual identifiers:
Code: [Select]
Button, SI_STOP_BUTTON_TEXT=Stop | Reload, , , SI_RELOAD_BUTTON_TEXT

That leaves the problem of all the commas that have to be included.

The rest was pretty friendly to me back in '02 or so. :)
Title: Re: Questions to the Developer
Post by: ersi on 2014-12-19, 10:13:31

What part do you mean exactly? That was made a whole lot more user-friendly by changing from numbers referencing strings to textual identifiers:
Code: [Select]
Button, SI_STOP_BUTTON_TEXT=Stop | Reload, , , SI_RELOAD_BUTTON_TEXT

That leaves the problem of all the commas that have to be included.

For me this particular change meant a move towards less user-friendliness. With the numbers I understood that this was a code. I was able to look up the code in language files, and use a different code to get a different label for the button. With the change came English-only approach in ini files, while lang files never adopted the English-looking codes, so they were impossible to connect.
Title: Re: Questions to the Developer
Post by: Frenzie on 2014-12-19, 10:22:25
Oh, I hadn't noticed that. I thought it was more user-friendly because it made it clear what it was while reducing the likelihood of having to look it up in the first place, but obviously that wouldn't always be true. Also, my personal menu and toolbar files are still full of numbers simply because they were essentially finished around the days of Opera 8 and 9. Probably the only exception is:
Code: [Select]
Item, M_DEVELOPER_TOOLS = Attach Developer Tools Window | Close Developer Tools Window ,,,,"Checkmark"
Title: Re: Questions to the Developer
Post by: Emdek on 2014-12-19, 11:58:49
@Frenzie, well, it doesn't look user friendly for those who see it for first time. ;-)
I would like to go for ECMAScript directly, defining some generic APIs that could be used in snippets.
It's more flexible and easier to do (and can be at least partially shared with extensions) while adding just slight overhead.
We can even add syntax highlighting and basic auto completion (action identifiers, methods etc.).

As part of my thesis I've made application for simulating logical circuits using similar concepts.
State changes were generating events which could be used to execute specified snippets, like updating state of outputs after input value was changed etc.
Title: Re: Questions to the Developer
Post by: ersi on 2014-12-19, 12:37:52
@Frenzie, well, it doesn't look user friendly for those who see it for first time.

When I first saw the contents of ini files (which were just about the first config files I ever opened for a program), I understood them immediately. Besides, Opera's standard can easily be made frendlier.

For example, Opera has this: Button, 21235=Stop | Reload, , , 21210
Now imagine something like this: Button=Stop | Reload

By adjusting Opera's standard a little we got rid of the commas and numbers. In our new standard, "Button" says what kind of dingus goes onto the toolbar (button or slider or menu item or whatnot).

"Stop" and "Reload" are actions, whereas "|" defines their relation, as in a macro.

Icons and labels (images and image text displayed on the toolbar, which also gets translated/localised by the app) we can imagine are embedded into the action name, so there's no separate need to specify icons and labels.

Voila. Within the minutes that took me to type this text I massively improved on an existing syntax. I can do the same to yours if you give us further clues how it exactly looks like :)
Title: Re: Questions to the Developer
Post by: Emdek on 2014-12-19, 13:21:12
@ersi, and how would look like (if doable at all) macro to add to bookmarks all tabs from current stack?
With scripting we could event try to automatically generate keywords based on host name among lots of other stuff, as long as needed APIs will be exposed, which is not hard to do.
Title: Re: Questions to the Developer
Post by: ersi on 2014-12-19, 14:11:30

@ersi, and how would look like (if doable at all) macro to add to bookmarks all tabs from current stack?

The principle is simple. The devil is in the details. My problem is that when it comes to programming, I am completely blind to that which is not in plain sight. I can read what's there, but not write. I do not know a single programming language.

So, how do you write "stack" in your programmese? The principle for me is simple: Take the stack and prompt for save (like in sessions) with the option to select the bookmarks folder or create a new one.

(Opera misses the prompt step. "Bookmark all" saves everything into the latest used folder, so to make sure that the stuff goes into the right folder I have to keep the sidebar open and click the right folder first, then do "bookmark all". The prompt would make sense, I think.)


With scripting we could event try to automatically generate keywords based on host name among lots of other stuff, as long as needed APIs will be exposed, which is not hard to do.

Sounds totally fabulous :)
Title: Re: Questions to the Developer
Post by: Emdek on 2014-12-19, 14:53:54
So, how do you write "stack" in your programmese? The principle for me is simple: Take the stack and prompt for save (like in sessions) with the option to select the bookmarks folder or create a new one.

Well, we don't have such APIs yet so it's up to be decided, although this is interesting case, as this concept is not used in extension architectures which we are targeting.

Anyway, the point was to show that this approach (scripting) can be more powerful than one used in classic Opera while being much more friendly for those who already are familiar with JavaScript and ECMAScript.
Title: Re: Questions to the Developer
Post by: ersi on 2014-12-19, 15:05:36

Anyway, the point was to show that this approach (scripting) can be more powerful than one used in classic Opera while being much more friendly for those who already are familiar with JavaScript and ECMAScript.

Javascript is friendly for those who know it. I was able to read the syntax of ini macros without any prior experience with programming languages, but Javascript and any other proper scripting language is still obscure to me after more than a decade of trying to learn some.

I have no doubt that scripts can do more than mere macros. That's why they are called scripts and that's what programmers are for. Macros are for really simple people.
Title: Re: Questions to the Developer
Post by: Emdek on 2014-12-19, 15:28:54
@ersi, it's simple and hopefully we will get some examples on wiki, not just boring documentation. ;-)
Moreover, most likely we will keep basic macros in current way, as just list of already defined actions to be executed in specified order.
Title: Re: Questions to the Developer
Post by: Frenzie on 2014-12-19, 16:58:11
@Frenzie, well, it doesn't look user friendly for those who see it for first time. ;-)

Actually that's exactly the part where I disagree. When I first saw Opera-style INI files, a world opened up for me. A world where I could easily customize things to my heart's desire, as opposed to the incomprehensible gibberish of the Windows registry or XML. This doesn't mean that Opera's syntax should be minutely copied or anything, but I sincerely believe that the opinion that e.g. JSON is somehow easier represents a coder's distorted view on the matter.

@ersi
I use all of the options often enough; it's just when you're not passing any options that it complicates matters. A more JSON-like structure would improve quality for that particular aspect.
Title: Re: Questions to the Developer
Post by: ersi on 2014-12-19, 17:23:55
@ersi
I use all of the options often enough; it's just when you're not passing any options that it complicates matters. A more JSON-like structure would improve quality for that particular aspect.

Luckily I can read JSON. I have tried to configure JSON files, with mixed results.
Title: Re: Questions to the Developer
Post by: Emdek on 2014-12-19, 19:55:46
@Frenzie, storage format is completely different topic. ;-)
I'm not trying to criticize INI here (which is perfect for up to two levels deep data structures) as format of commands in classic Opera is more like CSV anyway (I mean definition of single command).
The whole point is to find more flexible way to create custom actions; ability to access loops, timers and to query other objects may be handy in more advanced cases.
Title: Re: Questions to the Developer
Post by: Frenzie on 2014-12-19, 19:59:08
The whole point is to find more flexible way to create custom actions; ability to access loops, timers and to query other objects may be handy in more advanced cases.

Yup, that sounds great. :)
Title: Re: Questions to the Developer
Post by: exley on 2014-12-19, 23:15:49
here's 1 from me / universal question
I love the fact that Otter is light, but problem was when I wanted to use it on old PC
which CPU isn't SSE2 supportive, and every QTWebKit based browser crashes on such PC

so my question is, is there any plan to compile it for such CPU's or never ?
Title: Re: Questions to the Developer
Post by: Emdek on 2014-12-20, 10:52:45
@exley, we are using precompiled binaries which seems to require SSE2 since Qt 5.3.
It is still possible to avoid compilation of entire stack by using Qt 5.2 SDK (http://download.qt.io/archive/qt/5.2/5.2.1/) to just compile Otter (which shouldn't took long even on older machines) as we still support that version (we will switch to 5.3 as minimum after beta4) but that is quite big download.

Sadly my Windows machine (laptop) is not powerful enough to recompile entire Qt but I could later try to cross-compile it using my main machine.
It might be a good idea to do the same for default package, we could try to drop some odd dependencies that way.
Title: Conneting to the adblock server on every start
Post by: rincewind on 2015-01-20, 08:19:52
security issue?
Title: Re: Questions to the Developer
Post by: Emdek on 2015-01-20, 08:52:45
@rincewind, what kind of security issue?
Title: Re: Questions to the Developer
Post by: ersi on 2015-01-20, 09:06:42
What rincewind probably means is that the app seems to "call home". I am actually concerned about the same thing due to the way the bookmarks file is formatted.
Title: Re: Questions to the Developer
Post by: Emdek on 2015-01-20, 10:05:10
@ersi, please elaborate more, what was the context of that post?
Title: Re: Questions to the Developer
Post by: ersi on 2015-01-20, 11:13:26
Rincewind wrote this: Conneting to the adblock server on every start - security issue?

I think he has detected that there's some connection made to some adblock server (?) when Otter starts up.

My own concern is about the extra url in metadata owner tag in bookmarks.xbel file. I don't know how to verify if apps call anywhere unnecessarily.
Title: Re: Questions to the Developer
Post by: py-thon on 2015-01-20, 13:29:49
I think there should be a setting for the frequency with which to connect to the adblock server. easylist.txt has 1,4 MB. I wouldn't want to download that daily just because one line has been changed or added.
Something like:
- Check at every program start
- Check at program start if last check more than 48 hours ago
- Check at program start if last check more than 7 days ago
- Don't check automatically. (combined with a button for manual check)
Title: Re: Questions to the Developer
Post by: Emdek on 2015-01-20, 13:51:37
@ersi, @py-thon, ah, that one.
AFAIK (I'm not the author of that part) it's checked each three days, some extra setting may make sense.
We have started rework of this code and we can include these suggestions too.

Note that it doesn't apply to default settings (content blocking is disabled by default).
Title: Re: Questions to the Developer
Post by: ersi on 2015-01-20, 17:49:35

@ersi, @py-thon, ah, that one.
AFAIK (I'm not the author of that part) it's checked each three days, some extra setting may make sense.
We have started rework of this code and we can include these suggestions too.

Note that it doesn't apply to default settings (content blocking is disabled by default).

It should be common sense that the app doesn't autoupdate or call anywhere unless the user makes an explicit request. I did not even know that adblock autoupdates itself. I know FF extensions, including adblocks, tend to autoupdate themselves, but I didn't know this is how in their mind it should work. It obviously shouldn't.

To appeal to privacy-aware people, Otter's adblock should behave as closely similar to Opera's urlfilter.ini as possible. The users should be able to customise the files, modify the contents and add files any way they want, and the files should not change automatically - definitely not by simply enabling adblock. If the adblock autoupdate is considered a desirable option, it should be a few explicit clicks away.

It's one thing to enable adblock. It's a completely different thing to enable autoupdates for adblock.
Title: Re: Questions to the Developer
Post by: Emdek on 2015-01-21, 08:52:29
@ersi, the closest replacement for urlfilter.ini would be special list created manually or using interface known from classic Opera, which is still missing.
We don't ship any content blocking rules, just headers with title and source URL, so they had to be updated at least once anyway.
Auto update makes sense as default, most of users of AdBlock expect it to work that way, just enable and forget about manual updates. Note that by default nothing gets downloaded as by default all lists are disabled.

What we need is new design for that dialog, probably new column with checkbox to decide if this list should be auto updated.
Or combo box, with update interval (lists may provide default value using ! Expires: rule) and special value, Never.
Title: Re: Questions to the Developer
Post by: ersi on 2015-01-21, 09:39:21
My position is the way it is because I thought adblock worked like urlfilter.ini. I have made some modifications to the adblock lists thinking that they would be preserved, and it would be sad if some random updates overwrite them. When I create my own adblock file, I most definitely expect it to stay the way I created it.
Title: Re: Questions to the Developer
Post by: Emdek on 2015-01-21, 10:04:55
@ersi, right now you can force that by removing ! URL: rule from modified file.
Title: Re: Questions to the Developer
Post by: ersi on 2015-04-03, 01:13:21
I noticed a "Click to load all plugins on the page", a puzzle icon in the address field. Does it load plugins for that specific tab? If yes, then maybe the more appropriate name is "Click to load all plugins in the tab".

And does it work only when plugins are blocked or set to load on demand? If yes, maybe add another similar icon to handle cookies, i.e. when cookies are disabled or set to "Never", then if the webpage has cookies, there would appear an icon to permit all cookies for that tab, until the tab is closed.
Title: Re: Questions to the Developer
Post by: Emdek on 2015-04-03, 10:46:29
@ersi, it's just for on demand, doing that for cookies is close to impossible, as we need to know if we should accept them before loads starts.
It behaves almost the same way as in Opera, including name.
You could use option to ask if specific cookie should be accepted, although right now that will lead to crash if there is more than one cookie. :-/
Title: Re: Questions to the Developer
Post by: denes on 2015-04-29, 14:58:27
Where's relaease #69? Announced but not uploaded.
I have been waiting all day.
Title: Re: Questions to the Developer
Post by: rappelkiste_src on 2015-04-30, 06:38:45
On otter-browser.org you can read:

Quote
Weekly report #69 (27-04-2015)
Yet another slow week:

12 commits by two authors,
seven new issues (3 closed),
123 issues still open (including 5 bugs).

No packages this time, but next week should be more productive. ;-)


@denes: So there will be no release this week.
Title: Re: Questions to the Developer
Post by: denes on 2015-04-30, 17:05:33

On otter-browser.org you can read:

Quote
Weekly report #69 (27-04-2015)
Yet another slow week:

12 commits by two authors,
seven new issues (3 closed),
123 issues still open (including 5 bugs).

No packages this time, but next week should be more productive. ;-)


@denes: So there will be no release this week.


:doh: OK, I got it. No package=no release. Doh.
Title: Re: Questions to the Developer
Post by: Epic on 2015-06-01, 13:10:06
In opera (blink) you can choose to show bookmarks on start page as a screenshots or site names can you create this feature for otter browser please
Title: Re: Questions to the Developer
Post by: ersi on 2015-06-01, 13:25:57

In opera (blink) you can choose to show bookmarks on start page as a screenshots or site names can you create this feature for otter browser please

Is this different from Speeddial in Opera Presto?
Title: Re: Questions to the Developer
Post by: Epic on 2015-06-01, 13:32:00
I dont know i was a little time user of the opera 12. (My main browser is opera (blink)But i like this feature.
http://blogs.opera.com/news/2014/11/image-preview-for-bookmarks-in-opera/
Title: Re: Questions to the Developer
Post by: ersi on 2015-06-01, 14:09:03

I dont know i was a little time user of the opera 12. (My main browser is opera (blink)But i like this feature.
http://blogs.opera.com/news/2014/11/image-preview-for-bookmarks-in-opera/

Looks like Speeddial-like previews migrated into Bookmarks manager. Similar to previews option in fancier file managers. Is that correct?

For me personally previews in Speeddial are perfectly sufficient. Big images over the entire Bookmarks manager are hard to sort and scroll.

Such big previews make sense only for a limited set of most-used bookmarks, like in Speeddial. Low priority elsewhere.
Title: Re: Questions to the Developer
Post by: Epic on 2015-06-01, 15:40:01


I dont know i was a little time user of the opera 12. (My main browser is opera (blink)But i like this feature.
http://blogs.opera.com/news/2014/11/image-preview-for-bookmarks-in-opera/

Looks like Speeddial-like previews migrated into Bookmarks manager. Similar to previews option in fancier file managers. Is that correct?

For me personally previews in Speeddial are perfectly sufficient. Big images over the entire Bookmarks manager are hard to sort and scroll.

Such big previews make sense only for a limited set of most-used bookmarks, like in Speeddial. Low priority elsewhere.

Yes i mean it for Speeddial. I know that it is not the best feature but it is good as an option that you can use i  don't mean something like "you need to create it now" I know it is a hard work. About file managers yes some file manager has this features even windows explorer has it as an option :-)
Title: Re: Questions to the Developer
Post by: Emdek on 2015-06-01, 21:13:12
@timur dokhnadze, beta 6 added start page (speed dial) which supports previews, but I'm not convinced that we should have such option for all of bookmarks, but since start page uses subset of them it would be easier to integrate that because storage could be shared (files are named after identifier of bookmark).
Title: Re: Questions to the Developer
Post by: janusz48 on 2015-06-02, 06:44:39
3 questions:
1.how to turn (On) save password?
2.when the e-mail client?
3.when adding extensions? 
Title: Re: Questions to the Developer
Post by: Emdek on 2015-06-02, 07:43:26
@janusz48, three answers:
1. it's not available yet but it will be one of the highest priosrity tasks for next beta, see #832 (https://github.com/OtterBrowser/otter-browser/issues/832);
2. there is no ETA yet, we have a volunteer on IRC which might try to create it as part of thesis but I'm not aware about progress yet, if that attempt will fail then we will have to wait for it some more months...
3. full blown extensions support also has no ETA yet but I'll try to resume my work on scriptlets soon (see #42 (https://github.com/OtterBrowser/otter-browser/issues/42)) and user scripts could be finally tackled as QtWebEngine stabilized their API which allows to support them more properly than was possible with QtWebKit.
Title: Re: Questions to the Developer
Post by: janusz48 on 2015-06-02, 09:30:42
It gets better.Thanks
Title: Re: Questions to the Developer
Post by: Freeman on 2015-06-04, 11:38:37
Are there any changes in page scrolling, around since build #72? Earlier versions of Otter have a bit tight scrolling on Windows, but since build #72 or whatever it become better, more similar to Opera 12.
Title: Re: Questions to the Developer
Post by: Emdek on 2015-06-04, 13:43:57
@Freeman, newest packages (in case of 32 bit, v2 ones) are built against Qt 5.4.2, so it is most likely upstream change.
Title: Re: Questions to the Developer
Post by: Freeman on 2015-06-09, 06:22:30
In build #75, scrolling become more tight, like in Chrome. I reverted my update to the previous beta.
Title: Re: Questions to the Developer
Post by: denes on 2015-06-30, 17:13:49
1. sorry to bother you, but why doesn't password manager is the main goal? Why isn't progressing anywhere?
Nice browser though, nearly the best, one of my favourite, but this lacking feature is annoying to me.
2. How am I able to set the width of the search bar?
Title: Re: Questions to the Developer
Post by: Emdek on 2015-07-06, 07:38:36
@denes, passwords manager is one of main goals for next beta.
Setting width per item is currently not possible but is planned (most likely we will save only ratio, it seems to be a good idea to avoid situations where search field could end up longer than address field when resizing window).
Title: Questions to the Developer
Post by: yarickpn on 2015-07-13, 12:05:23
Hi

I’m currently in the process of putting together an interview with the developer of BEEP and thought I would give you, the community the opportunity to offer up any questions you might have. Il be seeking questions for the next 24-48 hours so feel free to ask away. The questions can be on anything regarding the development process to the final product.

Thanks
David
Title: Questions to the Developer
Post by: yarickpn on 2015-07-17, 14:32:55
Good suggestion, Smooth. Ill be interested to see what you come up with regarding the three questions. Try and give the forum members a fair shot.
Title: Re: Questions to the Developer
Post by: ersi on 2018-03-18, 11:42:52
There's such an action as OtherAction here https://github.com/OtterBrowser/otter-browser/blob/master/src/core/ActionsManager.h

What does it do? Does it open pages/links in other applications?

Is there an action to open pages/links in external applications?
Title: Re: Questions to the Developer
Post by: Emdek on 2018-03-21, 09:41:15
@ersi, it's unused value that could be used to iterate values in enumeration.

To open active link in external application you can use OpenUrlAction with application parameter to select command and urlPlaceholder set to {linkUrl} (or {pageUrl}, there are more values too).
Title: Re: Questions to the Developer
Post by: ersi on 2018-03-21, 10:18:09
To open active link in external application you can use OpenUrlAction with application parameter to select command and urlPlaceholder set to {linkUrl} (or {pageUrl}, there are more values too).
Thank you.

What are the other values? Is there a value to launch a selection of text (as highlighted by mouse) in an external application?
Title: Re: Questions to the Developer
Post by: Emdek on 2018-03-21, 12:55:21
@ersi, available values are: clipboard, frameUrl, imageUrl, linkUrl, mediaUrl, pageUrl, selection (of course all require {}).