[Banshee-List] patch proposal: searhing lists w/o ? and hotkey remapping
- From: Dmitry Teslenko <dteslenko gmail com>
- To: banshee-list gnome org
- Subject: [Banshee-List] patch proposal: searhing lists w/o ? and hotkey remapping
- Date: Sun, 30 May 2010 02:57:30 +0400
Hello!
I'm new banshee user, just switched from rhythmbox. I've seen banshee before
and I can say you've done a lot of job in that time.
One thing irritates from the start: searching lists with ? is very
inconvenient to me. Moreover nothing in gnome desktop behaves this
way.
I think there's two things to do:
1) get rid off ?
2) change one-key hotkeys to <control>key or something
I've looked through source code and found that p.1) already there, commented.
I've grepped source and found that hotkeys (+ what I've done):
"PlaySongAction" "S" -> "<control>S"
"PlayAlbumAction" "A" -> "<control>A"
"AudiobookSwitchToGrid" "Escape"
"AudiobookEdit" "E" -> "<control>E"
"AddToPlayQueueAction" "q" -> "<control>q"
"CloseAction" "<Control>W"
"PodcastAddAction" "<control><shift>F"
"PodcastItemMarkOldAction" "y" -> "<control>y"
"PodcastItemDownloadAction" "<control><shift>D"
"PodcastItemCancelAction" "<control><shift>C"
"AudioscrobblerEnableAction" "control>U"
"CloseAction" "<Control>W"
"BrowserVisibleAction" "<control>B"
lets change to "<control>V"
"BookmarksAddAction" "<control>D"
"ShowEqualizerAction" "<control>E"
"FullScreenAction" "F" ->"<control>F" *
confilcts with find; lets make "<control><shift>F" and PodcastAddAction to null
"SelectAllAction" "<control>A"
"SelectNoneAction" "<control><shift>A"
"TrackEditorAction" "E" -> "<control>E" *
conflicts with ShowEqualizerAction, lets make "<control>K"
"RemoveTracksAction" "Delete"
"ImportAction" "<control>I"
"OpenLocationAction" "<control>L"
"QuitAction" "<control>Q"
"PlayPauseAction" "space" ->"<control>space"
"NextAction" "N" ->"<control>N" *
conflicts with NewPlaylistAction; lets change NewPlaylistAction
"PreviousAction" "B" ->"<control>B" *
conflicts with BrowserVisibleAction lets change BrowserVisibleAction
"SeekToAction" "T" ->"<control>T"
"JumpToPlayingTrackAction" "<control>J"
"RestartSongAction" "R" ->"<control>R"
"StopWhenFinishedAction" "<Shift>space"
"NewPlaylistAction" "<control>N"
lets change to "<control>P"
"RenameSourceAction" "F2"
"UnmapSourceAction" "<shift>Delete"
"OpenSourceSwitcher" "G" ->"<control>G"
Patch attached.
--
A: Because it messes up the order in which people normally read text.
Q: Why is top-posting such a bad thing?
A: Top-posting.
Q: What is the most annoying thing in e-mail?
From e582adb8af476661e03dda9c70eb771e9aad894a Mon Sep 17 00:00:00 2001
From: Dmitry Teslenko <dteslenko gmail com>
Date: Sun, 30 May 2010 02:38:43 +0400
Subject: [PATCH] Feature:
* Searching lists without ?
* One key hotkeys remapped to two-key hotkeys
---
src/Clients/Muinshee/Muinshee/MuinsheeActions.cs | 4 ++--
.../Banshee.Collection.Gui/SearchableListView.cs | 15 ++++-----------
.../Banshee.Gui/PlaybackActions.cs | 10 +++++-----
.../Banshee.Gui/SourceActions.cs | 4 ++--
.../Banshee.Gui/TrackActions.cs | 2 +-
.../Banshee.ThickClient/Banshee.Gui/ViewActions.cs | 2 +-
.../FilteredListSourceContents.cs | 2 +-
.../Banshee.Audiobook/Banshee.Audiobook/Actions.cs | 2 +-
.../Banshee.PlayQueue/PlayQueueActions.cs | 2 +-
.../Banshee.Podcasting.Gui/PodcastActions.cs | 4 ++--
10 files changed, 20 insertions(+), 27 deletions(-)
diff --git a/src/Clients/Muinshee/Muinshee/MuinsheeActions.cs b/src/Clients/Muinshee/Muinshee/MuinsheeActions.cs
index 7b24847..a8981c5 100644
--- a/src/Clients/Muinshee/Muinshee/MuinsheeActions.cs
+++ b/src/Clients/Muinshee/Muinshee/MuinsheeActions.cs
@@ -44,12 +44,12 @@ namespace Muinshee
AddImportant (
new ActionEntry (
"PlaySongAction", Stock.Add,
- Catalog.GetString ("Play _Song"), "S",
+ Catalog.GetString ("Play _Song"), "<control>S",
Catalog.GetString ("Add a song to the playlist"), OnPlaySong
),
new ActionEntry (
"PlayAlbumAction", null,
- Catalog.GetString ("Play _Album"), "A",
+ Catalog.GetString ("Play _Album"), "<control>A",
Catalog.GetString ("Add an album to the playlist"), OnPlayAlbum
)
);
diff --git a/src/Core/Banshee.ThickClient/Banshee.Collection.Gui/SearchableListView.cs b/src/Core/Banshee.ThickClient/Banshee.Collection.Gui/SearchableListView.cs
index 3acf763..df3f9a4 100644
--- a/src/Core/Banshee.ThickClient/Banshee.Collection.Gui/SearchableListView.cs
+++ b/src/Core/Banshee.ThickClient/Banshee.Collection.Gui/SearchableListView.cs
@@ -153,25 +153,18 @@ namespace Banshee.Collection.Gui
}
- /*private bool IsCharValid (char c)
+ private bool IsCharValid (char c)
{
return Char.IsLetterOrDigit (c) ||
Char.IsPunctuation (c) ||
Char.IsSymbol (c);
- }*/
+ }
protected override bool OnKeyPressEvent (Gdk.EventKey press)
{
- // TODO this pops it up whenever any key is pressed, like a normal TreeView.
- // But, Banshee has single-char keybindings, so for now at least, require
- // ? (== shift / on US keyboards, at least) to be pressed.
- /*char input = Convert.ToChar (Gdk.Keyval.ToUnicode (press.KeyValue));
+ char input = Convert.ToChar (Gdk.Keyval.ToUnicode (press.KeyValue));
if (!IsCharValid (input) || Model as ISelectable == null) {
return base.OnKeyPressEvent (press);
- }*/
-
- if (press.Key != Gdk.Key.question) {
- return base.OnKeyPressEvent (press);
}
if (search_popup == null) {
@@ -187,7 +180,7 @@ namespace Banshee.Collection.Gui
search_popup.Position (EventWindow);
search_popup.HasFocus = true;
search_popup.Show ();
- search_popup.Text = String.Format ("{0}{1}", search_popup.Text, "");//input);
+ search_popup.Text = String.Format ("{0}{1}", search_popup.Text, input);
search_popup.Entry.Position = search_popup.Text.Length;
return true;
}
diff --git a/src/Core/Banshee.ThickClient/Banshee.Gui/PlaybackActions.cs b/src/Core/Banshee.ThickClient/Banshee.Gui/PlaybackActions.cs
index 6121a09..66e2afc 100644
--- a/src/Core/Banshee.ThickClient/Banshee.Gui/PlaybackActions.cs
+++ b/src/Core/Banshee.ThickClient/Banshee.Gui/PlaybackActions.cs
@@ -63,19 +63,19 @@ namespace Banshee.Gui
Add (new ActionEntry [] {
new ActionEntry ("PlayPauseAction", null,
- Catalog.GetString ("_Play"), "space",
+ Catalog.GetString ("_Play"), "<control>space",
Catalog.GetString ("Play or pause the current item"), OnPlayPauseAction),
new ActionEntry ("NextAction", null,
- Catalog.GetString ("_Next"), "N",
+ Catalog.GetString ("_Next"), "<control>N",
Catalog.GetString ("Play the next item"), OnNextAction),
new ActionEntry ("PreviousAction", null,
- Catalog.GetString ("Pre_vious"), "B",
+ Catalog.GetString ("Pre_vious"), "<control>B",
Catalog.GetString ("Play the previous item"), OnPreviousAction),
new ActionEntry ("SeekToAction", null,
- Catalog.GetString ("Seek _To..."), "T",
+ Catalog.GetString ("Seek _To..."), "<control>T",
Catalog.GetString ("Seek to a specific location in current item"), OnSeekToAction),
new ActionEntry ("JumpToPlayingTrackAction", null,
@@ -83,7 +83,7 @@ namespace Banshee.Gui
Catalog.GetString ("Jump to the currently playing item"), OnJumpToPlayingTrack),
new ActionEntry ("RestartSongAction", null,
- Catalog.GetString ("_Restart Song"), "R",
+ Catalog.GetString ("_Restart Song"), "<control>R",
Catalog.GetString ("Restart the current item"), OnRestartSongAction)
});
diff --git a/src/Core/Banshee.ThickClient/Banshee.Gui/SourceActions.cs b/src/Core/Banshee.ThickClient/Banshee.Gui/SourceActions.cs
index 306f6fd..d8a375d 100644
--- a/src/Core/Banshee.ThickClient/Banshee.Gui/SourceActions.cs
+++ b/src/Core/Banshee.ThickClient/Banshee.Gui/SourceActions.cs
@@ -72,7 +72,7 @@ namespace Banshee.Gui
{
Add (new ActionEntry [] {
new ActionEntry ("NewPlaylistAction", null,
- Catalog.GetString ("_New Playlist"), "<control>N",
+ Catalog.GetString ("_New Playlist"), "<control>P",
Catalog.GetString ("Create a new empty playlist"), OnNewPlaylist),
new ActionEntry ("NewSmartPlaylistAction", null,
@@ -108,7 +108,7 @@ namespace Banshee.Gui
OnSortChildrenMenu),
new ActionEntry ("OpenSourceSwitcher", null,
- Catalog.GetString ("Switch Source"), "G",
+ Catalog.GetString ("Switch Source"), "<control>G",
Catalog.GetString ("Switch to a source by typing its name"),
null),
diff --git a/src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs b/src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs
index 368f6a4..631aeda 100644
--- a/src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs
+++ b/src/Core/Banshee.ThickClient/Banshee.Gui/TrackActions.cs
@@ -75,7 +75,7 @@ namespace Banshee.Gui
Catalog.GetString("Unselect all tracks"), OnSelectNone),
new ActionEntry ("TrackEditorAction", Stock.Edit,
- Catalog.GetString ("_Edit Track Information"), "E",
+ Catalog.GetString ("_Edit Track Information"), "<control>K",
Catalog.GetString ("Edit information on selected tracks"), OnTrackEditor),
new ActionEntry ("TrackPropertiesAction", Stock.Properties,
diff --git a/src/Core/Banshee.ThickClient/Banshee.Gui/ViewActions.cs b/src/Core/Banshee.ThickClient/Banshee.Gui/ViewActions.cs
index 48435db..d0d4438 100644
--- a/src/Core/Banshee.ThickClient/Banshee.Gui/ViewActions.cs
+++ b/src/Core/Banshee.ThickClient/Banshee.Gui/ViewActions.cs
@@ -77,7 +77,7 @@ namespace Banshee.Gui
AddImportant (new ToggleActionEntry [] {
new ToggleActionEntry ("FullScreenAction", "gtk-fullscreen",
- Catalog.GetString ("_Fullscreen"), "F",
+ Catalog.GetString ("_Fullscreen"), "<control><shift>F",
Catalog.GetString ("Enter or leave fullscreen mode"), OnFullScreen, false),
});
diff --git a/src/Core/Banshee.ThickClient/Banshee.Sources.Gui/FilteredListSourceContents.cs b/src/Core/Banshee.ThickClient/Banshee.Sources.Gui/FilteredListSourceContents.cs
index f4e32d2..3f60b9b 100644
--- a/src/Core/Banshee.ThickClient/Banshee.Sources.Gui/FilteredListSourceContents.cs
+++ b/src/Core/Banshee.ThickClient/Banshee.Sources.Gui/FilteredListSourceContents.cs
@@ -117,7 +117,7 @@ namespace Banshee.Sources.Gui
browser_view_actions.Add (new ToggleActionEntry [] {
new ToggleActionEntry ("BrowserVisibleAction", null,
- Catalog.GetString ("Show Browser"), "<control>B",
+ Catalog.GetString ("Show Browser"), "<control>V",
Catalog.GetString ("Show or hide the artist/album browser"),
null, BrowserVisible.Get ())
});
diff --git a/src/Extensions/Banshee.Audiobook/Banshee.Audiobook/Actions.cs b/src/Extensions/Banshee.Audiobook/Banshee.Audiobook/Actions.cs
index 57641e9..182e0ee 100644
--- a/src/Extensions/Banshee.Audiobook/Banshee.Audiobook/Actions.cs
+++ b/src/Extensions/Banshee.Audiobook/Banshee.Audiobook/Actions.cs
@@ -56,7 +56,7 @@ namespace Banshee.Audiobook
new ActionEntry ("AudiobookMerge", null, Catalog.GetString ("Merge Discs..."), null, null, OnMerge),
new ActionEntry ("AudiobookSwitchToGrid", null, "", "Escape", null, (o, a) => library.SwitchToGridView ()),
new ActionEntry ("AudiobookEdit", Stock.Edit,
- Catalog.GetString ("_Edit Track Information"), "E", null, OnEdit),
+ Catalog.GetString ("_Edit Track Information"), "<control>E", null, OnEdit),
new ActionEntry ("AudiobookResumeSelected", Stock.MediaPlay,
Catalog.GetString ("Resume"), null, Catalog.GetString ("Resume playback of this audiobook"), OnResume)
);
diff --git a/src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs b/src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs
index 6ebe4d8..bd16644 100644
--- a/src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs
+++ b/src/Extensions/Banshee.PlayQueue/Banshee.PlayQueue/PlayQueueActions.cs
@@ -47,7 +47,7 @@ namespace Banshee.PlayQueue
Add (new ActionEntry [] {
new ActionEntry ("AddToPlayQueueAction", Stock.Add,
- Catalog.GetString ("Add to Play Queue"), "q",
+ Catalog.GetString ("Add to Play Queue"), "<control>q",
Catalog.GetString ("Append selected songs to the play queue"),
OnAddToPlayQueue)
});
diff --git a/src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs b/src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs
index 930d1fc..e28814b 100644
--- a/src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs
+++ b/src/Extensions/Banshee.Podcasting/Banshee.Podcasting.Gui/PodcastActions.cs
@@ -74,7 +74,7 @@ namespace Banshee.Podcasting.Gui
),
new ActionEntry (
"PodcastAddAction", Stock.Add,
- Catalog.GetString ("Subscribe to Podcast..."),"<control><shift>F",
+ Catalog.GetString ("Subscribe to Podcast..."), null,
Catalog.GetString ("Subscribe to a new podcast"),
OnPodcastAdd
)
@@ -122,7 +122,7 @@ namespace Banshee.Podcasting.Gui
),
new ActionEntry (
"PodcastItemMarkOldAction", null,
- Catalog.GetString ("Mark as Old"), "y", String.Empty,
+ Catalog.GetString ("Mark as Old"), "<control>y", String.Empty,
OnPodcastItemMarkOld
),
new ActionEntry (
--
1.7.0.4
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]