| <<<Back 1 day (to 2013/04/02) | 2013/04/03 |
mvrhel_laptop | ok the contents stuff is now all working in the windows app. tomorrow I will tackle the reflow | 06:09.06 |
Robin_Watts | http://ghostscript.com/~robin/MuPDF-11.apk | 09:49.30 |
| That's the latest build of MuPDF as I will upload it to Google Play, unless anyone finds a problem with it. Can anyone with an android device give it a quick test please? | 09:50.05 |
| Well, that version fails for me. :( | 10:00.01 |
| batter version there now. | 10:19.00 |
| I get crashes in the printing stuff due to out of memory. | 10:28.27 |
tor8 | Robin_Watts: looking at localisation, we've got plenty of UI strings in the android app that should be put in res/values/strings.xml if I am not mistaken | 11:33.41 |
Robin_Watts | tor8: just spoke on the phone to paulgardiner. | 12:23.59 |
| He also points out the Iain Banks news :( | 12:24.07 |
tor8 | sad day indeed | 12:24.28 |
Robin_Watts | he's going to look at those strings, cos eclipse knows how to do that. | 12:24.29 |
tor8 | right. I just started, but I can hold off if eclipse makes it easier. | 12:25.11 |
Robin_Watts | I think eclipse makes it much easier. | 12:26.04 |
paulgardiner | tor8: Just finished Surface Detail a couple of hours ago while sitting in a garage waiting room, then came back home and saw that the one more culture book I have to read will be the last | 12:26.09 |
| tor8: yes, Eclipse does seem to be simplifying this | 12:32.57 |
sebras | has a bad conscience about that... | 12:47.58 |
Robin_Watts | sebras? | 13:04.25 |
sebras | Robin_Watts: yes. | 13:04.31 |
Robin_Watts | sebras poisoned iain banks? | 13:04.38 |
kens | voodoo maybe ? | 13:04.51 |
sebras | Robin_Watts: I think I made a syftningsfel. (google actually translated it this way, I trust google). | 13:06.50 |
| Robin_Watts: basically means that I made a reference error... ;) | 13:07.17 |
Robin_Watts | I'll hold the nail, you take the hammer. When I nod my head, you hit it. | 13:09.15 |
paulgardiner | Robin_Watts, tor8: localisation commit is ready on paul/master, plus another tidying one | 13:12.38 |
Robin_Watts | I have some redone printer graphics. Just going to do a test build. | 13:13.39 |
| tor8: We need a time estimate for the bidirectional work. | 13:14.32 |
| there was a time estimate in the original PDF file. | 13:14.50 |
tor8 | the original estimate still holds, just need to prioritize: bidi or localisation first? | 13:18.19 |
Robin_Watts | localisation should only take a day or so, right? It's just a question of firing stuff off to onesky ? | 13:19.42 |
tor8 | I was hoping to clean up and make sure all the stuff that needs firing off is up to date | 13:20.11 |
| your email blurb about "what is mupdf" should probably go on the web page somewhere | 13:20.32 |
Robin_Watts | tor8: right. | 13:21.52 |
paulgardiner | Robin_Watts: I just repeated the SEGV-on-printing problem you told me about, but, after a delay the app recovered. No warning, though. | 13:24.57 |
tor8 | I'm thinking the UI texts might need some fleshing out. single words taken out of context translate badly. | 13:25.01 |
Robin_Watts | paulgardiner: Right, that's what I see. | 13:26.23 |
| The problem is the lack of feedback. I spent a while wondering why it wasn't printing. | 13:26.41 |
paulgardiner | I think I can make an error report | 13:26.47 |
Robin_Watts | paulgardiner: Those commits look good to me. | 13:43.33 |
paulgardiner | ta | 13:43.45 |
Robin_Watts | I'll push them, then rebuild, and you can poke fun at my icons. | 13:43.47 |
paulgardiner | They'd need to be worse than mine for that. I don't hold up much hope. | 13:44.21 |
Robin_Watts | OK. Uploading new apk to the same place now. It'll take 5 mins, so I'm going to lunch. | 13:46.45 |
| mvrhel_laptop: http://ghostscript.com/~robin/MuPDF-11.apk | 14:22.29 |
| +tor8, paulgardiner: What do you think to the icons? | 14:22.42 |
paulgardiner | I'll take a look. Fixed the print SEGV, and made it display an error. It now goes unnecessarily to the next print page and gives an error there too, but I can't see a fix for that. We'd need to throw a javascript error | 14:25.06 |
tor8 | hmm, pressing the back button in the different ui modes should maybe take it back to the normal mode? | 14:27.06 |
| not really happy with the "chat" icon, what's it supposed to stand for? | 14:27.40 |
Robin_Watts | tor8: Yes. | 14:27.41 |
paulgardiner | Robin_Watts: I see only one altered, but that one does look good. | 14:27.57 |
Robin_Watts | paulgardiner: Yes, I just changed the printer icon to be in the same style. | 14:28.17 |
| tor8: Can you think of a better icon instead of the speech bubble? | 14:28.31 |
paulgardiner | Yeah. Like it | 14:28.33 |
Robin_Watts | kens, tor8, chrisl: Have you booked flights for SF yet ? | 14:28.57 |
kens | do we have a definite go from Miles ? | 14:29.12 |
Robin_Watts | oh, possibly not. | 14:29.27 |
tor8 | I'm thinking we should step back and think up a better UI for annotations. this one is awfully confusing with all the nested modes. | 14:29.28 |
paulgardiner | tor8: the speach bubble wants to be something that just means "more stuff" | 14:29.48 |
Robin_Watts | tor8: yeah, paulgardiner was saying that he wasn't hugely happy with the current heirarchy. | 14:30.00 |
| paulgardiner: How about a '+' ? | 14:30.08 |
tor8 | I'm not sure it's wise to push the app in its current confusing state. | 14:30.30 |
paulgardiner | yeah, or a plus in a circle | 14:30.31 |
| I don't like the hierarchy for new users, but it works fine once you know where things are. | 14:31.26 |
tor8 | is there a drop-down menu we could use instead for all but the most common commands? | 14:31.31 |
| paulgardiner: yeah, but that involves a lot of trying and guessing what the buttons do, which non-programmers are deathly afraid of | 14:31.54 |
sebras | tor8: deleting annotations was not very intuitive. | 14:33.05 |
tor8 | the "menu" button (physical in android <= 3, and on the toolbar in 4) is what I'm thinking | 14:33.22 |
paulgardiner | I thought deleting was ok. I copied Adobe Reader for that. | 14:34.28 |
tor8 | with commands to: copy, highlight, underline, ink (and the other annotation types), reflow, print, save | 14:34.32 |
| "Save" in the corner while in "Ink" mode is scary. | 14:34.58 |
Robin_Watts | tor8: My transformer prime is running 4.1 at least, and that has no menu icon in the toolbar. | 14:35.17 |
tor8 | makes me think I will save the file, not finish the annotation | 14:35.25 |
paulgardiner | There's two ways to do this. 1) Stick with what we have for now. 2) Think it out in complete detail. | 14:35.33 |
tor8 | Robin_Watts: you need to add one, many apps have one (it's the one with three dots in a vertical column) | 14:35.50 |
paulgardiner | Ah no | 14:35.51 |
| 3. Make some tweaks for the worse things. | 14:36.00 |
sebras | the only thing that was really confusing was that the print icon brought me to the browser and logging in to my google account. I didn't login, but is this supposed to happen? | 14:36.02 |
Robin_Watts | sebras: Yes. It's google cloud print. | 14:36.17 |
paulgardiner | The Save is potentially problematic because it might be though of as save doc | 14:36.19 |
Robin_Watts | You log in to get to your printers. | 14:36.39 |
tor8 | I vote to stick everything (except outline, search, maybe links) in the "submenu" | 14:37.01 |
paulgardiner | tor8: rename Save to Done? | 14:37.12 |
tor8 | and the "highlight", "copy", etc drops you in text select mode and when you hit "Done" the annotation is created, text copied | 14:37.23 |
Robin_Watts | paulgardiner: Save => Done definitely. | 14:37.49 |
tor8 | that should get rid of one level of nested state, and since it's a text menu we don't have to worry about icons and fitting the buttons | 14:37.54 |
| annotation selection/deletion overrides page flipping, and I'd guess it also obscures link following | 14:39.03 |
paulgardiner | I guess making all annotation creations work the same would be good, in terms of entering a mode and then requiring the Done button t be pressed. | 14:42.11 |
Robin_Watts | Having search, reflow, links, outline and annotations as the top level icons works for me. | 14:43.42 |
| or maybe "everything else" instead of annotations. | 14:44.12 |
| Having menu also bring up the "everything else" menu seems sensible too. | 14:44.37 |
paulgardiner | I think definitely reflow mush be top level. | 14:45.10 |
Robin_Watts | And having everything follow the "select annotation type, then do the drag selection or drawing etc, then "Done" " model seems good. | 14:45.35 |
| I like the idea that "back" should mean "cancel out of current annotation mode" | 14:47.34 |
paulgardiner | So we could have top level: links, everything else, outline, reflow, search. everything else: copy text, print, add annotations. add annotations: strike, underline ink,... | 14:47.48 |
Robin_Watts | Arguably the 'everything else' menu should contain links/outline/reflow/search too. | 14:48.24 |
| And the menu should be hooked up to the menu button. | 14:48.40 |
| paulgardiner: 2 things occur to me about that. | 14:49.28 |
paulgardiner | The menu button already makes the icons appear or disappear | 14:49.36 |
Robin_Watts | 1) do we need "add annotations" as a separate submenu? | 14:49.56 |
| 2) How does this scale when we come to want to allow editing of annotations as well as adding them ? | 14:50.15 |
paulgardiner | Adobe Reader triggers all editing, including delete off touching the annotation | 14:50.52 |
| ... which I quite like | 14:51.07 |
Robin_Watts | paulgardiner: So there is no "edit annotation" mode ? | 14:51.21 |
paulgardiner | 1) Not sure. Maybe not | 14:51.22 |
| There is a mode, but it is triggered by selecting the annotation | 14:51.46 |
Robin_Watts | so in our app, we'd touch the annotation, and that would pop up the same menu as you got when you chose "add annotation" ? | 14:52.47 |
paulgardiner | On the other hand, maybe Adobe Reader is wrong to do that because it is supposed to be possible to assign text to an annoation that appears when you click it. | 14:52.57 |
| Robin_Watts: No. It would be a different menu, letting you change color thickness whatever. | 14:53.29 |
Robin_Watts | paulgardiner: So the menu would be specific to the annotation type? | 14:53.55 |
paulgardiner | yeah | 14:54.01 |
Robin_Watts | It doesn't allow you to change the type of the annotation? | 14:54.05 |
paulgardiner | No | 14:54.13 |
Robin_Watts | ok. | 14:54.18 |
paulgardiner | You'd have to delete it and create another | 14:54.26 |
Robin_Watts | That doesn't seem hugely friendly. Suppose I strikeout some text when I wanted to underline it. I'd rather not have to go through the fiddly selection process again to fix that. | 14:55.26 |
paulgardiner | Also you can't choose say the color when creating an annotation. You create it then edit it. I think that works well, although it wouldn't have been how I'd have gone about it if I hadn't seen Adobe Reader | 14:55.26 |
| At the moment of course, deletion is the only type of edit | 14:55.56 |
Robin_Watts | paulgardiner: Once you set the color once, do future creations get the same color etc? | 14:56.11 |
paulgardiner | Yes. Not that we have that implemented yet, but yes | 14:56.35 |
| At the moment we have fixed colors for underline, strikeout, highlight and ink | 14:57.36 |
| 2 lines up s/have/don't have/ | 14:59.05 |
Robin_Watts | Not that we don't have that implemented yet? ETOOMANYNEGATIONS | 14:59.40 |
| :) | 14:59.51 |
paulgardiner | Doh. Was right the first time | 15:00.06 |
Robin_Watts | henrys: So, I've built a new version of the apk. But there are a few things we'd like to fix before pushing it onto google play. | 15:00.41 |
| 1) Printing can run out of memory causing a silent drop back to the app with no warnings. Paul has a partial fix for that. | 15:01.16 |
| 2) Tor8 points out (correctly) that the structure of the modes in the app has grown slightly oddly - it could do with rationalisation. | 15:01.48 |
| 3) We don't work on non touchscreen devices. | 15:01.58 |
tor8 | a separate annotation button that brings up the annotation commands might be a good idea, not to overflow the "everything else" menu | 15:02.26 |
| and having an annotation edit mode to both delete and change colors (and type, between the text strikeout/highlight/etc) I quite like | 15:04.42 |
paulgardiner | Robin_Watts: I think the fix is ok. It's just that you currently get warned twice | 15:04.51 |
tor8 | not too fond of entering it on touching an annotation though, since it interferes with regular navigation | 15:05.00 |
henrys | what non-touch screen device do we look at, Robin_Watts ? | 15:05.15 |
tor8 | but for getting the apk out this week rather than next month, I'm if we only restructure the menus and buttons as discussed | 15:05.51 |
| brb, need to afk for a bit | 15:05.59 |
| or well, biab more likely | 15:06.07 |
Robin_Watts | Sorry, I was unclear. It's not just non touchscreen device, it's non-multitouch we need to support too. | 15:06.17 |
| Someone pointed out a phone that's single touch only on here a while ago. | 15:06.36 |
| Also, if you have an android TV based device (say like the gamestick or the Ouya) they won't be touch at all. | 15:07.06 |
| My gamestick is due to be sent to Marcosw in April sometime :) | 15:07.43 |
henrys | you guys need a black-market or something? | 15:08.12 |
Robin_Watts | If we were really in a hurry, we could drop $500 and get the developer spec gamestick now, I think. | 15:10.03 |
paulgardiner | tor8: touch to edit could be invoked by entering the annotations menu | 15:10.22 |
henrys | I wonder if that is something that can wait for a customer complaint. Viewing PDF's on a game console is not likely to be an important market | 15:10.30 |
paulgardiner | tor8: I mean the one from which you select which annotation you wish to create, so also from there, you can touch an existing one. | 15:11.13 |
Robin_Watts | henrys: I think we're going to see android pushed into a whole bunch of non-touch screen devices. | 15:11.14 |
| media streamers etc. Will car dashboard android devices be touch screened? | 15:11.39 |
paulgardiner | Also creating an annotation could leave you with that menu open so that you can immediately edit the freshly created annoatation | 15:11.46 |
| ... or create another | 15:12.11 |
Robin_Watts | but leaving it for a bit won't hurt, sure (but it should be on our radar) | 15:12.17 |
paulgardiner | henrys: and anyone with a non-multitouch phone, really needs to buy a new one. | 15:13.16 |
henrys | Robin_Watts:fair enough | 15:13.18 |
Robin_Watts | paulgardiner: the guy that pointed us at the non multitouch phone was from Kenya. Apparently the single touch android device is hugely popular there. | 15:14.03 |
paulgardiner | Ah right. | 15:15.21 |
| I should at least see whether it's completely trivial. | 15:16.25 |
henrys | I would think that should go very quickly just a new bunch of UI events for stuff we've already done with touch - famous last words. | 15:17.00 |
Robin_Watts | paulgardiner: icon review on robin/master | 15:18.11 |
paulgardiner | If I can detect double-tap drag, I could zoom on that independently of whether the device had multitouch | 15:18.16 |
| Robin_Watts: icon review looks good | 15:19.17 |
Robin_Watts | RESULT_CANCELED | 15:19.51 |
paulgardiner | Robin_Watts: do you want to take my print-SEGV fix too? | 15:19.55 |
Robin_Watts | OK, I was going to query the spelling of cancelled, but apparently I'm wrong. | 15:20.18 |
| Ah, the US spells it differently (wrongly) | 15:20.47 |
paulgardiner | My preference for the menu system would be to stick with icons, change the hierarchy according to what we seemed to have settled on, and make the mode use more sensible. | 15:21.02 |
Robin_Watts | paulgardiner: "Print failed" should have the eclipse magic done to it to put it into the res file. | 15:21.30 |
paulgardiner | Robin_Watts: Yeah, strange word. Not sure what it means | 15:21.33 |
| Robin_Watts: Doh. I knew that. I did. Right before I clicked the push button | 15:22.01 |
| Hang on a min | 15:22.05 |
Robin_Watts | so, we catch the exception in PrintDialogActivity, and set resultCode = RESULT_CANCELED. | 15:24.08 |
paulgardiner | Robin_Watts: my copy here has it done. Did I push something different? | 15:24.28 |
Robin_Watts | Can we kill the print activity there too? | 15:24.36 |
paulgardiner | Robin_Watts: that's in a callback from javascript. I'm not sure it would be good to do it there | 15:25.10 |
Robin_Watts | Line 585ish of MuPDFActivity.java | 15:25.14 |
| http://git.ghostscript.com/?p=user/paulg/mupdf.git;a=commitdiff;h=3e570a3122a7e5f56ba83c95bdb647c8a6d896a4 | 15:25.27 |
| or maybe just rethrow the exception? | 15:25.53 |
paulgardiner | Robin_Watts: would need to throw a javascript exception and I don't know how to do that, or even if it can be done. Allowing the Java exception through was what caused the SEGV | 15:27.08 |
Robin_Watts | paulgardiner: right. but it did get us back to the app without the extra warning :) | 15:27.48 |
paulgardiner | Yes and no. It hung for ages and then crashed in a way that allowed the main activity to continue | 15:28.36 |
| Not it neither hangs or segvs | 15:28.51 |
Robin_Watts | paulgardiner: Do you want to repush with the "Print failed" string in the resources ? | 15:29.26 |
paulgardiner | Robin_Watts: just done it | 15:29.33 |
Robin_Watts | Do you want to repush with the "Print failed" string in the resources string file ? :) | 15:30.12 |
paulgardiner | I thought that, but no. It was already there because of being used elsewhere | 15:30.40 |
Robin_Watts | ah, ok. | 15:30.48 |
paulgardiner | Did we sort of all agree on what to do with the menu hierachy? | 15:31.38 |
Robin_Watts | My head fell forwards onto the keyboard in a way that you might interpret as agreement :) | 15:32.25 |
paulgardiner | Strange. We all agreed and then I woke up in exactly that position. | 15:33.32 |
| We need an everything-else icon and an annotation icon. | 15:34.22 |
Robin_Watts | We should possibly use the standard android menu icon (or something like it) for the 'everything else' icon? | 15:39.45 |
| oh, tor8 is afk, so he may not have agreed. | 15:40.45 |
paulgardiner | plus in a circle (meaning "add things") could be used for annotations | 15:43.14 |
| ah there's a "more" icon: a downward pointing triangle in a circle | 15:44.12 |
| That would make a good "everything else" | 15:44.30 |
Robin_Watts | paulgardiner: yeah. | 15:44.44 |
| I don't get the print failed thing until after I exit the printer page. | 15:47.29 |
paulgardiner_ | Fell off the internet | 15:49.43 |
| Robin_Watts: for me the printed page closed on it's own | 15:50.12 |
Robin_Watts | paulgardiner: What's the magic incantation for "do this on another thread" ? | 15:53.19 |
| can we launch something on another thread that says "close the PrintDialogActivity" ? | 15:53.46 |
paulgardiner | Ah possibly | 15:54.08 |
| Hang on. We might be able to call finish (as you suggested). I don't think it's acted on immediately. Let me just try that. | 15:55.15 |
| Robin_Watts: yes works and pushed. | 15:59.32 |
| Sorry, should have realised that was possible when you suggested it earlier | 15:59.47 |
Robin_Watts | ah, fab. | 16:00.10 |
paulgardiner | I have to go, but I'll be within earshot of IRC when my name dings | 16:00.29 |
Robin_Watts | fab. I'm going to do a (+) and a (v) icon. | 16:01.47 |
kens | OK I'm off out for a pizaa, goodnight all | 16:02.00 |
mvrhel_laptop | Robin_Watts: you available to answer a couple git questions | 16:13.06 |
| I want to make sure I don't screw up anything | 16:13.15 |
| I wanted to bring my repos on casper up to date as well as my local checkout | 16:13.51 |
Robin_Watts | mvrhel_laptop: I am. | 16:14.40 |
| ok, so do you have everything committed locally? | 16:14.58 |
mvrhel_laptop | yes. everything is in my branch | 16:15.12 |
| my goal is to get all the updates into there and into the masters | 16:15.33 |
Robin_Watts | OK, so I personally would push that up to your casper repo now, so that way if anything goes wrong, you have a copy. | 16:15.45 |
mvrhel_laptop | I did that last night but let me double check | 16:16.02 |
Robin_Watts | git push origin branchname | 16:16.06 |
mvrhel_laptop | ok all is fine there | 16:16.50 |
Robin_Watts | ok, so first thing, checkout to your local master branch: git checkout master (you'll have to convert this to tortoise) | 16:17.46 |
mvrhel_laptop | ok hold on | 16:18.20 |
Robin_Watts | Then pull in any changes from golden that have happened since you last updated: git pull --rebase golden master | 16:18.20 |
mvrhel_laptop | ok my local master now matches golden master | 16:20.01 |
Robin_Watts | ok. Now change back to winRT | 16:20.11 |
| git checkout winRT | 16:20.15 |
| then: git rebase master | 16:20.23 |
| I can confidently predict that it will go through without any problems, cos I've just done it here :) | 16:20.39 |
mvrhel_laptop | hmm that is odd | 16:22.39 |
Robin_Watts | front door, brb. | 16:23.11 |
mvrhel_laptop | I wonder if I did the rebase backwards crap | 16:25.25 |
| It went through my 20 commits in WinRT and rebased those | 16:26.25 |
Robin_Watts | I have a version of winRT on my repo now, which is rebased to the current master, plus I squashed a couple of "missing file for previous commit" things into the ones they were missed from. | 16:26.38 |
mvrhel_laptop | and then warned me that those commits are no longer associated with any branches | 16:26.52 |
| maybe I should do this with gitbash | 16:27.05 |
| let me abort and do that | 16:27.19 |
Robin_Watts | ok. | 16:27.25 |
mvrhel_laptop | ok that seemed to work | 16:28.56 |
| yes. the log looks good | 16:29.30 |
Robin_Watts | mvrhel_laptop: Fab. | 16:29.34 |
mvrhel_laptop | shows the commits from 4/3 and then my commits on top of those | 16:29.43 |
Robin_Watts | Do you want to do the same cleanup of the commits that I just did? | 16:29.54 |
mvrhel_laptop | sure | 16:30.06 |
Robin_Watts | It's very simple. | 16:30.06 |
| OK, so in git bash, I do: git rebase -i master | 16:30.28 |
| That says "interactively rebase the current branch from the HEAD back to where it meets master" | 16:30.51 |
| What it will do is open up an editor window with a list of commits in. | 16:31.04 |
mvrhel_laptop | so I am currently on winRT is that fine? | 16:31.20 |
Robin_Watts | Perfect. | 16:31.28 |
| For each commit it will say "pick <hash> <first line of commit>" | 16:31.35 |
mvrhel_laptop | ok in the editor | 16:31.39 |
| yes | 16:31.45 |
Robin_Watts | Now the trick here is that by editing those lines, you can make git change the history. You can remove lines entirely to remove commits. | 16:32.13 |
| or you can change 'pick' to something different. | 16:32.22 |
mvrhel_laptop | so why would you want to do this in the case we have here | 16:32.49 |
Robin_Watts | For instance, I changed 'pick' to 's' for all the lines that said "add some files missed from the last commit" | 16:33.10 |
mvrhel_laptop | ah ok | 16:33.30 |
Robin_Watts | and for the commit that says "add the alide view" I changed that to 'r' | 16:33.47 |
mvrhel_laptop | so you change the word pick to s for the add some files (looks like 4 of those) | 16:34.19 |
Robin_Watts | yes. | 16:34.29 |
| exactly. | 16:34.33 |
| Then when you're happy save the file and exit your editor. | 16:34.42 |
mvrhel_laptop | and that will squash those together | 16:34.42 |
Robin_Watts | Then it'll go ahead and do the work. It'll stop after the first squash with the editor window open, so you can edit the commit message. | 16:35.25 |
| (probably you just want to remove the second and subsequent commit messages) | 16:35.40 |
| When you save and exit, it will continue with the rebase. | 16:36.01 |
mvrhel_laptop | so do I remove the commit messages now for the missing files (while in the editor) | 16:36.27 |
Robin_Watts | Yes. | 16:36.33 |
| In general when you squash two commits together, you probably want to create a new commit message that covers both of the changes - in this particular case (where the second one is just a fixup for the first), you generally just delete the second one. | 16:37.31 |
mvrhel_laptop | ok | 16:37.49 |
| ok so I think I am done. how do I exit this editor | 16:38.22 |
Robin_Watts | which editor? :) | 16:38.34 |
mvrhel_laptop | oh this is vi | 16:38.41 |
Robin_Watts | esc :q | 16:38.50 |
| That's the only vi command I know :) | 16:38.56 |
chrisl_r61 | esc :wq <---- exit and write file | 16:39.32 |
mvrhel_laptop | oh crap | 16:39.59 |
Robin_Watts | chrisl: Ah, right. I never want to write the file before I exit it, because I've generally filled it with random chars in rage at having been dumped into vi. | 16:40.21 |
chrisl_r61 | Robin_Watts: in that case, "forced" quit is: esc :q! | 16:41.01 |
Robin_Watts | that rings a bell. | 16:41.13 |
| mvrhel_laptop: What's happening? | 16:41.19 |
mvrhel_laptop | well the whole git bash stuff stopped running | 16:41.37 |
| getting back now and and reopening file to see what I have.... | 16:41.52 |
Robin_Watts | You're probably mid-rebase. git rebase --abort should put you back to the start. | 16:42.17 |
mvrhel_laptop | yes | 16:42.28 |
Robin_Watts | Do you have an editor that you like? | 16:42.56 |
mvrhel_laptop | not in unix/linux | 16:43.19 |
Robin_Watts | on windows. | 16:43.24 |
mvrhel_laptop | winedt is what I usually use | 16:43.33 |
Robin_Watts | ok, we can set it up so that it calls winedt. | 16:43.48 |
| Is winedt on your path? | 16:43.58 |
mvrhel_laptop | I think so | 16:44.12 |
Robin_Watts | (i.e. can you type "winedt blah.txt" at the git bash shell and have it appear?) | 16:44.22 |
mvrhel_laptop | no that does not work | 16:45.40 |
Robin_Watts | OK. How about "/c/Program\ Files/winedt/winedt blah.txt" (edit the path as appropriate :) ) | 16:46.35 |
mvrhel_laptop | notpad2 works and that is fine | 16:47.25 |
Robin_Watts | ok. export EDITOR=notpad2 | 16:47.39 |
mvrhel_laptop | ok now, let me do the interactive.. | 16:48.01 |
Robin_Watts | paulgardiner: ping! | 16:48.51 |
| paulgardiner: The fix review looks fine - but there is some repeated code in there. | 16:49.24 |
| Presumably we really want to cope with any Exception as being a failure at that stage? | 16:49.41 |
| catch (Exception e) { ... } ? | 16:49.49 |
mvrhel_laptop | hmmm it started through the rebasing and seems stopped at 4/20 | 16:49.52 |
Robin_Watts | mvrhel_laptop: It should have opened an editor window for you? | 16:50.12 |
mvrhel_laptop | oh yes | 16:50.16 |
| I did that | 16:50.18 |
| and made the changes | 16:50.22 |
| and save and exited | 16:50.28 |
| then it started doing the rebase | 16:50.34 |
| and it did the first 3 and now is sitting there | 16:50.45 |
Robin_Watts | Right, but when it hits 4, that's the first 'squash' one. | 16:50.50 |
| So it should open another editor window for you. | 16:50.58 |
| for you to edit the commit messages? | 16:51.06 |
mvrhel_laptop | oh | 16:51.07 |
| I see | 16:51.53 |
| ok whew | 16:52.52 |
| Robin_Watts: git history is now rewritten | 16:53.10 |
Robin_Watts | excellent. | 16:53.14 |
mvrhel_laptop | now I need to get this up to my repos on casper | 16:53.26 |
| as well as the stuff from golden that I pulled | 16:53.35 |
Robin_Watts | One of your commit messages mentions "enable alide selector" | 16:53.40 |
mvrhel_laptop | I think I fixed that one | 16:53.50 |
Robin_Watts | ah, great. | 16:54.01 |
mvrhel_laptop | oh crap | 16:54.04 |
| no it still shows it | 16:54.09 |
| let me do this again | 16:54.15 |
Robin_Watts | git rebase -i master | 16:54.22 |
| (you can rewrite history as many times as you'd like, obviously) | 16:54.34 |
| Change that commit to be 'r' | 16:54.41 |
mvrhel_laptop | done | 16:54.45 |
| that was not too bad | 16:54.49 |
Robin_Watts | It's very powerful. I use it all the time to reorder commits etc. | 16:55.08 |
| so: git push -f origin winRT | 16:55.24 |
| (That pushes winRT up to origin. The -f is required to 'force' it because it's not a simple fast forward) | 16:56.21 |
| And "git push origin master" will push master up to origin. That shouldn't need the -f as all the new commits are on the end of what it had before. | 16:57.02 |
mvrhel_laptop | weird. I tried to change that alide to slide 3 times and it claims to do it, but then the log still shows alide. anyway let me move on | 16:58.58 |
Robin_Watts | mvrhel_laptop: Where are you changing it? In the rebase list ? | 16:59.30 |
| Changing it in the rebase list won't have an affect (only the first word and the hash matter there). | 16:59.50 |
| You need to mark that line as 'r' to reword it. Then you get to change the entire commit message. | 17:00.10 |
mvrhel_laptop | oh | 17:00.24 |
| ok let me try that | 17:00.29 |
| so replace pick with r | 17:00.37 |
| oh I see there are instructions in the file :) | 17:01.09 |
| ok that worked | 17:02.09 |
Robin_Watts | mvrhel_laptop: Yes, otherwise how would I ever remember it? :) | 17:02.15 |
| soo: ping? | 17:03.06 |
soo | Hi everybody, I need a small help with mupdf integration with android devices. I was wondering if I can use MuPDFReaderView inside a layout xml and specify dimensions, background etc so as to customize? | 17:03.11 |
Robin_Watts | The guy you really need to speak to is paulgardiner, but he's away for the night now. but I'll try to help if I can. | 17:03.50 |
soo | Oh, okay. So can you guide me what I can possibly do to achieve this | 17:04.21 |
mvrhel_laptop | Robin_Watts: ok thanks for you help. looks like all is well. need to jot down some notes for the next time. | 17:04.54 |
Robin_Watts | Give me a mo to refresh my memory on the structure here. | 17:04.57 |
| mvrhel_laptop: No worries. | 17:05.02 |
| soo: OK, so our current app has MuPDFActivity as the top level activity. This creates MuPDFReaderView to do the displaying of pages. | 17:09.18 |
| This in turn uses either a MuPDFPageAdapter or a MuPDFReflowAdapter to handle the pages themselves | 17:09.42 |
soo | ok | 17:09.50 |
Robin_Watts | So presumably you are writing your own activity, and would just like to reuse our MuPDFReaderView to display the pages. | 17:10.48 |
soo | exactly, I am using a custom activity | 17:11.07 |
Robin_Watts | MuPDFReaderView is currently not configurable from XML. | 17:11.34 |
soo | I wanted was an activity, and like in normal apps, call the view | 17:11.48 |
| okay, what I really intended was to adjust view height and width | 17:12.09 |
| and mayb change just the change the background of view to a color | 17:12.48 |
| *different color | 17:12.55 |
Robin_Watts | I can't see any code in MuPDFReaderView that explicitly sizes itself to the screen - I am guessing it inherits all that from ReaderView. | 17:13.18 |
soo | as of now, the background applies to whole of layout (Relative) | 17:13.25 |
Robin_Watts | so whatever you would do with a normal ReaderView should probably work with a MuPDFReaderView. | 17:13.55 |
soo | so, can I modify ReaderView for changnng width height | 17:14.05 |
Robin_Watts | I am not sure you need to. | 17:14.26 |
| bear with me, as I'm not that experienced with android. | 17:14.47 |
| Oh, hold on, ReaderView is one of ours too... | 17:15.41 |
soo | yea | 17:15.49 |
Robin_Watts | ok, so a ReaderView extends an AdapterView. | 17:17.16 |
| and it gets it's idea of it's width/height from calling getWidth/getHeight, which are implemented by AdapterView (or probably View). | 17:18.29 |
| so, again, I'm thinking that if you can set the width/height of a View, then all our stuff should obey the same rules. | 17:19.09 |
mvrhel_laptop | Robin_Watts: sorry to bug you one more time. so where can I look for the html output stuff that you have | 17:19.56 |
Robin_Watts | mvrhel_laptop: no worries. | 17:20.21 |
| mvrhel_laptop: If you look in apps/mudraw.c line 380 | 17:21.01 |
| around about there, you'll see us make a text page, and a text device, and run the page through it, and then do fz_text_analysis and then fz_print_text_page_html | 17:21.38 |
mvrhel_laptop | yes | 17:22.10 |
Robin_Watts | fz_print_text_page_html is the bit that actually generates the html. You can also see that called in the android code if you want to look at that... | 17:22.49 |
| android/jni/mupdf.c line 1288 onwards. | 17:23.34 |
mvrhel_laptop | Robin_Watts: ok great. thanks. this will get me on my way | 17:23.53 |
Robin_Watts | That's got the setup for the styles we use. | 17:23.59 |
| Then there is some javascript magic that sets the 'zoom' value to actually make the reflow happen. | 17:24.27 |
| but paulgardiner is better placed to talk about that than I am. | 17:24.41 |
mvrhel_laptop | Robin_Watts: once I have html I should be able to get things displaying readily in the windows app ( I would think) | 17:25.25 |
Robin_Watts | soo: So, have you tried making some layout xml that has a MuPDFReaderView as only part of it ? | 17:25.52 |
| mvrhel_laptop: We can hope :) | 17:25.59 |
mvrhel_laptop | famous last words | 17:26.07 |
Robin_Watts | soo: The colors of various elements are set in the xml already I believe. | 17:30.38 |
| And the background is set to a bitmap (see tiled_background.xml) | 17:31.04 |
mvrhel_laptop | uhoh unresolved stuff. unresolved external symbol _fopen_utf8 referenced in function _fz_write_pam... | 17:48.38 |
| likely missing a file in the winRT solution.... | 17:49.21 |
Robin_Watts | are you calling fz_write_pam? | 17:49.24 |
mvrhel_laptop | no | 17:50.22 |
Robin_Watts | fitz/base_time.c has fopen_utf8 in. | 17:50.56 |
mvrhel_laptop | oh I see | 17:52.11 |
| I did have an issue with windows app and the stuff in base_time | 17:52.27 |
| and had to wrap up some ifdef stuff in there | 17:52.47 |
| apparently fopen_utf8 is ifdefed out for me | 17:53.01 |
Robin_Watts | ah, right. | 17:53.11 |
| essentially fopen_utf8 is fopen, but the filename is utf8 encoded. | 17:53.30 |
| so the windows implementation of fopen_utf8 converts to wchar_t's and calls wfopen. | 17:53.49 |
soo | Robin_Watts: Mate, about the mupdf integration with android once again. About the color, and background (tiledbackground.xml) | 17:53.59 |
Robin_Watts | You may need to implement the same for Win 8. | 17:54.00 |
| OR... you can just call fopen and avoid top bit set chars for now :) | 17:54.19 |
| soo: Go for it. | 17:54.29 |
soo | but the thing is it applies to whole of the current view, and not just | 17:54.32 |
| reader view | 17:54.51 |
mvrhel_laptop | Robin_Watts: I see. You did the change here. ok I will fool with this in a bit. heading home from the coffee shop | 17:56.42 |
Robin_Watts | so the stuff in res/values/colors.xml is affecting stuff outside of MuPDFReaderView ? | 17:56.44 |
soo | yes | 17:56.51 |
Robin_Watts | soo: (For when you read logs) I'm grepping through the source for where the values in colors.xml are used. | 18:01.41 |
| as far as I can tell canvas is never used any more. | 18:02.01 |
| and the others are only used within the .xml files themselves. | 18:03.13 |
| soo: see the logs | 18:05.30 |
soo | yes, checking | 18:05.39 |
| styles are set for wholeActivity | 18:06.18 |
| it seems so | 18:06.21 |
Robin_Watts | 'styles' ? | 18:06.40 |
| The values are set for the whole activity. | 18:06.51 |
| but unless the rest of your activities views are looking for the same named colors, they shouldn't be affecting anything outside the readerview. | 18:07.28 |
soo | Oh I was not talkin about this style Robin | 18:07.33 |
| I was talkin about that tiledbackground | 18:07.43 |
| where image is set | 18:07.51 |
| its working for the whole activity | 18:08.02 |
| so, what you are saying is I can edit this colors.xml and get my required bg color for just the reader view? | 18:08.49 |
Robin_Watts | It is quite probable that the tiled_background.xml sets the background for the whole of the layout, yes. | 18:09.18 |
soo | yes | 18:09.23 |
| so, I shall try this way | 18:09.38 |
Robin_Watts | You could probably change the overall background to be a flat color, and then add just a tiled background to the ReaderView part of the layout. | 18:10.25 |
| But this sounds like a general Android layout coding problem rather than a mupdf specific one. | 18:10.40 |
| Hence I'm probably at the limits of the help I can give you. | 18:10.56 |
| You can try to ask paulgardiner tomorrow, but I suspect he's in more or less the same position that I am - namely that we understood just enough to get our code working ;) | 18:11.43 |
soo | yes. maybe. I'll look into it and will let you know mate. About the scaling, I can customize onScale in readerview right | 18:11.45 |
Robin_Watts | What scaling? | 18:12.03 |
soo | I told you before, I wanted to completely change the width height of readeview | 18:12.49 |
| so, I could see a MIN_SCALE and MAX_SCALE | 18:12.57 |
Robin_Watts | onScale is the logic that scales the 'sub views' of the readerview. | 18:13.07 |
| i.e. the scales that are applied to each page. | 18:13.13 |
| It has nothing to do with the overall size of the ReaderView. | 18:13.28 |
soo | oh, u meant pdf pages? | 18:13.29 |
Robin_Watts | yes. | 18:13.32 |
soo | okay, so can you tell me how can I achieve this | 18:13.43 |
Robin_Watts | I can guess, but it's only a guess. | 18:13.59 |
soo | please | 18:14.08 |
| :) | 18:14.10 |
Robin_Watts | The overall size of the ReaderView is set by the layout. | 18:14.17 |
| And this is somehow communicated to the 'View' level. | 18:14.30 |
| all the ReaderView code just works to whatever size the underlying View has been set to. | 18:14.49 |
| I believe that if you can set the layout up correctly, the ReaderView will just do what you want. | 18:15.26 |
soo | there is a buttons.xml which is inflated into | 18:15.34 |
Robin_Watts | Right. buttons.xml is used for the menu bars etc. | 18:15.56 |
soo | so, it has something to do with readerview size? | 18:16.19 |
Robin_Watts | No. | 18:17.36 |
| buttons.xml is set to "match parent" | 18:17.44 |
soo | My menu is similar to the menu bars in sample app. Suppose I used the same, and I need the readerview to be a bit more taller | 18:18.06 |
Robin_Watts | In our app the ReaderView is full screen. How can you have it taller ? | 18:18.29 |
soo | I meant, the pdf page | 18:18.53 |
| for a normal user,it seems like, pdf pages resides beneath menu from buttons.xml | 18:19.22 |
Robin_Watts | The initial PDF page scaling is setup so that it fills as much of the view as possible, without any of it going offscreen. | 18:19.53 |
soo | so, can I increase its height, so that the pdf seems to utilize more screen size, and top of pdf be closer to buttons | 18:20.10 |
Robin_Watts | hence exactly how tall it will be on the screen will depend on the aspect ratio of the pdf pages. | 18:20.20 |
| soo: not without redoing the page scaling logic. This is NOT anything to do with android layout. | 18:20.37 |
soo | oh, so the issue must be with my pdfs and not me or mupdf ;) | 18:21.09 |
Robin_Watts | PDFs can have pages of all different shapes/sizes, yes. | 18:21.33 |
soo | seems like my pdf is kind of square looking | 18:22.04 |
| so, can v rescale the page height to a much increased value | 18:22.18 |
Robin_Watts | Can you reauthor the PDF ? | 18:22.36 |
soo | from ReaderView, jusing MIN_SCALE MAX_SCALE | 18:22.45 |
| oh, am afraid that's not an easy task mate :( | 18:23.04 |
Robin_Watts | MIN_SCALE and MAX_SCALE are hard limits - they will not affect the initial size. | 18:23.10 |
| If you increase the height of the PDF you'll lose bits of it off the edge of the screen, right? | 18:23.38 |
soo | hard lmits in the sense? | 18:23.39 |
| yes, exactly | 18:23.46 |
Robin_Watts | soo: If you want that, then you can do it, yes. | 18:23.59 |
soo | this is way complicated than I imagined | 18:24.32 |
| atleast if we had the option to center/top align/bottom align readerview | 18:25.12 |
| then it would have been easier | 18:25.23 |
Robin_Watts | ReaderView is not a public AI of mupdf. | 18:26.13 |
| We document/support the mupdf C library interfaces. | 18:26.40 |
| The android app is just an example of what you can build with it. | 18:26.52 |
soo | ok, I see | 18:27.10 |
| any recent updates are coming like, load pdf inside an activity fragment mate? | 18:27.42 |
Robin_Watts | that's not something we are working on. | 18:28.30 |
soo | oh, ok. One more question mate. Right now, pdfs are read from an sdcard | 18:29.12 |
| can I read pdf inside a folder say assets folder inside app itself | 18:29.39 |
Robin_Watts | soo: probably. let's come back to that. | 18:30.41 |
soo | now, how I am doing is, I am copying the file to sdcard first, and then get the url from sd card, to input as file url. Any work around for not makin sd card come to play? | 18:30.42 |
Robin_Watts | In PageView.java at line 245ish | 18:30.52 |
| That's where we calculate the initial scale, I think. | 18:31.17 |
soo | ok | 18:31.20 |
Robin_Watts | Or at least, that's the minimum scale I think. | 18:32.12 |
soo | ok | 18:32.44 |
Robin_Watts | MuPDF is at heart a set of C libraries for handling/rendering/interacting with PDF files. | 18:32.47 |
| and we have a defined API at the C level. | 18:32.57 |
soo | ok | 18:33.26 |
Robin_Watts | In order to work on android, we have those libraries as a native .so with a jni wrapper to expose just enough functionality for our demo app. | 18:33.40 |
soo | yes, right | 18:34.03 |
Robin_Watts | Our interface to the native lib is MuPDFCore.java | 18:34.22 |
mvrhel_laptop | Robin_Watts: where is fz_eval_function defined? | 18:34.45 |
Robin_Watts | Currently, that has openFile and openBuffer methods. | 18:34.50 |
mvrhel_laptop | oh res_func.c | 18:35.14 |
Robin_Watts | sorry. The *native* portion has openFile and openBuffer methods. | 18:35.25 |
soo | yes, I have seen that in activity I guess | 18:36.03 |
Robin_Watts | these are used by the 2 possible MuPDFCore constructors that take either a filename, or a byte buffer. | 18:36.11 |
mvrhel_laptop | is that even in the win32 solution? | 18:36.29 |
Robin_Watts | mvrhel_laptop: yes. | 18:36.40 |
| I'm guessing you can't get a filename for the PDF in your apk? | 18:37.28 |
| so what you can do is to load it into memory into a byte buffer and pass that it. | 18:37.42 |
soo | oh yes, cool | 18:37.55 |
mvrhel_laptop | strange that it does not come up in the win32 solution | 18:38.08 |
Robin_Watts | If you can't do that, then you're going to need to extend the MuPDFCore interface to pass another type. | 18:38.11 |
mvrhel_laptop | and the build fails | 18:38.14 |
Robin_Watts | mvrhel_laptop: The win32 build fails? | 18:38.29 |
mvrhel_laptop | yes | 18:38.34 |
| there seem to be missing files | 18:38.47 |
Robin_Watts | rebuilding now. | 18:38.58 |
mvrhel_laptop | I was going to add the ones that were new to the win32 to the winRT | 18:39.05 |
Robin_Watts | rebuilds fine to me. | 18:39.42 |
mvrhel_laptop | weird | 18:39.48 |
Robin_Watts | Let me try changing onto your branch. | 18:39.48 |
mvrhel_laptop | i have to head out now | 18:40.16 |
| to pick up my son at school | 18:40.23 |
soo | Robin: can you tell me where that openbuffer method is. Thought I saw it somewhere, cant find it now | 18:40.24 |
mvrhel_laptop | bbiab | 18:40.25 |
Robin_Watts | soo: MuPDFCore(context, buffer) | 18:40.48 |
| It's called from within MuPDFActivity | 18:41.02 |
| mvrhel_laptop: winRT branch builds fine for me under win32. | 18:41.24 |
soo | can u tell me in which class? | 18:43.20 |
Robin_Watts | in which class, what? | 18:43.36 |
| The constructor "MuPDFCore(context, buffer)" is defined in MuPDFCore.java | 18:44.04 |
| It is called from MuPDFActivity.java | 18:44.17 |
| line 226 to be exact. | 18:44.43 |
soo | Robin, am not in my development machine right now. Maybe am using a wrong url for reference, I cant find it in here. But I can remember such a thing. Please check this, | 18:49.41 |
| http://code.google.com/p/sumatrapdf/source/browse/trunk/mupdf/android/src/com/artifex/mupdf/MuPDFActivity.java?r=6872 | 18:49.43 |
Robin_Watts | Why are you using sumatras version? | 18:50.49 |
| Sumatras version is old. | 18:51.17 |
| http://git.ghostscript.com/?p=mupdf.git;a=blob;f=android/src/com/artifex/mupdfdemo/MuPDFActivity.java;h=63f5b96326ff954758e334bb997888f0eb14f022;hb=2d5d9b8540a87a16f2cdf98827bc37682cabe4c9 | 18:52.33 |
soo | am using a different version for development. Just couldnt get hold of that now :-) | 18:52.59 |
Robin_Watts | soo: So you're wanting to use mupdf in an android app? | 18:53.07 |
| Is this app going to be distributed to anyone other than yourself ? | 18:53.18 |
soo | I have used it infact. Everything working fine, except for those scaling issues | 18:53.59 |
Robin_Watts | Is it available anywhere? | 18:54.39 |
soo | I was hoping to release a version in playstore soon | 18:54.45 |
Robin_Watts | So your app is GNU GPL licensed? | 18:55.03 |
soo | sorry, I didnt get that. What does that really mean. I thought this was open source, so we could use this right | 18:56.15 |
Robin_Watts | soo: Open Source doesn't mean "you can use this however you want" | 18:56.54 |
| MuPDF is released under 2 licenses - in order to use it you legally have to abide by the terms of one or other of the licenses. | 18:57.29 |
soo | Okay, my aim is to release a free app in google play store. So what shall I do for it. Can you please tell me | 18:57.53 |
Robin_Watts | The first license is the GNU GPL. This states (among other things) that any code linked with it, must also be GNU GPL licensed. | 18:58.26 |
| It also states that anyone who gets a GNU GPL licensed piece of software is entitled to get the source code for that software too. | 18:59.16 |
| hence if you use mupdf under the GNU GPL license, your app must be GNU GPL licensed too. | 19:00.00 |
soo | ok, so all I have to do is release the source code as open | 19:00.12 |
Robin_Watts | The second license is the Artifex commercial license. That says that you'll pay us money, and you can then work without having to release your source. | 19:00.34 |
| That's not quite all, but thats most of it, yes. | 19:00.43 |
soo | ok | 19:02.28 |
Robin_Watts | For more information on the GNU GPL you should read it. And that will confuse you. So you should then google a bit :) | 19:03.25 |
soo | thanks mate for this useful info :-) | 19:03.57 |
Robin_Watts | http://www.gnu.org/licenses/gpl-howto.html | 19:04.33 |
| actually, technically we are Affero GPL these days, but that makes no difference to you, I think. | 19:05.14 |
soo | ok | 19:07.18 |
Robin_Watts | hi mvrhel_laptop. I pulled your winRT branch, and it rebuilds on win32 just fine for me :( | 19:42.38 |
ray_laptop | I'm seeing "object not in any chunk" messages, and I want to chat with someone about the code in "chunk_locate_ptr". I don't see how this code can work. | 20:21.09 |
| mvrhel_laptop: are you available ? or henrys ? or Robin_Watts ? | 20:22.38 |
| oh, nm. I see how this code is supposed to be working. The problem is that somehow I have a chunk that has cend < cbase | 20:26.02 |
| Not good! | 20:26.21 |
henrys | ray_laptop:which bug are you working on? | 20:41.00 |
| ray_laptop:I guess you are looking at it with -ZA? | 20:43.50 |
ray_laptop | henrys: yes, looking for the culprit that is scribbling in the cend pointer of a chunk | 20:45.08 |
mvrhel_laptop | Robin_Watts: when you return, I have a git issue that I need some help with. Found out that I corrupted the win32 solution file | 20:49.27 |
| oh no I f***ed something up good in git | 20:57.03 |
| doing the Robin_Watts summoning chant | 21:06.42 |
| ok I think I have this figure out | 21:16.54 |
| need to reboot bbiab | 21:18.50 |
| ok. I appear to be recovered from what I thought was a goof up by me with git | 21:32.34 |
tor8 | Robin_Watts: mvrhel_laptop: in git rebase -i, you can use 'f' for fixup instead of 's' for squash if you just want to squash and discard the commit message. | 21:36.05 |
mvrhel_laptop | tor8: ok thanks | 21:36.21 |
| ok HTML content is now displaying. need to do some funny stuff with the xaml object size to make the reflow work as you zoom | 22:47.15 |
Robin_Watts | tor8: Yeah, I use 'f' all the time, but thought it was worth showing 's' as it's more general. | 23:08.44 |
| mvrhel_laptop: Nice. | 23:08.56 |
| mvrhel_laptop: I only just got your text messages. Glad to hear it's sorted! | 23:12.07 |
| Git is pretty good about getting stuff back. git ref-log will show you all the recent changes to the states. | 23:12.36 |
| so you can git reset back to an old state - and it keeps old states around for 30 days before culling them typically. | 23:13.14 |
mvrhel_laptop | Robin_Watts: yes get ref-log helped me | 23:18.08 |
| off to a softball game now. | 23:18.15 |
| bbiaw | 23:18.17 |
Robin_Watts | have fun. | 23:18.33 |
| marcosw, anyone: ping? | 23:39.40 |
| Forward 1 day (to 2013/04/04)>>> | |