Flutter: Is there any way to show custom widgets inside WebView? - flutter

I need all the functionalities (e.g., Searching) that a WebView provides on a WebPage but don't want to show any WebPage (provided to the initialUrl property) in the UI.
Instead, I need to show Custom Widgets inside the WebView widget upon which I can perform operations similar to Web Pages.
So, my queries are:
Is it possible to achieve this using the WebView widget?
If not, is there any Widget available similar to the WebView widget that can fulfill my requirements?

Related

Refresh a widget programmatically

I'm developing an app in Flutter, and I'm stuck with this: I have a list of widgets that I generate dynamically. When I press a button, I need to show or hide one of the widgets in the list. I use the Visible widget to show or hide them.
The problem is that I need to know how to update any of the specific widgets in my widget list as they are dynamic and are separated, it is getting complicated doing int programmatically.
How can I do it?
PS: I have the same app developed in Android Studio and I do it by traversing for example the child Views of a LinearLayout and then I ask for its id programmatically.

Flutter: Make text/images selectable in whole web app

In the Flutter web apps, there is no default functionality which makes text and images in the app selectable.
Is there a way to enable selection functionality for text/image on web?
I did check SelectableText widget but it is only for text and I would need to use it over every text. Also, you can't select text in multiple SelectableText widgets at once, you can only select text in one of them. I'm looking for a solution to select all text in the app without making change to every text widget.
Let me know if there’s one step solution to achieve this thing in whole web app.
In Flutter 3.3, with the introduction of the SelectableArea widget, any child of the SelectableArea widget has selection enabled for free!
To take advantage of this powerful new feature, simply wrap your route body (such as the Scaffold) with the SelectionArea widget and let Flutter do the rest.
For a more comprehensive deep dive into this awesome new feature, please visit the SelectableArea API page.
Flutter Web currently does not support multiple text selection across SelectableText widgets.
However, there are some experimental widgets that people are currently working on. According to a guide available at:
Custom SelectableScope Widget
They have proposed a custom widget, a Selectable scope, which basically allows for anything within it to be selectable (currently text and images)
NOTE: THIS IS CURRENTLY UNDER EXPERIMENTATION AND MIGHT CHANGE AS MENTIONED IN THE PROVIDED LINK.

Single page navigation with flutter web

I'm trying to create a web app that only renders one page, and the other pages (or views) are rendered when you press a button related to that specific view. Like the Flutter Gallery website, when you click on a widget info in the "Categories" section
Is there any workaround for this or do I have to create my own router?
you can keep all widgets on one page package by creating a switch statement in your build page. switch between different widget when rendering the scaffolding.

Flutter: Change location injection in widget tree of DropDownMenuItem

I am using a DropdownButton in a Flutter app, and when you click it and the drop down appears, it overlays a webview that I'm using.
That all works perfectly, however webviews in Flutter, when run as a web app (which this is) trap all UI interactions and don't allow clicks to flow through to the Flutter UI elements.
There is a PointerInterceptor component that handles this perfectly, all I need to be able to do is wrap all of the DropdownMenuItems that appear inside of a single pointer interceptor (because if I individually wrap them then there is a really bad performance hit).
However - the DropdownMenuItems appear in the widget tree directly under the MaterialApp widget - and that is too high in the tree for me to wrap in a PointerInterceptor.
That is the reason that I want to know :
Is it possible to specify where in the widget tree the DropdownMenuItem widgets' appear when a DropdownMenuButton is clicked ?

Make a App wide progress bar (Across the pages of whole app) and manage its state as required in Flutter using provider

Im trying to make a Custom Progress Indicator widget which i can show or hide in any of the pages(Anywhere across the app). My approach is to bind a provider value for the progress widget and toggle the value as required. But I just don't get where exactly i should place the Progress/loader widget to make it work in whole App.
Or should i resort to using progress widget in each of the required pages and toggle it?
I'm coming from a web development background, so is there a equivalent of rootPage/ rootscreen where we can place app wide components (as in React, Ionic).