Tuesday, March 30, 2010
Helping Out
So last night I was working away on C++ while talking to Harjinder and he was telling me that he was having some issues with a bug for Bespin. He said that jviereck wanted him to do the 'indent' bug, where it jumps 4 spaces to the right when tab is pressed. He was able to solve that part on his own but he wanted some help with the 'unindent' portion when you press shift + tab. I spent some time in text.js and found something in Canon/keyboard.js that could be the code for detecting whether shift was being held down. It was late so we ended early, but we'll be getting back to it shortly. I also have to do two bugs by the end of OSD and I'm pretty jam-packed with other homework...this will undoubtedly be a busy few weeks.
Thursday, March 25, 2010
Filesystem Prototype

A quick prototype of what the filesystem could look like for our new Processing.js IDE. It is very similar to the Bespin file-system in terms of design, but it seems to follow the colour scheme and layout of the Processing.Js Prototype up until this point. We will exchange our ideas of what the filesystem should entail at our next meeting and see where that takes us.
Wednesday, March 17, 2010
Week 8
I have been studying this prototype that was given to us last week to try to gain a better understanding of the code behind a web-based IDE such as the one we are going to make. It seems very interesting, as it is in a multitude of files and languages already and it is quite early in the process. Like, the current prototype is as basic and as skeletal as it gets and it is already separated into 5 files including one of just pictures. I think it is more compressed than it could be even, as all the buttons are in one .png file and seem to be cut from the .png file using css. That is some skillful programming. I have thought of an idea of what the file system should look like but have yet to put it on paper/e-paper and share it among the team. That is the next step...
Wednesday, March 10, 2010
Week 7 - PRJ566
Over the last few weeks I have been looking into Bespin and what makes it function. There is a huge repository of files but I have found that the majority of files for the User Interface lie within the bespinclient/plugins/supported/Editor directory. I had been looking at one file in particular, mainly the text.js file within the subdirectory 'Editor'. It contained all of the code for the user-interface view, excluding scrollbars and the panel that popped up for commands. I found that interesting because we will need to do something similar for our editor once we begin to code it. I thought I would manipulate some code to get a feel for what was going into the editor, so I played around with it for a bit and was able to turn the blinking effect of the cursor on, off, and change the speed of it. It is surprising how much goes into such a small feature. It was a taste of all that will need to be done for our editor. It shocked me how much you need to jump around through all the code to find exactly what you are looking for, as well (such as the colour of the background of the editor, so that the cursor could be turned to that colour, giving it the appearance of 'disappearing').
We also heard from Robert at the end of the week with a new prototype. It is looking pretty good, I can't wait to get working on the real thing and see how nice we can make it, as well as the following it gets.
We also heard from Robert at the end of the week with a new prototype. It is looking pretty good, I can't wait to get working on the real thing and see how nice we can make it, as well as the following it gets.
Thunderbird Build

I did the thunderbird build lab over the reading week. It involved updating a file so that it no longer displayed non-links in the link format.
I was having trouble building thunderbird first of all. I tried a number of times to rebuild but it kept getting this one error that would not allow me to open thunderbird. Whenever I ignored it or aborted it, the command prompt window would stop responding and close, and when I pressed cancel it closed it. A few days later I re-built it, however, and was successful.
I tried to reproduce the error but didn't realize that it would only reproduce once it was saved as a draft. I can attribute Scott's blog for that little tidbit. Since I had already read Scott's blog, I had a good idea of how to solve the issue. I opened up the mozTXTToHTMLConv.cpp file in the mozilla/netwerk/streamconv/converters directory and changed the necessary code, retested it and sure enough, success on all accounts (see picture).
Patch can be found here
Bug can be found here
Wednesday, February 24, 2010
Firefox - debug build
I am on my way to doing that Firefox Lab from ever so long ago (2 weeks) but I just had the regular Firefox build on my computer so I had to go back and build the debug version. Unfortunately, I spent some of last night and today trying to figure out why it kept saying update.exe.manifest in mozilla-central/toolkit/mozapps/update/updater/ was not found (aside from the obvious, the file not being there)...it seemed it should be there but after trying a number of rebuild commands and talking on IRC in the #developer channel trying to get some ideas and having them say to do things I had already tried, I decided to scrap it all and start from scratch. I did basically the same thing I did in the beginning except this time I made the .mozconfig file contain the settings for the debug build in the first place rather than just the original build, and waited for an hour or more for everything to complete (hg clone ___ and make -f client.mk) and sure enough, updater.exe.manifest was there.
Should have just done that from the beginning...
Tomorrow will be a day of labs. I intend to do the Firefox Lab as well as the lab about fixing a bug in Thunderbird. It shall be good fun...isn't it always?? :)
Should have just done that from the beginning...
Tomorrow will be a day of labs. I intend to do the Firefox Lab as well as the lab about fixing a bug in Thunderbird. It shall be good fun...isn't it always?? :)
Sunday, February 21, 2010
Uploaded Patch For Bug # 540112
Introduction
I was able to complete my bug over the course of the weekend after a few frustrations and getting reacquainted with a language that I had not used for a good two years. It was nice to revisit it and it feels good to get that patch done and uploaded. Details about the bug can be found on my wiki.
Specifications
For my bug, I had to make the text-cursor in the editor blink when the editing area had focus, like a cursor regularly does in a text-editor. The file that I had to edit was
There wasn't too much editing in regards to this patch, but I had to make a timer function which called the drawInsertionPoint function, which placed the cursor on the page, and I had to make it so it would blink...so I used a boolean that would change every time the function was called so it would either colour the cursor the same colour as the background or colour it the colour that the cursor is supposed to be (blue). I had a lot of help from Julian Viereck in finding the right file and about the file system of Bespin. When I was struggling with getting it to work, Harjinder helped me to debug it and we worked together to find what was wrong with it. He was a huge help.
What I learned
The cursor now blinks in Bespin and my code is up for its first review. I hope it gets accepted but either way I am looking forward to the constructive criticism.
I was able to complete my bug over the course of the weekend after a few frustrations and getting reacquainted with a language that I had not used for a good two years. It was nice to revisit it and it feels good to get that patch done and uploaded. Details about the bug can be found on my wiki.
Specifications
For my bug, I had to make the text-cursor in the editor blink when the editing area had focus, like a cursor regularly does in a text-editor. The file that I had to edit was
bespinclient/plugins/supported/editor/views/text.js
.There wasn't too much editing in regards to this patch, but I had to make a timer function which called the drawInsertionPoint function, which placed the cursor on the page, and I had to make it so it would blink...so I used a boolean that would change every time the function was called so it would either colour the cursor the same colour as the background or colour it the colour that the cursor is supposed to be (blue). I had a lot of help from Julian Viereck in finding the right file and about the file system of Bespin. When I was struggling with getting it to work, Harjinder helped me to debug it and we worked together to find what was wrong with it. He was a huge help.
What I learned
- Learned how to iterate through large pieces of code
- Learned that I should check to see if the bug is still current/test it to see if the issue is still occuring
- Memorized how to update my files using Mercurial (hg pull -u). Previously, kept forgetting that syntax
- Learned how important communication is in the open source community
- When you work together you're bound to resolve the problem quicker because each person has a different approach to the problem, more things are noticed, and different solutions are brought to the table
The cursor now blinks in Bespin and my code is up for its first review. I hope it gets accepted but either way I am looking forward to the constructive criticism.
Subscribe to:
Posts (Atom)
