browserhtml / browserhtml Goto Github PK
View Code? Open in Web Editor NEWExperimental Servo browser built in HTML
License: Other
Experimental Servo browser built in HTML
License: Other
From @SebastianZ on December 10, 2014 7:19
The tab bar should add a scrollbox if the tabs don't fit into the window.
Sebastian
Copied from original issue: paulrouget/firefox.html#21
I would really like to integrate react into this which was originally tracked under this pull paulrouget/firefox.html#94
What should we do about it ? Is it doomed ? Should I retarget pull request this repo ?
Once context menus and toolbar menus are ported over to app itself we would need to execute commands that aren't currently possible from HTML (as far as I know). Here are few that come into my mind:
I'm sure there will be more of these so we do need to find a way to deal with it. General approach could be to dispatch custom "command" event on the window itself that shell.xul
could listen to and trigger appropriate actions. In a future we could wrap that up in a nicer HTML APIs when they come along.
From @paulrouget on November 25, 2014 2:31
Prefs should use the settings API. The UI should be displayed as an app inside the browser itself (like about:preferences in firefox)
Copied from original issue: paulrouget/firefox.html#1
I backedout React integration.
I played with it today. This new code base feels over engineered for such a simple UI (4 buttons, 2 inputs, tabs), and we still don't know what the UI will look like in the future.
I am not ruling out React, but it's a premature optimization. Let's reconsider using React later.
From @SebastianZ on December 10, 2014 7:2
Right-clicking a page currently doesn't do anything. It should open the context menu.
Sebastian
Copied from original issue: paulrouget/firefox.html#20
From @paulrouget on November 25, 2014 2:31
Copied from original issue: paulrouget/firefox.html#2
From @paulrouget on November 25, 2014 2:32
Copied from original issue: paulrouget/firefox.html#4
Not just a screenshot. Not just an icon. Something nice. Think 300x200 (x2 for retina).
For example:
Things to experiment with:
The body of the app should overflow: toolbar (50px) + iframes (100vh). The body should use scrollgrab and scroll snapping to hide/show the toolbar.
Scroll-position based animations could be used to animate the opacity of the bar.
This requires some platform work. First step is to get scrollgrab to work on desktop. So far, I'm blocked because of https://bugzilla.mozilla.org/show_bug.cgi?id=1124099
From @paulrouget on December 11, 2014 9:51
Tabs opened from a tab should added to the right of the parent tab, unless there is already a child tab. In this case it should be added to the right of the last child tab.
Copied from original issue: paulrouget/firefox.html#47
From @nt1m on December 16, 2014 22:34
I have to go on top of the tab strip to drag the window.
OS : Windows 10
Copied from original issue: paulrouget/firefox.html#83
From @joshua-s on December 10, 2014 14:56
This is how Firefox Desktop works.
Copied from original issue: paulrouget/firefox.html#28
Apparently, APZC is required to get the mozbrowserasyncscroll
.
From @SebastianZ on December 10, 2014 7:32
The history buttons currently don't look like in the normal Firefox.
Here's how they should be styled:
A few points on this:
Sebastian
Copied from original issue: paulrouget/firefox.html#22
I'm using latest version of browser.html with latest Firefox Nightly under latest Arch Linux.
When I load a website nothing is rendered. How can I help you in a better way?
This is the log of the console:
[airon@aironpc browser.html-master]$ firefox-nightly -app $PWD/runtime/application.ini $PWD/apps/browser/manifest.webapp
(process:1029): GLib-CRITICAL **: g_slice_set_config: assertion 'sys_page_size == 0' failed
Register manifest at /opt/firefox-37.0a1/browser/chrome.manifest
document readyset frame to be an app: 1001
############################### browserElementPanning.js loaded
######################## BrowserElementChildPreload.js loaded
WARNING: child tried to open http IPDL channel w/o security info
(firebox:1029): Gtk-CRITICAL **: IA__gtk_clipboard_set_with_data: assertion 'targets != NULL' failed
WARNING: child tried to open http IPDL channel w/o security info
WARNING: child tried to open http IPDL channel w/o security info
(firebox:1029): Gtk-CRITICAL **: IA__gtk_clipboard_set_with_data: assertion 'targets != NULL' failed
JavaScript error: chrome://global/content/BrowserElementPanning.js, line 91: TypeError: evt.target.ownerDocument is null
JavaScript error: chrome://global/content/BrowserElementPanning.js, line 91: TypeError: evt.target.ownerDocument is null
JavaScript error: chrome://global/content/BrowserElementPanning.js, line 91: TypeError: evt.target.ownerDocument is null
JavaScript error: chrome://global/content/BrowserElementPanning.js, line 91: TypeError: evt.target.ownerDocument is null
WARNING: child tried to open http IPDL channel w/o security info
From @paulrouget on December 16, 2014 2:19
Copied from original issue: paulrouget/firefox.html#70
We need to be able to store all the history in the DB (datastore/indexeddb), and also have a mechanism to query the db, including suggestions from search engines.
From @johndrinkwater on December 12, 2014 14:33
Had a look at adding forward/backward mouse buttons for history navigation, but js doesn’t get button presses.
Copied from original issue: paulrouget/firefox.html#58
STR:
There are many prefs in b2g.js that we do not need. And also some prefs that are not safe enough for B2G Desktop (Simulator) that we want to enable for Browser.html (like ipc.tabs.enabled, APZC, ...).
Also, B2G Desktop comes with a pretty big shell.js
file and desktop only scripts. I don't know how much of that is required.
@fabricedesre - what would you recommend?
Can we please keep runtime separate maybe link to it via submodule or something if necessary ? The reason I would prefer that is so that as I would like to avoid coupling it with browser.html too much. I would really like it to be on a par with node-webkit which is a porpular way to build desktop apps in node community.
Note that as we npm already takes care of dev dependency on NPM so it will take care of installing runtime so users won't have to deal with at at all.
I'm also more than happy to migrate runtime to mozilla organization, so we will all have a same control of it.
We'll want to be able to take screenshots of mozbrowser iframes for things like visual tabs, shrink/expand animations, etc.
This may already exist, but filing for posterity.
From @pixelr0 on December 11, 2014 13:50
running with a servo back end
Copied from original issue: paulrouget/firefox.html#50
From @joshua-s on December 9, 2014 17:17
It would be nice to have a "+" button to open new tabs.
Copied from original issue: paulrouget/firefox.html#15
So far, we're using navigator.appVersion
. I don't know if it's the best way to determine the OS. With B2G, it returns 5.0 ()
, which breaks the UI.
partial rendered UI + unable to render web pages [Ubuntu 15.04]
firefox nightly 64-bit/Ubuntu 15.04
http://i.imgur.com/BDLwkDO.png
~/Downloads/browser.html-master$ ~/Downloads/firefoxN/firefox -app $PWD/runtime/application.ini $PWD/apps/browser/manifest.webapp
(process:17654): GLib-CRITICAL **: g_slice_set_config: assertion 'sys_page_size == 0' failed
Register manifest at /home/pixel/Downloads/firefoxN/browser/chrome.manifest
document readyset frame to be an app: 1006
############################### browserElementPanning.js loaded
######################## BrowserElementChildPreload.js loaded
JavaScript error: chrome://global/content/BrowserElementPanning.js, line 91: TypeError: evt.target.ownerDocument is null
Let's implement better scrollbars:
From @SebastianZ on December 10, 2014 7:1
The hamburger button is currently without functionality. It should open the Firefox menu.
Sebastian
Copied from original issue: paulrouget/firefox.html#19
Hi there!
When trying to select a URL with the cursor, it moves the window instead. I don't think this should happen. People should be able to select URLs when keeping pressed the mouse button.
Thoughts?
Can we already use HTML5 ContextMenu API implement context menus in browser ? If not I'd be willing to hack a support for that in runtime until we get something more proper in platform.
See bug 1118134.
STR:
From @paulrouget on December 11, 2014 9:47
Copied from original issue: paulrouget/firefox.html#46
From @nt1m on December 16, 2014 22:33
We should wrap the tabbar and the navbar inside a toolbox. That toolbox will be the customizable area of the browser, but that will also simplify things style-wise if we add more toolbars later (bookmarks for example).
Copied from original issue: paulrouget/firefox.html#82
Is possible create a build of https://github.com/paulrouget/gecko-dev/compare/b2g-for-browser.html for the various platform?
From @paulrouget on December 17, 2014 11:2
We want to provide a runtime that would be able to run one or several HTML apps to implement a desktop browser. For Firefox.html
, we use Firefox Desktop with some ugly hacks. See https://github.com/paulrouget/gecko-dev/compare/mozilla:fx-team...htmlrunner.diff
Requirements (updated):
-moz-window-dragging
)To keep the project easily hackable for now:
Sensible prefs:
Copied from original issue: paulrouget/firefox.html#86
Today, the browser API only tells if a frame is loading or not. It makes it impossible to build a progress bar.
We want to save session, history and preference somewhere. These settings need to be syncable across devices.
At the moment toolbar menu is hard coded into a runtime https://github.com/mozilla/browser.html/blob/master/runtime/shell.xul#L82
This is not ideal, I think we should use HTML5 <menu type="toolbar">
in the app itself to populate OS toolbar menu.
We could use mutation observers in order to track changes to a toolbar to repopulate <menubar id="main-menubar">
in the shell.xul
& re-trigger events in the app document.
@ZER0 did something along these lines in a past so we could likely integrate that work here.
On osx 10.9, the devtools will not open. Neither shift-command-i or the menu item opens the devtools.
Since switching to the firebox runtime, certain websites (for example all google websites) believe that browser.html does not support javascript, and show a version of the website intended for use in browsers that do not support javascript or display a warning message, even though the browser does actually support javascript.
how exactly can you install FF Nightly on "linux"? (linux is a kernel! j/k) but on a serious note, https://nightly.mozilla.org/ FF Nightly links to a tar.bz2 archive. I have Ubuntu installed and Firefox 34 is the default browser... i think this will generate confusion on how to install Nightly. Even if they download/extract the archive, i don't think it's a easy way to make Nightly default.
From @paulrouget on December 15, 2014 11:1
Tab creation and destruction should be animated. See https://wiki.mozilla.org/Firefox/Projects/Tab_animation
Copied from original issue: paulrouget/firefox.html#66
I think we really need to come up with some test automation solution, I for one really wanted to write some tests for the history API to see if all things work as expected.
So far I'm thinking of picking one of the popular test frameworks for the web, but then I'm not entirely sure how they can be integrated.
From @paulrouget on November 25, 2014 2:34
Copied from original issue: paulrouget/firefox.html#7
From @joshua-s on December 10, 2014 19:24
Themes are an important feature in Firefox. We implemented a sample dark theme in #10, and now should refine our mechanism.
Improvements/needs:
Copied from original issue: paulrouget/firefox.html#33
When switching to firebox, the browser can no longer use flash player. In addition, if you try to download flash player in the browser, you get the following:
I am using the current nightly on Linux x86_64. Sadly I just get a blank rectangle where web content should show up. When I move across the area the cursor actually changes to a pointer when I am over a Link. Seems like some graphics problem.
Built from https://hg.mozilla.org/mozilla-central/rev/b3f84cf78dc2
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.