<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Blog @ SIB Visions</title>
	<atom:link href="http://blog.sibvisions.com/feed/" rel="self" type="application/rss+xml" />
	<link>https://blog.sibvisions.com</link>
	<description>Blog @ SIB Visions</description>
	<lastBuildDate>Mon, 13 Apr 2026 09:47:01 +0000</lastBuildDate>
		<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>VisionX Previewer - Tabset update</title>
		<link>https://blog.sibvisions.com/2026/04/13/visionx-previewer-tabset-update/</link>
		<comments>https://blog.sibvisions.com/2026/04/13/visionx-previewer-tabset-update/#comments</comments>
		<pubDate>Mon, 13 Apr 2026 09:46:25 +0000</pubDate>
		<dc:creator>mhandsteiner</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[News]]></category>
		<category><![CDATA[VisionX Previewer]]></category>

		<guid isPermaLink="false">https://blog.sibvisions.com/?p=9454</guid>
		<description><![CDATA[To kick off the week, we're rolling out a brand-new tabset for you. Our previous implementation was a bit too static and didn't handle swipe gestures as smoothly as we wanted. It also lacked the fluidity you'd expect on modern mobile devices.
A tabset should feel effortless - fast, responsive, and intuitive. That's why we’ve taken [...]]]></description>
			<content:encoded><![CDATA[<p>To kick off the week, we're rolling out a brand-new tabset for you. Our previous implementation was a bit too static and didn't handle swipe gestures as smoothly as we wanted. It also lacked the fluidity you'd expect on modern mobile devices.</p>
<p>A tabset should feel effortless - fast, responsive, and intuitive. That's why we’ve taken this component back to the workshop and given it a serious upgrade.</p>
<p>Here’s a quick look at how the new version stacks up against the old one:</p>
<p><center></p>
<table>
<tr>
<td><div id="attachment_9455" class="wp-caption aligncenter nomargin" style="width: 266px"><a href="https://blog.sibvisions.com/wp-content/uploads/2026/04/tab_old.gif" rel="lightbox[9454]"><img src="https://blog.sibvisions.com/wp-content/uploads/2026/04/tab_old.gif" alt="Tabset (old)" title="tab_old" width="256" height="492" class="size-full wp-image-9455" /></a><p class="wp-caption-text">Tabset (old)</p></div></td>
<td style="width: 15px;">&nbsp;</td>
<td><div id="attachment_9456" class="wp-caption aligncenter nomargin" style="width: 266px"><a href="https://blog.sibvisions.com/wp-content/uploads/2026/04/tab_new.gif" rel="lightbox[9454]"><img src="https://blog.sibvisions.com/wp-content/uploads/2026/04/tab_new.gif" alt="Tabset (new)" title="tab_new" width="256" height="492" class="size-full wp-image-9456" /></a><p class="wp-caption-text">Tabset (new)</p></div></td>
</tr>
</table>
<p></center></p>
<p>That makes using a tabset so much more fun <img src='https://blog.sibvisions.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>https://blog.sibvisions.com/2026/04/13/visionx-previewer-tabset-update/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>VisionX Previewer - Style the menu</title>
		<link>https://blog.sibvisions.com/2026/04/10/visionx-previewer-style-the-menu/</link>
		<comments>https://blog.sibvisions.com/2026/04/10/visionx-previewer-style-the-menu/#comments</comments>
		<pubDate>Fri, 10 Apr 2026 10:13:07 +0000</pubDate>
		<dc:creator>mhandsteiner</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[News]]></category>
		<category><![CDATA[VisionX Previewer]]></category>

		<guid isPermaLink="false">https://blog.sibvisions.com/?p=9449</guid>
		<description><![CDATA[The next highlight in our styling offensive: the Main Menu.
With just a few tweaks to spacing, corner radius, and colors, you can give your app an entirely new look. A couple of entries in mobile_style.mxl — and your app transforms instantly.







Look forward to more customization options  
]]></description>
			<content:encoded><![CDATA[<p>The next highlight in our styling offensive: the Main Menu.</p>
<p>With just a few tweaks to spacing, corner radius, and colors, you can give your app an entirely new look. A couple of entries in mobile_style.mxl — and your app transforms instantly.</p>
<p><center></p>
<table>
<tr>
<td><div id="attachment_9450" class="wp-caption aligncenter nomargin" style="width: 172px"><a href="https://blog.sibvisions.com/wp-content/uploads/2026/04/mainmenu_old.png" rel="lightbox[9449]"><img src="https://blog.sibvisions.com/wp-content/uploads/2026/04/mainmenu_old-162x300.png" alt="Main menu (old)" title="mainmenu_old" width="162" height="300" class="size-medium wp-image-9450" /></a><p class="wp-caption-text">Main menu (old)</p></div></td>
<td style="width: 15px"></td>
<td><div id="attachment_9451" class="wp-caption aligncenter nomargin" style="width: 172px"><a href="https://blog.sibvisions.com/wp-content/uploads/2026/04/mainmenu_new.png" rel="lightbox[9449]"><img src="https://blog.sibvisions.com/wp-content/uploads/2026/04/mainmenu_new-162x300.png" alt="Main menu (new)" title="mainmenu_new" width="162" height="300" class="size-medium wp-image-9451" /></a><p class="wp-caption-text">Main menu (new)</p></div></td>
</table>
<p></center></p>
<p>Look forward to more customization options <img src='https://blog.sibvisions.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>https://blog.sibvisions.com/2026/04/10/visionx-previewer-style-the-menu/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>VisionX Previewer - Styling</title>
		<link>https://blog.sibvisions.com/2026/04/09/visionx-previewer-styling/</link>
		<comments>https://blog.sibvisions.com/2026/04/09/visionx-previewer-styling/#comments</comments>
		<pubDate>Thu, 09 Apr 2026 15:54:28 +0000</pubDate>
		<dc:creator>rjahn</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[News]]></category>
		<category><![CDATA[VisionX Previewer]]></category>

		<guid isPermaLink="false">https://blog.sibvisions.com/?p=9427</guid>
		<description><![CDATA[You can now customize your apps better than before. 
You already have the ability to design the screens exactly the way you want. You decide the layout and the positioning of the elements according to your preferences. With a few style settings, the app can then be visually enhanced. 
Until now, the entire application frame, [...]]]></description>
			<content:encoded><![CDATA[<p><strong>You can now customize your apps better than before. </strong></p>
<p>You already have the ability to design the screens exactly the way you want. You decide the layout and the positioning of the elements according to your preferences. With a few style settings, the app can then be visually enhanced. </p>
<p>Until now, the entire application frame, such as the menu and the appearance of input fields, buttons, tables, etc., could only be customized in the native code. But that is not something you can do in just a few seconds.</p>
<p>That is why we started making parts of the app/theme customizable. For example, you now have the option to define the corner radius, control button colors centrally, and much more.</p>
<p>Here is a small example:</p>
<p><center></p>
<table>
<tr>
<td><div id="attachment_9432" class="wp-caption aligncenter nomargin" style="width: 172px"><a href="https://blog.sibvisions.com/wp-content/uploads/2026/04/menu_old.png" rel="lightbox[9427]"><img src="https://blog.sibvisions.com/wp-content/uploads/2026/04/menu_old-162x300.png" alt="Menu (old)" title="menu_old" width="162" height="300" class="size-medium wp-image-9432" /></a><p class="wp-caption-text">Menu (old)</p></div></td>
<td style="width: 15px"></td>
<td><div id="attachment_9433" class="wp-caption aligncenter nomargin" style="width: 172px"><a href="https://blog.sibvisions.com/wp-content/uploads/2026/04/menu_new.png" rel="lightbox[9427]"><img src="https://blog.sibvisions.com/wp-content/uploads/2026/04/menu_new-162x300.png" alt="Menu (new)" title="menu_new" width="162" height="300" class="size-medium wp-image-9433" /></a><p class="wp-caption-text">Menu (new)</p></div></td>
</table>
<p></center><br />
Just set custom colors for menu header and footer.</p>
<p>Next example, an example screen:</p>
<p><center></p>
<table>
<tr>
<td><div id="attachment_9435" class="wp-caption aligncenter nomargin" style="width: 172px"><a href="https://blog.sibvisions.com/wp-content/uploads/2026/04/color_old.png" rel="lightbox[9427]"><img src="https://blog.sibvisions.com/wp-content/uploads/2026/04/color_old-162x300.png" alt="Default color" title="color_old" width="162" height="300" class="size-medium wp-image-9435" /></a><p class="wp-caption-text">Default color</p></div></td>
<td style="width: 15px"></td>
<td><div id="attachment_9436" class="wp-caption aligncenter nomargin" style="width: 172px"><a href="https://blog.sibvisions.com/wp-content/uploads/2026/04/color_new.png" rel="lightbox[9427]"><img src="https://blog.sibvisions.com/wp-content/uploads/2026/04/color_new-162x300.png" alt="Custom colors" title="color_new" width="162" height="300" class="size-medium wp-image-9436" /></a><p class="wp-caption-text">Custom colors</p></div></td>
</table>
<p></center><br />
Use custom colors for buttons, custom border radius for buttons, input fields, tables.</p>
<p>Show images as avatar:</p>
<p><center></p>
<table>
<tr>
<td><div id="attachment_9438" class="wp-caption aligncenter nomargin" style="width: 172px"><a href="https://blog.sibvisions.com/wp-content/uploads/2026/04/old.png" rel="lightbox[9427]"><img src="https://blog.sibvisions.com/wp-content/uploads/2026/04/old-162x300.png" alt="Image (portrait)" title="old" width="162" height="300" class="size-medium wp-image-9438" /></a><p class="wp-caption-text">Image (portrait)</p></div></td>
<td style="width: 15px"></td>
<td><div id="attachment_9439" class="wp-caption aligncenter nomargin" style="width: 172px"><a href="https://blog.sibvisions.com/wp-content/uploads/2026/04/avatar.png" rel="lightbox[9427]"><img src="https://blog.sibvisions.com/wp-content/uploads/2026/04/avatar-162x300.png" alt="Image (avatar)" title="avatar" width="162" height="300" class="size-medium wp-image-9439" /></a><p class="wp-caption-text">Image (avatar)</p></div></td>
</table>
<p></center></p>
<p>If you want, show border around images like this one:</p>
<p><center></p>
<table>
<tr>
<td><div id="attachment_9441" class="wp-caption aligncenter nomargin" style="width: 172px"><a href="https://blog.sibvisions.com/wp-content/uploads/2026/04/image_noborder.png" rel="lightbox[9427]"><img src="https://blog.sibvisions.com/wp-content/uploads/2026/04/image_noborder-162x300.png" alt="Signature (no border)" title="image_noborder" width="162" height="300" class="size-medium wp-image-9441" /></a><p class="wp-caption-text">Signature (no border)</p></div></td>
<td style="width: 15px"></td>
<td><div id="attachment_9442" class="wp-caption aligncenter nomargin" style="width: 172px"><a href="https://blog.sibvisions.com/wp-content/uploads/2026/04/image_border_style.png" rel="lightbox[9427]"><img src="https://blog.sibvisions.com/wp-content/uploads/2026/04/image_border_style-162x300.png" alt="Signature (border)" title="image_border_style" width="162" height="300" class="size-medium wp-image-9442" /></a><p class="wp-caption-text">Signature (border)</p></div></td>
</table>
<p></center></p>
<p>And as a little extra, menu button arrow now animates:</p>
<p><center><div id="attachment_9446" class="wp-caption aligncenter nomargin" style="width: 330px"><a href="https://blog.sibvisions.com/wp-content/uploads/2026/04/menubutton.gif" rel="lightbox[9427]"><img src="https://blog.sibvisions.com/wp-content/uploads/2026/04/menubutton.gif" alt="Buton animation" title="menubutton" width="320" height="512" class="size-full wp-image-9446" /></a><p class="wp-caption-text">Buton animation</p></div><br />
</center></p>
<p>Look forward to more customization options <img src='https://blog.sibvisions.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>https://blog.sibvisions.com/2026/04/09/visionx-previewer-styling/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>VisionX Previewer - No records in table</title>
		<link>https://blog.sibvisions.com/2026/03/30/visionx-previewer-no-records-in-table/</link>
		<comments>https://blog.sibvisions.com/2026/03/30/visionx-previewer-no-records-in-table/#comments</comments>
		<pubDate>Mon, 30 Mar 2026 11:14:36 +0000</pubDate>
		<dc:creator>rjahn</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[News]]></category>
		<category><![CDATA[VisionX Previewer]]></category>

		<guid isPermaLink="false">https://blog.sibvisions.com/?p=9418</guid>
		<description><![CDATA[We've got a small but sweet update for you!
Up until now, the table would just show a big empty space whenever there were no records. Not super helpful.
To keep things clearer, we now show a friendly hint when there's nothing to display:




/td>



Enjoy the update!
]]></description>
			<content:encoded><![CDATA[<p>We've got a small but sweet update for you!</p>
<p>Up until now, the table would just show a big empty space whenever there were no records. Not super helpful.<br />
To keep things clearer, we now show a friendly hint when there's nothing to display:</p>
<p><center></p>
<table>
<tr>
<td>
<div id="attachment_9419" class="wp-caption aligncenter nomargin" style="width: 167px"><a href="https://blog.sibvisions.com/wp-content/uploads/2026/03/no_records_old.png" rel="lightbox[9418]"><img src="https://blog.sibvisions.com/wp-content/uploads/2026/03/no_records_old-157x300.png" alt="No records (old)" title="no_records_old" width="157" height="300" class="size-medium wp-image-9419" /></a><p class="wp-caption-text">No records (old)</p></div></td>
<td style="width: 15px"></td>
<td><div id="attachment_9420" class="wp-caption aligncenter nomargin" style="width: 167px"><a href="https://blog.sibvisions.com/wp-content/uploads/2026/03/no_records.png" rel="lightbox[9418]"><img src="https://blog.sibvisions.com/wp-content/uploads/2026/03/no_records-157x300.png" alt="No records (new)" title="no_records" width="157" height="300" class="size-medium wp-image-9420" /></a><p class="wp-caption-text">No records (new)</p></div></td>
</table>
<p></center></p>
<p>Enjoy the update!</p>
]]></content:encoded>
			<wfw:commentRss>https://blog.sibvisions.com/2026/03/30/visionx-previewer-no-records-in-table/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Flutter UI customizing</title>
		<link>https://blog.sibvisions.com/2026/03/23/flutter-ui-customizing/</link>
		<comments>https://blog.sibvisions.com/2026/03/23/flutter-ui-customizing/#comments</comments>
		<pubDate>Mon, 23 Mar 2026 15:43:44 +0000</pubDate>
		<dc:creator>rjahn</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[News]]></category>

		<guid isPermaLink="false">https://blog.sibvisions.com/?p=9408</guid>
		<description><![CDATA[We have a few new features for our VisionX Previewer app. As announced last week, here are the details of the new features.
Below you'll find links to the documentation for each item:
Theme customizing
Background customizing
Client-side encryption
Biometric &#038; PIN authentication
Screen styling
Editor styling/features
Menu styling
An empty menu will now look like:
All changes will be available with next VisionX and [...]]]></description>
			<content:encoded><![CDATA[<p>We have a few new features for our VisionX Previewer app. As announced last week, here are the details of the new features.</p>
<p>Below you'll find links to the documentation for each item:</p>
<p><strong><a href="https://doc.sibvisions.com/flutterui/theme_customizing">Theme customizing</a></strong></p>
<p><strong><a href="https://doc.sibvisions.com/flutterui/background_customizing">Background customizing</a></strong></p>
<p><strong><a href="https://doc.sibvisions.com/flutterui/clientside_encryption">Client-side encryption</a></strong></p>
<p><strong><a href="https://doc.sibvisions.com/flutterui/biopin_security">Biometric &#038; PIN authentication</a></strong></p>
<p><strong><a href="https://doc.sibvisions.com/flutterui/screen_styles">Screen styling</a></strong></p>
<p><strong><a href="https://doc.sibvisions.com/flutterui/editor_features">Editor styling/features</a></strong></p>
<p><strong><a href="https://doc.sibvisions.com/flutterui/menu_styles">Menu styling</a></strong></p>
<p>An empty menu will now look like:</p>
<div id="attachment_9415" class="wp-caption aligncenter nomargin" style="width: 272px"><a href="https://blog.sibvisions.com/wp-content/uploads/2026/03/empty_menu.png" rel="lightbox[9408]"><img src="https://blog.sibvisions.com/wp-content/uploads/2026/03/empty_menu-262x300.png" alt="Empty menu" title="empty_menu" width="262" height="300" class="size-medium wp-image-9415" /></a><p class="wp-caption-text">Empty menu</p></div>
<p>All changes will be available with next VisionX and App update!</p>
]]></content:encoded>
			<wfw:commentRss>https://blog.sibvisions.com/2026/03/23/flutter-ui-customizing/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ButtonGroup component</title>
		<link>https://blog.sibvisions.com/2026/03/20/buttongroup-component/</link>
		<comments>https://blog.sibvisions.com/2026/03/20/buttongroup-component/#comments</comments>
		<pubDate>Fri, 20 Mar 2026 14:46:26 +0000</pubDate>
		<dc:creator>rjahn</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[News]]></category>
		<category><![CDATA[VisionX Previewer]]></category>

		<guid isPermaLink="false">https://blog.sibvisions.com/?p=9396</guid>
		<description><![CDATA[We've added a cool new component for you. It's a list of buttons that together look like a button bar.
Flutter already provides this component out of the box, but without customizing the app you can't use it. To make sure you can use it even without customization, we implemented the ButtonGroup class on the server [...]]]></description>
			<content:encoded><![CDATA[<p>We've added a cool new component for you. It's a list of buttons that together look like a button bar.<br />
Flutter already provides <a href="https://api.flutter.dev/flutter/material/ToggleButtons-class.html">this component</a> out of the box, but without customizing the app you can't use it. To make sure you can use it even without customization, we implemented the ButtonGroup class on the server side.</p>
<p>If you now include the class in a screen like this:</p>
<div class="codesnip-container" >
<div class="java codesnip" style="font-family:monospace;"><span class="kw3">ButtonGroup</span> butgrp <span class="sy0">=</span> <span class="kw1">new</span> <span class="kw3">ButtonGroup</span><span class="br0">&#40;</span><span class="br0">&#41;</span><span class="sy0">;</span></p>
<p>butgrp.<span class="me1">setHorizontalAlignment</span><span class="br0">&#40;</span>IAlignmentConstants.<span class="me1">ALIGN_CENTER</span><span class="br0">&#41;</span><span class="sy0">;</span><br />
butgrp.<span class="me1">setMode</span><span class="br0">&#40;</span>ButtonGroupMode.<span class="me1">MultiSelection</span><span class="br0">&#41;</span><span class="sy0">;</span></p>
<p>butgrp.<span class="me1">setLabels</span><span class="br0">&#40;</span><span class="st0">&quot;Left&quot;</span>, <span class="st0">&quot;Middle&quot;</span>, <span class="st0">&quot;Right&quot;</span>, <span class="kw2">null</span>, <span class="kw2">null</span>, <span class="st0">&quot;Five&quot;</span><span class="br0">&#41;</span><span class="sy0">;</span><br />
butgrp.<span class="me1">setImages</span><span class="br0">&#40;</span><br />
&nbsp; UIImage.<span class="me1">getImage</span><span class="br0">&#40;</span>UIImage.<span class="me1">OK_SMALL</span><span class="br0">&#41;</span>, <br />
&nbsp; <span class="kw2">null</span>, <span class="kw2">null</span>, <br />
&nbsp; UIImage.<span class="me1">getImage</span><span class="br0">&#40;</span>UIImage.<span class="me1">TRASH_SMALL</span><span class="br0">&#41;</span>, <br />
&nbsp; UIFontAwesome.<span class="me1">getImage</span><span class="br0">&#40;</span>IFontAwesome.<span class="me1">ADN_SMALL</span><span class="br0">&#41;</span><span class="br0">&#41;</span><span class="sy0">;</span></p>
<p>butgrp.<span class="me1">eventAction</span><span class="br0">&#40;</span><span class="br0">&#41;</span>.<span class="me1">addListener</span><span class="br0">&#40;</span><span class="kw1">this</span><span class="sy0">::</span>doButtonGroupChanged<span class="br0">&#41;</span></div>
</div>
<p>you will see the following in the latest app:</p>
<div id="attachment_9399" class="wp-caption aligncenter nomargin" style="width: 310px"><a href="https://blog.sibvisions.com/wp-content/uploads/2026/03/buttongroup.jpg" rel="lightbox[9396]"><img src="https://blog.sibvisions.com/wp-content/uploads/2026/03/buttongroup-300x163.jpg" alt="Button group" title="buttongroup" width="300" height="163" class="size-medium wp-image-9399" /></a><p class="wp-caption-text">Button group</p></div>
<p>You now have another very helpful component that you can integrate into your custom apps.</p>
<p>Have fun <img src='https://blog.sibvisions.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>https://blog.sibvisions.com/2026/03/20/buttongroup-component/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Big News! We&#039;ve reached the next level with Flutter 3.41</title>
		<link>https://blog.sibvisions.com/2026/03/16/big-news-weve-reached-the-next-level-with-flutter-3-41/</link>
		<comments>https://blog.sibvisions.com/2026/03/16/big-news-weve-reached-the-next-level-with-flutter-3-41/#comments</comments>
		<pubDate>Mon, 16 Mar 2026 07:00:45 +0000</pubDate>
		<dc:creator>rjahn</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[News]]></category>
		<category><![CDATA[Flutter]]></category>
		<category><![CDATA[VisionX Previewer]]></category>

		<guid isPermaLink="false">https://blog.sibvisions.com/?p=9384</guid>
		<description><![CDATA[We have good-actually, great-news for you!
Our Flutter UI is now fully compatible with the latest Flutter version (3.41). We've put in the work to ensure you have full access to all the newest features Flutter has to offer.
During this process, we noticed that json_dynamic_widget is no longer being actively maintained. (We completely understand the developers' [...]]]></description>
			<content:encoded><![CDATA[<p>We have good-actually, great-news for you!</p>
<p>Our Flutter UI is now fully compatible with the latest Flutter version (3.41). We've put in the work to ensure you have full access to all the newest features Flutter has to offer.</p>
<p>During this process, we noticed that <a href="https://pub.dev/packages/json_dynamic_widget">json_dynamic_widget</a> is no longer being actively maintained. (We completely understand the <a href="https://github.com/peiffer-innovations/peiffer-innovations.github.com">developers' reasons</a>, but as you know us: "Impossible" isn't in our vocabulary.)</p>
<p>That's why we've pivoted our implementation to the officially Google-supported solution: <a href="https://pub.dev/packages/rfw">Remote Flutter Widgets (rfw)</a>. This brings us much closer to the Flutter core, as widgets can now be used directly in the definition file. This makes everything significantly more readable. Furthermore, there's a massive performance boost to be gained by saving templates in binary format - which we already support! In a direct comparison, <strong>rfw</strong> wins by a landslide; even with large datasets, everything remains buttery smooth. The unexpected switch has already paid off!</p>
<p><strong>Why didn't we use rfw from the start?</strong> Simply because not everything was production-ready when we first tested it, and <a href="https://pub.dev/packages/json_dynamic_widget">json_dynamic_widget</a> was performing exceptionally well at the time.</p>
<p>This new version isn't just a compatibility upgrade; it's packed with new features:</p>
<ul>
<li><strong>Copy-to-clipboard button</strong> in editors (optional)</li>
<li style="padding-top: 8px"><strong>Biometric/PIN security</strong> (per app, per screen, or per button press)</li>
<li style="padding-top: 8px"><strong>Title bar styling</strong> (e.g., matching screen colors)</li>
<li style="padding-top: 8px"><strong>Customizable icons</strong></li>
<li style="padding-top: 8px"><strong>Client-side data encryption</strong></li>
<li style="padding-top: 8px"><strong>Empty state info text</strong> for menus</li>
<li style="padding-top: 8px"><strong>Geo-location access</strong> with alerts if location services are disabled</li>
<li style="padding-top: 8px"><strong>Caching</strong> for small images</li>
<li style="padding-top: 8px"><strong>Binary data types</strong> are now natively recognized</li>
<li style="padding-top: 8px"><strong>Password input</strong> with quality indicators (optional)</li>
<li style="padding-top: 8px"><strong>Toggle visibility</strong> for password inputs (optional)</li>
<li style="padding-top: 8px"><strong>Multi-factor authentication</strong> fixes and a fresh new look</li>
<li style="padding-top: 8px"><strong>Background images</strong> for masks or menus via API</li>
<li style="padding-top: 8px"><strong>Safe Area color</strong> customizable via API</li>
<li style="padding-top: 8px"><strong>Request reduction</strong> for better efficiency</li>
<li style="padding-top: 8px"><strong>Full support</strong> for all FontAwesome and Material Icons (by name)</li>
</ul>
<p>We'll be diving deeper into these features over the coming weeks, but for now: it's just awesome!</p>
]]></content:encoded>
			<wfw:commentRss>https://blog.sibvisions.com/2026/03/16/big-news-weve-reached-the-next-level-with-flutter-3-41/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Client-side encoding of records</title>
		<link>https://blog.sibvisions.com/2026/02/23/client-side-encoding-of-records/</link>
		<comments>https://blog.sibvisions.com/2026/02/23/client-side-encoding-of-records/#comments</comments>
		<pubDate>Mon, 23 Feb 2026 13:00:40 +0000</pubDate>
		<dc:creator>rjahn</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[News]]></category>
		<category><![CDATA[Flutter]]></category>
		<category><![CDATA[VisionX Previewer]]></category>

		<guid isPermaLink="false">https://blog.sibvisions.com/?p=9370</guid>
		<description><![CDATA[We've just shipped an absolutely fantastic new feature that many of you will love. Starting now, you can store values fully encrypted in your backend/database - transparently, securely, and without ever exposing plaintext on the server. All you need is a client-side token that lives exclusively in secure storage on the device. The backend and [...]]]></description>
			<content:encoded><![CDATA[<p>We've just shipped an <strong>absolutely fantastic new feature</strong> that many of you will love. Starting now, you can store values <strong>fully encrypted</strong> in your backend/database - transparently, securely, and without ever exposing plaintext on the server. All you need is a client-side token that lives exclusively in secure storage on the device. The backend and the database only ever see encrypted bytes. When the data is read, it's automatically decrypted on the client. In other words: <strong>your app never has to persist unencrypted data again</strong>.</p>
<p>This is a highly specialized capability, but incredibly powerful. If you're building something like a password manager that syncs credentials across devices, this feature is a game-changer. Passwords never appear in plaintext on the server - even if someone were to gain direct database access due to a security flaw, they'd only see encrypted blobs.</p>
<p><strong>How does it work?</strong></p>
<p>You simply mark the columns you want encrypted:</p>
<div class="codesnip-container" >
<div class="java codesnip" style="font-family:monospace;">book.<span class="me1">getRowDefinition</span><span class="br0">&#40;</span><span class="br0">&#41;</span>.<span class="me1">addColumnDefinition</span><span class="br0">&#40;</span><br />
&nbsp; <span class="kw1">new</span> ColumnDefinition<span class="br0">&#40;</span><span class="st0">&quot;PASSWORD&quot;</span>, <span class="kw1">new</span> EncodedBinaryDataType<span class="br0">&#40;</span><span class="br0">&#41;</span><span class="br0">&#41;</span><br />
<span class="br0">&#41;</span><span class="sy0">;</span></div>
</div>
<p>The corresponding database column must use a binary data type (not text).<br />
That's literally all the setup required.</p>
<p>When the user opens the screen in your app, they'll be prompted for a token. This token is stored securely on the device, never displayed, and used solely for encryption and decryption. Each application can use its own token. You can also delete the token to force re-entry whenever needed.</p>
<p><strong>How it looks like?</strong><br />
<center></p>
<table>
<tr>
<td>
<div id="attachment_9377" class="wp-caption aligncenter nomargin" style="width: 257px"><a href="https://blog.sibvisions.com/wp-content/uploads/2026/02/token_input.png" rel="lightbox[9370]"><img src="https://blog.sibvisions.com/wp-content/uploads/2026/02/token_input-247x300.png" alt="Enter token" title="token_input" width="247" height="300" class="size-medium wp-image-9377" /></a><p class="wp-caption-text">Enter token</p></div></td>
<td style="width: 15px;"></td>
<td><div id="attachment_9379" class="wp-caption aligncenter nomargin" style="width: 196px"><a href="https://blog.sibvisions.com/wp-content/uploads/2026/02/token_delete.png" rel="lightbox[9370]"><img src="https://blog.sibvisions.com/wp-content/uploads/2026/02/token_delete-186x300.png" alt="Delete token" title="token_delete" width="186" height="300" class="size-medium wp-image-9379" /></a><p class="wp-caption-text">Delete token</p></div>
</td>
</tr>
</table>
<p></center></p>
]]></content:encoded>
			<wfw:commentRss>https://blog.sibvisions.com/2026/02/23/client-side-encoding-of-records/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Previewer app with new code scanner UI</title>
		<link>https://blog.sibvisions.com/2026/02/16/previewer-app-with-new-code-scanner-ui/</link>
		<comments>https://blog.sibvisions.com/2026/02/16/previewer-app-with-new-code-scanner-ui/#comments</comments>
		<pubDate>Mon, 16 Feb 2026 12:20:27 +0000</pubDate>
		<dc:creator>rjahn</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[News]]></category>
		<category><![CDATA[VisionX Previewer]]></category>

		<guid isPermaLink="false">https://blog.sibvisions.com/?p=9353</guid>
		<description><![CDATA[We were never truly satisfied with our code scanner in the VisionX app, so we took the opportunity to redesign it. The result of our efforts can be seen here:











The changes are already integrated in our Open Source project and will also be available in the stores with the next app update.
]]></description>
			<content:encoded><![CDATA[<p>We were never truly satisfied with our code scanner in the VisionX app, so we took the opportunity to redesign it. The result of our efforts can be seen here:</p>
<p><center></p>
<table>
<tr>
<td><div id="attachment_9354" class="wp-caption aligncenter nomargin" style="width: 148px"><a href="https://blog.sibvisions.com/wp-content/uploads/2026/02/scaner_oldui.jpg" rel="lightbox[9353]"><img src="https://blog.sibvisions.com/wp-content/uploads/2026/02/scaner_oldui-138x300.jpg" alt="Old UI" title="scaner_oldui" width="138" height="300" class="size-medium wp-image-9354" /></a><p class="wp-caption-text">Old UI</p></div></td>
<td style="width: 10px;"></td>
<td><div id="attachment_9355" class="wp-caption aligncenter nomargin" style="width: 148px"><a href="https://blog.sibvisions.com/wp-content/uploads/2026/02/scanner_newui.jpg" rel="lightbox[9353]"><img src="https://blog.sibvisions.com/wp-content/uploads/2026/02/scanner_newui-138x300.jpg" alt="New UI" title="scanner_newui" width="138" height="300" class="size-medium wp-image-9355" /></a><p class="wp-caption-text">New UI</p></div></td>
<td style="width: 10px;"></td>
<td><div id="attachment_9356" class="wp-caption aligncenter nomargin" style="width: 148px"><a href="https://blog.sibvisions.com/wp-content/uploads/2026/02/scaner_newui_multiscan.jpg" rel="lightbox[9353]"><img src="https://blog.sibvisions.com/wp-content/uploads/2026/02/scaner_newui_multiscan-138x300.jpg" alt="New UI (multi-scan)" title="scaner_newui_multiscan" width="138" height="300" class="size-medium wp-image-9356" /></a><p class="wp-caption-text">New UI (multi-scan)</p></div></td>
</tr>
</table>
<p></center></p>
<p>The changes are already integrated in our <a href="https://github.com/sibvisions/flutter_jvx">Open Source project</a> and will also be available in the stores with the next app update.</p>
]]></content:encoded>
			<wfw:commentRss>https://blog.sibvisions.com/2026/02/16/previewer-app-with-new-code-scanner-ui/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>VisionX 6.5 has landed</title>
		<link>https://blog.sibvisions.com/2025/12/01/visionx-6-5-has-landed/</link>
		<comments>https://blog.sibvisions.com/2025/12/01/visionx-6-5-has-landed/#comments</comments>
		<pubDate>Mon, 01 Dec 2025 16:06:35 +0000</pubDate>
		<dc:creator>rjahn</dc:creator>
				<category><![CDATA[Release notes]]></category>
		<category><![CDATA[VisionX]]></category>

		<guid isPermaLink="false">https://blog.sibvisions.com/?p=9269</guid>
		<description><![CDATA[We've been waiting for this moment, and now it's here: VisionX 6.5.157 is officially out!. It's been a while since 6.0, but the wait was worth it.
This release isn't just an update. It's a massive refresh: nearly every library has been upgraded (some because of patched vulnerabilities), and new features unlocked. Even though VisionX apps [...]]]></description>
			<content:encoded><![CDATA[<p>We've been waiting for this moment, and now it's here: <strong>VisionX 6.5.157 is officially out!</strong>. It's been a while since 6.0, but the wait was worth it.</p>
<p>This release isn't just an update. It's a massive refresh: nearly every library has been upgraded (some because of patched vulnerabilities), and new features unlocked. Even though VisionX apps weren't at risk, we wanted you to have the latest, safest, and most feature-packed version possible.</p>
<p>Bottom line: <strong>VisionX 6.5</strong> is stronger, faster, and fresher than ever.<br />
<br/></p>
<h3><strong>Highlights you will love</strong></h3>
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td style="height: 2px;"></td>
</tr>
</table>
<h4>Mobile App (VisionX Previewer)</h4>
<ul>
<li>Speed boost: faster than ever</li>
<li>Customizable comboboxes: style them your way (see <a href="https://blog.sibvisions.com/2025/11/11/jvx-flutter-feature-preview/">article</a>)</li>
<li>Deep link and push notifications: build modern apps without worrying about the tech details (<a href="https://blog.sibvisions.com/2025/11/04/jvx-native-flutter-client-3-3-0-is-available/">read more...</a>)</li>
<li>Badges for elements and menu: because every great app deserves flair (read <a href="https://blog.sibvisions.com/2025/09/10/visionx-previewer-new-features/">here</a> and <a href="https://blog.sibvisions.com/2025/09/17/visionx-previewer-menu-badges/">here</a>)</li>
</ul>
<h4>Next-Gen Web App (React UI)</h4>
<ul>
<li>Upgraded: React 19 and PrimeReact 10.9	</li>
<li>Compatibility: full dependency refresh</li>
<li>Keyboard navigation: Tab and Enter work seamlessly in tables, date pickers, and comboboxes</li>
<li>Performance: tables handle thousands of rows reliably</li>
<li>Style Designer: revamped to make custom theming effortless</li>
</ul>
<h4>Classic Web App (Vaadin UI)</h4>
<ul>
<li>Future-proof: compatible with upcoming browser changes (Chrome and beyond)</li>
<li>Stability: behind-the-scenes work to keep VisionX rock-solid</li>
</ul>
<h4>VisionX Features</h4>
<ul>
<li>Live preview: VisionX now supports direct preview for the classic and next-gen web app, and remembers your last choice</li>
<li>Connection pooling: designed for high-traffic apps to reduce database load and boost performance, simple enough for citizen developers</li>
<li>Morph between 1-tab tabsheet and Group panel seamless</li>
</ul>
<p>Also available: <a href="https://doc.sibvisions.com/visionxpreviewer">VisionX Previewer App 3.3.2</a> in the app stores.</p>
<p>Next stop: <strong>VisionX 6.6</strong>. </p>
<p>Until then, enjoy the muscle and polish of VisionX 6.5.157<br />
<em>Available now in the customer download area</em>.</p>
]]></content:encoded>
			<wfw:commentRss>https://blog.sibvisions.com/2025/12/01/visionx-6-5-has-landed/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
