Notices


Reply
Thread Tools
Posts: 400 | Thanked: 1,591 times | Joined on Dec 2013
#1
Just like promised the last week I spend some time coding a webbrowser for Sailfish which supports landscape and supports tabbing.
I based my work on the tinywebbrowser project by Mike7b4. So thanks for the initial code and inspiration.

The current features of the browser so far:
  • Landscape support
  • Tabbing support (real without reloading of tabs)
  • Bookmark support
  • Setting browser user agent
  • Setting default font sizes
  • Opening up links in new tab (by long press and hold on link)
  • Copy links (by long press and hold on link)
  • Open rtsp, rtmp and mms links with external viewer (e.g. LLs VideoPlayer)
  • Setting DNS Prefetch
  • Setting Offline WebApplication Cache
  • Manually add bookmark with specific user agent
  • Fast scroll to top or bottom of page
  • Watch Youtube with internal or external player (e.g. LLs VideoPlayer) with direct link
  • Download Youtube videos
  • Private Browsing
  • Clear Cache, Cookies, History
  • ReaderMode (with NightMode)
  • Copy text from website
  • Search text in website
  • Keyboard hotkeys
  • Session support
  • HTML5 Video Tag detection
  • Embeded Youtube detection
  • Integrated file manager
  • Integrated Download Manager
  • Keyboard Hotkeys (for TOHKBD or bluetooth keyboards)
  • Set as default browser
  • Backup Manager (Import/Export Bookmarks,Cookies,History,Settings)
  • Proxy Support
  • Fast Tab Switching
  • Create Website Launchers
  • Cookie Manager

You can find the code here: https://github.com/llelectronics/webcat
RPM here: https://openrepos.net/sites/default/...-1.armv7hl.rpm
Tablet (i486) RPM: https://openrepos.net/sites/default/...0.2-1.i486.rpm

It is recommend to use QtWebkit 5.212 from Version 2.9.7 onwards.
You can currently find RPMs here: https://openrepos.net/content/llelec...ebkit-5212-dev

Update:
Version 3.0.2
  • Make quickscroll area smaller, appear after bigger threshold, and don't react on pressed
  • fine tune extraThreshold for landscape quickscroll
  • Disable some debug output
  • Fixed moving of files (causing loss of data) in filemanager
  • Fixed filepicker not able to select files
  • Faster tab switching
  • Don't loose keyboard shortcuts on tab switch / creating new Tab
  • Add function to get nextTab and prevTab
  • Added shortcut for quick tab switching ctrl+tab & ctrl+shift+tab
  • hide tabBar and bookmarkList before switching tab
  • Open Filemanager immediate and don't perform animation when entering about:file
  • Add more keyboard shortcuts (Ctrl+W - Close, Ctrl+T - New Tab, Ctrl+N - New Window, Escape - Stop)
  • Allow swiping on urlTitle (only visible after website loaded completely) to switch tabs
  • Use threshold value resolution dependent for back/forward swipes on minimized toolbar
  • Fix highlighted tab not filling whole width with highlight

Version 3.0.1
  • Fixed mimetype set as default browser
  • Fixed keyboard shortcut for showing bookmarks not working
  • Q should open up bookmarks/tab view aswell [like on BB10]
  • Press A on keyboard to add current page to bookmarks
  • Fixed editing of bookmarks / manually adding bookmarks
  • Fixed wrong aligned ulrtext when pressing U shortcut on keyboard
  • Made fancyscroller width a little bit shorter
  • Fixed create folder in home + showing error message when folder cannot be created
  • Don't show Add to places for home dir

