This is now fixed!
As this was a major issue everyone (donator or not) can download the upgrade to 4.03.
See https://www.b4x.com/android/forum/threads/abmaterial-framework-for-webapps.60072/ for the download link.
Or donators can also use the feedback app to download version 4.03.
For anyone upgrading from Chipmunk, it is very important you also read the included Checklist 4.00 pdf file!
Here is also the latest readme.txt for version 4.03:
As this was a major issue everyone (donator or not) can download the upgrade to 4.03.
See https://www.b4x.com/android/forum/threads/abmaterial-framework-for-webapps.60072/ for the download link.
Or donators can also use the feedback app to download version 4.03.
For anyone upgrading from Chipmunk, it is very important you also read the included Checklist 4.00 pdf file!
Here is also the latest readme.txt for version 4.03:
B4X:
INTRO
-----
This is a maintenance update to make ABM compatible with B4J 6.00, so no major typical ABM changes, just some new features.
As this version is simulatiously released to donators and the public, users that still work with Chipmunk NEED to read the 'ABMaterial 4.00 Checklist.pdf' file!
**************************************************************************************************
Some older quicklists for updates from earlier versions can be found in the other README files.
**************************************************************************************************
NOTE: When you add a case to the Feedback App, please check from time to time as I may need some extra info before I can proceed.
GENERAL
-------
If you are upgrading from 3.00+ or earlier versions of ABMaterial.
please see the document(s). I saved it in a couple of formats, so you can copy/paste code:
Also, you can use the Template project to copy and paste code into your own projects.
ABMaterial 3.20 Checklist.docx
ABMaterial 3.20 Checklist.pdf
Version 2.20+ of ABMaterial introduces the ABMGridBuilder!
The ABMGridBuilder is a tool to make grids easy. It is based on the excellent system introduced by Shoelace.io. I adapted the system so it is usefull for ABMaterial and added some specific functionalities like adding rows and cells before others.
With the tool, you can generate the needed AddRow and AddCell B4J methods. Using the Clipboard, you can then paste it at the relevant place in your code.
But even more! You can copy your AddRow and AddCell methods to the clipboard, and ABMGridBuilder can parse this code an 'rebuild' the visual representation. Cool, no?
You can find the ABMGridBuilder in the zip file. I've created two .bat files to start them: one for a 'light' themed version and one for a 'dark' themed version:
Start.bat
StartDark.bat
The code in the bat file contains a very important parameter: -Dprism.order=sw
This parameter is needed because I use a very big canvas, and without it, it will not work.
----------------------------------------------
java -jar -Dprism.order=sw ABMGridBuilder.jar
----------------------------------------------
INSTALL NOTES:
--------------
Take a backup of your existing version. These zips contains the library files AND the new javascript/css files.
1. Download: Donators -> see the Download section in the feedback app http://feedback.abmaterial.com
Public -> see the forum post https://www.b4x.com/android/forum/threads/abmaterial-framework-for-webapps.60072/
2. Copy the library files to your b4j library folder (all jars and xml)
5. For your own projects, copy the www folder to your project www folder and overwrite the files
Refreshing the browser (F5) may be needed! (Or pulling down on your mobile device to refresh the browser).
NEW/FIXES
---------
[NEW] Made ABMaterial compatible with B4J 6.00
----------------------------------------------
The major reason for this quick release. As the file structure of B4J 6.00 has changed, I had to update the Analysing code of ABMaterial too.
[NEW] Support for the Browsers Passive Event Listeners
------------------------------------------------------
Browsers have introduced a feature to speed up scrolling on mobile browsers. Thanks to EventListenerOptions you have the ability to tell the browser that you just want to do your stuff and you are not gonna call preventDefault. However, unfortunately they decided to change a parameter of an existing function so it kind of breaks all existing libraries. I found some kind of polyfill and improved it so there will be fewer warnings/errors. Some libraries (like google maps) are not yet updated by Google, so they still can broadcast warnings.
You can toggle this feature with the ABM.EnablePassiveEventListeners() property (default = true)
[NEW] UseAlternativeScrollBar now also works with a dynamic Navigation Bar
--------------------------------------------------------------------------
The previous version only worked when you create all the sidebar items in the BuildNavigationBar method. The new version can now also handle it when you add your sidebar items in the ConnectNavigationBar method.
Note: You still need to set .UseAlternativeScrollBar() in the BuildNavigationBar method so the necessary libraries are loaded!
[NEW] Do not block zoom
-----------------------
In ABM 4.00, by default zoom in mobile devices is disabled. You can enable it again:
Usage:
in ABMApplication, Initialize:
ABM.AllowZoom = True
This sets the meta tag as it was in ABM 3.
[NEW] Frappé Charts print support
---------------------------------
I added the needed javascript code so Frappé Charts (see tutorial https://www.b4x.com/android/forum/threads/abmaterial-alternative-lightweight-charts.86010/#content) can now also be printed.
Note that you will need to use the new www\js\custom\frappe-charts.min.iife.403.js
[NEW] ABMLabel Blockquote set block width
-----------------------------------------
In the label theme, you can set the width of the little bar on the left (in pixels)
[NEW] ABMCustomComponent set style and class on the wrapper div
---------------------------------------------------------------
Usage:
ABMComp.Initialize("ABMComp", Me, InternalPage, ID, CSS)
ABMComp.SetWrapperDivStyle("min-height:" & HeightPx & "px;")
ABMComp.SetWrapperDivStyle("myclass1 myclass2")
Happy programming!
Alwaysbusy
Last edited: