doubledeej

Members
  • Posts

    6
  • Joined

  • Last visited

Posts posted by doubledeej

  1. Not that I would retract anything I suggested so far, but I have actually debugged and resolved this issue [without the source code] - BTSync can send a cheque when they actually make money from it :)

     

    First, I simply assumed BTSync is not directly responsible and that it is the IE plugin's fault - which seems a safe assumption. The IE plugin works pretty straightforward, you simply give it files and it serves them.  Also, the symptoms seems pretty much that CSS was not being served to the embedded browser. I could especially reinforce this line of thinking when I also started looking at Syncthing and got almost an identical issue, but this time on three browsers FF, IE and Chrome.   So if neither BTSync and Syncthing explicitly set their CSS mimes in their HTML head tags, on windows, the registry would be used to determine the mimetype.  So I checked.

     

    For whatever reason, it seems there are a lot of Windows machines for which the HKCR\\.css type is set to text/plain - which according to W3C spec would be considered invalid by the UA (browsers).  I corrected this and suddenly Syncthing was up and running on 3 different browsers.  Then upgraded BTSync to 1.4 again and boom - now works like a charm!

     

    Suggestions:

    • I'll keep to my mantra of adding a HTTP daemon and CLI to windows distro instead of embedding IE
    • However, for now, BT should update 1.4 to explicitly set the type attr of the HTML linking the CSS so BTSync is independent of the OS mimetypes - minimizing points of failure
    • And in the meantime, win users could simply correct their registry mimetype to get BTSync 1.4 to work.

     

    Enjoy!

    Same thing fixed mine here... css was set to text/plain.  Changing it to text/css fixed it right up.

  2. All three main browsers have been embeddable for some years now  (FF was probably first since the late '90s if memory serves - I clearly remember using it as ActiveX control in Delphi 5 days - and did it that you could even choose if you wanted to use IE or FF as the engine) - takes some digging, some tweaking and a couple of SDKs to do it properly though.  As said, also wouldn't be my first choice these days.  If you really want a HTML-ish interface there are a million nice toolsuites available to do it with in anything from VS to Eclipse.

     

    PS: Also less trouble than you would think to embed FF. Nice thing is you then have a safe and stable snapshot of FF only for your app.  As long as it works for your app, you don't have to worry about updates, fixes, patches, etc - it only every browse to localhost, so proxies, caching, security, etc all goes out the door.  All you really use is the rendering engine.  And, as long as it works for your HTML, it is irrelevant to ever update it.  These days however I would probably have gone for a WebKit rendering engine though - then you would have been compatible effectively with any Chrome or Android rendering - and master of just about 3 billion devices.... if, that is, I could not go for a pure httpd daemon and you held a gun to my head and forced me to embed "something".  Millions of projects like this: http://sourceforge.net/projects/wke/

    Most of the projects to embed browsers have been defunct for quite some time.  I certainly wouldn't use one -- all of the ones I saw earlier today haven't been updated in months or years.  As for including someone's web browser code in my own distributable, yikes... that's something I don't think many developers would want to deal with or support.  What's so wrong with using the rendering engine built into the OS?

  3. +1

     

    Development lessons BT are learning the hard way today:

     

    • You don't make big UI change like this, not test it properly and leave your software without a GUI - effectively making it unusable. At a minimum BT should have kept the old UI around for a version or two as alternative for a situation just like this.
    • You never embed IE. Rather opt for embedding FireFox or Chrome. IE is customized by every big corporation, it is neither forward nor backward compatible even on CSS level.
    • You don't assume Windows users are all "obviously" using IE. Reality is IE has not been even the 3rd most popular browser on Windows for almost 5 years.  Only place IE is more "popular" is in the Fortune 500 companies where a "Microsoft only"-policy exist, and they are definitely not even testing BTSync... yet.

     

    Suggestion: Revert back to 1.3. And because BT also did not test reverting back and 1.3 won't run on the same settings as 1.4, do the following - Uninstall 1.4, then go delete your AppData\Roaming\BT Sync folder, reinstall 1.3 and setup all your folders again.  Worked for me.

    Not looking to pick a fight, or provoke anyone, but how does one "embed" Firefox or Chrome?  As far as I know neither of those browsers export embeddable objects.

     

    According to the Mozilla site, the only way to embed Firefox is to actually include Firefox in your distributable.  Ick.  That means maintaining and updating their code as part of your own.  I don't think anyone would go for that.  It would make the product HUGE, and you'd really have to update the product every time a new Firefox build was released.  What a huge headache for the developers and end-users.

     

    The Chromium embedded project doesn't exactly look like it is actively maintained.  And it is "still very much a work in progress."  Not exactly something I'd want to be part of a project I'm trying to support if I was a BTSync developer.  Only stable, production code for me.

     

    The WebBrowser control in Windows, as goofy as it is to work with, is still the easiest solution.  Everybody running Windows already has it.  I suspect the problem here has more to do with the way the pages are being served rather than the way they're being rendered anyway.  In my case it is acting as if the CSS can't be downloaded.

  4. @doubledeej / @ugumba - what internet security/anti virus software do you both run? Let's see if we can find a connection here!

     

    (also, @doubledeej - what OS are you running?)

    I'm just using Security Essentials and the built-in Windows Firewall.  I temporarily disabled both and the problem remains.

     

    I've reset my IE zones and protected mode is disabled for all zones.  Still, same problem.

     

    I have several apps of my own that use the OS' built-in web browser control and they all work fine.

     

    I'm on Windows 7 Ultimate.  The problem also exists on my laptop and my PC at work, both on Windows 7 Pro.