Merge lp://staging/~marmuta/onboard/nightmode into lp://staging/~onboard/onboard/main
- nightmode
- Merge into main
Status: | Merged |
---|---|
Merged at revision: | not available |
Proposed branch: | lp://staging/~marmuta/onboard/nightmode |
Merge into: | lp://staging/~onboard/onboard/main |
Diff against target: |
2431 lines 10 files modified
Onboard/KeyCommon.py (+3/-0) Onboard/KeyGtk.py (+2/-1) Onboard/KeyboardSVG.py (+112/-8) Onboard/settings.py (+9/-6) layouts/Full-Alpha.svg (+635/-0) layouts/Full-Dark-Alpha.svg (+635/-0) layouts/Full-Dark-Numpad.svg (+271/-0) layouts/Full-Dark.sok (+181/-0) layouts/Full-Numpad.svg (+271/-0) layouts/Full.sok (+179/-0) |
To merge this branch: | bzr merge lp://staging/~marmuta/onboard/nightmode |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Chris Jones | Approve | ||
Review via email:
|
Commit message
Description of the change

marmuta (marmuta) wrote : | # |

Chris Jones (tortoise) wrote : | # |
Hi Marmuta
Thanks for the contribution! I'm using the darkroom gtk theme and your colours fit much better than the default ones.
The proper fix would be for the default layout to get the colours from the current theme. That's a fair bit of work so this'll do for now.
I've got the following issues with the code, otherwise I'd be happy to merge:
The label_rgba field in the Pane class doesn't ever get used.
The label_rgba field in the KeyCommon class is a list but the docstring calls it a tuple. Also, I tend to shy away setting list default values in the class body. Variables defined in the class body are class variables, not instance variables. So key.label_rgba[0] = 0.5 for example, would set the red label_rgba value for every instance of KeyCommon. Either make the default value a tuple or set label_rgba = None and initialise to the default value in the __init__ method.
We're trying to standardise on underscore_

Francesco Fumanti (frafu) wrote : | # |
Hi,
Thanks Marmuta for your work.
I understand that you are not very satisfied with the default layout: in
fact, I am using a custom tailored layout myself; but I did not submit
it to the public, because it was a quick hack adding a line with the
keys I was missing on the main pain like the arrow keys, esc, del,
tilde, pipe,...
I gave a look at your layout and the following came to mind:
- The "Switch Buttons"-button is missing on your layout or did I
overlook it.
- Would it not be better to create a compact layout like those of a laptop?
- Concerning label_rgba: What about adding gconf keys for it as long as
we are not fetching them from the active theme? More, we might even
leave the gconf keys when we fetching them from the active theme adding
a "Back to default colors"-button setting the colors back to those
matching the theme.
Chris, could you please comment on my comments, especially the third
about label_rgba?
Cheers
Francesco
Chris Jones wrote:
> Review: Needs Fixing Hi Marmuta
>
> Thanks for the contribution! I'm using the darkroom gtk theme and
> your colours fit much better than the default ones.
>
> The proper fix would be for the default layout to get the colours
> from the current theme. That's a fair bit of work so this'll do for
> now.
>
> I've got the following issues with the code, otherwise I'd be happy
> to merge:
>
> The label_rgba field in the Pane class doesn't ever get used.
>
> The label_rgba field in the KeyCommon class is a list but the
> docstring calls it a tuple. Also, I tend to shy away setting list
> default values in the class body. Variables defined in the class
> body are class variables, not instance variables. So
> key.label_rgba[0] = 0.5 for example, would set the red label_rgba
> value for every instance of KeyCommon. Either make the default value
> a tuple or set label_rgba = None and initialise to the default value
> in the __init__ method.
>
> We're trying to standardise on underscore_
> not CamelCase and line lengths < 80 characters.
- 176. By marmuta
-
Cleanup according to first code review at
https://code.edge. launchpad. net/~marmuta/ onboard/ nightmode/ +merge/ 12265

marmuta (marmuta) wrote : | # |
> Review: Needs Fixing
> Hi Marmuta
>
> Thanks for the contribution! I'm using the darkroom gtk theme and
> your colours fit much better than the default ones.
That's great, I'm glad you like it. I tend to use a pitch black
human theme, but now that I've seen it, it almost looks as if it
was made for darkroom :).
> The proper fix would be for the default layout to get the colours
> from the current theme. That's a fair bit of work so this'll do for
> now.
>
> I've got the following issues with the code, otherwise I'd be happy
> to merge:
>
> The label_rgba field in the Pane class doesn't ever get used.
Yeah, that is a bit awkward, but since the color is specified as an
attribute of the pane, I felt it should at least have a token
representation in the pane object. Actually I'd rather have used this
per-pane color directly for the label drawing than introduce a new
attribute label_rgba in class KeyCommon. Problem is, that the
containing pane is unknown for class RectKey and others. Is there a
reason that pane is not a member of the base class KeyCommon?
> The label_rgba field in the KeyCommon class is a list but the
> docstring calls it a tuple. Also, I tend to shy away setting list
> default values in the class body. Variables defined in the class
> body are class variables, not instance variables. So
> key.label_rgba[0] = 0.5 for example, would set the red label_rgba
> value for every instance of KeyCommon. Either make the default value
> a tuple or set label_rgba = None and initialise to the default value
> in the __init__ method.
Yes, thanks for pointing that out. It's a tuple now, though
I'd rather remove it altogether, see above.
> We're trying to standardise on underscore_
> not CamelCase and line lengths < 80 characters. --
Ok, done, I hope :)
> https:/
> You are the owner of lp:~marmuta/onboard/nightmode.

marmuta (marmuta) wrote : | # |
> Hi,
>
> Thanks Marmuta for your work.
Thank you, Francesco!
> I understand that you are not very satisfied with the default layout: in
> fact, I am using a custom tailored layout myself; but I did not submit
> it to the public, because it was a quick hack adding a line with the
> keys I was missing on the main pain like the arrow keys, esc, del,
> tilde, pipe,...
Yes, I had a hacked together one too for some time and finally decided to clean it up a bit :).
> I gave a look at your layout and the following came to mind:
>
> - The "Switch Buttons"-button is missing on your layout or did I
> overlook it.
Actually I didn't really understand what it was for, so it kinda dropped by the wayside.
Should it switch left and right pointer buttons? Is that to allow for right mouse clicks for single button pointer users? If yes, then should I perhaps move the settings button to the second pane and replaced it with "switch buttons"?
> - Would it not be better to create a compact layout like those of a laptop?
I found it easier for me to adapt when the virtual keyboard resembled the physical keyboard I'm most commonly using. It just happens to be the standard 105 key one for me. Compact layouts may be more efficient but they seem less standardized and come at the cost of a certain learning curve in the beginning. Not saying there shouldn't be more layouts to choose from though.
> - Concerning label_rgba: What about adding gconf keys for it as long as
> we are not fetching them from the active theme? More, we might even
> leave the gconf keys when we fetching them from the active theme adding
> a "Back to default colors"-button setting the colors back to those
> matching the theme.
I'm open for changes, the current solution simply seemed like the way of least resistance.
> Chris, could you please comment on my comments, especially the third
> about label_rgba?
>
> Cheers
>
> Francesco
>
>
> Chris Jones wrote:
> > Review: Needs Fixing Hi Marmuta
> >
> > Thanks for the contribution! I'm using the darkroom gtk theme and
> > your colours fit much better than the default ones.
> >
> > The proper fix would be for the default layout to get the colours
> > from the current theme. That's a fair bit of work so this'll do for
> > now.
> >
> > I've got the following issues with the code, otherwise I'd be happy
> > to merge:
> >
> > The label_rgba field in the Pane class doesn't ever get used.
> >
> > The label_rgba field in the KeyCommon class is a list but the
> > docstring calls it a tuple. Also, I tend to shy away setting list
> > default values in the class body. Variables defined in the class
> > body are class variables, not instance variables. So
> > key.label_rgba[0] = 0.5 for example, would set the red label_rgba
> > value for every instance of KeyCommon. Either make the default value
> > a tuple or set label_rgba = None and initialise to the default value
> > in the __init__ method.
> >
> > We're trying to standardise on underscore_
> > not CamelCase and line lengths < 80 characters.

Francesco Fumanti (frafu) wrote : | # |
Hi,
marmuta wrote:
>> - The "Switch Buttons"-button is missing on your layout or did I
>> overlook it.
> Actually I didn't really understand what it was for, so it kinda
> dropped by the wayside. Should it switch left and right pointer
> buttons? Is that to allow for right mouse clicks for single button
> pointer users? If yes, then should I perhaps move the settings button
> to the second pane and replaced it with "switch buttons"?
Yes; its function is indeed to switch left and right mouse buttons.
As the people with two mouse buttons don't have any use for it, I am not
sure if it is a good idea to put it on the main pane. It should however
be present on one of the panes, even if currently it is broken. Or does
the "Switch Button"-button work on your system?
(I just tried again by installing a .deb created from revision 179 of
trunk.)
>> - Would it not be better to create a compact layout like those of a
>> laptop?
> I found it easier for me to adapt when the virtual keyboard resembled
> the physical keyboard I'm most commonly using. It just happens to be
> the standard 105 key one for me. Compact layouts may be more
> efficient but they seem less standardized and come at the cost of a
> certain learning curve in the beginning. Not saying there shouldn't
> be more layouts to choose from though.
This turns into a tradeoff between screen space and user friendliness.
When Chris will have merged your changes to trunk after he finds them
ok, people will at least have the choice.
>> - Concerning label_rgba: What about adding gconf keys for it as
>> long as we are not fetching them from the active theme? More, we
>> might even leave the gconf keys when we fetching them from the
>> active theme adding a "Back to default colors"-button setting the
>> colors back to those matching the theme.
> I'm open for changes, the current solution simply seemed like the way
> of least resistance.
>
>> Chris, could you please comment on my comments, especially the
>> third about label_rgba?
Let's see what Chris is going to say about it...
Thanks again for your contribution.
Francesco

Chris Jones (tortoise) wrote : | # |
> Hi,
>
> marmuta wrote:
> >> - The "Switch Buttons"-button is missing on your layout or did I
> >> overlook it.
> > Actually I didn't really understand what it was for, so it kinda
> > dropped by the wayside. Should it switch left and right pointer
> > buttons? Is that to allow for right mouse clicks for single button
> > pointer users? If yes, then should I perhaps move the settings button
> > to the second pane and replaced it with "switch buttons"?
>
> Yes; its function is indeed to switch left and right mouse buttons.
>
> As the people with two mouse buttons don't have any use for it, I am not
> sure if it is a good idea to put it on the main pane. It should however
> be present on one of the panes, even if currently it is broken. Or does
> the "Switch Button"-button work on your system?
>
> (I just tried again by installing a .deb created from revision 179 of
> trunk.)
It is possible to fit in the switch buttons button by taking the full keyboard layout and swapping the settings and Prnt Scroll and Pause buttons. That leaves room to slot the switch buttons button underneath.
> > Compact layouts may be more
> > efficient but they seem less standardized and come at the cost of a
> > certain learning curve in the beginning. Not saying there shouldn't
> > be more layouts to choose from though.
>
> This turns into a tradeoff between screen space and user friendliness.
> When Chris will have merged your changes to trunk after he finds them
> ok, people will at least have the choice.
It's probably worth sticking to the standard layout as much as possible. We can always provide a compact layout as another option.
> >> - Concerning label_rgba: What about adding gconf keys for it as
> >> long as we are not fetching them from the active theme? More, we
> >> might even leave the gconf keys when we fetching them from the
> >> active theme adding a "Back to default colors"-button setting the
> >> colors back to those matching the theme.
> > I'm open for changes, the current solution simply seemed like the way
> > of least resistance.
I don't think that many people will want to change the label colours without also changing the colours of the keys themselves. I think it's worth allowing users to change theme colours without using a text editor. Something along the lines of gnome-appearanc

Chris Jones (tortoise) wrote : | # |
> > The label_rgba field in the Pane class doesn't ever get used.
> Yeah, that is a bit awkward, but since the color is specified as an
> attribute of the pane, I felt it should at least have a token
> representation in the pane object.
I think the key itself should hold the label colour. It would be worth adding the ability to specify label colours per key in addition to per pane. With the key label colours taking precedence over the pane label colours.
> Actually I'd rather have used this
> per-pane color directly for the label drawing than introduce a new
> attribute label_rgba in class KeyCommon. Problem is, that the
> containing pane is unknown for class RectKey and others. Is there a
> reason that pane is not a member of the base class KeyCommon?
I've been trying to avoid circular references, it can make the code a bit messy.
Remove Pane.label_rgba and I'll merge the code changes :-)

Francesco Fumanti (frafu) wrote : | # |
Hi,
Chris Jones wrote:
>> marmuta wrote:
>> As the people with two mouse buttons don't have any use for it, I
>> am not sure if it is a good idea to put it on the main pane. It
>> should however be present on one of the panes, even if currently it
>> is broken. Or does the "Switch Button"-button work on your system?
>>
>> (I just tried again by installing a .deb created from revision 179
>> of trunk.)
>
> It is possible to fit in the switch buttons button by taking the full
> keyboard layout and swapping the settings and Prnt Scroll and Pause
> buttons. That leaves room to slot the switch buttons button
> underneath.
I don't think that the Print, Scroll and Pause buttons will fit in a
space where the Settings button is currently positioned. What about the
following:
As there is an empty line over the arrows, why not move down the 9
buttons placed over the arrow keys to free the space to the right of the
function keys. This will give us plenty of space for the
"Settings"-button and "Switch Buttons"-buttons.
That would also be room for an "Iconize"-button, that I have to mind for
some time yet. In fact, the idea is to create such an "Iconize"-button
to have a bigger target than the button on the title bar, to the
minimize onboard to the panel (or to the floating icon if it is active).
Since we are talking about layout, I thought to mention it, but until
now I have not looked at how it could be implemented.
>>> Compact layouts may be more efficient but they seem less
>>> standardized and come at the cost of a certain learning curve in
>>> the beginning. Not saying there shouldn't be more layouts to
>>> choose from though.
>> This turns into a tradeoff between screen space and user
>> friendliness. When Chris will have merged your changes to trunk
>> after he finds them ok, people will at least have the choice.
>
> It's probably worth sticking to the standard layout as much as
> possible. We can always provide a compact layout as another option.
ok
>>>> - Concerning label_rgba: What about adding gconf keys for it as
>>>> long as we are not fetching them from the active theme? More,
>>>> we might even leave the gconf keys when we fetching them from
>>>> the active theme adding a "Back to default colors"-button
>>>> setting the colors back to those matching the theme.
>>> I'm open for changes, the current solution simply seemed like the
>>> way of least resistance.
>
> I don't think that many people will want to change the label colours
> without also changing the colours of the keys themselves. I think
> it's worth allowing users to change theme colours without using a
> text editor. Something along the lines of
> gnome-appearanc
Yes, something along the lines of the colors dialog in
gnome-appearanc
0.93, as the changes will not be trivial; or am I wrong?
Cheers
Francesco

marmuta (marmuta) wrote : | # |
Hi,
I've added sorting for the layout list in settings to get the default
layout back to the top. If that's not wanted please just ignore it for the merge.
> marmuta wrote:
> >> - The "Switch Buttons"-button is missing on your layout or did I
> >> overlook it.
> > Actually I didn't really understand what it was for, so it kinda
> > dropped by the wayside. Should it switch left and right pointer
> > buttons? Is that to allow for right mouse clicks for single button
> > pointer users? If yes, then should I perhaps move the settings
> > button to the second pane and replaced it with "switch buttons"?
>
> Yes; its function is indeed to switch left and right mouse buttons.
>
> As the people with two mouse buttons don't have any use for it, I am
> not sure if it is a good idea to put it on the main pane. It should
> however be present on one of the panes, even if currently it is
> broken.
I had it added to the second panes yesterday, close to the tab bar to
keep the travel distance low, but I see that the discussion is
ongoing :)
> Or does the "Switch Button"-button work on your system?
Unfortunately not, it toggles the gconf key without the switch happening. It doesn't work from gconf-editor either, only from gnome-mouse-
> > It is possible to fit in the switch buttons button by taking the
> > full keyboard layout and swapping the settings and Prnt Scroll and
> > Pause buttons. That leaves room to slot the switch buttons button
> > underneath.
>
> I don't think that the Print, Scroll and Pause buttons will fit in a
> space where the Settings button is currently positioned. What about
> the following:
>
> As there is an empty line over the arrows, why not move down the 9
> buttons placed over the arrow keys to free the space to the right of
> the function keys. This will give us plenty of space for the
> "Settings"-button and "Switch Buttons"-buttons.
That would make me hunt for keys again for a while. My
motivation was originally to have a close representation of the
standard keyboard to avoid having to retrain when switching between
on- and off-screen keyboards across operations systems. They are all
different in gnome, kde and the other OS already, each with its
own incompatible trade-offs.
Would it be wrong to demote the settings button to the second pane? I do kinda like it where it is, but it's not really an input button and "switch buttons" seems more important. There are already two other ways to get to the settings too, plus I'd expect settings to be used only occasionally.
Here is another spacy idea, though somewhat beyond the scope of this merge. Instead of a switch button have three, perhaps round buttons for double click, middle- and right mouse button, (D) (M) (R). They would fit into the empty space above the cursor keys. All three would act three-state sticky like the other modifier keys. That would allow for left-, middle-, right-, both single- and double click and the keyboard layout wouldn't need to be shifted around.
There could be a toggle in settings to turn pointer keys on/off too.

