1. BronzeBeard's Avatar
    How much of Cascades is shared among processes at run-time? Because this isn't about migrating BB10 to QT5.x, and the 6 years of work you noted, would it make sense to use the QT 5 work to incrementally extend Cascades as needed? Of course, if the answer to the first question is not much (which is what I seem to remember), this idea would not save any resources in devices which, by today's standards, are resource constrained.

    If the above happens to be academic I am still curious if QT 5 extended QT 4 or is essentially a new library.
    If I recall Cascades is a fork of Qt4. So no, extending Qt4 with Qt5 modules would be a stupid amount of work, more so than just fixing the issues with Qt5 and patching Qt5.12 or backporting the latest QtWebkit to Qt5.2 (or which version version he's working on).

    Qt updates Major versions when there major systematic changes to the code. They do major API breakage at that time as well. I believe BB10 already has the latest stuff you can get with Qt4. The only active fork of Qt4 is Copperhead API. But I believe that would require a full port as all the BlackBerry code was removed.

    Posted via CB10
    05-18-20 10:34 PM
  2. DonHB's Avatar
    If I recall Cascades is a fork of Qt4. So no, extending Qt4 with Qt5 modules would be a stupid amount of work, more so than just fixing the issues with Qt5 and patching Qt5.12 or backporting the latest QtWebkit to Qt5.2 (or which version version he's working on).

    Posted via CB10
    Am I correct that the libraries are not shared in memory between processes in BB10? If so, would the RAM saved be worth the work? The idea is to "just" do QtWebkit and not worry about the rest. Assuming, the network stuff would work from Qt 4. At some future time something else will be chosen to back port, by someone else, etc. Overall the work would be more, but each project could be less. Sorry, don't know enough about Qt or how Cascades is at runtime.
    05-19-20 05:55 AM
  3. patrickjmquinn's Avatar
    Am I correct that the libraries are not shared in memory between processes in BB10? If so, would the RAM saved be worth the work? The idea is to "just" do QtWebkit and not worry about the rest. Assuming, the network stuff would work from Qt 4. At some future time something else will be chosen to back port, by someone else, etc. Overall the work would be more, but each project could be less. Sorry, don't know enough about Qt or how Cascades is at runtime.
    The Qt5 so's have to be embedded inside of each binary as they're not system level includes, not that big of a deal in terms of resource allocation to be honest. QtWebKit is still all kinda of broken in Qt5 (I see why they moved it off into its own submodule), but it's fixable. All of this work is reminding me how much I hated working with eclipse.
    Dunt Dunt Dunt likes this.
    05-19-20 10:29 AM
  4. app_Developer's Avatar
    The Qt5 so's have to be embedded inside of each binary as they're not system level includes, not that big of a deal in terms of resource allocation to be honest. QtWebKit is still all kinda of broken in Qt5 (I see why they moved it off into its own submodule), but it's fixable. All of this work is reminding me how much I hated working with eclipse.
    ) Eclipse is pure evil.
    Dunt Dunt Dunt likes this.
    05-19-20 10:40 AM
  5. DonHB's Avatar
    The Qt5 so's have to be embedded inside of each binary as they're not system level includes, not that big of a deal in terms of resource allocation to be honest. QtWebKit is still all kinda of broken in Qt5 (I see why they moved it off into its own submodule), but it's fixable. All of this work is reminding me how much I hated working with eclipse.
    That's why I asked my question. Since, the Passport is memory constrained by today's standards, if Cascades is shared in memory among processes extending it may save memory usage. Can't say if it would be enough savings for the effort. The other consideration is that only what is needed needs to be added to Cascades which would be 'just' QtWebkit and its dependencies. With each new project incrementally more could then be added.

    However, if there really is an advantage to having Qt5 (or a lot of it) on BB10, it could make the above considerations and the following thought much less material:

    Can the app integration of BB10 facilitate an alternative route for creating a foundational library?

    Sorry, I am not more familiar with Qt or Cascades. I hope I am asking these questions early enough should a different approach make sense.

    Regarding Eclipse, have you tried using the Visual Studio 2013 plugin? It should work with the Community version of VS.
    05-19-20 01:01 PM
  6. sgear256's Avatar
    Hi, I've been playing around with getting Qt 5.6(last version with BB mkspecs included) up and running for the past couple of days and just saw this thread. I've managed to get just about everything running except QtWebKit. By default the config has WebKit2 / QtWebKitQml disabled on QNX devices. It compiled just fine with WebKit2 support enabled though. However, upon making a basic Qt Quick application containing QWebView nothing is displayed. All of the libraries are loaded, the QWebProcess is launched, everything seems fine so I'm not sure what's wrong. Qt Widget applications with QWebView on the other hand work fine, to my understanding it's because they use WebKit1.

    I haven't had time to look at any details about the android runtime, but would it be theoretically possible to build an updated android runtime and wrap it around an application? So the bar file would contain the android app you want to run and the entire however-many-GB standalone android runtime?
    05-20-20 12:17 PM
  7. patrickjmquinn's Avatar
    Hi, I've been playing around with getting Qt 5.6(last version with BB mkspecs included) up and running for the past couple of days and just saw this thread. I've managed to get just about everything running except QtWebKit. By default the config has WebKit2 / QtWebKitQml disabled on QNX devices. It compiled just fine with WebKit2 support enabled though. However, upon making a basic Qt Quick application containing QWebView nothing is displayed. All of the libraries are loaded, the QWebProcess is launched, everything seems fine so I'm not sure what's wrong. Qt Widget applications with QWebView on the other hand work fine, to my understanding it's because they use WebKit1.

    I haven't had time to look at any details about the android runtime, but would it be theoretically possible to build an updated android runtime and wrap it around an application? So the bar file would contain the android app you want to run and the entire however-many-GB standalone android runtime?
    A i'm dealing with the exact same issues around webkit2. Would you be able to zip up your test project and send it over to me? I'm curious to see if you're trying to do what I am with the new interface!

    B Had the exact same idea, it would be a fairly sizeable effort to cross compile the Anbox runtime (as they've packaged things up to be modular and relatively cross platform) but its probably the best way to get it done.
    05-20-20 03:32 PM
  8. BronzeBeard's Avatar
    Without looking at the code, if memory serves me, you should be able to have webkit spit out a verbose debug log. That should tell you what exception is throwing internally that is preventing pages to render.

    Posted via CB10
    05-20-20 10:04 PM
  9. sgear256's Avatar
    I built a version of QtWebKit with debugging enabled the other day and ran it with the logging env vars set. It didn't output very much. In fact the only thing I remember it outputing was something about TextCheckerState not being implemented. What level of verbosity is expected? I likely configured the build incorrectly.

    Posted via CB10
    05-20-20 11:29 PM
  10. patrickjmquinn's Avatar
    For reference, these are the last know community builds of Qt5 for BB, they do not contain QtWebKit but it's nice to have them.

    https://w-bremer.de/en/downloads/category/4-blackberry
    Last edited by patrickjmquinn; 05-21-20 at 06:10 AM.
    05-21-20 04:53 AM
  11. patrickjmquinn's Avatar
    I built a version of QtWebKit with debugging enabled the other day and ran it with the logging env vars set. It didn't output very much. In fact the only thing I remember it outputing was something about TextCheckerState not being implemented. What level of verbosity is expected? I likely configured the build incorrectly.

    Posted via CB10
    What flags and arguments did you use when kicking off the configure and build process?
    05-21-20 04:54 AM
  12. sgear256's Avatar
    I built it with
    Code:
     perl Tools/Scripts/build-webkit --qt --install-libs="$(qmake -query QT_INSTALL_PREFIX)" --makeargs="-j4" --debug
    and ran it with the env var QT_WEBKIT_LOG set to 1. The only output was
    Code:
    UNIMPLEMENTED: 
    /home/owner/qtwebkit/Source/WebKit2/UIProcess/qt/TextCheckerQt.cpp(40) : static const WebKit::TextCheckerState& WebKit::TextChecker::state()
    05-21-20 01:55 PM
  13. BronzeBeard's Avatar
    I built it with
    Code:
     perl Tools/Scripts/build-webkit --qt --install-libs="$(qmake -query QT_INSTALL_PREFIX)" --makeargs="-j4" --debug
    and ran it with the env var QT_WEBKIT_LOG set to 1. The only output was
    Code:
    UNIMPLEMENTED: 
    /home/owner/qtwebkit/Source/WebKit2/UIProcess/qt/TextCheckerQt.cpp(40) : static const WebKit::TextCheckerState& WebKit::TextChecker::state()
    Judging by that, the issue might not be coming webkit, but embedding it into Qt5. Perhaps log the entire Qt output, both errors and stdout.

    Posted via CB10
    05-21-20 08:43 PM
  14. sgear256's Avatar
    This is the output from running with QT_LOGGING_RULES="*.debug=true" and QML_IMPORT_TRACE=1: https://pastebin.com/TVfMFQqX

    What's interesting is the instance of "Invalid URL:". It seems to have originated from qnetworkproxy_blackberry.cpp in "QNetworkProxyFactory::systemProxyForQuery" and is only present in the logs of WebKit2 QML applications. I'll look into this a little further when I have more time.

    Had an idea for a native Spotify client. There's an opensource library that's an alternative to the now deprecated libspotify called librespot. It's written in Rust but there are Go and Java ports so perhaps someone has ported or is working on a C/C++ port? If there is a C/C++ port it might not be too difficult to get it up and running on BB and begin building a Cascades client with it. Though usage of librespot might be in violation of Spotify's TOS
    05-23-20 11:22 AM
  15. BronzeBeard's Avatar
    Looking at basic documentation for Qt Invalid URL seems to be the default url. How are you feeding it pages to render? Perhaps you should dump the program output into this long so we know each stage the qt is at.


    url : QUrl

    This property holds the url of the web page currently viewed.

    Setting this property clears the view and loads the URL.

    By default, this property contains an empty, invalid URL.

    Posted via CB10
    05-23-20 04:35 PM
  16. sgear256's Avatar
    Looking at basic documentation for Qt Invalid URL seems to be the default url. How are you feeding it pages to render?
    The url is being assigned in the QML WebView element via url: "https://www.google.com".

    Perhaps you should dump the program output into this long so we know each stage the qt is at.
    How would one go about doing this?
    05-24-20 04:44 AM
  17. Simo_Dax's Avatar
    Not a big expert of WebKit, but I've seen that QtWebkit 2 was available also in Qt4.8. Maybe that version has more chances to work since it's the same Qt targeted by OS10

    EDIT: I'm assuming QtWebkit in pure Qt4.8 has a more recent version of Webkit with respect to the Native WebView. If that's not the case disregard my comment
    Last edited by Simo_Dax; 05-24-20 at 12:34 PM.
    05-24-20 07:05 AM
  18. patrickjmquinn's Avatar
    This is the output from running with QT_LOGGING_RULES="*.debug=true" and QML_IMPORT_TRACE=1: https://pastebin.com/TVfMFQqX

    What's interesting is the instance of "Invalid URL:". It seems to have originated from qnetworkproxy_blackberry.cpp in "QNetworkProxyFactory::systemProxyForQuery" and is only present in the logs of WebKit2 QML applications. I'll look into this a little further when I have more time.

    Had an idea for a native Spotify client. There's an opensource library that's an alternative to the now deprecated libspotify called librespot. It's written in Rust but there are Go and Java ports so perhaps someone has ported or is working on a C/C++ port? If there is a C/C++ port it might not be too difficult to get it up and running on BB and begin building a Cascades client with it. Though usage of librespot might be in violation of Spotify's TOS
    Super weird. i'm building a Spotify client based on Spo2fy, librespot requires rust and there is no C port AFIK, however there is an effort to port rust to BB10 https://github.com/berryamin/rust-on-bb10 so there is hope yet, as an in between step i'm using Youtube DL being streamed from a server to the media player class. It aint very above board but hey, at least non premium users can use it! (until we figure out librespot)

    As for the QML call passing the url, have you tried directly calling the QWebView from C++ (the appui .cpp file should be fine for a test) and passing the URI from there?

    Something like:

    MainWindow::MainWindow(QWidget *parent)
    : QMainWindow(parent)
    {
    m_pWebView = new QWebView(this);
    //set position and size
    m_pWebView->setGeometry(0,0,200,200);
    m_pWebView->load(QUrl("http://www.example.com"));
    }

    MainWindow::~MainWindow()
    {
    }
    05-24-20 11:06 AM
  19. ErickdelaA's Avatar
    Let's be the micro CEO. What one day was blacberry with BB 10 and let's get ahead.

    Posted via CB10
    05-24-20 11:34 AM
  20. Alexey Gurevski's Avatar
    One of the questions raised in first posts was regarding hardware. To me that's the bottleneck, perhaps on PP's SD 801 sites works better in general, but for S4/S4+ the performance is horrible.
    In my opinion even if you manage to switch to a newer WebKit the performance will be worse. Based on my experience, the more features software has the slower it works. And the modern IT industry produces more and more heavy and hungry monsters called Web Apps. I was also involved in that process developing Angular SPAs so I know what I'm talking about.
    A newer WebKit could give you better W3C standards support but I don't believe they improved the performance drastically. In general, I would say that the stock BB10 browser is okay in terms of standards. From time to time I experience issues on some missing CSS features, or lack of ES6 support, or certificates but that's nothing comparing to the slow performance.

    Don't want to demotivate you but imho you don't need to spend your efforts on a newer WebKit.

    Posted via CB10
    05-26-20 03:16 AM
  21. patrickjmquinn's Avatar
    One of the questions raised in first posts was regarding hardware. To me that's the bottleneck, perhaps on PP's SD 801 sites works better in general, but for S4/S4+ the performance is horrible.
    In my opinion even if you manage to switch to a newer WebKit the performance will be worse. Based on my experience, the more features software has the slower it works. And the modern IT industry produces more and more heavy and hungry monsters called Web Apps. I was also involved in that process developing Angular SPAs so I know what I'm talking about.
    A newer WebKit could give you better W3C standards support but I don't believe they improved the performance drastically. In general, I would say that the stock BB10 browser is okay in terms of standards. From time to time I experience issues on some missing CSS features, or lack of ES6 support, or certificates but that's nothing comparing to the slow performance.

    Don't want to demotivate you but imho you don't need to spend your efforts on a newer WebKit.

    Posted via CB10
    Well webkits render and paint processes have become a lot more efficient in the last half decade so that's worth bearing in mind. Secondly I've older devices with similar hardware to the less powerful BB devices running modern browsers that have no problem flying around modern Web Apps. Thirdly ES6 support, support for modern captchas etc really holds BB10 back IMO. It would be nice to get to a point where PWA is supported as that would really open things up.

    Posted via CB10
    anon(5597702) likes this.
    05-26-20 05:44 AM
  22. conite's Avatar
    One of the questions raised in first posts was regarding hardware. To me that's the bottleneck, perhaps on PP's SD 801 sites works better in general, but for S4/S4+ the performance is horrible.
    In my opinion even if you manage to switch to a newer WebKit the performance will be worse. Based on my experience, the more features software has the slower it works. And the modern IT industry produces more and more heavy and hungry monsters called Web Apps. I was also involved in that process developing Angular SPAs so I know what I'm talking about.
    A newer WebKit could give you better W3C standards support but I don't believe they improved the performance drastically. In general, I would say that the stock BB10 browser is okay in terms of standards. From time to time I experience issues on some missing CSS features, or lack of ES6 support, or certificates but that's nothing comparing to the slow performance.

    Don't want to demotivate you but imho you don't need to spend your efforts on a newer WebKit.

    Posted via CB10
    It would still be a lot better than using an Android browser.
    05-26-20 06:51 AM
  23. NaGMeT's Avatar
    PaperBird is a great native app. The developer does not plan to further develop it. It has a great feature like adding a shortcut to the home screen. Unlike other native browsers, these shortcuts open in the same application. I would like someone to continue working on this application. Application repository https://github.com/anpho/PaperBird
    05-26-20 07:37 AM
  24. Leyra B10's Avatar
    One of the questions raised in first posts was regarding hardware. To me that's the bottleneck, perhaps on PP's SD 801 sites works better in general, but for S4/S4+ the performance is horrible.
    In my opinion even if you manage to switch to a newer WebKit the performance will be worse. Based on my experience, the more features software has the slower it works. And the modern IT industry produces more and more heavy and hungry monsters called Web Apps. I was also involved in that process developing Angular SPAs so I know what I'm talking about.
    A newer WebKit could give you better W3C standards support but I don't believe they improved the performance drastically. In general, I would say that the stock BB10 browser is okay in terms of standards. From time to time I experience issues on some missing CSS features, or lack of ES6 support, or certificates but that's nothing comparing to the slow performance.

    Don't want to demotivate you but imho you don't need to spend your efforts on a newer WebKit.

    Posted via CB10
    I aggree with concern over the hardware, I think the browser could run a lot better than it does now. Network IO is pretty good if you can balance it, but the cache doesnt seem to work properly. My browsing is pretty predictable so I would reuse the disk cache a lot more if I could. I bet some new CSS features would be huge for their performance acceleration.

    Posted via CB10
    05-26-20 08:05 AM
  25. patrickjmquinn's Avatar
    PaperBird is a great native app. The developer does not plan to further develop it. It has a great feature like adding a shortcut to the home screen. Unlike other native browsers, these shortcuts open in the same application. I would like someone to continue working on this application. Application repository https://github.com/anpho/PaperBird
    Yes this is what i'm doing. Basically swapping out the QtWebKit version being used (The code is quite clean so its well compartmentalised thankfully) and then from there rework the UI as I feel it could be a little lighter and more intuitive. But otherwise it's a very solid project.
    05-27-20 07:15 AM
1,053 ... 34567 ...

Similar Threads

  1. Any chance there's a new BlackBerry coming up?
    By maryahshdid in forum BlackBerry Motion
    Replies: 6
    Last Post: 10-16-20, 07:32 PM
  2. My mother seems concerned I won't be able to get a new phone...
    By Munchkinguy in forum General BlackBerry News, Discussion & Rumors
    Replies: 29
    Last Post: 09-20-20, 11:21 AM
  3. Need old builds of BB10.
    By imradlol in forum BlackBerry 10 OS
    Replies: 12
    Last Post: 05-07-20, 10:59 AM
  4. BlackBerry adds new channel partners for BlackBerry Radar
    By CrackBerry News in forum CrackBerry.com News Discussion & Contests
    Replies: 0
    Last Post: 05-05-20, 11:51 AM
  5. Is a brand new BlackBerry Curve 9220 worth any money these days?
    By CrackBerry Question in forum Ask a Question
    Replies: 2
    Last Post: 05-05-20, 08:27 AM
LINK TO POST COPIED TO CLIPBOARD