Version 3.0.0
  • Only add default bookmarks once on first start (not if bookmarks are empty)
  • Cleanup (Make TabBar otherComponent)
  • Added nightMode Button (replaced newWindow button) [Thx to Dharmendra63]
  • Updated urls for default bookmarks
  • Port away from SelectUrl page and use TabBar and BookmarkList components (faster navigation less clutter)*
  • Added workaround for rendering cut when window in background
  • Doubleclick on Goto Button switches to previous Tab
  • Distinguish single and doubleClick on gotoButton more and don't fire singleClick event when doubleClicking (200msec delay timer checks for single and double click)
  • Hide webview when bookmarkList is visible (more performance on some devices)
  • Added File Properties Page for FM
  • Open internal video player for audio files aswell
  • Allow opening files with a click on file icon in properties
  • Added RenameDialog + show full size of directories
  • Added CreateDirDialog + fixed removing of folders
  • Added permissionDialog
  • Adapt to new SailfishOS Gallery video player defaults (Close button top right, Fullscreen button bottom right)
  • Fixed margin bottom of fullscreenbutton + margin right for when maxTime is not visible
  • Proper fix for video player component size and anchors after exiting fullscreen or changing orientation
  • Added placesPage for FileManager
  • Removed Pulleymenuitems available in placesPage and add properties to pulleymenu in filemanager
  • Calculate dirSize in background so it does not freeze FileManager UI
  • Added option to add custom bookmarks to placesPage
  • Allow renaming of custom places items
  • Allow setting desktop link to Webcat Fileman
  • Double click on video player component switches to or from fullscreen
  • Disable Split WebView as not working anymore
  • Fixed Video Player Component wrongly anchored on close
  • VideoPlayer Component takes now 1/3 of the the screensize in portrait mode and allows you to browse the web while watching a video
  • Allow swiping video player component up and down to reposition when not in fullscreen or landscape
  • Make sure webview gets visible when exiting fullscreen in portrait mode*
  • Make sure to hide webview on fullscreen all the time
  • Removed pressandhold on gotoButton and quick extraToolbar navigation
  • Cleaned up extraToolbar. Removed newTab + closeTab.
  • Visually redesigned MenuPopup to match rest of Webcat
  • Always show 7 items in extra toolbar and align them to screen size
  • Removed menuPopup from Tabbar (is available now in extraToolbar)
  • Make extraToolbar bigger
  • Use solid highlight color dimmed down as tabbar highlight (show active tab)
  • Removed Jolla Tides default bookmark (website not active anymore)
  • Added tor icon in tab/gotoButton if tor is enabled
  • Fixed infoBanner for proxyPage and tor disabling
  • Fixed urltext anchoring and switch to webtitle + weburl when title of webpage is available
  • Fixed mediaDownloadRec overlaying menuPopup
  • Fixed webview height/width by anchoring it to page and hide toolbars (except minimized main toolbar) at page end
  • Simulate quickScroll UI in FancyScroller when in landscape mode
  • Don't minimize toolbar when loading initial default about: urls
  • Fixed mediadetect running on touchend conflicts with previously detected media (disabled touchend)
  • Only check youtube url and add url to history if not about: url
  • Don't hide mediaDownloadRec if atYBeginning and atYEnd
  • Better workaroundRefresh method
  • Set pixelAligned to true (slightly smoother website scrolling)

Version 2.9.8
  • Detect HTML5 Media elements and embedded youtube videos after website completely loaded
  • Cleaned up Mediadetect.js (make mediadetect rerun html5 a+v & yt embed detect on touchend)
  • Some cleanup (make toolbar browserComponent and separate it from firstPage)
  • Fixed show sun/moon icon when in readermode and toolbar is expanded again
  • Some cleanup (make extraToolbar browserComponent and separate it from firstPage)
  • Fixed some errors in TabList
  • Updated translations
  • Give visual feedback when started in private mode (Closes #59)
  • Sync fmhelper changes with (LLs video Player) -> Copy/Move process in background
  • Get rid of warnings during compile
  • Make MediaDownloadRec browserComponent and separate it from firstPage
  • Fixed mixed content media site (HTML5 + YT) download button
  • Added Sailfish-Browser to share menu
  • Use slightly different approach for devicepixelratio hack that visually looks more pleasing
  • Prevent worker thread of FolderListModel from starting immediately
    de-duplicate some expensive calls
  • Set contextProperties up before loading qml to avoid error messages
  • Enable certain features only on newer qtwebkit versions if available (MediaSource Support, Autoplay Blockage)
  • Added workaround for taphighlight not working on qtwebkit 5.212

Version 2.9.7
  • Long press on close button in tabview closes all tabs
  • Hide bookmarkbutton by default only show when urlbar is focussed
  • Replace reload button in extraToolbar with closeTabButton
  • Reduce spacing between BackIcon and ForwardIcon in toolbar
  • Split Bookmarkspage in 2 columns with bookmarks on the left and tabs on the right if in landscape
  • Added optional input method by long pressing on input box (opens a native input editing dialog)
  • Updated devicePixelRatioHack
  • Enable experimental.overview to better work with devicePixelRatioHack
  • Deactivated pollyfills that aren't necessary anymore (new qtwebkit 5.212 takes care of it upgrade to it if you need svg and full es6 support)
  • Save if media in MediaList is ytMedia
  • Disable HTML5 Audio & Video workarounds (qtwebkit 5.212 takes care of html5 audio + video)
  • Enable HTML5 Audio Tag detection and add to MediaList
  • Slight update of the default user agent
  • Handle onEnterFullScreen and onExitFullScreen
  • Fix Restore Backup functionality
  • Replaced old Adblocker rules with something more recent
  • Attach to window.onload instead of overwriting it (fixes some sites like acid3 test or css3 test not loading)
  • Some DevicePixelRatioHack.js optimizations
  • Added alternative webkit user agent *(used by Sailfish Browser for youtube)
  • Updated Jolla Sailfish Browser user agent

You can get the app in the warehouse and jolla store aswell and rate it there

Videodemonstration: http://youtu.be/1uVjaETqmMA
0.9-1 Videodemo: http://www.youtube.com/watch?v=nNYjdr5tCSs
0.9.6 Videodemo: http://youtu.be/vttkJgKOK48
1.9.9 Videodemo: http://youtu.be/WZXlqOrLKK8
2.0.9 Videodemo: https://youtu.be/Ck2TND0-PwE
2.1.0 Videodemo Backupmanager: https://youtu.be/sBge7JAlXro
2.2.0 Videodemo Fast Tab Switching: https://youtu.be/iaeMNppgOSQ
2.3 Videodemo:https://www.youtube.com/watch?v=MeffwP7SXkY
3.0 New Features:https://youtu.be/Tm4uT1YZdfQ
__________________
Donation for my sailfish apps via PayPal

Donate using Liberapay

Last edited by llelectronics; 2018-08-01 at 21:30.
 

The Following 67 Users Say Thank You to llelectronics For This Useful Post:
TMavica's Avatar
Posts: 2,007 | Thanked: 1,017 times | Joined on Apr 2010 @ Hong Kong
#2
nothing can see after install when I start it
__________________
The Glorious Lady T.Mavica
Twitter https://twitter.com/TMavica
 
Posts: 45 | Thanked: 76 times | Joined on Dec 2013 @ Bruxelles
#3
Thanks for your work. But I have two problems:
1)doesn't work installed by Warehouse(i have installed manually) 2) When you launch the application there is a blank page
Attached Images
 
 
Posts: 400 | Thanked: 1,591 times | Joined on Dec 2013
#4
Hmm... need to debug it. Just a sec.
__________________
Donation for my sailfish apps via PayPal