marmuta (marmuta) wrote : | # |
> > > The label_rgba field in the Pane class doesn't ever get used.
> > Yeah, that is a bit awkward, but since the color is specified as an
> > attribute of the pane, I felt it should at least have a token
> > representation in the pane object.
>
> I think the key itself should hold the label colour. It would be
> worth adding the ability to specify label colours per key in addition
> to per pane. With the key label colours taking precedence over the
> pane label colours.
That was the intention after the pane turned out to be inaccessible.
On the other hand physical keyboard rarely come with different colored
key labels either.
> > Actually I'd rather have used this
> > per-pane color directly for the label drawing than introduce a new
> > attribute label_rgba in class KeyCommon. Problem is, that the
> > containing pane is unknown for class RectKey and others. Is there a
> > reason that pane is not a member of the base class KeyCommon?
>
> I've been trying to avoid circular references, it can make the code a
> bit messy.
>
> Remove Pane.label_rgba and I'll merge the code changes :-)
OK, it's gone :)

Francesco Fumanti (frafu) wrote : | # |
Hi,
marmuta wrote:
> I've added sorting for the layout list in settings to get the default
> layout back to the top. If that's not wanted please just ignore it
> for the merge.
It is ok for me; but it is up to Chris to decide.
>> As the people with two mouse buttons don't have any use for it, I
>> am not sure if it is a good idea to put it on the main pane. It
>> should however be present on one of the panes, even if currently it
>> is broken.
> I had it added to the second panes yesterday, close to the tab bar to
> keep the travel distance low, but I see that the discussion is
> ongoing :)
This is also ok for me.
>> Or does the "Switch Button"-button work on your system?
> Unfortunately not, it toggles the gconf key without the switch
> happening. It doesn't work from gconf-editor either, only from
> gnome-mouse-
The same is happening on my system; so it seems to be a problem of
karmic and not a quirk of my system. And as it also does not work from
gconf-editor, we can assume that it is not fault of onboard.
>>> It is possible to fit in the switch buttons button by taking the
>>> full keyboard layout and swapping the settings and Prnt Scroll
>>> and Pause buttons. That leaves room to slot the switch buttons
>>> button underneath.
>> I don't think that the Print, Scroll and Pause buttons will fit in
>> a space where the Settings button is currently positioned. What
>> about the following:
>>
>> As there is an empty line over the arrows, why not move down the 9
>> buttons placed over the arrow keys to free the space to the right
>> of the function keys. This will give us plenty of space for the
>> "Settings"-button and "Switch Buttons"-buttons.
> That would make me hunt for keys again for a while. My motivation was
> originally to have a close representation of the standard keyboard
> to avoid having to retrain when switching between on- and off-screen
> keyboards across operations systems. They are all different in gnome,
> kde and the other OS already, each with its own incompatible
> trade-offs.
My suggestion about moving the 9 keys down one row was mainly to get
enough space for the Settings and Switch Buttons buttons.
> Would it be wrong to demote the settings button to the second pane? I
> do kinda like it where it is, but it's not really an input button
> and "switch buttons" seems more important. There are already two
> other ways to get to the settings too, plus I'd expect settings to be
> used only occasionally.
Indeed, once a user has congigured onboard the way he likes it, he will
only rarely use the Settings button. Consequently, I also think that it
would be better suited on the second pane.
Concerning the Switch Buttons button, we should probably also put it on
the second pane, because:
- people able to use two mouse buttons don't have any usage for it
- people that can only use one mouse button already have an alternative
in the Accessibility tab of the mouse control panel
However, there are situations where the alternative does not work
because of the way it has been implemented. For the moment, these users
have to resort to dwell clicking (also in the acces...

marmuta (marmuta) wrote : | # |
>
> >> As the people with two mouse buttons don't have any use for it, I
> >> am not sure if it is a good idea to put it on the main pane. It
> >> should however be present on one of the panes, even if currently it
> >> is broken.
> > I had it added to the second panes yesterday, close to the tab bar
> > to keep the travel distance low, but I see that the discussion is
> > ongoing :)
>
> This is also ok for me.
>
Right, so "switch buttons" stays on the second pane.
> >>
> >> As there is an empty line over the arrows, why not move down the 9
> >> buttons placed over the arrow keys to free the space to the right
> >> of the function keys. This will give us plenty of space for the
> >> "Settings"-button and "Switch Buttons"-buttons.
> > That would make me hunt for keys again for a while. My motivation
> > was originally to have a close representation of the standard
> > keyboard to avoid having to retrain when switching between on- and
> > off-screen keyboards across operations systems. They are all
> > different in gnome, kde and the other OS already, each with its own
> > incompatible trade-offs.
>
> My suggestion about moving the 9 keys down one row was mainly to get
> enough space for the Settings and Switch Buttons buttons.
Yes, this is how I understood it. I was trying to argue against that
change and for sacrificing the settings button instead, but...
> > Would it be wrong to demote the settings button to the second pane?
> > I do kinda like it where it is, but it's not really an input button
> > and "switch buttons" seems more important. There are already two
> > other ways to get to the settings too, plus I'd expect settings to
> > be used only occasionally.
>
> Indeed, once a user has congigured onboard the way he likes it, he
> will only rarely use the Settings button. Consequently, I also think
> that it would be better suited on the second pane.
...now that "switch buttons" stays in the second pane there is no pressing need to move settings anymore, right? So keep the layout in its current state with settings first pane, switch buttons second?
Chris, would that be acceptable for you too?
> Concerning the Switch Buttons button, we should probably also put it
> on the second pane, because:
> - people able to use two mouse buttons don't have any usage for it
> - people that can only use one mouse button already have an
> alternative in the Accessibility tab of the mouse control panel
OK, "switch buttons" stays on the second pane.
> > Here is another spacy idea, though somewhat beyond the scope of
> > this merge. Instead of a switch button have three, perhaps round
> > buttons for double click, middle- and right mouse button, (D) (M)
> > (R). They would fit into the empty space above the cursor keys. All
> > three would act three-state sticky like the other modifier keys.
> > That would allow for left-, middle-, right-, both single- and
> > double click and the keyboard layout wouldn't need to be shifted
> > around. There could be a toggle in settings to turn pointer keys
> > on/off too.
>
> Adding such a functionality would probably make onboard depend on the
> AT-SPI framework.
If so, than I take m...

Chris Jones (tortoise) wrote : | # |
> As there is an empty line over the arrows, why not move down the 9
> buttons placed over the arrow keys to free the space to the right of the
> function keys. This will give us plenty of space for the
> "Settings"-button and "Switch Buttons"-buttons.
Yeah, that's what I meant :-)
>
> That would also be room for an "Iconize"-button, that I have to mind for
> some time yet. In fact, the idea is to create such an "Iconize"-button
> to have a bigger target than the button on the title bar, to the
> minimize onboard to the panel (or to the floating icon if it is active).
> Since we are talking about layout, I thought to mention it, but until
> now I have not looked at how it could be implemented.
Good idea. Maybe extend the script key action so that scripts are passed an instance of the running keyboard that they can act on.
> Yes, something along the lines of the colors dialog in
> gnome-appearanc
> 0.93, as the changes will not be trivial; or am I wrong?
Yes, lets leave that for 0.93.
Cheers, Chris

Francesco Fumanti (frafu) wrote : | # |
Hi,
Chris Jones wrote:
>> That would also be room for an "Iconize"-button, that I have to
>> mind for some time yet. In fact, the idea is to create such an
>> "Iconize"-button to have a bigger target than the button on the
>> title bar, to the minimize onboard to the panel (or to the floating
>> icon if it is active). Since we are talking about layout, I thought
>> to mention it, but until now I have not looked at how it could be
>> implemented.
>
> Good idea. Maybe extend the script key action so that scripts are
> passed an instance of the running keyboard that they can act on.
I would say to also leave this for version 0.93, otherwise we will never
get to the 0.92 release...
Or if it is trivial for you to add it, I would use the space of the
Settings button of the Full layout for the Iconize-button, and put the
Settings button and the Switch Buttons button to the second pane.
Cheers
Francesco

Chris Jones (tortoise) wrote : | # |
> ...now that "switch buttons" stays in the second pane there is no pressing
> need to move settings anymore, right? So keep the layout in its current state
> with settings first pane, switch buttons second?
> Chris, would that be acceptable for you too?
Yep
> If so, than I take my proposal back :) I'd rather not have onboard require
> "Assistive Technologies". Back when I was dwell clicking for a while, I was
> looking for simple tools. Mousetweaks for some reason needs the whole AT-SPI
> framework enabled, with high memory usage, slower applications and the
> occasional crashers. I gave up on it and settled on kmousetool instead. Things
> may have changed though, I haven't needed it in a while.
>
> > Moreover, would such a functionality not be better suited in the
> > mousetweaks module that is already providing the features of the
> > accessibility tab of the mouse control panel?
>
> That's true, on second thought reimplementing half of mousetweaks features
> doesn't seem like a sensible thing to do.
Currently the switch buttons button toggles a gconf key which is monitored by gnome-settings-
I think this functionality probably doesn't belong in Onboard. Mousetweaks seems to use AT-SPI to get a global pointer location. It's hard to understand why the at-spi-registryd is needed for that information.
Ok, I think we're ready to merge now :-)

