Droplet browser is a lightweight browser for Sailfish OS.
You can continue scrolling through your events feed or chatting away in your chat app, while it fetches your requested websites in the background. No more switching/peeking back and forth between the browser and your requested app, until the website is ready.
This is not a replacement, but a complementary addition to the Sailfish Browser. (That's why the feature "Double tap to open in Sailfish Browser"!)
Features:
Source Code: https://github.com/saidinesh5/harbour-droplet
TODO Board: https://github.com/saidinesh5/harbour-droplet/projects/1
NOTE: This application needs the applet layer patch enabled to function properly. You can get it via. patchmanager (from https://openrepos.net/content/saidinesh5/sailfishos-lipstick-enable- applets ) or the Patchmanager 2.0 catalog. (from https://coderus.openrepos.net/pm2/project/sailfishos-lipstick-enable-app... ). Without this patch, it cannot accept input and does not hide when the lock screen is on.
NOTE: v0.3 won't work on Sailfish version < 2.1
P.S Don't forget this is still a work in progress
Attachment | Size | Date |
---|---|---|
harbour-droplet-0.1master.20170129233749.1.g5e3b1a1-10.10.1.jolla_.armv7hl.rpm | 162.07 KB | 30/01/2017 - 03:17 |
harbour-droplet-0.2-10.16.1.jolla_.armv7hl.rpm | 162.08 KB | 01/02/2017 - 20:29 |
harbour-droplet-0.3-10.18.1.jolla_.armv7hl.rpm | 162.91 KB | 02/05/2017 - 06:43 |
version: 0.3
- Built for Sailfish OS 2.1
- Added support for command line activation
- Disabled System Gestures when Applets are raised (Needs Applet Layer patch 0.0.3 to work)
- Added support for longPress to peek
- Made the animations feel smoother
version: 0.2
- Fixed the broken Droplet count in the harbour-droplet app
- Made the BubbleStack expand from the location where it was on (for easier one handed operation)
- A more Sailfishified Icon, thanks to Ingvix
version: 0.1
- Added Double tap a link to bypass Droplet browser
- Added a fallback mode for applet view - to work on unpatched lipstick
- Added Bookmarks and History
- Handle the downloads via. Sailfish Browser
- Initial commit Of what seems to be a barely working droplet-browser
Comments
saidinesh5
Sun, 2017/02/05 - 18:53
Permalink
But applets are similar to dialogs (The connect to internet button on Events view) and not apps. A more integrated feel would be touch outside the dialog/applet to "minimize/lower" the applet. (to be implemented).
For eg. an applet to let you reply to an incoming chat message in a little text input at the top of the screen. Imagine: touching outside the textinput to close the applet, as opposed to doing the close gesture to close it - and not be sure if it is the app you're in , that you're trying to close or just the applet. (Purely hypothetical example).
Ingvix
Wed, 2017/02/08 - 20:16
Permalink
Well one counter argument here would probably be that with the applet browser open it covers almost the whole screen so intuitively one might considers it more like an app than an applet.
I'm pretty much okay with either procedure, just saying.
crakby
Wed, 2017/02/01 - 22:52
Permalink
I like the placing of BubbleStack...now it's comfortable with one hand, thank you.
DameCENO
Wed, 2017/02/01 - 18:35
Permalink
Hi everyone, just installed the app and it crashes everytime it tries to initialize, any ideas? I am on 2.0.5.6
I am still looking for a native browser that supports downloading links through android download managers... A decent download manager with resume capabilitties and spliting of downloads into blocks still missing among native apps
A system restart still didn't solve the issue
saidinesh5
Wed, 2017/02/01 - 20:40
Permalink
Could you check out the updated version? It seems sailfish-qml binary is not pre installed on all devices.
Right now , I am developing this on my port of Sailfish OS to my phone. I am yet to fix the Android app support on it (via. SFdroid). So I am not really sure how to accomplish this.
If you can confirm a command like this opens some android browser on your phone, I can add support for using this command for fetching download links.
(am should be somewhere in (ANDROID_INSTALL_ROOT)/system/am)
DameCENO
Thu, 2017/02/02 - 13:43
Permalink
Thanks man, no need for the command line, the update fixed the issue, it is a unique browser concept, koudos man, really amazing but as you pointed out it is still in beta stage. I can't even get the enter url option. As I was saying earlier, is there a way to share download links in this browser with download managers on the phone I would stop using firefox android for good.
Thanks in advance man
saidinesh5
Thu, 2017/02/02 - 14:16
Permalink
Oh the command is for me to find out how to send a link to a download manager of Android.
(My device currently does not have Android app support). I need to know if such a command works for you and what the path to am is on your device.
Also I actually removed the enter URL option as to discourage users from using this as the primary browser. If you are already "inside a browser" to type something, you might as well use a decent browser which can render all pages. (That's also why duckduckgo is one of the bookmarks, incase anyone already entered the browser to type something)
DameCENO
Thu, 2017/02/02 - 20:02
Permalink
I am no savy on command lines or finding out where the am you talk about is, but would gladly check it out for you if you can guide me on how to. I am on Jolla 1 with android support enabled.
It beats me why you would want to discourage anyone from using this as a default browser for daily use? I currently rely on UCweb mini for all of my needs, go to firefox android when I need to get links for ADM android as no native download manager worth out time is yet available. So if your browser can replace firefox for me, it would mean so much
Just ran the code you provided earlier and got this error
bash: am: command not found
any ideas?
saidinesh5
Fri, 2017/02/03 - 02:03
Permalink
I think I figured out how to send an intent to an Android process from https://github.com/RikudouSage/sailfishos-firefox-default-handle . I will implement this after this 13th though. Right now my hands are very full.
The problem with this browser is (Other than certain important features like Authentication/File Dialogues still not implemented) that the QML Webview is very outdated and is in a very bad shape. It simply can't handle many web pages. I am hoping the next Sailfish version will fix this. If not, I will try to base the WebView on the Sailfish Browser or something else that works semi decent. Right now this Webview can't even handle Youtube/any other html videos or even the Google+ page in the About section.
DameCENO
Wed, 2017/03/15 - 22:16
Permalink
Can you please just included the removed enter url option? Yes you are right, the browser Webkit still needs some polishing, but even at it current state is so appealing. I eagerly await the update of your app and the option for sharing download links with android downloaders as you said...
Keep up the amazing work Dinesh
Ingvix
Wed, 2017/02/01 - 11:08
Permalink
I hope you also add a landscape mode support. Just noticed it only works in portrait mode.
saidinesh5
Wed, 2017/02/01 - 20:42
Permalink
Added this to the TODO list. The next 2 weeks, I won't be able to work on this project much because of some tests i need to be preparing for. So the progress will be a little slow
fravaccaro
Tue, 2017/01/31 - 21:36
Permalink
can you add compatibility with URLs from Android apps?
saidinesh5
Wed, 2017/02/01 - 20:55
Permalink
This has to be implemented via. a separate little Android app, that would invoke this browser on Android Intents.
I need to know if android apps can have access to this path: /usr/bin/harbour-droplet or the DBus SessionBus to be able to implement that. Could you find that out?
Also, out of curiosity there are browsers similar to this in the Android app store. https://flynxapp.com/ , https://play.google.com/store/apps/details?id=com.flyperinc.flyperlink . If they work, it should be easier to set them as the default browser instead.
fravaccaro
Wed, 2017/02/01 - 23:26
Permalink
Here's a raw output of a link opened from an Android app, hope it's useful :) Btw, can an icon linking to standard Sailfish Share UI be added to Droplet toolbar? Feb 01 20:49:54 Sailfish start_alien.sh[13551]: CANNOT LINK EXECUTABLE: could not load library "libcutils.so" needed by "grep"; caused by empty/missing DT_HASH in "libcutils.so" (built wit...h-style=gnu?) Feb 01 20:49:54 Sailfish start_alien.sh[13551]: CANNOT LINK EXECUTABLE: could not load library "libcutils.so" needed by "grep"; caused by empty/missing DT_HASH in "libcutils.so" (built wit...h-style=gnu?) Feb 01 20:49:54 Sailfish dbus-daemon[963]: Activating service name='org.sailfishos.browser.ui' Feb 01 20:49:54 Sailfish dbus-daemon[963]: Successfully activated service 'org.sailfishos.browser.ui' Feb 01 20:49:55 Sailfish booster-browser[4077]: [D] QWaylandEglClientBufferIntegration::QWaylandEglClientBufferIntegration:62 - Using Wayland-EGL Feb 01 20:49:56 Sailfish ohmd[536]: *** resource_request: register 42 Feb 01 20:49:56 Sailfish prestart[3806]: [D] onCompleted:103 - ViewPlaceholder requires a SilicaFlickable parent Feb 01 20:49:56 Sailfish ohmd[536]: *** resource_request: audio 42 Feb 01 20:49:56 Sailfish ohmd[536]: *** resource_request: update 42 Feb 01 20:49:57 Sailfish lipstick[1040]: [D] CoverActionModel::update:131 - void CoverActionModel::update() Clearing model Feb 01 20:49:57 Sailfish lipstick[1040]: [D] CoverActionModel::update:144 - void CoverActionModel::update() "Added action: 0 image://theme/icon-cover-new" Feb 01 20:49:57 Sailfish lipstick[1040]: [D] onCompleted:289 - Cover action created 0 image://theme/icon-cover-new sailfish-browser.desktop Feb 01 20:49:57 Sailfish lipstick[1040]: [D] onCompleted:257 - coverActionIndicators created sailfish-browser.desktop Feb 01 20:49:57 Sailfish lipstick[1040]: [D] onDestruction:293 - Cover action destroyed sailfish-browser.desktop Feb 01 20:49:57 Sailfish lipstick[1040]: [D] onCompleted:289 - Cover action created 0 image://theme/icon-cover-new sailfish-browser.desktop Feb 01 20:49:57 Sailfish invoker[3678]: WARNING: An inactive plugin is misbehaving - tried to show a window! Feb 01 20:49:57 Sailfish invoker[3678]: WARNING: requestActivate() called for QQuickView(0x396160) which has Qt::WindowDoesNotAcceptFocus set. Feb 01 20:49:57 Sailfish org.sailfishos.browser.ui[963]: EmbedLiteExt virtual nsresult EmbedChromeManager::Observe(nsISupports*, const char*, const char16_t*):82: obj:(nil), top:app-startup Feb 01 20:49:57 Sailfish org.sailfishos.browser.ui[963]: EmbedLiteExt virtual nsresult EmbedTouchManager::Observe(nsISupports*, const char*, const char16_t*):86: obj:(nil), top:app-startup Feb 01 20:49:57 Sailfish org.sailfishos.browser.ui[963]: greHome from GRE_HOME:/usr/bin Feb 01 20:49:57 Sailfish org.sailfishos.browser.ui[963]: libxul.so is not found, in /usr/bin/libxul.so Feb 01 20:49:57 Sailfish org.sailfishos.browser.ui[963]: Created LOG for EmbedLite Feb 01 20:49:57 Sailfish org.sailfishos.browser.ui[963]: Loaded xulDir:/usr/lib/xulrunner-qt5-38.8.0/libxul.so, appDir:/usr/bin Feb 01 20:49:57 Sailfish org.sailfishos.browser.ui[963]: EmbedLiteGlobalHelper app-startup Feb 01 20:49:57 Sailfish org.sailfishos.browser.ui[963]: EmbedLiteSyncService app-startup Feb 01 20:49:57 Sailfish org.sailfishos.browser.ui[963]: PREFS SERVICE INITAILIZED Feb 01 20:49:57 Sailfish org.sailfishos.browser.ui[963]: EmbedPrefService app-startup Feb 01 20:49:57 Sailfish org.sailfishos.browser.ui[963]: EmbedliteDownloadManager initialized Feb 01 20:49:57 Sailfish prestart[3806]: [W] qt_png_warning:499 - libpng warning: iCCP: known incorrect sRGB profile Feb 01 20:49:57 Sailfish org.sailfishos.browser.ui[963]: UserAgentOverrideHelper app-startup Feb 01 20:49:57 Sailfish org.sailfishos.browser.ui[963]: 1485978597928 addons.manager DEBUG Application has been upgraded Feb 01 20:49:58 Sailfish org.sailfishos.browser.ui[963]: 1485978598060 addons.manager DEBUG Loaded provider scope for resource://gre/modules/addons/XPIProvider.jsm: ["XPIProvider"] Feb 01 20:49:58 Sailfish org.sailfishos.browser.ui[963]: 1485978598079 addons.manager DEBUG Loaded provider scope for resource://gre/modules/LightweightThemeManager.jsm...emeManager"] Feb 01 20:49:58 Sailfish org.sailfishos.browser.ui[963]: 1485978598100 addons.manager DEBUG Loaded provider scope for resource://gre/modules/addons/GMPProvider.jsm Feb 01 20:49:58 Sailfish org.sailfishos.browser.ui[963]: 1485978598115 addons.manager DEBUG Loaded provider scope for resource://gre/modules/addons/PluginProvider.jsm Feb 01 20:49:58 Sailfish org.sailfishos.browser.ui[963]: 1485978598120 addons.manager DEBUG Starting provider: XPIProvider Feb 01 20:49:58 Sailfish org.sailfishos.browser.ui[963]: 1485978598122 addons.xpi DEBUG startup Feb 01 20:49:58 Sailfish org.sailfishos.browser.ui[963]: 1485978598130 addons.xpi DEBUG checkForChanges Feb 01 20:49:58 Sailfish org.sailfishos.browser.ui[963]: 1485978598136 addons.xpi DEBUG Loaded add-on state from prefs: {} Feb 01 20:49:58 Sailfish org.sailfishos.browser.ui[963]: 1485978598143 addons.xpi DEBUG getInstallState changed: false, state: {} Feb 01 20:49:58 Sailfish org.sailfishos.browser.ui[963]: 1485978598148 addons.xpi DEBUG Empty XPI database, setting schema version preference to 16 Feb 01 20:49:58 Sailfish org.sailfishos.browser.ui[963]: 1485978598151 addons.xpi DEBUG No changes found Feb 01 20:49:58 Sailfish org.sailfishos.browser.ui[963]: 1485978598153 addons.manager DEBUG Registering shutdown blocker for XPIProvider Feb 01 20:49:58 Sailfish org.sailfishos.browser.ui[963]: 1485978598156 addons.manager DEBUG Provider finished startup: XPIProvider Feb 01 20:49:58 Sailfish org.sailfishos.browser.ui[963]: 1485978598157 addons.manager DEBUG Starting provider: LightweightThemeManager Feb 01 20:49:58 Sailfish org.sailfishos.browser.ui[963]: 1485978598157 addons.manager DEBUG Registering shutdown blocker for LightweightThemeManager Feb 01 20:49:58 Sailfish org.sailfishos.browser.ui[963]: 1485978598162 addons.manager DEBUG Provider finished startup: LightweightThemeManager Feb 01 20:49:58 Sailfish org.sailfishos.browser.ui[963]: 1485978598165 addons.manager DEBUG Starting provider: GMPProvider Feb 01 20:49:58 Sailfish org.sailfishos.browser.ui[963]: 1485978598175 addons.manager DEBUG Registering shutdown blocker for GMPProvider Feb 01 20:49:58 Sailfish org.sailfishos.browser.ui[963]: 1485978598179 addons.manager DEBUG Provider finished startup: GMPProvider Feb 01 20:49:58 Sailfish org.sailfishos.browser.ui[963]: 1485978598180 addons.manager DEBUG Starting provider: PluginProvider Feb 01 20:49:58 Sailfish org.sailfishos.browser.ui[963]: 1485978598181 addons.manager DEBUG Registering shutdown blocker for PluginProvider Feb 01 20:49:58 Sailfish org.sailfishos.browser.ui[963]: 1485978598184 addons.manager DEBUG Provider finished startup: PluginProvider Feb 01 20:49:58 Sailfish org.sailfishos.browser.ui[963]: 1485978598184 addons.manager DEBUG Completed startup sequence Feb 01 20:49:59 Sailfish prestart[3806]: [D] QMozWindowPrivate::setSize:71 - Trying to set empty size: QSize(-1, -1) ^Z [2]+ Stopped journalctl -f
saidinesh5
Thu, 2017/02/02 - 13:05
Permalink
I will look into the ShareUI thing. Not sure how much of work it would be for me to implement this, so added this to my TODO list.
Also not sure what to make out of the logs you just pasted :P
Could you install an Android file manager application like say Astro File Manager or CyanogenMod file manager and see if you can access the file /usr/bin/harbour-droplet from it?
fravaccaro
Fri, 2017/02/03 - 03:35
Permalink
great, thanks :)
I'm on Jolla C, I can confirm the binary is accessible from Android.
saidinesh5
Sun, 2017/02/05 - 18:56
Permalink
Great! I will probably make a little android app to listen to url intents and invoke /usr/bin/harbour-droplet <url> after this 14th. (Command line activation is now available in the latest code in the repo)
P.S If anyone reading this knows their way around Android SDK (a very basic knowledge is enough), feel free to implement this.
crakby
Tue, 2017/01/31 - 04:09
Permalink
Very very nice. I'm really impressed!
Could you think about, to align the first widget top right, if the website shown and then row up to left, because top left is the only place I cannot reach with my thumb.
saidinesh5
Tue, 2017/01/31 - 17:00
Permalink
Just finished Implementing the functionality that the BubbleStack starts expanding from whichever side it was on. That way you can both expand and collapse the Bubble with the same thumb. (Y)
Ingvix
Mon, 2017/01/30 - 13:52
Permalink
Quite nice. I think you should favor using silica icons and theme colors with what ever you can so it would feel like more integrated part of the system. Anyway, a much nicer way to open links from apps.
Also if you like, I'd be interested in creating a more sailfish-like app icon for this.
saidinesh5
Mon, 2017/01/30 - 15:10
Permalink
Right now the overlay window is not a Silica ApplicationWindow, so I coudln't use many Silica components there. I will have to look into this once the basics are done. The progress indicator and the labels are all Silica components though.
Feel free to Sailfishify the icon. It is an inkscape svg: https://github.com/saidinesh5/harbour-droplet/blob/master/qml/images/har... .
Ingvix
Tue, 2017/01/31 - 14:43
Permalink
How's this? https://ingvix.dy.fi/ss/170131-96.svg
saidinesh5
Tue, 2017/01/31 - 17:03
Permalink
Perfect! Replaced the current icon with this. In the about page, it looked a little odd, so retained the old picture there. https://github.com/saidinesh5/harbour-droplet/commit/8ef338588f83c4506a8...
Pages