-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Browser card #39
Comments
Possible reference site for pulling in WebView to use within the |
@Marjan-Adeli Anita wanted me to have you attempt a small, reasonably-scoped implementation task within this project. So using the latest version of the IDE v0.7.3 available on the API_architecture branch, please try to complete just steps 1 and 2 listed above within the next week or two. Obviously jumping into the code might be difficult, so please ask questions if you get stuck. |
4e47071 Used |
Searches for React components that wrap around a Additionally, there are some concerns when wrapping a React component around the HTML |
The solution in PR #110 uses the
Therefore, in order to style An initial unsuccessful attempt at using this solution resulted in being able to inject useEffect(() => {
const webviewTag = document.querySelector('webview');
if (webviewTag) {
const updatedInnerHTML = webviewTag.innerHTML + '<style> :host iframe {border-radius: 10px;} </style>';
webviewTag.innerHTML = updatedInnerHTML;
}
}, [browserState.current]); |
The
Browser
component will provide web browser capabilities within a card, allowing users to view websites while working within Synectic. The initial set of features are:Navigation
Browser
component should include an address that displays the currently loaded URL.Browser
component should allow users to load websites through manually entered URLs in adherence to the behavior of the URL API. This should be asynchronous (i.e. non-blocking of other UI interactions).Browser
component should allow users to reload the currently loaded website.Browser
component should allow users to click on links in a loaded website and:target
tag of_blank
, open the link URL in a newBrowser
card.target
tags (_self
,_parent
,_top
, andframename
), or when notarget
value has been set, open the link URL in the sameBrowser
card.History
Browser
component should allow users to navigate back in the browser session history in adherence to the behavior of theHistory.back
API.Browser
component should allow users to navigate forward in the browser session history in adherence to the behavior of theHistory.forward
API.Browser
component should allow users to use the go command in the browser session history in adherence to the behavior of theHistory.go
API.Bookmarks
Browser
component should allow users to set the currently loaded URL as a bookmark.Browser
component should visually indicate that the currently loaded URL has been bookmarked.Browser
component should allow users to remove the currently loaded URL from bookmarks.Browser
component should display a list of currently bookmarked URLs, and allow URLs to be directly removed from the list.Scroll Navigation
Browser
component should allow the scroll position within a website to be set externally (i.e. other elements within Synectic should be able to update the scroll position; see Ben Carp's response to the StackOverflow question ReactJS how to scroll to an element).Error Handling
Browser
should be able to validate URLs entered into the address bar and provide visual indicators until the entered URL has been corrected. The TypeScript base library includes a URL class that adheres to the WhatWG URL specification.Browser
should offer suggestions for adding/correcting bad URLs that cannot be validated (i.e. suggesting to add a.com
to the end of the URLhttps://github
).Browser
should provide visual indicators for HTTP status codes, especially errors such as 404 Not Found and 400 Bad Request.The text was updated successfully, but these errors were encountered: