Posts

#Brave-laptop dev: interesting issue part 2

Image
This is a continuation from my previous blog, I've done further investigation and discovered that the favicon was being invalidated (redownloaded) every frame.


and upon further investigation I found that the response header contained the following
I did some research and found that modifying this is no easy task and that this setting forces the Favicon to be redownloaded  every time it's updated. Which in this case was every frame since it was being redrawn along with the gradient affect that follows the mouse.

My attempts at figuring out how to modify the layer that the favicon is being drawn in is falling flat so far.

I got some feedback from some of the brave developers on how to proceed after I declared these findings, that the issue can be resolved by manually saving the image as a URI and adding it to the CSS, but I haven't been able figure out how to convert a image to an URI.

#Brave-laptop dev: interesting issue and how I attempted to fix it

Image
So I came across this issue that causes the icon to flicker when the mouse moves back and forth on a tab, but only for certain sites,
Before:



 the fix I discovered is removing one line of code that set the next frame to null for the animation to setup for the next frame, but from my guess that was causing issues with the icon frame being null every split second.

After:

I fixed this in record time, only about 45 min... if only all bugs were that easy to fix. 



How did I find the code required? well glad you asked, First off I used the inspector of the dev tools (opened by pressing shift-F8 and selecting the ) and selected the favicon and scrolled up so I could see the class information for the tabs.



noticing the --tab-mouse-x changes I decided to look that up in the project using "Atom" as my editor pressing ctrl-shift-f allows me to search the whole project for a keyword.



lucky me it only found 1 match, this is unusual, pressing on the match it bought me here (link brings …

#Brave-laptop dev: Being brave with my first issue (WIP)

Image
Brave Issue I decided to be brave with my first brave issue, https://github.com/brave/browser-laptop/issues/12458
in the comments they stated that it's not a trivial fix.

The Issue pertains to pressing alt-"key" to open one of the alt menu options, it exists in Firefox like so.



















I've tried various things to get this to work, like adding a new windowAction, but discovered that menubar.js has it's own event handler that is normally used to open the submenu for when enter is pressed or when down is pressed. this didn't work out.

main.js is what handles the alt press, so having this disconnect, I poked around to see if there was any way to tell the menubar to open the submenu from menu.js' event handler, I found that there's an option that's called e.stopPropagation(), to let main.js "pass" the key input along to any other handler.

I currently got the file menu to open after pressing it twice, have yet to figure out how to get it to work aft…

#Brave-laptop dev: building brave-laptop

Image
Installation: following the instructions here
Installing and setting up brave has been fun, I've been using Powershell,  I've discovered that there's some undocumented requirements for setting up brave-laptop for windows. Try following the following instructions if you have a missing path.txt at npm start.

1. "npm install" in root directory of project (skip to step 2 if you've already done npm install)
--for example my directory is like "E:\cygwin64\home\Jay\brave-laptop\browser-laptop"

2. cd to .\node_modules\electron-prebuilt
--your directory should be "where ever you cloned it to\brave-laptop\browser-laptop\node_modules\electron-prebuilt"

3. "npm install" in current directory
 -- it should download an old version of brave-laptop (something like v 1.1.4)

4. "cd ../.."
 -- this should bring you back to the root directory of the project

5. "npm run clean"
 -- this should remove 2 directories (one of them being…

#Python-dev: adding pathlike functionality

Image
https://bugs.python.org/issue32642

https://github.com/python/cpython/pull/5691

I've been working with the import library, adding a pathlike object function for sys.path, after making some changes I needed to run "make regen-importlib" to update the importlib_external.h, to allow the changes to go through since I'm modifying a core lib.

after testing some I realized something was off, considering one of the tests was taking over 41 hours to complete, I started off by checking for conflicts to see if I was behind on some update they may have done to fix this down the line.... turns out my import library source code (not the .h) was out of date from the current version which caused a merge conflict in on the PR, which also caused appveyorto break, I fixed it easily by using Atom and clicking the "fix  conflict button, which created a dropdown menu of which one to keep, "use ours" vs "use theirs", then after selecting the appropriate one it auto…

#Python-dev: First contribution to (c)python

Image
First PR (pull request)
Requirements: I discovered that to be able to contribute you need to have a few things

1.A Github account (this is a must for anyone wanting to contribute to any open-source project)

2.A python issue tracker account (on this site https://bugs.python.org/)
 -you need to then have your Github account username in the "your details" section of your account (if you set your Github username during reregistration then it should already be set)



3. Sign a this CLA that's also on their site entering the same Github and python issue tracker account for the info. note that the CLA takes 1 American work day (so 24 hrs within Monday-Friday)

4. when you make the pull request it has to be bpo-(issue number): description
  -note there are special rules for back fixing (it will show up in the description of the PR when you make it)

5. if it hasn't been previously done you have to make whats called a news file under the misc/NEWS.d/next folder, the sub folder …

#Python-dev: Starting to contribute to (c)python

Python Dev
  I recently started trying to contribute to python (aka python-dev), so far I've found the IRC is #python-dev, the way that I've been getting there is by using freenode, (you can also get there by searching freenode and clicking the "chat" button), I have noticed that the IRC channel can get you some help but, I've had mixed results I got a response for my first question but after that I didn't get a response (your millage may vary)


I also discovered that Cygwin (a bash terminal within windows) isn't fully supported by cpython

I also found this mailing list, that I've signed up for and I've already received some emails, so far I've emailed to python-dev@python.org, that apparently sends an email to ALL members, I don't know if this is a good way to reach them as I only sent this email yesterday and haven't gotten a response. 

I just posted a bug about what I'm experiencing since running the test command results with 2 …