Re: Feels good to be free. Close-tab button.
Ter, 2009-06-30 ?s 22:43 +0100, Jo?o Ricardo Louren?o escreveu:
Well, I promised I would report to you when I got more free time. Guess what, I'm on vacation! Getting free time from my own personal projects finally lets me take a closer look at Dillo. I am sorry for being away for such a long time, though.
I would like to contribute to one area that I have contributed previously -- the close-tab button. It isn't critical, I know, but, for now, it's the best I can do. The idea now is to finally have a button in each tab.
It is tough, but I am getting somewhere. The 'initial' drawing part is done, but I have had to make some small changes to some virtual functions, and also changing non-virtual functions and finding a way to 'enable' them in the code.
It's pretty hackish right now, but I have managed to print the button and am now starting to handle all the events and different button states (clicked, over, etcetera).
I'll keep you updated!
Jo?o
Answering myself, I've got the system working! There are still many more code-cleanups to do and add a couple of documentation features here and there.... It isn't 'pretty', but someone with more skills in the 'design' area can do better than me, I've got the system (which is pretty dumb and slow, IMO). There are, however, three issues I have: 1. I still haven't sorted things with the pager to have tabs behave 'correctly', but that should be _too_ hard, just quite some research. 2. When I destroy a tab, their order gets 'mixed up', but only sometimes. 3. For some reason, clicking on some tabs isn't working (not the buttons, but the tabs). I'll go into them and I think that 3 and 2 are related. I just decided to inform all of you how progress was going. Jo?o
Hi Ricardo, On Wed, Jul 01, 2009 at 12:36:27AM +0100, Jo?o Ricardo Louren?o wrote:
Ter, 2009-06-30 ?s 22:43 +0100, Jo?o Ricardo Louren?o escreveu:
Well, I promised I would report to you when I got more free time. Guess what, I'm on vacation! Getting free time from my own personal projects finally lets me take a closer look at Dillo. I am sorry for being away for such a long time, though.
I would like to contribute to one area that I have contributed previously -- the close-tab button. It isn't critical, I know, but, for now, it's the best I can do. The idea now is to finally have a button in each tab.
It is tough, but I am getting somewhere. The 'initial' drawing part is done, but I have had to make some small changes to some virtual functions, and also changing non-virtual functions and finding a way to 'enable' them in the code.
It's pretty hackish right now, but I have managed to print the button and am now starting to handle all the events and different button states (clicked, over, etcetera).
I'll keep you updated!
Jo?o
Answering myself, I've got the system working! There are still many more code-cleanups to do and add a couple of documentation features here and there.... It isn't 'pretty', but someone with more skills in the 'design' area can do better than me, I've got the system (which is pretty dumb and slow, IMO).
There are, however, three issues I have:
1. I still haven't sorted things with the pager to have tabs behave 'correctly', but that should be _too_ hard, just quite some research.
2. When I destroy a tab, their order gets 'mixed up', but only sometimes.
3. For some reason, clicking on some tabs isn't working (not the buttons, but the tabs).
I'll go into them and I think that 3 and 2 are related. I just decided to inform all of you how progress was going.
It's good to see you around again! WRT tabs. If you succeed in a short time span, great. If it takes more effort, I'd prefer you to work on another area. The fact is most probably we'll have to port dillo2 to FLTK-1.3 at some point this year, and our fine tunning/hacking/workarounds for FLTK2 will be lost, and we'll have to start again... e.g. 1.- Jump to #anchor doesn't work correctly. Find out what is wrong in the current mechanism, fix it. (Related: there's a need to add a timeout-remove function and use it for cancel operations in the rest of the code). 2.- http://planet.postgresql.org/ Unrendered HTML. Simple one to start with. -- Cheers Jorge.-
Jorge wrote:
2.- http://planet.postgresql.org/ Unrendered HTML. Simple one to start with.
Isn't that one because it says <meta http-equiv="Content-Type" content="text/xhtml; charset=utf-8" /> and we don't have a Mime_add_minor_type("text/xhtml", a_Html_text); because we never quite decided what we wanted to do about xhtml and validation?
On Wed, Jul 01, 2009 at 03:02:45PM +0000, corvid wrote:
Jorge wrote:
2.- http://planet.postgresql.org/ Unrendered HTML. Simple one to start with.
Isn't that one because it says <meta http-equiv="Content-Type" content="text/xhtml; charset=utf-8" /> and we don't have a Mime_add_minor_type("text/xhtml", a_Html_text); because we never quite decided what we wanted to do about xhtml and validation?
Could be, I just checked the HTTP server sent the correct type. If this is the case, then the task is to create a notification area widget that hides/unhides just like the findbar, but below the control panel. It would serve for the Meta refresh warning (instead of the current HTML injection) and for XHTML that has bugs detected. In the above mentioned case (XHTML served as HTML). Whatever the reasons (broken as from [1], understandable as from [2]), it would be good to render it, provided we have the warning-widget just in case it doesn't validate. ;) -- Cheers Jorge.-
On Thu, Jul 02, 2009 at 08:42:27AM -0400, Jorge Arellano Cid wrote:
In the above mentioned case (XHTML served as HTML). Whatever the reasons (broken as from [1], understandable as from [2]), it would be good to render it, provided we have the warning-widget just in case it doesn't validate. ;)
The URLs: [1] http://www.hixie.ch/advocacy/xhtml [2] http://www.goer.org/Journal/2003/04/the_xhtml_100.html -- Cheers Jorge.-
Jorge wrote:
On Wed, Jul 01, 2009 at 03:02:45PM +0000, corvid wrote:
Jorge wrote:
2.- http://planet.postgresql.org/ Unrendered HTML. Simple one to start with.
Isn't that one because it says <meta http-equiv="Content-Type" content="text/xhtml; charset=utf-8" /> and we don't have a Mime_add_minor_type("text/xhtml", a_Html_text); because we never quite decided what we wanted to do about xhtml and validation?
Could be, I just checked the HTTP server sent the correct type. If this is the case, then the task is to create a notification area widget that hides/unhides just like the findbar, but below the control panel. It would serve for the Meta refresh warning (instead of the current HTML injection) and for XHTML that has bugs detected.
In the above mentioned case (XHTML served as HTML). Whatever the reasons (broken as from [1], understandable as from [2]), it would be good to render it, provided we have the warning-widget just in case it doesn't validate. ;)
For that matter, http://www.iana.org/assignments/media-types/ doesn't show text/xhtml as a registered media type. (The usual application/xhtml+xml is registered) PS I wonder how the CSS people got it into their heads to reuse the term "media type" for something completely different.
On Wed, Jul 01, 2009 at 08:51:08AM -0400, Jorge Arellano Cid wrote:
Hi Ricardo,
On Wed, Jul 01, 2009 at 12:36:27AM +0100, Jo?o Ricardo Louren?o wrote:
Ter, 2009-06-30 ?s 22:43 +0100, Jo?o Ricardo Louren?o escreveu:
Well, I promised I would report to you when I got more free time. Guess what, I'm on vacation! Getting free time from my own personal projects finally lets me take a closer look at Dillo. I am sorry for being away for such a long time, though.
I would like to contribute to one area that I have contributed previously -- the close-tab button. It isn't critical, I know, but, for now, it's the best I can do. The idea now is to finally have a button in each tab.
It is tough, but I am getting somewhere. The 'initial' drawing part is done, but I have had to make some small changes to some virtual functions, and also changing non-virtual functions and finding a way to 'enable' them in the code.
It's pretty hackish right now, but I have managed to print the button and am now starting to handle all the events and different button states (clicked, over, etcetera).
I'll keep you updated!
Jo?o
Answering myself, I've got the system working! There are still many more code-cleanups to do and add a couple of documentation features here and there.... It isn't 'pretty', but someone with more skills in the 'design' area can do better than me, I've got the system (which is pretty dumb and slow, IMO).
There are, however, three issues I have:
1. I still haven't sorted things with the pager to have tabs behave 'correctly', but that should be _too_ hard, just quite some research.
2. When I destroy a tab, their order gets 'mixed up', but only sometimes.
3. For some reason, clicking on some tabs isn't working (not the buttons, but the tabs).
I'll go into them and I think that 3 and 2 are related. I just decided to inform all of you how progress was going.
It's good to see you around again!
Welcome back.
WRT tabs. If you succeed in a short time span, great. If it takes more effort, I'd prefer you to work on another area. The fact is most probably we'll have to port dillo2 to FLTK-1.3 at some point this year, and our fine tunning/hacking/workarounds for FLTK2 will be lost, and we'll have to start again...
The progress on FLTK-1.3 really looks promising. However I would not hold my breath waiting for a FLTK-1.3 release. I would just keep working on whatever is needed or wanted and judge about a switch to FLTK-1.3 once there is an official release. Cheers, Johannes
Qua, 2009-07-01 ?s 17:53 +0200, Johannes Hofmann escreveu:
On Wed, Jul 01, 2009 at 08:51:08AM -0400, Jorge Arellano Cid wrote:
Hi Ricardo,
On Wed, Jul 01, 2009 at 12:36:27AM +0100, Jo?o Ricardo Louren?o wrote:
Ter, 2009-06-30 ?s 22:43 +0100, Jo?o Ricardo Louren?o escreveu:
Well, I promised I would report to you when I got more free time. Guess what, I'm on vacation! Getting free time from my own personal projects finally lets me take a closer look at Dillo. I am sorry for being away for such a long time, though.
I would like to contribute to one area that I have contributed previously -- the close-tab button. It isn't critical, I know, but, for now, it's the best I can do. The idea now is to finally have a button in each tab.
It is tough, but I am getting somewhere. The 'initial' drawing part is done, but I have had to make some small changes to some virtual functions, and also changing non-virtual functions and finding a way to 'enable' them in the code.
It's pretty hackish right now, but I have managed to print the button and am now starting to handle all the events and different button states (clicked, over, etcetera).
I'll keep you updated!
Jo?o
Answering myself, I've got the system working! There are still many more code-cleanups to do and add a couple of documentation features here and there.... It isn't 'pretty', but someone with more skills in the 'design' area can do better than me, I've got the system (which is pretty dumb and slow, IMO).
There are, however, three issues I have:
1. I still haven't sorted things with the pager to have tabs behave 'correctly', but that should be _too_ hard, just quite some research.
2. When I destroy a tab, their order gets 'mixed up', but only sometimes.
3. For some reason, clicking on some tabs isn't working (not the buttons, but the tabs).
I'll go into them and I think that 3 and 2 are related. I just decided to inform all of you how progress was going.
It's good to see you around again!
Welcome back.
WRT tabs. If you succeed in a short time span, great. If it takes more effort, I'd prefer you to work on another area. The fact is most probably we'll have to port dillo2 to FLTK-1.3 at some point this year, and our fine tunning/hacking/workarounds for FLTK2 will be lost, and we'll have to start again...
The progress on FLTK-1.3 really looks promising. However I would not hold my breath waiting for a FLTK-1.3 release. I would just keep working on whatever is needed or wanted and judge about a switch to FLTK-1.3 once there is an official release.
Cheers, Johannes
Well, it shouldn't take much longer. There are only two problems left: 1. With many tabs (running under valgrind's memcheck), whenver we need to 'redraw' the button, we're redrawing the entire TabGroup, which shows flickering. Meaning that on older computers that will be shown, and we can't have that. So I'm guessing that, to fix it, we're going to need cliping. 2. I still have some issues with detecting if the cursor was on top of a button or not, but I'm trying to decode the hardcoded fltk source to see if I can understand it properly and use it.
I would just keep working on whatever is needed or wanted and judge about a switch to FLTK-1.3 once there is an official release.
That seems rather reasonable to me, but one must realize that the more we wait, the more we depend on current code and the harder it will be to make the switch. And there's always the distro problem... Jo?o
_______________________________________________ Dillo-dev mailing list Dillo-dev@dillo.org http://lists.auriga.wearlab.de/cgi-bin/mailman/listinfo/dillo-dev
Qua, 2009-07-01 ?s 17:53 +0200, Johannes Hofmann escreveu:
On Wed, Jul 01, 2009 at 08:51:08AM -0400, Jorge Arellano Cid wrote:
Hi Ricardo,
On Wed, Jul 01, 2009 at 12:36:27AM +0100, Jo?o Ricardo Louren?o wrote:
Ter, 2009-06-30 ?s 22:43 +0100, Jo?o Ricardo Louren?o escreveu:
Well, I promised I would report to you when I got more free time. Guess what, I'm on vacation! Getting free time from my own personal projects finally lets me take a closer look at Dillo. I am sorry for being away for such a long time, though.
I would like to contribute to one area that I have contributed previously -- the close-tab button. It isn't critical, I know, but, for now, it's the best I can do. The idea now is to finally have a button in each tab.
It is tough, but I am getting somewhere. The 'initial' drawing part is done, but I have had to make some small changes to some virtual functions, and also changing non-virtual functions and finding a way to 'enable' them in the code.
It's pretty hackish right now, but I have managed to print the button and am now starting to handle all the events and different button states (clicked, over, etcetera).
I'll keep you updated!
Jo?o
Answering myself, I've got the system working! There are still many more code-cleanups to do and add a couple of documentation features here and there.... It isn't 'pretty', but someone with more skills in the 'design' area can do better than me, I've got the system (which is pretty dumb and slow, IMO).
There are, however, three issues I have:
1. I still haven't sorted things with the pager to have tabs behave 'correctly', but that should be _too_ hard, just quite some research.
2. When I destroy a tab, their order gets 'mixed up', but only sometimes.
3. For some reason, clicking on some tabs isn't working (not the buttons, but the tabs).
I'll go into them and I think that 3 and 2 are related. I just decided to inform all of you how progress was going.
It's good to see you around again!
Welcome back.
WRT tabs. If you succeed in a short time span, great. If it takes more effort, I'd prefer you to work on another area. The fact is most probably we'll have to port dillo2 to FLTK-1.3 at some point this year, and our fine tunning/hacking/workarounds for FLTK2 will be lost, and we'll have to start again...
The progress on FLTK-1.3 really looks promising. However I would not hold my breath waiting for a FLTK-1.3 release. I would just keep working on whatever is needed or wanted and judge about a switch to FLTK-1.3 once there is an official release.
Cheers, Johannes
Well, the problems I referred to in the previous post are still an issue, but I thought I should share the code so that someone with more experience can solve it. This doesn't mean I'm not trying to solve it! -- I sure am. Problems: 1. Once the tabs start shrinking, it all goes wacko. which_tab() starts returning incorrect values, which makes the detection go wrong. Maybe it is related to extra_spacing? 2. BTN_DISTANCE_FROM_EDGE_X is doing the opposite, but that's intentional 3. the toolTip is currently disabled (read: not working), but that's easy to fix. 4. Removing a tab other than the selected can cause troubles. Previously I had fixed this by removing() it first and then using a_UIcmd_close_bw(). But it sometimes caused valgrind errors which I couldn't debug. 5. Many tabs open is painful. Check it for yourself. 6. Redrawing the entire thing is painful. Clipping is needed. So, if there weren't any valgrind errors (which seemed random) and if there wasn't any shrinking process, this would be nearly 'perfect'. ---- I think that the optimal tab system would be something like what is used in firefox, with arrows both on the left side and on the right side (when needed). This is logically something harder to do...but an additional challenge (a full rewrite of the tab system, which, fortunately, isn't that 'used' along the system). It would probably also be more user-friendly. But that's my opinion, and there are more important things. I would, however, be available for that task. In fact, I think that, eventually, dillo will need to reformulate its tab system. !! This patch is in no-way finished, complete, fully usable, recommended, or in full agreement with the formatting rules for dillo. !! Thanks, Jo?o
_______________________________________________ Dillo-dev mailing list Dillo-dev@dillo.org http://lists.auriga.wearlab.de/cgi-bin/mailman/listinfo/dillo-dev
Crap, forgot to attach the patch, my bad sorry. Jo?o
_______________________________________________ Dillo-dev mailing list Dillo-dev@dillo.org http://lists.auriga.wearlab.de/cgi-bin/mailman/listinfo/dillo-dev
participants (4)
-
corvid@lavabit.com
-
jcid@dillo.org
-
Johannes.Hofmann@gmx.de
-
jorl17.8@gmail.com