Francesco Fumanti (frafu) wrote : | # |
Hi,
Chris Jones wrote:
>> If so, than I take my proposal back :) I'd rather not have onboard
>> require "Assistive Technologies". Back when I was dwell clicking
>> for a while, I was looking for simple tools. Mousetweaks for some
>> reason needs the whole AT-SPI framework enabled, with high memory
>> usage, slower applications and the occasional crashers. I gave up
>> on it and settled on kmousetool instead. Things may have changed
>> though, I haven't needed it in a while.
>>
>>> Moreover, would such a functionality not be better suited in the
>>> mousetweaks module that is already providing the features of the
>>> accessibility tab of the mouse control panel?
>> That's true, on second thought reimplementing half of mousetweaks
>> features doesn't seem like a sensible thing to do.
>
> Currently the switch buttons button toggles a gconf key which is
> monitored by gnome-settings-
> system. Since gnome-settings-
> must be possible to mangle mouse buttons without it.
>
> I think this functionality probably doesn't belong in Onboard.
> Mousetweaks seems to use AT-SPI to get a global pointer location.
> It's hard to understand why the at-spi-registryd is needed for that
> information.
Indeed, toggling left and right handedness of the pointer does not need
at-spi, but I suppose that if we wanted to perform more advanced
manipulations on the mouse clicks, we would have to use AT-SPI.
Anyway, we surely agree on the fact that there are other functionalities
(like word completion and word prediction) that deserve more our
attention to be implemented in onboard than mouse click manipulations.
Cheers
Francesco
Preview Diff
1 | === modified file 'Onboard/KeyCommon.py' |
2 | --- Onboard/KeyCommon.py 2009-09-11 13:24:11 +0000 |
3 | +++ Onboard/KeyCommon.py 2009-09-27 08:05:21 +0000 |
4 | @@ -45,6 +45,9 @@ |
5 | font_size = 1 |
6 | """ Size to draw the label text in Pango units""" |
7 | |
8 | + label_rgba = (0.0,0.0,0.0,1.0) |
9 | + """ Four tuple with values between 0 and 1 containing label color""" |
10 | + |
11 | label_index = 0 |
12 | """ Index in labels that is currently displayed by this key """ |
13 | |
14 | |
15 | === modified file 'Onboard/KeyGtk.py' |
16 | --- Onboard/KeyGtk.py 2009-08-16 19:12:09 +0000 |
17 | +++ Onboard/KeyGtk.py 2009-09-27 08:05:21 +0000 |
18 | @@ -35,7 +35,8 @@ |
19 | context.move_to((location[0] + self.label_offset[0]) * scale[0], |
20 | (location[1] + self.label_offset[1]) * scale[1]) |
21 | |
22 | - context.set_source_rgb(0, 0, 0) |
23 | + context.set_source_rgba(self.label_rgba[0], self.label_rgba[1], |
24 | + self.label_rgba[2], self.label_rgba[3]) |
25 | layout = context.create_layout() |
26 | layout.set_text(self.labels[self.label_index]) |
27 | font_description = pango.FontDescription() |
28 | |
29 | === modified file 'Onboard/KeyboardSVG.py' |
30 | --- Onboard/KeyboardSVG.py 2009-09-24 19:05:46 +0000 |
31 | +++ Onboard/KeyboardSVG.py 2009-09-27 08:05:21 +0000 |
32 | @@ -46,22 +46,34 @@ |
33 | " width must currently be px (pixels).")) |
34 | |
35 | #find background of pane |
36 | - paneBackground = [0.0,0.0,0.0,0.0] |
37 | + pane_background = [0.0,0.0,0.0,0.0] |
38 | |
39 | if pane_xml.hasAttribute("backgroundRed"): |
40 | - paneBackground[0] = pane_xml.attributes["backgroundRed"].value |
41 | + pane_background[0] = pane_xml.attributes["backgroundRed"].value |
42 | if pane_xml.hasAttribute("backgroundGreen"): |
43 | - paneBackground[1] = pane_xml.attributes["backgroundGreen"].value |
44 | + pane_background[1] = pane_xml.attributes["backgroundGreen"].value |
45 | if pane_xml.hasAttribute("backgroundBlue"): |
46 | - paneBackground[2] = pane_xml.attributes["backgroundBlue"].value |
47 | + pane_background[2] = pane_xml.attributes["backgroundBlue"].value |
48 | if pane_xml.hasAttribute("backgroundAlpha"): |
49 | - paneBackground[3] = pane_xml.attributes["backgroundAlpha"].value |
50 | + pane_background[3] = pane_xml.attributes["backgroundAlpha"].value |
51 | + |
52 | + #find label color of pane |
53 | + pane_label_rgba = [0.0,0.0,0.0,1.0] |
54 | + |
55 | + if pane_xml.hasAttribute("labelRed"): |
56 | + pane_label_rgba[0] = float(pane_xml.attributes["labelRed"].value) |
57 | + if pane_xml.hasAttribute("labelGreen"): |
58 | + pane_label_rgba[1] = float(pane_xml.attributes["labelGreen"].value) |
59 | + if pane_xml.hasAttribute("labelBlue"): |
60 | + pane_label_rgba[2] = float(pane_xml.attributes["labelBlue"].value) |
61 | + if pane_xml.hasAttribute("labelAlpha"): |
62 | + pane_label_rgba[3] = float(pane_xml.attributes["labelAlpha"].value) |
63 | |
64 | #scanning |
65 | columns = [] |
66 | |
67 | self.load_keys_geometry(pane_svg, keys) |
68 | - key_groups = self.load_keys(pane_xml, keys) |
69 | + key_groups = self.load_keys(pane_xml, keys, pane_label_rgba) |
70 | |
71 | try: |
72 | for column_xml in pane_xml.getElementsByTagName("column"): |
73 | @@ -74,7 +86,7 @@ |
74 | _("%s appears in scanning definition only") % (str(exception))) |
75 | |
76 | return Pane(pane_xml.attributes["id"].value, key_groups, |
77 | - columns, pane_size, paneBackground) |
78 | + columns, pane_size, pane_background) |
79 | |
80 | |
81 | def load_layout(self, layout_data_file): |
82 | @@ -141,11 +153,12 @@ |
83 | keys[id] = self.parse_path(path, pane) |
84 | """ |
85 | |
86 | - def load_keys(self, doc, keys): |
87 | + def load_keys(self, doc, keys, label_rgba): |
88 | groups = {} |
89 | for key_xml in doc.getElementsByTagName("key"): |
90 | name = key_xml.attributes["id"].value |
91 | if name in keys: |
92 | +<<<<<<< TREE |
93 | key = keys[name] |
94 | if key_xml.hasAttribute("char"): |
95 | key.action = key_xml.attributes["char"].value |
96 | @@ -228,6 +241,97 @@ |
97 | if sticky == "true": |
98 | key.sticky = True |
99 | elif sticky == "false": |
100 | +======= |
101 | + try: |
102 | + key = keys[name] |
103 | + if key_xml.hasAttribute("char"): |
104 | + key.action = key_xml.attributes["char"].value |
105 | + key.action_type = KeyCommon.CHAR_ACTION |
106 | + elif key_xml.hasAttribute("keysym"): |
107 | + value = key_xml.attributes["keysym"].value |
108 | + key.action_type = KeyCommon.KEYSYM_ACTION |
109 | + if value[1] == "x":#Deals for when keysym is hex |
110 | + key.action = string.atoi(value,16) |
111 | + else: |
112 | + key.action = string.atoi(value,10) |
113 | + elif key_xml.hasAttribute("keypress_name"): |
114 | + key.action = key_xml.attributes["keypress_name"].value |
115 | + key.action_type = KeyCommon.KEYPRESS_NAME_ACTION |
116 | + elif key_xml.hasAttribute("press"): |
117 | + key.action = key_xml.attributes["char"].value |
118 | + key.action_type = KeyCommon.CHAR_ACTION |
119 | + elif key_xml.hasAttribute("modifier"): |
120 | + try: |
121 | + key.action = modifiers[ |
122 | + key_xml.attributes["modifier"].value] |
123 | + except KeyError, (strerror): |
124 | + raise Exception("Unrecognised modifier %s in" \ |
125 | + "definition of %s" (strerror, name)) |
126 | + key.action_type = KeyCommon.MODIFIER_ACTION |
127 | + |
128 | + elif key_xml.hasAttribute("macro"): |
129 | + key.action = key_xml.attributes["macro"].value |
130 | + key.action_type = KeyCommon.MACRO_ACTION |
131 | + elif key_xml.hasAttribute("script"): |
132 | + key.action = key_xml.attributes["script"].value |
133 | + key.action_type = KeyCommon.SCRIPT_ACTION |
134 | + elif key_xml.hasAttribute("keycode"): |
135 | + key.action = string.atoi( |
136 | + key_xml.attributes["keycode"].value) |
137 | + key.action_type = KeyCommon.KEYCODE_ACTION |
138 | + |
139 | + labels = ["","","","",""] |
140 | + #if label specified search for modified labels. |
141 | + if key_xml.hasAttribute("label"): |
142 | + labels[0] = key_xml.attributes["label"].value |
143 | + if key_xml.hasAttribute("cap_label"): |
144 | + labels[1] = key_xml.attributes["cap_label"].value |
145 | + if key_xml.hasAttribute("shift_label"): |
146 | + labels[2] = key_xml.attributes["shift_label"].value |
147 | + if key_xml.hasAttribute("altgr_label"): |
148 | + labels[3] = key_xml.attributes["altgr_label"].value |
149 | + if key_xml.hasAttribute("altgrNshift_label"): |
150 | + labels[4] = \ |
151 | + key_xml.attributes["altgrNshift_label"].value |
152 | + #Get labels from keyboard. |
153 | + else: |
154 | + if key.action_type == KeyCommon.KEYCODE_ACTION: |
155 | + labDic = self.vk.labels_from_keycode(key.action) |
156 | + labels = (labDic[0],labDic[2],labDic[1], |
157 | + labDic[3],labDic[4]) |
158 | + |
159 | + # Translate labels - Gettext behaves oddly when translating |
160 | + # empty strings |
161 | + key.labels = [ lab and _(lab) or None for lab in labels ] |
162 | + |
163 | + # assign label color - default label color is pane default |
164 | + key.label_rgba = label_rgba |
165 | + |
166 | + if key_xml.hasAttribute("font_offset_x"): |
167 | + offset_x = \ |
168 | + float(key_xml.attributes["font_offset_x"].value) |
169 | + else: |
170 | + offset_x = config.DEFAULT_LABEL_OFFSET[0] |
171 | + |
172 | + if key_xml.hasAttribute("font_offset_y"): |
173 | + offset_x = \ |
174 | + float(key_xml.attributes["font_offset_y"].value) |
175 | + else: |
176 | + offset_y = config.DEFAULT_LABEL_OFFSET[1] |
177 | + key.label_offset = (offset_x, offset_y) |
178 | + |
179 | + sticky = key_xml.attributes["sticky"].value.lower() |
180 | + if sticky: |
181 | + if sticky == "true": |
182 | + key.sticky = True |
183 | + elif sticky == "false": |
184 | + key.sticky = False |
185 | + else: |
186 | + raise Exception( "'sticky' attribute had an" |
187 | + "invalid value: %s when parsing key %s" |
188 | + % (sticky, name)) |
189 | + else: |
190 | +>>>>>>> MERGE-SOURCE |
191 | key.sticky = False |
192 | else: |
193 | raise Exception( "'sticky' attribute had an" |
194 | |
195 | === modified file 'Onboard/settings.py' |
196 | --- Onboard/settings.py 2009-08-19 22:12:07 +0000 |
197 | +++ Onboard/settings.py 2009-09-27 08:05:22 +0000 |
198 | @@ -208,15 +208,12 @@ |
199 | try: |
200 | sokdoc = minidom.parse(file_object).documentElement |
201 | |
202 | + value = sokdoc.attributes["id"].value |
203 | if os.access(filename,os.W_OK): |
204 | - it = self.layoutList.append(("<i>%s</i>" |
205 | - % sokdoc.attributes["id"].value, filename)) |
206 | + soks.append((value.lower(), "<i>%s</i>" % value, filename)) |
207 | else: |
208 | - it = self.layoutList.append(( |
209 | - sokdoc.attributes["id"].value, filename)) |
210 | + soks.append((value.lower(), value, filename)) |
211 | |
212 | - if filename == config.layout_filename: |
213 | - self.layout_view.get_selection().select_iter(it) |
214 | except ExpatError,(strerror): |
215 | print "XML in %s %s" % (filename, strerror) |
216 | except KeyError,(strerror): |
217 | @@ -224,6 +221,12 @@ |
218 | |
219 | file_object.close() |
220 | |
221 | + for key, value, filename in sorted(soks): |
222 | + it = self.layoutList.append((value, filename)) |
223 | + if filename == config.layout_filename: |
224 | + self.layout_view.get_selection().select_iter(it) |
225 | + |
226 | + |
227 | def find_soks(self, path): |
228 | files = os.listdir(path) |
229 | soks = [] |
230 | |
231 | === added file 'layouts/Full-Alpha.svg' |
232 | --- layouts/Full-Alpha.svg 1970-01-01 00:00:00 +0000 |
233 | +++ layouts/Full-Alpha.svg 2009-09-27 08:05:22 +0000 |
234 | @@ -0,0 +1,635 @@ |
235 | +<?xml version='1.0' encoding='UTF-8'?> |
236 | +<!-- Created with onBoard --> |
237 | +<svg xmlns:cc='http://web.resource.org/cc/' |
238 | + xmlns:svg='http://www.w3.org/2000/svg' |
239 | + xmlns:dc='http://purl.org/dc/elements/1.1/' |
240 | + xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#' |
241 | + xmlns='http://www.w3.org/2000/svg' |
242 | + height='118.0' |
243 | + width='350.0' |
244 | + version='1.0' |
245 | + id='full-alpha'> |
246 | + <rect |
247 | + style="fill:#f2e5d8;stroke:#000000" |
248 | + height="18" |
249 | + width="23" |
250 | + y="99.063034" |
251 | + x="192" |
252 | + id="RALT" /> |
253 | + <rect |
254 | + style="fill:#e5d8b2;stroke:#000000" |
255 | + height="18" |
256 | + width="18" |
257 | + y="80.063034" |
258 | + x="47" |
259 | + id="AB01" /> |
260 | + <rect |
261 | + style="fill:#e5d8b2;stroke:#000000" |
262 | + height="18" |
263 | + width="18" |
264 | + y="23.063038" |
265 | + x="40" |
266 | + id="AE02" /> |
267 | + <rect |
268 | + style="fill:#e5d8b2;stroke:#000000" |
269 | + height="18" |
270 | + width="18" |
271 | + y="23.063038" |
272 | + x="59" |
273 | + id="AE03" /> |
274 | + <rect |
275 | + style="fill:#e5d8b2;stroke:#000000" |
276 | + height="18" |
277 | + width="18" |
278 | + y="42.063038" |
279 | + x="183" |
280 | + id="AD09" /> |
281 | + <rect |
282 | + style="fill:#e5d8b2;stroke:#000000" |
283 | + height="18" |
284 | + width="18" |
285 | + y="23.063038" |
286 | + x="21" |
287 | + id="AE01" /> |
288 | + <rect |
289 | + style="fill:#e5d8b2;stroke:#000000" |
290 | + height="18" |
291 | + width="18" |
292 | + y="23.063038" |
293 | + x="116" |
294 | + id="AE06" /> |
295 | + <rect |
296 | + style="fill:#e5d8b2;stroke:#000000" |
297 | + height="18" |
298 | + width="18" |
299 | + y="23.063038" |
300 | + x="135" |
301 | + id="AE07" /> |
302 | + <rect |
303 | + style="fill:#e5d8b2;stroke:#000000" |
304 | + height="18" |
305 | + width="18" |
306 | + y="23.063038" |
307 | + x="78" |
308 | + id="AE04" /> |
309 | + <rect |
310 | + style="fill:#e5d8b2;stroke:#000000" |
311 | + height="18" |
312 | + width="18" |
313 | + y="23.063038" |
314 | + x="97" |
315 | + id="AE05" /> |
316 | + <rect |
317 | + style="fill:#e5d8b2;stroke:#000000" |
318 | + height="18" |
319 | + width="18" |
320 | + y="42.063038" |
321 | + x="69" |
322 | + id="AD03" /> |
323 | + <rect |
324 | + style="fill:#e5d8b2;stroke:#000000" |
325 | + height="18" |
326 | + width="18" |
327 | + y="42.063038" |
328 | + x="50" |
329 | + id="AD02" /> |
330 | + <rect |
331 | + style="fill:#e5d8b2;stroke:#000000" |
332 | + height="18" |
333 | + width="18" |
334 | + y="42.063038" |
335 | + x="31" |
336 | + id="AD01" /> |
337 | + <rect |
338 | + style="fill:#e5d8b2;stroke:#000000" |
339 | + height="18" |
340 | + width="18" |
341 | + y="23.063038" |
342 | + x="173" |
343 | + id="AE09" /> |
344 | + <rect |
345 | + style="fill:#e5d8b2;stroke:#000000" |
346 | + height="18" |
347 | + width="18" |
348 | + y="42.063038" |
349 | + x="145" |
350 | + id="AD07" /> |
351 | + <rect |
352 | + style="fill:#e5d8b2;stroke:#000000" |
353 | + height="18" |
354 | + width="18" |
355 | + y="42.063038" |
356 | + x="126" |
357 | + id="AD06" /> |
358 | + <rect |
359 | + style="fill:#e5d8b2;stroke:#000000" |
360 | + height="18" |
361 | + width="18" |
362 | + y="42.063038" |
363 | + x="107" |
364 | + id="AD05" /> |
365 | + <rect |
366 | + style="fill:#e5d8b2;stroke:#000000" |
367 | + height="18" |
368 | + width="18" |
369 | + y="42.063038" |
370 | + x="88" |
371 | + id="AD04" /> |
372 | + <rect |
373 | + style="fill:#e5d8b2;stroke:#000000" |
374 | + height="18" |
375 | + width="18" |
376 | + y="80.063034" |
377 | + x="218" |
378 | + id="AB10" /> |
379 | + <rect |
380 | + style="fill:#e5d8b2;stroke:#000000" |
381 | + height="18" |
382 | + width="18" |
383 | + y="61.063038" |
384 | + x="226" |
385 | + id="AC11" /> |
386 | + <rect |
387 | + style="fill:#e5d8b2;stroke:#000000" |
388 | + height="18" |
389 | + width="18" |
390 | + y="61.063038" |
391 | + x="207" |
392 | + id="AC10" /> |
393 | + <rect |
394 | + style="fill:#f2e5d8;stroke:#000000" |
395 | + height="18" |
396 | + width="23" |
397 | + y="99.063034" |
398 | + x="264" |
399 | + id="RCTL" /> |
400 | + <rect |
401 | + style="fill:#f2e5d8;stroke:#000000" |
402 | + height="18" |
403 | + width="27" |
404 | + y="99.063034" |
405 | + x="2" |
406 | + id="LCTL" /> |
407 | + <rect |
408 | + style="fill:#d8cca5;stroke:#000000" |
409 | + height="18" |
410 | + width="28" |
411 | + y="42.063038" |
412 | + x="2" |
413 | + id="TAB" /> |
414 | + <rect |
415 | + style="fill:#f2e5d8;stroke:#000000" |
416 | + height="18" |
417 | + width="23" |
418 | + y="99.063034" |
419 | + x="54" |
420 | + id="LALT" /> |
421 | + <rect |
422 | + style="fill:#e5d8b2;stroke:#000000" |
423 | + height="18" |
424 | + width="18" |
425 | + y="23.063038" |
426 | + x="2" |
427 | + id="TLDE" /> |
428 | + <rect |
429 | + style="fill:#e5d8b2;stroke:#000000" |
430 | + height="18" |
431 | + width="18" |
432 | + y="80.063034" |
433 | + x="28" |
434 | + id="LSGT" /> |
435 | + <rect |
436 | + style="fill:#f2e5d8;stroke:#000000" |
437 | + height="18" |
438 | + width="25" |
439 | + y="80.063034" |
440 | + x="2" |
441 | + id="LFSH" /> |
442 | + <rect |
443 | + style="fill:#d8cca5;stroke:#000000" |
444 | + height="18" |
445 | + width="38" |
446 | + y="23.063038" |
447 | + x="249" |
448 | + id="BKSP" /> |
449 | + <rect |
450 | + style="fill:#f2e5d8;stroke:#000000" |
451 | + height="18" |
452 | + width="33" |
453 | + y="61.063038" |
454 | + x="2" |
455 | + id="CAPS" /> |
456 | + <rect |
457 | + style="fill:#e5d8b2;stroke:#000000" |
458 | + height="18" |
459 | + width="28" |
460 | + y="42.063038" |
461 | + x="259" |
462 | + id="BKSL" /> |
463 | + <rect |
464 | + style="fill:#d8cca5;stroke:#000000" |
465 | + height="18" |
466 | + width="42" |
467 | + y="61.063038" |
468 | + x="245" |
469 | + id="RTRN" /> |
470 | + <rect |
471 | + style="fill:#d8cca5;stroke:#000000" |
472 | + height="18" |
473 | + width="23" |
474 | + y="99.063034" |
475 | + x="240" |
476 | + id="MENU" /> |
477 | + <rect |
478 | + style="fill:#e5d8b2;stroke:#000000" |
479 | + height="18" |
480 | + width="18" |
481 | + y="42.063038" |
482 | + x="202" |
483 | + id="AD10" /> |
484 | + <rect |
485 | + style="fill:#e5d8b2;stroke:#000000" |
486 | + height="18" |
487 | + width="18" |
488 | + y="42.063038" |
489 | + x="221" |
490 | + id="AD11" /> |
491 | + <rect |
492 | + style="fill:#e5d8b2;stroke:#000000" |
493 | + height="18" |
494 | + width="18" |
495 | + y="42.063038" |
496 | + x="240" |
497 | + id="AD12" /> |
498 | + <rect |
499 | + style="fill:#e5d8b2;stroke:#000000" |
500 | + height="18" |
501 | + width="18" |
502 | + y="80.063034" |
503 | + x="180" |
504 | + id="AB08" /> |
505 | + <rect |
506 | + style="fill:#e5d8b2;stroke:#000000" |
507 | + height="18" |
508 | + width="18" |
509 | + y="23.063038" |
510 | + x="211" |
511 | + id="AE11" /> |
512 | + <rect |
513 | + style="fill:#e5d8b2;stroke:#000000" |
514 | + height="18" |
515 | + width="18" |
516 | + y="23.063038" |
517 | + x="192" |
518 | + id="AE10" /> |
519 | + <rect |
520 | + style="fill:#e5d8b2;stroke:#000000" |
521 | + height="18" |
522 | + width="18" |
523 | + y="23.063038" |
524 | + x="230" |
525 | + id="AE12" /> |
526 | + <rect |
527 | + style="fill:#e5d8b2;stroke:#000000" |
528 | + height="18" |
529 | + width="18" |
530 | + y="61.063038" |
531 | + x="93" |
532 | + id="AC04" /> |
533 | + <rect |
534 | + style="fill:#e5d8b2;stroke:#000000" |
535 | + height="18" |
536 | + width="18" |
537 | + y="61.063038" |
538 | + x="112" |
539 | + id="AC05" /> |
540 | + <rect |
541 | + style="fill:#e5d8b2;stroke:#000000" |
542 | + height="18" |
543 | + width="18" |
544 | + y="61.063038" |
545 | + x="131" |
546 | + id="AC06" /> |
547 | + <rect |
548 | + style="fill:#e5d8b2;stroke:#000000" |
549 | + height="18" |
550 | + width="18" |
551 | + y="61.063038" |
552 | + x="150" |
553 | + id="AC07" /> |
554 | + <rect |
555 | + style="fill:#e5d8b2;stroke:#000000" |
556 | + height="18" |
557 | + width="18" |
558 | + y="80.063034" |
559 | + x="199" |
560 | + id="AB09" /> |
561 | + <rect |
562 | + style="fill:#e5d8b2;stroke:#000000" |
563 | + height="18" |
564 | + width="18" |
565 | + y="61.063038" |
566 | + x="36" |
567 | + id="AC01" /> |
568 | + <rect |
569 | + style="fill:#e5d8b2;stroke:#000000" |
570 | + height="18" |
571 | + width="18" |
572 | + y="61.063038" |
573 | + x="55" |
574 | + id="AC02" /> |
575 | + <rect |
576 | + style="fill:#e5d8b2;stroke:#000000" |
577 | + height="18" |
578 | + width="18" |
579 | + y="61.063038" |
580 | + x="74" |
581 | + id="AC03" /> |
582 | + <rect |
583 | + style="fill:#e5d8b2;stroke:#000000" |
584 | + height="18" |
585 | + width="18" |
586 | + y="80.063034" |
587 | + x="123" |
588 | + id="AB05" /> |
589 | + <rect |
590 | + style="fill:#e5d8b2;stroke:#000000" |
591 | + height="18" |
592 | + width="18" |
593 | + y="80.063034" |
594 | + x="104" |
595 | + id="AB04" /> |
596 | + <rect |
597 | + style="fill:#e5d8b2;stroke:#000000" |
598 | + height="18" |
599 | + width="18" |
600 | + y="23.063038" |
601 | + x="154" |
602 | + id="AE08" /> |
603 | + <rect |
604 | + style="fill:#e5d8b2;stroke:#000000" |
605 | + height="18" |
606 | + width="18" |
607 | + y="80.063034" |
608 | + x="142" |
609 | + id="AB06" /> |
610 | + <rect |
611 | + style="fill:#e5d8b2;stroke:#000000" |
612 | + height="18" |
613 | + width="18" |
614 | + y="61.063038" |
615 | + x="169" |
616 | + id="AC08" /> |
617 | + <rect |
618 | + style="fill:#e5d8b2;stroke:#000000" |
619 | + height="18" |
620 | + width="18" |
621 | + y="61.063038" |
622 | + x="188" |
623 | + id="AC09" /> |
624 | + <rect |
625 | + style="fill:#e5d8b2;stroke:#000000" |
626 | + height="18" |
627 | + width="18" |
628 | + y="80.063034" |
629 | + x="85" |
630 | + id="AB03" /> |
631 | + <rect |
632 | + style="fill:#e5d8b2;stroke:#000000" |
633 | + height="18" |
634 | + width="18" |
635 | + y="80.063034" |
636 | + x="66" |
637 | + id="AB02" /> |
638 | + <rect |
639 | + style="fill:#e5d8b2;stroke:#000000" |
640 | + height="18" |
641 | + width="18" |
642 | + y="42.063038" |
643 | + x="164" |
644 | + id="AD08" /> |
645 | + <rect |
646 | + style="fill:#d8cca5;stroke:#000000" |
647 | + height="18" |
648 | + width="23" |
649 | + y="99.063034" |
650 | + x="216" |
651 | + id="RWIN" /> |
652 | + <rect |
653 | + style="fill:#e5d8b2;stroke:#000000" |
654 | + height="18" |
655 | + width="113" |
656 | + y="99.063034" |
657 | + x="78" |
658 | + id="SPCE" /> |
659 | + <rect |
660 | + style="fill:#f2e5d8;stroke:#000000" |
661 | + height="18" |
662 | + width="50" |
663 | + y="80.063034" |
664 | + x="237" |
665 | + id="RTSH" /> |
666 | + <rect |
667 | + style="fill:#f2e5d8;stroke:#000000" |
668 | + height="18" |
669 | + width="23" |
670 | + y="99.063034" |
671 | + x="30" |
672 | + id="LWIN" /> |
673 | + <rect |
674 | + style="fill:#e5d8b2;stroke:#000000" |
675 | + height="18" |
676 | + width="18" |
677 | + y="80.063034" |
678 | + x="161" |
679 | + id="AB07" /> |
680 | + <rect |
681 | + style="fill:#d8cca5;stroke:#000000" |
682 | + height="18" |
683 | + width="18" |
684 | + y="98.982155" |
685 | + x="311.66177" |
686 | + id="DOWN" /> |
687 | + <rect |
688 | + style="fill:#d8cca5;stroke:#000000" |
689 | + height="18" |
690 | + width="18" |
691 | + y="22.982155" |
692 | + x="330.66177" |
693 | + id="PGUP" /> |
694 | + <rect |
695 | + style="fill:#d8cca5;stroke:#000000" |
696 | + height="18" |
697 | + width="18" |
698 | + y="22.982155" |
699 | + x="311.66177" |
700 | + id="HOME" /> |
701 | + <rect |
702 | + style="fill:#d8cca5;stroke:#000000" |
703 | + height="18" |
704 | + width="18" |
705 | + y="98.982155" |
706 | + x="292.66177" |
707 | + id="LEFT" /> |
708 | + <rect |
709 | + style="fill:#d8cca5;stroke:#000000" |
710 | + height="18" |
711 | + width="18" |
712 | + y="98.982155" |
713 | + x="330.66177" |
714 | + id="RGHT" /> |
715 | + <rect |
716 | + style="fill:#d8cca5;stroke:#000000" |
717 | + height="18" |
718 | + width="18" |
719 | + y="41.982155" |
720 | + x="292.66177" |
721 | + id="DELE" /> |
722 | + <rect |
723 | + style="fill:#d8cca5;stroke:#000000" |
724 | + height="18" |
725 | + width="18" |
726 | + y="41.982155" |
727 | + x="311.66177" |
728 | + id="END" /> |
729 | + <rect |
730 | + style="fill:#d8cca5;stroke:#000000" |
731 | + height="18" |
732 | + width="18" |
733 | + y="41.982155" |
734 | + x="330.66177" |
735 | + id="PGDN" /> |
736 | + <rect |
737 | + style="fill:#d8cca5;stroke:#000000" |
738 | + height="18" |
739 | + width="18" |
740 | + y="79.982155" |
741 | + x="311.66177" |
742 | + id="UP" /> |
743 | + <rect |
744 | + style="fill:#d8cca5;stroke:#000000" |
745 | + height="18" |
746 | + width="18" |
747 | + y="22.982155" |
748 | + x="292.66177" |
749 | + id="INS" /> |
750 | + <rect |
751 | + style="fill:#d8cca5;stroke:#000000" |
752 | + height="18" |
753 | + width="18" |
754 | + y="1.3677174" |
755 | + x="192.29951" |
756 | + id="F10" /> |
757 | + <rect |
758 | + style="fill:#d8cca5;stroke:#000000" |
759 | + height="18" |
760 | + width="18" |
761 | + y="1.3677174" |
762 | + x="59.299507" |
763 | + id="F3" /> |
764 | + <rect |
765 | + style="fill:#d8cca5;stroke:#000000" |
766 | + height="18" |
767 | + width="18" |
768 | + y="1.3677174" |
769 | + x="40.299507" |
770 | + id="F2" /> |
771 | + <rect |
772 | + style="fill:#d8cca5;stroke:#000000" |
773 | + height="18" |
774 | + width="18" |
775 | + y="1.3677174" |
776 | + x="2.2995079" |
777 | + id="ESC" /> |
778 | + <rect |
779 | + style="fill:#d8cca5;stroke:#000000" |
780 | + height="18" |
781 | + width="18" |
782 | + y="1.3677174" |
783 | + x="230.29951" |
784 | + id="F12" /> |
785 | + <rect |
786 | + style="fill:#d8cca5;stroke:#000000" |
787 | + height="18" |
788 | + width="18" |
789 | + y="1.3677174" |
790 | + x="211.29951" |
791 | + id="F11" /> |
792 | + <rect |
793 | + style="fill:#d8cca5;stroke:#000000" |
794 | + height="18" |
795 | + width="18" |
796 | + y="1.3677174" |
797 | + x="173.29951" |
798 | + id="F9" /> |
799 | + <rect |
800 | + style="fill:#d8cca5;stroke:#000000" |
801 | + height="18" |
802 | + width="18" |
803 | + y="1.3677174" |
804 | + x="116.29951" |
805 | + id="F6" /> |
806 | + <rect |
807 | + style="fill:#d8cca5;stroke:#000000" |
808 | + height="18" |
809 | + width="18" |
810 | + y="1.3677174" |
811 | + x="135.29951" |
812 | + id="F7" /> |
813 | + <rect |
814 | + style="fill:#d8cca5;stroke:#000000" |
815 | + height="18" |
816 | + width="18" |
817 | + y="1.3677174" |
818 | + x="21.299507" |
819 | + id="F1" /> |
820 | + <rect |
821 | + style="fill:#d8cca5;stroke:#000000" |
822 | + height="18" |
823 | + width="18" |
824 | + y="1.3677174" |
825 | + x="78.299507" |
826 | + id="F4" /> |
827 | + <rect |
828 | + style="fill:#d8cca5;stroke:#000000" |
829 | + height="18" |
830 | + width="18" |
831 | + y="1.3677174" |
832 | + x="154.29951" |
833 | + id="F8" /> |
834 | + <rect |
835 | + style="fill:#d8cca5;stroke:#000000" |
836 | + height="18" |
837 | + width="18" |
838 | + y="1.3677174" |
839 | + x="97.299507" |
840 | + id="F5" /> |
841 | + <rect |
842 | + style="fill:#d8cca5;stroke:#000000" |
843 | + height="18" |
844 | + width="18" |
845 | + y="1.3655807" |
846 | + x="330.70572" |
847 | + id="Pause" /> |
848 | + <rect |
849 | + style="fill:#d8cca5;stroke:#000000" |
850 | + height="18" |
851 | + width="18" |
852 | + y="1.3677174" |
853 | + x="292.70569" |
854 | + id="Prnt" /> |
855 | + <rect |
856 | + style="fill:#d8cca5;stroke:#000000" |
857 | + height="18" |
858 | + width="18" |
859 | + y="1.3655807" |
860 | + x="311.70572" |
861 | + id="Scroll" /> |
862 | + <rect |
863 | + style="fill:#f27f7f;stroke:#000000" |
864 | + height="18" |
865 | + width="32.799999" |
866 | + y="1.3677174" |
867 | + x="254.2" |
868 | + id="settings" /> |
869 | +</svg> |
870 | |
871 | === added file 'layouts/Full-Dark-Alpha.svg' |
872 | --- layouts/Full-Dark-Alpha.svg 1970-01-01 00:00:00 +0000 |
873 | +++ layouts/Full-Dark-Alpha.svg 2009-09-27 08:05:22 +0000 |
874 | @@ -0,0 +1,635 @@ |
875 | +<?xml version='1.0' encoding='UTF-8'?> |
876 | +<!-- Created with onBoard --> |
877 | +<svg xmlns:cc='http://web.resource.org/cc/' |
878 | + xmlns:svg='http://www.w3.org/2000/svg' |
879 | + xmlns:dc='http://purl.org/dc/elements/1.1/' |
880 | + xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#' |
881 | + xmlns='http://www.w3.org/2000/svg' |
882 | + height='118.0' |
883 | + width='350.0' |
884 | + version='1.0' |
885 | + id='svg2'> |
886 | + <rect |
887 | + style="fill:#403020;stroke:#7f7f7f" |
888 | + height="18" |
889 | + width="23" |
890 | + y="99.063034" |
891 | + x="192" |
892 | + id="RALT" /> |
893 | + <rect |
894 | + style="fill:#505001;stroke:#7f7f7f" |
895 | + height="18" |
896 | + width="18" |
897 | + y="80.063034" |
898 | + x="47" |
899 | + id="AB01" /> |
900 | + <rect |
901 | + style="fill:#505001;stroke:#7f7f7f" |
902 | + height="18" |
903 | + width="18" |
904 | + y="23.063038" |
905 | + x="40" |
906 | + id="AE02" /> |
907 | + <rect |
908 | + style="fill:#505001;stroke:#7f7f7f" |
909 | + height="18" |
910 | + width="18" |
911 | + y="23.063038" |
912 | + x="59" |
913 | + id="AE03" /> |
914 | + <rect |
915 | + style="fill:#505001;stroke:#7f7f7f" |
916 | + height="18" |
917 | + width="18" |
918 | + y="42.063038" |
919 | + x="183" |
920 | + id="AD09" /> |
921 | + <rect |
922 | + style="fill:#505001;stroke:#7f7f7f" |
923 | + height="18" |
924 | + width="18" |
925 | + y="23.063038" |
926 | + x="21" |
927 | + id="AE01" /> |
928 | + <rect |
929 | + style="fill:#505001;stroke:#7f7f7f" |
930 | + height="18" |
931 | + width="18" |
932 | + y="23.063038" |
933 | + x="116" |
934 | + id="AE06" /> |
935 | + <rect |
936 | + style="fill:#505001;stroke:#7f7f7f" |
937 | + height="18" |
938 | + width="18" |
939 | + y="23.063038" |
940 | + x="135" |
941 | + id="AE07" /> |
942 | + <rect |
943 | + style="fill:#505001;stroke:#7f7f7f" |
944 | + height="18" |
945 | + width="18" |
946 | + y="23.063038" |
947 | + x="78" |
948 | + id="AE04" /> |
949 | + <rect |
950 | + style="fill:#505001;stroke:#7f7f7f" |
951 | + height="18" |
952 | + width="18" |
953 | + y="23.063038" |
954 | + x="97" |
955 | + id="AE05" /> |
956 | + <rect |
957 | + style="fill:#505001;stroke:#7f7f7f" |
958 | + height="18" |
959 | + width="18" |
960 | + y="42.063038" |
961 | + x="69" |
962 | + id="AD03" /> |
963 | + <rect |
964 | + style="fill:#505001;stroke:#7f7f7f" |
965 | + height="18" |
966 | + width="18" |
967 | + y="42.063038" |
968 | + x="50" |
969 | + id="AD02" /> |
970 | + <rect |
971 | + style="fill:#505001;stroke:#7f7f7f" |
972 | + height="18" |
973 | + width="18" |
974 | + y="42.063038" |
975 | + x="31" |
976 | + id="AD01" /> |
977 | + <rect |
978 | + style="fill:#505001;stroke:#7f7f7f" |
979 | + height="18" |
980 | + width="18" |
981 | + y="23.063038" |
982 | + x="173" |
983 | + id="AE09" /> |
984 | + <rect |
985 | + style="fill:#505001;stroke:#7f7f7f" |
986 | + height="18" |
987 | + width="18" |
988 | + y="42.063038" |
989 | + x="145" |
990 | + id="AD07" /> |
991 | + <rect |
992 | + style="fill:#505001;stroke:#7f7f7f" |
993 | + height="18" |
994 | + width="18" |
995 | + y="42.063038" |
996 | + x="126" |
997 | + id="AD06" /> |
998 | + <rect |
999 | + style="fill:#505001;stroke:#7f7f7f" |
1000 | + height="18" |
1001 | + width="18" |
1002 | + y="42.063038" |
1003 | + x="107" |
1004 | + id="AD05" /> |
1005 | + <rect |
1006 | + style="fill:#505001;stroke:#7f7f7f" |
1007 | + height="18" |
1008 | + width="18" |
1009 | + y="42.063038" |
1010 | + x="88" |
1011 | + id="AD04" /> |
1012 | + <rect |
1013 | + style="fill:#505001;stroke:#7f7f7f" |
1014 | + height="18" |
1015 | + width="18" |
1016 | + y="80.063034" |
1017 | + x="218" |
1018 | + id="AB10" /> |
1019 | + <rect |
1020 | + style="fill:#505001;stroke:#7f7f7f" |
1021 | + height="18" |
1022 | + width="18" |
1023 | + y="61.063038" |
1024 | + x="226" |
1025 | + id="AC11" /> |
1026 | + <rect |
1027 | + style="fill:#505001;stroke:#7f7f7f" |
1028 | + height="18" |
1029 | + width="18" |
1030 | + y="61.063038" |
1031 | + x="207" |
1032 | + id="AC10" /> |
1033 | + <rect |
1034 | + style="fill:#403020;stroke:#7f7f7f" |
1035 | + height="18" |
1036 | + width="23" |
1037 | + y="99.063034" |
1038 | + x="264" |
1039 | + id="RCTL" /> |
1040 | + <rect |
1041 | + style="fill:#403020;stroke:#7f7f7f" |
1042 | + height="18" |
1043 | + width="27" |
1044 | + y="99.063034" |
1045 | + x="2" |
1046 | + id="LCTL" /> |
1047 | + <rect |
1048 | + style="fill:#404031;stroke:#7f7f7f" |
1049 | + height="18" |
1050 | + width="28" |
1051 | + y="42.063038" |
1052 | + x="2" |
1053 | + id="TAB" /> |
1054 | + <rect |
1055 | + style="fill:#403020;stroke:#7f7f7f" |
1056 | + height="18" |
1057 | + width="23" |
1058 | + y="99.063034" |
1059 | + x="54" |
1060 | + id="LALT" /> |
1061 | + <rect |
1062 | + style="fill:#505001;stroke:#7f7f7f" |
1063 | + height="18" |
1064 | + width="18" |
1065 | + y="23.063038" |
1066 | + x="2" |
1067 | + id="TLDE" /> |
1068 | + <rect |
1069 | + style="fill:#505001;stroke:#7f7f7f" |
1070 | + height="18" |
1071 | + width="18" |
1072 | + y="80.063034" |
1073 | + x="28" |
1074 | + id="LSGT" /> |
1075 | + <rect |
1076 | + style="fill:#403020;stroke:#7f7f7f" |
1077 | + height="18" |
1078 | + width="25" |
1079 | + y="80.063034" |
1080 | + x="2" |
1081 | + id="LFSH" /> |
1082 | + <rect |
1083 | + style="fill:#404031;stroke:#7f7f7f" |
1084 | + height="18" |
1085 | + width="38" |
1086 | + y="23.063038" |
1087 | + x="249" |
1088 | + id="BKSP" /> |
1089 | + <rect |
1090 | + style="fill:#403020;stroke:#7f7f7f" |
1091 | + height="18" |
1092 | + width="33" |
1093 | + y="61.063038" |
1094 | + x="2" |
1095 | + id="CAPS" /> |
1096 | + <rect |
1097 | + style="fill:#505001;stroke:#7f7f7f" |
1098 | + height="18" |
1099 | + width="28" |
1100 | + y="42.063038" |
1101 | + x="259" |
1102 | + id="BKSL" /> |
1103 | + <rect |
1104 | + style="fill:#404031;stroke:#7f7f7f" |
1105 | + height="18" |
1106 | + width="42" |
1107 | + y="61.063038" |
1108 | + x="245" |
1109 | + id="RTRN" /> |
1110 | + <rect |
1111 | + style="fill:#404031;stroke:#7f7f7f" |
1112 | + height="18" |
1113 | + width="23" |
1114 | + y="99.063034" |
1115 | + x="240" |
1116 | + id="MENU" /> |
1117 | + <rect |
1118 | + style="fill:#505001;stroke:#7f7f7f" |
1119 | + height="18" |
1120 | + width="18" |
1121 | + y="42.063038" |
1122 | + x="202" |
1123 | + id="AD10" /> |
1124 | + <rect |
1125 | + style="fill:#505001;stroke:#7f7f7f" |
1126 | + height="18" |
1127 | + width="18" |
1128 | + y="42.063038" |
1129 | + x="221" |
1130 | + id="AD11" /> |
1131 | + <rect |
1132 | + style="fill:#505001;stroke:#7f7f7f" |
1133 | + height="18" |
1134 | + width="18" |
1135 | + y="42.063038" |
1136 | + x="240" |
1137 | + id="AD12" /> |
1138 | + <rect |
1139 | + style="fill:#505001;stroke:#7f7f7f" |
1140 | + height="18" |
1141 | + width="18" |
1142 | + y="80.063034" |
1143 | + x="180" |
1144 | + id="AB08" /> |
1145 | + <rect |
1146 | + style="fill:#505001;stroke:#7f7f7f" |
1147 | + height="18" |
1148 | + width="18" |
1149 | + y="23.063038" |
1150 | + x="211" |
1151 | + id="AE11" /> |
1152 | + <rect |
1153 | + style="fill:#505001;stroke:#7f7f7f" |
1154 | + height="18" |
1155 | + width="18" |
1156 | + y="23.063038" |
1157 | + x="192" |
1158 | + id="AE10" /> |
1159 | + <rect |
1160 | + style="fill:#505001;stroke:#7f7f7f" |
1161 | + height="18" |
1162 | + width="18" |
1163 | + y="23.063038" |
1164 | + x="230" |
1165 | + id="AE12" /> |
1166 | + <rect |
1167 | + style="fill:#505001;stroke:#7f7f7f" |
1168 | + height="18" |
1169 | + width="18" |
1170 | + y="61.063038" |
1171 | + x="93" |
1172 | + id="AC04" /> |
1173 | + <rect |
1174 | + style="fill:#505001;stroke:#7f7f7f" |
1175 | + height="18" |
1176 | + width="18" |
1177 | + y="61.063038" |
1178 | + x="112" |
1179 | + id="AC05" /> |
1180 | + <rect |
1181 | + style="fill:#505001;stroke:#7f7f7f" |
1182 | + height="18" |
1183 | + width="18" |
1184 | + y="61.063038" |
1185 | + x="131" |
1186 | + id="AC06" /> |
1187 | + <rect |
1188 | + style="fill:#505001;stroke:#7f7f7f" |
1189 | + height="18" |
1190 | + width="18" |
1191 | + y="61.063038" |
1192 | + x="150" |
1193 | + id="AC07" /> |
1194 | + <rect |
1195 | + style="fill:#505001;stroke:#7f7f7f" |
1196 | + height="18" |
1197 | + width="18" |
1198 | + y="80.063034" |
1199 | + x="199" |
1200 | + id="AB09" /> |
1201 | + <rect |
1202 | + style="fill:#505001;stroke:#7f7f7f" |
1203 | + height="18" |
1204 | + width="18" |
1205 | + y="61.063038" |
1206 | + x="36" |
1207 | + id="AC01" /> |
1208 | + <rect |
1209 | + style="fill:#505001;stroke:#7f7f7f" |
1210 | + height="18" |
1211 | + width="18" |
1212 | + y="61.063038" |
1213 | + x="55" |
1214 | + id="AC02" /> |
1215 | + <rect |
1216 | + style="fill:#505001;stroke:#7f7f7f" |
1217 | + height="18" |
1218 | + width="18" |
1219 | + y="61.063038" |
1220 | + x="74" |
1221 | + id="AC03" /> |
1222 | + <rect |
1223 | + style="fill:#505001;stroke:#7f7f7f" |
1224 | + height="18" |
1225 | + width="18" |
1226 | + y="80.063034" |
1227 | + x="123" |
1228 | + id="AB05" /> |
1229 | + <rect |
1230 | + style="fill:#505001;stroke:#7f7f7f" |
1231 | + height="18" |
1232 | + width="18" |
1233 | + y="80.063034" |
1234 | + x="104" |
1235 | + id="AB04" /> |
1236 | + <rect |
1237 | + style="fill:#505001;stroke:#7f7f7f" |
1238 | + height="18" |
1239 | + width="18" |
1240 | + y="23.063038" |
1241 | + x="154" |
1242 | + id="AE08" /> |
1243 | + <rect |
1244 | + style="fill:#505001;stroke:#7f7f7f" |
1245 | + height="18" |
1246 | + width="18" |
1247 | + y="80.063034" |
1248 | + x="142" |
1249 | + id="AB06" /> |
1250 | + <rect |
1251 | + style="fill:#505001;stroke:#7f7f7f" |
1252 | + height="18" |
1253 | + width="18" |
1254 | + y="61.063038" |
1255 | + x="169" |
1256 | + id="AC08" /> |
1257 | + <rect |
1258 | + style="fill:#505001;stroke:#7f7f7f" |
1259 | + height="18" |
1260 | + width="18" |
1261 | + y="61.063038" |
1262 | + x="188" |
1263 | + id="AC09" /> |
1264 | + <rect |
1265 | + style="fill:#505001;stroke:#7f7f7f" |
1266 | + height="18" |
1267 | + width="18" |
1268 | + y="80.063034" |
1269 | + x="85" |
1270 | + id="AB03" /> |
1271 | + <rect |
1272 | + style="fill:#505001;stroke:#7f7f7f" |
1273 | + height="18" |
1274 | + width="18" |
1275 | + y="80.063034" |
1276 | + x="66" |
1277 | + id="AB02" /> |
1278 | + <rect |
1279 | + style="fill:#505001;stroke:#7f7f7f" |
1280 | + height="18" |
1281 | + width="18" |
1282 | + y="42.063038" |
1283 | + x="164" |
1284 | + id="AD08" /> |
1285 | + <rect |
1286 | + style="fill:#404031;stroke:#7f7f7f" |
1287 | + height="18" |
1288 | + width="23" |
1289 | + y="99.063034" |
1290 | + x="216" |
1291 | + id="RWIN" /> |
1292 | + <rect |
1293 | + style="fill:#505001;stroke:#7f7f7f" |
1294 | + height="18" |
1295 | + width="113" |
1296 | + y="99.063034" |
1297 | + x="78" |
1298 | + id="SPCE" /> |
1299 | + <rect |
1300 | + style="fill:#403020;stroke:#7f7f7f" |
1301 | + height="18" |
1302 | + width="50" |
1303 | + y="80.063034" |
1304 | + x="237" |
1305 | + id="RTSH" /> |
1306 | + <rect |
1307 | + style="fill:#403020;stroke:#7f7f7f" |
1308 | + height="18" |
1309 | + width="23" |
1310 | + y="99.063034" |
1311 | + x="30" |
1312 | + id="LWIN" /> |
1313 | + <rect |
1314 | + style="fill:#505001;stroke:#7f7f7f" |
1315 | + height="18" |
1316 | + width="18" |
1317 | + y="80.063034" |
1318 | + x="161" |
1319 | + id="AB07" /> |
1320 | + <rect |
1321 | + style="fill:#404031;stroke:#7f7f7f" |
1322 | + height="18" |
1323 | + width="18" |
1324 | + y="98.982155" |
1325 | + x="311.66177" |
1326 | + id="DOWN" /> |
1327 | + <rect |
1328 | + style="fill:#404031;stroke:#7f7f7f" |
1329 | + height="18" |
1330 | + width="18" |
1331 | + y="22.982155" |
1332 | + x="330.66177" |
1333 | + id="PGUP" /> |
1334 | + <rect |
1335 | + style="fill:#404031;stroke:#7f7f7f" |
1336 | + height="18" |
1337 | + width="18" |
1338 | + y="22.982155" |
1339 | + x="311.66177" |
1340 | + id="HOME" /> |
1341 | + <rect |
1342 | + style="fill:#404031;stroke:#7f7f7f" |
1343 | + height="18" |
1344 | + width="18" |
1345 | + y="98.982155" |
1346 | + x="292.66177" |
1347 | + id="LEFT" /> |
1348 | + <rect |
1349 | + style="fill:#404031;stroke:#7f7f7f" |
1350 | + height="18" |
1351 | + width="18" |
1352 | + y="98.982155" |
1353 | + x="330.66177" |
1354 | + id="RGHT" /> |
1355 | + <rect |
1356 | + style="fill:#404031;stroke:#7f7f7f" |
1357 | + height="18" |
1358 | + width="18" |
1359 | + y="41.982155" |
1360 | + x="292.66177" |
1361 | + id="DELE" /> |
1362 | + <rect |
1363 | + style="fill:#404031;stroke:#7f7f7f" |
1364 | + height="18" |
1365 | + width="18" |
1366 | + y="41.982155" |
1367 | + x="311.66177" |
1368 | + id="END" /> |
1369 | + <rect |
1370 | + style="fill:#404031;stroke:#7f7f7f" |
1371 | + height="18" |
1372 | + width="18" |
1373 | + y="41.982155" |
1374 | + x="330.66177" |
1375 | + id="PGDN" /> |
1376 | + <rect |
1377 | + style="fill:#404031;stroke:#7f7f7f" |
1378 | + height="18" |
1379 | + width="18" |
1380 | + y="79.982155" |
1381 | + x="311.66177" |
1382 | + id="UP" /> |
1383 | + <rect |
1384 | + style="fill:#404031;stroke:#7f7f7f" |
1385 | + height="18" |
1386 | + width="18" |
1387 | + y="22.982155" |
1388 | + x="292.66177" |
1389 | + id="INS" /> |
1390 | + <rect |
1391 | + style="fill:#404031;stroke:#7f7f7f" |
1392 | + height="18" |
1393 | + width="18" |
1394 | + y="1.3677174" |
1395 | + x="192.29951" |
1396 | + id="F10" /> |
1397 | + <rect |
1398 | + style="fill:#404031;stroke:#7f7f7f" |
1399 | + height="18" |
1400 | + width="18" |
1401 | + y="1.3677174" |
1402 | + x="59.299507" |
1403 | + id="F3" /> |
1404 | + <rect |
1405 | + style="fill:#404031;stroke:#7f7f7f" |
1406 | + height="18" |
1407 | + width="18" |
1408 | + y="1.3677174" |
1409 | + x="40.299507" |
1410 | + id="F2" /> |
1411 | + <rect |
1412 | + style="fill:#404031;stroke:#7f7f7f" |
1413 | + height="18" |
1414 | + width="18" |
1415 | + y="1.3677174" |
1416 | + x="2.2995079" |
1417 | + id="ESC" /> |
1418 | + <rect |
1419 | + style="fill:#404031;stroke:#7f7f7f" |
1420 | + height="18" |
1421 | + width="18" |
1422 | + y="1.3677174" |
1423 | + x="230.29951" |
1424 | + id="F12" /> |
1425 | + <rect |
1426 | + style="fill:#404031;stroke:#7f7f7f" |
1427 | + height="18" |
1428 | + width="18" |
1429 | + y="1.3677174" |
1430 | + x="211.29951" |
1431 | + id="F11" /> |
1432 | + <rect |
1433 | + style="fill:#404031;stroke:#7f7f7f" |
1434 | + height="18" |
1435 | + width="18" |
1436 | + y="1.3677174" |
1437 | + x="173.29951" |
1438 | + id="F9" /> |
1439 | + <rect |
1440 | + style="fill:#404031;stroke:#7f7f7f" |
1441 | + height="18" |
1442 | + width="18" |
1443 | + y="1.3677174" |
1444 | + x="116.29951" |
1445 | + id="F6" /> |
1446 | + <rect |
1447 | + style="fill:#404031;stroke:#7f7f7f" |
1448 | + height="18" |
1449 | + width="18" |
1450 | + y="1.3677174" |
1451 | + x="135.29951" |
1452 | + id="F7" /> |
1453 | + <rect |
1454 | + style="fill:#404031;stroke:#7f7f7f" |
1455 | + height="18" |
1456 | + width="18" |
1457 | + y="1.3677174" |
1458 | + x="21.299507" |
1459 | + id="F1" /> |
1460 | + <rect |
1461 | + style="fill:#404031;stroke:#7f7f7f" |
1462 | + height="18" |
1463 | + width="18" |
1464 | + y="1.3677174" |
1465 | + x="78.299507" |
1466 | + id="F4" /> |
1467 | + <rect |
1468 | + style="fill:#404031;stroke:#7f7f7f" |
1469 | + height="18" |
1470 | + width="18" |
1471 | + y="1.3677174" |
1472 | + x="154.29951" |
1473 | + id="F8" /> |
1474 | + <rect |
1475 | + style="fill:#404031;stroke:#7f7f7f" |
1476 | + height="18" |
1477 | + width="18" |
1478 | + y="1.3677174" |
1479 | + x="97.299507" |
1480 | + id="F5" /> |
1481 | + <rect |
1482 | + style="fill:#404031;stroke:#7f7f7f" |
1483 | + height="18" |
1484 | + width="18" |
1485 | + y="1.3655807" |
1486 | + x="330.70572" |
1487 | + id="Pause" /> |
1488 | + <rect |
1489 | + style="fill:#404031;stroke:#7f7f7f" |
1490 | + height="18" |
1491 | + width="18" |
1492 | + y="1.3677174" |
1493 | + x="292.70569" |
1494 | + id="Prnt" /> |
1495 | + <rect |
1496 | + style="fill:#404031;stroke:#7f7f7f" |
1497 | + height="18" |
1498 | + width="18" |
1499 | + y="1.3655807" |
1500 | + x="311.70572" |
1501 | + id="Scroll" /> |
1502 | + <rect |
1503 | + style="fill:#7f0000;stroke:#7f7f7f" |
1504 | + height="18" |
1505 | + width="32.799999" |
1506 | + y="1.3677174" |
1507 | + x="254.2" |
1508 | + id="settings" /> |
1509 | +</svg> |
1510 | |
1511 | === added file 'layouts/Full-Dark-Numpad.svg' |
1512 | --- layouts/Full-Dark-Numpad.svg 1970-01-01 00:00:00 +0000 |
1513 | +++ layouts/Full-Dark-Numpad.svg 2009-09-27 08:05:22 +0000 |
1514 | @@ -0,0 +1,271 @@ |
1515 | +<?xml version='1.0' encoding='UTF-8'?> |
1516 | +<!-- Created with onBoard --> |
1517 | +<svg xmlns:cc='http://web.resource.org/cc/' |
1518 | + xmlns:svg='http://www.w3.org/2000/svg' |
1519 | + xmlns:dc='http://purl.org/dc/elements/1.1/' |
1520 | + xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#' |
1521 | + xmlns='http://www.w3.org/2000/svg' |
1522 | + height='98.0' |
1523 | + width='294.0' |
1524 | + version='1.0' |
1525 | + id='svg2'> |
1526 | + <rect |
1527 | + style="fill:#404031;stroke:#7f7f7f;stroke-opacity:1;fill-opacity:1" |
1528 | + height="18.0" |
1529 | + width="18.0" |
1530 | + y="79.0" |
1531 | + x="118.0" |
1532 | + id="KPDL" /> |
1533 | + <rect |
1534 | + style="fill:#404031;stroke:#7f7f7f;fill-opacity:1;stroke-opacity:1" |
1535 | + height="18.0" |
1536 | + width="18.0" |
1537 | + y="79.0" |
1538 | + x="21.0" |
1539 | + id="DOWN" /> |
1540 | + <rect |
1541 | + style="fill:#505001;stroke:#7f7f7f;stroke-opacity:1;fill-opacity:1" |
1542 | + height="18.0" |
1543 | + width="18.0" |
1544 | + y="3.0" |
1545 | + x="137.0" |
1546 | + id="KPSU" /> |
1547 | + <rect |
1548 | + style="fill:#505001;stroke:#7f7f7f;stroke-opacity:1;fill-opacity:1" |
1549 | + height="18.0" |
1550 | + width="18.0" |
1551 | + y="3.0" |
1552 | + x="99.0" |
1553 | + id="KPDV" /> |
1554 | + <rect |
1555 | + style="fill:#404031;stroke:#7f7f7f;fill-opacity:1;stroke-opacity:1" |
1556 | + height="18.0" |
1557 | + width="18.0" |
1558 | + y="3.0" |
1559 | + x="40.0" |
1560 | + id="PGUP" /> |
1561 | + <rect |
1562 | + style="fill:#505001;stroke:#7f7f7f;stroke-opacity:1;fill-opacity:1" |
1563 | + height="18.0" |
1564 | + width="37.0" |
1565 | + y="79.0" |
1566 | + x="80.0" |
1567 | + id="KP0" /> |
1568 | + <rect |
1569 | + style="fill:#505001;stroke:#7f7f7f;stroke-opacity:1;fill-opacity:1" |
1570 | + height="18.0" |
1571 | + width="18.0" |
1572 | + y="60.0" |
1573 | + x="80.0" |
1574 | + id="KP1" /> |
1575 | + <rect |
1576 | + style="fill:#505001;stroke:#7f7f7f;stroke-opacity:1;fill-opacity:1" |
1577 | + height="18.0" |
1578 | + width="18.0" |
1579 | + y="60.0" |
1580 | + x="99.0" |
1581 | + id="KP2" /> |
1582 | + <rect |
1583 | + style="fill:#505001;stroke:#7f7f7f;stroke-opacity:1;fill-opacity:1" |
1584 | + height="18.0" |
1585 | + width="18.0" |
1586 | + y="60.0" |
1587 | + x="118.0" |
1588 | + id="KP3" /> |
1589 | + <rect |
1590 | + style="fill:#505001;stroke:#7f7f7f;stroke-opacity:1;fill-opacity:1" |
1591 | + height="18.0" |
1592 | + width="18.0" |
1593 | + y="41.0" |
1594 | + x="80.0" |
1595 | + id="KP4" /> |
1596 | + <rect |
1597 | + style="fill:#505001;stroke:#7f7f7f;stroke-opacity:1;fill-opacity:1" |
1598 | + height="18.0" |
1599 | + width="18.0" |
1600 | + y="41.0" |
1601 | + x="99.0" |
1602 | + id="KP5" /> |
1603 | + <rect |
1604 | + style="fill:#505001;stroke:#7f7f7f;stroke-opacity:1;fill-opacity:1" |
1605 | + height="18.0" |
1606 | + width="18.0" |
1607 | + y="41.0" |
1608 | + x="118.0" |
1609 | + id="KP6" /> |
1610 | + <rect |
1611 | + style="fill:#505001;stroke:#7f7f7f;stroke-opacity:1;fill-opacity:1" |
1612 | + height="18.0" |
1613 | + width="18.0" |
1614 | + y="22.0" |
1615 | + x="80.0" |
1616 | + id="KP7" /> |
1617 | + <rect |
1618 | + style="fill:#505001;stroke:#7f7f7f;stroke-opacity:1;fill-opacity:1" |
1619 | + height="18.0" |
1620 | + width="18.0" |
1621 | + y="22.0" |
1622 | + x="99.0" |
1623 | + id="KP8" /> |
1624 | + <rect |
1625 | + style="fill:#505001;stroke:#7f7f7f;stroke-opacity:1;fill-opacity:1" |
1626 | + height="18.0" |
1627 | + width="18.0" |
1628 | + y="22.0" |
1629 | + x="118.0" |
1630 | + id="KP9" /> |
1631 | + <rect |
1632 | + style="fill:#2b2b63;stroke:#7f7f7f;stroke-opacity:1;fill-opacity:1" |
1633 | + height="21.241886" |
1634 | + width="33.017849" |
1635 | + y="27.995533" |
1636 | + x="251.67101" |
1637 | + id="m5" /> |
1638 | + <rect |
1639 | + style="fill:#2b2b63;stroke:#7f7f7f;stroke-opacity:1;fill-opacity:1" |
1640 | + height="21.241886" |
1641 | + width="33.017849" |
1642 | + y="27.995533" |
1643 | + x="213.65045" |
1644 | + id="m4" /> |
1645 | + <rect |
1646 | + style="fill:#2b2b63;stroke:#7f7f7f;stroke-opacity:1;fill-opacity:1" |
1647 | + height="21.241886" |
1648 | + width="33.017849" |
1649 | + y="52.777733" |
1650 | + x="213.65045" |
1651 | + id="m7" /> |
1652 | + <rect |
1653 | + style="fill:#2b2b63;stroke:#7f7f7f;stroke-opacity:1;fill-opacity:1" |
1654 | + height="21.241886" |
1655 | + width="33.017849" |
1656 | + y="52.777733" |
1657 | + x="175.6299" |
1658 | + id="m6" /> |
1659 | + <rect |
1660 | + style="fill:#2b2b63;stroke:#7f7f7f;stroke-opacity:1;fill-opacity:1" |
1661 | + height="21.241886" |
1662 | + width="33.017849" |
1663 | + y="3.2133317" |
1664 | + x="213.65045" |
1665 | + id="m1" /> |
1666 | + <rect |
1667 | + style="fill:#2b2b63;stroke:#7f7f7f;stroke-opacity:1;fill-opacity:1" |
1668 | + height="21.241886" |
1669 | + width="33.017849" |
1670 | + y="3.2133317" |
1671 | + x="175.6299" |
1672 | + id="m0" /> |
1673 | + <rect |
1674 | + style="fill:#505001;stroke:#7f7f7f;stroke-opacity:1;fill-opacity:1" |
1675 | + height="37.0" |
1676 | + width="18.0" |
1677 | + y="22.0" |
1678 | + x="137.0" |
1679 | + id="KPAD" /> |
1680 | + <rect |
1681 | + style="fill:#2b2b63;stroke:#7f7f7f;stroke-opacity:1;fill-opacity:1" |
1682 | + height="21.241886" |
1683 | + width="33.017849" |
1684 | + y="3.2133317" |
1685 | + x="251.67101" |
1686 | + id="m2" /> |
1687 | + <rect |
1688 | + style="fill:#404031;stroke:#7f7f7f;fill-opacity:1;stroke-opacity:1" |
1689 | + height="18.0" |
1690 | + width="18.0" |
1691 | + y="3.0" |
1692 | + x="21.0" |
1693 | + id="HOME" /> |
1694 | + <rect |
1695 | + style="fill:#2b2b63;stroke:#7f7f7f;stroke-opacity:1;fill-opacity:1" |
1696 | + height="21.241886" |
1697 | + width="33.017849" |
1698 | + y="52.777733" |
1699 | + x="251.67101" |
1700 | + id="m8" /> |
1701 | + <rect |
1702 | + style="fill:#404031;stroke:#7f7f7f;fill-opacity:1;stroke-opacity:1" |
1703 | + height="18.0" |
1704 | + width="18.0" |
1705 | + y="79.0" |
1706 | + x="2.0" |
1707 | + id="LEFT" /> |
1708 | + <rect |
1709 | + style="fill:#404031;stroke:#7f7f7f;fill-opacity:1;stroke-opacity:1" |
1710 | + height="18.0" |
1711 | + width="18.0" |
1712 | + y="79.0" |
1713 | + x="40.0" |
1714 | + id="RGHT" /> |
1715 | + <rect |
1716 | + style="fill:#404031;stroke:#7f7f7f;fill-opacity:1;stroke-opacity:1" |
1717 | + height="18.0" |
1718 | + width="18.0" |
1719 | + y="22.0" |
1720 | + x="2.0" |
1721 | + id="DELE" /> |
1722 | + <rect |
1723 | + style="fill:#2b2b63;stroke:#7f7f7f;stroke-opacity:1;fill-opacity:1" |
1724 | + height="21.241886" |
1725 | + width="33.017849" |
1726 | + y="27.995533" |
1727 | + x="175.6299" |
1728 | + id="m3" /> |
1729 | + <rect |
1730 | + style="fill:#404031;stroke:#7f7f7f;stroke-opacity:1;fill-opacity:1" |
1731 | + height="37.0" |
1732 | + width="18.0" |
1733 | + y="60.0" |
1734 | + x="137.0" |
1735 | + id="KPEN" /> |
1736 | + <rect |
1737 | + style="fill:#505001;stroke:#7f7f7f;stroke-opacity:1;fill-opacity:1" |
1738 | + height="18.0" |
1739 | + width="18.0" |
1740 | + y="3.0" |
1741 | + x="118.0" |
1742 | + id="KPMU" /> |
1743 | + <rect |
1744 | + style="fill:#404031;stroke:#7f7f7f;fill-opacity:1;stroke-opacity:1" |
1745 | + height="18.0" |
1746 | + width="18.0" |
1747 | + y="22.0" |
1748 | + x="21.0" |
1749 | + id="END" /> |
1750 | + <rect |
1751 | + style="fill:#403020;stroke:#7f7f7f;stroke-opacity:1;fill-opacity:1" |
1752 | + height="18.0" |
1753 | + width="18.0" |
1754 | + y="3.0" |
1755 | + x="80.0" |
1756 | + id="NMLK" /> |
1757 | + <rect |
1758 | + style="fill:#404031;stroke:#7f7f7f;fill-opacity:1;stroke-opacity:1" |
1759 | + height="18.0" |
1760 | + width="18.0" |
1761 | + y="22.0" |
1762 | + x="40.0" |
1763 | + id="PGDN" /> |
1764 | + <rect |
1765 | + style="fill:#404031;stroke:#7f7f7f;fill-opacity:1;stroke-opacity:1" |
1766 | + height="18.0" |
1767 | + width="18.0" |
1768 | + y="60.0" |
1769 | + x="21.0" |
1770 | + id="UP" /> |
1771 | + <rect |
1772 | + style="fill:#404031;stroke:#7f7f7f;fill-opacity:1;stroke-opacity:1" |
1773 | + height="18.0" |
1774 | + width="18.0" |
1775 | + y="3.0" |
1776 | + x="2.0" |
1777 | + id="INS" /> |
1778 | + <rect |
1779 | + style="fill:#7f0000;stroke:#7f7f7f;fill-opacity:1;stroke-opacity:1" |
1780 | + height="18" |
1781 | + width="33.065235" |
1782 | + x="251.67316" |
1783 | + y="79" |
1784 | + id="switchButtons" /> |
1785 | +</svg> |
1786 | |
1787 | === added file 'layouts/Full-Dark.sok' |
1788 | --- layouts/Full-Dark.sok 1970-01-01 00:00:00 +0000 |
1789 | +++ layouts/Full-Dark.sok 2009-09-27 08:05:22 +0000 |
1790 | @@ -0,0 +1,181 @@ |
1791 | +<?xml version='1.0' encoding='UTF-8'?> |
1792 | +<keyboard id='Full Keyboard, Dark'> |
1793 | + <pane filename='Full-Dark-Alpha.svg' |
1794 | + backgroundRed='0' backgroundBlue='0' |
1795 | + backgroundGreen='0' backgroundAlpha='1' |
1796 | + labelRed='1' labelBlue='1' labelGreen='1' labelAlpha='1' |
1797 | + font='10' id='Alpha'> |
1798 | + <key sticky='false' id='AB01' keycode='52' group='alphanumeric'/> |
1799 | + <key sticky='false' id='AE02' keycode='11' group='alphanumeric'/> |
1800 | + <key sticky='false' id='AE03' keycode='12' group='alphanumeric'/> |
1801 | + <key sticky='false' id='AD09' keycode='32' group='alphanumeric'/> |
1802 | + <key sticky='false' id='AE01' keycode='10' group='alphanumeric'/> |
1803 | + <key sticky='false' id='AE06' keycode='15' group='alphanumeric'/> |
1804 | + <key sticky='false' id='AE07' keycode='16' group='alphanumeric'/> |
1805 | + <key sticky='false' id='AE04' keycode='13' group='alphanumeric'/> |
1806 | + <key sticky='false' id='AE05' keycode='14' group='alphanumeric'/> |
1807 | + <key sticky='false' id='AD03' keycode='26' group='alphanumeric'/> |
1808 | + <key sticky='false' id='AD02' keycode='25' group='alphanumeric'/> |
1809 | + <key sticky='false' id='AD01' keycode='24' group='alphanumeric'/> |
1810 | + <key sticky='false' id='AE09' keycode='18' group='alphanumeric'/> |
1811 | + <key sticky='false' id='AD07' keycode='30' group='alphanumeric'/> |
1812 | + <key sticky='false' id='AD06' keycode='29' group='alphanumeric'/> |
1813 | + <key sticky='false' id='AD05' keycode='28' group='alphanumeric'/> |
1814 | + <key sticky='false' id='AD04' keycode='27' group='alphanumeric'/> |
1815 | + <key sticky='false' id='AB10' keycode='61' group='alphanumeric'/> |
1816 | + <key sticky='false' id='AC11' keycode='48' group='alphanumeric'/> |
1817 | + <key sticky='false' id='AC10' keycode='47' group='alphanumeric'/> |
1818 | + |
1819 | + <key sticky='false' id='TLDE' keycode='49' group='alphanumeric'/> |
1820 | + <key sticky='false' id='LSGT' keycode='94' group='alphanumeric'/> |
1821 | + <key sticky='false' id='BKSL' keycode='51' group='alphanumeric'/> |
1822 | + <key modifier='control' sticky='true' id='RCTL' label='Ctrl' |
1823 | + group='bottomrow'/> |
1824 | + <key modifier='control' sticky='true' id='LCTL' label='Ctrl' |
1825 | + group='bottomrow'/> |
1826 | + <key modifier='mod5' sticky='true' id='RALT' label='Alt Gr' |
1827 | + group='bottomrow'/> |
1828 | + <key keycode='23' sticky='false' id='TAB' label='Tab' group='misc'/> |
1829 | + <key modifier='mod1' sticky='true' id='LALT' label='Alt' group='bottomrow'/> |
1830 | + <key modifier='shift' sticky='true' id='LFSH' label='⇧' group='shifts'/> |
1831 | + <key keycode='22' sticky='false' id='BKSP' label='⇦' group='backspace'/> |
1832 | + <key modifier='caps' sticky='true' id='CAPS' label='CAPS' group='misc'/> |
1833 | + <key keycode='36' sticky='false' id='RTRN' label='Return' group='misc'/> |
1834 | + <key keycode='117' sticky='false' id='MENU' label='Menu' group='bottomrow'/> |
1835 | + <key sticky='false' id='AD10' keycode='33' group='alphanumeric'/> |
1836 | + <key sticky='false' id='AD11' keycode='34' group='alphanumeric'/> |
1837 | + <key sticky='false' id='AD12' keycode='35' group='alphanumeric'/> |
1838 | + <key sticky='false' id='AB08' keycode='59' group='alphanumeric'/> |
1839 | + <key sticky='false' id='AE11' keycode='20' group='alphanumeric'/> |
1840 | + <key sticky='false' id='AE10' keycode='19' group='alphanumeric'/> |
1841 | + <key sticky='false' id='AE12' keycode='21' group='alphanumeric'/> |
1842 | + <key sticky='false' id='AC04' keycode='41' group='alphanumeric'/> |
1843 | + <key sticky='false' id='AC05' keycode='42' group='alphanumeric'/> |
1844 | + <key sticky='false' id='AC06' keycode='43' group='alphanumeric'/> |
1845 | + <key sticky='false' id='AC07' keycode='44' group='alphanumeric'/> |
1846 | + <key sticky='false' id='AB09' keycode='60' group='alphanumeric'/> |
1847 | + <key sticky='false' id='AC01' keycode='38' group='alphanumeric'/> |
1848 | + <key sticky='false' id='AC02' keycode='39' group='alphanumeric'/> |
1849 | + <key sticky='false' id='AC03' keycode='40' group='alphanumeric'/> |
1850 | + <key sticky='false' id='AB05' keycode='56' group='alphanumeric'/> |
1851 | + <key sticky='false' id='AB04' keycode='55' group='alphanumeric'/> |
1852 | + <key sticky='false' id='AE08' keycode='17' group='alphanumeric'/> |
1853 | + <key sticky='false' id='AB06' keycode='57' group='alphanumeric'/> |
1854 | + <key sticky='false' id='AC08' keycode='45' group='alphanumeric'/> |
1855 | + <key sticky='false' id='AC09' keycode='46' group='alphanumeric'/> |
1856 | + <key sticky='false' id='AB03' keycode='54' group='alphanumeric'/> |
1857 | + <key sticky='false' id='AB02' keycode='53' group='alphanumeric'/> |
1858 | + <key sticky='false' id='AD08' keycode='31' group='alphanumeric'/> |
1859 | + <key sticky='false' id='AB07' keycode='58' group='alphanumeric'/> |
1860 | + <key keycode='116' sticky='false' id='RWIN' label='Win' group='bottomrow'/> |
1861 | + <key sticky='false' id='SPCE' keycode='65' group='bottomrow'/> |
1862 | + <key modifier='shift' sticky='true' id='RTSH' label='⇧' group='shifts'/> |
1863 | + <key modifier='mod4' sticky='true' id='LWIN' label='Win' group='bottomrow'/> |
1864 | + |
1865 | + <key sticky='false' keysym='65470' id='F1' label='F1' group='fkeys'/> |
1866 | + <key sticky='false' keysym='65471' id='F2' label='F2' group='fkeys'/> |
1867 | + <key sticky='false' keysym='65472' id='F3' label='F3' group='fkeys'/> |
1868 | + <key sticky='false' keysym='65473' id='F4' label='F4' group='fkeys'/> |
1869 | + <key sticky='false' keysym='65474' id='F5' label='F5' group='fkeys'/> |
1870 | + <key sticky='false' keysym='65475' id='F6' label='F6' group='fkeys'/> |
1871 | + <key sticky='false' keysym='65476' id='F7' label='F7' group='fkeys'/> |
1872 | + <key sticky='false' keysym='65477' id='F8' label='F8' group='fkeys'/> |
1873 | + <key sticky='false' keysym='65478' id='F9' label='F9' group='fkeys'/> |
1874 | + <key sticky='false' keysym='65481' id='F12' label='F12' group='fkeys'/> |
1875 | + <key sticky='false' keysym='65479' id='F10' label='F10' group='fkeys'/> |
1876 | + <key sticky='false' keysym='65480' id='F11' label='F11' group='fkeys'/> |
1877 | + <key sticky='false' keysym='65377' id='Prnt' label='Prnt' group='fkeys'/> |
1878 | + <key sticky='false' keysym='65299' id='Pause' label='Pause' group='fkeys'/> |
1879 | + <key sticky='false' keysym='65307' id='ESC' label='ESC' group='fkeys'/> |
1880 | + <key sticky='false' keysym='65300' id='Scroll' label='Scroll' |
1881 | + group='fkeys'/> |
1882 | + <key script='sokSettings' sticky='false' id='settings' label='Settings' |
1883 | + group='scripts'/> |
1884 | + |
1885 | + <key keypress_name='left' sticky='false' id='LEFT' label='←' |
1886 | + group='directions'/> |
1887 | + <key keypress_name='right' sticky='false' id='RGHT' label='→' |
1888 | + group='directions'/> |
1889 | + <key keypress_name='up' sticky='false' id='UP' label='↑' |
1890 | + group='directions'/> |
1891 | + <key keypress_name='down' sticky='false' id='DOWN' label='↓' |
1892 | + group='directions'/> |
1893 | + <key keypress_name='insert' sticky='false' id='INS' label='Ins' |
1894 | + group='editing'/> |
1895 | + <key keypress_name='delete' sticky='false' id='DELE' label='Del' |
1896 | + group='editing'/> |
1897 | + <key keypress_name='home' sticky='false' id='HOME' label='Hm' |
1898 | + group='editing'/> |
1899 | + <key keypress_name='end' sticky='false' id='END' label='End' |
1900 | + group='editing'/> |
1901 | + <key keypress_name='page_up' sticky='false' id='PGUP' label='Pg Up' |
1902 | + group='editing'/> |
1903 | + <key keypress_name='page_down' sticky='false' id='PGDN' label='Pg Dn' |
1904 | + group='editing'/> |
1905 | + </pane> |
1906 | + <pane filename='Full-Dark-Numpad.svg' |
1907 | + backgroundRed='0.1' backgroundGreen='0.1' |
1908 | + backgroundBlue='0.2' backgroundAlpha='0.7' |
1909 | + labelRed='1' labelBlue='1' labelGreen='1' labelAlpha='1' |
1910 | + font='10' id='Numpad'> |
1911 | + <key sticky='false' id='KPSU' char='-' label='-' group='keypadoperators'/> |
1912 | + <key sticky='false' id='KPDV' char='/' label='/' group='keypadoperators'/> |
1913 | + <key sticky='false' id='KPAD' char='+' label='+' group='keypadoperators'/> |
1914 | + <key sticky='false' id='KPMU' char='*' label='*' group='keypadoperators'/> |
1915 | + <key keycode='90' sticky='false' id='KP0' label='0' group='keypadnumber'/> |
1916 | + <key keycode='87' sticky='false' id='KP1' label='1' group='keypadnumber'/> |
1917 | + <key keycode='88' sticky='false' id='KP2' label='2' group='keypadnumber'/> |
1918 | + <key keycode='89' sticky='false' id='KP3' label='3' group='keypadnumber'/> |
1919 | + <key keycode='83' sticky='false' id='KP4' label='4' group='keypadnumber'/> |
1920 | + <key keycode='84' sticky='false' id='KP5' label='5' group='keypadnumber'/> |
1921 | + <key keycode='85' sticky='false' id='KP6' label='6' group='keypadnumber'/> |
1922 | + <key keycode='79' sticky='false' id='KP7' label='7' group='keypadnumber'/> |
1923 | + <key keycode='80' sticky='false' id='KP8' label='8' group='keypadnumber'/> |
1924 | + <key keycode='81' sticky='false' id='KP9' label='9' group='keypadnumber'/> |
1925 | + <key keypress_name='delete' sticky='false' id='KPDL' label='Del' |
1926 | + group='keypadmisc'/> |
1927 | + <key modifier='mod2' sticky='true' id='NMLK' label='Nm Lk' |
1928 | + group='keypadmisc'/> |
1929 | + <key keycode='108' sticky='false' id='KPEN' label='Ent' group='keypadmisc'/> |
1930 | + <key macro='0' sticky='false' id='m0' label='Snippet 0' |
1931 | + group='snippets'/> |
1932 | + <key macro='1' sticky='false' id='m1' label='Snippet 1' |
1933 | + group='snippets'/> |
1934 | + <key macro='2' sticky='false' id='m2' label='Snippet 2' |
1935 | + group='snippets'/> |
1936 | + <key macro='3' sticky='false' id='m3' label='Snippet 3' |
1937 | + group='snippets'/> |
1938 | + <key macro='4' sticky='false' id='m4' label='Snippet 4' |
1939 | + group='snippets'/> |
1940 | + <key macro='5' sticky='false' id='m5' label='Snippet 5' |
1941 | + group='snippets'/> |
1942 | + <key macro='6' sticky='false' id='m6' label='Snippet 6' |
1943 | + group='snippets'/> |
1944 | + <key macro='7' sticky='false' id='m7' label='Snippet 7' |
1945 | + group='snippets'/> |
1946 | + <key macro='8' sticky='false' id='m8' label='Snippet 8' |
1947 | + group='snippets'/> |
1948 | + <key keypress_name='left' sticky='false' id='LEFT' label='←' |
1949 | + group='directions'/> |
1950 | + <key keypress_name='right' sticky='false' id='RGHT' label='→' |
1951 | + group='directions'/> |
1952 | + <key keypress_name='up' sticky='false' id='UP' label='↑' |
1953 | + group='directions'/> |
1954 | + <key keypress_name='down' sticky='false' id='DOWN' label='↓' |
1955 | + group='directions'/> |
1956 | + <key keypress_name='insert' sticky='false' id='INS' label='Ins' |
1957 | + group='editing'/> |
1958 | + <key keypress_name='delete' sticky='false' id='DELE' label='Del' |
1959 | + group='editing'/> |
1960 | + <key keypress_name='home' sticky='false' id='HOME' label='Hm' |
1961 | + group='editing'/> |
1962 | + <key keypress_name='end' sticky='false' id='END' label='End' |
1963 | + group='editing'/> |
1964 | + <key keypress_name='page_up' sticky='false' id='PGUP' label='Pg Up' |
1965 | + group='editing'/> |
1966 | + <key keypress_name='page_down' sticky='false' id='PGDN' label='Pg Dn' |
1967 | + group='editing'/> |
1968 | + <key script='switchButtons' sticky='false' id='switchButtons' |
1969 | + label='Switch Buttons' group='scripts'/> |
1970 | + </pane> |
1971 | +</keyboard> |
1972 | |
1973 | === added file 'layouts/Full-Numpad.svg' |
1974 | --- layouts/Full-Numpad.svg 1970-01-01 00:00:00 +0000 |
1975 | +++ layouts/Full-Numpad.svg 2009-09-27 08:05:22 +0000 |
1976 | @@ -0,0 +1,271 @@ |
1977 | +<?xml version='1.0' encoding='UTF-8'?> |
1978 | +<!-- Created with onBoard --> |
1979 | +<svg xmlns:cc='http://web.resource.org/cc/' |
1980 | + xmlns:svg='http://www.w3.org/2000/svg' |
1981 | + xmlns:dc='http://purl.org/dc/elements/1.1/' |
1982 | + xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#' |
1983 | + xmlns='http://www.w3.org/2000/svg' |
1984 | + height='98.0' |
1985 | + width='294.0' |
1986 | + version='1.0' |
1987 | + id='svg2'> |
1988 | + <rect |
1989 | + style="fill:#d8cca5;stroke:#000000;stroke-opacity:1;fill-opacity:1" |
1990 | + height="18.0" |
1991 | + width="18.0" |
1992 | + y="79.0" |
1993 | + x="118.0" |
1994 | + id="KPDL" /> |
1995 | + <rect |
1996 | + style="fill:#d8cca5;stroke:#000000;fill-opacity:1;stroke-opacity:1" |
1997 | + height="18.0" |
1998 | + width="18.0" |
1999 | + y="79.0" |
2000 | + x="21.0" |
2001 | + id="DOWN" /> |
2002 | + <rect |
2003 | + style="fill:#e5d8b2;stroke:#000000;stroke-opacity:1;fill-opacity:1" |
2004 | + height="18.0" |
2005 | + width="18.0" |
2006 | + y="3.0" |
2007 | + x="137.0" |
2008 | + id="KPSU" /> |
2009 | + <rect |
2010 | + style="fill:#e5d8b2;stroke:#000000;stroke-opacity:1;fill-opacity:1" |
2011 | + height="18.0" |
2012 | + width="18.0" |
2013 | + y="3.0" |
2014 | + x="99.0" |
2015 | + id="KPDV" /> |
2016 | + <rect |
2017 | + style="fill:#d8cca5;stroke:#000000;fill-opacity:1;stroke-opacity:1" |
2018 | + height="18.0" |
2019 | + width="18.0" |
2020 | + y="3.0" |
2021 | + x="40.0" |
2022 | + id="PGUP" /> |
2023 | + <rect |
2024 | + style="fill:#d8cca5;stroke:#000000;stroke-opacity:1;fill-opacity:1" |
2025 | + height="18.0" |
2026 | + width="37.0" |
2027 | + y="79.0" |
2028 | + x="80.0" |
2029 | + id="KP0" /> |
2030 | + <rect |
2031 | + style="fill:#d8cca5;stroke:#000000;stroke-opacity:1;fill-opacity:1" |
2032 | + height="18.0" |
2033 | + width="18.0" |
2034 | + y="60.0" |
2035 | + x="80.0" |
2036 | + id="KP1" /> |
2037 | + <rect |
2038 | + style="fill:#d8cca5;stroke:#000000;stroke-opacity:1;fill-opacity:1" |
2039 | + height="18.0" |
2040 | + width="18.0" |
2041 | + y="60.0" |
2042 | + x="99.0" |
2043 | + id="KP2" /> |
2044 | + <rect |
2045 | + style="fill:#d8cca5;stroke:#000000;stroke-opacity:1;fill-opacity:1" |
2046 | + height="18.0" |
2047 | + width="18.0" |
2048 | + y="60.0" |
2049 | + x="118.0" |
2050 | + id="KP3" /> |
2051 | + <rect |
2052 | + style="fill:#d8cca5;stroke:#000000;stroke-opacity:1;fill-opacity:1" |
2053 | + height="18.0" |
2054 | + width="18.0" |
2055 | + y="41.0" |
2056 | + x="80.0" |
2057 | + id="KP4" /> |
2058 | + <rect |
2059 | + style="fill:#d8cca5;stroke:#000000;stroke-opacity:1;fill-opacity:1" |
2060 | + height="18.0" |
2061 | + width="18.0" |
2062 | + y="41.0" |
2063 | + x="99.0" |
2064 | + id="KP5" /> |
2065 | + <rect |
2066 | + style="fill:#d8cca5;stroke:#000000;stroke-opacity:1;fill-opacity:1" |
2067 | + height="18.0" |
2068 | + width="18.0" |
2069 | + y="41.0" |
2070 | + x="118.0" |
2071 | + id="KP6" /> |
2072 | + <rect |
2073 | + style="fill:#d8cca5;stroke:#000000;stroke-opacity:1;fill-opacity:1" |
2074 | + height="18.0" |
2075 | + width="18.0" |
2076 | + y="22.0" |
2077 | + x="80.0" |
2078 | + id="KP7" /> |
2079 | + <rect |
2080 | + style="fill:#d8cca5;stroke:#000000;stroke-opacity:1;fill-opacity:1" |
2081 | + height="18.0" |
2082 | + width="18.0" |
2083 | + y="22.0" |
2084 | + x="99.0" |
2085 | + id="KP8" /> |
2086 | + <rect |
2087 | + style="fill:#d8cca5;stroke:#000000;stroke-opacity:1;fill-opacity:1" |
2088 | + height="18.0" |
2089 | + width="18.0" |
2090 | + y="22.0" |
2091 | + x="118.0" |
2092 | + id="KP9" /> |
2093 | + <rect |
2094 | + style="fill:#7f7fcc;stroke:#000000;stroke-opacity:1;fill-opacity:1" |
2095 | + height="21.241886" |
2096 | + width="33.017849" |
2097 | + y="27.995533" |
2098 | + x="251.67101" |
2099 | + id="m5" /> |
2100 | + <rect |
2101 | + style="fill:#7f7fcc;stroke:#000000;stroke-opacity:1;fill-opacity:1" |
2102 | + height="21.241886" |
2103 | + width="33.017849" |
2104 | + y="27.995533" |
2105 | + x="213.65045" |
2106 | + id="m4" /> |
2107 | + <rect |
2108 | + style="fill:#7f7fcc;stroke:#000000;stroke-opacity:1;fill-opacity:1" |
2109 | + height="21.241886" |
2110 | + width="33.017849" |
2111 | + y="52.777733" |
2112 | + x="213.65045" |
2113 | + id="m7" /> |
2114 | + <rect |
2115 | + style="fill:#7f7fcc;stroke:#000000;stroke-opacity:1;fill-opacity:1" |
2116 | + height="21.241886" |
2117 | + width="33.017849" |
2118 | + y="52.777733" |
2119 | + x="175.6299" |
2120 | + id="m6" /> |
2121 | + <rect |
2122 | + style="fill:#7f7fcc;stroke:#000000;stroke-opacity:1;fill-opacity:1" |
2123 | + height="21.241886" |
2124 | + width="33.017849" |
2125 | + y="3.2133317" |
2126 | + x="213.65045" |
2127 | + id="m1" /> |
2128 | + <rect |
2129 | + style="fill:#7f7fcc;stroke:#000000;stroke-opacity:1;fill-opacity:1" |
2130 | + height="21.241886" |
2131 | + width="33.017849" |
2132 | + y="3.2133317" |
2133 | + x="175.6299" |
2134 | + id="m0" /> |
2135 | + <rect |
2136 | + style="fill:#e5d8b2;stroke:#000000;stroke-opacity:1;fill-opacity:1" |
2137 | + height="37.0" |
2138 | + width="18.0" |
2139 | + y="22.0" |
2140 | + x="137.0" |
2141 | + id="KPAD" /> |
2142 | + <rect |
2143 | + style="fill:#7f7fcc;stroke:#000000;stroke-opacity:1;fill-opacity:1" |
2144 | + height="21.241886" |
2145 | + width="33.017849" |
2146 | + y="3.2133317" |
2147 | + x="251.67101" |
2148 | + id="m2" /> |
2149 | + <rect |
2150 | + style="fill:#d8cca5;stroke:#000000;fill-opacity:1;stroke-opacity:1" |
2151 | + height="18.0" |
2152 | + width="18.0" |
2153 | + y="3.0" |
2154 | + x="21.0" |
2155 | + id="HOME" /> |
2156 | + <rect |
2157 | + style="fill:#7f7fcc;stroke:#000000;stroke-opacity:1;fill-opacity:1" |
2158 | + height="21.241886" |
2159 | + width="33.017849" |
2160 | + y="52.777733" |
2161 | + x="251.67101" |
2162 | + id="m8" /> |
2163 | + <rect |
2164 | + style="fill:#d8cca5;stroke:#000000;fill-opacity:1;stroke-opacity:1" |
2165 | + height="18.0" |
2166 | + width="18.0" |
2167 | + y="79.0" |
2168 | + x="2.0" |
2169 | + id="LEFT" /> |
2170 | + <rect |
2171 | + style="fill:#d8cca5;stroke:#000000;fill-opacity:1;stroke-opacity:1" |
2172 | + height="18.0" |
2173 | + width="18.0" |
2174 | + y="79.0" |
2175 | + x="40.0" |
2176 | + id="RGHT" /> |
2177 | + <rect |
2178 | + style="fill:#d8cca5;stroke:#000000;fill-opacity:1;stroke-opacity:1" |
2179 | + height="18.0" |
2180 | + width="18.0" |
2181 | + y="22.0" |
2182 | + x="2.0" |
2183 | + id="DELE" /> |
2184 | + <rect |
2185 | + style="fill:#7f7fcc;stroke:#000000;stroke-opacity:1;fill-opacity:1" |
2186 | + height="21.241886" |
2187 | + width="33.017849" |
2188 | + y="27.995533" |
2189 | + x="175.6299" |
2190 | + id="m3" /> |
2191 | + <rect |
2192 | + style="fill:#d8cca5;stroke:#000000;stroke-opacity:1;fill-opacity:1" |
2193 | + height="37.0" |
2194 | + width="18.0" |
2195 | + y="60.0" |
2196 | + x="137.0" |
2197 | + id="KPEN" /> |
2198 | + <rect |
2199 | + style="fill:#e5d8b2;stroke:#000000;stroke-opacity:1;fill-opacity:1" |
2200 | + height="18.0" |
2201 | + width="18.0" |
2202 | + y="3.0" |
2203 | + x="118.0" |
2204 | + id="KPMU" /> |
2205 | + <rect |
2206 | + style="fill:#d8cca5;stroke:#000000;fill-opacity:1;stroke-opacity:1" |
2207 | + height="18.0" |
2208 | + width="18.0" |
2209 | + y="22.0" |
2210 | + x="21.0" |
2211 | + id="END" /> |
2212 | + <rect |
2213 | + style="fill:#f2e5d8;stroke:#000000;stroke-opacity:1;fill-opacity:1" |
2214 | + height="18.0" |
2215 | + width="18.0" |
2216 | + y="3.0" |
2217 | + x="80.0" |
2218 | + id="NMLK" /> |
2219 | + <rect |
2220 | + style="fill:#d8cca5;stroke:#000000;fill-opacity:1;stroke-opacity:1" |
2221 | + height="18.0" |
2222 | + width="18.0" |
2223 | + y="22.0" |
2224 | + x="40.0" |
2225 | + id="PGDN" /> |
2226 | + <rect |
2227 | + style="fill:#d8cca5;stroke:#000000;fill-opacity:1;stroke-opacity:1" |
2228 | + height="18.0" |
2229 | + width="18.0" |
2230 | + y="60.0" |
2231 | + x="21.0" |
2232 | + id="UP" /> |
2233 | + <rect |
2234 | + style="fill:#d8cca5;stroke:#000000;fill-opacity:1;stroke-opacity:1" |
2235 | + height="18.0" |
2236 | + width="18.0" |
2237 | + y="3.0" |
2238 | + x="2.0" |
2239 | + id="INS" /> |
2240 | + <rect |
2241 | + style="fill:#f27f7f;stroke:#000000;fill-opacity:1;stroke-opacity:1" |
2242 | + height="18" |
2243 | + width="33.065235" |
2244 | + x="251.67316" |
2245 | + y="79" |
2246 | + id="switchButtons" /> |
2247 | +</svg> |
2248 | |
2249 | === added file 'layouts/Full.sok' |
2250 | --- layouts/Full.sok 1970-01-01 00:00:00 +0000 |
2251 | +++ layouts/Full.sok 2009-09-27 08:05:22 +0000 |
2252 | @@ -0,0 +1,179 @@ |
2253 | +<?xml version='1.0' encoding='UTF-8'?> |
2254 | +<keyboard id='Full Keyboard'> |
2255 | + <pane filename='Full-Alpha.svg' |
2256 | + backgroundRed='0' backgroundGreen='0' |
2257 | + backgroundBlue='0' backgroundAlpha='0.3' |
2258 | + font='10' id='Alpha'> |
2259 | + <key sticky='false' id='AB01' keycode='52' group='alphanumeric'/> |
2260 | + <key sticky='false' id='AE02' keycode='11' group='alphanumeric'/> |
2261 | + <key sticky='false' id='AE03' keycode='12' group='alphanumeric'/> |
2262 | + <key sticky='false' id='AD09' keycode='32' group='alphanumeric'/> |
2263 | + <key sticky='false' id='AE01' keycode='10' group='alphanumeric'/> |
2264 | + <key sticky='false' id='AE06' keycode='15' group='alphanumeric'/> |
2265 | + <key sticky='false' id='AE07' keycode='16' group='alphanumeric'/> |
2266 | + <key sticky='false' id='AE04' keycode='13' group='alphanumeric'/> |
2267 | + <key sticky='false' id='AE05' keycode='14' group='alphanumeric'/> |
2268 | + <key sticky='false' id='AD03' keycode='26' group='alphanumeric'/> |
2269 | + <key sticky='false' id='AD02' keycode='25' group='alphanumeric'/> |
2270 | + <key sticky='false' id='AD01' keycode='24' group='alphanumeric'/> |
2271 | + <key sticky='false' id='AE09' keycode='18' group='alphanumeric'/> |
2272 | + <key sticky='false' id='AD07' keycode='30' group='alphanumeric'/> |
2273 | + <key sticky='false' id='AD06' keycode='29' group='alphanumeric'/> |
2274 | + <key sticky='false' id='AD05' keycode='28' group='alphanumeric'/> |
2275 | + <key sticky='false' id='AD04' keycode='27' group='alphanumeric'/> |
2276 | + <key sticky='false' id='AB10' keycode='61' group='alphanumeric'/> |
2277 | + <key sticky='false' id='AC11' keycode='48' group='alphanumeric'/> |
2278 | + <key sticky='false' id='AC10' keycode='47' group='alphanumeric'/> |
2279 | + |
2280 | + <key sticky='false' id='TLDE' keycode='49' group='alphanumeric'/> |
2281 | + <key sticky='false' id='LSGT' keycode='94' group='alphanumeric'/> |
2282 | + <key sticky='false' id='BKSL' keycode='51' group='alphanumeric'/> |
2283 | + <key modifier='control' sticky='true' id='RCTL' label='Ctrl' |
2284 | + group='bottomrow'/> |
2285 | + <key modifier='control' sticky='true' id='LCTL' label='Ctrl' |
2286 | + group='bottomrow'/> |
2287 | + <key modifier='mod5' sticky='true' id='RALT' label='Alt Gr' |
2288 | + group='bottomrow'/> |
2289 | + <key keycode='23' sticky='false' id='TAB' label='Tab' group='misc'/> |
2290 | + <key modifier='mod1' sticky='true' id='LALT' label='Alt' group='bottomrow'/> |
2291 | + <key modifier='shift' sticky='true' id='LFSH' label='⇧' group='shifts'/> |
2292 | + <key keycode='22' sticky='false' id='BKSP' label='⇦' group='backspace'/> |
2293 | + <key modifier='caps' sticky='true' id='CAPS' label='CAPS' group='misc'/> |
2294 | + <key keycode='36' sticky='false' id='RTRN' label='Return' group='misc'/> |
2295 | + <key keycode='117' sticky='false' id='MENU' label='Menu' group='bottomrow'/> |
2296 | + <key sticky='false' id='AD10' keycode='33' group='alphanumeric'/> |
2297 | + <key sticky='false' id='AD11' keycode='34' group='alphanumeric'/> |
2298 | + <key sticky='false' id='AD12' keycode='35' group='alphanumeric'/> |
2299 | + <key sticky='false' id='AB08' keycode='59' group='alphanumeric'/> |
2300 | + <key sticky='false' id='AE11' keycode='20' group='alphanumeric'/> |
2301 | + <key sticky='false' id='AE10' keycode='19' group='alphanumeric'/> |
2302 | + <key sticky='false' id='AE12' keycode='21' group='alphanumeric'/> |
2303 | + <key sticky='false' id='AC04' keycode='41' group='alphanumeric'/> |
2304 | + <key sticky='false' id='AC05' keycode='42' group='alphanumeric'/> |
2305 | + <key sticky='false' id='AC06' keycode='43' group='alphanumeric'/> |
2306 | + <key sticky='false' id='AC07' keycode='44' group='alphanumeric'/> |
2307 | + <key sticky='false' id='AB09' keycode='60' group='alphanumeric'/> |
2308 | + <key sticky='false' id='AC01' keycode='38' group='alphanumeric'/> |
2309 | + <key sticky='false' id='AC02' keycode='39' group='alphanumeric'/> |
2310 | + <key sticky='false' id='AC03' keycode='40' group='alphanumeric'/> |
2311 | + <key sticky='false' id='AB05' keycode='56' group='alphanumeric'/> |
2312 | + <key sticky='false' id='AB04' keycode='55' group='alphanumeric'/> |
2313 | + <key sticky='false' id='AE08' keycode='17' group='alphanumeric'/> |
2314 | + <key sticky='false' id='AB06' keycode='57' group='alphanumeric'/> |
2315 | + <key sticky='false' id='AC08' keycode='45' group='alphanumeric'/> |
2316 | + <key sticky='false' id='AC09' keycode='46' group='alphanumeric'/> |
2317 | + <key sticky='false' id='AB03' keycode='54' group='alphanumeric'/> |
2318 | + <key sticky='false' id='AB02' keycode='53' group='alphanumeric'/> |
2319 | + <key sticky='false' id='AD08' keycode='31' group='alphanumeric'/> |
2320 | + <key sticky='false' id='AB07' keycode='58' group='alphanumeric'/> |
2321 | + <key keycode='116' sticky='false' id='RWIN' label='Win' group='bottomrow'/> |
2322 | + <key sticky='false' id='SPCE' keycode='65' group='bottomrow'/> |
2323 | + <key modifier='shift' sticky='true' id='RTSH' label='⇧' group='shifts'/> |
2324 | + <key modifier='mod4' sticky='true' id='LWIN' label='Win' group='bottomrow'/> |
2325 | + |
2326 | + <key sticky='false' keysym='65470' id='F1' label='F1' group='fkeys'/> |
2327 | + <key sticky='false' keysym='65471' id='F2' label='F2' group='fkeys'/> |
2328 | + <key sticky='false' keysym='65472' id='F3' label='F3' group='fkeys'/> |
2329 | + <key sticky='false' keysym='65473' id='F4' label='F4' group='fkeys'/> |
2330 | + <key sticky='false' keysym='65474' id='F5' label='F5' group='fkeys'/> |
2331 | + <key sticky='false' keysym='65475' id='F6' label='F6' group='fkeys'/> |
2332 | + <key sticky='false' keysym='65476' id='F7' label='F7' group='fkeys'/> |
2333 | + <key sticky='false' keysym='65477' id='F8' label='F8' group='fkeys'/> |
2334 | + <key sticky='false' keysym='65478' id='F9' label='F9' group='fkeys'/> |
2335 | + <key sticky='false' keysym='65481' id='F12' label='F12' group='fkeys'/> |
2336 | + <key sticky='false' keysym='65479' id='F10' label='F10' group='fkeys'/> |
2337 | + <key sticky='false' keysym='65480' id='F11' label='F11' group='fkeys'/> |
2338 | + <key sticky='false' keysym='65377' id='Prnt' label='Prnt' group='fkeys'/> |
2339 | + <key sticky='false' keysym='65299' id='Pause' label='Pause' group='fkeys'/> |
2340 | + <key sticky='false' keysym='65307' id='ESC' label='ESC' group='fkeys'/> |
2341 | + <key sticky='false' keysym='65300' id='Scroll' label='Scroll' |
2342 | + group='fkeys'/> |
2343 | + <key script='sokSettings' sticky='false' id='settings' label='Settings' |
2344 | + group='scripts'/> |
2345 | + |
2346 | + <key keypress_name='left' sticky='false' id='LEFT' label='←' |
2347 | + group='directions'/> |
2348 | + <key keypress_name='right' sticky='false' id='RGHT' label='→' |
2349 | + group='directions'/> |
2350 | + <key keypress_name='up' sticky='false' id='UP' label='↑' |
2351 | + group='directions'/> |
2352 | + <key keypress_name='down' sticky='false' id='DOWN' label='↓' |
2353 | + group='directions'/> |
2354 | + <key keypress_name='insert' sticky='false' id='INS' label='Ins' |
2355 | + group='editing'/> |
2356 | + <key keypress_name='delete' sticky='false' id='DELE' label='Del' |
2357 | + group='editing'/> |
2358 | + <key keypress_name='home' sticky='false' id='HOME' label='Hm' |
2359 | + group='editing'/> |
2360 | + <key keypress_name='end' sticky='false' id='END' label='End' |
2361 | + group='editing'/> |
2362 | + <key keypress_name='page_up' sticky='false' id='PGUP' label='Pg Up' |
2363 | + group='editing'/> |
2364 | + <key keypress_name='page_down' sticky='false' id='PGDN' label='Pg Dn' |
2365 | + group='editing'/> |
2366 | + </pane> |
2367 | + <pane filename='Full-Numpad.svg' |
2368 | + backgroundRed='0.55' backgroundGreen='0.55' |
2369 | + backgroundBlue='0.7' backgroundAlpha='0.85' |
2370 | + font='10' id='Numpad'> |
2371 | + <key sticky='false' id='KPSU' char='-' label='-' group='keypadoperators'/> |
2372 | + <key sticky='false' id='KPDV' char='/' label='/' group='keypadoperators'/> |
2373 | + <key sticky='false' id='KPAD' char='+' label='+' group='keypadoperators'/> |
2374 | + <key sticky='false' id='KPMU' char='*' label='*' group='keypadoperators'/> |
2375 | + <key keycode='90' sticky='false' id='KP0' label='0' group='keypadnumber'/> |
2376 | + <key keycode='87' sticky='false' id='KP1' label='1' group='keypadnumber'/> |
2377 | + <key keycode='88' sticky='false' id='KP2' label='2' group='keypadnumber'/> |
2378 | + <key keycode='89' sticky='false' id='KP3' label='3' group='keypadnumber'/> |
2379 | + <key keycode='83' sticky='false' id='KP4' label='4' group='keypadnumber'/> |
2380 | + <key keycode='84' sticky='false' id='KP5' label='5' group='keypadnumber'/> |
2381 | + <key keycode='85' sticky='false' id='KP6' label='6' group='keypadnumber'/> |
2382 | + <key keycode='79' sticky='false' id='KP7' label='7' group='keypadnumber'/> |
2383 | + <key keycode='80' sticky='false' id='KP8' label='8' group='keypadnumber'/> |
2384 | + <key keycode='81' sticky='false' id='KP9' label='9' group='keypadnumber'/> |
2385 | + <key keypress_name='delete' sticky='false' id='KPDL' label='Del' |
2386 | + group='keypadmisc'/> |
2387 | + <key modifier='mod2' sticky='true' id='NMLK' label='Nm Lk' |
2388 | + group='keypadmisc'/> |
2389 | + <key keycode='108' sticky='false' id='KPEN' label='Ent' group='keypadmisc'/> |
2390 | + <key macro='0' sticky='false' id='m0' label='Snippet 0' |
2391 | + group='snippets'/> |
2392 | + <key macro='1' sticky='false' id='m1' label='Snippet 1' |
2393 | + group='snippets'/> |
2394 | + <key macro='2' sticky='false' id='m2' label='Snippet 2' |
2395 | + group='snippets'/> |
2396 | + <key macro='3' sticky='false' id='m3' label='Snippet 3' |
2397 | + group='snippets'/> |
2398 | + <key macro='4' sticky='false' id='m4' label='Snippet 4' |
2399 | + group='snippets'/> |
2400 | + <key macro='5' sticky='false' id='m5' label='Snippet 5' |
2401 | + group='snippets'/> |
2402 | + <key macro='6' sticky='false' id='m6' label='Snippet 6' |
2403 | + group='snippets'/> |
2404 | + <key macro='7' sticky='false' id='m7' label='Snippet 7' |
2405 | + group='snippets'/> |
2406 | + <key macro='8' sticky='false' id='m8' label='Snippet 8' |
2407 | + group='snippets'/> |
2408 | + <key keypress_name='left' sticky='false' id='LEFT' label='←' |
2409 | + group='directions'/> |
2410 | + <key keypress_name='right' sticky='false' id='RGHT' label='→' |
2411 | + group='directions'/> |
2412 | + <key keypress_name='up' sticky='false' id='UP' label='↑' |
2413 | + group='directions'/> |
2414 | + <key keypress_name='down' sticky='false' id='DOWN' label='↓' |
2415 | + group='directions'/> |
2416 | + <key keypress_name='insert' sticky='false' id='INS' label='Ins' |
2417 | + group='editing'/> |
2418 | + <key keypress_name='delete' sticky='false' id='DELE' label='Del' |
2419 | + group='editing'/> |
2420 | + <key keypress_name='home' sticky='false' id='HOME' label='Hm' |
2421 | + group='editing'/> |
2422 | + <key keypress_name='end' sticky='false' id='END' label='End' |
2423 | + group='editing'/> |
2424 | + <key keypress_name='page_up' sticky='false' id='PGUP' label='Pg Up' |
2425 | + group='editing'/> |
2426 | + <key keypress_name='page_down' sticky='false' id='PGDN' label='Pg Dn' |
2427 | + group='editing'/> |
2428 | + <key script='switchButtons' sticky='false' id='switchButtons' |
2429 | + label='Switch Buttons' group='scripts'/> |
2430 | + </pane> |
2431 | +</keyboard> |
Hi,
thank you for working on onboard! I'm really grateful that there is a well working onscreen keyboard installed by default in Ubuntu.
I've put some changes together to support a dark layout. The bright default layout was too straining on the eyes for my usage patterns, i.e. popping it open and closing it frequently on an otherwise dark desktop *squint*. Also I was switching panes way too frequently for editing and function keys.
There are two new layouts in the branch, both with an extended set of keys in the first pane, one in default colors and one meant for dark environments. Would there be any interest in merging this?
It'd be great if only the code changes made it in, as current onboard hard codes the label color to black, which effectively forbids the creation of dark layouts. I'd be absolutely thrilled if the layouts turned out to be merge material too though. They are the first thing I'm installing on a fresh system and frankly, there isn't that much choice in a default install of onboard yet.
Let me know what you think.