#gemrb@irc.freenode.net logs for 17 Jan 2012 (GMT)

Archive Today Yesterday Tomorrow
GemRB homepage

[00:04:04] <-- Gekz has left IRC (Ping timeout: 240 seconds)
[00:06:22] --> Gekz has joined #gemrb
[00:06:22] <-- Gekz has left IRC (Changing host)
[00:06:23] --> Gekz has joined #gemrb
[00:08:03] <-- kettuz has left IRC (Quit: Leaving)
[00:14:14] --> brad_a has joined #gemrb
[00:15:04] <-- brad_a has left IRC (Client Quit)
[00:22:31] --> demitar has joined #gemrb
[00:28:09] <-- Maighstir has left IRC (Quit: .)
[02:07:10] <-- |Cable| has left IRC (Remote host closed the connection)
[02:07:10] <-- Cable_ has left IRC (Remote host closed the connection)
[02:08:37] --> |Cable| has joined #gemrb
[03:02:53] <-- |Cable| has left IRC (Remote host closed the connection)
[04:09:05] --> |Cable| has joined #gemrb
[04:15:08] --> brad_a has joined #gemrb
[04:15:29] <brad_a> tomprince,fuzzie,lynx: see if this looks sensible: http://dl.dropbox.com/u/13866402/touchscreen.patch
[04:15:38] <-- |Cable| has left IRC (Remote host closed the connection)
[04:16:15] <brad_a> i still need to test it but its late.
[04:16:27] <brad_a> so i will do so in the morning.
[04:16:34] <-- brad_a has left IRC (Client Quit)
[04:17:04] --> |Cable| has joined #gemrb
[05:29:59] <-- joneirik has left IRC (Remote host closed the connection)
[06:04:56] <-- demitar has left IRC (Ping timeout: 240 seconds)
[06:50:17] --> demitar has joined #gemrb
[07:19:38] --> lynxlynxlynx has joined #gemrb
[07:19:39] <-- lynxlynxlynx has left IRC (Changing host)
[07:19:39] --> lynxlynxlynx has joined #gemrb
[07:19:39] --- ChanServ gives channel operator status to lynxlynxlynx
[07:35:27] <lynxlynxlynx> brad: i wouldn't remove the old vars yet, it would just needlessly break existing users
[07:35:57] <lynxlynxlynx> i'd do it after, let's say, a year
[08:40:01] <edheldil> the vars are cumbersome due to their static typing
[08:47:37] --> Baldurer has joined #gemrb
[09:27:16] <-- harijan has left IRC (Ping timeout: 272 seconds)
[09:34:23] <-- Baldurer has left IRC (Ping timeout: 252 seconds)
[10:21:05] --> kettuz has joined #gemrb
[10:52:48] --> Baldurer has joined #gemrb
[11:21:27] <-- Baldurer has left IRC (Ping timeout: 255 seconds)
[11:50:43] <tomprince> I wonder if having a bunch of bit-fields in the configuration is sensible?
[11:52:10] <tomprince> And can the multitouchness not be checked?
[11:53:15] <fuzzie> yes, I am not sure exposing any bitfields to users is nice, never mind a lot
[11:54:26] <fuzzie> but in any case it doesn't seem that the GameControl should be aware of this - shouldn't the backend just force a mouse up event if it's going to suddenly switch to scrolling?
[11:56:52] <fuzzie> and why is it keeping multiple copies of TouchScreenFlags around anyway?
[12:02:35] --> Baldurer has joined #gemrb
[12:23:03] <-- Baldurer has left IRC (Ping timeout: 252 seconds)
[13:04:28] --> Baldurer has joined #gemrb
[13:04:50] <-- Baldurer has left IRC (Remote host closed the connection)
[13:09:49] --> Baldurer has joined #gemrb
[14:10:13] <edheldil> bitfields should be probably presented either as list or as separate features
[14:37:28] --> SiENcE has joined #gemrb
[15:17:44] --> brad_a has joined #gemrb
[15:19:02] <brad_a> yes i actually came to the conclusion after goinng to bed that the config should keep the individual bits and then we aggregate them into a field
[15:24:56] <-- brad_a has left IRC (Quit: brad_a)
[17:20:39] <-- SiENcE has left IRC (Quit: @all: cya)
[17:59:53] <-- Baldurer has left IRC (Ping timeout: 276 seconds)
[18:45:31] --> Yoshimo has joined #gemrb
[18:51:28] --> Baldurer has joined #gemrb
[19:21:36] <-- gembot has left IRC (Ping timeout: 240 seconds)
[20:18:17] --> brad_a has joined #gemrb
[20:24:58] <brad_a> anyway. i dont care about how the variables are implemented again that was a patch from forever ago im just ow trying to merge. the important thing i need to accomplish is bypassing the side effects stemming from a touch screen being both a mouse pointer and scroll wheel at once
[20:25:42] <brad_a> i dont know how else i can do that other than to set something in the config letting us know they are using a touchscreen (specifically one capable of multitouch)
[20:26:13] <brad_a> tomprince mentioned perhapps detecting this but i am unsure how this is possible
[20:27:13] <brad_a> i also still need to know how I should properly add support for autopausing when minimizing gemrb
[21:34:05] <-- Yoshimo has left IRC (Read error: Connection reset by peer)
[21:36:38] <fuzzie> you should just stop running gemrb when it is minimised
[21:37:17] <fuzzie> and i don't understand how your touchscreen can be a mouse pointer and a scroll wheel and yet you can't tell, honestly
[21:38:08] <fuzzie> if SDL is internally generating fake scroll wheel events then someone should file a bug against SDL
[21:38:27] <fuzzie> but it looks like you're generating the events, in which case it's not the
[21:38:51] <fuzzie> job of the GameControl to deal with code providing broken input, track the state in SDLVideo instead.
[21:39:01] --> Yoshimo has joined #gemrb
[21:39:49] <brad_a> fuzzie: yes gemrb does stop when minimized but it is annoying when you maximize it that it is not paused
[21:40:29] <fuzzie> why not just pause it?
[21:41:04] <brad_a> on things like ios you dont necessarily get the option to pause first. ie a phone call
[21:41:15] <fuzzie> i mean, why not just pause it on the gemrb side?
[21:41:54] <brad_a> im trying to :-P
[21:42:09] <fuzzie> last time I had this discussion you were trying to do all kinds of complicated stuff, I thought
[21:42:13] <brad_a> no
[21:42:25] <brad_a> i just want an sdl_win_minimized event to pause gem rb
[21:42:30] <brad_a> that is all
[21:42:45] <brad_a> i have it working but i dont know if it is the right way etc
[21:42:48] <fuzzie> while you just want to set DF_FREEZE_SCRIPTS in DialogueFlags and display STR_PAUSED if it wasn't already set?
[21:43:19] <brad_a> well the way im currently doing it is calling core->autopause
[21:43:27] <brad_a> which does all that
[21:43:50] <fuzzie> yes, that is *not* the right way to do it
[21:43:55] <brad_a> ok then
[21:44:04] <fuzzie> i mean, it's jsut an opinion
[21:44:16] <fuzzie> but that way you end up with all the autopause stuff on top, right?
[21:44:21] <brad_a> well im clearly interested in your opinion :)
[21:44:31] <brad_a> im not sure what you mean
[21:44:36] <fuzzie> well, autopause expects a reason
[21:44:45] <fuzzie> which it checks against the bits, and then it does centering if that's set in the options, etc
[21:44:58] <fuzzie> and it displays an autopause message rather than STR_PAUSED
[21:45:08] <fuzzie> and you don't want *any* of that, you just want to pause?
[21:45:11] <brad_a> yes it does and im using ap_generic which displayes just a paused string i believe
[21:45:29] <brad_a> no im fine with the way I have it working
[21:45:30] <fuzzie> but what if I don't have autopause set?
[21:45:42] --> harijan has joined #gemrb
[21:45:47] <fuzzie> i mean, if you want to show a patch, i'd be glad to look
[21:46:10] <brad_a> well that was my question yesterday. i am jsut reading autopause from the settings then | the AP_GENERIC bit
[21:46:12] <fuzzie> but i would disagree with any patch which does anything except plain pausing in that situation, and it seems like it would be more mess to patch Autopause to do that.
[21:47:01] <fuzzie> because hacking the var isn't the old hack you'd have to do there, you'd also have hack it to not mess with the centering
[21:47:48] <brad_a> i dont recall centering being an issue. i am not in a position i can test atm
[21:49:21] <fuzzie> it just seems a really overcomplicated way to do a pause :-p
[21:49:53] <brad_a> well i dont recall seeing jsut a pause function
[21:50:21] <brad_a> I guess i should make one?
[21:50:23] <fuzzie> there isn't one, but just doing a pause manually is a few lines of code
[21:50:38] <brad_a> well yes but those lines arent available to sdlvideo iirc
[21:50:41] <fuzzie> and yes, you can always refactor the code out of GemRB_GamePause or similar
[21:50:58] <brad_a> ok i dont have a problem doing that if that is the right thing to do
[21:51:07] <fuzzie> well, like I said, I haven't seen the patch :p
[21:51:23] <brad_a> well yes the patch seriously was one line
[21:51:43] <brad_a> jsut read the apflags from the settings then | those with ap_generic
[21:52:17] <brad_a> sdl_video is already calling autopause. i think it snuck in there from the multitiouch patch or something. wed have to look at git history
[21:52:22] <brad_a> point is it is there
[21:52:24] <brad_a> :-P
[21:52:42] <brad_a> i would be happy to change that to core->pause and of course write that method
[21:53:09] <fuzzie> well you can literally just cut the code out of GemRB_GamePause
[21:53:32] <brad_a> ok then on to problem 2 with the touchscreen stuff
[21:54:26] <brad_a> its not sdl genereating the events it is the touch code in sdlvideo
[21:54:31] <fuzzie> right
[21:54:58] <fuzzie> so the touch code in sdlvideo knows very well whether it faked scroll events or not
[21:55:28] <brad_a> yes but then it doesnt have the ability to clear those bits in game control
[21:55:51] <fuzzie> right, but fixing that by adding a *config option* is, frankly, insane :)
[21:56:18] <brad_a> because you touch te screen so that sets game control mouse down but then you drag on say a text area so that generates a scrollwhell event mut the mouse is still down so that messes things up a bit
[21:56:24] <fuzzie> my preferred fix would be for sdlvideo to generate a mouseup event if it generated a mousedown event already
[21:56:44] <fuzzie> but you could also add a new 'cancel mousedown' event, for example
[21:56:45] <brad_a> i want to say i tried that and had other negative side effects
[21:56:58] <brad_a> quite a shame im trying to remember things i did 6 months ago
[21:57:08] <fuzzie> yeah, as tomprince says, it all gets 'swapped out' :-/
[21:57:08] <brad_a> ok that might make more sense
[21:57:17] <brad_a> swapped out?
[21:58:22] <fuzzie> the memories/knowledge of gemrb work - after a while it gets 'swapped out' and then you have to spend some time staring at it and getting it all back in your head :)
[21:58:41] <brad_a> oh lol yes that is an excellent analogy!
[21:59:42] <brad_a> so i know you are right about the config stuff. it seems like a cancel event may be sensible
[22:01:46] <brad_a> im quite positive doing a mouse up event is a bad thing
[22:01:54] <fuzzie> well, I can imagine that
[22:02:19] <fuzzie> often games just do a delay on sending a mouse down event until they know what the event is likely to be
[22:02:39] <brad_a> yes i suppose i could make that work
[22:03:09] <brad_a> i need to rewrite the touch code anyway for android compatibility
[22:03:29] <brad_a> so perhapps it is best i just nuke what i have done mostly and start from scratch...
[22:04:16] <-- demitar has left IRC (Ping timeout: 240 seconds)
[22:05:09] <fuzzie> well, I don't know if that is good at all
[22:05:36] <fuzzie> so I don't mean it as a suggestion, it's just a comment which might or might not be helpful
[22:07:44] <-- Yoshimo has left IRC (Quit: Yoshimo)
[22:11:23] --> gembot has joined #gemrb
[22:18:55] --> Drakkar has joined #gemrb
[22:20:42] <brad_a> well git makes it easy to go back an reference things if i need to :)
[22:21:16] <-- PixelScum has left IRC (Ping timeout: 244 seconds)
[22:22:02] <brad_a> but it sounds like the right and best thing to do is to delay mouse down until either the point ehre it becomes a right click or until some other event such as a swipe
[22:22:34] <brad_a> as far as my mind can tell that should solve the problem of the dual input
[22:23:58] <brad_a> fuzzie: GemRB_GamePause seems to be python. im not entirely sure how to execute that from sdlvideo
[22:24:24] <brad_a> by python i mean its in guiscript.cpp
[22:25:33] <fuzzie> yes, I mean, you can jsut move all of that code into a Pause() function if you wish
[22:25:44] <fuzzie> unless I miss something obvious
[22:26:07] <brad_a> oh i see. yes sounds swell
[22:26:20] <fuzzie> i am a bit tired and grumpy and etc but it seems sensible
[22:26:46] <brad_a> yes it is i believe 23:00 where you are?
[22:26:58] <brad_a> 23:30 i mean
[22:27:02] <fuzzie> mmhm
[22:27:07] <fuzzie> about bedtime
[22:27:28] <brad_a> yeah i would be grumpy if i were still awake at 11 answering my questions ;-)
[22:27:55] <fuzzie> your questions are fine
[22:28:25] <fuzzie> am grumpy about *other* questions from people who don't comprehend my confused mumbling so well :-)
[22:28:27] <tomprince> brad_a: There is way too much logic in GUIScript.cpp, so factoring out is an excellent thing.
[22:28:37] <fuzzie> yes, that is another positive point, of course
[22:29:29] <brad_a> well then consider it done :)
[22:30:38] <fuzzie> lynx moved the spell bar setup to python, I saw, which is also nice
[22:53:08] <lynxlynxlynx> the python side is pretty nice, but the internal spellbook felt pretty awkward to work with
[22:54:14] <lynxlynxlynx> the important thing will be to do the same with the other bars and then it should also be a bit easier to do the iwd2 customisation stuff
[22:54:41] <brad_a> i like the sound of iwd2 work
[22:55:48] <lynxlynxlynx> oh and we don't support iwd2 spell books enough yet either
[22:56:05] <lynxlynxlynx> so it could be a nice time to clean stuff up
[22:56:34] <-- Gekz has left IRC (Remote host closed the connection)
[23:04:12] <-- lynxlynxlynx has left IRC (Remote host closed the connection)
[23:29:16] <-- Drakkar has left IRC (Ping timeout: 240 seconds)
[23:34:55] --> Gekz has joined #gemrb
[23:34:55] <-- Gekz has left IRC (Changing host)
[23:34:55] --> Gekz has joined #gemrb
[23:45:02] <-- Baldurer has left IRC (Ping timeout: 276 seconds)
[23:58:10] <-- kettuz has left IRC (Quit: Leaving)