User:SadEagle

From KDE TechBase

Current priorities

  • new request methods OK'd for XHR
  • Performance issues with certificate loading
  • Commit the s_c fix
  • Commit of bug #150843 fix is long overdue
  • Consider doing scaling of images with transform reset.
    • Patch done, needs commit
  • Finish up tokenizer changes:
    • Remove strict stuff
    • \t stuff -- bug #115325
      • Testcase!
    • Look at mercury.im comment parsing problem?
  • Other high-priority bugs:
    • The derstandard.at one
    • In general recursion of tokenizer, scripts. e.g. bug #170765
    • Figure out the selector crash Frank R. testcased, too.
  • Reply to the French Windows-using testcase-providing gentleman
  • Fix uga's image bug
  • Move blur/focus to Element.
  • onchange change
  • head/body parsing
  • Finish up/cleanup reindenting stuff in the debugger.
  • Fix namespacing of WTF
  • Backport the comment lexing fix
    • Now it's there, look at google groups again --- that bit is out of the way
  • Disabled color for Roman
    • Similar bug with disabled <button;>
  • Accel handling?
  • Pick up the getComputedStyle stuff from WC
  • the adblock stuff is in progress, but probably should be trunk-only.
  • I also had mem-use reduction change for KJS, which had the issue of the global code's lack of body for rewinding. Do we ever run code in GlobalExec, though? We shouldn't...
  • There was also array iteration stuff, not sure it matters, though
  • favicon fix for Acid3 --- ask dfaure
    • Also look at history/:visited, combined with vtokarev's stuff.
  • Wrap up the background-position parsing stuff
    • Needs further fix for , parsing
  • Fix const stuff
  • The color inheritance stuff... Also, makes me wonder about currentColor --- that's tied in to gcs, though.
    • Spart fixed that and added currentColor parsing in trunk. So with GCS I should be able to add it to canvas.
  • KMail drag icon: http://lxr.kde.org/source/KDE/kdepim/kmail/kmheaders.cpp#2419
  • Look at the Ebay thing
  • TinyMCE online demo page error.
    • Wrong domain for javascript:"" src iframe. Check w/richmoore on policies for these.
  • Something is wrong with abcnews.com
  • Frame sizing in gmail?
  • Optimize the list selector code for new facebook.

Performance stuff

  • Qt X509 parsing/CA bundle loading
  • setClipRect inefficiency --- report to TT
  • Make khtml use setClipRect less.

Misc stuff

nspluginviewer

  • Debug recent regressions... if I could reproduce it
  • Try to catch Seli about the SuSE/GlibEvents path. Or sic the reporters on the SuSE bugzilla.

Canvas

  • Update for createImageData, range changes
  • Update error handling?
  • setFillColor(double r, double g, double b, double a) extension
  • Can now make width/height reflecting, with ::rewriteValue

KJS and KJS/Frostbyte

  • Idea: split off the hash table stuff off from JSObject
    • Probably not workable since the prototype even of pure objects can have hashtable properties. Object.prototype doesn't, however, so we can bypass a lot of stuff. Properties there can only be DontEnum or default, too.
  • Try to do inline-in-ExecState scopeChainNodes again --- but can they be torn off?
    • May be store in the action? Seems illegal type-wise.
  • Debugger, again
    • Mostly works, but stepping through ifs is funny --- need to figure out why
  • Unbreak CPU guard.
  • See if we can keep track of the current function body in the parser. Use that to help track of things like presence of "arguments"
    • With this and eval operator, may be able to get rid of an explicit activation and scope chain entry...
  • Type system changes:
    • Make int32 immediates apply to int32 values --- add a notion of exact embedding
    • Add a notion of value/number dual-use in registers --- use DontMark bit to distinguish which it is
  • Idea: have a template for activation in FunctionImp, and then just memcpy, minus the params, on startup
    • still need to setup functions separately, though.
    • seems slower, actually
  • Idea, part 2: use the above to setup immediates in the same place as registers. This can simplify the IR a lot and shrink the loop considerably. Also means there is no longer architecture differences in 32-bit and 64-bit needs at the IR level, and the IR gets smaller.
    • Of course, recursion more expensive. But worth a try?
  • BUG: need to flush lazy local copies at function call (or do I do it already?)
  • Alternative/conflict with below: if using a single stack for parameter passing/direct calls, we want to always do stack allocation and then do a deferred tearoff when needed --- this may actually be visible based on refcount of the scope chain, except when manually done.
    • That's actually done, but I am not sure of how to best combine it with other stuff
  • Do segmented/nonmoveable stack allocation --- just have a list of pieces, and work on them one at a time. Older ones can be recycled. This means we never have to refetch the locals array.Also avoids the WARNING WARNING WARNING part.
  • Do deferred tearoffs.
  • eval operator/eval tearoffs
    • tearoffs done.
    • With eval operator, if I keep track of lexical depth, may be able to directly route to global object, etc. Needs thought.
  • Fix const
  • obscure sequencing thing
    • seems like an another regression on the TC though --- exception precision?
  • merge in the API, etc., from trunk
  • Do the List performance changes
  • Do IR dialectes for 32- and 64-bit -- e.g. PointerCell
    • Also probably double-allocator for 32-bit.
  • Do a review pass over API to make sure not BC leaks.
  • Double-check global handling, synchronize with JSC
  • Consider using packed immediate/register bits. The key observation is that locals are read from an array, too, so we could do something like:
  arg0 = argsType[(fullOp >> 16) & 1][offsetVal];
  • Crazy idea: when going to proper CFG construction, do we even have to linearize?

KHTML - Short-term stuff

  • Don't forget the clip:rect(auto, 123, ...) stuff
  • Don't forget the leak fixes
    • consult with Maciej and Micha
  • There was a change in getElementsByClassName case behavior
  • Do floating-point font size computation
    • Or rather e-mail it to kfm-devel
  • Fix the damn image-load-event-thing in iframes
  • Go through the canvas testcase again
  • Fix noscript on DOM ops. Should it just display:none? I guess I should check HTML5
  • Important, don't know how to fix: bug #163359
  • Need to debug various editors
  • bug #162745 -- for CSS, we need to strip whitespace from URLs. Ditto for object, I'd think. Perhaps completeURL should do it.
  • For objects, empty URLs should probably embed still -- but when? CompleteURL on empty seems like a culprit for the self-embed bugs.
  • Inherit params
  • bug #161196 --- option value --- should be super-quick
  • JS Redirects
  • Iframe stuff
  • Fix the paranoia affecting(?) flickr(?) upload bug #126974
  • The XHTML parser mode
  • Check the XML parser -- QXML workaround might not be needed, weird whitespace handling and recovery stuff
  • Check the implicit node stuff. Only the form one seems correct to me, and that can be done w/o wasting a bit at top-level.
  • the libthai thing
  • bug #104358
  • XHR:
  • bug #103250 --- KWallet and pages with textareas.

khtmlImLoad

  • Allan's foreign loader patch
  • Scale animation provider for GIF --- bug #162614
  • Animation stoping
  • Better pre-blend cache?
  • FredrikH performance goodness?

KHTML - Long term stuff

Other long term stuff

  • Async loading of nspluginviewer somehow?

Other kdelibs stuff

  • Figure out why the maxProcess stuff in kio_http doesn't seem to work.