Sign in to follow this  
RoundPotato

What is a potatoese?

Recommended Posts

Waterlimon    4398

You can probably find an officialish definition in wikipedia.

 

But my view of browsers is that you give it a 'file path' in the form of an URI (universal resource identifier) which may point to your local filesystem or some server connected to the internet.

The browser then fetches (the browser supports many ways of fetching) and displays (we have moved toward 'executing' the resoures instead, usually in a sandbox) this resource you pointed to (the browser supports many types of resources and their different versions)

 

Basically you have 100 different applications all smashed together to be never separated again into a single executable. Or not. Im not a web dev.

 

Still, you probably dont want to make one yourself unless you use some library to handle the actual web browser part for you.

Edited by Waterlimon

Share this post


Link to post
Share on other sites
Tutorial Doctor    2573
Direct3D is for rendering graphics, the networking is done by other means (C++,PHP) etc.

HTLM, CSS, XML, JAVASCRIPT, and PHP are responsible for internet browsers like Chrome and Firefox.

But perhaps I don't understand the question.

Share this post


Link to post
Share on other sites
Ectara    3097

Let me ask the remainder of the question, what rendering is used for Firefox? (thanks for the links, but I wouldn't spends hours or days looking at the source files just to be able to tell)

Also note that a lot of browsers support other acceleration, like DirectDraw, and have the capability to turn off hardware acceleration if it turns out to be buggy, doing everything in software. There may not be one answer for you.

Share this post


Link to post
Share on other sites
Ohforf sake    2052
Whatever broswers may be, they are not "simple".

But apart from that, yes, browsers are programs, written in a programming language. They make use of libraries, which are also written in some programming language, and they interact with the OS.

All of which also holds for "notepad".

Share this post


Link to post
Share on other sites
Ectara    3097


I needed only a simple answer like "SimonForsman" pointed out, it uses C++ and OpenGL.


Firefox uses C++ GTK+ and OpenGL on Linux atleast

Not quite what he said, and it sounds like an oversimplification of his post.

 


Based on that I can confirm that browsers(internet, typical/graphical) are indeed simple applications utilising DirectX/OpenGL and C++(or other programming language(s)).

This isn't accurate. When I run Chrome in a VM, I have to disable hardware acceleration to keep it from drawing incoherently. Thus, without hardware acceleration, it is using a software renderer. That contradicts your conclusion that Direct X or OpenGL are in use at all times. Mozilla has long since had the ability to use DirectDraw or X Render, whether or not it's recommended in the presence of other, more efficient APIs. This is another contradiction of the idea that these Direct X and OpenGL are the only two APIs used.

Share this post


Link to post
Share on other sites
Ectara    3097

The case with a VM is additional for more unusual usage.

The application runs in a VM the same way it does on a normal physical computer. You have the option to turn off hardware acceleration right now, so it isn't unusual if you have a driver bug, or something.

 

 

 


BUT, on the VERY BASIC and CORE it's just C++/etc and OpenGL/DirectX.

That ignored everything I just said.

 

 

 


Do tell me otherwise if that is not the case though.

A cursory Google search will tell you what it is. It is (in this case) the process of rendering a 3D scene without using hardware acceleration, done completely in software. In other words, performing the tasks of OpenGL/Direct3D without the use of hardware acceleration. The Mesa library is a good example.

 

Edit: Also, the use of toolkits like GTK+ is of considerable importance.

Edited by Ectara

Share this post


Link to post
Share on other sites
Ectara    3097


be able to parse overly complex and cutting-edge modern as well as archaic deprecated file formats

The only thing I have to add to this answer is the necessary ability to handle malformed web pages and still draw them in an expected fashion; while it is perfectly legal to throw an error and refuse to continue, the number of web pages with invalid markup is staggering, meaning that being correct is penalizing the end-user for someone else's error repeatedly. Thus, many web browsers will automatically make their best guess at what the intent was, and fix up their internal representation of the parsed document.

Share this post


Link to post
Share on other sites
Takemura    168

Guys, you are misinterpreting my question, your answers are great(covering the overview description, usage and different functionality it supports).

But like attempted to emphasise "Using what is Firefox and chrome made of? (just made of, NOT what it supports.)" In the sense that it's simply made of C++ and OpenGL/DirectX, REGARDLESS of it it supporting a lot of error corrections, file formats, interpretation of higher scripting languages, etc, etc.(After reading that software rendering may not involve a GPU thus rendering APIs such as OpenGL/DirectX useless I see where you were coming from, but consider a typical/most common usage on average computer with a GPU with and average user) I'm sure you can sit there for hours listing what makes up a proper web browser.

 

All of the functional support is implemented using C++(or other language) and rendering( graphical interface components, images, fonts ,ect ect) is DirectX/OpenGL, so repeating myself it's just a program written in C++(or other) and OpenGL/DirectX.

 

After having read the above, can you confirm that, or am I missing/misunderstanding something?

Alright,I hate for this to be my first post.. But honestly.

Why ask for help when you are not willing to listen to other peoples ideas? You need to leave your shell. They are trying their best to help you and inform you that they DON'T Merely use directx/opengl. Some of the people even listed libraries you can use that will help you in creating a 'simple' browser.

 

If you are not getting the answers you seek, the reason is that you yourself are not being clear on what you are seeking.

Edited by Takemura

Share this post


Link to post
Share on other sites
Ectara    3097

In the sense that it's simply made of C++ and OpenGL/DirectX,

You can compile Firefox with hardware acceleration support removed, voiding your claim.
 
Note that since a lot of the Firefox UI and preference engine uses JavaScript, this voids the claim that C++ is all that's used to write the program.
 
 
 

rendering( graphical interface components, images, fonts ,ect ect)

A lot of the font rendering and GUI is GTK+ in Linux. Look up windowing toolkits!
 
 
 

After having read the above, can you confirm that, or am I missing/misunderstanding something?

YES!
 
Please, please look up any of the terms in this thread in Google. It sounds like you decided that Firefox is just C++ and Direct3D/OpenGL, and you're going to repeat your question until we agree with you. Edited by Ectara

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this