Donate using Liberapay
 
Posts: 751 | Thanked: 2,797 times | Joined on Jan 2011 @ Czech Republic
#5
I have also experienced these two errors (not being able to install through Warehouse and the blank screen).

The error code of the former is:
Code:
[W] unknown:11 - file:///usr/share/harbour-webcat/qml/pages/helper/db.js:11: Error: no such column: agent Unable to execute statement
[W] unknown:107 - file:///usr/share/harbour-webcat/qml/pages/helper/db.js:107: Error: no such table: settings Unable to execute statement
I know it's hard to debug such things when databases persist in the SDK

EDIT: Nevermind, that was not the right advice. But the error lies there.

Last edited by nodevel; 2014-01-11 at 15:45.
 
Posts: 400 | Thanked: 1,591 times | Joined on Dec 2013
#6
For the white screen please make sure to have qt5-qtgraphicaleffects installed.
I will upload a new package with this as dependency when I figured out the db.js problem.
Thx for your help and patience.
__________________
Donation for my sailfish apps via PayPal

Donate using Liberapay
 

The Following 2 Users Say Thank You to llelectronics For This Useful Post:
Posts: 400 | Thanked: 1,591 times | Joined on Dec 2013
#7
Update: I think I fixed it: https://openrepos.net/sites/default/...-2.armv7hl.rpm
__________________
Donation for my sailfish apps via PayPal

Donate using Liberapay
 

The Following 5 Users Say Thank You to llelectronics For This Useful Post:
Morpog's Avatar
Posts: 956 | Thanked: 2,628 times | Joined on Nov 2011
#8
llelectronics you won't make it to harbour with gt5-qtgraphicaleffects
 
Posts: 400 | Thanked: 1,591 times | Joined on Dec 2013
#9
Really ? Hmm... then I need to think about something else to make it to harbour.
__________________
Donation for my sailfish apps via PayPal

Donate using Liberapay
 
Posts: 751 | Thanked: 2,797 times | Joined on Jan 2011 @ Czech Republic
#10
Thanks! Looks great!

Just few issues I noticed:
  • The URL bar covers a small part of the page - on one website I visit, there a link to switch to mobile version, which is currently hidden behind the bar (I just noticed that the bar becomes thinner after scrolling, but only on longer pages).
  • The tab bar is visually bit confusing - not really sure what is current tab... You could remove the 'New tab' and 'Close' buttons as they're accessible through the pulley menu
  • Would you consider adding bookmark editing function? It is quite easy to edit bookmarks in the default browser (through a config file), but since here it's in a database... It is difficult to make a bookmark pointing to http://talk.maemo.org/search.php?do=getnew
  • Switching to landcape and then back to portrait zooms the page in
  • Rotation animation is not very smooth

These are just minor issues - I am very impressed by your work. I wouldn't have imagined something would replace the default browser in its initial version. Simply amazing.
 
Reply

Tags
browser, webbrowser

Thread Tools

 
Forum Jump


All times are GMT. The time now is 21:51.