Compare commits
22 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e2a2f12c10 | ||
|
|
c1bc688a5c | ||
|
|
360ba43579 | ||
|
|
1a41b639ef | ||
|
|
4ebd46c9f0 | ||
|
|
702cf52cfc | ||
|
|
689dda0515 | ||
|
|
db0b1af99a | ||
|
|
cdbb94ccbf | ||
|
|
f86f09955b | ||
|
|
58c36bd719 | ||
|
|
46a216853f | ||
|
|
25be4d60b4 | ||
|
|
94941843e3 | ||
|
|
6adeed4e60 | ||
|
|
a97d08a2d2 | ||
|
|
91aa1cfbc0 | ||
|
|
e6e31c16b7 | ||
|
|
802c70e14c | ||
|
|
d212a2f26d | ||
|
|
fb77156c88 | ||
|
|
bfd94b7ae1 |
15
NEWS
15
NEWS
@@ -1,3 +1,18 @@
|
||||
3.8.1
|
||||
=====
|
||||
* many improvements to window-list:
|
||||
- windows are activated by DND over them
|
||||
- window buttons now have the right size,
|
||||
even if the text is smaller or larger
|
||||
than the ideal
|
||||
- window buttons can be grouped automatically
|
||||
when the panel becomes crowded
|
||||
- added a workspace switcher menu
|
||||
* added keyboard navigation to apps-menu
|
||||
* small tweaks to classic-mode theme, in particular
|
||||
for menus
|
||||
* translation updates (gl, ko, sr)
|
||||
|
||||
3.8.0
|
||||
=====
|
||||
* translation updates (hu, ja, fi, it)
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
AC_PREREQ(2.63)
|
||||
AC_INIT([gnome-shell-extensions],[3.8.0],[https://bugzilla.gnome.org/enter_bug.cgi?product=gnome-shell&component=extensions])
|
||||
AC_INIT([gnome-shell-extensions],[3.8.1],[https://bugzilla.gnome.org/enter_bug.cgi?product=gnome-shell&component=extensions])
|
||||
|
||||
AC_CONFIG_MACRO_DIR([m4])
|
||||
AC_CONFIG_AUX_DIR([config])
|
||||
|
||||
@@ -20,6 +20,7 @@ mode_DATA = $(mode_in_files:.json.in=.json)
|
||||
|
||||
themedir = $(datadir)/gnome-shell/theme
|
||||
theme_DATA = \
|
||||
$(srcdir)/classic-process-working.svg \
|
||||
$(srcdir)/classic-toggle-off-intl.svg \
|
||||
$(srcdir)/classic-toggle-off-us.svg \
|
||||
$(srcdir)/classic-toggle-on-intl.svg \
|
||||
|
||||
695
data/classic-process-working.svg
Normal file
695
data/classic-process-working.svg
Normal file
@@ -0,0 +1,695 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
id="svg5369"
|
||||
version="1.1"
|
||||
inkscape:version="0.48.4 r9939"
|
||||
width="96"
|
||||
height="48"
|
||||
sodipodi:docname="process-working-inverse.svg"
|
||||
style="display:inline">
|
||||
<metadata
|
||||
id="metadata5375">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:title />
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<defs
|
||||
id="defs5373">
|
||||
<filter
|
||||
id="filter3278"
|
||||
inkscape:label="Invert"
|
||||
x="0"
|
||||
y="0"
|
||||
width="1"
|
||||
height="1"
|
||||
inkscape:menu="Color"
|
||||
inkscape:menu-tooltip="Invert colors"
|
||||
color-interpolation-filters="sRGB">
|
||||
<feColorMatrix
|
||||
id="feColorMatrix3280"
|
||||
type="saturate"
|
||||
values="1"
|
||||
result="fbSourceGraphic" />
|
||||
<feColorMatrix
|
||||
id="feColorMatrix3282"
|
||||
in="fbSourceGraphic"
|
||||
values="-1 0 0 0 1 0 -1 0 0 1 0 0 -1 0 1 0 0 0 1 0 " />
|
||||
</filter>
|
||||
<filter
|
||||
id="filter3284"
|
||||
inkscape:label="Invert"
|
||||
x="0"
|
||||
y="0"
|
||||
width="1"
|
||||
height="1"
|
||||
inkscape:menu="Color"
|
||||
inkscape:menu-tooltip="Invert colors"
|
||||
color-interpolation-filters="sRGB">
|
||||
<feColorMatrix
|
||||
id="feColorMatrix3286"
|
||||
type="saturate"
|
||||
values="1"
|
||||
result="fbSourceGraphic" />
|
||||
<feColorMatrix
|
||||
id="feColorMatrix3288"
|
||||
in="fbSourceGraphic"
|
||||
values="-1 0 0 0 1 0 -1 0 0 1 0 0 -1 0 1 0 0 0 1 0 " />
|
||||
</filter>
|
||||
<filter
|
||||
id="filter3290"
|
||||
inkscape:label="Invert"
|
||||
x="0"
|
||||
y="0"
|
||||
width="1"
|
||||
height="1"
|
||||
inkscape:menu="Color"
|
||||
inkscape:menu-tooltip="Invert colors"
|
||||
color-interpolation-filters="sRGB">
|
||||
<feColorMatrix
|
||||
id="feColorMatrix3292"
|
||||
type="saturate"
|
||||
values="1"
|
||||
result="fbSourceGraphic" />
|
||||
<feColorMatrix
|
||||
id="feColorMatrix3294"
|
||||
in="fbSourceGraphic"
|
||||
values="-1 0 0 0 1 0 -1 0 0 1 0 0 -1 0 1 0 0 0 1 0 " />
|
||||
</filter>
|
||||
<filter
|
||||
id="filter3296"
|
||||
inkscape:label="Invert"
|
||||
x="0"
|
||||
y="0"
|
||||
width="1"
|
||||
height="1"
|
||||
inkscape:menu="Color"
|
||||
inkscape:menu-tooltip="Invert colors"
|
||||
color-interpolation-filters="sRGB">
|
||||
<feColorMatrix
|
||||
id="feColorMatrix3298"
|
||||
type="saturate"
|
||||
values="1"
|
||||
result="fbSourceGraphic" />
|
||||
<feColorMatrix
|
||||
id="feColorMatrix3300"
|
||||
in="fbSourceGraphic"
|
||||
values="-1 0 0 0 1 0 -1 0 0 1 0 0 -1 0 1 0 0 0 1 0 " />
|
||||
</filter>
|
||||
<filter
|
||||
id="filter3302"
|
||||
inkscape:label="Invert"
|
||||
x="0"
|
||||
y="0"
|
||||
width="1"
|
||||
height="1"
|
||||
inkscape:menu="Color"
|
||||
inkscape:menu-tooltip="Invert colors"
|
||||
color-interpolation-filters="sRGB">
|
||||
<feColorMatrix
|
||||
id="feColorMatrix3304"
|
||||
type="saturate"
|
||||
values="1"
|
||||
result="fbSourceGraphic" />
|
||||
<feColorMatrix
|
||||
id="feColorMatrix3306"
|
||||
in="fbSourceGraphic"
|
||||
values="-1 0 0 0 1 0 -1 0 0 1 0 0 -1 0 1 0 0 0 1 0 " />
|
||||
</filter>
|
||||
<filter
|
||||
id="filter3308"
|
||||
inkscape:label="Invert"
|
||||
x="0"
|
||||
y="0"
|
||||
width="1"
|
||||
height="1"
|
||||
inkscape:menu="Color"
|
||||
inkscape:menu-tooltip="Invert colors"
|
||||
color-interpolation-filters="sRGB">
|
||||
<feColorMatrix
|
||||
id="feColorMatrix3310"
|
||||
type="saturate"
|
||||
values="1"
|
||||
result="fbSourceGraphic" />
|
||||
<feColorMatrix
|
||||
id="feColorMatrix3312"
|
||||
in="fbSourceGraphic"
|
||||
values="-1 0 0 0 1 0 -1 0 0 1 0 0 -1 0 1 0 0 0 1 0 " />
|
||||
</filter>
|
||||
<filter
|
||||
id="filter3314"
|
||||
inkscape:label="Invert"
|
||||
x="0"
|
||||
y="0"
|
||||
width="1"
|
||||
height="1"
|
||||
inkscape:menu="Color"
|
||||
inkscape:menu-tooltip="Invert colors"
|
||||
color-interpolation-filters="sRGB">
|
||||
<feColorMatrix
|
||||
id="feColorMatrix3316"
|
||||
type="saturate"
|
||||
values="1"
|
||||
result="fbSourceGraphic" />
|
||||
<feColorMatrix
|
||||
id="feColorMatrix3318"
|
||||
in="fbSourceGraphic"
|
||||
values="-1 0 0 0 1 0 -1 0 0 1 0 0 -1 0 1 0 0 0 1 0 " />
|
||||
</filter>
|
||||
<filter
|
||||
id="filter3320"
|
||||
inkscape:label="Invert"
|
||||
x="0"
|
||||
y="0"
|
||||
width="1"
|
||||
height="1"
|
||||
inkscape:menu="Color"
|
||||
inkscape:menu-tooltip="Invert colors"
|
||||
color-interpolation-filters="sRGB">
|
||||
<feColorMatrix
|
||||
id="feColorMatrix3322"
|
||||
type="saturate"
|
||||
values="1"
|
||||
result="fbSourceGraphic" />
|
||||
<feColorMatrix
|
||||
id="feColorMatrix3324"
|
||||
in="fbSourceGraphic"
|
||||
values="-1 0 0 0 1 0 -1 0 0 1 0 0 -1 0 1 0 0 0 1 0 " />
|
||||
</filter>
|
||||
<filter
|
||||
id="filter3326"
|
||||
inkscape:label="Invert"
|
||||
x="0"
|
||||
y="0"
|
||||
width="1"
|
||||
height="1"
|
||||
inkscape:menu="Color"
|
||||
inkscape:menu-tooltip="Invert colors"
|
||||
color-interpolation-filters="sRGB">
|
||||
<feColorMatrix
|
||||
id="feColorMatrix3328"
|
||||
type="saturate"
|
||||
values="1"
|
||||
result="fbSourceGraphic" />
|
||||
<feColorMatrix
|
||||
id="feColorMatrix3330"
|
||||
in="fbSourceGraphic"
|
||||
values="-1 0 0 0 1 0 -1 0 0 1 0 0 -1 0 1 0 0 0 1 0 " />
|
||||
</filter>
|
||||
<filter
|
||||
id="filter3332"
|
||||
inkscape:label="Invert"
|
||||
x="0"
|
||||
y="0"
|
||||
width="1"
|
||||
height="1"
|
||||
inkscape:menu="Color"
|
||||
inkscape:menu-tooltip="Invert colors"
|
||||
color-interpolation-filters="sRGB">
|
||||
<feColorMatrix
|
||||
id="feColorMatrix3334"
|
||||
type="saturate"
|
||||
values="1"
|
||||
result="fbSourceGraphic" />
|
||||
<feColorMatrix
|
||||
id="feColorMatrix3336"
|
||||
in="fbSourceGraphic"
|
||||
values="-1 0 0 0 1 0 -1 0 0 1 0 0 -1 0 1 0 0 0 1 0 "
|
||||
result="fbSourceGraphic" />
|
||||
<feColorMatrix
|
||||
result="fbSourceGraphicAlpha"
|
||||
in="fbSourceGraphic"
|
||||
values="0 0 0 -1 0 0 0 0 -1 0 0 0 0 -1 0 0 0 0 1 0"
|
||||
id="feColorMatrix3374" />
|
||||
<feColorMatrix
|
||||
id="feColorMatrix3376"
|
||||
type="saturate"
|
||||
values="1"
|
||||
result="fbSourceGraphic"
|
||||
in="fbSourceGraphic" />
|
||||
<feColorMatrix
|
||||
id="feColorMatrix3378"
|
||||
in="fbSourceGraphic"
|
||||
values="-1 0 0 0 1 0 -1 0 0 1 0 0 -1 0 1 0 0 0 1 0 " />
|
||||
</filter>
|
||||
<filter
|
||||
id="filter3338"
|
||||
inkscape:label="Invert"
|
||||
x="0"
|
||||
y="0"
|
||||
width="1"
|
||||
height="1"
|
||||
inkscape:menu="Color"
|
||||
inkscape:menu-tooltip="Invert colors"
|
||||
color-interpolation-filters="sRGB">
|
||||
<feColorMatrix
|
||||
id="feColorMatrix3340"
|
||||
type="saturate"
|
||||
values="1"
|
||||
result="fbSourceGraphic" />
|
||||
<feColorMatrix
|
||||
id="feColorMatrix3342"
|
||||
in="fbSourceGraphic"
|
||||
values="-1 0 0 0 1 0 -1 0 0 1 0 0 -1 0 1 0 0 0 1 0 "
|
||||
result="fbSourceGraphic" />
|
||||
<feColorMatrix
|
||||
result="fbSourceGraphicAlpha"
|
||||
in="fbSourceGraphic"
|
||||
values="0 0 0 -1 0 0 0 0 -1 0 0 0 0 -1 0 0 0 0 1 0"
|
||||
id="feColorMatrix3380" />
|
||||
<feColorMatrix
|
||||
id="feColorMatrix3382"
|
||||
type="saturate"
|
||||
values="1"
|
||||
result="fbSourceGraphic"
|
||||
in="fbSourceGraphic" />
|
||||
<feColorMatrix
|
||||
id="feColorMatrix3384"
|
||||
in="fbSourceGraphic"
|
||||
values="-1 0 0 0 1 0 -1 0 0 1 0 0 -1 0 1 0 0 0 1 0 " />
|
||||
</filter>
|
||||
<filter
|
||||
id="filter3344"
|
||||
inkscape:label="Invert"
|
||||
x="0"
|
||||
y="0"
|
||||
width="1"
|
||||
height="1"
|
||||
inkscape:menu="Color"
|
||||
inkscape:menu-tooltip="Invert colors"
|
||||
color-interpolation-filters="sRGB">
|
||||
<feColorMatrix
|
||||
id="feColorMatrix3346"
|
||||
type="saturate"
|
||||
values="1"
|
||||
result="fbSourceGraphic" />
|
||||
<feColorMatrix
|
||||
id="feColorMatrix3348"
|
||||
in="fbSourceGraphic"
|
||||
values="-1 0 0 0 1 0 -1 0 0 1 0 0 -1 0 1 0 0 0 1 0 "
|
||||
result="fbSourceGraphic" />
|
||||
<feColorMatrix
|
||||
result="fbSourceGraphicAlpha"
|
||||
in="fbSourceGraphic"
|
||||
values="0 0 0 -1 0 0 0 0 -1 0 0 0 0 -1 0 0 0 0 1 0"
|
||||
id="feColorMatrix3386" />
|
||||
<feColorMatrix
|
||||
id="feColorMatrix3388"
|
||||
type="saturate"
|
||||
values="1"
|
||||
result="fbSourceGraphic"
|
||||
in="fbSourceGraphic" />
|
||||
<feColorMatrix
|
||||
id="feColorMatrix3390"
|
||||
in="fbSourceGraphic"
|
||||
values="-1 0 0 0 1 0 -1 0 0 1 0 0 -1 0 1 0 0 0 1 0 " />
|
||||
</filter>
|
||||
<filter
|
||||
id="filter3350"
|
||||
inkscape:label="Invert"
|
||||
x="0"
|
||||
y="0"
|
||||
width="1"
|
||||
height="1"
|
||||
inkscape:menu="Color"
|
||||
inkscape:menu-tooltip="Invert colors"
|
||||
color-interpolation-filters="sRGB">
|
||||
<feColorMatrix
|
||||
id="feColorMatrix3352"
|
||||
type="saturate"
|
||||
values="1"
|
||||
result="fbSourceGraphic" />
|
||||
<feColorMatrix
|
||||
id="feColorMatrix3354"
|
||||
in="fbSourceGraphic"
|
||||
values="-1 0 0 0 1 0 -1 0 0 1 0 0 -1 0 1 0 0 0 1 0 "
|
||||
result="fbSourceGraphic" />
|
||||
<feColorMatrix
|
||||
result="fbSourceGraphicAlpha"
|
||||
in="fbSourceGraphic"
|
||||
values="0 0 0 -1 0 0 0 0 -1 0 0 0 0 -1 0 0 0 0 1 0"
|
||||
id="feColorMatrix3392" />
|
||||
<feColorMatrix
|
||||
id="feColorMatrix3394"
|
||||
type="saturate"
|
||||
values="1"
|
||||
result="fbSourceGraphic"
|
||||
in="fbSourceGraphic" />
|
||||
<feColorMatrix
|
||||
id="feColorMatrix3396"
|
||||
in="fbSourceGraphic"
|
||||
values="-1 0 0 0 1 0 -1 0 0 1 0 0 -1 0 1 0 0 0 1 0 " />
|
||||
</filter>
|
||||
<filter
|
||||
id="filter3356"
|
||||
inkscape:label="Invert"
|
||||
x="0"
|
||||
y="0"
|
||||
width="1"
|
||||
height="1"
|
||||
inkscape:menu="Color"
|
||||
inkscape:menu-tooltip="Invert colors"
|
||||
color-interpolation-filters="sRGB">
|
||||
<feColorMatrix
|
||||
id="feColorMatrix3358"
|
||||
type="saturate"
|
||||
values="1"
|
||||
result="fbSourceGraphic" />
|
||||
<feColorMatrix
|
||||
id="feColorMatrix3360"
|
||||
in="fbSourceGraphic"
|
||||
values="-1 0 0 0 1 0 -1 0 0 1 0 0 -1 0 1 0 0 0 1 0 "
|
||||
result="fbSourceGraphic" />
|
||||
<feColorMatrix
|
||||
result="fbSourceGraphicAlpha"
|
||||
in="fbSourceGraphic"
|
||||
values="0 0 0 -1 0 0 0 0 -1 0 0 0 0 -1 0 0 0 0 1 0"
|
||||
id="feColorMatrix3398" />
|
||||
<feColorMatrix
|
||||
id="feColorMatrix3400"
|
||||
type="saturate"
|
||||
values="1"
|
||||
result="fbSourceGraphic"
|
||||
in="fbSourceGraphic" />
|
||||
<feColorMatrix
|
||||
id="feColorMatrix3402"
|
||||
in="fbSourceGraphic"
|
||||
values="-1 0 0 0 1 0 -1 0 0 1 0 0 -1 0 1 0 0 0 1 0 " />
|
||||
</filter>
|
||||
<filter
|
||||
id="filter3362"
|
||||
inkscape:label="Invert"
|
||||
x="0"
|
||||
y="0"
|
||||
width="1"
|
||||
height="1"
|
||||
inkscape:menu="Color"
|
||||
inkscape:menu-tooltip="Invert colors"
|
||||
color-interpolation-filters="sRGB">
|
||||
<feColorMatrix
|
||||
id="feColorMatrix3364"
|
||||
type="saturate"
|
||||
values="1"
|
||||
result="fbSourceGraphic" />
|
||||
<feColorMatrix
|
||||
id="feColorMatrix3366"
|
||||
in="fbSourceGraphic"
|
||||
values="-1 0 0 0 1 0 -1 0 0 1 0 0 -1 0 1 0 0 0 1 0 "
|
||||
result="fbSourceGraphic" />
|
||||
<feColorMatrix
|
||||
result="fbSourceGraphicAlpha"
|
||||
in="fbSourceGraphic"
|
||||
values="0 0 0 -1 0 0 0 0 -1 0 0 0 0 -1 0 0 0 0 1 0"
|
||||
id="feColorMatrix3404" />
|
||||
<feColorMatrix
|
||||
id="feColorMatrix3406"
|
||||
type="saturate"
|
||||
values="1"
|
||||
result="fbSourceGraphic"
|
||||
in="fbSourceGraphic" />
|
||||
<feColorMatrix
|
||||
id="feColorMatrix3408"
|
||||
in="fbSourceGraphic"
|
||||
values="-1 0 0 0 1 0 -1 0 0 1 0 0 -1 0 1 0 0 0 1 0 " />
|
||||
</filter>
|
||||
<filter
|
||||
id="filter3368"
|
||||
inkscape:label="Invert"
|
||||
x="0"
|
||||
y="0"
|
||||
width="1"
|
||||
height="1"
|
||||
inkscape:menu="Color"
|
||||
inkscape:menu-tooltip="Invert colors"
|
||||
color-interpolation-filters="sRGB">
|
||||
<feColorMatrix
|
||||
id="feColorMatrix3370"
|
||||
type="saturate"
|
||||
values="1"
|
||||
result="fbSourceGraphic" />
|
||||
<feColorMatrix
|
||||
id="feColorMatrix3372"
|
||||
in="fbSourceGraphic"
|
||||
values="-1 0 0 0 1 0 -1 0 0 1 0 0 -1 0 1 0 0 0 1 0 "
|
||||
result="fbSourceGraphic" />
|
||||
<feColorMatrix
|
||||
result="fbSourceGraphicAlpha"
|
||||
in="fbSourceGraphic"
|
||||
values="0 0 0 -1 0 0 0 0 -1 0 0 0 0 -1 0 0 0 0 1 0"
|
||||
id="feColorMatrix3410" />
|
||||
<feColorMatrix
|
||||
id="feColorMatrix3412"
|
||||
type="saturate"
|
||||
values="1"
|
||||
result="fbSourceGraphic"
|
||||
in="fbSourceGraphic" />
|
||||
<feColorMatrix
|
||||
id="feColorMatrix3414"
|
||||
in="fbSourceGraphic"
|
||||
values="-1 0 0 0 1 0 -1 0 0 1 0 0 -1 0 1 0 0 0 1 0 " />
|
||||
</filter>
|
||||
</defs>
|
||||
<sodipodi:namedview
|
||||
pagecolor="#808080"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1"
|
||||
objecttolerance="10"
|
||||
gridtolerance="10"
|
||||
guidetolerance="10"
|
||||
inkscape:pageopacity="0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="1364"
|
||||
inkscape:window-height="708"
|
||||
id="namedview5371"
|
||||
showgrid="true"
|
||||
borderlayer="true"
|
||||
inkscape:showpageshadow="false"
|
||||
inkscape:zoom="5.27"
|
||||
inkscape:cx="25.33344"
|
||||
inkscape:cy="36.016983"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="27"
|
||||
inkscape:window-maximized="0"
|
||||
inkscape:current-layer="layer1">
|
||||
<inkscape:grid
|
||||
type="xygrid"
|
||||
id="grid11933"
|
||||
empspacing="5"
|
||||
visible="true"
|
||||
enabled="true"
|
||||
snapvisiblegridlinesonly="true" />
|
||||
</sodipodi:namedview>
|
||||
<g
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1"
|
||||
inkscape:label="tiles"
|
||||
style="display:inline">
|
||||
<rect
|
||||
style="color:#000000;fill:#000000;fill-opacity:0;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;filter:url(#filter3278)"
|
||||
id="rect12451"
|
||||
width="24"
|
||||
height="24"
|
||||
x="0"
|
||||
y="0" />
|
||||
<rect
|
||||
y="24"
|
||||
x="0"
|
||||
height="24"
|
||||
width="24"
|
||||
id="rect12453"
|
||||
style="color:#000000;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;filter:url(#filter3284);opacity:0" />
|
||||
<rect
|
||||
y="0"
|
||||
x="24"
|
||||
height="24"
|
||||
width="24"
|
||||
id="rect12455"
|
||||
style="color:#000000;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;filter:url(#filter3290);opacity:0.00858369" />
|
||||
<rect
|
||||
style="color:#000000;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;filter:url(#filter3296);opacity:0"
|
||||
id="rect12457"
|
||||
width="24"
|
||||
height="24"
|
||||
x="24"
|
||||
y="24" />
|
||||
<rect
|
||||
style="color:#000000;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;filter:url(#filter3302);opacity:0"
|
||||
id="rect12459"
|
||||
width="24"
|
||||
height="24"
|
||||
x="48"
|
||||
y="0" />
|
||||
<rect
|
||||
y="24"
|
||||
x="48"
|
||||
height="24"
|
||||
width="24"
|
||||
id="rect12461"
|
||||
style="color:#000000;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;filter:url(#filter3308);opacity:0" />
|
||||
<rect
|
||||
y="0"
|
||||
x="72"
|
||||
height="24"
|
||||
width="24"
|
||||
id="rect12463"
|
||||
style="color:#000000;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;filter:url(#filter3314);opacity:0" />
|
||||
<rect
|
||||
style="color:#000000;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;filter:url(#filter3320);opacity:0"
|
||||
id="rect12465"
|
||||
width="24"
|
||||
height="24"
|
||||
x="72"
|
||||
y="24" />
|
||||
</g>
|
||||
<g
|
||||
inkscape:groupmode="layer"
|
||||
id="layer2"
|
||||
inkscape:label="spinner"
|
||||
sodipodi:insensitive="true">
|
||||
<g
|
||||
transform="matrix(0.28240106,0,0,0.28240106,146.92015,-382.52444)"
|
||||
id="g10450-5"
|
||||
style="display:inline;filter:url(#filter3326)">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
style="opacity:0.6;color:#000000;fill:none;stroke:#ffffff;stroke-width:7.08212566;stroke-linecap:round;stroke-opacity:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
|
||||
d="m -477.76072,1373.3569 0,9.4717"
|
||||
id="path18768"
|
||||
sodipodi:nodetypes="cc"
|
||||
inkscape:transform-center-y="-4.6808838" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
inkscape:transform-center-y="-3.3099227"
|
||||
sodipodi:nodetypes="cc"
|
||||
id="path18770"
|
||||
d="m -461.0171,1380.2922 -7.23427,7.3824"
|
||||
style="opacity:0.7;color:#000000;fill:none;stroke:#ffffff;stroke-width:7.08212566;stroke-linecap:round;stroke-opacity:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
|
||||
inkscape:transform-center-x="-3.3098966" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
inkscape:transform-center-x="-4.6808962"
|
||||
style="opacity:0.8;color:#000000;fill:none;stroke:#ffffff;stroke-width:7.08212566;stroke-linecap:round;stroke-opacity:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
|
||||
d="m -454.08163,1397.0359 -9.47165,0"
|
||||
id="path18772"
|
||||
sodipodi:nodetypes="cc"
|
||||
inkscape:transform-center-y="-2.6596956e-05" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cc"
|
||||
id="path18774"
|
||||
d="m -461.01709,1413.7796 -6.93831,-7.0864"
|
||||
style="opacity:0.9;color:#000000;fill:none;stroke:#ffffff;stroke-width:7.08212566;stroke-linecap:round;stroke-opacity:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
|
||||
inkscape:transform-center-x="-3.3098966"
|
||||
inkscape:transform-center-y="3.3098652" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
inkscape:transform-center-y="4.6808757"
|
||||
style="color:#000000;fill:none;stroke:#ffffff;stroke-width:7.08212566;stroke-linecap:round;stroke-opacity:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
|
||||
d="m -477.76074,1420.715 9e-5,-9.4716"
|
||||
id="path18776"
|
||||
sodipodi:nodetypes="cc" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cc"
|
||||
id="path18778"
|
||||
d="m -494.50442,1413.7796 6.79048,-6.9384"
|
||||
style="opacity:0.3;color:#000000;fill:none;stroke:#ffffff;stroke-width:7.08212566;stroke-linecap:round;stroke-opacity:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
|
||||
inkscape:transform-center-y="3.3098769"
|
||||
inkscape:transform-center-x="3.3098883" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
inkscape:transform-center-x="4.6808941"
|
||||
style="opacity:0.4;color:#000000;fill:none;stroke:#ffffff;stroke-width:7.08212566;stroke-linecap:round;stroke-opacity:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
|
||||
d="m -501.43987,1397.0359 9.47174,0"
|
||||
id="path18780"
|
||||
sodipodi:nodetypes="cc"
|
||||
inkscape:transform-center-y="-2.6596956e-05" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cc"
|
||||
id="path18782"
|
||||
d="m -494.5044,1380.2922 6.64243,6.9384"
|
||||
style="opacity:0.5;color:#000000;fill:none;stroke:#ffffff;stroke-width:7.08212566;stroke-linecap:round;stroke-opacity:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
|
||||
inkscape:transform-center-x="3.3098902"
|
||||
inkscape:transform-center-y="-3.3099302" />
|
||||
</g>
|
||||
<use
|
||||
style="display:inline;filter:url(#filter3332)"
|
||||
x="0"
|
||||
y="0"
|
||||
xlink:href="#g10450-5"
|
||||
id="use4981"
|
||||
transform="matrix(0.70710678,0.70710678,-0.70710678,0.70710678,36,-4.9705636)"
|
||||
width="400"
|
||||
height="400" />
|
||||
<use
|
||||
style="display:inline;filter:url(#filter3338)"
|
||||
x="0"
|
||||
y="0"
|
||||
xlink:href="#use4981"
|
||||
id="use4983"
|
||||
transform="matrix(0.70710678,0.70710678,-0.70710678,0.70710678,43.032478,-21.909695)"
|
||||
width="400"
|
||||
height="400" />
|
||||
<use
|
||||
style="display:inline;filter:url(#filter3344)"
|
||||
x="0"
|
||||
y="0"
|
||||
xlink:href="#use4983"
|
||||
id="use4985"
|
||||
transform="matrix(0.70710678,0.70710678,-0.70710678,0.70710678,50.081986,-38.904617)"
|
||||
width="400"
|
||||
height="400" />
|
||||
<use
|
||||
style="display:inline;filter:url(#filter3350)"
|
||||
x="0"
|
||||
y="0"
|
||||
xlink:href="#use4985"
|
||||
id="use4987"
|
||||
transform="matrix(0.70710678,0.70710678,-0.70710678,0.70710678,-38.919996,-31.872139)"
|
||||
width="400"
|
||||
height="400" />
|
||||
<use
|
||||
style="display:inline;filter:url(#filter3356)"
|
||||
x="0"
|
||||
y="0"
|
||||
xlink:href="#use4987"
|
||||
id="use4989"
|
||||
transform="matrix(0.70710678,0.70710678,-0.70710678,0.70710678,52.986628,2.0890543)"
|
||||
width="400"
|
||||
height="400" />
|
||||
<use
|
||||
style="display:inline;filter:url(#filter3362)"
|
||||
x="0"
|
||||
y="0"
|
||||
xlink:href="#use4989"
|
||||
id="use4991"
|
||||
transform="matrix(0.70710678,0.70710678,-0.70710678,0.70710678,60.013026,-14.912936)"
|
||||
width="400"
|
||||
height="400" />
|
||||
<use
|
||||
style="display:inline;filter:url(#filter3368)"
|
||||
x="0"
|
||||
y="0"
|
||||
xlink:href="#use4991"
|
||||
id="use4993"
|
||||
transform="matrix(0.70710678,0.70710678,-0.70710678,0.70710678,67.022396,-31.859127)"
|
||||
width="400"
|
||||
height="400" />
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 22 KiB |
@@ -3,9 +3,6 @@
|
||||
/* FIXME:
|
||||
- white edge highlight with text-shadow and icon-shadow for panel-button
|
||||
- better shading of the panel (dark 5%) - impossible without multipoint gradients, image-bg is a hack
|
||||
- bubble menus: separators
|
||||
- submenus (network, ...)
|
||||
- startup notification spinner
|
||||
*/
|
||||
|
||||
#panel {
|
||||
@@ -100,6 +97,7 @@
|
||||
|
||||
#appMenu {
|
||||
text-shadow: 0 0 0 transparent !important;
|
||||
spinner-image: url("classic-process-working.svg");
|
||||
}
|
||||
|
||||
/* used for the app menu header only */
|
||||
@@ -140,10 +138,31 @@
|
||||
color: #888;
|
||||
}
|
||||
|
||||
.popup-separator-menu-item {
|
||||
-gradient-height: 1px;
|
||||
-gradient-start: rgba(0,0,0,0.0);
|
||||
-gradient-end: rgba(0,0,0,0.15);
|
||||
-margin-horizontal: 24px;
|
||||
height: 1px;
|
||||
padding: 8px 0px;
|
||||
}
|
||||
|
||||
.popup-subtitle-menu-item, .popup-subtitle-menu-item:insensitive {
|
||||
color: #000;
|
||||
}
|
||||
|
||||
.popup-submenu-menu-item:open {
|
||||
background-color: #888;
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
.popup-sub-menu {
|
||||
background-gradient-start: #ddd;
|
||||
background-gradient-end: #dfdfdf;
|
||||
background-gradient-direction: vertical;
|
||||
box-shadow: inset 0px 1px 3px rgba(0,0,0,0.4);
|
||||
}
|
||||
|
||||
/* CALENDAR */
|
||||
|
||||
.calendar {}
|
||||
|
||||
@@ -25,7 +25,9 @@ const Convenience = Me.imports.convenience;
|
||||
const appSys = Shell.AppSystem.get_default();
|
||||
|
||||
const APPLICATION_ICON_SIZE = 32;
|
||||
const HORIZ_FACTOR = 5;
|
||||
const MENU_HEIGHT_OFFSET = 132;
|
||||
const NAVIGATION_REGION_OVERSHOOT = 50;
|
||||
|
||||
const ActivitiesMenuItem = new Lang.Class({
|
||||
Name: 'ActivitiesMenuItem',
|
||||
@@ -53,12 +55,21 @@ const ApplicationMenuItem = new Lang.Class({
|
||||
this._app = app;
|
||||
this._button = button;
|
||||
|
||||
let icon = this._app.create_icon_texture(APPLICATION_ICON_SIZE);
|
||||
this.addActor(icon);
|
||||
this._iconBin = new St.Bin();
|
||||
this.addActor(this._iconBin);
|
||||
|
||||
let appLabel = new St.Label({ text: app.get_name() });
|
||||
this.addActor(appLabel, { span: -1, expand: true });
|
||||
this.actor.label_actor = appLabel;
|
||||
|
||||
let textureCache = St.TextureCache.get_default();
|
||||
let iconThemeChangedId = textureCache.connect('icon-theme-changed',
|
||||
Lang.bind(this, this._updateIcon));
|
||||
this.actor.connect('destroy', Lang.bind(this,
|
||||
function() {
|
||||
textureCache.disconnect(iconThemeChangedId);
|
||||
}));
|
||||
this._updateIcon();
|
||||
},
|
||||
|
||||
activate: function(event) {
|
||||
@@ -76,6 +87,10 @@ const ApplicationMenuItem = new Lang.Class({
|
||||
|
||||
_getPreferredWidth: function(actor, forHeight, alloc) {
|
||||
alloc.min_size = alloc.natural_size = -1;
|
||||
},
|
||||
|
||||
_updateIcon: function() {
|
||||
this._iconBin.set_child(this._app.create_icon_texture(APPLICATION_ICON_SIZE));
|
||||
}
|
||||
});
|
||||
|
||||
@@ -88,6 +103,9 @@ const CategoryMenuItem = new Lang.Class({
|
||||
this._category = category;
|
||||
this._button = button;
|
||||
|
||||
this._oldX = -1;
|
||||
this._oldY = -1;
|
||||
|
||||
let name;
|
||||
if (this._category)
|
||||
name = this._category.get_name();
|
||||
@@ -95,6 +113,7 @@ const CategoryMenuItem = new Lang.Class({
|
||||
name = _("Favorites");
|
||||
|
||||
this.addActor(new St.Label({ text: name }));
|
||||
this.actor.connect('motion-event', Lang.bind(this, this._onMotionEvent));
|
||||
},
|
||||
|
||||
activate: function(event) {
|
||||
@@ -103,6 +122,81 @@ const CategoryMenuItem = new Lang.Class({
|
||||
this.parent(event);
|
||||
},
|
||||
|
||||
_isNavigatingSubmenu: function([x, y]) {
|
||||
let [posX, posY] = this.actor.get_transformed_position();
|
||||
|
||||
if (this._oldX == -1) {
|
||||
this._oldX = x;
|
||||
this._oldY = y;
|
||||
return true;
|
||||
}
|
||||
|
||||
let deltaX = Math.abs(x - this._oldX);
|
||||
let deltaY = Math.abs(y - this._oldY);
|
||||
|
||||
this._oldX = x;
|
||||
this._oldY = y;
|
||||
|
||||
// If it lies outside the x-coordinates then it is definitely outside.
|
||||
if (posX > x || posX + this.actor.width < x)
|
||||
return false;
|
||||
|
||||
// If it lies inside the menu item then it is definitely inside.
|
||||
if (posY <= y && posY + this.actor.height >= y)
|
||||
return true;
|
||||
|
||||
// We want the keep-up triangle only if the movement is more
|
||||
// horizontal than vertical.
|
||||
if (deltaX * HORIZ_FACTOR < deltaY)
|
||||
return false;
|
||||
|
||||
// Check whether the point lies inside triangle ABC, and a similar
|
||||
// triangle on the other side of the menu item.
|
||||
//
|
||||
// +---------------------+
|
||||
// | menu item |
|
||||
// A +---------------------+ C
|
||||
// P |
|
||||
// B
|
||||
|
||||
// Ensure that the point P always lies below line AC so that we can
|
||||
// only check for triangle ABC.
|
||||
if (posY > y) {
|
||||
let offset = posY - y;
|
||||
y = posY + this.actor.height + offset;
|
||||
}
|
||||
|
||||
// Ensure that A is (0, 0).
|
||||
x -= posX;
|
||||
y -= posY + this.actor.height;
|
||||
|
||||
// Check which side of line AB the point P lies on by taking the
|
||||
// cross-product of AB and AP. See:
|
||||
// http://stackoverflow.com/questions/3461453/determine-which-side-of-a-line-a-point-lies
|
||||
if (((this.actor.width * y) - (NAVIGATION_REGION_OVERSHOOT * x)) <= 0)
|
||||
return true;
|
||||
|
||||
return false;
|
||||
},
|
||||
|
||||
_onMotionEvent: function(actor, event) {
|
||||
if (!Clutter.get_pointer_grab()) {
|
||||
this._oldX = -1;
|
||||
this._oldY = -1;
|
||||
Clutter.grab_pointer(this.actor);
|
||||
}
|
||||
this.actor.hover = true;
|
||||
|
||||
if (this._isNavigatingSubmenu(event.get_coords()))
|
||||
return true;
|
||||
|
||||
this._oldX = -1;
|
||||
this._oldY = -1;
|
||||
this.actor.hover = false;
|
||||
Clutter.ungrab_pointer();
|
||||
return false;
|
||||
},
|
||||
|
||||
setActive: function(active, params) {
|
||||
if (active) {
|
||||
this._button.selectCategory(this._category, this);
|
||||
@@ -231,6 +325,17 @@ const ApplicationsButton = new Lang.Class({
|
||||
return false;
|
||||
},
|
||||
|
||||
_onMenuKeyPress: function(actor, event) {
|
||||
let symbol = event.get_key_symbol();
|
||||
if (symbol == Clutter.KEY_Left || symbol == Clutter.KEY_Right) {
|
||||
let direction = symbol == Clutter.KEY_Left ? Gtk.DirectionType.LEFT
|
||||
: Gtk.DirectionType.RIGHT;
|
||||
if (this.menu.actor.navigate_focus(global.stage.key_focus, direction, false))
|
||||
return true;
|
||||
}
|
||||
return this.parent(actor, event);
|
||||
},
|
||||
|
||||
_onVertSepRepaint: function(area) {
|
||||
let cr = area.get_context();
|
||||
let themeNode = area.get_theme_node();
|
||||
|
||||
@@ -1,13 +1,17 @@
|
||||
const Clutter = imports.gi.Clutter;
|
||||
const GLib = imports.gi.GLib;
|
||||
const Gio = imports.gi.Gio;
|
||||
const Gtk = imports.gi.Gtk;
|
||||
const Meta = imports.gi.Meta;
|
||||
const Shell = imports.gi.Shell;
|
||||
const St = imports.gi.St;
|
||||
|
||||
const DND = imports.ui.dnd;
|
||||
const Hash = imports.misc.hash;
|
||||
const Lang = imports.lang;
|
||||
const Main = imports.ui.main;
|
||||
const MessageTray = imports.ui.messageTray;
|
||||
const PanelMenu = imports.ui.panelMenu;
|
||||
const PopupMenu = imports.ui.popupMenu;
|
||||
|
||||
const ExtensionUtils = imports.misc.extensionUtils;
|
||||
@@ -15,10 +19,12 @@ const Me = ExtensionUtils.getCurrentExtension();
|
||||
const Convenience = Me.imports.convenience;
|
||||
|
||||
const ICON_TEXTURE_SIZE = 24;
|
||||
const DND_ACTIVATE_TIMEOUT = 500;
|
||||
|
||||
const GroupingMode = {
|
||||
NEVER: 0,
|
||||
ALWAYS: 1
|
||||
AUTO: 1,
|
||||
ALWAYS: 2
|
||||
};
|
||||
|
||||
|
||||
@@ -46,6 +52,12 @@ const WindowTitle = new Lang.Class({
|
||||
this._label = new St.Label();
|
||||
this.actor.add(this._label);
|
||||
|
||||
this._textureCache = St.TextureCache.get_default();
|
||||
this._iconThemeChangedId =
|
||||
this._textureCache.connect('icon-theme-changed', Lang.bind(this,
|
||||
function() {
|
||||
this._icon.child = app.create_icon_texture(ICON_TEXTURE_SIZE);
|
||||
}));
|
||||
this.actor.connect('destroy', Lang.bind(this, this._onDestroy));
|
||||
|
||||
this._notifyTitleId =
|
||||
@@ -70,6 +82,7 @@ const WindowTitle = new Lang.Class({
|
||||
},
|
||||
|
||||
_onDestroy: function() {
|
||||
this._textureCache.disconnect(this._iconThemeChangedId);
|
||||
this._metaWindow.disconnect(this._notifyTitleId);
|
||||
this._metaWindow.disconnect(this._notifyMinimizedId);
|
||||
}
|
||||
@@ -165,9 +178,9 @@ const AppButton = new Lang.Class({
|
||||
this._multiWindowTitle = new St.BoxLayout({ x_expand: true });
|
||||
stack.add_actor(this._multiWindowTitle);
|
||||
|
||||
let icon = new St.Bin({ style_class: 'window-button-icon',
|
||||
child: app.create_icon_texture(ICON_TEXTURE_SIZE) });
|
||||
this._multiWindowTitle.add(icon);
|
||||
this._icon = new St.Bin({ style_class: 'window-button-icon',
|
||||
child: app.create_icon_texture(ICON_TEXTURE_SIZE) });
|
||||
this._multiWindowTitle.add(this._icon);
|
||||
this._multiWindowTitle.add(new St.Label({ text: app.get_name() }));
|
||||
|
||||
this._menuManager = new PopupMenu.PopupMenuManager(this);
|
||||
@@ -177,6 +190,12 @@ const AppButton = new Lang.Class({
|
||||
this._menuManager.addMenu(this._menu);
|
||||
Main.uiGroup.add_actor(this._menu.actor);
|
||||
|
||||
this._textureCache = St.TextureCache.get_default();
|
||||
this._iconThemeChangedId =
|
||||
this._textureCache.connect('icon-theme-changed', Lang.bind(this,
|
||||
function() {
|
||||
this._icon.child = app.create_icon_texture(ICON_TEXTURE_SIZE);
|
||||
}));
|
||||
this.actor.connect('clicked', Lang.bind(this, this._onClicked));
|
||||
this.actor.connect('destroy', Lang.bind(this, this._onDestroy));
|
||||
|
||||
@@ -236,11 +255,13 @@ const AppButton = new Lang.Class({
|
||||
|
||||
if (this._singleWindowTitle.visible) {
|
||||
if (!this._windowTitle) {
|
||||
this._windowTitle = new WindowTitle(windows[0]);
|
||||
this.metaWindow = windows[0];
|
||||
this._windowTitle = new WindowTitle(this.metaWindow);
|
||||
this._singleWindowTitle.child = this._windowTitle.actor;
|
||||
}
|
||||
} else {
|
||||
if (this._windowTitle) {
|
||||
this.metaWindow = null;
|
||||
this._singleWindowTitle.child = null;
|
||||
this._windowTitle = null;
|
||||
}
|
||||
@@ -279,6 +300,7 @@ const AppButton = new Lang.Class({
|
||||
},
|
||||
|
||||
_onDestroy: function() {
|
||||
this._textureCache.disconnect(this._iconThemeChangedId);
|
||||
global.window_manager.disconnect(this._switchWorkspaceId);
|
||||
this._windowTracker.disconnect(this._notifyFocusId);
|
||||
this.app.disconnect(this._windowsChangedId);
|
||||
@@ -352,6 +374,106 @@ const TrayButton = new Lang.Class({
|
||||
}
|
||||
});
|
||||
|
||||
const WorkspaceIndicator = new Lang.Class({
|
||||
Name: 'WindowList.WorkspaceIndicator',
|
||||
Extends: PanelMenu.Button,
|
||||
|
||||
_init: function(){
|
||||
this.parent(0.0, _("Workspace Indicator"));
|
||||
this.actor.add_style_class_name('window-list-workspace-indicator');
|
||||
|
||||
this._currentWorkspace = global.screen.get_active_workspace().index();
|
||||
this.statusLabel = new St.Label({ text: this._getStatusText() });
|
||||
|
||||
this.actor.add_actor(this.statusLabel);
|
||||
|
||||
this.workspacesItems = [];
|
||||
|
||||
this._screenSignals = [];
|
||||
this._screenSignals.push(global.screen.connect_after('workspace-added', Lang.bind(this,this._updateMenu)));
|
||||
this._screenSignals.push(global.screen.connect_after('workspace-removed', Lang.bind(this,this._updateMenu)));
|
||||
this._screenSignals.push(global.screen.connect_after('workspace-switched', Lang.bind(this,this._updateIndicator)));
|
||||
|
||||
this.actor.connect('scroll-event', Lang.bind(this, this._onScrollEvent));
|
||||
this._updateMenu();
|
||||
|
||||
this._settings = new Gio.Settings({ schema: 'org.gnome.desktop.wm.preferences' });
|
||||
this._settingsChangedId = this._settings.connect('changed::workspace-names', Lang.bind(this, this._updateMenu));
|
||||
},
|
||||
|
||||
destroy: function() {
|
||||
for (let i = 0; i < this._screenSignals.length; i++)
|
||||
global.screen.disconnect(this._screenSignals[i]);
|
||||
|
||||
if (this._settingsChangedId) {
|
||||
this._settings.disconnect(this._settingsChangedId);
|
||||
this._settingsChangedId = 0;
|
||||
}
|
||||
|
||||
this.parent();
|
||||
},
|
||||
|
||||
_updateIndicator: function() {
|
||||
this.workspacesItems[this._currentWorkspace].setShowDot(false);
|
||||
this._currentWorkspace = global.screen.get_active_workspace().index();
|
||||
this.workspacesItems[this._currentWorkspace].setShowDot(true);
|
||||
|
||||
this.statusLabel.set_text(this._getStatusText());
|
||||
},
|
||||
|
||||
_getStatusText: function() {
|
||||
let current = global.screen.get_active_workspace().index();
|
||||
let total = global.screen.n_workspaces;
|
||||
|
||||
return '%d / %d'.format(current + 1, total);
|
||||
},
|
||||
|
||||
_updateMenu: function() {
|
||||
this.menu.removeAll();
|
||||
this.workspacesItems = [];
|
||||
this._currentWorkspace = global.screen.get_active_workspace().index();
|
||||
|
||||
for(let i = 0; i < global.screen.n_workspaces; i++) {
|
||||
let name = Meta.prefs_get_workspace_name(i);
|
||||
let item = new PopupMenu.PopupMenuItem(name);
|
||||
item.workspaceId = i;
|
||||
|
||||
item.connect('activate', Lang.bind(this, function(item, event) {
|
||||
this._activate(item.workspaceId);
|
||||
}));
|
||||
|
||||
if (i == this._currentWorkspace)
|
||||
item.setShowDot(true);
|
||||
|
||||
this.menu.addMenuItem(item);
|
||||
this.workspacesItems[i] = item;
|
||||
}
|
||||
|
||||
this.statusLabel.set_text(this._getStatusText());
|
||||
},
|
||||
|
||||
_activate: function(index) {
|
||||
if(index >= 0 && index < global.screen.n_workspaces) {
|
||||
let metaWorkspace = global.screen.get_workspace_by_index(index);
|
||||
metaWorkspace.activate(global.get_current_time());
|
||||
}
|
||||
},
|
||||
|
||||
_onScrollEvent: function(actor, event) {
|
||||
let direction = event.get_scroll_direction();
|
||||
let diff = 0;
|
||||
if (direction == Clutter.ScrollDirection.DOWN) {
|
||||
diff = 1;
|
||||
} else if (direction == Clutter.ScrollDirection.UP) {
|
||||
diff = -1;
|
||||
} else {
|
||||
return;
|
||||
}
|
||||
|
||||
let newIndex = this._currentWorkspace + diff;
|
||||
this._activate(newIndex);
|
||||
},
|
||||
});
|
||||
|
||||
const WindowList = new Lang.Class({
|
||||
Name: 'WindowList',
|
||||
@@ -381,6 +503,26 @@ const WindowList = new Lang.Class({
|
||||
let spacing = node.get_length('spacing');
|
||||
this._windowList.layout_manager.spacing = spacing;
|
||||
}));
|
||||
this._windowList.connect('notify::allocation', Lang.bind(this,
|
||||
function() {
|
||||
if (this._groupingMode != GroupingMode.AUTO || this._grouped)
|
||||
return;
|
||||
|
||||
let allocation = this._windowList.allocation;
|
||||
let width = allocation.x2 - allocation.x1;
|
||||
let [, natWidth] = this._windowList.get_preferred_width(-1);
|
||||
if (width < natWidth) {
|
||||
this._grouped = true;
|
||||
Meta.later_add(Meta.LaterType.BEFORE_REDRAW,
|
||||
Lang.bind(this, this._populateWindowList));
|
||||
}
|
||||
}));
|
||||
|
||||
this._workspaceIndicator = new WorkspaceIndicator();
|
||||
box.add(this._workspaceIndicator.container);
|
||||
|
||||
this._menuManager = new PopupMenu.PopupMenuManager(this);
|
||||
this._menuManager.addMenu(this._workspaceIndicator.menu);
|
||||
|
||||
this._trayButton = new TrayButton();
|
||||
box.add(this._trayButton.actor);
|
||||
@@ -423,12 +565,30 @@ const WindowList = new Lang.Class({
|
||||
|
||||
this._overviewHidingId =
|
||||
Main.overview.connect('hiding', Lang.bind(this, function() {
|
||||
this.actor.show();
|
||||
this.actor.visible = !Main.layoutManager.primaryMonitor.inFullscreen;
|
||||
this._updateKeyboardAnchor();
|
||||
this._updateMessageTrayAnchor();
|
||||
}));
|
||||
this._updateMessageTrayAnchor();
|
||||
|
||||
this._fullscreenChangedId =
|
||||
global.screen.connect('in-fullscreen-changed', Lang.bind(this, function() {
|
||||
this._updateMessageTrayAnchor();
|
||||
}));
|
||||
|
||||
this._dragBeginId =
|
||||
Main.xdndHandler.connect('drag-begin',
|
||||
Lang.bind(this, this._onDragBegin));
|
||||
this._dragEndId =
|
||||
Main.xdndHandler.connect('drag-end',
|
||||
Lang.bind(this, this._onDragEnd));
|
||||
this._dragMonitor = {
|
||||
dragMotion: Lang.bind(this, this._onDragMotion)
|
||||
};
|
||||
|
||||
this._dndTimeoutId = 0;
|
||||
this._dndWindow = null;
|
||||
|
||||
this._settings = Convenience.getSettings();
|
||||
this._groupingModeChangedId =
|
||||
this._settings.connect('changed::grouping-mode',
|
||||
@@ -438,13 +598,14 @@ const WindowList = new Lang.Class({
|
||||
|
||||
_groupingModeChanged: function() {
|
||||
this._groupingMode = this._settings.get_enum('grouping-mode');
|
||||
this._grouped = this._groupingMode == GroupingMode.ALWAYS;
|
||||
this._populateWindowList();
|
||||
},
|
||||
|
||||
_populateWindowList: function() {
|
||||
this._windowList.destroy_all_children();
|
||||
|
||||
if (this._groupingMode == GroupingMode.NEVER) {
|
||||
if (!this._grouped) {
|
||||
let windows = Meta.get_window_actors(global.screen);
|
||||
for (let i = 0; i < windows.length; i++)
|
||||
this._onWindowAdded(null, windows[i].metaWindow);
|
||||
@@ -477,7 +638,7 @@ const WindowList = new Lang.Class({
|
||||
},
|
||||
|
||||
_onAppStateChanged: function(appSys, app) {
|
||||
if (this._groupingMode != GroupingMode.ALWAYS)
|
||||
if (!this._grouped)
|
||||
return;
|
||||
|
||||
if (app.state == Shell.AppState.RUNNING)
|
||||
@@ -508,7 +669,7 @@ const WindowList = new Lang.Class({
|
||||
if (!Shell.WindowTracker.get_default().is_window_interesting(win))
|
||||
return;
|
||||
|
||||
if (this._groupingMode != GroupingMode.NEVER)
|
||||
if (this._grouped)
|
||||
return;
|
||||
|
||||
let button = new WindowButton(win);
|
||||
@@ -519,8 +680,14 @@ const WindowList = new Lang.Class({
|
||||
},
|
||||
|
||||
_onWindowRemoved: function(ws, win) {
|
||||
if (this._groupingMode != GroupingMode.NEVER)
|
||||
if (this._grouped) {
|
||||
if (this._groupingMode == GroupingMode.AUTO) {
|
||||
this._grouped = false;
|
||||
this._populateWindowList();
|
||||
}
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
let children = this._windowList.get_children();
|
||||
for (let i = 0; i < children.length; i++) {
|
||||
@@ -559,7 +726,61 @@ const WindowList = new Lang.Class({
|
||||
}
|
||||
},
|
||||
|
||||
_onDragBegin: function() {
|
||||
DND.addDragMonitor(this._dragMonitor);
|
||||
},
|
||||
|
||||
_onDragEnd: function() {
|
||||
DND.removeDragMonitor(this._dragMonitor);
|
||||
this._removeActivateTimeout();
|
||||
},
|
||||
|
||||
_onDragMotion: function(dragEvent) {
|
||||
if (Main.overview.visible ||
|
||||
!this.actor.contains(dragEvent.targetActor)) {
|
||||
this._removeActivateTimeout();
|
||||
return DND.DragMotionResult.CONTINUE;
|
||||
}
|
||||
|
||||
let hoveredWindow = null;
|
||||
if (dragEvent.targetActor._delegate)
|
||||
hoveredWindow = dragEvent.targetActor._delegate.metaWindow;
|
||||
|
||||
if (!hoveredWindow ||
|
||||
this._dndWindow == hoveredWindow)
|
||||
return DND.DragMotionResult.CONTINUE;
|
||||
|
||||
this._removeActivateTimeout();
|
||||
|
||||
this._dndWindow = hoveredWindow;
|
||||
this._dndTimeoutId = GLib.timeout_add(GLib.PRIORITY_DEFAULT,
|
||||
DND_ACTIVATE_TIMEOUT,
|
||||
Lang.bind(this, this._activateWindow));
|
||||
|
||||
return DND.DragMotionResult.CONTINUE;
|
||||
},
|
||||
|
||||
_removeActivateTimeout: function() {
|
||||
if (this._dndTimeoutId)
|
||||
GLib.source_remove (this._dndTimeoutId);
|
||||
this._dndTimeoutId = 0;
|
||||
this._dndWindow = null;
|
||||
},
|
||||
|
||||
_activateWindow: function() {
|
||||
let [x, y] = global.get_pointer();
|
||||
let pickedActor = global.stage.get_actor_at_pos(Clutter.PickMode.ALL, x, y);
|
||||
|
||||
if (this._dndWindow && this.actor.contains(pickedActor))
|
||||
this._dndWindow.activate(global.get_current_time());
|
||||
this._dndWindow = null;
|
||||
this._dndTimeoutId = 0;
|
||||
|
||||
return false;
|
||||
},
|
||||
|
||||
_onDestroy: function() {
|
||||
this._workspaceIndicator.destroy();
|
||||
|
||||
Main.ctrlAltTabManager.removeGroup(this.actor);
|
||||
|
||||
@@ -584,6 +805,8 @@ const WindowList = new Lang.Class({
|
||||
Main.overview.disconnect(this._overviewShowingId);
|
||||
Main.overview.disconnect(this._overviewHidingId);
|
||||
|
||||
global.screen.disconnect(this._fullscreenChangedId);
|
||||
|
||||
this._settings.disconnect(this._groupingModeChangedId);
|
||||
|
||||
let windows = Meta.get_window_actors(global.screen);
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
<schemalist gettext-domain="gnome-shell-extensions">
|
||||
<enum id="org.gnome.shell.extensions.window-list.GroupingMode">
|
||||
<value value="0" nick="never"/>
|
||||
<value value="1" nick="always"/>
|
||||
<value value="1" nick="auto"/>
|
||||
<value value="2" nick="always"/>
|
||||
</enum>
|
||||
<schema id="org.gnome.shell.extensions.window-list"
|
||||
path="/org/gnome/shell/extensions/window-list/">
|
||||
@@ -11,7 +12,7 @@
|
||||
<_summary>When to group windows</_summary>
|
||||
<_description>
|
||||
Decides when to group windows from the same application on the
|
||||
window list. Possible values are "never" and "always".
|
||||
window list. Possible values are "never", "auto" and "always".
|
||||
</_description>
|
||||
</key>
|
||||
</schema>
|
||||
|
||||
@@ -47,6 +47,7 @@ const WindowListPrefsWidget = new GObject.Class({
|
||||
|
||||
let modeLabels = {
|
||||
'never': _("Never group windows"),
|
||||
'auto': _("Group windows when space is limited"),
|
||||
'always': _("Always group windows")
|
||||
};
|
||||
|
||||
@@ -59,9 +60,9 @@ const WindowListPrefsWidget = new GObject.Class({
|
||||
continue;
|
||||
}
|
||||
|
||||
radio = new Gtk.RadioButton({ group: radio,
|
||||
radio = new Gtk.RadioButton({ active: currentMode == mode,
|
||||
label: label,
|
||||
active: currentMode == mode });
|
||||
group: radio });
|
||||
grid.add(radio);
|
||||
|
||||
radio.connect('toggled', Lang.bind(this, function(button) {
|
||||
|
||||
@@ -23,6 +23,7 @@
|
||||
}
|
||||
|
||||
.window-button > StWidget {
|
||||
-st-natural-width: 250px;
|
||||
max-width: 250px;
|
||||
color: #bbb;
|
||||
background-color: black;
|
||||
@@ -65,3 +66,12 @@
|
||||
width: 24px;
|
||||
height: 24px;
|
||||
}
|
||||
|
||||
.window-list-workspace-indicator {
|
||||
background-color: rgba(200, 200, 200, .3);
|
||||
border: 1px solid #cccccc;
|
||||
}
|
||||
|
||||
.window-list-workspace-indicator > StLabel {
|
||||
padding: 0 2px;
|
||||
}
|
||||
|
||||
92
po/gl.po
92
po/gl.po
@@ -2,13 +2,13 @@
|
||||
# Copyright (C) 2011 gnome-shell-extensions's COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the gnome-shell-extensions package.
|
||||
# Fran Diéguez <frandieguez@gnome.org>, 2011.
|
||||
# Fran Dieguez <frandieguez@gnome.org>, 2011, 2012.
|
||||
# Fran Dieguez <frandieguez@gnome.org>, 2011, 2012, 2013.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: gnome-shell-extensions master\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2012-12-27 00:51+0100\n"
|
||||
"PO-Revision-Date: 2012-12-27 00:52+0200\n"
|
||||
"POT-Creation-Date: 2013-03-26 12:50+0100\n"
|
||||
"PO-Revision-Date: 2013-03-26 12:51+0200\n"
|
||||
"Last-Translator: Fran Dieguez <frandieguez@gnome.org>\n"
|
||||
"Language-Team: gnome-l10n-gl@gnome.org\n"
|
||||
"Language: gl\n"
|
||||
@@ -57,15 +57,15 @@ msgid "Show only windows in the current workspace"
|
||||
msgstr "Mostrar só as xanelas na área de traballo actual"
|
||||
|
||||
#. add the new entries
|
||||
#: ../extensions/alternative-status-menu/extension.js:144
|
||||
#: ../extensions/alternative-status-menu/extension.js:125
|
||||
msgid "Suspend"
|
||||
msgstr "Suspender"
|
||||
|
||||
#: ../extensions/alternative-status-menu/extension.js:147
|
||||
#: ../extensions/alternative-status-menu/extension.js:128
|
||||
msgid "Hibernate"
|
||||
msgstr "Hibernar"
|
||||
|
||||
#: ../extensions/alternative-status-menu/extension.js:150
|
||||
#: ../extensions/alternative-status-menu/extension.js:131
|
||||
msgid "Power Off"
|
||||
msgstr "Apagar"
|
||||
|
||||
@@ -85,6 +85,18 @@ msgstr "Activar hibernación"
|
||||
msgid "Control the visibility of the Hibernate menu item"
|
||||
msgstr "Controla a visibilidade do elemento de menú «Hibernar»"
|
||||
|
||||
#: ../extensions/apps-menu/extension.js:37
|
||||
msgid "Activities Overview"
|
||||
msgstr "Vista xeral de actividades"
|
||||
|
||||
#: ../extensions/apps-menu/extension.js:95
|
||||
msgid "Favorites"
|
||||
msgstr "Favoritos"
|
||||
|
||||
#: ../extensions/apps-menu/extension.js:184
|
||||
msgid "Applications"
|
||||
msgstr "Aplicativos"
|
||||
|
||||
#: ../extensions/auto-move-windows/org.gnome.shell.extensions.auto-move-windows.gschema.xml.in.h:1
|
||||
msgid "Application and workspace list"
|
||||
msgstr "Lista de aplicativos e espazos de traballo"
|
||||
@@ -190,37 +202,26 @@ msgstr ""
|
||||
"respectiva, omitindo a disposición inferior por omisión do shell. Se cambia "
|
||||
"esta configuración deberá reiniciar o shell para que se apliquen os cambios."
|
||||
|
||||
#: ../extensions/places-menu/extension.js:46
|
||||
#: ../extensions/places-menu/extension.js:77
|
||||
msgid "Places"
|
||||
msgstr "Lugares"
|
||||
|
||||
#: ../extensions/places-menu/extension.js:47
|
||||
msgid "Devices"
|
||||
msgstr "Dispositivos"
|
||||
|
||||
#: ../extensions/places-menu/extension.js:48
|
||||
msgid "Bookmarks"
|
||||
msgstr "Marcadores"
|
||||
|
||||
#: ../extensions/places-menu/extension.js:49
|
||||
msgid "Network"
|
||||
msgstr "Rede"
|
||||
|
||||
#: ../extensions/places-menu/placeDisplay.js:48
|
||||
#: ../extensions/places-menu/placeDisplay.js:56
|
||||
#, c-format
|
||||
msgid "Failed to launch \"%s\""
|
||||
msgstr "Produciuse un fallo ao iniciar «%s»"
|
||||
|
||||
#: ../extensions/places-menu/placeDisplay.js:98
|
||||
#: ../extensions/places-menu/placeDisplay.js:121
|
||||
msgid "Computer"
|
||||
msgstr "Computador"
|
||||
|
||||
#: ../extensions/places-menu/placeDisplay.js:199
|
||||
msgid "Home"
|
||||
msgstr "Cartafol persoal"
|
||||
|
||||
#: ../extensions/places-menu/placeDisplay.js:195
|
||||
msgid "File System"
|
||||
msgstr "Sistema de ficheiros"
|
||||
|
||||
#: ../extensions/places-menu/placeDisplay.js:199
|
||||
msgid "Browse network"
|
||||
#: ../extensions/places-menu/placeDisplay.js:286
|
||||
msgid "Browse Network"
|
||||
msgstr "Explorar a rede"
|
||||
|
||||
#: ../extensions/systemMonitor/extension.js:213
|
||||
@@ -239,6 +240,30 @@ msgstr "Nome do tema"
|
||||
msgid "The name of the theme, to be loaded from ~/.themes/name/gnome-shell"
|
||||
msgstr "O nome do tema, a cargar desde ~/.themes/name/gnome-shell"
|
||||
|
||||
#: ../extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml.in.h:1
|
||||
msgid "When to group windows"
|
||||
msgstr "Cando agrupar xanelas"
|
||||
|
||||
#: ../extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml.in.h:2
|
||||
msgid ""
|
||||
"Decides when to group windows from the same application on the window list. "
|
||||
"Possible values are \"never\" and \"always\"."
|
||||
msgstr ""
|
||||
"Decide cando agrupar as xanelas do mesmo aplicativo na lista de xanelas. Os "
|
||||
"valores posíbeis son \"never\" (nunca) e \"always\" (sempre)."
|
||||
|
||||
#: ../extensions/window-list/prefs.js:30
|
||||
msgid "Window Grouping"
|
||||
msgstr "Agrupación de xanelas"
|
||||
|
||||
#: ../extensions/window-list/prefs.js:49
|
||||
msgid "Never group windows"
|
||||
msgstr "Non agrupar nunca as xanelas"
|
||||
|
||||
#: ../extensions/window-list/prefs.js:50
|
||||
msgid "Always group windows"
|
||||
msgstr "Agrupar sempre as xanelas"
|
||||
|
||||
#: ../extensions/workspace-indicator/extension.js:30
|
||||
msgid "Workspace Indicator"
|
||||
msgstr "Indicador de espazo de traballo"
|
||||
@@ -280,6 +305,18 @@ msgstr "Pantalla"
|
||||
msgid "Display Settings"
|
||||
msgstr "Preferencias da pantalla"
|
||||
|
||||
#~ msgid "Devices"
|
||||
#~ msgstr "Dispositivos"
|
||||
|
||||
#~ msgid "Bookmarks"
|
||||
#~ msgstr "Marcadores"
|
||||
|
||||
#~ msgid "Network"
|
||||
#~ msgstr "Rede"
|
||||
|
||||
#~ msgid "File System"
|
||||
#~ msgstr "Sistema de ficheiros"
|
||||
|
||||
#~ msgid "The application icon mode."
|
||||
#~ msgstr "O modo da icona do aplicativo."
|
||||
|
||||
@@ -304,9 +341,6 @@ msgstr "Preferencias da pantalla"
|
||||
#~ msgid "Remove from Favorites"
|
||||
#~ msgstr "Eliminar dos favoritos"
|
||||
|
||||
#~ msgid "Add to Favorites"
|
||||
#~ msgstr "Engadir aos favoritos"
|
||||
|
||||
#~ msgid "Position of the dock"
|
||||
#~ msgstr "Posición da doca"
|
||||
|
||||
|
||||
311
po/ko.po
311
po/ko.po
@@ -1,82 +1,101 @@
|
||||
# Korean translation for gnome-shell-extensions.
|
||||
# Copyright (C) 2012 gnome-shell-extensions's COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the gnome-shell-extensions package.
|
||||
#
|
||||
# Seong-ho Cho <darkcircle.0426@gmail.com>, 2012.
|
||||
# Changwoo Ryu <cwryu@debian.org>, 2013.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: gnome-shell-extensions master\n"
|
||||
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
|
||||
"shell&keywords=I18N+L10N&component=extensions\n"
|
||||
"POT-Creation-Date: 2012-03-29 18:00+0000\n"
|
||||
"PO-Revision-Date: 2012-04-05 02:50+0900\n"
|
||||
"Last-Translator: Seong-ho Cho <darkcircle.0426@gmail.com>\n"
|
||||
"Project-Id-Version: gnome-shell-extensions\n"
|
||||
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-shell&keywords=I18N+L10N&component=extensions\n"
|
||||
"POT-Creation-Date: 2013-02-08 12:25+0000\n"
|
||||
"PO-Revision-Date: 2013-03-28 02:57+0900\n"
|
||||
"Last-Translator: Changwoo Ryu <cwryu@debian.org>\n"
|
||||
"Language-Team: Korean <gnome-kr@googlegroups.com>\n"
|
||||
"Language: ko\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=1; plural=0;\n"
|
||||
|
||||
#: ../extensions/alternate-tab/org.gnome.shell.extensions.alternate-tab.gschema.xml.in.h:1
|
||||
msgid "The alt tab behaviour."
|
||||
msgstr "Alt-Tab 동작입니다."
|
||||
#: ../data/gnome-classic.desktop.in.h:1
|
||||
#: ../data/gnome-classic.session.desktop.in.in.h:1
|
||||
msgid "GNOME Classic"
|
||||
msgstr "그놈 클래식"
|
||||
|
||||
#: ../extensions/alternate-tab/org.gnome.shell.extensions.alternate-tab.gschema.xml.in.h:2
|
||||
msgid ""
|
||||
"Sets the Alt-Tab behaviour. Possible values are: all_thumbnails and "
|
||||
"workspace_icons. See the configuration dialogs for details."
|
||||
msgstr "Alt-Tab 동작을 설정합니다. 가능한 값은 all_thumbnails와 workspace_icons 입니다. 자세한 내용은 설정 대화상자를 참고 바랍니다."
|
||||
#: ../data/gnome-classic.desktop.in.h:2
|
||||
msgid "This session logs you into GNOME Classic"
|
||||
msgstr "이 세션을 사용하면 그놈 클래식에 로그인합니다"
|
||||
|
||||
#: ../extensions/alternate-tab/prefs.js:27
|
||||
msgid "All & Thumbnails"
|
||||
msgstr "전부 그리고 섬네일"
|
||||
#: ../data/gnome-shell-classic.desktop.in.in.h:1
|
||||
msgid "GNOME Shell Classic"
|
||||
msgstr "그놈 셸 클래식"
|
||||
|
||||
#: ../extensions/alternate-tab/prefs.js:28
|
||||
msgid ""
|
||||
"This mode presents all applications from all workspaces in one selection "
|
||||
"list. Instead of using the application icon of every window, it uses small "
|
||||
"thumbnails resembling the window itself."
|
||||
msgstr "하나의 선택 목록에 모든 작업 공간에 있는 모든 프로그램을 보여주는 모드입니다. 모든 창의 프로그램 아이콘을 사용하는 대신 창 자신과 닮은 작은 섬네일을 사용합니다."
|
||||
#: ../data/gnome-shell-classic.desktop.in.in.h:2
|
||||
msgid "Window management and application launching"
|
||||
msgstr "창 관리 및 프로그램 실행"
|
||||
|
||||
#: ../extensions/alternate-tab/prefs.js:34
|
||||
msgid "Workspace & Icons"
|
||||
msgstr "작업 공간과 아이콘"
|
||||
#: ../extensions/alternate-tab/prefs.js:20
|
||||
msgid "Thumbnail only"
|
||||
msgstr "섬네일만"
|
||||
|
||||
#: ../extensions/alternate-tab/prefs.js:35
|
||||
msgid ""
|
||||
"This mode let's you switch between the applications of your current "
|
||||
"workspace and gives you additionally the option to switch to the last used "
|
||||
"application of your previous workspace. This is always the last symbol in "
|
||||
"the list and is segregated by a separator/vertical line if available. \n"
|
||||
"Every window is represented by its application icon."
|
||||
msgstr ""
|
||||
"이 모드는 현재 작업 공간의 프로그램 사이를 전환하도록 해주고 이전 작업 공간의 최근 사용한 프로그램으로 전환하는 옵션을 추가로 제공합니다. 항상 목록의 최근 심볼이며, 가능하다면 수직선/분리자로 분리합니다. \n"
|
||||
"모든 창은 프로그램 아이콘으로 표현합니다."
|
||||
#: ../extensions/alternate-tab/prefs.js:21
|
||||
msgid "Application icon only"
|
||||
msgstr "프로그램 아이콘만"
|
||||
|
||||
#: ../extensions/alternate-tab/prefs.js:41
|
||||
msgid "Move current selection to front before closing the popup"
|
||||
msgstr "팝업을 닫기 전에 현재 선택을 앞으로 끌어오기"
|
||||
#: ../extensions/alternate-tab/prefs.js:22
|
||||
msgid "Thumbnail and application icon"
|
||||
msgstr "섬네일과 프로그램 아이콘"
|
||||
|
||||
#: ../extensions/alternate-tab/prefs.js:58
|
||||
msgid ""
|
||||
"The Alternate Tab can be used in different modes, that affect the way "
|
||||
"windows are chosen and presented."
|
||||
msgstr ""
|
||||
"대체 탭은 창을 선택하고 나타내는 방법에 영향을 주는 다른 모드에 사용할 수 있"
|
||||
"습니다."
|
||||
#: ../extensions/alternate-tab/prefs.js:37
|
||||
msgid "Present windows as"
|
||||
msgstr "현재 창 표시 방법"
|
||||
|
||||
#: ../extensions/alternate-tab/prefs.js:62
|
||||
msgid "Show only windows in the current workspace"
|
||||
msgstr "현재 작업 공간의 창만 표시합니다"
|
||||
|
||||
#. add the new entries
|
||||
#: ../extensions/alternative-status-menu/extension.js:64
|
||||
#: ../extensions/alternative-status-menu/extension.js:144
|
||||
msgid "Suspend"
|
||||
msgstr "대기"
|
||||
msgstr "대기 모드"
|
||||
|
||||
#: ../extensions/alternative-status-menu/extension.js:69
|
||||
#: ../extensions/alternative-status-menu/extension.js:147
|
||||
msgid "Hibernate"
|
||||
msgstr "최대 절전"
|
||||
|
||||
#: ../extensions/alternative-status-menu/extension.js:74
|
||||
msgid "Power Off..."
|
||||
msgstr "전원 끄기..."
|
||||
#: ../extensions/alternative-status-menu/extension.js:150
|
||||
msgid "Power Off"
|
||||
msgstr "전원 끄기"
|
||||
|
||||
#: ../extensions/alternative-status-menu/org.gnome.shell.extensions.alternative-status-menu.gschema.xml.in.h:1
|
||||
msgid "Enable suspending"
|
||||
msgstr "대기 모드 사용"
|
||||
|
||||
#: ../extensions/alternative-status-menu/org.gnome.shell.extensions.alternative-status-menu.gschema.xml.in.h:2
|
||||
msgid "Control the visibility of the Suspend menu item"
|
||||
msgstr "대기 모드 메뉴를 보일지 정합니다"
|
||||
|
||||
#: ../extensions/alternative-status-menu/org.gnome.shell.extensions.alternative-status-menu.gschema.xml.in.h:3
|
||||
msgid "Enable hibernating"
|
||||
msgstr "최대 절전 사용"
|
||||
|
||||
#: ../extensions/alternative-status-menu/org.gnome.shell.extensions.alternative-status-menu.gschema.xml.in.h:4
|
||||
msgid "Control the visibility of the Hibernate menu item"
|
||||
msgstr "최대 절전 메뉴를 보일지 정합니다"
|
||||
|
||||
#: ../extensions/apps-menu/extension.js:50
|
||||
msgid "Activities Overview"
|
||||
msgstr "현재 활동"
|
||||
|
||||
#: ../extensions/apps-menu/extension.js:103
|
||||
msgid "Favorites"
|
||||
msgstr "즐겨찾기"
|
||||
|
||||
#: ../extensions/apps-menu/extension.js:197
|
||||
msgid "Applications"
|
||||
msgstr "프로그램"
|
||||
|
||||
#: ../extensions/auto-move-windows/org.gnome.shell.extensions.auto-move-windows.gschema.xml.in.h:1
|
||||
msgid "Application and workspace list"
|
||||
@@ -86,7 +105,7 @@ msgstr "프로그램 및 작업 공간 목록"
|
||||
msgid ""
|
||||
"A list of strings, each containing an application id (desktop file name), "
|
||||
"followed by a colon and the workspace number"
|
||||
msgstr "프로그램 ID (데스크톱 파일 이름), 콜론, 작업 공간 번호로 구성된 문자열 목록"
|
||||
msgstr "문자열 목록, 각각은 프로그램 ID(데스크톱 파일 이름) 다음에 콜론 뒤에 작업 공간 번호."
|
||||
|
||||
#: ../extensions/auto-move-windows/prefs.js:55
|
||||
msgid "Application"
|
||||
@@ -109,87 +128,32 @@ msgstr "새 일치 규칙 만들기"
|
||||
msgid "Add"
|
||||
msgstr "추가"
|
||||
|
||||
#: ../extensions/dock/extension.js:489
|
||||
msgid "Drag here to add favorites"
|
||||
msgstr "즐겨찾기에 추가하려면 이곳으로 끌으십시오"
|
||||
#: ../extensions/drive-menu/extension.js:72
|
||||
#, c-format
|
||||
msgid "Ejecting drive '%s' failed:"
|
||||
msgstr "'%s' 드라이브를 빼는데 실패했습니다:"
|
||||
|
||||
#: ../extensions/dock/extension.js:815
|
||||
msgid "New Window"
|
||||
msgstr "새 창"
|
||||
#: ../extensions/drive-menu/extension.js:89
|
||||
msgid "Removable devices"
|
||||
msgstr "이동식 장치"
|
||||
|
||||
#: ../extensions/dock/extension.js:817
|
||||
msgid "Quit Application"
|
||||
msgstr "프로그램 나가기"
|
||||
#: ../extensions/drive-menu/extension.js:106
|
||||
msgid "Open File"
|
||||
msgstr "파일 열기"
|
||||
|
||||
#: ../extensions/dock/extension.js:822
|
||||
msgid "Remove from Favorites"
|
||||
msgstr "즐겨찾기에서 제거"
|
||||
|
||||
#: ../extensions/dock/extension.js:823
|
||||
msgid "Add to Favorites"
|
||||
msgstr "즐겨찾기에 추가"
|
||||
|
||||
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:1
|
||||
msgid "Position of the dock"
|
||||
msgstr "도크의 위치"
|
||||
|
||||
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:2
|
||||
msgid ""
|
||||
"Sets the position of the dock in the screen. Allowed values are 'right' or "
|
||||
"'left'"
|
||||
msgstr ""
|
||||
"화면의 도크 위치를 설정합니다. 허용하는 값은 '오른쪽' 또는 '왼쪽'입니다"
|
||||
|
||||
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:3
|
||||
msgid "Icon size"
|
||||
msgstr "아이콘 크기"
|
||||
|
||||
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:4
|
||||
msgid "Sets icon size of the dock."
|
||||
msgstr "도크의 아이콘 크기를 설정합니다."
|
||||
|
||||
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:5
|
||||
msgid "Enable/disable autohide"
|
||||
msgstr "자동 숨김 활성/비활성화"
|
||||
|
||||
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:6
|
||||
msgid "Autohide effect"
|
||||
msgstr "자동 숨김 효과"
|
||||
|
||||
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:7
|
||||
msgid ""
|
||||
"Sets the effect of the hide dock. Allowed values are 'resize', 'rescale' and "
|
||||
"'move'"
|
||||
msgstr ""
|
||||
"도크를 숨기는 효과를 설정합니다. 가능한 값은 'resize', 'rescale' 그리고 "
|
||||
"'move'가 있습니다."
|
||||
|
||||
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:8
|
||||
msgid "Autohide duration"
|
||||
msgstr "자동 숨김 경과시간"
|
||||
|
||||
#: ../extensions/dock/org.gnome.shell.extensions.dock.gschema.xml.in.h:9
|
||||
msgid "Sets the time duration of the autohide effect."
|
||||
msgstr "자동 숨김 효과의 경과 시간을 설정합니다."
|
||||
|
||||
#: ../extensions/drive-menu/extension.js:66
|
||||
msgid "Open file manager"
|
||||
msgstr "파일 관리자 열기"
|
||||
|
||||
# NOTE: 번역하지 마십시오.
|
||||
#: ../extensions/example/extension.js:17
|
||||
msgid "Hello, world!"
|
||||
msgstr "Hello, world!"
|
||||
|
||||
#: ../extensions/example/org.gnome.shell.extensions.example.gschema.xml.in.h:1
|
||||
msgid "Alternative greeting text."
|
||||
msgstr "인사말을 대체합니다."
|
||||
msgstr "다른 인사말."
|
||||
|
||||
#: ../extensions/example/org.gnome.shell.extensions.example.gschema.xml.in.h:2
|
||||
msgid ""
|
||||
"If not empty, it contains the text that will be shown when clicking on the "
|
||||
"panel."
|
||||
msgstr "비어있지 않다면, 패널을 눌렀을때 보일 텍스트를 포함합니다."
|
||||
msgstr "빈 값이 아니면, 패널을 눌렀을때 보일 텍스트입니다."
|
||||
|
||||
#. TRANSLATORS: Example is the name of the extension, should not be
|
||||
#. translated
|
||||
@@ -207,57 +171,57 @@ msgstr ""
|
||||
msgid "Message:"
|
||||
msgstr "메시지:"
|
||||
|
||||
#: ../extensions/gajim/extension.js:227
|
||||
#, c-format
|
||||
msgid "%s is away."
|
||||
msgstr "%s 자리에 없습니다."
|
||||
|
||||
#: ../extensions/gajim/extension.js:230
|
||||
#, c-format
|
||||
msgid "%s is offline."
|
||||
msgstr "%s 오프라인입니다."
|
||||
|
||||
#: ../extensions/gajim/extension.js:233
|
||||
#, c-format
|
||||
msgid "%s is online."
|
||||
msgstr "%s 온라인입니다."
|
||||
|
||||
#: ../extensions/gajim/extension.js:236
|
||||
#, c-format
|
||||
msgid "%s is busy."
|
||||
msgstr "%s 자리 비움입니다."
|
||||
|
||||
#: ../extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml.in.h:1
|
||||
msgid "Use more screen for windows"
|
||||
msgstr "창을 위해 더 많은 화면 사용하기"
|
||||
msgstr "창에 더 많은 화면 사용하기"
|
||||
|
||||
# natural placement strategy - 그냥 자동으로 표시되는 거. 손으로 옮긴 경우 말고.
|
||||
#: ../extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml.in.h:2
|
||||
msgid ""
|
||||
"Try to use more screen for placing window thumbnails by adapting to screen "
|
||||
"aspect ratio, and consolidating them further to reduce the bounding box. "
|
||||
"This setting applies only with the natural placement strategy."
|
||||
msgstr ""
|
||||
"화면 종횡비에 맞춰서 창의 섬네일을 놓기 위해 더 많은 화면을 사용하려 시도하"
|
||||
"며 상자로 감싸는 내용을 줄이기 위해 한 데 모입니다. 이 설정은 자연 배치 전략"
|
||||
"에만 적용합니다."
|
||||
msgstr "창의 섬네일을 표시할 때 더 많은 화면을 사용합니다. 섬네일을 화면 종횡비에 맞추고 섬네일을 통합해 차지하는 크기를 줄입니다. 이 설정은 자동 배치 방식에서만 적용됩니다."
|
||||
|
||||
#: ../extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml.in.h:3
|
||||
msgid "Place window captions on top"
|
||||
msgstr "창 캡션을 상단에 위치"
|
||||
msgstr "창 이름을 위에"
|
||||
|
||||
#: ../extensions/native-window-placement/org.gnome.shell.extensions.native-window-placement.gschema.xml.in.h:4
|
||||
msgid ""
|
||||
"If true, place window captions on top the respective thumbnail, overriding "
|
||||
"shell default of placing it at the bottom. Changing this setting requires "
|
||||
"restarting the shell to have any effect."
|
||||
msgstr ""
|
||||
"참이면, 창의 캡션을 제각각의 섬네일의 위에 표시하며, 하단에 창 캡션을 놓는 쉘"
|
||||
"의 기본 값을 덮어씁니다. 이 바꾼 설정을 적용하려면 쉘을 다시 시작할 필요가 있"
|
||||
"습니다."
|
||||
msgstr "참이면, 창의 이름을 각 섬네일 위에 표시합니다. 셸의 기본값은 아래에 창 이름을 표시합니다. 이 설정을 바꾸면 셸을 다시 시작해야 적용됩니다."
|
||||
|
||||
#: ../extensions/places-menu/extension.js:37
|
||||
msgid "Removable Devices"
|
||||
msgstr "이동식 장치"
|
||||
#: ../extensions/places-menu/extension.js:57
|
||||
msgid "Places"
|
||||
msgstr "위치"
|
||||
|
||||
#: ../extensions/places-menu/placeDisplay.js:48
|
||||
#, c-format
|
||||
msgid "Failed to launch \"%s\""
|
||||
msgstr "\"%s\" 실행에 실패했습니다"
|
||||
|
||||
#: ../extensions/places-menu/placeDisplay.js:121
|
||||
msgid "Home"
|
||||
msgstr "홈"
|
||||
|
||||
#: ../extensions/places-menu/placeDisplay.js:195
|
||||
msgid "Computer"
|
||||
msgstr "컴퓨터"
|
||||
|
||||
#: ../extensions/places-menu/placeDisplay.js:199
|
||||
msgid "Browse Network"
|
||||
msgstr "네트워크 찾아보기"
|
||||
|
||||
#: ../extensions/systemMonitor/extension.js:213
|
||||
msgid "CPU"
|
||||
msgstr "CPU"
|
||||
|
||||
#: ../extensions/systemMonitor/extension.js:266
|
||||
msgid "Memory"
|
||||
msgstr "메모리"
|
||||
|
||||
#: ../extensions/user-theme/org.gnome.shell.extensions.user-theme.gschema.xml.in.h:1
|
||||
msgid "Theme name"
|
||||
@@ -265,7 +229,29 @@ msgstr "테마 이름"
|
||||
|
||||
#: ../extensions/user-theme/org.gnome.shell.extensions.user-theme.gschema.xml.in.h:2
|
||||
msgid "The name of the theme, to be loaded from ~/.themes/name/gnome-shell"
|
||||
msgstr "~/.themes/name/gnome-shell로부터 불러올 테마의 이름입니다"
|
||||
msgstr "테마 이름, ~/.themes/name/gnome-shell 아래에서 읽어들입니다."
|
||||
|
||||
#: ../extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml.in.h:1
|
||||
msgid "When to group windows"
|
||||
msgstr "창 모으기 조건"
|
||||
|
||||
#: ../extensions/window-list/org.gnome.shell.extensions.window-list.gschema.xml.in.h:2
|
||||
msgid ""
|
||||
"Decides when to group windows from the same application on the window list. "
|
||||
"Possible values are \"never\" and \"always\"."
|
||||
msgstr "창 목록에서 같은 프로그램의 창을 언제 모을지 결정합니다. 가능한 값은 \"never\" 및 \"always\"입니다."
|
||||
|
||||
#: ../extensions/window-list/prefs.js:30
|
||||
msgid "Window Grouping"
|
||||
msgstr "창 모으기"
|
||||
|
||||
#: ../extensions/window-list/prefs.js:49
|
||||
msgid "Never group windows"
|
||||
msgstr "창을 모으지 않기"
|
||||
|
||||
#: ../extensions/window-list/prefs.js:50
|
||||
msgid "Always group windows"
|
||||
msgstr "항상 창 모으기"
|
||||
|
||||
#: ../extensions/workspace-indicator/extension.js:30
|
||||
msgid "Workspace Indicator"
|
||||
@@ -284,22 +270,31 @@ msgstr "이름"
|
||||
msgid "Workspace %d"
|
||||
msgstr "작업 공간 %d"
|
||||
|
||||
# 회전
|
||||
#: ../extensions/xrandr-indicator/extension.js:30
|
||||
msgid "Normal"
|
||||
msgstr "보통"
|
||||
|
||||
# 회전
|
||||
#: ../extensions/xrandr-indicator/extension.js:31
|
||||
msgid "Left"
|
||||
msgstr "왼쪽"
|
||||
|
||||
# 회전
|
||||
#: ../extensions/xrandr-indicator/extension.js:32
|
||||
msgid "Right"
|
||||
msgstr "오른쪽"
|
||||
|
||||
# 회전
|
||||
#: ../extensions/xrandr-indicator/extension.js:33
|
||||
msgid "Upside-down"
|
||||
msgstr "상단 아래"
|
||||
msgstr "위 아래 뒤집기"
|
||||
|
||||
#: ../extensions/xrandr-indicator/extension.js:82
|
||||
msgid "Configure display settings..."
|
||||
msgstr "디스플레이 설정..."
|
||||
# 디스플레이를 말한다.
|
||||
#: ../extensions/xrandr-indicator/extension.js:50
|
||||
msgid "Display"
|
||||
msgstr "디스플레이"
|
||||
|
||||
#: ../extensions/xrandr-indicator/extension.js:80
|
||||
msgid "Display Settings"
|
||||
msgstr "디스플레이 설정"
|
||||
|
||||
36
po/sr.po
36
po/sr.po
@@ -8,7 +8,7 @@ msgstr ""
|
||||
"Project-Id-Version: gnome-shell-extensions master\n"
|
||||
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
|
||||
"shell&keywords=I18N+L10N&component=extensions\n"
|
||||
"POT-Creation-Date: 2013-02-08 12:25+0000\n"
|
||||
"POT-Creation-Date: 2013-02-20 11:19+0000\n"
|
||||
"PO-Revision-Date: 2013-02-20 12:19+0200\n"
|
||||
"Last-Translator: Мирослав Николић <miroslavnikolic@rocketmail.com>\n"
|
||||
"Language-Team: Serbian <gnom@prevod.org>\n"
|
||||
@@ -16,8 +16,8 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=4; plural=n==1? 3 : n%10==1 && n%100!=11 ? 0 : "
|
||||
"n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
|
||||
"Plural-Forms: nplurals=4; plural=n==1? 3 : n%10==1 && n%100!=11 ? 0 : n"
|
||||
"%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
|
||||
"X-Project-Style: gnome\n"
|
||||
|
||||
#: ../data/gnome-classic.desktop.in.h:1
|
||||
@@ -58,17 +58,17 @@ msgid "Show only windows in the current workspace"
|
||||
msgstr "Приказује само прозоре у текућем радном простору"
|
||||
|
||||
#. add the new entries
|
||||
#: ../extensions/alternative-status-menu/extension.js:144
|
||||
#: ../extensions/alternative-status-menu/extension.js:125
|
||||
msgid "Suspend"
|
||||
msgstr "Обустави"
|
||||
|
||||
#: ../extensions/alternative-status-menu/extension.js:147
|
||||
#: ../extensions/alternative-status-menu/extension.js:128
|
||||
msgid "Hibernate"
|
||||
msgstr "Замрзни"
|
||||
|
||||
#: ../extensions/alternative-status-menu/extension.js:150
|
||||
#: ../extensions/alternative-status-menu/extension.js:131
|
||||
msgid "Power Off"
|
||||
msgstr "Угаси"
|
||||
msgstr "Искључи"
|
||||
|
||||
#: ../extensions/alternative-status-menu/org.gnome.shell.extensions.alternative-status-menu.gschema.xml.in.h:1
|
||||
msgid "Enable suspending"
|
||||
@@ -86,17 +86,15 @@ msgstr "Укључује замрзавање"
|
||||
msgid "Control the visibility of the Hibernate menu item"
|
||||
msgstr "Управља видљивошћу ставке изборника замрзавања"
|
||||
|
||||
#: ../extensions/apps-menu/extension.js:50
|
||||
#: ../extensions/apps-menu/extension.js:37
|
||||
msgid "Activities Overview"
|
||||
msgstr "Преглед активности"
|
||||
|
||||
#: ../extensions/apps-menu/extension.js:103
|
||||
#| msgid "Add to Favorites"
|
||||
#: ../extensions/apps-menu/extension.js:95
|
||||
msgid "Favorites"
|
||||
msgstr "Омиљено"
|
||||
|
||||
#: ../extensions/apps-menu/extension.js:197
|
||||
#| msgid "Application"
|
||||
#: ../extensions/apps-menu/extension.js:189
|
||||
msgid "Applications"
|
||||
msgstr "Програми"
|
||||
|
||||
@@ -205,25 +203,25 @@ msgstr ""
|
||||
"умањених приказа уместо испод приказа. Промена ових подешавања захтева да "
|
||||
"поново покренете Гномову шкољку."
|
||||
|
||||
#: ../extensions/places-menu/extension.js:57
|
||||
#: ../extensions/places-menu/extension.js:77
|
||||
msgid "Places"
|
||||
msgstr "Места"
|
||||
|
||||
#: ../extensions/places-menu/placeDisplay.js:48
|
||||
#: ../extensions/places-menu/placeDisplay.js:56
|
||||
#, c-format
|
||||
msgid "Failed to launch \"%s\""
|
||||
msgstr "Нисам успео да покренем „%s“"
|
||||
|
||||
#: ../extensions/places-menu/placeDisplay.js:98
|
||||
#: ../extensions/places-menu/placeDisplay.js:121
|
||||
msgid "Home"
|
||||
msgstr "Личнo"
|
||||
|
||||
#: ../extensions/places-menu/placeDisplay.js:195
|
||||
msgid "Computer"
|
||||
msgstr "Рачунар"
|
||||
|
||||
#: ../extensions/places-menu/placeDisplay.js:199
|
||||
#| msgid "Browse network"
|
||||
msgid "Home"
|
||||
msgstr "Личнo"
|
||||
|
||||
#: ../extensions/places-menu/placeDisplay.js:286
|
||||
msgid "Browse Network"
|
||||
msgstr "Разгледајте мрежу"
|
||||
|
||||
|
||||
@@ -8,7 +8,7 @@ msgstr ""
|
||||
"Project-Id-Version: gnome-shell-extensions master\n"
|
||||
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-"
|
||||
"shell&keywords=I18N+L10N&component=extensions\n"
|
||||
"POT-Creation-Date: 2013-02-08 12:25+0000\n"
|
||||
"POT-Creation-Date: 2013-02-20 11:19+0000\n"
|
||||
"PO-Revision-Date: 2013-02-20 12:19+0200\n"
|
||||
"Last-Translator: Miroslav Nikolić <miroslavnikolic@rocketmail.com>\n"
|
||||
"Language-Team: Serbian <gnom@prevod.org>\n"
|
||||
@@ -16,8 +16,8 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=4; plural=n==1? 3 : n%10==1 && n%100!=11 ? 0 : "
|
||||
"n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
|
||||
"Plural-Forms: nplurals=4; plural=n==1? 3 : n%10==1 && n%100!=11 ? 0 : n"
|
||||
"%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
|
||||
"X-Project-Style: gnome\n"
|
||||
|
||||
#: ../data/gnome-classic.desktop.in.h:1
|
||||
@@ -58,17 +58,17 @@ msgid "Show only windows in the current workspace"
|
||||
msgstr "Prikazuje samo prozore u tekućem radnom prostoru"
|
||||
|
||||
#. add the new entries
|
||||
#: ../extensions/alternative-status-menu/extension.js:144
|
||||
#: ../extensions/alternative-status-menu/extension.js:125
|
||||
msgid "Suspend"
|
||||
msgstr "Obustavi"
|
||||
|
||||
#: ../extensions/alternative-status-menu/extension.js:147
|
||||
#: ../extensions/alternative-status-menu/extension.js:128
|
||||
msgid "Hibernate"
|
||||
msgstr "Zamrzni"
|
||||
|
||||
#: ../extensions/alternative-status-menu/extension.js:150
|
||||
#: ../extensions/alternative-status-menu/extension.js:131
|
||||
msgid "Power Off"
|
||||
msgstr "Ugasi"
|
||||
msgstr "Isključi"
|
||||
|
||||
#: ../extensions/alternative-status-menu/org.gnome.shell.extensions.alternative-status-menu.gschema.xml.in.h:1
|
||||
msgid "Enable suspending"
|
||||
@@ -86,17 +86,15 @@ msgstr "Uključuje zamrzavanje"
|
||||
msgid "Control the visibility of the Hibernate menu item"
|
||||
msgstr "Upravlja vidljivošću stavke izbornika zamrzavanja"
|
||||
|
||||
#: ../extensions/apps-menu/extension.js:50
|
||||
#: ../extensions/apps-menu/extension.js:37
|
||||
msgid "Activities Overview"
|
||||
msgstr "Pregled aktivnosti"
|
||||
|
||||
#: ../extensions/apps-menu/extension.js:103
|
||||
#| msgid "Add to Favorites"
|
||||
#: ../extensions/apps-menu/extension.js:95
|
||||
msgid "Favorites"
|
||||
msgstr "Omiljeno"
|
||||
|
||||
#: ../extensions/apps-menu/extension.js:197
|
||||
#| msgid "Application"
|
||||
#: ../extensions/apps-menu/extension.js:189
|
||||
msgid "Applications"
|
||||
msgstr "Programi"
|
||||
|
||||
@@ -205,25 +203,25 @@ msgstr ""
|
||||
"umanjenih prikaza umesto ispod prikaza. Promena ovih podešavanja zahteva da "
|
||||
"ponovo pokrenete Gnomovu školjku."
|
||||
|
||||
#: ../extensions/places-menu/extension.js:57
|
||||
#: ../extensions/places-menu/extension.js:77
|
||||
msgid "Places"
|
||||
msgstr "Mesta"
|
||||
|
||||
#: ../extensions/places-menu/placeDisplay.js:48
|
||||
#: ../extensions/places-menu/placeDisplay.js:56
|
||||
#, c-format
|
||||
msgid "Failed to launch \"%s\""
|
||||
msgstr "Nisam uspeo da pokrenem „%s“"
|
||||
|
||||
#: ../extensions/places-menu/placeDisplay.js:98
|
||||
#: ../extensions/places-menu/placeDisplay.js:121
|
||||
msgid "Home"
|
||||
msgstr "Lično"
|
||||
|
||||
#: ../extensions/places-menu/placeDisplay.js:195
|
||||
msgid "Computer"
|
||||
msgstr "Računar"
|
||||
|
||||
#: ../extensions/places-menu/placeDisplay.js:199
|
||||
#| msgid "Browse network"
|
||||
msgid "Home"
|
||||
msgstr "Lično"
|
||||
|
||||
#: ../extensions/places-menu/placeDisplay.js:286
|
||||
msgid "Browse Network"
|
||||
msgstr "Razgledajte mrežu"
|
||||
|
||||
|
||||
Reference in New Issue
Block a user