/srv/irclogs.ubuntu.com/2018/08/05/#ubuntustudio-devel.txt

OvenWerkseylul: It seems to me you said you had a script for setting up your drawing pad. Is this true or do I remember wrong? If so is a copy available?21:09
eylulI do, I have a copy of it available in wiki21:09
eylulone sec21:09
eylulhttps://wiki.ubuntu.com/UbuntuStudio/FeatureDefinitions/WacomScripts21:10
eylulthis is quite an old copy of it.. but has all the building parts21:10
eylulwas there a question in particular you had?21:10
eylulbasically the 2 things this thing does is a) it maps the tablet to first second or all screen21:11
eylulsecond part is just mapping the keys to whatever keys you want. what key goes where unfortunately is a very tablet specific thing21:11
eylulso I started by mapping all buttons xsetwacom sees to letters a onward, and pressing buttons one at a time, to figure out what goes where21:12
eylulthen filling in what the setup should be. I can try to code something a bit more elaborate if needed. ;)21:12
OvenWerksSo asign pad to a screen, asign buttons. Is there any configure pen to point on pad vs. point on screen?21:17
eylulthe screen stuff is that21:20
OvenWerksA GUI should list screens and allow choosing a screen or mix there of. A GUI should list available pad buttons and allow for them to be asigned... asigned to what? Is there a standard set of charactors they are asigned to? would it be possible to show what a button can be asigned to and have the user "press/select" that button and set it from there?21:20
eylulAn ideal GUI would have the following21:21
eylul1) a quick way to swap mapping between each screen available, and stretching across whole screens. (optionally an advanced mode to organize/stretch screens between areas)21:22
OvenWerks1) a drop down with a list of possibilities?21:23
eylul2) a way to touch pen to 4 corners to calibrate a screen based tablet (e.g. cintiq) when it is mapped to a single screen21:23
OvenWerksok21:23
eylulor shortcuts. Think of it a bit like ARandR where you can adjust where your screens go21:24
eylulbut also you can quickly select to mirror. like you can select to say: stretch it on all, use screen 1 use screen 221:24
eyluland honestly21:24
eylulhave a keybind to swap between them21:24
eylul(this script basically does that, because you can keybind a script command to swap between between them)21:25
eylul2) you want to be able to calibrate with touching points with pen to adjust parallax etc. This is specifically needed on a 1 screen mode, when say the screen selected is cintiq screen, and cintiq pen area is exactly mapped to that21:26
OvenWerksso a hot key to switch is better than a systray menu.21:26
OvenWerkswould the hot key be part of the pad keys or on the keyboard?21:26
eylul3) you want to be able to create keybind mappings to pen buttons and pad buttons that are generic, presets, and if possible, swapping automatically based on which software is focus. 21:26
eylulits nice to have both21:26
eylulsystray if you are new to using this so that you remember it is there, a person who uses it everyday will use a keybind to swap back and forth21:27
eylule.g. you are drawing on your screen on a cintiq, but need to quickly access something on the secondary setting, e.g. adjust your reference, then back21:27
eylulbtw Ovenwerks if you are asking because you want to code this, a subset of these features even would be useful21:28
eylulwhat I am talking about here is basically replicating what wacom settings do on windows21:28
OvenWerkssystray is not soon :)21:28
eyluland maybe be even better than them in some ways ;)21:28
OvenWerksI am just starting to think about it.21:29
eylul*has still no idea how to solve the: automatically switch presets with active program part of the problem*21:29
OvenWerksyou mean change preset depending on what window is in focus?21:30
eylulchanging preset based on what program is in focus21:30
OvenWerkssame thing really.21:31
eyluloh?21:31
eylulOOOH21:31
eylulsorry I misunderstood what you mean21:31
eylulyeah based on what window is active21:31
eyluland more specifically what software is on the window that is active21:31
OvenWerks X sees any window as separate even if two are owned by one process21:31
eylulbasically this is how it works:21:32
eylulyou have a generic profile that works with everything e.g. your top left button is ctrl-z second one is ctrl-x then you have a shift button on one of your pens. 21:32
OvenWerksin an application like gimp would the user want the tablet to be used in the tool box as well as the drawing window (edit window)21:32
eylulbut e.g. (and this is just an example, I don't remember keybinds) if you are on mypaint. the undo is "z" not "ctrl-z" so when mypaint window is on focus, you want top-left button to map to z. and switch back when that window is not in focus21:33
eylulyou want to be able to have application specific overrides to profiles21:34
eylulwhat I did, was that I had multiple profiles hardcoded into the script that I could swap between by saying customscript --krita for example21:34
eyluland I made a software shortcut group on toolbar to select between them like a pseudo system tray.21:35
eylul;)21:35
OvenWerksSo a default setting that can changed when focused to a specific app.21:35
eylulbut that is not ideal, you ideally want to be able to swap automatically based on which software you have active.21:35
eylulexactly21:35
eylulI mean alright its probably still very useful, if you can select a preset from a system tray too, but automatic swithing would be even better.21:36
OvenWerksOK, I was thinking one per app. but having a default makes more sense.21:36
eylula lot of software does have more or less same shortcuts within same domain (e.g. graphics)21:37
OvenWerksI think switch on focus is possible. It would require an extra daemon I think.21:37
eylulbut then you have one software (I am looking at you blender!) that has everything all over the place for example ;)21:37
eylul;)21:37
eylul*nods*21:37
eylulif we DO this21:37
* OvenWerks is still looking focus follows mind...21:37
eylulI would suggest focusing on having an app that can set up profiles that can be switched manually21:38
eyluland ability to choose between screens21:38
eylulhonestly even that much isn't trivial at all21:38
eylulafter that we can add the additional abilities, but I'd rather make sure, we can reliably do the first part with multiple tablets21:38
eyluland debug that before adding auto-switch and then run into a bug we cannot find ;D21:38
OvenWerksYa, I think being able to set up a default would be good.21:39
OvenWerksas a first step21:39
eylulthe thing about calibration and custom setups, i wouldn't worry about it too much either. stretch across all screens and switch between that and each screen (maybe while respecting ratio of the tablet to get a crop of the screen) is more than enough place to begin and that can be done with a drop down as you suggested21:40
eylul;)21:40
eylulyep21:40
eylulmain issue will be21:40
eylulevery tablet21:40
OvenWerksWhile we would save the config(s) in a file, they would be best all in memory with the way we run things now21:40
eylulhas a key mapping to what xsetwacom sees differently21:40
eylulI have some UI ideas21:40
OvenWerksis it common to use two pads at a time?21:40
eylulhaving 2-3 is not that uncommon21:41
eylule.g. having one with screen and a portable one21:41
OvenWerkslive at the same time?21:41
OvenWerks(both going to the same application at once)21:42
eylulI have like 3 wacoms all of which I use some time or another. (1 is my intuos pro, another is a tiny bamboo I carry around, and I have my cintiq: one with screen) wacoms don't break easily so it is easy to accumulate them over time ;D21:42
eylulerr21:42
eylulI never heard of anyone using multiple ones together21:42
eylulyou select what you want to use21:42
eylulyou plug that in usually21:42
OvenWerksone for blender and the other for gimp for example too.21:42
eylulo.O21:42
OvenWerksok.21:42
OvenWerksthat is not so hard I think.21:43
eylulnah I mean I am trying to think if it would be a useful flow but I doubt it... there is a deskspace issue21:43
eylullike how many tablets can you fit into next to your computer21:43
OvenWerksSo it is reasonable to expect only one device to be plugged in at once then.21:43
eylulpeople either draw with their tablet in front of them, or tablet to right, other hand on keyboard.21:43
eylulfor additional shortcuts21:44
eylulyeah21:44
eylulpeople might have multiple devices they swap in between.21:44
OvenWerksWould most people expect each of their tablets to use the same shortcuts?21:44
eylulso profiles should be device specific21:44
OvenWerks(even if the buttons were in different order)21:44
eylulnot automatically21:45
eylulbut they would expect to be able to have different profiles for a new tablet.21:45
eylule.g. a new default and new overrides21:45
OvenWerksthat would be similar to what I already do with the audio devices.21:45
eylul(so e.g. I have one default and a krita setup for my intuos, another one for the bamboo that has less buttons than my intuos)21:45
eylul*nods*21:46
eylulbut yeah one plugged at a time21:46
eylulreally the fun problem is that there is like many many tablet models, with different button layouts, different button numbers21:46
OvenWerksSo I would import all the profiles and do the setup based on what was plugged in.21:46
eyluland even if they have similar button setups the way they map to xsetwacom button IDs are different.21:46
eylulXD21:47
eylulexactlyt21:47
OvenWerksIn the case of switching between apps, the only thing that would change would be shortcuts?21:47
eylulxsetwacom can tell you what type of device is in I believe21:47
eylulyeah21:47
eylulhmmm here is an idea21:48
eyluland this is brainstorming21:48
OvenWerksAll this is brain storming :)21:48
eylulwhat if the wacom automatically mapped to the screen where the active window is.. but that might turn into a bigger can of worms21:48
eyluland sometimes apps are divided across multiple screens. yeah no21:48
eyluljust keeping screen switching manual seems better idea.21:48
eylulalso I mean it is important for the setting to not be confusing21:49
OvenWerksX may see different screen names depending on what screens are active/turned on/plugged in.21:49
OvenWerks(trying to remember)21:50
eylullike it would be super cool if a systray (if we already had one) had the option of showing which profile is active at all times, so that people can fix their profiles without getting confused21:50
eylulOvenwerks best solution i can think of is to cycle through all of them21:50
eyluland stretch21:50
eylulAND maybe letting people add a preset21:50
OvenWerksI guess don't use 0 1 2 but use vga hdmi* etc.21:50
eylulI think the screen stuff changed based on which driver you used?21:51
eylulbut don't quote me on that21:51
OvenWerksThe main app would only work on the active preset for sure21:51
eylul*nods*21:52
eylulI'd keep screen setups completely separate from keybind profile21:52
* OvenWerks can't see any way something else makes sense21:52
eylulyeah21:52
OvenWerksSo two tabs?21:52
eylulwell that's a separate question21:52
eylulwhat I mean is screen settings shouldn't be application or profile specific I think. 21:53
eylulthey COULD be device specific21:53
OvenWerksYes21:53
eylulI'd think screen setup and profile setup would be on different tabs just because both has a lot of details to sort21:54
eylulthey could be on same tab21:54
eylulif e.g. screen setup was on a pop-up for detailed adjustment21:55
eylulplacement issue is more of a ease of use issue :)21:55
OvenWerksFor each device, we have a setup for each screen. Far each device we have a key mapping. For each application (or only those that are not default) we have an extra key map.21:56
eylulfor each device we have a screen setup, that once initially sorted, cycles through multiple presets via keybind or drop down menu.21:58
OvenWerksSo the tablet keys are mapped to a function name in the tabblet profile. The funtion is mapped to a shortcut in the application profile.21:58
eylulfor each device we have keymapping, and overrides to those keymaps for specific software yes.21:58
eylultablet keys are literally mapped to a keystroke21:58
eylulor combination of keystroke21:59
OvenWerksI am assuming that with more than one tabblet we would still be seeing whatever keys are there used for the same functions.21:59
eylulor mouse clicks21:59
eylulsoftware handles what keybind does what21:59
eylulso. my tablet buttons for example are mapped to "ctrl-z" "ctrl-y" "ctrl++" "ctrl+-" "shift" (some of these might be sliders in practice but they are read as keystrokes by xsetwacom)22:00
OvenWerksyup22:00
eylulkrita knows ctrl-z is undo, ctrl-y is redo. ctrl++ is zoom in ctrl-- is zoomout etc22:00
eylulor for example, the 2 buttons on my pen are mapped to right click and middle click22:01
eylultouching the pen to the tablet is left click. (I think that one is default?)22:01
eylulthere is also one other feature22:02
eylulthat is sorting out the curve for pressure sensitivity22:02
OvenWerksSo if we have buttons called undo, redo, zoom and zoom out and the user clicks on one of these buttons and then hits the pad button the set that pad button to that function.22:02
eylulkrita has a great interface for that, that can give inspiration.22:03
eylulI like your idea22:03
eylulbut instead of presets we could have like an interface for people to add buttons.22:03
eylule.g. define a name for a button. define the keybind22:04
eylulnow please press that button on your tablet.22:04
OvenWerksRight that is sort of the way I am thinking22:04
eylulI love this idea22:04
eylulI absolutely love this idea22:04
OvenWerksI was hoping for some sane defaults :)22:04
eylulbecause it gets us out of the problem of trying to keep a database of evergrowing tablet layouts22:05
eylulyes it is not pretty22:05
eylulbut it is flexible22:05
eylula22:05
eyluland we can eventually grow to presets from there, but it is a robust solution22:05
OvenWerksMaybe to match any defaults to something pretty common in the windows world?22:05
eylulthe problem isn't so much having defaults on windows world22:06
eylulit really isn't easy to predict how many buttons a tablet will have22:06
eylulxsetwacom sees buttons that are not there22:06
eylulor stuff is REALLY out of order ;D22:06
OvenWerksSo? no problem22:06
OvenWerksplugin the pad with the most buttons first22:06
OvenWerks set it up22:06
eylulno like really22:07
eylullook. ok what xsetwacom sees is22:07
eylulbutton 1, button 2, button 3...... button n22:07
OvenWerks the next pads would choose which of those buttons they want to use... or add a new one22:07
OvenWerkseach pads buttons would be saved for next time.22:08
eylulwhat the reality is button 1 same as pen right click. button 2 is the top left. button 3 the one under. then the next 4 buttons are actually scroll wheel.22:08
OvenWerksthats ok.22:08
eyluloh I think i see what you mean22:08
eylulI think22:08
OvenWerksthere is a device preset for each device.22:08
eylulyes there will be22:09
OvenWerks and then an app preset for each app (plus default)22:09
eylulbut I would caution against trying for US to have a device preset22:09
eylul;)22:09
eylulI think I might have misunderstood you there22:09
OvenWerksNo US would have a default set of button names was my thought22:09
eylulas an example?22:10
OvenWerksyes as an example.22:10
eylullike templates. cool22:10
eylulI like that idea22:10
eylulyou can add more to the templates. so that you don't have to refind each shortcut.22:10
eylulthat pool of button names (with their keybinds) would be a pool independent from the device22:11
OvenWerksyes22:11
eylulfor each device, as they set them up, they can use the ones they already created or create new ones. ;) I like this a lot22:11
OvenWerksyes22:11
OvenWerksSo two steps, one for devices and one for applications22:12
eylulI have some concerns about how complicated or how intuitive this would be.. but that I think can be determined on mockup phase and well.. I am kind of accepting that like the ubuntustudio audio settings these will go through iteration with feedback22:12
eylulyep22:12
eylulactually now that I think of it22:13
OvenWerksThe shipped application presets should match applications we ship.22:13
OvenWerksSo names and shortcuts should just work.22:13
eylulmain interface would be 1) screen setup to choose from: map to whole screen 1, map to whole screen 2 map, stretch to everything (with an option to respect ratio of the tablet's proportions) 2) pen setup.22:13
OvenWerksThe user should be able to set the device up and have it work with the apps we ship.22:13
eylulthen advanced screens for: advanced screen setup, keybinds to the pad, pressure sensitivity setups per device. these being in popups. 22:14
eylulmost simple tablets these days don't come with buttons.22:14
OvenWerksOK, send me a few pics?22:14
eylulhang on22:14
OvenWerks(or a glade file I guess)22:15
OvenWerks(back in a sec)22:16
eylulexample with buttons (because apparently entry level wacoms went back to having buttons): https://www.wacom.com/en-us/products/pen-tablets/wacom-intuos22:17
eyluloh wait did you mean picture of the uI?22:17
eylulerr I'll try to get them to you22:17
eylulI do need to think about it a little22:18
OvenWerksSo all pads have at least mouse button events plus some more (those look like 5 more... but one may be power)22:29
OvenWerksFour it says22:30
OvenWerksBamboo says one22:34
eylulsounds right22:35
eylulat some point wacom was going with what looked like no buttons except the ones on pens..22:35
eylul;)22:35
eyluland cintiqs currently don't have buttons but they have a button remote that you can buy separately.. apparently?22:35
eylulI think?22:35
OvenWerksIt would be easy to press a pen button along with a place on the pad for different buttons...22:36
eylul(*hasn't bought a new tablet in a while: old ones last just fine)22:36
eylulyou think like a pen interface. it would be cool to have additional button space.22:36
eylulbut honestly22:37
eyluleven the most basic mapping would help so I'd start with nailing the basics22:37
eylula22:37
eyluland adding more stuff overtime :)22:37
OvenWerksciniq would expect the screen to be it's own I would guess or do they also work with the main?22:41
OvenWerksI guess they are supposed to be your main screen.22:42
eylulcintiq works with the main screen22:44
OvenWerksmirror?22:44
eylulbut most of the time you are on cintiq screen22:44
eylulI did have a setup to quickly switch back and forth through22:44
eylulbecause for example if you are drawing on cintiq in full screen you might need to quickly swap adjust some reference images22:44
OvenWerksok22:45
eylulor color pick from the reference image22:45
eylulthen swap back22:45
OvenWerksso does the mouse cursor follow the pen then?22:46
eylulor maybe you do only have a cintiq, and that day, you want to be able to draw on your main screen rather than your cintiq screen for whatever reason22:46
eylulcursor follows the pen22:46
eyluland actually jumps around22:46
eylulthere isn't multiple cursors, just one22:46
eylule.g. if you put your tablet aside, and put the pen on top22:47
eylulthen forgot that you did that and try to do something with your mouse...22:47
eylul:)22:47
eylulbasically they conflict22:47
OvenWerkstwo mice work the same22:47
eylul*nods*22:47
eylulyeah22:47
eylulpen works differently in that, its positioning based on where the pen is, not relative like mouse22:48
eylulbut otherwise pen does work like a mouse22:48
eylul:)22:48
OvenWerksof course.22:48
OvenWerksI have more than enough to think about already22:48
eylul*nods*22:49
eylulthis one gets complicated22:49
eylul:D22:49
OvenWerksfunny thing just happened... my son came down asking about tablets.22:49
eyluloh?22:49
OvenWerkshe wants one...22:50
eylulah22:51
eylul:)22:51
eylulI am going to go offline for tonight I think, lets keep discussing this. I really like your solution to button mapping through22:52
OvenWerksok22:52
eylul"_22:54
eylul:)22:54

Generated by irclog2html.py 2.7 by Marius Gedminas - find it at mg.pov.lt!